");
a.__div.innerHTML = m;
p = /\n/g;
m = a.__div.innerHTML.replace(p, "
");
a.__div.innerHTML = m;
p = /\r/g;
m = a.__div.innerHTML.replace(p, "
");
a.__div.innerHTML = m;
d.setProperty("font", Wb.getFont(a.__textFormat), null);
a.__textFormat.size = h;
a.__textFormat.leading = f;
d.setProperty("top", "3px", null);
c.border ? (d.setProperty("border", "solid 1px #" + T.hex(c.borderColor & 16777215, 6),
null), a.__renderTransform.translate(-1, -1), a.__renderTransformChanged = !0, a.__transformDirty = !0) : "" != d.border && (d.removeProperty("border"), a.__renderTransformChanged = !0);
d.setProperty("color", "#" + T.hex(a.__textFormat.color & 16777215, 6), null);
d.setProperty("width", e + "px", null);
d.setProperty("height", g + "px", null);
switch (a.__textFormat.align) {
case 0:
d.setProperty("text-align", "center", null);
break;
case 4:
d.setProperty("text-align", "right", null);
break;
default:
d.setProperty("text-align", "left", null)
}
a.__dirty =
!1
} else null != a.__div && (b.element.removeChild(a.__div), a.__div = null);
null != a.__div && (c = b.__roundPixels, b.__roundPixels = !0, b.__updateClip(a), b.__applyStyle(a, !0, !0, !0), b.__roundPixels = c)
} else gc.clear(a, b)
};
gc.renderDrawable = function (a, b) {
a.__domRender = !0;
b.__updateCacheBitmap(a, a.__forceCachedBitmapUpdate);
a.__forceCachedBitmapUpdate = !1;
a.__domRender = !1;
if (null == a.__cacheBitmap || a.__isCacheBitmapRender) {
a.__renderedOnCanvasWhileOnDOM && (a.__renderedOnCanvasWhileOnDOM = !1, a.__isHTML && null != a.__rawHtmlText &&
(a.__updateText(a.__rawHtmlText), a.__dirty = !0, a.__layoutDirty = !0, a.__renderDirty || (a.__renderDirty = !0, a.__setParentRenderDirty())));
var c = a.__textEngine;
if (null != a.stage && a.__worldVisible && a.__renderable) {
if (a.__dirty || a.__renderTransformChanged || null == a.__div) if ("" != c.text || c.background || c.border || 1 == c.type) {
null == a.__div && (a.__div = window.document.createElement("div"), b.__initializeElement(a, a.__div), a.__style.setProperty("outline", "none", null), a.__div.addEventListener("input", function (b) {
b.preventDefault();
a.get_htmlText() != a.__div.innerHTML && (a.set_htmlText(a.__div.innerHTML), a.__dirty = !1, a.dispatchEvent(new kf("textInput", !1, !1, a.get_htmlText())))
}, !0));
c.wordWrap ? a.__style.setProperty("word-wrap", "break-word", null) : a.__style.setProperty("white-space", "nowrap", null);
a.__style.setProperty("overflow", "hidden", null);
c.selectable ? (a.__style.setProperty("cursor", "text", null), a.__style.setProperty("-webkit-user-select", "text", null), a.__style.setProperty("-moz-user-select", "text", null), a.__style.setProperty("-ms-user-select",
"text", null), a.__style.setProperty("-o-user-select", "text", null)) : a.__style.setProperty("cursor", "inherit", null);
a.__div.contentEditable = 1 == c.type;
var d = a.__style;
c.background ? d.setProperty("background-color", "#" + T.hex(c.backgroundColor & 16777215, 6), null) : d.removeProperty("background-color");
var e = c.width, g = c.height, f = 1, h = a.__textFormat.size, p = h,
m = a.__renderTransform;
if (1 != m.a || 1 != m.d) m.a == m.d ? (f = m.a, m.a = m.d = 1) : m.a > m.d ? (f = m.a, m.d /= m.a, m.a = 1) : (f = m.d, m.a /= m.d, m.d = 1), p *= f, e = Math.ceil(e * f), g = Math.ceil(g *
f);
a.__textFormat.size = p;
m = c.text;
var l = 0;
if (a.__isHTML) {
for (var n = m; gc.__regexFont.match(n);) {
n = gc.__regexFont.matched(0);
var k = "";
gc.__regexFace.match(n) && (k += "font-family:'" + gc.__getAttributeMatch(gc.__regexFace) + "';");
gc.__regexColor.match(n) && (k += "color:#" + gc.__getAttributeMatch(gc.__regexColor) + ";");
if (gc.__regexSize.match(n)) {
l = gc.__getAttributeMatch(gc.__regexSize);
var t = K.cca(l, 0);
l = parseFloat(l) * f;
k += "font-size:" + (43 == t || 45 == t ? p + l : l) + "px;"
}
m = T.replace(m, n, "");
n = gc.__regexFont.matchedRight()
}
m =
m.replace(gc.__regexCloseFont.r, "")
} else m = T.htmlEscape(m);
m = T.replace(m, "
");
a.__div.innerHTML = m;
p = /\n/g;
m = a.__div.innerHTML.replace(p, "
");
a.__div.innerHTML = m;
p = /\r/g;
m = a.__div.innerHTML.replace(p, "
");
a.__div.innerHTML = m;
d.setProperty("font", Wb.getFont(a.__textFormat), null);
a.__textFormat.size = h;
a.__textFormat.leading = f;
d.setProperty("top", "3px", null);
c.border ? (d.setProperty("border", "solid 1px #" + T.hex(c.borderColor & 16777215, 6), null), a.__renderTransform.translate(-1, -1), a.__renderTransformChanged = !0, a.__transformDirty = !0) : "" != d.border && (d.removeProperty("border"), a.__renderTransformChanged = !0);
d.setProperty("color", "#" + T.hex(a.__textFormat.color & 16777215, 6), null);
d.setProperty("width", e + "px", null);
d.setProperty("height", g + "px", null);
switch (a.__textFormat.align) {
case 0:
d.setProperty("text-align", "center", null);
break;
case 4:
d.setProperty("text-align",
"right", null);
break;
default:
d.setProperty("text-align", "left", null)
}
a.__dirty = !1
} else null != a.__div && (b.element.removeChild(a.__div), a.__div = null);
null != a.__div && (c = b.__roundPixels, b.__roundPixels = !0, b.__updateClip(a), b.__applyStyle(a, !0, !0, !0), b.__roundPixels = c)
} else gc.clear(a, b)
} else b.__renderDrawableClear(a), a.__cacheBitmap.stage = a.stage, c = a.__cacheBitmap, null != c.stage && c.__worldVisible && c.__renderable && null != c.__bitmapData && c.__bitmapData.__isValid && c.__bitmapData.readable ? (b.__pushMaskObject(c),
null != c.__bitmapData.image.buffer.__srcImage ? Vc.renderImage(c, b) : Vc.renderCanvas(c, b), b.__popMaskObject(c)) : Vc.clear(c, b);
b.__renderEvent(a)
};
gc.renderDrawableClear = function (a, b) {
gc.clear(a, b)
};
gc.__getAttributeMatch = function (a) {
return null != a.matched(2) ? a.matched(2) : a.matched(3)
};
var Gg = function () {
};
k["openfl.display._internal.DOMTilemap"] = Gg;
Gg.__name__ = "openfl.display._internal.DOMTilemap";
Gg.clear = function (a, b) {
null != a.__cacheBitmap && Vc.clear(a.__cacheBitmap, b);
null != a.__canvas && (b.element.removeChild(a.__canvas),
a.__canvas = null, a.__style = null)
};
Gg.render = function (a, b) {
if (null != a.stage && a.__worldVisible && a.__renderable && 0 < a.__group.__tiles.length) {
null == a.__canvas && (a.__canvas = window.document.createElement("canvas"), a.__context = a.__canvas.getContext("2d"), b.__initializeElement(a, a.__canvas));
a.__canvas.width = a.__width;
a.__canvas.height = a.__height;
b.__canvasRenderer.context = a.__context;
var c = b.__canvasRenderer;
if (a.__renderable && 0 != a.__group.__tiles.length) {
var d = c.__getAlpha(a.__worldAlpha);
if (!(0 >= d)) {
var e =
c.context;
c.__setBlendMode(a.__worldBlendMode);
c.__pushMaskObject(a);
var g = ba.__pool.get();
g.setTo(0, 0, a.__width, a.__height);
c.__pushMaskRect(g, a.__renderTransform);
c.__allowSmoothing && a.smoothing || (e.imageSmoothingEnabled = !1);
Yf.renderTileContainer(a.__group, c, a.__renderTransform, a.__tileset, c.__allowSmoothing && a.smoothing, a.tileAlphaEnabled, d, a.tileBlendModeEnabled, a.__worldBlendMode, null, null, g);
c.__allowSmoothing && a.smoothing || (e.imageSmoothingEnabled = !0);
c.__popMaskRect();
c.__popMaskObject(a);
ba.__pool.release(g)
}
}
b.__canvasRenderer.context = null;
b.__updateClip(a);
b.__applyStyle(a, !0, !1, !0)
} else Gg.clear(a, b)
};
Gg.renderDrawable = function (a, b) {
b.__updateCacheBitmap(a, !1);
if (null == a.__cacheBitmap || a.__isCacheBitmapRender) {
null != a.opaqueBackground && !a.__isCacheBitmapRender && 0 < a.get_width() && a.get_height();
var c = a.__graphics;
if (null != a.stage && a.__worldVisible && a.__renderable && null != c) {
B.render(c, b.__canvasRenderer);
if (c.__softwareDirty || a.__worldAlphaChanged || a.__canvas != c.__canvas) null != c.__canvas ?
a.__canvas != c.__canvas && (null != a.__canvas && b.element.removeChild(a.__canvas), a.__canvas = c.__canvas, a.__context = c.__context, b.__initializeElement(a, a.__canvas)) : sf.clear(a, b);
if (null != a.__canvas) {
b.__pushMaskObject(a);
var d = a.__renderTransform;
a.__renderTransform = c.__worldTransform;
c.__transformDirty && (c.__transformDirty = !1, a.__renderTransformChanged = !0);
b.__updateClip(a);
b.__applyStyle(a, !0, !0, !0);
a.__renderTransform = d;
b.__popMaskObject(a)
}
} else sf.clear(a, b);
if (null != a.stage && a.__worldVisible && a.__renderable &&
0 < a.__group.__tiles.length) {
null == a.__canvas && (a.__canvas = window.document.createElement("canvas"), a.__context = a.__canvas.getContext("2d"), b.__initializeElement(a, a.__canvas));
a.__canvas.width = a.__width;
a.__canvas.height = a.__height;
b.__canvasRenderer.context = a.__context;
c = b.__canvasRenderer;
if (a.__renderable && 0 != a.__group.__tiles.length && (d = c.__getAlpha(a.__worldAlpha), !(0 >= d))) {
var e = c.context;
c.__setBlendMode(a.__worldBlendMode);
c.__pushMaskObject(a);
var g = ba.__pool.get();
g.setTo(0, 0, a.__width, a.__height);
c.__pushMaskRect(g, a.__renderTransform);
c.__allowSmoothing && a.smoothing || (e.imageSmoothingEnabled = !1);
Yf.renderTileContainer(a.__group, c, a.__renderTransform, a.__tileset, c.__allowSmoothing && a.smoothing, a.tileAlphaEnabled, d, a.tileBlendModeEnabled, a.__worldBlendMode, null, null, g);
c.__allowSmoothing && a.smoothing || (e.imageSmoothingEnabled = !0);
c.__popMaskRect();
c.__popMaskObject(a);
ba.__pool.release(g)
}
b.__canvasRenderer.context = null;
b.__updateClip(a);
b.__applyStyle(a, !0, !1, !0)
} else Gg.clear(a, b)
} else b.__renderDrawableClear(a),
a.__cacheBitmap.stage = a.stage, c = a.__cacheBitmap, null != c.stage && c.__worldVisible && c.__renderable && null != c.__bitmapData && c.__bitmapData.__isValid && c.__bitmapData.readable ? (b.__pushMaskObject(c), null != c.__bitmapData.image.buffer.__srcImage ? Vc.renderImage(c, b) : Vc.renderCanvas(c, b), b.__popMaskObject(c)) : Vc.clear(c, b);
b.__renderEvent(a)
};
Gg.renderDrawableClear = function (a, b) {
Gg.clear(a, b)
};
var dh = function () {
};
k["openfl.display._internal.DOMVideo"] = dh;
dh.__name__ = "openfl.display._internal.DOMVideo";
dh.clear =
function (a, b) {
a.__active && (b.element.removeChild(a.__stream.__video), a.__active = !1)
};
dh.render = function (a, b) {
null != a.stage && null != a.__stream && a.__worldVisible && a.__renderable ? (a.__active || (b.__initializeElement(a, a.__stream.__video), a.__active = !0, a.__dirty = !0), a.__dirty && (a.__stream.__video.width = a.__width | 0, a.__stream.__video.height = a.__height | 0, a.__dirty = !1), b.__updateClip(a), b.__applyStyle(a, !0, !0, !0)) : dh.clear(a, b)
};
dh.renderDrawable = function (a, b) {
dh.render(a, b);
b.__renderEvent(a)
};
dh.renderDrawableClear =
function (a, b) {
Zf.renderDrawableClear(a, b)
};
var $f = function (a) {
this.buffer = a;
this.bPos = this.iPos = this.fPos = this.oPos = this.ffPos = this.iiPos = this.tsPos = 0;
this.prev = Z.UNKNOWN
};
k["openfl.display._internal.DrawCommandReader"] = $f;
$f.__name__ = "openfl.display._internal.DrawCommandReader";
$f.prototype = {
buffer: null,
bPos: null,
iiPos: null,
iPos: null,
ffPos: null,
fPos: null,
oPos: null,
prev: null,
tsPos: null,
advance: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos +=
1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos +=
2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
},
bool: function (a) {
return this.buffer.b[this.bPos + a]
},
destroy: function () {
this.buffer = null;
this.reset()
},
fArr: function (a) {
return this.buffer.ff[this.ffPos + a]
},
float: function (a) {
return this.buffer.f[this.fPos + a]
},
iArr: function (a) {
return this.buffer.ii[this.iiPos + a]
},
int: function (a) {
return this.buffer.i[this.iPos + a]
},
obj: function (a) {
return this.buffer.o[this.oPos + a]
},
readBeginBitmapFill: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos +=
2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos +=
4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.BEGIN_BITMAP_FILL;
return this
},
readBeginFill: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos +=
4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.BEGIN_FILL;
return this
},
readBeginGradientFill: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos +=
2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos +=
4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.BEGIN_GRADIENT_FILL;
return this
},
readBeginShaderFill: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.BEGIN_SHADER_FILL;
return this
},
readCubicCurveTo: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos +=
2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos +=
4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.CUBIC_CURVE_TO;
return this
},
readCurveTo: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos +=
4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.CURVE_TO;
return this
},
readDrawCircle: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos +=
2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos +=
4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.DRAW_CIRCLE;
return this
},
readDrawEllipse: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos +=
4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.DRAW_ELLIPSE;
return this
},
readDrawQuads: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos +=
2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos +=
4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.DRAW_QUADS;
return this
},
readDrawRect: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos +=
4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.DRAW_RECT;
return this
},
readDrawRoundRect: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos +=
2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos +=
4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.DRAW_ROUND_RECT;
return this
},
readDrawTriangles: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos +=
4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.DRAW_TRIANGLES;
return this
},
readEndFill: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos +=
2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos +=
4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.END_FILL;
return this
},
readLineBitmapStyle: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos +=
4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.LINE_BITMAP_STYLE;
return this
},
readLineGradientStyle: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos +=
2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos +=
4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.LINE_GRADIENT_STYLE;
return this
},
readLineStyle: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos +=
4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.LINE_STYLE;
return this
},
readLineTo: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos +=
2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos +=
4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.LINE_TO;
return this
},
readMoveTo: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.MOVE_TO;
return this
},
readOverrideBlendMode: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos +=
2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos +=
4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.OVERRIDE_BLEND_MODE;
return this
},
readOverrideMatrix: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.OVERRIDE_MATRIX;
return this
},
readWindingEvenOdd: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos +=
2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos +=
4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.WINDING_EVEN_ODD;
return this
},
readWindingNonZero: function () {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos +=
4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos += 2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = Z.WINDING_NON_ZERO;
return this
},
reset: function () {
this.bPos = this.iPos = this.fPos = this.oPos =
this.ffPos = this.iiPos = this.tsPos = 0
},
skip: function (a) {
switch (this.prev._hx_index) {
case 0:
this.oPos += 2;
this.bPos += 2;
break;
case 1:
this.iPos += 1;
this.fPos += 1;
break;
case 2:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 3:
this.oPos += 1;
break;
case 4:
this.fPos += 6;
break;
case 5:
this.fPos += 4;
break;
case 6:
this.fPos += 3;
break;
case 7:
this.fPos += 4;
break;
case 8:
this.oPos += 3;
break;
case 9:
this.fPos += 4;
break;
case 10:
this.fPos += 5;
this.oPos += 1;
break;
case 12:
this.oPos += 4;
break;
case 14:
this.oPos += 2;
this.bPos +=
2;
break;
case 15:
this.oPos += 4;
this.iiPos += 2;
this.ffPos += 1;
this.fPos += 1;
break;
case 16:
this.oPos += 4;
this.iPos += 1;
this.fPos += 2;
this.bPos += 1;
break;
case 17:
this.fPos += 2;
break;
case 18:
this.fPos += 2;
break;
case 19:
this.oPos += 1;
break;
case 20:
this.oPos += 1
}
this.prev = a
},
__class__: $f
};
var Z = A["openfl.display._internal.DrawCommandType"] = {
__ename__: "openfl.display._internal.DrawCommandType",
__constructs__: null,
BEGIN_BITMAP_FILL: {
_hx_name: "BEGIN_BITMAP_FILL", _hx_index: 0, __enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
BEGIN_FILL: {
_hx_name: "BEGIN_FILL",
_hx_index: 1,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
BEGIN_GRADIENT_FILL: {
_hx_name: "BEGIN_GRADIENT_FILL",
_hx_index: 2,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
BEGIN_SHADER_FILL: {
_hx_name: "BEGIN_SHADER_FILL",
_hx_index: 3,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
CUBIC_CURVE_TO: {
_hx_name: "CUBIC_CURVE_TO",
_hx_index: 4,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
CURVE_TO: {
_hx_name: "CURVE_TO",
_hx_index: 5, __enum__: "openfl.display._internal.DrawCommandType", toString: t
},
DRAW_CIRCLE: {
_hx_name: "DRAW_CIRCLE",
_hx_index: 6,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
DRAW_ELLIPSE: {
_hx_name: "DRAW_ELLIPSE",
_hx_index: 7,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
DRAW_QUADS: {
_hx_name: "DRAW_QUADS",
_hx_index: 8,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
DRAW_RECT: {
_hx_name: "DRAW_RECT", _hx_index: 9, __enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
DRAW_ROUND_RECT: {
_hx_name: "DRAW_ROUND_RECT",
_hx_index: 10,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
DRAW_TILES: {
_hx_name: "DRAW_TILES",
_hx_index: 11,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
DRAW_TRIANGLES: {
_hx_name: "DRAW_TRIANGLES",
_hx_index: 12,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
END_FILL: {
_hx_name: "END_FILL",
_hx_index: 13,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
LINE_BITMAP_STYLE: {
_hx_name: "LINE_BITMAP_STYLE",
_hx_index: 14, __enum__: "openfl.display._internal.DrawCommandType", toString: t
},
LINE_GRADIENT_STYLE: {
_hx_name: "LINE_GRADIENT_STYLE",
_hx_index: 15,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
LINE_STYLE: {
_hx_name: "LINE_STYLE",
_hx_index: 16,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
LINE_TO: {
_hx_name: "LINE_TO",
_hx_index: 17,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
MOVE_TO: {
_hx_name: "MOVE_TO", _hx_index: 18, __enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
OVERRIDE_BLEND_MODE: {
_hx_name: "OVERRIDE_BLEND_MODE",
_hx_index: 19,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
OVERRIDE_MATRIX: {
_hx_name: "OVERRIDE_MATRIX",
_hx_index: 20,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
WINDING_EVEN_ODD: {
_hx_name: "WINDING_EVEN_ODD",
_hx_index: 21,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
WINDING_NON_ZERO: {
_hx_name: "WINDING_NON_ZERO",
_hx_index: 22,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
},
UNKNOWN: {
_hx_name: "UNKNOWN",
_hx_index: 23,
__enum__: "openfl.display._internal.DrawCommandType",
toString: t
}
};
Z.__constructs__ = [Z.BEGIN_BITMAP_FILL, Z.BEGIN_FILL, Z.BEGIN_GRADIENT_FILL, Z.BEGIN_SHADER_FILL, Z.CUBIC_CURVE_TO, Z.CURVE_TO, Z.DRAW_CIRCLE, Z.DRAW_ELLIPSE, Z.DRAW_QUADS, Z.DRAW_RECT, Z.DRAW_ROUND_RECT, Z.DRAW_TILES, Z.DRAW_TRIANGLES, Z.END_FILL, Z.LINE_BITMAP_STYLE, Z.LINE_GRADIENT_STYLE, Z.LINE_STYLE, Z.LINE_TO, Z.MOVE_TO, Z.OVERRIDE_BLEND_MODE, Z.OVERRIDE_MATRIX, Z.WINDING_EVEN_ODD, Z.WINDING_NON_ZERO, Z.UNKNOWN];
var Hh = function () {
};
k["openfl.display._internal.FlashRenderer"] = Hh;
Hh.__name__ = "openfl.display._internal.FlashRenderer";
Hh.register = function (a) {
null == Hh.instances && (Hh.instances = ts.toObjectMap(null, !0), Oa.get_current().stage.addEventListener("enterFrame", Hh.render, !1, -2147483648));
Hh.instances.set(a, !0)
};
Hh.render = function (a) {
for (a = Hh.instances.keys(); a.hasNext();) a.next().__renderFlash()
};
var ap = function () {
};
k["openfl.display._internal.IDisplayObject"] = ap;
ap.__name__ = "openfl.display._internal.IDisplayObject";
ap.__isInterface__ = !0;
ap.prototype = {__renderFlash: null, __class__: ap};
var fi = function () {
};
k["openfl.display._internal.FlashTilemap"] = fi;
fi.__name__ = "openfl.display._internal.FlashTilemap";
fi.render = function (a) {
};
fi.renderTileContainer = function (a, b, c, d, e, g, f, h, p, m, l, n) {
};
var Zh = function (a, b, c, d, e, g, f) {
null == f && (f = .05);
null == g && (g = !1);
Xi.call(this, a, b, c, d, e, g, f);
this.p_perm = [];
for (b = 0; 512 > b;) c = b++, this.p_perm[c] = Zh.P[c & 255];
this.base_factor = .03125;
this.setSeed(a)
};
k["openfl.display._internal.PerlinNoise"] =
Zh;
Zh.__name__ = "openfl.display._internal.PerlinNoise";
Zh.__super__ = Xi;
Zh.prototype = u(Xi.prototype, {
p_perm: null,
x_offset: null,
y_offset: null,
z_offset: null,
base_factor: null,
fill: function (a, b, c, d) {
var e = a.width, g = a.height, f = this.octaves, h = this.octaves_frequencies,
p = this.octaves_persistences, m = 1 == (1 & this.channels), l = 2 == (2 & this.channels),
n = 4 == (4 & this.channels), k = 0;
m && ++k;
l && ++k;
n && ++k;
var t = this.grayscale, q = this.stitch_threshold * e | 0, w = this.stitch_threshold * g | 0,
u = b * this.base_factor + this.x_offset;
c = c * this.base_factor +
this.y_offset;
d = d * this.base_factor + this.z_offset;
for (var x = 0; x < g;) {
var A = x++;
b = u;
for (var N = 0, z = e; N < z;) {
for (var J = N++, B = 0, ma = 0, C = 0, D = 0, K = f; D < K;) {
var F = D++, G = h[F];
F = p[F];
B += this.noise(b * G, c * G, d * G) * F;
t || (1 < k && (ma += this.noise((b + 1) * G, (c + 1) * G, d * G) * F), 2 < k && (C += this.noise((b + 2) * G, (c + 2) * G, d * G) * F))
}
D = 0;
t ? D = this.color(B, B, B) : m && l && n ? D = this.color(B, ma, C) : m && l ? D = this.color(B, ma, null) : m && n ? D = this.color(B, null, ma) : l && n ? D = this.color(null, B, ma) : m ? D = this.color(B, null, null) : l ? D = this.color(null, B, null) : n && (D = this.color(null,
null, B));
this.stitch && (D = this.stitching(a, D, J, A, q, w, e, g));
a.setPixel32(J, A, D);
b += this.base_factor
}
c += this.base_factor
}
},
noise: function (a, b, c) {
var d = a - a % 1, e = b - b % 1, g = c - c % 1;
a -= d;
b -= e;
c -= g;
var f = (d | 0) & 255, h = (e | 0) & 255, p = (g | 0) & 255;
g = this.fade(a);
e = this.fade(b);
d = this.fade(c);
var m = this.p_perm[f] + h, l = this.p_perm[m] + p;
m = this.p_perm[m + 1] + p;
h = this.p_perm[f + 1] + h;
f = this.p_perm[h] + p;
var n = this.p_perm[h + 1] + p, k = a - 1, t = b - 1, q = c - 1, w = this.p_perm[n + 1] & 15;
p = (0 == (w & 1) ? 8 > w ? k : t : 8 > w ? -k : -t) + (0 == (w & 2) ? 4 > w ? t : 12 == w ? k : q : 4 > w ? -t :
14 == w ? -k : -q);
w = this.p_perm[m + 1] & 15;
h = (0 == (w & 1) ? 8 > w ? a : t : 8 > w ? -a : -t) + (0 == (w & 2) ? 4 > w ? t : 12 == w ? a : q : 4 > w ? -t : 14 == w ? -a : -q);
w = this.p_perm[f + 1] & 15;
var u = (0 == (w & 1) ? 8 > w ? k : b : 8 > w ? -k : -b) + (0 == (w & 2) ? 4 > w ? b : 12 == w ? k : q : 4 > w ? -b : 14 == w ? -k : -q);
w = this.p_perm[l + 1] & 15;
q = (0 == (w & 1) ? 8 > w ? a : b : 8 > w ? -a : -b) + (0 == (w & 2) ? 4 > w ? b : 12 == w ? a : q : 4 > w ? -b : 14 == w ? -a : -q);
w = this.p_perm[n] & 15;
n = (0 == (w & 1) ? 8 > w ? k : t : 8 > w ? -k : -t) + (0 == (w & 2) ? 4 > w ? t : 12 == w ? k : c : 4 > w ? -t : 14 == w ? -k : -c);
w = this.p_perm[m] & 15;
m = (0 == (w & 1) ? 8 > w ? a : t : 8 > w ? -a : -t) + (0 == (w & 2) ? 4 > w ? t : 12 == w ? a : c : 4 > w ? -t : 14 == w ?
-a : -c);
w = this.p_perm[f] & 15;
f = (0 == (w & 1) ? 8 > w ? k : b : 8 > w ? -k : -b) + (0 == (w & 2) ? 4 > w ? b : 12 == w ? k : c : 4 > w ? -b : 14 == w ? -k : -c);
w = this.p_perm[l] & 15;
a = (0 == (w & 1) ? 8 > w ? a : b : 8 > w ? -a : -b) + (0 == (w & 2) ? 4 > w ? b : 12 == w ? a : c : 4 > w ? -b : 14 == w ? -a : -c);
q += g * (u - q);
a += g * (f - a);
a += e * (m + g * (n - m) - a);
return a + d * (q + e * (h + g * (p - h) - q) - a)
},
setSeed: function (a) {
this.x_offset = a = 16807 * a % 2147483647 | 0;
this.y_offset = a = 16807 * a % 2147483647 | 0;
this.z_offset = 16807 * a % 2147483647 | 0
},
__class__: Zh
});
var Wg = function (a, b, c, d, e, g, f) {
null == f && (f = !1);
null == g && (g = !1);
null == e && (e = !1);
null ==
d && (d = 0);
null == c && (c = 2);
null == b && (b = 5);
null == a && (a = 0);
this.wrap = a;
this.filter = b;
this.mipfilter = c;
this.lodBias = d;
this.ignoreSampler = e;
this.centroid = g;
this.textureAlpha = f
};
k["openfl.display._internal.SamplerState"] = Wg;
Wg.__name__ = "openfl.display._internal.SamplerState";
Wg.prototype = {
centroid: null,
filter: null,
ignoreSampler: null,
lodBias: null,
mipfilter: null,
mipmapGenerated: null,
textureAlpha: null,
wrap: null,
clone: function () {
var a = new Wg(this.wrap, this.filter, this.mipfilter, this.lodBias, this.ignoreSampler,
this.centroid, this.textureAlpha);
a.mipmapGenerated = this.mipmapGenerated;
return a
},
copyFrom: function (a) {
null == a || a.ignoreSampler || (this.wrap = a.wrap, this.filter = a.filter, this.mipfilter = a.mipfilter, this.lodBias = a.lodBias, this.centroid = a.centroid, this.textureAlpha = a.textureAlpha)
},
equals: function (a) {
return null == a ? !1 : this.wrap == a.wrap && this.filter == a.filter && this.mipfilter == a.mipfilter && this.lodBias == a.lodBias ? this.textureAlpha == a.textureAlpha : !1
},
__class__: Wg
};
var Mm = function () {
this.inputRefs = [];
this.inputFilter =
[];
this.inputMipFilter = [];
this.inputs = [];
this.inputWrap = [];
this.overrideIntNames = [];
this.overrideIntValues = [];
this.overrideFloatNames = [];
this.overrideFloatValues = [];
this.overrideBoolNames = [];
this.overrideBoolValues = [];
this.paramLengths = [];
this.paramPositions = [];
this.paramRefs_Bool = [];
this.paramRefs_Float = [];
this.paramRefs_Int = [];
this.paramTypes = []
};
k["openfl.display._internal.ShaderBuffer"] = Mm;
Mm.__name__ = "openfl.display._internal.ShaderBuffer";
Mm.prototype = {
inputCount: null,
inputRefs: null,
inputFilter: null,
inputMipFilter: null,
inputs: null,
inputWrap: null,
overrideBoolCount: null,
overrideBoolNames: null,
overrideBoolValues: null,
overrideFloatCount: null,
overrideFloatNames: null,
overrideFloatValues: null,
overrideIntCount: null,
overrideIntNames: null,
overrideIntValues: null,
paramBoolCount: null,
paramCount: null,
paramData: null,
paramDataBuffer: null,
paramDataLength: null,
paramFloatCount: null,
paramIntCount: null,
paramLengths: null,
paramPositions: null,
paramRefs_Bool: null,
paramRefs_Float: null,
paramRefs_Int: null,
paramTypes: null,
shader: null,
addBoolOverride: function (a, b) {
this.overrideBoolNames[this.overrideBoolCount] = a;
this.overrideBoolValues[this.overrideBoolCount] = b;
this.overrideBoolCount++
},
addFloatOverride: function (a, b) {
this.overrideFloatNames[this.overrideFloatCount] = a;
this.overrideFloatValues[this.overrideFloatCount] = b;
this.overrideFloatCount++
},
addIntOverride: function (a, b) {
this.overrideIntNames[this.overrideIntCount] = a;
this.overrideIntValues[this.overrideIntCount] = b;
this.overrideIntCount++
},
clearOverride: function () {
this.overrideBoolCount =
this.overrideFloatCount = this.overrideIntCount = 0
},
update: function (a) {
this.paramIntCount = this.paramFloatCount = this.paramDataLength = this.paramCount = this.paramBoolCount = this.overrideBoolCount = this.overrideFloatCount = this.overrideIntCount = this.inputCount = 0;
this.shader = null;
if (null != a) {
a.__init();
this.inputCount = a.__inputBitmapData.length;
for (var b, c = 0, d = this.inputCount; c < d;) {
var e = c++;
b = a.__inputBitmapData[e];
this.inputs[e] = b.input;
this.inputFilter[e] = b.filter;
this.inputMipFilter[e] = b.mipFilter;
this.inputRefs[e] =
b;
this.inputWrap[e] = b.wrap
}
b = a.__paramBool.length;
var g = a.__paramFloat.length, f = a.__paramInt.length;
this.paramCount = b + g + f;
this.paramBoolCount = b;
this.paramFloatCount = g;
this.paramIntCount = f;
var h = 0;
c = 0;
for (d = b; c < d;) {
e = c++;
var p = a.__paramBool[e];
this.paramPositions[h] = this.paramDataLength;
var m = null != p.value ? p.value.length : 0;
this.paramLengths[h] = m;
this.paramDataLength += m;
this.paramTypes[h] = 0;
this.paramRefs_Bool[e] = p;
++h
}
c = 0;
for (d = g; c < d;) e = c++, p = a.__paramFloat[e], this.paramPositions[h] = this.paramDataLength,
m = null != p.value ? p.value.length : 0, this.paramLengths[h] = m, this.paramDataLength += m, this.paramTypes[h] = 1, this.paramRefs_Float[e] = p, ++h;
c = 0;
for (d = f; c < d;) e = c++, p = a.__paramInt[e], this.paramPositions[h] = this.paramDataLength, m = null != p.value ? p.value.length : 0, this.paramLengths[h] = m, this.paramDataLength += m, this.paramTypes[h] = 2, this.paramRefs_Int[e] = p, ++h;
if (0 < this.paramDataLength) if (null == this.paramData) {
c = this.paramDataLength;
var l = p = h = f = d = null;
this.paramData = c = null != c ? new Float32Array(c) : null != d ? new Float32Array(d) :
null != f ? new Float32Array(f.__array) : null != h ? new Float32Array(h) : null != p ? null == l ? new Float32Array(p, 0) : new Float32Array(p, 0, l) : null
} else this.paramDataLength > this.paramData.length && (c = this.paramDataLength, l = p = h = f = d = null, c = null != c ? new Float32Array(c) : null != d ? new Float32Array(d) : null != f ? new Float32Array(f.__array) : null != h ? new Float32Array(h) : null != p ? null == l ? new Float32Array(p, 0) : new Float32Array(p, 0, l) : null, c.set(this.paramData), this.paramData = c);
c = l = p = h = f = 0;
for (d = this.paramCount; c < d;) if (e = c++, m = this.paramLengths[e],
e < b) {
e = this.paramRefs_Bool[f];
++f;
for (var n = 0; n < m;) {
var k = n++;
this.paramData[l] = e.value[k] ? 1 : 0;
++l
}
} else if (e < b + g) for (e = this.paramRefs_Float[h], ++h, n = 0; n < m;) k = n++, this.paramData[l] = e.value[k], ++l; else for (e = this.paramRefs_Int[p], ++p, n = 0; n < m;) k = n++, this.paramData[l] = e.value[k], ++l;
this.shader = a
}
},
__class__: Mm
};
var cc = function (a, b, c) {
this.profile = 3;
this.driverInfo = "OpenGL (Direct blitting)";
this.backBufferHeight = this.backBufferWidth = 0;
jb.call(this);
this.__stage = a;
this.__contextState = b;
this.__stage3D =
c;
this.__context = a.window.context;
this.gl = this.__context.webgl;
null == this.__contextState && (this.__contextState = new ak);
this.__state = new ak;
var d;
this.__vertexConstants = a = new Float32Array(512);
this.__fragmentConstants = a = new Float32Array(512);
var e = null;
a = [1, 1, 1, 1];
var g = d = c = b = null;
this.__positionScale = a = null != e ? new Float32Array(e) : null != a ? new Float32Array(a) : null != b ? new Float32Array(b.__array) : null != c ? new Float32Array(c) : null != d ? null == g ? new Float32Array(d, 0) : new Float32Array(d, 0, g) : null;
this.__programs =
new xa;
-1 == cc.__glMaxViewportDims && (cc.__glMaxViewportDims = this.gl.getParameter(this.gl.MAX_VIEWPORT_DIMS));
this.maxBackBufferHeight = this.maxBackBufferWidth = cc.__glMaxViewportDims;
-1 == cc.__glMaxTextureMaxAnisotropy && (a = this.gl.getExtension("EXT_texture_filter_anisotropic"), null != a && Object.prototype.hasOwnProperty.call(a, "MAX_TEXTURE_MAX_ANISOTROPY_EXT") || (a = this.gl.getExtension("MOZ_EXT_texture_filter_anisotropic")), null != a && Object.prototype.hasOwnProperty.call(a, "MAX_TEXTURE_MAX_ANISOTROPY_EXT") ||
(a = this.gl.getExtension("WEBKIT_EXT_texture_filter_anisotropic")), null != a ? (cc.__glTextureMaxAnisotropy = a.TEXTURE_MAX_ANISOTROPY_EXT, cc.__glMaxTextureMaxAnisotropy = this.gl.getParameter(a.MAX_TEXTURE_MAX_ANISOTROPY_EXT)) : (cc.__glTextureMaxAnisotropy = 0, cc.__glMaxTextureMaxAnisotropy = 0));
-1 == cc.__glDepthStencil && (cc.__glDepthStencil = this.gl.DEPTH_STENCIL);
-1 == cc.__glMemoryTotalAvailable && (a = this.gl.getExtension("NVX_gpu_memory_info"), null != a && (cc.__glMemoryTotalAvailable = a.GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX,
cc.__glMemoryCurrentAvailable = a.GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX));
null == cc.__driverInfo && (a = this.gl.getParameter(this.gl.VENDOR), b = this.gl.getParameter(this.gl.VERSION), c = this.gl.getParameter(this.gl.RENDERER), d = this.gl.getParameter(this.gl.SHADING_LANGUAGE_VERSION), cc.__driverInfo = "OpenGL Vendor=" + a + " Version=" + b + " Renderer=" + c + " GLSL=" + d);
this.driverInfo = cc.__driverInfo;
this.__quadIndexBufferElements = 16383;
e = this.__quadIndexBufferCount = 6 * this.__quadIndexBufferElements;
g = d = c = b = a = null;
a = null != e ? new Uint16Array(e) : null != a ? new Uint16Array(a) : null != b ? new Uint16Array(b.__array) : null != c ? new Uint16Array(c) : null != d ? null == g ? new Uint16Array(d, 0) : new Uint16Array(d, 0, g) : null;
d = c = b = 0;
for (g = this.__quadIndexBufferElements; d < g;) d++, a[b] = c, a[b + 1] = c + 1, a[b + 2] = c + 2, a[b + 3] = c + 2, a[b + 4] = c + 1, a[b + 5] = c + 3, b += 6, c += 4;
this.__quadIndexBuffer = this.createIndexBuffer(this.__quadIndexBufferCount);
this.__quadIndexBuffer.uploadFromTypedArray(a)
};
k["openfl.display3D.Context3D"] = cc;
cc.__name__ = "openfl.display3D.Context3D";
cc.__super__ = jb;
cc.prototype = u(jb.prototype, {
backBufferHeight: null,
backBufferWidth: null,
driverInfo: null,
maxBackBufferHeight: null,
maxBackBufferWidth: null,
profile: null,
gl: null,
__backBufferAntiAlias: null,
__backBufferTexture: null,
__backBufferWantsBestResolution: null,
__backBufferWantsBestResolutionOnBrowserZoom: null,
__cleared: null,
__context: null,
__contextState: null,
__renderStage3DProgram: null,
__enableErrorChecking: null,
__fragmentConstants: null,
__frontBufferTexture: null,
__positionScale: null,
__present: null,
__programs: null,
__quadIndexBuffer: null,
__quadIndexBufferCount: null,
__quadIndexBufferElements: null,
__stage: null,
__stage3D: null,
__state: null,
__vertexConstants: null,
clear: function (a, b, c, d, e, g, f) {
null == f && (f = 7);
null == g && (g = 0);
null == e && (e = 1);
null == d && (d = 1);
null == c && (c = 0);
null == b && (b = 0);
null == a && (a = 0);
this.__flushGLFramebuffer();
this.__flushGLViewport();
var h = 0;
if (0 != (f & 1)) {
null == this.__state.renderToTexture && (this.__stage.context3D != this || this.__stage.__renderer.__cleared || (this.__stage.__renderer.__cleared =
!0), this.__cleared = !0);
h |= this.gl.COLOR_BUFFER_BIT;
if (1 != this.__contextState.colorMaskRed || 1 != this.__contextState.colorMaskGreen || 1 != this.__contextState.colorMaskBlue || 1 != this.__contextState.colorMaskAlpha) this.gl.colorMask(!0, !0, !0, !0), this.__contextState.colorMaskRed = !0, this.__contextState.colorMaskGreen = !0, this.__contextState.colorMaskBlue = !0, this.__contextState.colorMaskAlpha = !0;
this.gl.clearColor(a, b, c, d)
}
0 != (f & 2) && (h |= this.gl.DEPTH_BUFFER_BIT, 1 != this.__contextState.depthMask && (this.gl.depthMask(!0),
this.__contextState.depthMask = !0), this.gl.clearDepth(e));
0 != (f & 4) && (h |= this.gl.STENCIL_BUFFER_BIT, 255 != this.__contextState.stencilWriteMask && (this.gl.stencilMask(255), this.__contextState.stencilWriteMask = 255), this.gl.clearStencil(g), this.__contextState.stencilWriteMask = 255);
0 != h && (this.__setGLScissorTest(!1), this.gl.clear(h))
},
configureBackBuffer: function (a, b, c, d, e, g) {
null == g && (g = !1);
null == e && (e = !1);
null == d && (d = !0);
if (null == this.__stage3D) this.backBufferWidth = a, this.backBufferHeight = b, this.__backBufferAntiAlias =
c, this.__state.backBufferEnableDepthAndStencil = d, this.__backBufferWantsBestResolution = e, this.__backBufferWantsBestResolutionOnBrowserZoom = g; else {
if (null == this.__backBufferTexture || this.backBufferWidth != a || this.backBufferHeight != b) {
null != this.__backBufferTexture && this.__backBufferTexture.dispose();
null != this.__frontBufferTexture && this.__frontBufferTexture.dispose();
this.__backBufferTexture = this.createRectangleTexture(a, b, 1, !0);
this.__frontBufferTexture = this.createRectangleTexture(a, b, 1, !0);
null == this.__stage3D.__vertexBuffer &&
(this.__stage3D.__vertexBuffer = this.createVertexBuffer(4, 5));
var f = Eb.toFloatVector(null, null, null, [a, b, 0, 1, 1, 0, b, 0, 0, 1, a, 0, 0, 1, 0, 0, 0, 0, 0, 0]);
this.__stage3D.__vertexBuffer.uploadFromVector(f, 0, 20);
null == this.__stage3D.__indexBuffer && (this.__stage3D.__indexBuffer = this.createIndexBuffer(6), f = Eb.toIntVector(null, null, null, [0, 1, 2, 2, 1, 3]), this.__stage3D.__indexBuffer.uploadFromVector(f, 0, 6))
}
this.backBufferWidth = a;
this.backBufferHeight = b;
this.__backBufferAntiAlias = c;
this.__state.backBufferEnableDepthAndStencil =
d;
this.__backBufferWantsBestResolution = e;
this.__backBufferWantsBestResolutionOnBrowserZoom = g;
this.__state.__primaryGLFramebuffer = this.__backBufferTexture.__getGLFramebuffer(d, c, 0);
this.__frontBufferTexture.__getGLFramebuffer(d, c, 0)
}
},
createCubeTexture: function (a, b, c, d) {
null == d && (d = 0);
return new Yi(this, a, b, c, d)
},
createIndexBuffer: function (a, b) {
null == b && (b = 1);
return new bp(this, a, b)
},
createProgram: function (a) {
null == a && (a = 0);
return new cp(this, a)
},
createRectangleTexture: function (a, b, c, d) {
return new bk(this,
a, b, ck.toString(c), d)
},
createTexture: function (a, b, c, d, e) {
null == e && (e = 0);
return new gi(this, a, b, c, d, e)
},
createVertexBuffer: function (a, b, c) {
null == c && (c = 1);
return new dp(this, a, b, Pr.toString(c))
},
createVideoTexture: function () {
return new en(this)
},
dispose: function (a) {
this.gl = null;
this.__dispose()
},
drawToBitmapData: function (a, b, c) {
if (null != a) if (b = null != b ? b.__toLimeRectangle() : new Vd(0, 0, this.backBufferWidth, this.backBufferHeight), c = null != c ? c.__toLimeVector2() : new be, this.__stage.context3D == this) {
if (null !=
this.__stage.window) {
if (null != this.__stage3D) {
var d = -this.__stage3D.get_x() | 0, e = -this.__stage3D.get_y() | 0;
c.x = d;
c.y = e
}
e = this.__stage.window.readPixels();
a.image.copyPixels(e, b, c)
}
} else if (null != this.__backBufferTexture) {
d = this.__state.renderToTexture;
this.setRenderToBackBuffer();
this.__flushGLFramebuffer();
this.__flushGLViewport();
e = this.backBufferWidth * this.backBufferHeight * 4;
var g = e = null != e ? new Uint8Array(e) : null;
e = this.gl;
e.readPixels(0, 0, this.backBufferWidth, this.backBufferHeight, this.__backBufferTexture.__format,
this.gl.UNSIGNED_BYTE, g);
e = new Lb(new Uf(g, this.backBufferWidth, this.backBufferHeight, 32, 2));
a.image.copyPixels(e, b, c);
null != d && this.setRenderToTexture(d, this.__state.renderToTextureDepthStencil, this.__state.renderToTextureAntiAlias, this.__state.renderToTextureSurfaceSelector)
}
},
drawTriangles: function (a, b, c) {
null == c && (c = -1);
null == b && (b = 0);
null == this.__state.renderToTexture && (this.__stage.context3D != this || this.__stage.__renderer.__cleared ? this.__cleared || this.clear(0, 0, 0, 0, 1, 0, 1) : this.__stage.__renderer.__clear());
this.__flushGL();
null != this.__state.program && this.__state.program.__flush();
c = -1 == c ? a.__numIndices : 3 * c;
this.__bindGLElementArrayBuffer(a.__id);
this.gl.drawElements(this.gl.TRIANGLES, c, this.gl.UNSIGNED_SHORT, 2 * b)
},
present: function () {
this.setRenderToBackBuffer();
if (null != this.__stage3D && null != this.__backBufferTexture) {
this.__cleared || this.clear(0, 0, 0, 0, 1, 0, 1);
var a = this.__backBufferTexture;
this.__backBufferTexture = this.__frontBufferTexture;
this.__frontBufferTexture = a;
this.__state.__primaryGLFramebuffer =
this.__backBufferTexture.__getGLFramebuffer(this.__state.backBufferEnableDepthAndStencil, this.__backBufferAntiAlias, 0);
this.__cleared = !1
}
this.__present = !0
},
setBlendFactors: function (a, b) {
this.setBlendFactorsSeparate(a, b, a, b)
},
setBlendFactorsSeparate: function (a, b, c, d) {
this.__state.blendSourceRGBFactor = a;
this.__state.blendDestinationRGBFactor = b;
this.__state.blendSourceAlphaFactor = c;
this.__state.blendDestinationAlphaFactor = d;
this.__setGLBlendEquation(this.gl.FUNC_ADD)
},
setColorMask: function (a, b, c, d) {
this.__state.colorMaskRed =
a;
this.__state.colorMaskGreen = b;
this.__state.colorMaskBlue = c;
this.__state.colorMaskAlpha = d
},
setCulling: function (a) {
this.__state.culling = a
},
setDepthTest: function (a, b) {
this.__state.depthMask = a;
this.__state.depthCompareMode = b
},
setProgram: function (a) {
this.__state.program = a;
this.__state.shader = null;
if (null != a) for (var b = 0, c = a.__samplerStates.length; b < c;) {
var d = b++;
null == this.__state.samplerStates[d] ? this.__state.samplerStates[d] = a.__samplerStates[d].clone() : this.__state.samplerStates[d].copyFrom(a.__samplerStates[d])
}
},
setProgramConstantsFromByteArray: function (a, b, c, d, e) {
if (0 != c && null != this.__state.program && (null == this.__state.program || 1 != this.__state.program.__format)) {
-1 == c && (c = (Fb.get_length(d) >>> 2) - e);
var g = (a = 1 == a) ? this.__vertexConstants : this.__fragmentConstants, f = Fb.toBytes(d),
h = 0;
d = Fb.get_length(d);
null == h && (h = 0);
d = null == h ? new Float32Array(f.b.bufferValue) : null == d ? new Float32Array(f.b.bufferValue, h) : new Float32Array(f.b.bufferValue, h, d);
f = 4 * b;
e = Ba.toFloat(e) / Ba.toFloat(4) | 0;
h = 0;
for (var p = 4 * c; h < p;) {
var m =
h++;
g[f + m] = d[e + m]
}
null != this.__state.program && this.__state.program.__markDirty(a, b, c)
}
},
setProgramConstantsFromMatrix: function (a, b, c, d) {
null == d && (d = !1);
if (null != this.__state.program && 1 == this.__state.program.__format) this.__flushGLProgram(), a = new Float32Array(16), a[0] = c.rawData.get(0), a[1] = c.rawData.get(1), a[2] = c.rawData.get(2), a[3] = c.rawData.get(3), a[4] = c.rawData.get(4), a[5] = c.rawData.get(5), a[6] = c.rawData.get(6), a[7] = c.rawData.get(7), a[8] = c.rawData.get(8), a[9] = c.rawData.get(9), a[10] = c.rawData.get(10),
a[11] = c.rawData.get(11), a[12] = c.rawData.get(12), a[13] = c.rawData.get(13), a[14] = c.rawData.get(14), a[15] = c.rawData.get(15), fc.uniformMatrix4fv(this.gl, b, d, a); else {
var e = (a = 1 == a) ? this.__vertexConstants : this.__fragmentConstants;
c = c.rawData;
var g = 4 * b;
d ? (e[g++] = c.get(0), e[g++] = c.get(4), e[g++] = c.get(8), e[g++] = c.get(12), e[g++] = c.get(1), e[g++] = c.get(5), e[g++] = c.get(9), e[g++] = c.get(13), e[g++] = c.get(2), e[g++] = c.get(6), e[g++] = c.get(10), e[g++] = c.get(14), e[g++] = c.get(3), e[g++] = c.get(7), e[g++] = c.get(11)) : (e[g++] =
c.get(0), e[g++] = c.get(1), e[g++] = c.get(2), e[g++] = c.get(3), e[g++] = c.get(4), e[g++] = c.get(5), e[g++] = c.get(6), e[g++] = c.get(7), e[g++] = c.get(8), e[g++] = c.get(9), e[g++] = c.get(10), e[g++] = c.get(11), e[g++] = c.get(12), e[g++] = c.get(13), e[g++] = c.get(14));
e[g++] = c.get(15);
null != this.__state.program && this.__state.program.__markDirty(a, b, 4)
}
},
setProgramConstantsFromVector: function (a, b, c, d) {
null == d && (d = -1);
if (0 != d && (null == this.__state.program || 1 != this.__state.program.__format)) {
-1 == d && (d = c.get_length() >> 2);
for (var e =
(a = 1 == a) ? this.__vertexConstants : this.__fragmentConstants, g = 0, f = 4 * b, h = 0, p = d; h < p;) h++, e[f++] = c.get(g++), e[f++] = c.get(g++), e[f++] = c.get(g++), e[f++] = c.get(g++);
null != this.__state.program && this.__state.program.__markDirty(a, b, d)
}
},
setRenderToBackBuffer: function () {
this.__state.renderToTexture = null
},
setRenderToTexture: function (a, b, c, d) {
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = !1);
this.__state.renderToTexture = a;
this.__state.renderToTextureDepthStencil = b;
this.__state.renderToTextureAntiAlias = c;
this.__state.renderToTextureSurfaceSelector =
d
},
setSamplerStateAt: function (a, b, c, d) {
null == this.__state.samplerStates[a] && (this.__state.samplerStates[a] = new Wg);
a = this.__state.samplerStates[a];
a.wrap = b;
a.filter = c;
a.mipfilter = d
},
setScissorRectangle: function (a) {
null != a ? (this.__state.scissorEnabled = !0, this.__state.scissorRectangle.copyFrom(a)) : this.__state.scissorEnabled = !1
},
setStencilActions: function (a, b, c, d, e) {
null == e && (e = 5);
null == d && (d = 5);
null == c && (c = 5);
null == b && (b = 0);
null == a && (a = 2);
this.__state.stencilTriangleFace = a;
this.__state.stencilCompareMode =
b;
this.__state.stencilPass = c;
this.__state.stencilDepthFail = d;
this.__state.stencilFail = e
},
setStencilReferenceValue: function (a, b, c) {
null == c && (c = 255);
null == b && (b = 255);
this.__state.stencilReferenceValue = a;
this.__state.stencilReadMask = b;
this.__state.stencilWriteMask = c
},
setTextureAt: function (a, b) {
this.__state.textures[a] = b
},
setVertexBufferAt: function (a, b, c, d) {
null == d && (d = 4);
null == c && (c = 0);
if (null == b) this.gl.disableVertexAttribArray(a), this.__bindGLArrayBuffer(null); else switch (this.__bindGLArrayBuffer(b.__id),
this.gl.enableVertexAttribArray(a), c *= 4, d) {
case 0:
this.gl.vertexAttribPointer(a, 4, this.gl.UNSIGNED_BYTE, !0, b.__stride, c);
break;
case 1:
this.gl.vertexAttribPointer(a, 1, this.gl.FLOAT, !1, b.__stride, c);
break;
case 2:
this.gl.vertexAttribPointer(a, 2, this.gl.FLOAT, !1, b.__stride, c);
break;
case 3:
this.gl.vertexAttribPointer(a, 3, this.gl.FLOAT, !1, b.__stride, c);
break;
case 4:
this.gl.vertexAttribPointer(a, 4, this.gl.FLOAT, !1, b.__stride, c);
break;
default:
throw I.thrown(new pd);
}
},
__bindGLArrayBuffer: function (a) {
this.__contextState.__currentGLArrayBuffer !=
a && (this.gl.bindBuffer(this.gl.ARRAY_BUFFER, a), this.__contextState.__currentGLArrayBuffer = a)
},
__bindGLElementArrayBuffer: function (a) {
this.__contextState.__currentGLElementArrayBuffer != a && (this.gl.bindBuffer(this.gl.ELEMENT_ARRAY_BUFFER, a), this.__contextState.__currentGLElementArrayBuffer = a)
},
__bindGLFramebuffer: function (a) {
this.__contextState.__currentGLFramebuffer != a && (this.gl.bindFramebuffer(this.gl.FRAMEBUFFER, a), this.__contextState.__currentGLFramebuffer = a)
},
__bindGLTexture2D: function (a) {
this.gl.bindTexture(this.gl.TEXTURE_2D,
a);
this.__contextState.__currentGLTexture2D = a
},
__bindGLTextureCubeMap: function (a) {
this.gl.bindTexture(this.gl.TEXTURE_CUBE_MAP, a);
this.__contextState.__currentGLTextureCubeMap = a
},
__dispose: function () {
this.driverInfo += " (Disposed)";
null != this.__stage3D && (this.__stage3D.__indexBuffer = null, this.__stage3D.__vertexBuffer = null, this.__stage3D = this.__stage3D.context3D = null);
this.__positionScale = this.__frontBufferTexture = this.__fragmentConstants = this.__renderStage3DProgram = this.__context = this.__backBufferTexture =
null;
this.__present = !1;
this.__vertexConstants = this.__stage = this.__quadIndexBuffer = null
},
__drawTriangles: function (a, b) {
null == a && (a = 0);
null == this.__state.renderToTexture && (this.__stage.context3D != this || this.__stage.__renderer.__cleared ? this.__cleared || this.clear(0, 0, 0, 0, 1, 0, 1) : this.__stage.__renderer.__clear());
this.__flushGL();
null != this.__state.program && this.__state.program.__flush();
this.gl.drawArrays(this.gl.TRIANGLES, a, b)
},
__flushGL: function () {
this.__flushGLProgram();
this.__flushGLFramebuffer();
this.__flushGLViewport();
this.__flushGLBlend();
if (this.__contextState.colorMaskRed != this.__state.colorMaskRed || this.__contextState.colorMaskGreen != this.__state.colorMaskGreen || this.__contextState.colorMaskBlue != this.__state.colorMaskBlue || this.__contextState.colorMaskAlpha != this.__state.colorMaskAlpha) this.gl.colorMask(this.__state.colorMaskRed, this.__state.colorMaskGreen, this.__state.colorMaskBlue, this.__state.colorMaskAlpha), this.__contextState.colorMaskRed = this.__state.colorMaskRed, this.__contextState.colorMaskGreen =
this.__state.colorMaskGreen, this.__contextState.colorMaskBlue = this.__state.colorMaskBlue, this.__contextState.colorMaskAlpha = this.__state.colorMaskAlpha;
this.__flushGLCulling();
this.__flushGLDepth();
this.__flushGLScissor();
this.__flushGLStencil();
this.__flushGLTextures()
},
__flushGLBlend: function () {
if (this.__contextState.blendDestinationRGBFactor != this.__state.blendDestinationRGBFactor || this.__contextState.blendSourceRGBFactor != this.__state.blendSourceRGBFactor || this.__contextState.blendDestinationAlphaFactor !=
this.__state.blendDestinationAlphaFactor || this.__contextState.blendSourceAlphaFactor != this.__state.blendSourceAlphaFactor) this.__setGLBlend(!0), this.__state.blendDestinationRGBFactor == this.__state.blendDestinationAlphaFactor && this.__state.blendSourceRGBFactor == this.__state.blendSourceAlphaFactor ? this.gl.blendFunc(this.__getGLBlend(this.__state.blendSourceRGBFactor), this.__getGLBlend(this.__state.blendDestinationRGBFactor)) : this.gl.blendFuncSeparate(this.__getGLBlend(this.__state.blendSourceRGBFactor),
this.__getGLBlend(this.__state.blendDestinationRGBFactor), this.__getGLBlend(this.__state.blendSourceAlphaFactor), this.__getGLBlend(this.__state.blendDestinationAlphaFactor)), this.__contextState.blendDestinationRGBFactor = this.__state.blendDestinationRGBFactor, this.__contextState.blendSourceRGBFactor = this.__state.blendSourceRGBFactor, this.__contextState.blendDestinationAlphaFactor = this.__state.blendDestinationAlphaFactor, this.__contextState.blendSourceAlphaFactor = this.__state.blendSourceAlphaFactor
},
__flushGLColor: function () {
if (this.__contextState.colorMaskRed != this.__state.colorMaskRed || this.__contextState.colorMaskGreen != this.__state.colorMaskGreen || this.__contextState.colorMaskBlue != this.__state.colorMaskBlue || this.__contextState.colorMaskAlpha != this.__state.colorMaskAlpha) this.gl.colorMask(this.__state.colorMaskRed, this.__state.colorMaskGreen, this.__state.colorMaskBlue, this.__state.colorMaskAlpha), this.__contextState.colorMaskRed = this.__state.colorMaskRed, this.__contextState.colorMaskGreen =
this.__state.colorMaskGreen, this.__contextState.colorMaskBlue = this.__state.colorMaskBlue, this.__contextState.colorMaskAlpha = this.__state.colorMaskAlpha
},
__flushGLCulling: function () {
if (this.__contextState.culling != this.__state.culling) {
if (3 == this.__state.culling) this.__setGLCullFace(!1); else switch (this.__setGLCullFace(!0), this.__state.culling) {
case 0:
this.gl.cullFace(this.gl.BACK);
break;
case 1:
this.gl.cullFace(this.gl.FRONT);
break;
case 2:
this.gl.cullFace(this.gl.FRONT_AND_BACK);
break;
case 3:
break;
default:
throw I.thrown(new pd);
}
this.__contextState.culling = this.__state.culling
}
},
__flushGLDepth: function () {
var a = this.__state.depthMask && (null != this.__state.renderToTexture ? this.__state.renderToTextureDepthStencil : this.__state.backBufferEnableDepthAndStencil);
this.__contextState.depthMask != a && (this.gl.depthMask(a), this.__contextState.depthMask = a);
if (this.__contextState.depthCompareMode != this.__state.depthCompareMode) {
switch (this.__state.depthCompareMode) {
case 0:
this.gl.depthFunc(this.gl.ALWAYS);
break;
case 1:
this.gl.depthFunc(this.gl.EQUAL);
break;
case 2:
this.gl.depthFunc(this.gl.GREATER);
break;
case 3:
this.gl.depthFunc(this.gl.GEQUAL);
break;
case 4:
this.gl.depthFunc(this.gl.LESS);
break;
case 5:
this.gl.depthFunc(this.gl.LEQUAL);
break;
case 6:
this.gl.depthFunc(this.gl.NEVER);
break;
case 7:
this.gl.depthFunc(this.gl.NOTEQUAL);
break;
default:
throw I.thrown(new pd);
}
this.__contextState.depthCompareMode = this.__state.depthCompareMode
}
},
__flushGLFramebuffer: function () {
if (null != this.__state.renderToTexture) {
if (this.__contextState.renderToTexture !=
this.__state.renderToTexture || this.__contextState.renderToTextureSurfaceSelector != this.__state.renderToTextureSurfaceSelector) {
var a = this.__state.renderToTexture.__getGLFramebuffer(this.__state.renderToTextureDepthStencil, this.__state.renderToTextureAntiAlias, this.__state.renderToTextureSurfaceSelector);
this.__bindGLFramebuffer(a);
this.__contextState.renderToTexture = this.__state.renderToTexture;
this.__contextState.renderToTextureAntiAlias = this.__state.renderToTextureAntiAlias;
this.__contextState.renderToTextureDepthStencil =
this.__state.renderToTextureDepthStencil;
this.__contextState.renderToTextureSurfaceSelector = this.__state.renderToTextureSurfaceSelector
}
this.__setGLDepthTest(this.__state.renderToTextureDepthStencil);
this.__setGLStencilTest(this.__state.renderToTextureDepthStencil);
this.__setGLFrontFace(!0)
} else {
if (null == this.__stage && 0 == this.backBufferWidth && 0 == this.backBufferHeight) throw I.thrown(new id("Context3D backbuffer has not been configured"));
if (null != this.__contextState.renderToTexture || this.__contextState.__currentGLFramebuffer !=
this.__state.__primaryGLFramebuffer || this.__contextState.backBufferEnableDepthAndStencil != this.__state.backBufferEnableDepthAndStencil) this.__bindGLFramebuffer(this.__state.__primaryGLFramebuffer), this.__contextState.renderToTexture = null, this.__contextState.backBufferEnableDepthAndStencil = this.__state.backBufferEnableDepthAndStencil;
this.__setGLDepthTest(this.__state.backBufferEnableDepthAndStencil);
this.__setGLStencilTest(this.__state.backBufferEnableDepthAndStencil);
this.__setGLFrontFace(this.__stage.context3D !=
this)
}
},
__flushGLProgram: function () {
var a = this.__state.shader, b = this.__state.program;
this.__contextState.shader != a && (null != this.__contextState.shader && this.__contextState.shader.__disable(), null != a && a.__enable(), this.__contextState.shader = a);
this.__contextState.program != b && (null != this.__contextState.program && this.__contextState.program.__disable(), null != b && b.__enable(), this.__contextState.program = b);
null != b && 0 == b.__format && (this.__positionScale[1] = this.__stage.context3D == this && null == this.__state.renderToTexture ?
1 : -1, b.__setPositionScale(this.__positionScale))
},
__flushGLScissor: function () {
if (this.__state.scissorEnabled) {
this.__setGLScissorTest(!0);
this.__contextState.scissorEnabled = !0;
var a = this.__state.scissorRectangle.x | 0, b = this.__state.scissorRectangle.y | 0,
c = this.__state.scissorRectangle.width | 0, d = this.__state.scissorRectangle.height | 0;
null == this.__state.renderToTexture && null == this.__stage3D && (b = (this.__stage.window.__height * this.__stage.window.__scale | 0) - (this.__state.scissorRectangle.height | 0) - b);
if (this.__contextState.scissorRectangle.x !=
a || this.__contextState.scissorRectangle.y != b || this.__contextState.scissorRectangle.width != c || this.__contextState.scissorRectangle.height != d) this.gl.scissor(a, b, c, d), this.__contextState.scissorRectangle.setTo(a, b, c, d)
} else this.__contextState.scissorEnabled != this.__state.scissorEnabled && (this.__setGLScissorTest(!1), this.__contextState.scissorEnabled = !1)
},
__flushGLStencil: function () {
if (this.__contextState.stencilTriangleFace != this.__state.stencilTriangleFace || this.__contextState.stencilPass != this.__state.stencilPass ||
this.__contextState.stencilDepthFail != this.__state.stencilDepthFail || this.__contextState.stencilFail != this.__state.stencilFail) this.gl.stencilOpSeparate(this.__getGLTriangleFace(this.__state.stencilTriangleFace), this.__getGLStencilAction(this.__state.stencilFail), this.__getGLStencilAction(this.__state.stencilDepthFail), this.__getGLStencilAction(this.__state.stencilPass)), this.__contextState.stencilTriangleFace = this.__state.stencilTriangleFace, this.__contextState.stencilPass = this.__state.stencilPass,
this.__contextState.stencilDepthFail = this.__state.stencilDepthFail, this.__contextState.stencilFail = this.__state.stencilFail;
this.__contextState.stencilWriteMask != this.__state.stencilWriteMask && (this.gl.stencilMask(this.__state.stencilWriteMask), this.__contextState.stencilWriteMask = this.__state.stencilWriteMask);
if (this.__contextState.stencilCompareMode != this.__state.stencilCompareMode || this.__contextState.stencilReferenceValue != this.__state.stencilReferenceValue || this.__contextState.stencilReadMask !=
this.__state.stencilReadMask) this.gl.stencilFunc(this.__getGLCompareMode(this.__state.stencilCompareMode), this.__state.stencilReferenceValue, this.__state.stencilReadMask), this.__contextState.stencilCompareMode = this.__state.stencilCompareMode, this.__contextState.stencilReferenceValue = this.__state.stencilReferenceValue, this.__contextState.stencilReadMask = this.__state.stencilReadMask
},
__flushGLTextures: function () {
for (var a = 0, b, c, d = 0, e = this.__state.textures.length; d < e;) {
var g = d++;
b = this.__state.textures[g];
c = this.__state.samplerStates[g];
null == c && (this.__state.samplerStates[g] = new Wg, c = this.__state.samplerStates[g]);
this.gl.activeTexture(this.gl.TEXTURE0 + a);
null != b ? (b.__textureTarget == this.gl.TEXTURE_2D ? this.__bindGLTexture2D(b.__getTexture()) : this.__bindGLTextureCubeMap(b.__getTexture()), this.__contextState.textures[g] = b, b.__setSamplerState(c)) : this.__bindGLTexture2D(null);
null != this.__state.program && 0 == this.__state.program.__format && c.textureAlpha && (this.gl.activeTexture(this.gl.TEXTURE0 + a + 4), null !=
b && null != b.__alphaTexture ? (b.__alphaTexture.__textureTarget == this.gl.TEXTURE_2D ? this.__bindGLTexture2D(b.__alphaTexture.__getTexture()) : this.__bindGLTextureCubeMap(b.__alphaTexture.__getTexture()), b.__alphaTexture.__setSamplerState(c), this.gl.uniform1i(this.__state.program.__agalAlphaSamplerEnabled[a].location, 1)) : (this.__bindGLTexture2D(null), null != this.__state.program.__agalAlphaSamplerEnabled[a] && this.gl.uniform1i(this.__state.program.__agalAlphaSamplerEnabled[a].location, 0)));
++a
}
},
__flushGLViewport: function () {
if (null ==
this.__state.renderToTexture) if (this.__stage.context3D == this) {
var a = null == this.__stage3D ? 0 : this.__stage3D.get_x() | 0,
b = this.__stage.window.__height * this.__stage.window.__scale - this.backBufferHeight - (null == this.__stage3D ? 0 : this.__stage3D.get_y()) | 0;
this.gl.viewport(a, b, this.backBufferWidth, this.backBufferHeight)
} else this.gl.viewport(0, 0, this.backBufferWidth, this.backBufferHeight); else b = a = 0, this.__state.renderToTexture instanceof gi ? (b = this.__state.renderToTexture, a = b.__width, b = b.__height) : this.__state.renderToTexture instanceof
bk ? (b = this.__state.renderToTexture, a = b.__width, b = b.__height) : this.__state.renderToTexture instanceof Yi && (b = this.__state.renderToTexture, b = a = b.__size), this.gl.viewport(0, 0, a, b)
},
__getGLBlend: function (a) {
switch (a) {
case 0:
return this.gl.DST_ALPHA;
case 1:
return this.gl.DST_COLOR;
case 2:
return this.gl.ONE;
case 3:
return this.gl.ONE_MINUS_DST_ALPHA;
case 4:
return this.gl.ONE_MINUS_DST_COLOR;
case 5:
return this.gl.ONE_MINUS_SRC_ALPHA;
case 6:
return this.gl.ONE_MINUS_SRC_COLOR;
case 7:
return this.gl.SRC_ALPHA;
case 8:
return this.gl.SRC_COLOR;
case 9:
return this.gl.ZERO;
default:
throw I.thrown(new pd);
}
},
__getGLCompareMode: function (a) {
switch (a) {
case 0:
return this.gl.ALWAYS;
case 1:
return this.gl.EQUAL;
case 2:
return this.gl.GREATER;
case 3:
return this.gl.GEQUAL;
case 4:
return this.gl.LESS;
case 5:
return this.gl.LEQUAL;
case 6:
return this.gl.NEVER;
case 7:
return this.gl.NOTEQUAL;
default:
return this.gl.EQUAL
}
},
__getGLStencilAction: function (a) {
switch (a) {
case 0:
return this.gl.DECR;
case 1:
return this.gl.DECR_WRAP;
case 2:
return this.gl.INCR;
case 3:
return this.gl.INCR_WRAP;
case 4:
return this.gl.INVERT;
case 5:
return this.gl.KEEP;
case 6:
return this.gl.REPLACE;
case 7:
return this.gl.ZERO;
default:
return this.gl.KEEP
}
},
__getGLTriangleFace: function (a) {
switch (a) {
case 0:
return this.gl.BACK;
case 1:
return this.gl.FRONT;
case 2:
return this.gl.FRONT_AND_BACK;
case 3:
return this.gl.NONE;
default:
return this.gl.FRONT_AND_BACK
}
},
__renderStage3D: function (a) {
var b = a.context3D;
if (null != b && b != this && null != b.__frontBufferTexture && a.visible && 0 < this.backBufferHeight &&
0 < this.backBufferWidth) {
if (null == this.__renderStage3DProgram) {
var c = new W;
c.assemble(Qr.toString(1), "m44 op, va0, vc0\nmov v0, va1");
var d = new W;
d.assemble(Qr.toString(0), "tex ft1, v0, fs0 <2d,nearest,nomip>\nmov oc, ft1");
this.__renderStage3DProgram = this.createProgram();
this.__renderStage3DProgram.upload(c.agalcode, d.agalcode)
}
this.setProgram(this.__renderStage3DProgram);
this.setBlendFactors(2, 9);
this.setColorMask(!0, !0, !0, !0);
this.setCulling(3);
this.setDepthTest(!1, 0);
this.setStencilActions();
this.setStencilReferenceValue(0,
0, 0);
this.setScissorRectangle(null);
this.setTextureAt(0, b.__frontBufferTexture);
this.setVertexBufferAt(0, a.__vertexBuffer, 0, 3);
this.setVertexBufferAt(1, a.__vertexBuffer, 3, 2);
this.setProgramConstantsFromMatrix(1, 0, a.__renderTransform, !0);
this.drawTriangles(a.__indexBuffer);
this.__present = !0
}
},
__setGLBlend: function (a) {
this.__contextState.__enableGLBlend != a && (a ? this.gl.enable(this.gl.BLEND) : this.gl.disable(this.gl.BLEND), this.__contextState.__enableGLBlend = a)
},
__setGLBlendEquation: function (a) {
this.__contextState.__glBlendEquation !=
a && (this.gl.blendEquation(a), this.__contextState.__glBlendEquation = a)
},
__setGLCullFace: function (a) {
this.__contextState.__enableGLCullFace != a && (a ? this.gl.enable(this.gl.CULL_FACE) : this.gl.disable(this.gl.CULL_FACE), this.__contextState.__enableGLCullFace = a)
},
__setGLDepthTest: function (a) {
this.__contextState.__enableGLDepthTest != a && (a ? this.gl.enable(this.gl.DEPTH_TEST) : this.gl.disable(this.gl.DEPTH_TEST), this.__contextState.__enableGLDepthTest = a)
},
__setGLFrontFace: function (a) {
this.__contextState.__frontFaceGLCCW !=
a && (this.gl.frontFace(a ? this.gl.CCW : this.gl.CW), this.__contextState.__frontFaceGLCCW = a)
},
__setGLScissorTest: function (a) {
this.__contextState.__enableGLScissorTest != a && (a ? this.gl.enable(this.gl.SCISSOR_TEST) : this.gl.disable(this.gl.SCISSOR_TEST), this.__contextState.__enableGLScissorTest = a)
},
__setGLStencilTest: function (a) {
this.__contextState.__enableGLStencilTest != a && (a ? this.gl.enable(this.gl.STENCIL_TEST) : this.gl.disable(this.gl.STENCIL_TEST), this.__contextState.__enableGLStencilTest = a)
},
get_enableErrorChecking: function () {
return this.__enableErrorChecking
},
set_enableErrorChecking: function (a) {
return this.__enableErrorChecking = a
},
get_totalGPUMemory: function () {
if (-1 != cc.__glMemoryCurrentAvailable) {
var a = this.gl.getParameter(cc.__glMemoryCurrentAvailable),
b = this.gl.getParameter(cc.__glMemoryTotalAvailable);
if (0 < b) return 1024 * (b - a)
}
return 0
},
__class__: cc,
__properties__: {
get_totalGPUMemory: "get_totalGPUMemory",
set_enableErrorChecking: "set_enableErrorChecking",
get_enableErrorChecking: "get_enableErrorChecking"
}
});
var Pr = {
fromString: function (a) {
switch (a) {
case "dynamicDraw":
return 0;
case "staticDraw":
return 1;
default:
return null
}
}, toString: function (a) {
switch (a) {
case 0:
return "dynamicDraw";
case 1:
return "staticDraw";
default:
return null
}
}
}, Qr = {
fromString: function (a) {
switch (a) {
case "fragment":
return 0;
case "vertex":
return 1;
default:
return null
}
}, toString: function (a) {
switch (a) {
case 0:
return "fragment";
case 1:
return "vertex";
default:
return null
}
}
}, ck = {
fromString: function (a) {
switch (a) {
case "bgrPacked565":
return 0;
case "bgra":
return 1;
case "bgraPacked4444":
return 2;
case "compressed":
return 3;
case "compressedAlpha":
return 4;
case "rgbaHalfFloat":
return 5;
default:
return null
}
}, toString: function (a) {
switch (a) {
case 0:
return "bgrPacked565";
case 1:
return "bgra";
case 2:
return "bgraPacked4444";
case 3:
return "compressed";
case 4:
return "compressedAlpha";
case 5:
return "rgbaHalfFloat";
default:
return null
}
}
}, bp = function (a, b, c) {
this.__context = a;
this.__numIndices = b;
a = this.__context.gl;
this.__id = a.createBuffer();
this.__usage = 0 == c ? a.DYNAMIC_DRAW : a.STATIC_DRAW
};
k["openfl.display3D.IndexBuffer3D"] = bp;
bp.__name__ =
"openfl.display3D.IndexBuffer3D";
bp.prototype = {
__context: null,
__id: null,
__memoryUsage: null,
__numIndices: null,
__tempUInt16Array: null,
__usage: null,
dispose: function () {
this.__context.gl.deleteBuffer(this.__id)
},
uploadFromByteArray: function (a, b, c, d) {
b += 2 * c;
a = Fb.toArrayBuffer(a);
null == b && (b = 0);
d = null != a ? null == d ? new Uint16Array(a, b) : new Uint16Array(a, b, d) : null;
this.uploadFromTypedArray(d)
},
uploadFromTypedArray: function (a, b) {
null != a && (b = this.__context.gl, this.__context.__bindGLElementArrayBuffer(this.__id),
fc.bufferData(b, b.ELEMENT_ARRAY_BUFFER, a, this.__usage))
},
uploadFromVector: function (a, b, c) {
if (null != a) {
var d = b + c, e = this.__tempUInt16Array;
if (null == this.__tempUInt16Array || this.__tempUInt16Array.length < c) this.__tempUInt16Array = null != c ? new Uint16Array(c) : null, null != e && this.__tempUInt16Array.set(e);
for (c = b; c < d;) e = c++, this.__tempUInt16Array[e - b] = a.get(e);
this.uploadFromTypedArray(this.__tempUInt16Array)
}
},
__class__: bp
};
var cp = function (a, b) {
this.__context = a;
this.__format = b;
0 == this.__format ? (this.__agalSamplerUsageMask =
0, this.__agalUniforms = new E, this.__agalSamplerUniforms = new E, this.__agalAlphaSamplerUniforms = new E, this.__agalAlphaSamplerEnabled = []) : (this.__glslAttribNames = [], this.__glslAttribTypes = [], this.__glslSamplerNames = [], this.__glslUniformLocations = [], this.__glslUniformNames = [], this.__glslUniformTypes = []);
this.__samplerStates = []
};
k["openfl.display3D.Program3D"] = cp;
cp.__name__ = "openfl.display3D.Program3D";
cp.prototype = {
__agalAlphaSamplerEnabled: null,
__agalAlphaSamplerUniforms: null,
__agalFragmentUniformMap: null,
__agalPositionScale: null,
__agalSamplerUniforms: null,
__agalSamplerUsageMask: null,
__agalUniforms: null,
__agalVertexUniformMap: null,
__context: null,
__format: null,
__glFragmentShader: null,
__glFragmentSource: null,
__glProgram: null,
__glslAttribNames: null,
__glslAttribTypes: null,
__glslSamplerNames: null,
__glslUniformLocations: null,
__glslUniformNames: null,
__glslUniformTypes: null,
__glVertexShader: null,
__glVertexSource: null,
__samplerStates: null,
dispose: function () {
this.__deleteShaders()
},
getAttributeIndex: function (a) {
if (0 ==
this.__format) return T.startsWith(a, "va") ? z.parseInt(a.substring(2)) : -1;
for (var b = 0, c = this.__glslAttribNames.length; b < c;) {
var d = b++;
if (this.__glslAttribNames[d] == a) return d
}
return -1
},
getConstantIndex: function (a) {
if (0 == this.__format) return T.startsWith(a, "vc") ? z.parseInt(a.substring(2)) : T.startsWith(a, "fc") ? z.parseInt(a.substring(2)) : -1;
for (var b = 0, c = this.__glslUniformNames.length; b < c;) {
var d = b++;
if (this.__glslUniformNames[d] == a) return this.__glslUniformLocations[d]
}
return -1
},
upload: function (a, b) {
if (0 ==
this.__format) {
var c = [];
a = Je.convertToGLSL(a, null);
b = Je.convertToGLSL(b, c);
5 == Qa.level && (Qa.info(a, {
fileName: "openfl/display3D/Program3D.hx",
lineNumber: 399,
className: "openfl.display3D.Program3D",
methodName: "upload"
}), Qa.info(b, {
fileName: "openfl/display3D/Program3D.hx",
lineNumber: 400,
className: "openfl.display3D.Program3D",
methodName: "upload"
}));
this.__deleteShaders();
this.__uploadFromGLSL(a, b);
this.__buildAGALUniformList();
b = 0;
for (a = c.length; b < a;) {
var d = b++;
this.__samplerStates[d] = c[d]
}
}
},
uploadSources: function (a,
b) {
if (1 == this.__format) {
var c = "#ifdef GL_ES\n\t\t\t#ifdef GL_FRAGMENT_PRECISION_HIGH\n\t\t\tprecision highp float;\n\t\t\t#else\n\t\t\tprecision mediump float;\n\t\t\t#endif\n\t\t\t#endif\n\t\t\t" + a,
d = "#ifdef GL_ES\n\t\t\t#ifdef GL_FRAGMENT_PRECISION_HIGH\n\t\t\tprecision highp float;\n\t\t\t#else\n\t\t\tprecision mediump float;\n\t\t\t#endif\n\t\t\t#endif\n\t\t\t" + b;
if (c != this.__glVertexSource || d != this.__glFragmentSource) {
this.__processGLSLData(a, "attribute");
this.__processGLSLData(a, "uniform");
this.__processGLSLData(b, "uniform");
this.__deleteShaders();
this.__uploadFromGLSL(c, d);
var e = this.__glslSamplerNames;
d = this.__glslAttribNames;
var g = this.__glslAttribTypes;
a = this.__glslUniformNames;
this.__glslSamplerNames = [];
this.__glslAttribNames = [];
this.__glslAttribTypes = [];
this.__glslUniformLocations = [];
b = this.__context.gl;
for (c = 0; c < e.length;) {
var f = e[c];
++c;
var h = b.getUniformLocation(this.__glProgram, f);
this.__glslSamplerNames[h] = f
}
c = 0;
for (e = d.length; c < e;) f = c++, h = b.getAttribLocation(this.__glProgram,
d[f]), this.__glslAttribNames[h] = d[f], this.__glslAttribTypes[h] = g[f];
c = 0;
for (e = a.length; c < e;) f = c++, d = b.getUniformLocation(this.__glProgram, a[f]), this.__glslUniformLocations[f] = d
}
}
},
__buildAGALUniformList: function () {
if (1 != this.__format) {
var a = this.__context.gl;
this.__agalUniforms.clear();
this.__agalSamplerUniforms.clear();
this.__agalAlphaSamplerUniforms.clear();
this.__agalAlphaSamplerEnabled = [];
this.__agalSamplerUsageMask = 0;
var b = a.getProgramParameter(this.__glProgram, a.ACTIVE_UNIFORMS);
for (var c = new E,
d = new E, e = 0; e < b;) {
var g = e++, f = a.getActiveUniform(this.__glProgram, g), h = f.name, p = f.size,
m = f.type;
f = new fn(this.__context);
f.name = h;
f.size = p;
f.type = m;
f.location = a.getUniformLocation(this.__glProgram, f.name);
h = f.name.indexOf("[");
0 <= h && (f.name = f.name.substring(0, h));
switch (f.type) {
case 35674:
f.regCount = 2;
break;
case 35675:
f.regCount = 3;
break;
case 35676:
f.regCount = 4;
break;
default:
f.regCount = 1
}
f.regCount *= f.size;
this.__agalUniforms.add(f);
if ("vcPositionScale" == f.name) this.__agalPositionScale = f; else if (T.startsWith(f.name,
"vc")) f.regIndex = z.parseInt(f.name.substring(2)), f.regData = this.__context.__vertexConstants, c.add(f); else if (T.startsWith(f.name, "fc")) f.regIndex = z.parseInt(f.name.substring(2)), f.regData = this.__context.__fragmentConstants, d.add(f); else if (T.startsWith(f.name, "sampler") && -1 == f.name.indexOf("alpha")) for (f.regIndex = z.parseInt(f.name.substring(7)), this.__agalSamplerUniforms.add(f), h = 0, p = f.regCount; h < p;) m = h++, this.__agalSamplerUsageMask |= 1 << f.regIndex + m; else T.startsWith(f.name, "sampler") && T.endsWith(f.name,
"_alpha") ? (h = f.name.indexOf("_") - 7, f.regIndex = z.parseInt(f.name.substring(7, 7 + h)) + 4, this.__agalAlphaSamplerUniforms.add(f)) : T.startsWith(f.name, "sampler") && T.endsWith(f.name, "_alphaEnabled") && (f.regIndex = z.parseInt(f.name.substring(7)), this.__agalAlphaSamplerEnabled[f.regIndex] = f);
5 == Qa.level && Qa.verbose("" + g + " name:" + f.name + " type:" + f.type + " size:" + f.size + " location:" + z.string(f.location), {
fileName: "openfl/display3D/Program3D.hx",
lineNumber: 577,
className: "openfl.display3D.Program3D",
methodName: "__buildAGALUniformList"
})
}
this.__agalVertexUniformMap =
new dk(ia.array(c));
this.__agalFragmentUniformMap = new dk(ia.array(d))
}
},
__deleteShaders: function () {
var a = this.__context.gl;
null != this.__glProgram && (this.__glProgram = null);
null != this.__glVertexShader && (a.deleteShader(this.__glVertexShader), this.__glVertexShader = null);
null != this.__glFragmentShader && (a.deleteShader(this.__glFragmentShader), this.__glFragmentShader = null)
},
__disable: function () {
},
__enable: function () {
var a = this.__context.gl;
a.useProgram(this.__glProgram);
if (0 == this.__format) {
this.__agalVertexUniformMap.markAllDirty();
this.__agalFragmentUniformMap.markAllDirty();
for (var b = this.__agalSamplerUniforms.h; null != b;) {
var c = b.item;
b = b.next;
if (1 == c.regCount) a.uniform1i(c.location, c.regIndex); else throw I.thrown(new pd("!!! TODO: uniform location on webgl"));
}
for (b = this.__agalAlphaSamplerUniforms.h; null != b;) if (c = b.item, b = b.next, 1 == c.regCount) a.uniform1i(c.location, c.regIndex); else throw I.thrown(new pd("!!! TODO: uniform location on webgl"));
}
},
__flush: function () {
0 == this.__format && (this.__agalVertexUniformMap.flush(), this.__agalFragmentUniformMap.flush())
},
__getSamplerState: function (a) {
return this.__samplerStates[a]
},
__markDirty: function (a, b, c) {
1 != this.__format && (a ? this.__agalVertexUniformMap.markDirty(b, c) : this.__agalFragmentUniformMap.markDirty(b, c))
},
__processGLSLData: function (a, b) {
var c = 0, d;
for (d = "uniform" == b ? new fb("uniform ([A-Za-z0-9]+) ([A-Za-z0-9_]+)", "") : new fb("attribute ([A-Za-z0-9]+) ([A-Za-z0-9_]+)", ""); d.matchSub(a, c);) {
var e = d.matched(1);
var g = d.matched(2);
if (!T.startsWith(g, "gl_")) {
if (T.startsWith(e, "sampler")) this.__glslSamplerNames.push(g);
else {
switch (e) {
case "bool":
c = 0;
break;
case "bvec2":
c = 1;
break;
case "bvec3":
c = 2;
break;
case "bvec4":
c = 3;
break;
case "dvec2":
case "vec2":
c = 5;
break;
case "dvec3":
case "vec3":
c = 6;
break;
case "double":
case "float":
c = 4;
break;
case "ivec3":
case "uvec3":
c = 10;
break;
case "ivec4":
case "uvec4":
c = 11;
break;
case "mat2":
case "mat2x2":
c = 12;
break;
case "mat2x3":
c = 13;
break;
case "mat2x4":
c = 14;
break;
case "mat3x2":
c = 15;
break;
case "mat3":
case "mat3x3":
c = 16;
break;
case "mat3x4":
c = 17;
break;
case "mat4":
case "mat4x4":
c = 20;
break;
case "mat4x2":
c =
18;
break;
case "mat4x3":
c = 19;
break;
case "int":
case "uint":
c = 8;
break;
case "ivec2":
case "uvec2":
c = 9;
break;
case "dvec4":
case "vec4":
c = 7;
break;
default:
c = null
}
"uniform" == b ? (this.__glslUniformNames.push(g), this.__glslUniformTypes.push(c)) : (this.__glslAttribNames.push(g), this.__glslAttribTypes.push(c))
}
g = d.matchedPos();
c = g.pos + g.len
}
}
},
__setPositionScale: function (a) {
1 != this.__format && null != this.__agalPositionScale && this.__context.gl.uniform4fv(this.__agalPositionScale.location, a)
},
__setSamplerState: function (a,
b) {
this.__samplerStates[a] = b
},
__uploadFromGLSL: function (a, b) {
var c = this.__context.gl;
this.__glVertexSource = a;
this.__glFragmentSource = b;
this.__glVertexShader = c.createShader(c.VERTEX_SHADER);
c.shaderSource(this.__glVertexShader, a);
c.compileShader(this.__glVertexShader);
if (0 == c.getShaderParameter(this.__glVertexShader, c.COMPILE_STATUS)) {
var d = "Error compiling vertex shader\n" + c.getShaderInfoLog(this.__glVertexShader);
Qa.error(d + ("\n" + a), {
fileName: "openfl/display3D/Program3D.hx",
lineNumber: 869,
className: "openfl.display3D.Program3D",
methodName: "__uploadFromGLSL"
})
}
this.__glFragmentShader = c.createShader(c.FRAGMENT_SHADER);
c.shaderSource(this.__glFragmentShader, b);
c.compileShader(this.__glFragmentShader);
0 == c.getShaderParameter(this.__glFragmentShader, c.COMPILE_STATUS) && (d = "Error compiling fragment shader\n" + c.getShaderInfoLog(this.__glFragmentShader), Qa.error(d + ("\n" + b), {
fileName: "openfl/display3D/Program3D.hx",
lineNumber: 881,
className: "openfl.display3D.Program3D",
methodName: "__uploadFromGLSL"
}));
this.__glProgram = c.createProgram();
if (0 == this.__format) for (b = 0; 16 > b;) {
var e = b++;
d = "va" + e;
-1 != a.indexOf(" " + d) && c.bindAttribLocation(this.__glProgram, e, d)
} else for (b = 0, a = this.__glslAttribNames; b < a.length;) if (d = a[b], ++b, -1 < d.indexOf("Position") && T.startsWith(d, "openfl_")) {
c.bindAttribLocation(this.__glProgram, 0, d);
break
}
c.attachShader(this.__glProgram, this.__glVertexShader);
c.attachShader(this.__glProgram, this.__glFragmentShader);
c.linkProgram(this.__glProgram);
0 == c.getProgramParameter(this.__glProgram, c.LINK_STATUS) && (d = "Unable to initialize the shader program\n" +
c.getProgramInfoLog(this.__glProgram), Qa.error(d, {
fileName: "openfl/display3D/Program3D.hx",
lineNumber: 922,
className: "openfl.display3D.Program3D",
methodName: "__uploadFromGLSL"
}))
},
__class__: cp
};
var fn = function (a) {
this.context = a;
this.isDirty = !0;
this.regDataPointer = new Xf(null, 0)
};
k["openfl.display3D.Uniform"] = fn;
fn.__name__ = "openfl.display3D.Uniform";
fn.prototype = {
name: null,
location: null,
type: null,
size: null,
regData: null,
regIndex: null,
regCount: null,
isDirty: null,
context: null,
regDataPointer: null,
flush: function () {
var a =
this.context.gl, b = 4 * this.regIndex;
switch (this.type) {
case 35664:
is.uniform2fv(a, this.location, this.regData.subarray(b, b + 2 * this.regCount));
break;
case 35665:
var c = this.location;
b = this.regData.subarray(b, b + 3 * this.regCount);
var d = null;
null != d ? a.uniform3fv(c, b, d, null) : a.uniform3fv(c, b);
break;
case 35666:
c = this.location;
b = this.regData.subarray(b, b + 4 * this.regCount);
d = null;
null != d ? a.uniform4fv(c, b, d, null) : a.uniform4fv(c, b);
break;
case 35674:
fc.uniformMatrix2fv(a, this.location, !1, this.regData.subarray(b, b + 4 *
this.size));
break;
case 35675:
fc.uniformMatrix3fv(a, this.location, !1, this.regData.subarray(b, b + 9 * this.size));
break;
case 35676:
fc.uniformMatrix4fv(a, this.location, !1, this.regData.subarray(b, b + 16 * this.size));
break;
default:
c = this.location, b = this.regData.subarray(b, b + 4 * this.regCount), d = null, null != d ? a.uniform4fv(c, b, d, null) : a.uniform4fv(c, b)
}
},
__getUniformRegisters: function (a, b) {
return this.regData.subarray(a, a + b)
},
__class__: fn
};
var dk = function (a) {
this.__uniforms = a;
this.__uniforms.sort(function (a, b) {
return V.compare(a.regIndex,
b.regIndex)
});
var b = 0;
a = 0;
for (var c = this.__uniforms; a < c.length;) {
var d = c[a];
++a;
d.regIndex + d.regCount > b && (b = d.regIndex + d.regCount)
}
this.__registerLookup = Eb.toObjectVector(null, b);
a = 0;
for (c = this.__uniforms; a < c.length;) {
d = c[a];
++a;
b = 0;
for (var e = d.regCount; b < e;) {
var g = b++;
this.__registerLookup.set(d.regIndex + g, d)
}
}
this.__anyDirty = this.__allDirty = !0
};
k["openfl.display3D.UniformMap"] = dk;
dk.__name__ = "openfl.display3D.UniformMap";
dk.prototype = {
__allDirty: null, __anyDirty: null, __registerLookup: null, __uniforms: null,
flush: function () {
if (this.__anyDirty) {
for (var a = 0, b = this.__uniforms; a < b.length;) {
var c = b[a];
++a;
if (this.__allDirty || c.isDirty) c.flush(), c.isDirty = !1
}
this.__anyDirty = this.__allDirty = !1
}
}, markAllDirty: function () {
this.__anyDirty = this.__allDirty = !0
}, markDirty: function (a, b) {
if (!this.__allDirty) for (b = a + b, b > this.__registerLookup.get_length() && (b = this.__registerLookup.get_length()); a < b;) {
var c = this.__registerLookup.get(a);
null != c ? (this.__anyDirty = c.isDirty = !0, a = c.regIndex + c.regCount) : ++a
}
}, __class__: dk
};
var dp =
function (a, b, c, d) {
this.__context = a;
this.__numVertices = b;
this.__vertexSize = c;
a = this.__context.gl;
this.__id = a.createBuffer();
this.__stride = 4 * this.__vertexSize;
this.__usage = 0 == Pr.fromString(d) ? a.DYNAMIC_DRAW : a.STATIC_DRAW
};
k["openfl.display3D.VertexBuffer3D"] = dp;
dp.__name__ = "openfl.display3D.VertexBuffer3D";
dp.prototype = {
__context: null,
__data: null,
__id: null,
__memoryUsage: null,
__numVertices: null,
__stride: null,
__tempFloat32Array: null,
__usage: null,
__vertexSize: null,
dispose: function () {
this.__context.gl.deleteBuffer(this.__id)
},
uploadFromByteArray: function (a, b, c, d) {
b += c * this.__stride;
d *= this.__vertexSize;
a = Fb.toArrayBuffer(a);
null == b && (b = 0);
a = null != a ? null == d ? new Float32Array(a, b) : new Float32Array(a, b, d) : null;
this.uploadFromTypedArray($g.toArrayBufferView(a))
},
uploadFromTypedArray: function (a, b) {
null != a && (b = this.__context.gl, this.__context.__bindGLArrayBuffer(this.__id), fc.bufferData(b, b.ARRAY_BUFFER, a, this.__usage))
},
uploadFromVector: function (a, b, c) {
if (null != a) {
b *= this.__vertexSize;
var d = c * this.__vertexSize;
c = b + d;
var e = this.__tempFloat32Array;
if (null == this.__tempFloat32Array || this.__tempFloat32Array.length < d) this.__tempFloat32Array = null != d ? new Float32Array(d) : null, null != e && this.__tempFloat32Array.set(e);
for (d = b; d < c;) e = d++, this.__tempFloat32Array[e - b] = a.get(e);
this.uploadFromTypedArray($g.toArrayBufferView(this.__tempFloat32Array))
}
},
__class__: dp
};
var Je = function () {
};
k["openfl.display3D._internal.AGALConverter"] = Je;
Je.__name__ = "openfl.display3D._internal.AGALConverter";
Je.prefixFromType = function (a, b) {
switch (a) {
case 0:
return "va";
case 1:
return b ==
Ig.VERTEX ? "vc" : "fc";
case 2:
return b == Ig.VERTEX ? "vt" : "ft";
case 3:
return "output_";
case 4:
return "v";
case 5:
return "sampler";
default:
throw I.thrown(new pd("Invalid data!"));
}
};
Je.readUInt64 = function (a) {
var b = a.readInt();
a = a.readInt();
return new db(a, b)
};
Je.convertToGLSL = function (a, b) {
a.position = 0;
a.__endian = 1;
var c = a.readByte() & 255;
if (176 == c) return a.readUTF();
if (160 != c) throw I.thrown(new pd("Magic value must be 0xA0, may not be AGAL"));
var d = a.readInt();
if (1 != d) throw I.thrown(new pd("Version must be 1"));
if (161 != (a.readByte() & 255)) throw I.thrown(new pd("Shader type ID must be 0xA1"));
c = 0 == (a.readByte() & 255) ? Ig.VERTEX : Ig.FRAGMENT;
for (var e = new gn, g = ""; ;) {
d = a.position;
if (!Ba.gt(Fb.get_length(a), d)) break;
var f = a.readInt();
d = a.readUnsignedInt();
var h = Je.readUInt64(a), p = Je.readUInt64(a);
d = Zi.parse(d, c);
h = hi.parse(h, c, d.mask);
var m = hi.parse(p, c, d.mask);
g += "\t";
switch (f) {
case 0:
g += z.string(d.toGLSL() + " = " + h.toGLSL() + "; // mov");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
break;
case 1:
g += z.string(d.toGLSL() +
" = " + h.toGLSL() + " + " + m.toGLSL() + "; // add");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
e.addSR(m, qa.VECTOR_4);
break;
case 2:
g += z.string(d.toGLSL() + " = " + h.toGLSL() + " - " + m.toGLSL() + "; // sub");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
e.addSR(m, qa.VECTOR_4);
break;
case 3:
g += z.string(d.toGLSL() + " = " + h.toGLSL() + " * " + m.toGLSL() + "; // mul");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
e.addSR(m, qa.VECTOR_4);
break;
case 4:
g += z.string(d.toGLSL() + " = " + h.toGLSL() + " / " + m.toGLSL() + "; // div");
e.addDR(d,
qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
e.addSR(m, qa.VECTOR_4);
break;
case 5:
g = -1 < h.toGLSL().indexOf(".") ? g + z.string(d.toGLSL() + " = 1.0 / " + h.toGLSL() + "; // rcp") : g + z.string(d.toGLSL() + " = vec4(1) / " + h.toGLSL() + "; // rcp");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
break;
case 6:
g += z.string(d.toGLSL() + " = min(" + h.toGLSL() + ", " + m.toGLSL() + "); // min");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
e.addSR(m, qa.VECTOR_4);
break;
case 7:
g += z.string(d.toGLSL() + " = max(" + h.toGLSL() + ", " + m.toGLSL() + "); // max");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
e.addSR(m, qa.VECTOR_4);
break;
case 8:
g += z.string(d.toGLSL() + " = fract(" + h.toGLSL() + "); // frc");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
break;
case 9:
g += z.string(d.toGLSL() + " = sqrt(" + h.toGLSL() + "); // sqrt");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
break;
case 10:
g += z.string(d.toGLSL() + " = inversesqrt(" + h.toGLSL() + "); // rsq");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
break;
case 11:
g += z.string(d.toGLSL() + " = pow(" + h.toGLSL() + ", " + m.toGLSL() +
"); // pow");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
e.addSR(m, qa.VECTOR_4);
break;
case 12:
g += z.string(d.toGLSL() + " = log2(" + h.toGLSL() + "); // log");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
break;
case 13:
g += z.string(d.toGLSL() + " = exp2(" + h.toGLSL() + "); // exp");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
break;
case 14:
g += z.string(d.toGLSL() + " = normalize(" + h.toGLSL() + "); // normalize");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
break;
case 15:
g += z.string(d.toGLSL() + " = sin(" + h.toGLSL() +
"); // sin");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
break;
case 16:
g += z.string(d.toGLSL() + " = cos(" + h.toGLSL() + "); // cos");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
break;
case 17:
h.sourceMask = m.sourceMask = 7;
g += z.string(d.toGLSL() + " = cross(vec3(" + h.toGLSL() + "), vec3(" + m.toGLSL() + ")); // crs");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
e.addSR(m, qa.VECTOR_4);
break;
case 18:
h.sourceMask = m.sourceMask = 7;
g += z.string(d.toGLSL() + " = vec4(dot(vec3(" + h.toGLSL() + "), vec3(" + m.toGLSL() + ")))" + d.getWriteMask() +
"; // dp3");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
e.addSR(m, qa.VECTOR_4);
break;
case 19:
h.sourceMask = m.sourceMask = 15;
g += z.string(d.toGLSL() + " = vec4(dot(vec4(" + h.toGLSL() + "), vec4(" + m.toGLSL() + ")))" + d.getWriteMask() + "; // dp4");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
e.addSR(m, qa.VECTOR_4);
break;
case 20:
g += z.string(d.toGLSL() + " = abs(" + h.toGLSL() + "); // abs");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
break;
case 21:
g += z.string(d.toGLSL() + " = -" + h.toGLSL() + "; // neg");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
break;
case 22:
g += z.string(d.toGLSL() + " = clamp(" + h.toGLSL() + ", 0.0, 1.0); // saturate");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
break;
case 23:
f = e.getRegisterUsage(m);
f != qa.VECTOR_4 && f != qa.VECTOR_4_ARRAY ? (g += z.string(d.toGLSL() + " = " + h.toGLSL() + " * mat3(" + m.toGLSL(!1) + "); // m33"), e.addDR(d, qa.VECTOR_4), e.addSR(h, qa.VECTOR_4), e.addSR(m, qa.MATRIX_4_4)) : (h.sourceMask = m.sourceMask = 7, g += z.string(d.toGLSL() + " = vec3(dot(" + h.toGLSL(!0) + "," + m.toGLSL(!0, 0) + "), dot(" + h.toGLSL(!0) +
"," + m.toGLSL(!0, 1) + "),dot(" + h.toGLSL(!0) + "," + m.toGLSL(!0, 2) + ")); // m33"), e.addDR(d, qa.VECTOR_4), e.addSR(h, qa.VECTOR_4), e.addSR(m, qa.VECTOR_4, 0), e.addSR(m, qa.VECTOR_4, 1), e.addSR(m, qa.VECTOR_4, 2));
break;
case 24:
f = e.getRegisterUsage(m);
f != qa.VECTOR_4 && f != qa.VECTOR_4_ARRAY ? (g += z.string(d.toGLSL() + " = " + h.toGLSL() + " * " + m.toGLSL(!1) + "; // m44"), e.addDR(d, qa.VECTOR_4), e.addSR(h, qa.VECTOR_4), e.addSR(m, qa.MATRIX_4_4)) : (h.sourceMask = m.sourceMask = 15, g += z.string(d.toGLSL() + " = vec4(dot(" + h.toGLSL(!0) + "," + m.toGLSL(!0,
0) + "), dot(" + h.toGLSL(!0) + "," + m.toGLSL(!0, 1) + "), dot(" + h.toGLSL(!0) + "," + m.toGLSL(!0, 2) + "), dot(" + h.toGLSL(!0) + "," + m.toGLSL(!0, 3) + ")); // m44"), e.addDR(d, qa.VECTOR_4), e.addSR(h, qa.VECTOR_4), e.addSR(m, qa.VECTOR_4, 0), e.addSR(m, qa.VECTOR_4, 1), e.addSR(m, qa.VECTOR_4, 2), e.addSR(m, qa.VECTOR_4, 3));
break;
case 25:
d.mask &= 7;
f = e.getRegisterUsage(m);
f != qa.VECTOR_4 && f != qa.VECTOR_4_ARRAY ? (g += z.string(d.toGLSL() + " = " + h.toGLSL() + " * " + m.toGLSL(!1) + "; // m34"), e.addDR(d, qa.VECTOR_4), e.addSR(h, qa.VECTOR_4), e.addSR(m,
qa.MATRIX_4_4)) : (h.sourceMask = m.sourceMask = 15, g += z.string(d.toGLSL() + " = vec3(dot(" + h.toGLSL(!0) + "," + m.toGLSL(!0, 0) + "), dot(" + h.toGLSL(!0) + "," + m.toGLSL(!0, 1) + "),dot(" + h.toGLSL(!0) + "," + m.toGLSL(!0, 2) + ")); // m34"), e.addDR(d, qa.VECTOR_4), e.addSR(h, qa.VECTOR_4), e.addSR(m, qa.VECTOR_4, 0), e.addSR(m, qa.VECTOR_4, 1), e.addSR(m, qa.VECTOR_4, 2));
break;
case 39:
h.sourceMask = 15;
g += z.string("if (any(lessThan(" + h.toGLSL() + ", vec4(0)))) discard;");
e.addSR(h, qa.VECTOR_4);
break;
case 40:
m = $i.parse(p, c);
switch (m.d) {
case 0:
2 ==
m.t ? (h.sourceMask = 3, e.addSaR(m, qa.SAMPLER_2D_ALPHA), g += z.string("if (" + m.toGLSL() + "_alphaEnabled) {\n"), g += z.string("\t\t" + d.toGLSL() + " = vec4(texture2D(" + m.toGLSL() + ", " + h.toGLSL() + ").xyz, texture2D(" + m.toGLSL() + "_alpha, " + h.toGLSL() + ").x); // tex + alpha\n"), g += "\t} else {\n", g += z.string("\t\t" + d.toGLSL() + " = texture2D(" + m.toGLSL() + ", " + h.toGLSL() + "); // tex\n"), g += "\t}") : (h.sourceMask = 3, e.addSaR(m, qa.SAMPLER_2D), g += z.string(d.toGLSL() + " = texture2D(" + m.toGLSL() + ", " + h.toGLSL() + "); // tex"));
break;
case 1:
2 == m.t ? (h.sourceMask = 7, e.addSaR(m, qa.SAMPLER_CUBE_ALPHA), g += z.string("if (" + m.toGLSL() + "_alphaEnabled) {\n"), g += z.string("\t\t" + d.toGLSL() + " = vec4(textureCube(" + m.toGLSL() + ", " + h.toGLSL() + ").xyz, textureCube(" + m.toGLSL() + "_alpha, " + h.toGLSL() + ").x); // tex + alpha\n"), g += "\t} else {\n", g += z.string("\t\t" + d.toGLSL() + " = textureCube(" + m.toGLSL() + ", " + h.toGLSL() + "); // tex"), g += "\t}") : (h.sourceMask = 7, g += z.string(d.toGLSL() + " = textureCube(" + m.toGLSL() + ", " + h.toGLSL() + "); // tex"), e.addSaR(m,
qa.SAMPLER_CUBE))
}
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
null != b && (b[m.n] = m.toSamplerState());
break;
case 41:
h.sourceMask = m.sourceMask = 15;
g += z.string(d.toGLSL() + " = vec4(greaterThanEqual(" + h.toGLSL() + ", " + m.toGLSL() + "))" + d.getWriteMask() + "; // ste");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
e.addSR(m, qa.VECTOR_4);
break;
case 42:
h.sourceMask = m.sourceMask = 15;
g += z.string(d.toGLSL() + " = vec4(lessThan(" + h.toGLSL() + ", " + m.toGLSL() + "))" + d.getWriteMask() + "; // slt");
e.addDR(d, qa.VECTOR_4);
e.addSR(h,
qa.VECTOR_4);
e.addSR(m, qa.VECTOR_4);
break;
case 44:
h.sourceMask = m.sourceMask = 15;
g += z.string(d.toGLSL() + " = vec4(equal(" + h.toGLSL() + ", " + m.toGLSL() + "))" + d.getWriteMask() + "; // seq");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
e.addSR(m, qa.VECTOR_4);
break;
case 45:
h.sourceMask = m.sourceMask = 15;
g += z.string(d.toGLSL() + " = vec4(notEqual(" + h.toGLSL() + ", " + m.toGLSL() + "))" + d.getWriteMask() + "; // sne");
e.addDR(d, qa.VECTOR_4);
e.addSR(h, qa.VECTOR_4);
e.addSR(m, qa.VECTOR_4);
break;
default:
throw I.thrown(new pd("Opcode " +
f));
}
g += "\n"
}
null == Je.limitedProfile && (d = l.context.getParameter(7938), Je.limitedProfile = -1 < d.indexOf("OpenGL ES") || -1 < d.indexOf("WebGL"));
a = "" + z.string("// AGAL " + (c == Ig.VERTEX ? "vertex" : "fragment") + " shader\n");
a = Je.limitedProfile ? a + "#version 100\n#ifdef GL_FRAGMENT_PRECISION_HIGH\nprecision highp float;\n#else\nprecision mediump float;\n#endif\n" : a + "#version 120\n";
a += z.string(e.toGLSL(!1));
c == Ig.VERTEX && (a += "uniform vec4 vcPositionScale;\n");
a = a + "void main() {\n" + z.string(e.toGLSL(!0));
a += z.string(g);
c == Ig.VERTEX && (a += "\tgl_Position *= vcPositionScale;\n");
return a + "}\n"
};
var Zi = function () {
};
k["openfl.display3D._internal._AGALConverter.DestRegister"] = Zi;
Zi.__name__ = "openfl.display3D._internal._AGALConverter.DestRegister";
Zi.parse = function (a, b) {
var c = new Zi;
c.programType = b;
c.type = a >>> 24 & 15;
c.mask = a >>> 16 & 15;
c.n = a & 65535;
return c
};
Zi.prototype = {
mask: null, n: null, programType: null, type: null, getWriteMask: function () {
var a = ".";
0 != (this.mask & 1) && (a += "x");
0 != (this.mask & 2) && (a += "y");
0 != (this.mask & 4) && (a +=
"z");
0 != (this.mask & 8) && (a += "w");
return a
}, toGLSL: function (a) {
null == a && (a = !0);
var b = 3 == this.type ? this.programType == Ig.VERTEX ? "gl_Position" : "gl_FragColor" : Je.prefixFromType(this.type, this.programType) + this.n;
a && 15 != this.mask && (b += this.getWriteMask());
return b
}, __class__: Zi
};
var Ig = A["openfl.display3D._internal._AGALConverter.ProgramType"] = {
__ename__: "openfl.display3D._internal._AGALConverter.ProgramType",
__constructs__: null,
VERTEX: {
_hx_name: "VERTEX", _hx_index: 0, __enum__: "openfl.display3D._internal._AGALConverter.ProgramType",
toString: t
},
FRAGMENT: {
_hx_name: "FRAGMENT",
_hx_index: 1,
__enum__: "openfl.display3D._internal._AGALConverter.ProgramType",
toString: t
}
};
Ig.__constructs__ = [Ig.VERTEX, Ig.FRAGMENT];
var gn = function () {
this.mEntries = []
};
k["openfl.display3D._internal.RegisterMap"] = gn;
gn.__name__ = "openfl.display3D._internal.RegisterMap";
gn.prototype = {
mEntries: null, add: function (a, b, c, d) {
for (var e = 0, g = this.mEntries; e < g.length;) {
var f = g[e];
++e;
if (f.type == a && f.name == b && f.number == c) {
if (f.usage != d) throw I.thrown(new pd("Cannot use register in multiple ways yet (mat4/vec4)"));
return
}
}
f = new ep;
f.type = a;
f.name = b;
f.number = c;
f.usage = d;
this.mEntries.push(f)
}, addDR: function (a, b) {
this.add(a.type, a.toGLSL(!1), a.n, b)
}, addSaR: function (a, b) {
this.add(a.type, a.toGLSL(), a.n, b)
}, addSR: function (a, b, c) {
null == c && (c = 0);
0 != a.d ? (this.add(a.itype, Je.prefixFromType(a.itype, a.programType) + a.n, a.n, qa.VECTOR_4), this.add(a.type, Je.prefixFromType(a.type, a.programType) + a.o, a.o, qa.VECTOR_4_ARRAY)) : this.add(a.type, a.toGLSL(!1, c), a.n + c, b)
}, getRegisterUsage: function (a) {
return 0 != a.d ? qa.VECTOR_4_ARRAY :
this.getUsage(a.type, a.toGLSL(!1), a.n)
}, getUsage: function (a, b, c) {
for (var d = 0, e = this.mEntries; d < e.length;) {
var g = e[d];
++d;
if (g.type == a && g.name == b && g.number == c) return g.usage
}
return qa.UNUSED
}, toGLSL: function (a) {
this.mEntries.sort(function (a, b) {
return a.number - b.number
});
this.mEntries.sort(function (a, b) {
return w.__cast(a.type, Ia) - w.__cast(b.type, Ia)
});
for (var b = "", c = 0, d = this.mEntries.length; c < d;) {
var e = c++;
e = this.mEntries[e];
if (!(a && 2 != e.type || !a && 2 == e.type) && 3 != e.type) {
switch (e.type) {
case 0:
b += "attribute ";
break;
case 1:
b += "uniform ";
break;
case 2:
b += "\t";
break;
case 3:
break;
case 4:
b += "varying ";
break;
case 5:
b += "uniform ";
break;
default:
throw I.thrown(new pd);
}
switch (e.usage._hx_index) {
case 0:
Qa.info("Missing switch patten: RegisterUsage.UNUSED", {
fileName: "openfl/display3D/_internal/AGALConverter.hx",
lineNumber: 750,
className: "openfl.display3D._internal.RegisterMap",
methodName: "toGLSL"
});
break;
case 1:
b += "vec4 ";
break;
case 2:
b += "mat4 ";
break;
case 3:
b += "sampler2D ";
break;
case 5:
b += "samplerCube ";
break;
case 7:
b +=
"vec4 "
}
e.usage == qa.SAMPLER_2D_ALPHA ? (b += "sampler2D ", b += z.string(e.name), b += ";\n", b += "uniform ", b += "sampler2D ", b += z.string(e.name + "_alpha"), b += ";\n", b += "uniform ", b += "bool ", b += z.string(e.name + "_alphaEnabled")) : e.usage == qa.SAMPLER_CUBE_ALPHA ? (b += "samplerCube ", b += z.string(e.name), b += ";\n", b += "uniform ", b += "samplerCube ", b += z.string(e.name + "_alpha"), b += ";\n", b += "uniform ", b += "bool ", b += z.string(e.name + "_alphaEnabled")) : b = e.usage == qa.VECTOR_4_ARRAY ? b + z.string(e.name + "[128]") : b + z.string(e.name);
b +=
";\n"
}
}
return b
}, __class__: gn
};
var ep = function () {
};
k["openfl.display3D._internal._AGALConverter.RegisterMapEntry"] = ep;
ep.__name__ = "openfl.display3D._internal._AGALConverter.RegisterMapEntry";
ep.prototype = {name: null, number: null, type: null, usage: null, __class__: ep};
var qa = A["openfl.display3D._internal._AGALConverter.RegisterUsage"] = {
__ename__: "openfl.display3D._internal._AGALConverter.RegisterUsage",
__constructs__: null,
UNUSED: {
_hx_name: "UNUSED",
_hx_index: 0,
__enum__: "openfl.display3D._internal._AGALConverter.RegisterUsage",
toString: t
},
VECTOR_4: {
_hx_name: "VECTOR_4",
_hx_index: 1,
__enum__: "openfl.display3D._internal._AGALConverter.RegisterUsage",
toString: t
},
MATRIX_4_4: {
_hx_name: "MATRIX_4_4",
_hx_index: 2,
__enum__: "openfl.display3D._internal._AGALConverter.RegisterUsage",
toString: t
},
SAMPLER_2D: {
_hx_name: "SAMPLER_2D",
_hx_index: 3,
__enum__: "openfl.display3D._internal._AGALConverter.RegisterUsage",
toString: t
},
SAMPLER_2D_ALPHA: {
_hx_name: "SAMPLER_2D_ALPHA",
_hx_index: 4,
__enum__: "openfl.display3D._internal._AGALConverter.RegisterUsage",
toString: t
},
SAMPLER_CUBE: {
_hx_name: "SAMPLER_CUBE",
_hx_index: 5,
__enum__: "openfl.display3D._internal._AGALConverter.RegisterUsage",
toString: t
},
SAMPLER_CUBE_ALPHA: {
_hx_name: "SAMPLER_CUBE_ALPHA",
_hx_index: 6,
__enum__: "openfl.display3D._internal._AGALConverter.RegisterUsage",
toString: t
},
VECTOR_4_ARRAY: {
_hx_name: "VECTOR_4_ARRAY",
_hx_index: 7,
__enum__: "openfl.display3D._internal._AGALConverter.RegisterUsage",
toString: t
}
};
qa.__constructs__ = [qa.UNUSED, qa.VECTOR_4, qa.MATRIX_4_4, qa.SAMPLER_2D, qa.SAMPLER_2D_ALPHA,
qa.SAMPLER_CUBE, qa.SAMPLER_CUBE_ALPHA, qa.VECTOR_4_ARRAY];
var $i = function () {
};
k["openfl.display3D._internal._AGALConverter.SamplerRegister"] = $i;
$i.__name__ = "openfl.display3D._internal._AGALConverter.SamplerRegister";
$i.parse = function (a, b) {
var c = new $i;
c.programType = b;
b = 60;
b = 0 == b ? new db(a.high, a.low) : 32 > b ? new db(a.high >> b, a.high << 32 - b | a.low >>> b) : new db(a.high >> 31, a.high >> b - 32);
b = b.low & 15;
c.f = b;
b = 56;
b = 0 == b ? new db(a.high, a.low) : 32 > b ? new db(a.high >> b, a.high << 32 - b | a.low >>> b) : new db(a.high >> 31, a.high >> b -
32);
b = b.low & 15;
c.m = b;
b = 52;
b = 0 == b ? new db(a.high, a.low) : 32 > b ? new db(a.high >> b, a.high << 32 - b | a.low >>> b) : new db(a.high >> 31, a.high >> b - 32);
b = b.low & 15;
c.w = b;
b = 48;
b = 0 == b ? new db(a.high, a.low) : 32 > b ? new db(a.high >> b, a.high << 32 - b | a.low >>> b) : new db(a.high >> 31, a.high >> b - 32);
b = b.low & 15;
c.s = b;
b = 44;
b = 0 == b ? new db(a.high, a.low) : 32 > b ? new db(a.high >> b, a.high << 32 - b | a.low >>> b) : new db(a.high >> 31, a.high >> b - 32);
b = b.low & 15;
c.d = b;
b = 40;
b = 0 == b ? new db(a.high, a.low) : 32 > b ? new db(a.high >> b, a.high << 32 - b | a.low >>> b) : new db(a.high >> 31,
a.high >> b - 32);
b = b.low & 15;
c.t = b;
b = 32;
b = 0 == b ? new db(a.high, a.low) : 32 > b ? new db(a.high >> b, a.high << 32 - b | a.low >>> b) : new db(a.high >> 31, a.high >> b - 32);
b = b.low & 15;
c.type = b;
b = 16;
b = 0 == b ? new db(a.high, a.low) : 32 > b ? new db(a.high >> b, a.high << 32 - b | a.low >>> b) : new db(a.high >> 31, a.high >> b - 32);
b = b.low & 255;
c.b = b;
b = a.low & 65535;
c.n = b;
return c
};
$i.prototype = {
b: null,
d: null,
f: null,
m: null,
n: null,
programType: null,
s: null,
t: null,
type: null,
w: null,
toGLSL: function () {
return Je.prefixFromType(this.type, this.programType) + this.n
},
toSamplerState: function () {
switch (this.f) {
case 0:
var a =
5;
break;
case 1:
a = 4;
break;
default:
throw I.thrown(new pd);
}
switch (this.m) {
case 0:
var b = 2;
break;
case 1:
b = 1;
break;
case 2:
b = 0;
break;
default:
throw I.thrown(new pd);
}
switch (this.w) {
case 0:
var c = 0;
break;
case 1:
c = 2;
break;
default:
throw I.thrown(new pd);
}
return new Wg(c, a, b, (this.b << 24 >> 24) / 8, 4 == (this.s & 4), 1 == (this.s & 1), 2 == this.t)
},
__class__: $i
};
var hi = function () {
};
k["openfl.display3D._internal._AGALConverter.SourceRegister"] = hi;
hi.__name__ = "openfl.display3D._internal._AGALConverter.SourceRegister";
hi.parse =
function (a, b, c) {
var d = new hi;
d.programType = b;
b = 63;
b = 0 == b ? new db(a.high, a.low) : 32 > b ? new db(a.high >> b, a.high << 32 - b | a.low >>> b) : new db(a.high >> 31, a.high >> b - 32);
b = b.low & 1;
d.d = b;
b = 48;
b = 0 == b ? new db(a.high, a.low) : 32 > b ? new db(a.high >> b, a.high << 32 - b | a.low >>> b) : new db(a.high >> 31, a.high >> b - 32);
b = b.low & 3;
d.q = b;
b = 40;
b = 0 == b ? new db(a.high, a.low) : 32 > b ? new db(a.high >> b, a.high << 32 - b | a.low >>> b) : new db(a.high >> 31, a.high >> b - 32);
b = b.low & 15;
d.itype = b;
b = 32;
b = 0 == b ? new db(a.high, a.low) : 32 > b ? new db(a.high >> b, a.high << 32 - b | a.low >>>
b) : new db(a.high >> 31, a.high >> b - 32);
b = b.low & 15;
d.type = b;
b = 24;
b = 0 == b ? new db(a.high, a.low) : 32 > b ? new db(a.high >> b, a.high << 32 - b | a.low >>> b) : new db(a.high >> 31, a.high >> b - 32);
b = b.low & 255;
d.s = b;
b = 16;
b = 0 == b ? new db(a.high, a.low) : 32 > b ? new db(a.high >> b, a.high << 32 - b | a.low >>> b) : new db(a.high >> 31, a.high >> b - 32);
b = b.low & 255;
d.o = b;
b = a.low & 65535;
d.n = b;
d.sourceMask = c;
return d
};
hi.prototype = {
d: null,
itype: null,
n: null,
o: null,
programType: null,
q: null,
s: null,
sourceMask: null,
type: null,
toGLSL: function (a, b) {
null == b && (b = 0);
null ==
a && (a = !0);
if (3 == this.type) return this.programType == Ig.VERTEX ? "gl_Position" : "gl_FragColor";
var c = 228 == this.s && 15 == this.sourceMask, d = "";
if (5 != this.type && !c) {
if (0 != (this.sourceMask & 1)) switch (this.s & 3) {
case 0:
d += "x";
break;
case 1:
d += "y";
break;
case 2:
d += "z";
break;
case 3:
d += "w"
}
if (0 != (this.sourceMask & 2)) switch (this.s >> 2 & 3) {
case 0:
d += "x";
break;
case 1:
d += "y";
break;
case 2:
d += "z";
break;
case 3:
d += "w"
}
if (0 != (this.sourceMask & 4)) switch (this.s >> 4 & 3) {
case 0:
d += "x";
break;
case 1:
d += "y";
break;
case 2:
d += "z";
break;
case 3:
d +=
"w"
}
if (0 != (this.sourceMask & 8)) switch (this.s >> 6 & 3) {
case 0:
d += "x";
break;
case 1:
d += "y";
break;
case 2:
d += "z";
break;
case 3:
d += "w"
}
}
c = Je.prefixFromType(this.type, this.programType);
if (0 == this.d) c += this.n + b; else {
c += this.o;
var e = "";
switch (this.q) {
case 0:
e = "x";
break;
case 1:
e = "y";
break;
case 2:
e = "z";
break;
case 3:
e = "w"
}
e = Je.prefixFromType(this.itype, this.programType) + this.n + "." + e;
c += "[ int(" + e + ") +" + b + "]"
}
a && "" != d && (c += "." + d);
return c
},
__class__: hi
};
var ek = function (a, b) {
this.version = 0;
a.position = b;
var c = a.readUTFBytes(3);
a.position = b;
if ("ATF" != c) throw I.thrown(new pd("ATF signature not found"));
255 == a.b[b + 6] ? (this.version = a.b[b + 7], a.position = b + 8, c = this.__readUInt32(a)) : (this.version = 0, a.position = b + 3, c = this.__readUInt24(a));
if (Ba.gt(w.__cast(b + c, Ia), Fb.get_length(a))) throw I.thrown(new pd("ATF length exceeds byte array length"));
this.data = a
};
k["openfl.display3D._internal.ATFReader"] = ek;
ek.__name__ = "openfl.display3D._internal.ATFReader";
ek.prototype = {
atfFormat: null, cubeMap: null, data: null, height: null, mipCount: null, version: null,
width: null, readHeader: function (a, b, c) {
var d = this.data.readUnsignedByte(), e = d >>> 7;
if (!c && 0 != e) throw I.thrown(new pd("ATF Cube map not expected"));
if (c && 1 != e) throw I.thrown(new pd("ATF Cube map expected"));
this.cubeMap = c;
this.atfFormat = d & 127;
3 != this.atfFormat && 5 != this.atfFormat && Qa.warn("Only ATF block compressed textures without JPEG-XR+LZMA are supported", {
fileName: "openfl/display3D/_internal/ATFReader.hx",
lineNumber: 96,
className: "openfl.display3D._internal.ATFReader",
methodName: "readHeader"
});
this.width =
1 << this.data.readUnsignedByte();
this.height = 1 << this.data.readUnsignedByte();
if (this.width != a || this.height != b) throw I.thrown(new pd("ATF width and height dont match"));
this.mipCount = this.data.readUnsignedByte();
return 5 == this.atfFormat
}, readTextures: function (a) {
for (var b = 3 > this.version ? 3 : 4, c = 0, d = this.cubeMap ? 6 : 1; c < d;) for (var e = c++, g = 0, f = this.mipCount; g < f;) for (var h = g++, p = 0, m = b; p < m;) {
var l = p++,
n = 0 == this.version ? this.__readUInt24(this.data) : this.__readUInt32(this.data);
if (Ba.gt(this.data.position + n,
Fb.get_length(this.data))) throw I.thrown(new pd("Block length exceeds ATF file length"));
if (Ba.gt(n, 0)) {
var k = new lb(new ArrayBuffer(n)), t = this.data, q = Fb.fromBytes(k), w = 0, u = n;
null == u && (u = 0);
null == w && (w = 0);
t.readBytes(q, w, u);
a(e, h, l, this.width >> h, this.height >> h, n, k)
}
}
}, __readUInt24: function (a) {
var b = a.readUnsignedByte() << 16;
b |= a.readUnsignedByte() << 8;
return b |= a.readUnsignedByte()
}, __readUInt32: function (a) {
var b = a.readUnsignedByte() << 24;
b |= a.readUnsignedByte() << 16;
b |= a.readUnsignedByte() << 8;
return b |=
a.readUnsignedByte()
}, __class__: ek
};
var ak = function () {
this.backBufferEnableDepthAndStencil = !1;
this.blendDestinationAlphaFactor = 9;
this.blendSourceAlphaFactor = 2;
this.blendDestinationRGBFactor = 9;
this.blendSourceRGBFactor = 2;
this.colorMaskAlpha = this.colorMaskBlue = this.colorMaskGreen = this.colorMaskRed = !0;
this.culling = 3;
this.depthCompareMode = 4;
this.depthMask = !0;
this.samplerStates = [];
this.scissorRectangle = new ba;
this.stencilCompareMode = 0;
this.stencilPass = this.stencilFail = this.stencilDepthFail = 5;
this.stencilReadMask =
255;
this.stencilReferenceValue = 0;
this.stencilTriangleFace = 2;
this.stencilWriteMask = 255;
this.textures = [];
this.__frontFaceGLCCW = !0;
this.__glBlendEquation = 32774
};
k["openfl.display3D._internal.Context3DState"] = ak;
ak.__name__ = "openfl.display3D._internal.Context3DState";
ak.prototype = {
backBufferEnableDepthAndStencil: null,
blendDestinationAlphaFactor: null,
blendSourceAlphaFactor: null,
blendDestinationRGBFactor: null,
blendSourceRGBFactor: null,
colorMaskRed: null,
colorMaskGreen: null,
colorMaskBlue: null,
colorMaskAlpha: null,
culling: null,
depthCompareMode: null,
depthMask: null,
program: null,
renderToTexture: null,
renderToTextureAntiAlias: null,
renderToTextureDepthStencil: null,
renderToTextureSurfaceSelector: null,
samplerStates: null,
scissorEnabled: null,
scissorRectangle: null,
stencilCompareMode: null,
stencilDepthFail: null,
stencilFail: null,
stencilPass: null,
stencilReadMask: null,
stencilReferenceValue: null,
stencilTriangleFace: null,
stencilWriteMask: null,
textures: null,
shader: null,
__currentGLArrayBuffer: null,
__currentGLElementArrayBuffer: null,
__currentGLFramebuffer: null,
__currentGLTexture2D: null,
__currentGLTextureCubeMap: null,
__enableGLBlend: null,
__enableGLCullFace: null,
__enableGLDepthTest: null,
__enableGLScissorTest: null,
__enableGLStencilTest: null,
__frontFaceGLCCW: null,
__glBlendEquation: null,
__primaryGLFramebuffer: null,
__rttDepthGLRenderbuffer: null,
__rttGLFramebuffer: null,
__rttGLRenderbuffer: null,
__rttStencilGLRenderbuffer: null,
__class__: ak
};
var hc = function (a) {
jb.call(this);
this.__context = a;
var b = this.__context.gl;
this.__textureID = b.createTexture();
this.__textureContext = this.__context.__context;
if (null == hc.__supportsBGRA) {
hc.__textureInternalFormat = b.RGBA;
hc.__supportsBGRA = !1;
hc.__textureFormat = b.RGBA;
hc.__compressedFormats = new eb;
hc.__compressedFormatsAlpha = new eb;
a = b.getExtension("WEBGL_compressed_texture_s3tc");
var c = b.getExtension("WEBGL_compressed_texture_etc1");
b = b.getExtension("WEBKIT_WEBGL_compressed_texture_pvrtc");
if (null != a) {
var d = a.COMPRESSED_RGBA_S3TC_DXT1_EXT;
hc.__compressedFormats.h[0] = d;
d = a.COMPRESSED_RGBA_S3TC_DXT5_EXT;
hc.__compressedFormatsAlpha.h[0] =
d
}
null != c && (d = c.COMPRESSED_RGB_ETC1_WEBGL, hc.__compressedFormats.h[2] = d, d = c.COMPRESSED_RGB_ETC1_WEBGL, hc.__compressedFormatsAlpha.h[2] = d);
null != b && (d = b.COMPRESSED_RGB_PVRTC_4BPPV1_IMG, hc.__compressedFormats.h[1] = d, d = b.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG, hc.__compressedFormatsAlpha.h[1] = d)
}
this.__internalFormat = hc.__textureInternalFormat;
this.__format = hc.__textureFormat
};
k["openfl.display3D.textures.TextureBase"] = hc;
hc.__name__ = "openfl.display3D.textures.TextureBase";
hc.__super__ = jb;
hc.prototype = u(jb.prototype,
{
__alphaTexture: null,
__context: null,
__format: null,
__glDepthRenderbuffer: null,
__glFramebuffer: null,
__glStencilRenderbuffer: null,
__height: null,
__internalFormat: null,
__optimizeForRenderToTexture: null,
__samplerState: null,
__streamingLevels: null,
__textureContext: null,
__textureID: null,
__textureTarget: null,
__width: null,
dispose: function () {
var a = this.__context.gl;
null != this.__alphaTexture && (this.__alphaTexture.dispose(), this.__alphaTexture = null);
null != this.__textureID && (a.deleteTexture(this.__textureID), this.__textureID =
null);
null != this.__glFramebuffer && (a.deleteFramebuffer(this.__glFramebuffer), this.__glFramebuffer = null);
null != this.__glDepthRenderbuffer && (a.deleteRenderbuffer(this.__glDepthRenderbuffer), this.__glDepthRenderbuffer = null);
null != this.__glStencilRenderbuffer && (a.deleteRenderbuffer(this.__glStencilRenderbuffer), this.__glStencilRenderbuffer = null)
},
__getGLFramebuffer: function (a, b, c) {
b = this.__context.gl;
null == this.__glFramebuffer && (this.__glFramebuffer = b.createFramebuffer(), this.__context.__bindGLFramebuffer(this.__glFramebuffer),
b.framebufferTexture2D(b.FRAMEBUFFER, b.COLOR_ATTACHMENT0, b.TEXTURE_2D, this.__textureID, 0), this.__context.__enableErrorChecking && (c = b.checkFramebufferStatus(b.FRAMEBUFFER), c != b.FRAMEBUFFER_COMPLETE && Qa.warn("Error: Context3D.setRenderToTexture status:" + c + " width:" + this.__width + " height:" + this.__height, {
fileName: "openfl/display3D/textures/TextureBase.hx",
lineNumber: 201,
className: "openfl.display3D.textures.TextureBase",
methodName: "__getGLFramebuffer"
})));
a && null == this.__glDepthRenderbuffer && (this.__context.__bindGLFramebuffer(this.__glFramebuffer),
0 != cc.__glDepthStencil ? (this.__glStencilRenderbuffer = this.__glDepthRenderbuffer = b.createRenderbuffer(), b.bindRenderbuffer(b.RENDERBUFFER, this.__glDepthRenderbuffer), b.renderbufferStorage(b.RENDERBUFFER, cc.__glDepthStencil, this.__width, this.__height), b.framebufferRenderbuffer(b.FRAMEBUFFER, b.DEPTH_STENCIL_ATTACHMENT, b.RENDERBUFFER, this.__glDepthRenderbuffer)) : (this.__glDepthRenderbuffer = b.createRenderbuffer(), this.__glStencilRenderbuffer = b.createRenderbuffer(), b.bindRenderbuffer(b.RENDERBUFFER, this.__glDepthRenderbuffer),
b.renderbufferStorage(b.RENDERBUFFER, b.DEPTH_COMPONENT16, this.__width, this.__height), b.bindRenderbuffer(b.RENDERBUFFER, this.__glStencilRenderbuffer), b.renderbufferStorage(b.RENDERBUFFER, b.STENCIL_INDEX8, this.__width, this.__height), b.framebufferRenderbuffer(b.FRAMEBUFFER, b.DEPTH_ATTACHMENT, b.RENDERBUFFER, this.__glDepthRenderbuffer), b.framebufferRenderbuffer(b.FRAMEBUFFER, b.STENCIL_ATTACHMENT, b.RENDERBUFFER, this.__glStencilRenderbuffer)), this.__context.__enableErrorChecking && (c = b.checkFramebufferStatus(b.FRAMEBUFFER),
c != b.FRAMEBUFFER_COMPLETE && Qa.warn("Error: Context3D.setRenderToTexture status:" + c + " width:" + this.__width + " height:" + this.__height, {
fileName: "openfl/display3D/textures/TextureBase.hx",
lineNumber: 239,
className: "openfl.display3D.textures.TextureBase",
methodName: "__getGLFramebuffer"
})), b.bindRenderbuffer(b.RENDERBUFFER, null));
return this.__glFramebuffer
},
__getImage: function (a) {
var b = a.image;
if (!a.__isValid || null == b) return null;
va.sync(b, !1);
a = this.__context.gl;
b.type == De.DATA || b.get_premultiplied() ?
!b.get_premultiplied() && b.get_transparent() && (a.pixelStorei(a.UNPACK_PREMULTIPLY_ALPHA_WEBGL, 0), b = b.clone(), b.set_premultiplied(!0)) : a.pixelStorei(a.UNPACK_PREMULTIPLY_ALPHA_WEBGL, 1);
0 != b.get_format() && (b = b.clone(), b.set_format(0), b.buffer.premultiplied = !0);
return b
},
__getTexture: function () {
return this.__textureID
},
__setSamplerState: function (a) {
if (!a.equals(this.__samplerState)) {
var b = this.__context.gl;
this.__textureTarget == this.__context.gl.TEXTURE_CUBE_MAP ? this.__context.__bindGLTextureCubeMap(this.__textureID) :
this.__context.__bindGLTexture2D(this.__textureID);
var c;
switch (a.wrap) {
case 0:
var d = c = b.CLAMP_TO_EDGE;
break;
case 1:
c = b.CLAMP_TO_EDGE;
d = b.REPEAT;
break;
case 2:
d = c = b.REPEAT;
break;
case 3:
c = b.REPEAT;
d = b.CLAMP_TO_EDGE;
break;
default:
throw I.thrown(new id("wrap bad enum"));
}
var e = 5 == a.filter ? b.NEAREST : b.LINEAR;
switch (a.mipfilter) {
case 0:
var g = 5 == a.filter ? b.NEAREST_MIPMAP_LINEAR : b.LINEAR_MIPMAP_LINEAR;
break;
case 1:
g = 5 == a.filter ? b.NEAREST_MIPMAP_NEAREST : b.LINEAR_MIPMAP_NEAREST;
break;
case 2:
g = 5 == a.filter ? b.NEAREST :
b.LINEAR;
break;
default:
throw I.thrown(new id("mipfiter bad enum"));
}
b.texParameteri(this.__textureTarget, b.TEXTURE_MIN_FILTER, g);
b.texParameteri(this.__textureTarget, b.TEXTURE_MAG_FILTER, e);
b.texParameteri(this.__textureTarget, b.TEXTURE_WRAP_S, c);
b.texParameteri(this.__textureTarget, b.TEXTURE_WRAP_T, d);
null == this.__samplerState && (this.__samplerState = a.clone());
this.__samplerState.copyFrom(a);
return !0
}
return !1
},
__uploadFromImage: function (a) {
var b = this.__context.gl, c;
if (this.__textureTarget == b.TEXTURE_2D) {
if (1 ==
a.buffer.bitsPerPixel) var d = c = b.ALPHA; else c = hc.__textureInternalFormat, d = hc.__textureFormat;
this.__context.__bindGLTexture2D(this.__textureID);
a.type == De.DATA || a.get_premultiplied() ? !a.get_premultiplied() && a.get_transparent() && b.pixelStorei(b.UNPACK_PREMULTIPLY_ALPHA_WEBGL, 1) : b.pixelStorei(b.UNPACK_PREMULTIPLY_ALPHA_WEBGL, 1);
a.type == De.DATA ? fc.texImage2D(b, b.TEXTURE_2D, 0, c, a.buffer.width, a.buffer.height, 0, d, b.UNSIGNED_BYTE, a.get_data()) : fc.texImage2D(b, b.TEXTURE_2D, 0, c, d, b.UNSIGNED_BYTE, a.get_src());
this.__context.__bindGLTexture2D(null)
}
},
__class__: hc
});
var Yi = function (a, b, c, d, e) {
hc.call(this, a);
this.__width = this.__height = this.__size = b;
this.__optimizeForRenderToTexture = d;
this.__streamingLevels = e;
this.__textureTarget = this.__context.gl.TEXTURE_CUBE_MAP;
this.__uploadedSides = 0
};
k["openfl.display3D.textures.CubeTexture"] = Yi;
Yi.__name__ = "openfl.display3D.textures.CubeTexture";
Yi.__super__ = hc;
Yi.prototype = u(hc.prototype, {
__framebufferSurface: null,
__size: null,
__uploadedSides: null,
uploadCompressedTextureFromByteArray: function (a,
b, c) {
null == c && (c = !1);
var d = this;
c ? Ve.delay(function () {
d.__uploadCompressedTextureFromByteArray(a, b);
var c = new oa("textureReady");
d.dispatchEvent(c)
}, 1) : this.__uploadCompressedTextureFromByteArray(a, b)
},
uploadFromBitmapData: function (a, b, c, d) {
null == c && (c = 0);
if (null != a && (d = this.__size >> c, 0 != d && (a = this.__getImage(a), null != a))) if (0 == c && null != a.buffer && null == a.buffer.data && null != a.buffer.get_src()) {
var e = this.__context.gl;
d = this.__size >> c;
0 != d && (d = this.__sideToTarget(b), this.__context.__bindGLTextureCubeMap(this.__textureID),
fc.texImage2D(e, d, c, this.__internalFormat, this.__format, e.UNSIGNED_BYTE, a.buffer.get_src()), this.__context.__bindGLTextureCubeMap(null), this.__uploadedSides |= 1 << b)
} else this.uploadFromTypedArray(a.get_data(), b, c)
},
uploadFromByteArray: function (a, b, c, d) {
null == d && (d = 0);
0 == b ? this.uploadFromTypedArray(a.b, c, d) : (a = Fb.toArrayBuffer(a), null == b && (b = 0), b = null != a ? new Uint8Array(a, b) : null, this.uploadFromTypedArray(b, c, d))
},
uploadFromTypedArray: function (a, b, c) {
null == c && (c = 0);
if (null != a) {
var d = this.__context.gl,
e = this.__size >> c;
if (0 != e) {
var g = this.__sideToTarget(b);
this.__context.__bindGLTextureCubeMap(this.__textureID);
fc.texImage2D(d, g, c, this.__internalFormat, e, e, 0, this.__format, d.UNSIGNED_BYTE, a);
this.__context.__bindGLTextureCubeMap(null);
this.__uploadedSides |= 1 << b
}
}
},
__getGLFramebuffer: function (a, b, c) {
var d = this.__context.gl;
null == this.__glFramebuffer && (this.__glFramebuffer = d.createFramebuffer(), this.__framebufferSurface = -1);
if (this.__framebufferSurface != c && (this.__framebufferSurface = c, this.__context.__bindGLFramebuffer(this.__glFramebuffer),
d.framebufferTexture2D(d.FRAMEBUFFER, d.COLOR_ATTACHMENT0, d.TEXTURE_CUBE_MAP_POSITIVE_X + c, this.__textureID, 0), this.__context.__enableErrorChecking)) {
var e = d.checkFramebufferStatus(d.FRAMEBUFFER);
e != d.FRAMEBUFFER_COMPLETE && Qa.error("Error: Context3D.setRenderToTexture status:" + e + " width:" + this.__width + " height:" + this.__height, {
fileName: "openfl/display3D/textures/CubeTexture.hx",
lineNumber: 278,
className: "openfl.display3D.textures.CubeTexture",
methodName: "__getGLFramebuffer"
})
}
return hc.prototype.__getGLFramebuffer.call(this,
a, b, c)
},
__setSamplerState: function (a) {
if (hc.prototype.__setSamplerState.call(this, a)) {
var b = this.__context.gl;
2 == a.mipfilter || this.__samplerState.mipmapGenerated || (b.generateMipmap(b.TEXTURE_CUBE_MAP), this.__samplerState.mipmapGenerated = !0);
if (0 != cc.__glMaxTextureMaxAnisotropy) {
switch (a.filter) {
case 0:
a = 16;
break;
case 1:
a = 2;
break;
case 2:
a = 4;
break;
case 3:
a = 8;
break;
default:
a = 1
}
a > cc.__glMaxTextureMaxAnisotropy && (a = cc.__glMaxTextureMaxAnisotropy);
b.texParameterf(b.TEXTURE_CUBE_MAP, cc.__glTextureMaxAnisotropy,
a)
}
return !0
}
return !1
},
__sideToTarget: function (a) {
var b = this.__context.gl;
switch (a) {
case 0:
return b.TEXTURE_CUBE_MAP_POSITIVE_X;
case 1:
return b.TEXTURE_CUBE_MAP_NEGATIVE_X;
case 2:
return b.TEXTURE_CUBE_MAP_POSITIVE_Y;
case 3:
return b.TEXTURE_CUBE_MAP_NEGATIVE_Y;
case 4:
return b.TEXTURE_CUBE_MAP_POSITIVE_Z;
case 5:
return b.TEXTURE_CUBE_MAP_NEGATIVE_Z;
default:
throw I.thrown(new pd);
}
},
__uploadCompressedTextureFromByteArray: function (a, b) {
var c = this;
a = new ek(a, b);
var d = a.readHeader(this.__size, this.__size,
!0), e = this.__context.gl;
this.__context.__bindGLTextureCubeMap(this.__textureID);
var g = !1;
a.readTextures(function (a, b, f, h, r, m, p) {
var n = d ? hc.__compressedFormatsAlpha.h[f] : hc.__compressedFormats.h[f];
if (0 != n) if (g = !0, a = c.__sideToTarget(a), c.__format = n, c.__internalFormat = n, d && 2 == f) {
m = m / 2 | 0;
var l = f = null, k = null, v = null, t = p.b.buffer, q = 0;
null == q && (q = 0);
f = null != f ? new Uint8Array(f) : null != l ? new Uint8Array(l) : null != k ? new Uint8Array(k.__array) : null != v ? new Uint8Array(v) : null != t ? null == m ? new Uint8Array(t, q) : new Uint8Array(t,
q, m) : null;
fc.compressedTexImage2D(e, a, b, c.__internalFormat, h, r, 0, f);
var w = new Yi(c.__context, c.__size, 3, c.__optimizeForRenderToTexture, c.__streamingLevels);
w.__format = n;
w.__internalFormat = n;
c.__context.__bindGLTextureCubeMap(w.__textureID);
v = k = l = f = null;
t = p.b.buffer;
q = m;
null == q && (q = 0);
f = null != f ? new Uint8Array(f) : null != l ? new Uint8Array(l) : null != k ? new Uint8Array(k.__array) : null != v ? new Uint8Array(v) : null != t ? null == m ? new Uint8Array(t, q) : new Uint8Array(t, q, m) : null;
fc.compressedTexImage2D(e, a, b, w.__internalFormat,
h, r, 0, f);
c.__alphaTexture = w
} else v = k = l = f = null, t = p.b.buffer, q = 0, null == q && (q = 0), f = null != f ? new Uint8Array(f) : null != l ? new Uint8Array(l) : null != k ? new Uint8Array(k.__array) : null != v ? new Uint8Array(v) : null != t ? null == m ? new Uint8Array(t, q) : new Uint8Array(t, q, m) : null, fc.compressedTexImage2D(e, a, b, c.__internalFormat, h, r, 0, f)
});
if (!g) {
a = this.__size * this.__size * 4;
var f = b = null, h = null, p = null, m = null;
a = null != a ? new Uint8Array(a) : null != b ? new Uint8Array(b) : null != f ? new Uint8Array(f.__array) : null != h ? new Uint8Array(h) : null !=
p ? null == m ? new Uint8Array(p, 0) : new Uint8Array(p, 0, m) : null;
fc.texImage2D(e, this.__sideToTarget(0), 0, this.__internalFormat, this.__size, this.__size, 0, this.__format, e.UNSIGNED_BYTE, a);
a = this.__size * this.__size * 4;
m = p = h = f = b = null;
a = null != a ? new Uint8Array(a) : null != b ? new Uint8Array(b) : null != f ? new Uint8Array(f.__array) : null != h ? new Uint8Array(h) : null != p ? null == m ? new Uint8Array(p, 0) : new Uint8Array(p, 0, m) : null;
fc.texImage2D(e, this.__sideToTarget(1), 0, this.__internalFormat, this.__size, this.__size, 0, this.__format,
e.UNSIGNED_BYTE, a);
a = this.__size * this.__size * 4;
m = p = h = f = b = null;
a = null != a ? new Uint8Array(a) : null != b ? new Uint8Array(b) : null != f ? new Uint8Array(f.__array) : null != h ? new Uint8Array(h) : null != p ? null == m ? new Uint8Array(p, 0) : new Uint8Array(p, 0, m) : null;
fc.texImage2D(e, this.__sideToTarget(2), 0, this.__internalFormat, this.__size, this.__size, 0, this.__format, e.UNSIGNED_BYTE, a);
a = this.__size * this.__size * 4;
m = p = h = f = b = null;
a = null != a ? new Uint8Array(a) : null != b ? new Uint8Array(b) : null != f ? new Uint8Array(f.__array) : null != h ? new Uint8Array(h) :
null != p ? null == m ? new Uint8Array(p, 0) : new Uint8Array(p, 0, m) : null;
fc.texImage2D(e, this.__sideToTarget(3), 0, this.__internalFormat, this.__size, this.__size, 0, this.__format, e.UNSIGNED_BYTE, a);
a = this.__size * this.__size * 4;
m = p = h = f = b = null;
a = null != a ? new Uint8Array(a) : null != b ? new Uint8Array(b) : null != f ? new Uint8Array(f.__array) : null != h ? new Uint8Array(h) : null != p ? null == m ? new Uint8Array(p, 0) : new Uint8Array(p, 0, m) : null;
fc.texImage2D(e, this.__sideToTarget(4), 0, this.__internalFormat, this.__size, this.__size, 0, this.__format,
e.UNSIGNED_BYTE, a);
a = this.__size * this.__size * 4;
m = p = h = f = b = null;
a = null != a ? new Uint8Array(a) : null != b ? new Uint8Array(b) : null != f ? new Uint8Array(f.__array) : null != h ? new Uint8Array(h) : null != p ? null == m ? new Uint8Array(p, 0) : new Uint8Array(p, 0, m) : null;
fc.texImage2D(e, this.__sideToTarget(5), 0, this.__internalFormat, this.__size, this.__size, 0, this.__format, e.UNSIGNED_BYTE, a)
}
this.__context.__bindGLTextureCubeMap(null)
},
__class__: Yi
});
var bk = function (a, b, c, d, e) {
hc.call(this, a);
this.__width = b;
this.__height = c;
this.__optimizeForRenderToTexture =
e;
this.__textureTarget = this.__context.gl.TEXTURE_2D;
this.uploadFromTypedArray(null);
e && this.__getGLFramebuffer(!0, 0, 0)
};
k["openfl.display3D.textures.RectangleTexture"] = bk;
bk.__name__ = "openfl.display3D.textures.RectangleTexture";
bk.__super__ = hc;
bk.prototype = u(hc.prototype, {
uploadFromBitmapData: function (a) {
if (null != a && (a = this.__getImage(a), null != a)) if (null != a.buffer && null == a.buffer.data && null != a.buffer.get_src()) {
var b = this.__context.gl;
this.__context.__bindGLTexture2D(this.__textureID);
fc.texImage2D(b,
this.__textureTarget, 0, this.__internalFormat, this.__format, b.UNSIGNED_BYTE, a.buffer.get_src());
this.__context.__bindGLTexture2D(null)
} else this.uploadFromTypedArray(a.get_data())
}, uploadFromByteArray: function (a, b) {
0 == b ? this.uploadFromTypedArray(a.b) : (a = Fb.toArrayBuffer(a), null == b && (b = 0), b = null != a ? new Uint8Array(a, b) : null, this.uploadFromTypedArray(b))
}, uploadFromTypedArray: function (a) {
var b = this.__context.gl;
this.__context.__bindGLTexture2D(this.__textureID);
fc.texImage2D(b, this.__textureTarget, 0,
this.__internalFormat, this.__width, this.__height, 0, this.__format, b.UNSIGNED_BYTE, a);
this.__context.__bindGLTexture2D(null)
}, __setSamplerState: function (a) {
if (hc.prototype.__setSamplerState.call(this, a)) {
var b = this.__context.gl;
if (0 != cc.__glMaxTextureMaxAnisotropy) {
switch (a.filter) {
case 0:
a = 16;
break;
case 1:
a = 2;
break;
case 2:
a = 4;
break;
case 3:
a = 8;
break;
default:
a = 1
}
a > cc.__glMaxTextureMaxAnisotropy && (a = cc.__glMaxTextureMaxAnisotropy);
b.texParameterf(b.TEXTURE_2D, cc.__glTextureMaxAnisotropy, a)
}
return !0
}
return !1
},
__class__: bk
});
var gi = function (a, b, c, d, e, g) {
hc.call(this, a);
this.__width = b;
this.__height = c;
this.__optimizeForRenderToTexture = e;
this.__streamingLevels = g;
a = this.__context.gl;
this.__textureTarget = a.TEXTURE_2D;
this.__context.__bindGLTexture2D(this.__textureID);
fc.texImage2D(a, this.__textureTarget, 0, this.__internalFormat, this.__width, this.__height, 0, this.__format, a.UNSIGNED_BYTE, null);
this.__context.__bindGLTexture2D(null);
e && this.__getGLFramebuffer(!0, 0, 0)
};
k["openfl.display3D.textures.Texture"] = gi;
gi.__name__ =
"openfl.display3D.textures.Texture";
gi.__super__ = hc;
gi.prototype = u(hc.prototype, {
uploadCompressedTextureFromByteArray: function (a, b, c) {
null == c && (c = !1);
var d = this;
c ? Ve.delay(function () {
d.__uploadCompressedTextureFromByteArray(a, b);
var c = new oa("textureReady");
d.dispatchEvent(c)
}, 1) : this.__uploadCompressedTextureFromByteArray(a, b)
}, uploadFromBitmapData: function (a, b, c) {
null == b && (b = 0);
if (null != a) {
c = this.__width >> b;
var d = this.__height >> b;
if (0 != c || 0 != d) {
0 == c && (c = 1);
0 == d && (d = 1);
if (a.width != c || a.height != d) c =
new ka(c, d, !0, 0), c.draw(a), a = c;
a = this.__getImage(a);
if (null != a) if (0 == b && null != a.buffer && null == a.buffer.data && null != a.buffer.get_src()) {
var e = this.__context.gl;
c = this.__width >> b;
d = this.__height >> b;
if (0 != c || 0 != d) this.__context.__bindGLTexture2D(this.__textureID), fc.texImage2D(e, this.__textureTarget, b, this.__internalFormat, this.__format, e.UNSIGNED_BYTE, a.buffer.get_src()), this.__context.__bindGLTexture2D(null)
} else this.uploadFromTypedArray(a.get_data(), b)
}
}
}, uploadFromByteArray: function (a, b, c) {
null ==
c && (c = 0);
0 == b ? this.uploadFromTypedArray(a.b, c) : (a = Fb.toArrayBuffer(a), null == b && (b = 0), b = null != a ? new Uint8Array(a, b) : null, this.uploadFromTypedArray(b, c))
}, uploadFromTypedArray: function (a, b) {
null == b && (b = 0);
if (null != a) {
var c = this.__context.gl, d = this.__width >> b, e = this.__height >> b;
if (0 != d || 0 != e) 0 == d && (d = 1), 0 == e && (e = 1), this.__context.__bindGLTexture2D(this.__textureID), fc.texImage2D(c, this.__textureTarget, b, this.__internalFormat, d, e, 0, this.__format, c.UNSIGNED_BYTE, a), this.__context.__bindGLTexture2D(null)
}
},
__setSamplerState: function (a) {
if (hc.prototype.__setSamplerState.call(this, a)) {
var b = this.__context.gl;
2 == a.mipfilter || this.__samplerState.mipmapGenerated || (b.generateMipmap(b.TEXTURE_2D), this.__samplerState.mipmapGenerated = !0);
if (0 != cc.__glMaxTextureMaxAnisotropy) {
switch (a.filter) {
case 0:
a = 16;
break;
case 1:
a = 2;
break;
case 2:
a = 4;
break;
case 3:
a = 8;
break;
default:
a = 1
}
a > cc.__glMaxTextureMaxAnisotropy && (a = cc.__glMaxTextureMaxAnisotropy);
b.texParameterf(b.TEXTURE_2D, cc.__glTextureMaxAnisotropy, a)
}
return !0
}
return !1
},
__uploadCompressedTextureFromByteArray: function (a, b) {
var c = this;
a = new ek(a, b);
var d = a.readHeader(this.__width, this.__height, !1), e = this.__context.gl;
this.__context.__bindGLTexture2D(this.__textureID);
var g = !1;
a.readTextures(function (a, b, f, h, l, n, k) {
a = d ? hc.__compressedFormatsAlpha.h[f] : hc.__compressedFormats.h[f];
if (0 != a) if (g = !0, c.__format = a, c.__internalFormat = a, d && 2 == f) {
n = n / 2 | 0;
var r = f = null, m = null, p = null, v = k.b.buffer, t = 0;
null == t && (t = 0);
f = null != f ? new Uint8Array(f) : null != r ? new Uint8Array(r) : null != m ? new Uint8Array(m.__array) :
null != p ? new Uint8Array(p) : null != v ? null == n ? new Uint8Array(v, t) : new Uint8Array(v, t, n) : null;
fc.compressedTexImage2D(e, c.__textureTarget, b, c.__internalFormat, h, l, 0, f);
var q = new gi(c.__context, c.__width, c.__height, 3, c.__optimizeForRenderToTexture, c.__streamingLevels);
q.__format = a;
q.__internalFormat = a;
c.__context.__bindGLTexture2D(q.__textureID);
p = m = r = f = null;
v = k.b.buffer;
t = n;
null == t && (t = 0);
f = null != f ? new Uint8Array(f) : null != r ? new Uint8Array(r) : null != m ? new Uint8Array(m.__array) : null != p ? new Uint8Array(p) :
null != v ? null == n ? new Uint8Array(v, t) : new Uint8Array(v, t, n) : null;
fc.compressedTexImage2D(e, q.__textureTarget, b, q.__internalFormat, h, l, 0, f);
c.__alphaTexture = q
} else p = m = r = f = null, v = k.b.buffer, t = 0, null == t && (t = 0), f = null != f ? new Uint8Array(f) : null != r ? new Uint8Array(r) : null != m ? new Uint8Array(m.__array) : null != p ? new Uint8Array(p) : null != v ? null == n ? new Uint8Array(v, t) : new Uint8Array(v, t, n) : null, fc.compressedTexImage2D(e, c.__textureTarget, b, c.__internalFormat, h, l, 0, f)
});
g || (a = this.__width * this.__height * 4, a = null !=
a ? new Uint8Array(a) : null, fc.texImage2D(e, this.__textureTarget, 0, this.__internalFormat, this.__width, this.__height, 0, this.__format, e.UNSIGNED_BYTE, a));
this.__context.__bindGLTexture2D(null)
}, __class__: gi
});
var en = function (a) {
hc.call(this, a);
this.__textureTarget = this.__context.gl.TEXTURE_2D
};
k["openfl.display3D.textures.VideoTexture"] = en;
en.__name__ = "openfl.display3D.textures.VideoTexture";
en.__super__ = hc;
en.prototype = u(hc.prototype, {
videoHeight: null, videoWidth: null, __cacheTime: null, __netStream: null,
attachNetStream: function (a) {
var b = this;
null != this.__netStream && this.__netStream.__video.removeEventListener("canplay", q(this, this.__onCanPlay), !1);
this.__cacheTime = -1;
this.__netStream = a;
null != this.__netStream && (2 <= this.__netStream.__video.readyState ? Ve.delay(function () {
b.__textureReady()
}, 0) : this.__netStream.__video.addEventListener("canplay", q(this, this.__onCanPlay), !1))
}, dispose: function () {
null != this.__netStream && null != this.__netStream.__video && this.__netStream.__video.removeEventListener("timeupdate",
q(this, this.__onTimeUpdate));
hc.prototype.dispose.call(this)
}, __onCanPlay: function (a) {
this.__netStream.__video.addEventListener("timeupdate", q(this, this.__onTimeUpdate));
this.__textureReady()
}, __onTimeUpdate: function (a) {
null != this.__netStream && this.__netStream.__video.currentTime != this.__cacheTime && 2 <= this.__netStream.__video.readyState && this.__textureReady()
}, __getTexture: function () {
if (this.__netStream.__video.currentTime != this.__cacheTime && 2 <= this.__netStream.__video.readyState) {
var a = this.__context.gl;
this.__context.__bindGLTexture2D(this.__textureID);
fc.texImage2D(a, a.TEXTURE_2D, 0, a.RGBA, a.RGBA, a.UNSIGNED_BYTE, this.__netStream.__video);
this.__cacheTime = this.__netStream.__video.currentTime
}
return this.__textureID
}, __textureReady: function () {
this.videoWidth = this.__netStream.__video.videoWidth;
this.videoHeight = this.__netStream.__video.videoHeight;
var a = new oa("textureReady");
this.dispatchEvent(a)
}, __class__: en
});
var id = function (a, b) {
null == b && (b = 0);
null == a && (a = "");
this.message = a;
this.errorID = b;
this.name =
"Error"
};
k["openfl.errors.Error"] = id;
id.__name__ = "openfl.errors.Error";
id.prototype = {
errorID: null, message: null, name: null, getStackTrace: function () {
return pf.toString(pf.exceptionStack())
}, toString: function () {
return null != this.message ? this.message : "Error"
}, __class__: id
};
var oi = function (a) {
null == a && (a = "");
id.call(this, a);
this.name = "ArgumentError"
};
k["openfl.errors.ArgumentError"] = oi;
oi.__name__ = "openfl.errors.ArgumentError";
oi.__super__ = id;
oi.prototype = u(id.prototype, {__class__: oi});
var aj = function (a) {
null ==
a && (a = "");
id.call(this, a);
this.name = "IOError"
};
k["openfl.errors.IOError"] = aj;
aj.__name__ = "openfl.errors.IOError";
aj.__super__ = id;
aj.prototype = u(id.prototype, {__class__: aj});
var hh = function (a, b) {
aj.call(this, "End of file was encountered");
this.name = "EOFError";
this.errorID = 2030
};
k["openfl.errors.EOFError"] = hh;
hh.__name__ = "openfl.errors.EOFError";
hh.__super__ = aj;
hh.prototype = u(aj.prototype, {__class__: hh});
var pd = function (a) {
null == a && (a = "");
id.call(this, a, 0);
this.name = "IllegalOperationError"
};
k["openfl.errors.IllegalOperationError"] =
pd;
pd.__name__ = "openfl.errors.IllegalOperationError";
pd.__super__ = id;
pd.prototype = u(id.prototype, {__class__: pd});
var Jh = function (a) {
null == a && (a = "");
id.call(this, a, 0);
this.name = "RangeError"
};
k["openfl.errors.RangeError"] = Jh;
Jh.__name__ = "openfl.errors.RangeError";
Jh.__super__ = id;
Jh.prototype = u(id.prototype, {__class__: Jh});
var fp = function (a) {
null == a && (a = "");
id.call(this, a, 0);
this.name = "SecurityError"
};
k["openfl.errors.SecurityError"] = fp;
fp.__name__ = "openfl.errors.SecurityError";
fp.__super__ = id;
fp.prototype =
u(id.prototype, {__class__: fp});
var nj = function (a) {
null == a && (a = "");
id.call(this, a, 0);
this.name = "TypeError"
};
k["openfl.errors.TypeError"] = nj;
nj.__name__ = "openfl.errors.TypeError";
nj.__super__ = id;
nj.prototype = u(id.prototype, {__class__: nj});
var ih = function (a, b, c, d) {
null == d && (d = !1);
null == c && (c = !1);
null == b && (b = !1);
oa.call(this, a, b, c);
this.activating = d
};
k["openfl.events.ActivityEvent"] = ih;
ih.__name__ = "openfl.events.ActivityEvent";
ih.__super__ = oa;
ih.prototype = u(oa.prototype, {
activating: null, clone: function () {
var a =
new ih(this.type, this.bubbles, this.cancelable, this.activating);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a
}, toString: function () {
return this.__formatToString("ActivityEvent", ["type", "bubbles", "cancelable", "activating"])
}, __init: function () {
oa.prototype.__init.call(this);
this.activating = !1
}, __class__: ih
});
var kf = function (a, b, c, d) {
null == d && (d = "");
null == c && (c = !1);
null == b && (b = !1);
oa.call(this, a, b, c);
this.text = d
};
k["openfl.events.TextEvent"] = kf;
kf.__name__ =
"openfl.events.TextEvent";
kf.__super__ = oa;
kf.prototype = u(oa.prototype, {
text: null, clone: function () {
var a = new kf(this.type, this.bubbles, this.cancelable, this.text);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a
}, toString: function () {
return this.__formatToString("TextEvent", ["type", "bubbles", "cancelable", "text"])
}, __init: function () {
oa.prototype.__init.call(this);
this.text = ""
}, __class__: kf
});
var Ze = function (a, b, c, d, e) {
null == e && (e = 0);
null == d && (d = "");
null == c &&
(c = !1);
null == b && (b = !1);
kf.call(this, a, b, c, d);
this.errorID = e
};
k["openfl.events.ErrorEvent"] = Ze;
Ze.__name__ = "openfl.events.ErrorEvent";
Ze.__super__ = kf;
Ze.prototype = u(kf.prototype, {
errorID: null, clone: function () {
var a = new Ze(this.type, this.bubbles, this.cancelable, this.text, this.errorID);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a
}, toString: function () {
return this.__formatToString("ErrorEvent", ["type", "bubbles", "cancelable", "text", "errorID"])
}, __init: function () {
kf.prototype.__init.call(this);
this.errorID = 0
}, __class__: Ze
});
var mj = function (a) {
this.active = !1;
this.reset(a)
};
k["openfl.events._EventDispatcher.DispatchIterator"] = mj;
mj.__name__ = "openfl.events._EventDispatcher.DispatchIterator";
mj.prototype = {
active: null, index: null, isCopy: null, list: null, copy: function () {
this.isCopy || (this.list = this.list.slice(), this.isCopy = !0)
}, hasNext: function () {
return this.index < this.list.length
}, next: function () {
return this.list[this.index++]
}, remove: function (a, b) {
if (this.active) if (this.isCopy) {
b = this.index;
for (var c =
this.list.length; b < c;) {
var d = b++;
if (this.list[d] == a) {
this.list.splice(d, 1);
break
}
}
} else b < this.index && this.index--
}, reset: function (a) {
this.list = a;
this.isCopy = !1;
this.index = 0
}, start: function () {
this.active = !0
}, stop: function () {
this.active = !1
}, __class__: mj
};
var lj = function (a, b, c) {
this.callback = a;
this.useCapture = b;
this.priority = c
};
k["openfl.events._EventDispatcher.Listener"] = lj;
lj.__name__ = "openfl.events._EventDispatcher.Listener";
lj.prototype = {
callback: null, priority: null, useCapture: null, match: function (a,
b) {
return V.compareMethods(this.callback, a) ? this.useCapture == b : !1
}, __class__: lj
};
var bg = function (a, b, c, d, e, g) {
null == g && (g = 0);
null == e && (e = !1);
null == c && (c = !1);
null == b && (b = !1);
oa.call(this, a, b, c);
this.keyCode = g;
this.shiftKey = e;
this.relatedObject = d
};
k["openfl.events.FocusEvent"] = bg;
bg.__name__ = "openfl.events.FocusEvent";
bg.__super__ = oa;
bg.prototype = u(oa.prototype, {
keyCode: null, relatedObject: null, shiftKey: null, clone: function () {
var a = new bg(this.type, this.bubbles, this.cancelable, this.relatedObject, this.shiftKey,
this.keyCode);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a
}, toString: function () {
return this.__formatToString("FocusEvent", "type bubbles cancelable relatedObject shiftKey keyCode".split(" "))
}, __init: function () {
oa.prototype.__init.call(this);
this.keyCode = 0;
this.shiftKey = !1;
this.relatedObject = null
}, __class__: bg
});
var gh = function (a, b, c, d, e) {
null == e && (e = !1);
null == d && (d = !1);
null == c && (c = !1);
null == b && (b = !1);
ih.call(this, a, b, c);
this.fullScreen = d;
this.interactive =
e
};
k["openfl.events.FullScreenEvent"] = gh;
gh.__name__ = "openfl.events.FullScreenEvent";
gh.__super__ = ih;
gh.prototype = u(ih.prototype, {
fullScreen: null, interactive: null, clone: function () {
var a = new gh(this.type, this.bubbles, this.cancelable, this.fullScreen, this.interactive);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a
}, toString: function () {
return this.__formatToString("FullscreenEvent", ["type", "bubbles", "cancelable", "fullscreen", "interactive"])
}, __init: function () {
ih.prototype.__init.call(this);
this.interactive = this.fullScreen = !1
}, __class__: gh
});
var Jg = function (a, b, c, d) {
null == c && (c = !1);
null == b && (b = !0);
oa.call(this, a, b, c);
this.device = d
};
k["openfl.events.GameInputEvent"] = Jg;
Jg.__name__ = "openfl.events.GameInputEvent";
Jg.__super__ = oa;
Jg.prototype = u(oa.prototype, {
device: null, clone: function () {
var a = new Jg(this.type, this.bubbles, this.cancelable, this.device);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a
}, toString: function () {
return this.__formatToString("GameInputEvent",
["type", "bubbles", "cancelable", "device"])
}, __init: function () {
oa.prototype.__init.call(this);
this.device = null
}, __class__: Jg
});
var ii = function (a, b, c, d, e) {
null == e && (e = !1);
null == d && (d = 0);
null == c && (c = !1);
null == b && (b = !1);
this.status = d;
this.redirected = e;
oa.call(this, a, b, c)
};
k["openfl.events.HTTPStatusEvent"] = ii;
ii.__name__ = "openfl.events.HTTPStatusEvent";
ii.__super__ = oa;
ii.prototype = u(oa.prototype, {
redirected: null, responseHeaders: null, responseURL: null, status: null, clone: function () {
var a = new ii(this.type,
this.bubbles, this.cancelable, this.status, this.redirected);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a
}, toString: function () {
return this.__formatToString("HTTPStatusEvent", ["type", "bubbles", "cancelable", "status", "redirected"])
}, __init: function () {
oa.prototype.__init.call(this);
this.status = 0;
this.redirected = !1
}, __class__: ii
});
var sg = function (a, b, c, d, e) {
null == e && (e = 0);
null == d && (d = "");
null == c && (c = !1);
null == b && (b = !0);
Ze.call(this, a, b, c, d, e)
};
k["openfl.events.IOErrorEvent"] =
sg;
sg.__name__ = "openfl.events.IOErrorEvent";
sg.__super__ = Ze;
sg.prototype = u(Ze.prototype, {
clone: function () {
var a = new sg(this.type, this.bubbles, this.cancelable, this.text, this.errorID);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a
}, toString: function () {
return this.__formatToString("IOErrorEvent", ["type", "bubbles", "cancelable", "text", "errorID"])
}, __class__: sg
});
var ci = function (a, b, c, d, e, g, f, h, p, m, l) {
null == l && (l = !1);
null == m && (m = !1);
null == p && (p = !1);
null == h &&
(h = !1);
null == f && (f = !1);
null == e && (e = 0);
null == d && (d = 0);
null == c && (c = !1);
null == b && (b = !1);
oa.call(this, a, b, c);
this.charCode = d;
this.keyCode = e;
this.keyLocation = null != g ? g : 0;
this.ctrlKey = f;
this.altKey = h;
this.shiftKey = p;
this.controlKey = m;
this.commandKey = l
};
k["openfl.events.KeyboardEvent"] = ci;
ci.__name__ = "openfl.events.KeyboardEvent";
ci.__super__ = oa;
ci.prototype = u(oa.prototype, {
altKey: null,
charCode: null,
commandKey: null,
controlKey: null,
ctrlKey: null,
keyCode: null,
keyLocation: null,
shiftKey: null,
clone: function () {
var a =
new ci(this.type, this.bubbles, this.cancelable, this.charCode, this.keyCode, this.keyLocation, this.ctrlKey, this.altKey, this.shiftKey, this.controlKey, this.commandKey);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a
},
toString: function () {
return this.__formatToString("KeyboardEvent", "type bubbles cancelable charCode keyCode keyLocation ctrlKey altKey shiftKey".split(" "))
},
__init: function () {
oa.prototype.__init.call(this);
this.keyLocation = this.keyCode = this.charCode =
0;
this.commandKey = this.controlKey = this.shiftKey = this.altKey = this.ctrlKey = !1
},
__class__: ci
});
var Qb = function (a, b, c, d, e, g, f, h, l, m, k, n, t) {
null == t && (t = 0);
null == n && (n = !1);
null == k && (k = 0);
null == m && (m = !1);
null == l && (l = !1);
null == h && (h = !1);
null == f && (f = !1);
null == e && (e = 0);
null == d && (d = 0);
null == c && (c = !1);
null == b && (b = !0);
oa.call(this, a, b, c);
this.shiftKey = l;
this.altKey = h;
this.ctrlKey = f;
this.bubbles = b;
this.relatedObject = g;
this.delta = k;
this.localX = d;
this.localY = e;
this.buttonDown = m;
this.commandKey = n;
this.clickCount =
t;
this.isRelatedObjectInaccessible = !1;
this.stageY = this.stageX = NaN
};
k["openfl.events.MouseEvent"] = Qb;
Qb.__name__ = "openfl.events.MouseEvent";
Qb.__create = function (a, b, c, d, e, g, f) {
null == f && (f = 0);
a = new Qb(a, !0, !1, e.x, e.y, null, Qb.__ctrlKey, Qb.__altKey, Qb.__shiftKey, Qb.__buttonDown, f, Qb.__commandKey);
a.stageX = c;
a.stageY = d;
a.target = g;
return a
};
Qb.__super__ = oa;
Qb.prototype = u(oa.prototype, {
altKey: null,
buttonDown: null,
commandKey: null,
clickCount: null,
ctrlKey: null,
delta: null,
isRelatedObjectInaccessible: null,
localX: null,
localY: null,
relatedObject: null,
shiftKey: null,
stageX: null,
stageY: null,
clone: function () {
var a = new Qb(this.type, this.bubbles, this.cancelable, this.localX, this.localY, this.relatedObject, this.ctrlKey, this.altKey, this.shiftKey, this.buttonDown, this.delta, this.commandKey, this.clickCount);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a
},
toString: function () {
return this.__formatToString("MouseEvent", "type bubbles cancelable localX localY relatedObject ctrlKey altKey shiftKey buttonDown delta".split(" "))
},
updateAfterEvent: function () {
},
__init: function () {
oa.prototype.__init.call(this);
this.bubbles = this.ctrlKey = this.altKey = this.shiftKey = !1;
this.relatedObject = null;
this.localY = this.localX = this.delta = 0;
this.commandKey = this.buttonDown = !1;
this.clickCount = 0;
this.isRelatedObjectInaccessible = !1;
this.stageY = this.stageX = NaN
},
__class__: Qb
});
var ji = function (a, b, c, d) {
null == c && (c = !1);
null == b && (b = !1);
this.info = d;
oa.call(this, a, b, c)
};
k["openfl.events.NetStatusEvent"] = ji;
ji.__name__ = "openfl.events.NetStatusEvent";
ji.__super__ =
oa;
ji.prototype = u(oa.prototype, {
info: null, clone: function () {
var a = new ji(this.type, this.bubbles, this.cancelable, this.info);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a
}, toString: function () {
return this.__formatToString("NetStatusEvent", ["type", "bubbles", "cancelable", "info"])
}, __init: function () {
oa.prototype.__init.call(this);
this.info = null
}, __class__: ji
});
var Hg = function (a, b, c, d, e) {
null == e && (e = 0);
null == d && (d = 0);
null == c && (c = !1);
null == b && (b = !1);
oa.call(this,
a, b, c);
this.bytesLoaded = d;
this.bytesTotal = e
};
k["openfl.events.ProgressEvent"] = Hg;
Hg.__name__ = "openfl.events.ProgressEvent";
Hg.__super__ = oa;
Hg.prototype = u(oa.prototype, {
bytesLoaded: null, bytesTotal: null, clone: function () {
var a = new Hg(this.type, this.bubbles, this.cancelable, this.bytesLoaded, this.bytesTotal);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a
}, toString: function () {
return this.__formatToString("ProgressEvent", ["type", "bubbles", "cancelable", "bytesLoaded",
"bytesTotal"])
}, __init: function () {
oa.prototype.__init.call(this);
this.bytesTotal = this.bytesLoaded = 0
}, __class__: Hg
});
var wg = function (a, b, c, d, e, g) {
null == g && (g = !0);
null == c && (c = !1);
null == b && (b = !1);
oa.call(this, a, b, c);
this.objectMatrix = d;
this.objectColorTransform = e;
this.allowSmoothing = g
};
k["openfl.events.RenderEvent"] = wg;
wg.__name__ = "openfl.events.RenderEvent";
wg.__super__ = oa;
wg.prototype = u(oa.prototype, {
allowSmoothing: null,
objectColorTransform: null,
objectMatrix: null,
renderer: null,
clone: function () {
var a =
new wg(this.type, this.bubbles, this.cancelable, this.objectMatrix.clone(), this.objectColorTransform.__clone(), this.allowSmoothing);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a
},
toString: function () {
return this.__formatToString("RenderEvent", ["type", "bubbles", "cancelable"])
},
__init: function () {
oa.prototype.__init.call(this);
this.objectColorTransform = this.objectMatrix = null;
this.allowSmoothing = !1;
this.renderer = null
},
__class__: wg
});
var bj = function (a, b, c, d,
e) {
null == e && (e = 0);
null == d && (d = "");
null == c && (c = !1);
null == b && (b = !1);
Ze.call(this, a, b, c, d, e)
};
k["openfl.events.SecurityErrorEvent"] = bj;
bj.__name__ = "openfl.events.SecurityErrorEvent";
bj.__super__ = Ze;
bj.prototype = u(Ze.prototype, {
clone: function () {
var a = new bj(this.type, this.bubbles, this.cancelable, this.text, this.errorID);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a
}, toString: function () {
return this.__formatToString("SecurityErrorEvent", ["type", "bubbles", "cancelable",
"text", "errorID"])
}, __class__: bj
});
var $d = function (a, b, c, d, e, g, f, h, l, m, k, n, t, q, w, u, x, A, N, z) {
null == u && (u = !1);
null == w && (w = !1);
null == q && (q = !1);
null == t && (t = !1);
null == n && (n = !1);
null == m && (m = 0);
null == l && (l = 0);
null == h && (h = 0);
null == f && (f = 0);
null == g && (g = 0);
null == e && (e = !1);
null == d && (d = 0);
null == c && (c = !1);
null == b && (b = !0);
oa.call(this, a, b, c);
this.touchPointID = d;
this.isPrimaryTouchPoint = e;
this.localX = g;
this.localY = f;
this.sizeX = h;
this.sizeY = l;
this.pressure = m;
this.relatedObject = k;
this.ctrlKey = n;
this.altKey = t;
this.shiftKey =
q;
this.commandKey = w;
this.controlKey = u;
this.stageY = this.stageX = NaN
};
k["openfl.events.TouchEvent"] = $d;
$d.__name__ = "openfl.events.TouchEvent";
$d.__create = function (a, b, c, d, e, g) {
a = new $d(a, !0, !1, 0, !0, e.x, e.y, 1, 1, 1);
a.stageX = c;
a.stageY = d;
a.target = g;
return a
};
$d.__super__ = oa;
$d.prototype = u(oa.prototype, {
altKey: null,
commandKey: null,
controlKey: null,
ctrlKey: null,
delta: null,
isPrimaryTouchPoint: null,
localX: null,
localY: null,
pressure: null,
relatedObject: null,
shiftKey: null,
sizeX: null,
sizeY: null,
stageX: null,
stageY: null,
touchPointID: null,
clone: function () {
var a = new $d(this.type, this.bubbles, this.cancelable, this.touchPointID, this.isPrimaryTouchPoint, this.localX, this.localY, this.sizeX, this.sizeY, this.pressure, this.relatedObject, this.ctrlKey, this.altKey, this.shiftKey, this.commandKey, this.controlKey);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a
},
toString: function () {
return this.__formatToString("TouchEvent", "type bubbles cancelable touchPointID isPrimaryTouchPoint localX localY sizeX sizeY pressure relatedObject ctrlKey altKey shiftKey commandKey controlKey".split(" "))
},
updateAfterEvent: function () {
},
__init: function () {
oa.prototype.__init.call(this);
this.touchPointID = 0;
this.isPrimaryTouchPoint = !1;
this.pressure = this.sizeY = this.sizeX = this.localY = this.localX = 0;
this.relatedObject = null;
this.controlKey = this.commandKey = this.shiftKey = this.altKey = this.ctrlKey = !1;
this.stageY = this.stageX = NaN
},
__class__: $d
});
var Vi = function (a, b, c, d) {
null == c && (c = !0);
null == b && (b = !0);
Ze.call(this, a, b, c);
this.error = d
};
k["openfl.events.UncaughtErrorEvent"] = Vi;
Vi.__name__ = "openfl.events.UncaughtErrorEvent";
Vi.__super__ = Ze;
Vi.prototype = u(Ze.prototype, {
error: null, clone: function () {
var a = new Vi(this.type, this.bubbles, this.cancelable, this.error);
a.target = this.target;
a.currentTarget = this.currentTarget;
a.eventPhase = this.eventPhase;
return a
}, toString: function () {
return this.__formatToString("UncaughtErrorEvent", ["type", "bubbles", "cancelable", "error"])
}, __init: function () {
Ze.prototype.__init.call(this);
this.error = null
}, __class__: Vi
});
var Tm = function () {
jb.call(this)
};
k["openfl.events.UncaughtErrorEvents"] = Tm;
Tm.__name__ =
"openfl.events.UncaughtErrorEvents";
Tm.__super__ = jb;
Tm.prototype = u(jb.prototype, {__class__: Tm});
var cj = function () {
this.__leftExtension = this.__bottomExtension = 0;
this.__needSecondBitmapData = !0;
this.__numShaderPasses = 0;
this.__preserveObject = !1;
this.__rightExtension = 0;
this.__shaderBlendMode = 10;
this.__topExtension = 0;
this.__smooth = !0
};
k["openfl.filters.BitmapFilter"] = cj;
cj.__name__ = "openfl.filters.BitmapFilter";
cj.prototype = {
__bottomExtension: null,
__leftExtension: null,
__needSecondBitmapData: null,
__numShaderPasses: null,
__preserveObject: null,
__renderDirty: null,
__rightExtension: null,
__shaderBlendMode: null,
__smooth: null,
__topExtension: null,
clone: function () {
return new cj
},
__applyFilter: function (a, b, c, d) {
return b
},
__initShader: function (a, b, c) {
return null
},
__class__: cj
};
var dj = function (a) {
null == this.__glFragmentSource && (this.__glFragmentSource = "varying vec2 openfl_TextureCoordv;\n\n\t\tuniform sampler2D openfl_Texture;\n\t\tuniform vec2 openfl_TextureSize;\n\n\t\tvoid main(void) {\n\n\t\t\tgl_FragColor = texture2D (openfl_Texture, openfl_TextureCoordv);\n\n\t\t}");
null == this.__glVertexSource && (this.__glVertexSource = "attribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\n\t\tvarying vec2 openfl_TextureCoordv;\n\n\t\tuniform mat4 openfl_Matrix;\n\t\tuniform vec2 openfl_TextureSize;\n\n\t\tvoid main(void) {\n\n\t\t\topenfl_TextureCoordv = openfl_TextureCoord;\n\n\t\tgl_Position = openfl_Matrix * openfl_Position;\n\n\t\t}");
jf.call(this, a);
this.__isGenerated = !0;
this.__initGL()
};
k["openfl.filters.BitmapFilterShader"] = dj;
dj.__name__ = "openfl.filters.BitmapFilterShader";
dj.__super__ = jf;
dj.prototype = u(jf.prototype, {
openfl_Position: null,
openfl_TextureCoord: null,
openfl_Matrix: null,
openfl_TextureSize: null,
openfl_Texture: null,
__class__: dj
});
var fk = function () {
null == this.__glFragmentSource && (this.__glFragmentSource = "varying vec2 openfl_TextureCoordv;\n\t\tuniform sampler2D openfl_Texture;\n\n\t\tuniform mat4 uMultipliers;\n\t\tuniform vec4 uOffsets;\n\n\t\tvoid main(void) {\n\n\t\t\tvec4 color = texture2D (openfl_Texture, openfl_TextureCoordv);\n\n\t\t\tif (color.a == 0.0) {\n\n\t\t\t\tgl_FragColor = vec4 (0.0, 0.0, 0.0, 0.0);\n\n\t\t\t} else {\n\n\t\t\t\tcolor = vec4 (color.rgb / color.a, color.a);\n\t\t\t\tcolor = uOffsets + color * uMultipliers;\n\n\t\t\t\tgl_FragColor = vec4 (color.rgb * color.a, color.a);\n\n\t\t\t}\n\n\t\t}");
null == this.__glVertexSource && (this.__glVertexSource = "attribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\n\t\tvarying vec2 openfl_TextureCoordv;\n\n\t\tuniform mat4 openfl_Matrix;\n\t\tuniform vec2 openfl_TextureSize;\n\n\n\t\tvoid main(void) {\n\n\t\t\topenfl_TextureCoordv = openfl_TextureCoord;\n\n\t\tgl_Position = openfl_Matrix * openfl_Position;\n\n\n\t\t}");
dj.call(this);
this.uMultipliers.value = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];
this.uOffsets.value = [0, 0, 0, 0];
this.__isGenerated =
!0;
this.__initGL()
};
k["openfl.filters._ColorMatrixFilter.ColorMatrixShader"] = fk;
fk.__name__ = "openfl.filters._ColorMatrixFilter.ColorMatrixShader";
fk.__super__ = dj;
fk.prototype = u(dj.prototype, {
init: function (a) {
var b = this.uMultipliers.value, c = this.uOffsets.value;
b[0] = a[0];
b[1] = a[1];
b[2] = a[2];
b[3] = a[3];
b[4] = a[5];
b[5] = a[6];
b[6] = a[7];
b[7] = a[8];
b[8] = a[10];
b[9] = a[11];
b[10] = a[12];
b[11] = a[13];
b[12] = a[15];
b[13] = a[16];
b[14] = a[17];
b[15] = a[18];
c[0] = a[4] / 255;
c[1] = a[9] / 255;
c[2] = a[14] / 255;
c[3] = a[19] / 255
}, uMultipliers: null,
uOffsets: null, __class__: fk
});
var jg = function (a) {
cj.call(this);
this.set_matrix(a);
this.__numShaderPasses = 1;
this.__needSecondBitmapData = !1
};
k["openfl.filters.ColorMatrixFilter"] = jg;
jg.__name__ = "openfl.filters.ColorMatrixFilter";
jg.__super__ = cj;
jg.prototype = u(cj.prototype, {
__matrix: null, clone: function () {
return new jg(this.__matrix)
}, __applyFilter: function (a, b, c, d) {
var e = b.image, g = a.image;
va.convertToData(e);
va.convertToData(g);
var f = e.get_data(), h = g.get_data(), l = d.x - c.x | 0;
d = d.y - c.y | 0;
b = 4 * b.width;
var m =
4 * a.width, k = e.buffer.format, n = g.buffer.format;
e = e.buffer.premultiplied;
g = g.buffer.premultiplied;
for (var t, q = 0, w, u, x = c.y | 0, A = c.height | 0; x < A;) for (var N = x++, z = c.x | 0, J = c.width | 0; z < J;) {
u = z++;
w = N * b + 4 * u;
u = (N + l) * m + 4 * (u + d);
var B = k, ma = e;
null == ma && (ma = !1);
null == B && (B = 0);
switch (B) {
case 0:
t = (f[w] & 255) << 24 | (f[w + 1] & 255) << 16 | (f[w + 2] & 255) << 8 | f[w + 3] & 255;
break;
case 1:
t = (f[w + 1] & 255) << 24 | (f[w + 2] & 255) << 16 | (f[w + 3] & 255) << 8 | f[w] & 255;
break;
case 2:
t = (f[w + 2] & 255) << 24 | (f[w + 1] & 255) << 16 | (f[w] & 255) << 8 | f[w + 3] & 255
}
ma && 0 != (t & 255) &&
255 != (t & 255) && (D.unmult = 255 / (t & 255), t = (D.__clamp[Math.round((t >>> 24 & 255) * D.unmult)] & 255) << 24 | (D.__clamp[Math.round((t >>> 16 & 255) * D.unmult)] & 255) << 16 | (D.__clamp[Math.round((t >>> 8 & 255) * D.unmult)] & 255) << 8 | t & 255);
0 == (t & 255) ? q = 0 : (q = ((Math.max(0, Math.min(this.__matrix[0] * (t >>> 24 & 255) + this.__matrix[1] * (t >>> 16 & 255) + this.__matrix[2] * (t >>> 8 & 255) + this.__matrix[3] * (t & 255) + this.__matrix[4], 255)) | 0) & 255) << 24 | (q >>> 16 & 255) << 16 | (q >>> 8 & 255) << 8 | q & 255, q = (q >>> 24 & 255) << 24 | ((Math.max(0, Math.min(this.__matrix[5] * (t >>> 24 &
255) + this.__matrix[6] * (t >>> 16 & 255) + this.__matrix[7] * (t >>> 8 & 255) + this.__matrix[8] * (t & 255) + this.__matrix[9], 255)) | 0) & 255) << 16 | (q >>> 8 & 255) << 8 | q & 255, q = (q >>> 24 & 255) << 24 | (q >>> 16 & 255) << 16 | ((Math.max(0, Math.min(this.__matrix[10] * (t >>> 24 & 255) + this.__matrix[11] * (t >>> 16 & 255) + this.__matrix[12] * (t >>> 8 & 255) + this.__matrix[13] * (t & 255) + this.__matrix[14], 255)) | 0) & 255) << 8 | q & 255, q = (q >>> 24 & 255) << 24 | (q >>> 16 & 255) << 16 | (q >>> 8 & 255) << 8 | (Math.max(0, Math.min(this.__matrix[15] * (t >>> 24 & 255) + this.__matrix[16] * (t >>> 16 & 255) + this.__matrix[17] *
(t >>> 8 & 255) + this.__matrix[18] * (t & 255) + this.__matrix[19], 255)) | 0) & 255);
w = n;
B = g;
null == B && (B = !1);
null == w && (w = 0);
B && (0 == (q & 255) ? 0 != q && (q = 0) : 255 != (q & 255) && (D.a16 = D.__alpha16[q & 255], q = ((q >>> 24 & 255) * D.a16 >> 16 & 255) << 24 | ((q >>> 16 & 255) * D.a16 >> 16 & 255) << 16 | ((q >>> 8 & 255) * D.a16 >> 16 & 255) << 8 | q & 255));
switch (w) {
case 0:
h[u] = q >>> 24 & 255;
h[u + 1] = q >>> 16 & 255;
h[u + 2] = q >>> 8 & 255;
h[u + 3] = q & 255;
break;
case 1:
h[u] = q & 255;
h[u + 1] = q >>> 24 & 255;
h[u + 2] = q >>> 16 & 255;
h[u + 3] = q >>> 8 & 255;
break;
case 2:
h[u] = q >>> 8 & 255, h[u + 1] = q >>> 16 & 255, h[u + 2] = q >>> 24 &
255, h[u + 3] = q & 255
}
}
a.image.dirty = !0;
return a
}, __initShader: function (a, b, c) {
jg.__colorMatrixShader.init(this.get_matrix());
return jg.__colorMatrixShader
}, get_matrix: function () {
return this.__matrix
}, set_matrix: function (a) {
null == a && (a = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]);
return this.__matrix = a
}, __class__: jg, __properties__: {set_matrix: "set_matrix", get_matrix: "get_matrix"}
});
var he = function (a) {
null != a && 16 == a.get_length() ? this.rawData = a.concat(null) : this.rawData = Eb.toFloatVector(null, null, null, [1,
0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1])
};
k["openfl.geom.Matrix3D"] = he;
he.__name__ = "openfl.geom.Matrix3D";
he.create2D = function (a, b, c, d) {
null == d && (d = 0);
null == c && (c = 1);
var e = d * Math.PI / 180;
d = Math.cos(e);
e = Math.sin(e);
return new he(Eb.toFloatVector(null, null, null, [d * c, -e * c, 0, 0, e * c, d * c, 0, 0, 0, 0, 1, 0, a, b, 0, 1]))
};
he.createABCD = function (a, b, c, d, e, g) {
return new he(Eb.toFloatVector(null, null, null, [a, b, 0, 0, c, d, 0, 0, 0, 0, 1, 0, e, g, 0, 1]))
};
he.createOrtho = function (a, b, c, d, e, g) {
var f = 1 / (b - a), h = 1 / (d - c), l = 1 / (g - e);
return new he(Eb.toFloatVector(null,
null, null, [2 * f, 0, 0, 0, 0, 2 * h, 0, 0, 0, 0, -2 * l, 0, -(a + b) * f, -(c + d) * h, -(e + g) * l, 1]))
};
he.interpolate = function (a, b, c) {
for (var d = new he, e = 0; 16 > e;) {
var g = e++;
d.rawData.set(g, a.rawData.get(g) + (b.rawData.get(g) - a.rawData.get(g)) * c)
}
return d
};
he.__getAxisRotation = function (a, b, c, d) {
var e = new he;
a = new td(a, b, c);
d = Math.PI / 180 * -d;
c = Math.cos(d);
d = Math.sin(d);
b = 1 - c;
e.rawData.set(0, c + a.x * a.x * b);
e.rawData.set(5, c + a.y * a.y * b);
e.rawData.set(10, c + a.z * a.z * b);
c = a.x * a.y * b;
var g = a.z * d;
e.rawData.set(4, c + g);
e.rawData.set(1, c - g);
c =
a.x * a.z * b;
g = a.y * d;
e.rawData.set(8, c - g);
e.rawData.set(2, c + g);
c = a.y * a.z * b;
g = a.x * d;
e.rawData.set(9, c + g);
e.rawData.set(6, c - g);
return e
};
he.prototype = {
rawData: null,
append: function (a) {
var b = this.rawData.get(0), c = this.rawData.get(4), d = this.rawData.get(8),
e = this.rawData.get(12), g = this.rawData.get(1), f = this.rawData.get(5),
h = this.rawData.get(9), l = this.rawData.get(13), m = this.rawData.get(2),
k = this.rawData.get(6), n = this.rawData.get(10), t = this.rawData.get(14),
q = this.rawData.get(3), w = this.rawData.get(7), u = this.rawData.get(11),
x = this.rawData.get(15), A = a.rawData.get(0), N = a.rawData.get(4), z = a.rawData.get(8),
J = a.rawData.get(12), B = a.rawData.get(1), ma = a.rawData.get(5), C = a.rawData.get(9),
D = a.rawData.get(13), K = a.rawData.get(2), G = a.rawData.get(6), F = a.rawData.get(10),
I = a.rawData.get(14), y = a.rawData.get(3), E = a.rawData.get(7), L = a.rawData.get(11);
a = a.rawData.get(15);
this.rawData.set(0, b * A + g * N + m * z + q * J);
this.rawData.set(1, b * B + g * ma + m * C + q * D);
this.rawData.set(2, b * K + g * G + m * F + q * I);
this.rawData.set(3, b * y + g * E + m * L + q * a);
this.rawData.set(4, c * A +
f * N + k * z + w * J);
this.rawData.set(5, c * B + f * ma + k * C + w * D);
this.rawData.set(6, c * K + f * G + k * F + w * I);
this.rawData.set(7, c * y + f * E + k * L + w * a);
this.rawData.set(8, d * A + h * N + n * z + u * J);
this.rawData.set(9, d * B + h * ma + n * C + u * D);
this.rawData.set(10, d * K + h * G + n * F + u * I);
this.rawData.set(11, d * y + h * E + n * L + u * a);
this.rawData.set(12, e * A + l * N + t * z + x * J);
this.rawData.set(13, e * B + l * ma + t * C + x * D);
this.rawData.set(14, e * K + l * G + t * F + x * I);
this.rawData.set(15, e * y + l * E + t * L + x * a)
},
appendRotation: function (a, b, c) {
var d = 0, e = d, g = e;
null != c && (g = c.x, e = c.y, d = c.z);
c = a * Math.PI /
180;
a = Math.cos(c);
c = Math.sin(c);
var f = b.x, h = b.y;
b = b.z;
var l = f * f, m = h * h, k = b * b, n = l + m + k;
if (0 != n) {
var t = Math.sqrt(n);
f /= t;
h /= t;
b /= t;
l /= n;
m /= n;
k /= n
}
n = 1 - a;
t = new he;
var q = t.rawData;
q.set(0, l + (m + k) * a);
q.set(1, f * h * n + b * c);
q.set(2, f * b * n - h * c);
q.set(4, f * h * n - b * c);
q.set(5, m + (l + k) * a);
q.set(6, h * b * n + f * c);
q.set(8, f * b * n + h * c);
q.set(9, h * b * n - f * c);
q.set(10, k + (l + m) * a);
q.set(12, (g * (m + k) - f * (e * h + d * b)) * n + (e * b - d * h) * c);
q.set(13, (e * (l + k) - h * (g * f + d * b)) * n + (d * f - g * b) * c);
q.set(14, (d * (l + m) - b * (g * f + e * h)) * n + (g * h - e * f) * c);
this.append(t)
},
appendScale: function (a,
b, c) {
this.append(new he(Eb.toFloatVector(null, null, null, [a, 0, 0, 0, 0, b, 0, 0, 0, 0, c, 0, 0, 0, 0, 1])))
},
appendTranslation: function (a, b, c) {
var d = this.rawData;
d.set(12, d.get(12) + a);
d = this.rawData;
d.set(13, d.get(13) + b);
d = this.rawData;
d.set(14, d.get(14) + c)
},
clone: function () {
return new he(this.rawData.copy())
},
copyColumnFrom: function (a, b) {
switch (a) {
case 0:
this.rawData.set(0, b.x);
this.rawData.set(1, b.y);
this.rawData.set(2, b.z);
this.rawData.set(3, b.w);
break;
case 1:
this.rawData.set(4, b.x);
this.rawData.set(5, b.y);
this.rawData.set(6,
b.z);
this.rawData.set(7, b.w);
break;
case 2:
this.rawData.set(8, b.x);
this.rawData.set(9, b.y);
this.rawData.set(10, b.z);
this.rawData.set(11, b.w);
break;
case 3:
this.rawData.set(12, b.x), this.rawData.set(13, b.y), this.rawData.set(14, b.z), this.rawData.set(15, b.w)
}
},
copyColumnTo: function (a, b) {
switch (a) {
case 0:
b.x = this.rawData.get(0);
b.y = this.rawData.get(1);
b.z = this.rawData.get(2);
b.w = this.rawData.get(3);
break;
case 1:
b.x = this.rawData.get(4);
b.y = this.rawData.get(5);
b.z = this.rawData.get(6);
b.w = this.rawData.get(7);
break;
case 2:
b.x = this.rawData.get(8);
b.y = this.rawData.get(9);
b.z = this.rawData.get(10);
b.w = this.rawData.get(11);
break;
case 3:
b.x = this.rawData.get(12), b.y = this.rawData.get(13), b.z = this.rawData.get(14), b.w = this.rawData.get(15)
}
},
copyFrom: function (a) {
this.rawData = a.rawData.copy()
},
copyRawDataFrom: function (a, b, c) {
null == c && (c = !1);
null == b && (b = 0);
c && this.transpose();
for (var d = 0, e = a.get_length() - b; d < e;) {
var g = d++;
this.rawData.set(g, a.get(g + b))
}
c && this.transpose()
},
copyRawDataTo: function (a, b, c) {
null == c && (c =
!1);
null == b && (b = 0);
c && this.transpose();
for (var d = 0, e = this.rawData.get_length(); d < e;) {
var g = d++;
a.set(g + b, this.rawData.get(g))
}
c && this.transpose()
},
copyRowFrom: function (a, b) {
switch (a) {
case 0:
this.rawData.set(0, b.x);
this.rawData.set(4, b.y);
this.rawData.set(8, b.z);
this.rawData.set(12, b.w);
break;
case 1:
this.rawData.set(1, b.x);
this.rawData.set(5, b.y);
this.rawData.set(9, b.z);
this.rawData.set(13, b.w);
break;
case 2:
this.rawData.set(2, b.x);
this.rawData.set(6, b.y);
this.rawData.set(10, b.z);
this.rawData.set(14,
b.w);
break;
case 3:
this.rawData.set(3, b.x), this.rawData.set(7, b.y), this.rawData.set(11, b.z), this.rawData.set(15, b.w)
}
},
copyRowTo: function (a, b) {
switch (a) {
case 0:
b.x = this.rawData.get(0);
b.y = this.rawData.get(4);
b.z = this.rawData.get(8);
b.w = this.rawData.get(12);
break;
case 1:
b.x = this.rawData.get(1);
b.y = this.rawData.get(5);
b.z = this.rawData.get(9);
b.w = this.rawData.get(13);
break;
case 2:
b.x = this.rawData.get(2);
b.y = this.rawData.get(6);
b.z = this.rawData.get(10);
b.w = this.rawData.get(14);
break;
case 3:
b.x = this.rawData.get(3),
b.y = this.rawData.get(7), b.z = this.rawData.get(11), b.w = this.rawData.get(15)
}
},
copyToMatrix3D: function (a) {
a.rawData = this.rawData.copy()
},
decompose: function (a) {
null == a && (a = 1);
var b = Eb.toObjectVector(null), c = this.clone().rawData.copy(),
d = new td(c.get(12), c.get(13), c.get(14));
c.set(12, 0);
c.set(13, 0);
c.set(14, 0);
var e = new td;
e.x = Math.sqrt(c.get(0) * c.get(0) + c.get(1) * c.get(1) + c.get(2) * c.get(2));
e.y = Math.sqrt(c.get(4) * c.get(4) + c.get(5) * c.get(5) + c.get(6) * c.get(6));
e.z = Math.sqrt(c.get(8) * c.get(8) + c.get(9) * c.get(9) +
c.get(10) * c.get(10));
0 > c.get(0) * (c.get(5) * c.get(10) - c.get(6) * c.get(9)) - c.get(1) * (c.get(4) * c.get(10) - c.get(6) * c.get(8)) + c.get(2) * (c.get(4) * c.get(9) - c.get(5) * c.get(8)) && (e.z = -e.z);
var g = c;
g.set(0, g.get(0) / e.x);
g = c;
g.set(1, g.get(1) / e.x);
g = c;
g.set(2, g.get(2) / e.x);
g = c;
g.set(4, g.get(4) / e.y);
g = c;
g.set(5, g.get(5) / e.y);
g = c;
g.set(6, g.get(6) / e.y);
g = c;
g.set(8, g.get(8) / e.z);
g = c;
g.set(9, g.get(9) / e.z);
g = c;
g.set(10, g.get(10) / e.z);
g = new td;
switch (a) {
case 0:
g.w = Math.acos((c.get(0) + c.get(5) + c.get(10) - 1) / 2);
a = Math.sqrt((c.get(6) -
c.get(9)) * (c.get(6) - c.get(9)) + (c.get(8) - c.get(2)) * (c.get(8) - c.get(2)) + (c.get(1) - c.get(4)) * (c.get(1) - c.get(4)));
0 != a ? (g.x = (c.get(6) - c.get(9)) / a, g.y = (c.get(8) - c.get(2)) / a, g.z = (c.get(1) - c.get(4)) / a) : g.x = g.y = g.z = 0;
break;
case 1:
g.y = Math.asin(-c.get(2));
1 != c.get(2) && -1 != c.get(2) ? (g.x = Math.atan2(c.get(6), c.get(10)), g.z = Math.atan2(c.get(1), c.get(0))) : (g.z = 0, g.x = Math.atan2(c.get(4), c.get(5)));
break;
case 2:
a = c.get(0) + c.get(5) + c.get(10), 0 < a ? (g.w = Math.sqrt(1 + a) / 2, g.x = (c.get(6) - c.get(9)) / (4 * g.w), g.y = (c.get(8) -
c.get(2)) / (4 * g.w), g.z = (c.get(1) - c.get(4)) / (4 * g.w)) : c.get(0) > c.get(5) && c.get(0) > c.get(10) ? (g.x = Math.sqrt(1 + c.get(0) - c.get(5) - c.get(10)) / 2, g.w = (c.get(6) - c.get(9)) / (4 * g.x), g.y = (c.get(1) + c.get(4)) / (4 * g.x), g.z = (c.get(8) + c.get(2)) / (4 * g.x)) : c.get(5) > c.get(10) ? (g.y = Math.sqrt(1 + c.get(5) - c.get(0) - c.get(10)) / 2, g.x = (c.get(1) + c.get(4)) / (4 * g.y), g.w = (c.get(8) - c.get(2)) / (4 * g.y), g.z = (c.get(6) + c.get(9)) / (4 * g.y)) : (g.z = Math.sqrt(1 + c.get(10) - c.get(0) - c.get(5)) / 2, g.x = (c.get(8) + c.get(2)) / (4 * g.z), g.y = (c.get(6) + c.get(9)) /
(4 * g.z), g.w = (c.get(1) - c.get(4)) / (4 * g.z))
}
b.push(d);
b.push(g);
b.push(e);
return b
},
deltaTransformVector: function (a) {
var b = a.x, c = a.y;
a = a.z;
return new td(b * this.rawData.get(0) + c * this.rawData.get(4) + a * this.rawData.get(8), b * this.rawData.get(1) + c * this.rawData.get(5) + a * this.rawData.get(9), b * this.rawData.get(2) + c * this.rawData.get(6) + a * this.rawData.get(10), b * this.rawData.get(3) + c * this.rawData.get(7) + a * this.rawData.get(11))
},
identity: function () {
this.rawData = Eb.toFloatVector(null, null, null, [1, 0, 0, 0, 0, 1, 0, 0, 0,
0, 1, 0, 0, 0, 0, 1])
},
interpolateTo: function (a, b) {
for (var c = 0; 16 > c;) {
var d = c++;
this.rawData.set(d, this.rawData.get(d) + (a.rawData.get(d) - this.rawData.get(d)) * b)
}
},
invert: function () {
var a = this.get_determinant(), b = 1E-11 < Math.abs(a);
if (b) {
a = 1 / a;
var c = this.rawData.get(0), d = this.rawData.get(4), e = this.rawData.get(8),
g = this.rawData.get(12), f = this.rawData.get(1), h = this.rawData.get(5),
l = this.rawData.get(9), m = this.rawData.get(13), k = this.rawData.get(2),
n = this.rawData.get(6), t = this.rawData.get(10), q = this.rawData.get(14),
w = this.rawData.get(3), u = this.rawData.get(7), x = this.rawData.get(11),
A = this.rawData.get(15);
this.rawData.set(0, a * (h * (t * A - q * x) - l * (n * A - q * u) + m * (n * x - t * u)));
this.rawData.set(1, -a * (f * (t * A - q * x) - l * (k * A - q * w) + m * (k * x - t * w)));
this.rawData.set(2, a * (f * (n * A - q * u) - h * (k * A - q * w) + m * (k * u - n * w)));
this.rawData.set(3, -a * (f * (n * x - t * u) - h * (k * x - t * w) + l * (k * u - n * w)));
this.rawData.set(4, -a * (d * (t * A - q * x) - e * (n * A - q * u) + g * (n * x - t * u)));
this.rawData.set(5, a * (c * (t * A - q * x) - e * (k * A - q * w) + g * (k * x - t * w)));
this.rawData.set(6, -a * (c * (n * A - q * u) - d * (k * A - q * w) + g *
(k * u - n * w)));
this.rawData.set(7, a * (c * (n * x - t * u) - d * (k * x - t * w) + e * (k * u - n * w)));
this.rawData.set(8, a * (d * (l * A - m * x) - e * (h * A - m * u) + g * (h * x - l * u)));
this.rawData.set(9, -a * (c * (l * A - m * x) - e * (f * A - m * w) + g * (f * x - l * w)));
this.rawData.set(10, a * (c * (h * A - m * u) - d * (f * A - m * w) + g * (f * u - h * w)));
this.rawData.set(11, -a * (c * (h * x - l * u) - d * (f * x - l * w) + e * (f * u - h * w)));
this.rawData.set(12, -a * (d * (l * q - m * t) - e * (h * q - m * n) + g * (h * t - l * n)));
this.rawData.set(13, a * (c * (l * q - m * t) - e * (f * q - m * k) + g * (f * t - l * k)));
this.rawData.set(14, -a * (c * (h * q - m * n) - d * (f * q - m * k) + g * (f * n - h * k)));
this.rawData.set(15, a * (c * (h * t - l * n) - d * (f * t - l * k) + e * (f * n - h * k)))
}
return b
},
pointAt: function (a, b, c) {
null == b && (b = new td(0, 0, -1));
null == c && (c = new td(0, -1, 0));
b = b.subtract(a);
c = c.clone();
b.normalize();
c.normalize();
var d = b.clone();
d.scaleBy(c.dotProduct(b));
c = c.subtract(d);
0 < c.get_length() ? c.normalize() : c = 0 != b.x ? new td(-b.y, b.x, 0) : new td(1, 0, 0);
d = c.crossProduct(b);
d.normalize();
this.rawData.set(0, d.x);
this.rawData.set(4, d.y);
this.rawData.set(8, d.z);
this.rawData.set(12, 0);
this.rawData.set(1, c.x);
this.rawData.set(5,
c.y);
this.rawData.set(9, c.z);
this.rawData.set(13, 0);
this.rawData.set(2, b.x);
this.rawData.set(6, b.y);
this.rawData.set(10, b.z);
this.rawData.set(14, 0);
this.rawData.set(3, a.x);
this.rawData.set(7, a.y);
this.rawData.set(11, a.z);
this.rawData.set(15, 1)
},
prepend: function (a) {
var b = a.rawData.get(0), c = a.rawData.get(4), d = a.rawData.get(8), e = a.rawData.get(12),
g = a.rawData.get(1), f = a.rawData.get(5), h = a.rawData.get(9), l = a.rawData.get(13),
m = a.rawData.get(2), k = a.rawData.get(6), n = a.rawData.get(10), t = a.rawData.get(14),
q = a.rawData.get(3), w = a.rawData.get(7), u = a.rawData.get(11);
a = a.rawData.get(15);
var x = this.rawData.get(0), A = this.rawData.get(4), N = this.rawData.get(8),
z = this.rawData.get(12), J = this.rawData.get(1), B = this.rawData.get(5),
ma = this.rawData.get(9), C = this.rawData.get(13), D = this.rawData.get(2),
K = this.rawData.get(6), G = this.rawData.get(10), F = this.rawData.get(14),
I = this.rawData.get(3), y = this.rawData.get(7), E = this.rawData.get(11),
L = this.rawData.get(15);
this.rawData.set(0, b * x + g * A + m * N + q * z);
this.rawData.set(1, b * J + g *
B + m * ma + q * C);
this.rawData.set(2, b * D + g * K + m * G + q * F);
this.rawData.set(3, b * I + g * y + m * E + q * L);
this.rawData.set(4, c * x + f * A + k * N + w * z);
this.rawData.set(5, c * J + f * B + k * ma + w * C);
this.rawData.set(6, c * D + f * K + k * G + w * F);
this.rawData.set(7, c * I + f * y + k * E + w * L);
this.rawData.set(8, d * x + h * A + n * N + u * z);
this.rawData.set(9, d * J + h * B + n * ma + u * C);
this.rawData.set(10, d * D + h * K + n * G + u * F);
this.rawData.set(11, d * I + h * y + n * E + u * L);
this.rawData.set(12, e * x + l * A + t * N + a * z);
this.rawData.set(13, e * J + l * B + t * ma + a * C);
this.rawData.set(14, e * D + l * K + t * G + a * F);
this.rawData.set(15,
e * I + l * y + t * E + a * L)
},
prependRotation: function (a, b, c) {
var d = 0, e = d, g = e;
null != c && (g = c.x, e = c.y, d = c.z);
c = a * Math.PI / 180;
a = Math.cos(c);
c = Math.sin(c);
var f = b.x, h = b.y;
b = b.z;
var l = f * f, m = h * h, k = b * b, n = l + m + k;
if (0 != n) {
var t = Math.sqrt(n);
f /= t;
h /= t;
b /= t;
l /= n;
m /= n;
k /= n
}
n = 1 - a;
t = new he;
var q = t.rawData;
q.set(0, l + (m + k) * a);
q.set(1, f * h * n + b * c);
q.set(2, f * b * n - h * c);
q.set(4, f * h * n - b * c);
q.set(5, m + (l + k) * a);
q.set(6, h * b * n + f * c);
q.set(8, f * b * n + h * c);
q.set(9, h * b * n - f * c);
q.set(10, k + (l + m) * a);
q.set(12, (g * (m + k) - f * (e * h + d * b)) * n + (e * b - d * h) * c);
q.set(13,
(e * (l + k) - h * (g * f + d * b)) * n + (d * f - g * b) * c);
q.set(14, (d * (l + m) - b * (g * f + e * h)) * n + (g * h - e * f) * c);
this.prepend(t)
},
prependScale: function (a, b, c) {
this.prepend(new he(Eb.toFloatVector(null, null, null, [a, 0, 0, 0, 0, b, 0, 0, 0, 0, c, 0, 0, 0, 0, 1])))
},
prependTranslation: function (a, b, c) {
var d = new he;
d.set_position(new td(a, b, c));
this.prepend(d)
},
recompose: function (a, b) {
null == b && (b = 1);
if (3 > a.get_length() || 0 == a.get(2).x || 0 == a.get(2).y || 0 == a.get(2).z) return !1;
this.identity();
var c = [];
c[0] = c[1] = c[2] = a.get(2).x;
c[4] = c[5] = c[6] = a.get(2).y;
c[8] = c[9] = c[10] = a.get(2).z;
if (1 == b) {
b = Math.cos(a.get(1).x);
var d = Math.cos(a.get(1).y), e = Math.cos(a.get(1).z), g = Math.sin(a.get(1).x),
f = Math.sin(a.get(1).y), h = Math.sin(a.get(1).z);
this.rawData.set(0, d * e * c[0]);
this.rawData.set(1, d * h * c[1]);
this.rawData.set(2, -f * c[2]);
this.rawData.set(3, 0);
this.rawData.set(4, (g * f * e - b * h) * c[4]);
this.rawData.set(5, (g * f * h + b * e) * c[5]);
this.rawData.set(6, g * d * c[6]);
this.rawData.set(7, 0);
this.rawData.set(8, (b * f * e + g * h) * c[8]);
this.rawData.set(9, (b * f * h - g * e) * c[9]);
this.rawData.set(10,
b * d * c[10])
} else d = a.get(1).x, e = a.get(1).y, g = a.get(1).z, f = a.get(1).w, 0 == b && (d *= Math.sin(f / 2), e *= Math.sin(f / 2), g *= Math.sin(f / 2), f = Math.cos(f / 2)), this.rawData.set(0, (1 - 2 * e * e - 2 * g * g) * c[0]), this.rawData.set(1, (2 * d * e + 2 * f * g) * c[1]), this.rawData.set(2, (2 * d * g - 2 * f * e) * c[2]), this.rawData.set(3, 0), this.rawData.set(4, (2 * d * e - 2 * f * g) * c[4]), this.rawData.set(5, (1 - 2 * d * d - 2 * g * g) * c[5]), this.rawData.set(6, (2 * e * g + 2 * f * d) * c[6]), this.rawData.set(7, 0), this.rawData.set(8, (2 * d * g + 2 * f * e) * c[8]), this.rawData.set(9, (2 * e * g - 2 * f * d) * c[9]),
this.rawData.set(10, (1 - 2 * d * d - 2 * e * e) * c[10]);
this.rawData.set(11, 0);
this.rawData.set(12, a.get(0).x);
this.rawData.set(13, a.get(0).y);
this.rawData.set(14, a.get(0).z);
this.rawData.set(15, 1);
0 == a.get(2).x && this.rawData.set(0, 1E-15);
0 == a.get(2).y && this.rawData.set(5, 1E-15);
0 == a.get(2).z && this.rawData.set(10, 1E-15);
return !(0 == a.get(2).x || 0 == a.get(2).y || 0 == a.get(2).y)
},
transformVector: function (a) {
var b = a.x, c = a.y;
a = a.z;
return new td(b * this.rawData.get(0) + c * this.rawData.get(4) + a * this.rawData.get(8) + this.rawData.get(12),
b * this.rawData.get(1) + c * this.rawData.get(5) + a * this.rawData.get(9) + this.rawData.get(13), b * this.rawData.get(2) + c * this.rawData.get(6) + a * this.rawData.get(10) + this.rawData.get(14), b * this.rawData.get(3) + c * this.rawData.get(7) + a * this.rawData.get(11) + this.rawData.get(15))
},
transformVectors: function (a, b) {
for (var c = 0, d, e, g; c + 3 <= a.get_length();) d = a.get(c), e = a.get(c + 1), g = a.get(c + 2), b.set(c, d * this.rawData.get(0) + e * this.rawData.get(4) + g * this.rawData.get(8) + this.rawData.get(12)), b.set(c + 1, d * this.rawData.get(1) + e *
this.rawData.get(5) + g * this.rawData.get(9) + this.rawData.get(13)), b.set(c + 2, d * this.rawData.get(2) + e * this.rawData.get(6) + g * this.rawData.get(10) + this.rawData.get(14)), c += 3
},
transpose: function () {
var a = this.rawData.copy();
this.rawData.set(1, a.get(4));
this.rawData.set(2, a.get(8));
this.rawData.set(3, a.get(12));
this.rawData.set(4, a.get(1));
this.rawData.set(6, a.get(9));
this.rawData.set(7, a.get(13));
this.rawData.set(8, a.get(2));
this.rawData.set(9, a.get(6));
this.rawData.set(11, a.get(14));
this.rawData.set(12,
a.get(3));
this.rawData.set(13, a.get(7));
this.rawData.set(14, a.get(11))
},
get_determinant: function () {
return (this.rawData.get(0) * this.rawData.get(5) - this.rawData.get(4) * this.rawData.get(1)) * (this.rawData.get(10) * this.rawData.get(15) - this.rawData.get(14) * this.rawData.get(11)) - (this.rawData.get(0) * this.rawData.get(9) - this.rawData.get(8) * this.rawData.get(1)) * (this.rawData.get(6) * this.rawData.get(15) - this.rawData.get(14) * this.rawData.get(7)) + (this.rawData.get(0) * this.rawData.get(13) - this.rawData.get(12) *
this.rawData.get(1)) * (this.rawData.get(6) * this.rawData.get(11) - this.rawData.get(10) * this.rawData.get(7)) + (this.rawData.get(4) * this.rawData.get(9) - this.rawData.get(8) * this.rawData.get(5)) * (this.rawData.get(2) * this.rawData.get(15) - this.rawData.get(14) * this.rawData.get(3)) - (this.rawData.get(4) * this.rawData.get(13) - this.rawData.get(12) * this.rawData.get(5)) * (this.rawData.get(2) * this.rawData.get(11) - this.rawData.get(10) * this.rawData.get(3)) + (this.rawData.get(8) * this.rawData.get(13) - this.rawData.get(12) *
this.rawData.get(9)) * (this.rawData.get(2) * this.rawData.get(7) - this.rawData.get(6) * this.rawData.get(3))
},
get_position: function () {
return new td(this.rawData.get(12), this.rawData.get(13), this.rawData.get(14))
},
set_position: function (a) {
this.rawData.set(12, a.x);
this.rawData.set(13, a.y);
this.rawData.set(14, a.z);
return a
},
__class__: he,
__properties__: {
set_position: "set_position",
get_position: "get_position",
get_determinant: "get_determinant"
}
};
var sk = function (a) {
this.__colorTransform = new Pc;
this.concatenatedColorTransform =
new Pc;
this.pixelBounds = new ba;
this.__displayObject = a;
this.__hasMatrix = !0
};
k["openfl.geom.Transform"] = sk;
sk.__name__ = "openfl.geom.Transform";
sk.prototype = {
concatenatedColorTransform: null,
pixelBounds: null,
__colorTransform: null,
__displayObject: null,
__hasMatrix: null,
__hasMatrix3D: null,
get_colorTransform: function () {
return this.__colorTransform
},
set_colorTransform: function (a) {
this.__colorTransform.__equals(a, !1) || (this.__colorTransform.__copyFrom(a), null != a && this.__displayObject.set_alpha(a.alphaMultiplier),
a = this.__displayObject, a.__renderDirty || (a.__renderDirty = !0, a.__setParentRenderDirty()));
return this.__colorTransform
},
get_concatenatedMatrix: function () {
return this.__hasMatrix ? this.__displayObject.__getWorldTransform().clone() : null
},
get_matrix: function () {
return this.__hasMatrix ? this.__displayObject.__transform.clone() : null
},
set_matrix: function (a) {
if (null == a) return this.__hasMatrix = !1, null;
this.__hasMatrix = !0;
this.__hasMatrix3D = !1;
null != this.__displayObject && this.__setTransform(a.a, a.b, a.c, a.d, a.tx,
a.ty);
return a
},
get_matrix3D: function () {
if (this.__hasMatrix3D) {
var a = this.__displayObject.__transform;
return new he(Eb.toFloatVector(null, null, null, [a.a, a.b, 0, 0, a.c, a.d, 0, 0, 0, 0, 1, 0, a.tx, a.ty, 0, 1]))
}
return null
},
set_matrix3D: function (a) {
if (null == a) return this.__hasMatrix3D = !1, null;
this.__hasMatrix = !1;
this.__hasMatrix3D = !0;
this.__setTransform(a.rawData.get(0), a.rawData.get(1), a.rawData.get(5), a.rawData.get(6), a.rawData.get(12), a.rawData.get(13));
return a
},
__setTransform: function (a, b, c, d, e, g) {
if (null !=
this.__displayObject) {
var f = this.__displayObject.__transform;
if (f.a != a || f.b != b || f.c != c || f.d != d || f.tx != e || f.ty != g) {
var h = 0 == b ? a : Math.sqrt(a * a + b * b);
var l = 0 == c ? d : Math.sqrt(c * c + d * d);
this.__displayObject.__scaleX = h;
this.__displayObject.__scaleY = l;
h = 180 / Math.PI * Math.atan2(d, c) - 90;
h != this.__displayObject.__rotation && (this.__displayObject.__rotation = h, h *= Math.PI / 180, this.__displayObject.__rotationSine = Math.sin(h), this.__displayObject.__rotationCosine = Math.cos(h));
f.a = a;
f.b = b;
f.c = c;
f.d = d;
f.tx = e;
f.ty = g;
this.__displayObject.__setTransformDirty()
}
}
},
__class__: sk,
__properties__: {
set_matrix3D: "set_matrix3D",
get_matrix3D: "get_matrix3D",
set_matrix: "set_matrix",
get_matrix: "get_matrix",
get_concatenatedMatrix: "get_concatenatedMatrix",
set_colorTransform: "set_colorTransform",
get_colorTransform: "get_colorTransform"
}
};
var td = function (a, b, c, d) {
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
null == a && (a = 0);
this.w = d;
this.x = a;
this.y = b;
this.z = c
};
k["openfl.geom.Vector3D"] = td;
td.__name__ = "openfl.geom.Vector3D";
td.__properties__ = {
get_Z_AXIS: "get_Z_AXIS", get_Y_AXIS: "get_Y_AXIS",
get_X_AXIS: "get_X_AXIS"
};
td.angleBetween = function (a, b) {
var c = a.get_length(), d = b.get_length();
a = a.dotProduct(b);
0 != c && (a /= c);
0 != d && (a /= d);
return Math.acos(a)
};
td.distance = function (a, b) {
var c = b.x - a.x, d = b.y - a.y;
a = b.z - a.z;
return Math.sqrt(c * c + d * d + a * a)
};
td.get_X_AXIS = function () {
return new td(1, 0, 0)
};
td.get_Y_AXIS = function () {
return new td(0, 1, 0)
};
td.get_Z_AXIS = function () {
return new td(0, 0, 1)
};
td.prototype = {
w: null, x: null, y: null, z: null, add: function (a) {
return new td(this.x + a.x, this.y + a.y, this.z + a.z)
}, clone: function () {
return new td(this.x,
this.y, this.z, this.w)
}, copyFrom: function (a) {
this.x = a.x;
this.y = a.y;
this.z = a.z
}, crossProduct: function (a) {
return new td(this.y * a.z - this.z * a.y, this.z * a.x - this.x * a.z, this.x * a.y - this.y * a.x, 1)
}, decrementBy: function (a) {
this.x -= a.x;
this.y -= a.y;
this.z -= a.z
}, dotProduct: function (a) {
return this.x * a.x + this.y * a.y + this.z * a.z
}, equals: function (a, b) {
null == b && (b = !1);
return this.x == a.x && this.y == a.y && this.z == a.z ? b ? this.w == a.w : !0 : !1
}, incrementBy: function (a) {
this.x += a.x;
this.y += a.y;
this.z += a.z
}, nearEquals: function (a, b, c) {
null ==
c && (c = !1);
return Math.abs(this.x - a.x) < b && Math.abs(this.y - a.y) < b && Math.abs(this.z - a.z) < b ? c ? Math.abs(this.w - a.w) < b : !0 : !1
}, negate: function () {
this.x *= -1;
this.y *= -1;
this.z *= -1
}, normalize: function () {
var a = this.get_length();
0 != a && (this.x /= a, this.y /= a, this.z /= a);
return a
}, project: function () {
this.x /= this.w;
this.y /= this.w;
this.z /= this.w
}, scaleBy: function (a) {
this.x *= a;
this.y *= a;
this.z *= a
}, setTo: function (a, b, c) {
this.x = a;
this.y = b;
this.z = c
}, subtract: function (a) {
return new td(this.x - a.x, this.y - a.y, this.z - a.z)
},
toString: function () {
return "Vector3D(" + this.x + ", " + this.y + ", " + this.z + ")"
}, get_length: function () {
return Math.sqrt(this.x * this.x + this.y * this.y + this.z * this.z)
}, get_lengthSquared: function () {
return this.x * this.x + this.y * this.y + this.z * this.z
}, __class__: td, __properties__: {get_lengthSquared: "get_lengthSquared", get_length: "get_length"}
};
var gp = function () {
};
k["openfl.media.ID3Info"] = gp;
gp.__name__ = "openfl.media.ID3Info";
gp.prototype = {
album: null, artist: null, comment: null, genre: null, songName: null, track: null, year: null,
__class__: gp
};
var Cf = function (a, b) {
jb.call(this, this);
this.bytesTotal = this.bytesLoaded = 0;
this.isBuffering = !1;
this.url = null;
null != a && this.load(a, b)
};
k["openfl.media.Sound"] = Cf;
Cf.__name__ = "openfl.media.Sound";
Cf.fromAudioBuffer = function (a) {
var b = new Cf;
b.__buffer = a;
return b
};
Cf.fromFile = function (a) {
return Cf.fromAudioBuffer(Zc.fromFile(a))
};
Cf.loadFromFile = function (a) {
return Zc.loadFromFile(a).then(function (a) {
return ob.withValue(Cf.fromAudioBuffer(a))
})
};
Cf.loadFromFiles = function (a) {
return Zc.loadFromFiles(a).then(function (a) {
return ob.withValue(Cf.fromAudioBuffer(a))
})
};
Cf.__super__ = jb;
Cf.prototype = u(jb.prototype, {
bytesLoaded: null, bytesTotal: null, isBuffering: null, url: null, __buffer: null, close: function () {
null != this.__buffer && (this.__buffer.dispose(), this.__buffer = null)
}, load: function (a, b) {
var c = this;
this.url = a.url;
a = ta.getLibrary("default");
if (null != a && Object.prototype.hasOwnProperty.call(a.cachedAudioBuffers.h, this.url)) this.AudioBuffer_onURLLoad(a.cachedAudioBuffers.h[this.url]); else Zc.loadFromFile(this.url).onComplete(q(this, this.AudioBuffer_onURLLoad)).onError(function (a) {
c.AudioBuffer_onURLLoad(null)
})
},
loadCompressedDataFromByteArray: function (a, b) {
if (null == a || 0 >= b) this.dispatchEvent(new sg("ioError")); else {
if (Ba.gt(a.position, 0) || Ba.gt(Fb.get_length(a), b)) {
var c = b;
null == c && (c = 0);
var d = new uc(c), e = a.position;
c = b;
null == c && (c = 0);
null == e && (e = 0);
d.writeBytes(a, e, c);
a = d
}
this.__buffer = Zc.fromBytes(Fb.toBytes(a));
null == this.__buffer ? this.dispatchEvent(new sg("ioError")) : this.dispatchEvent(new oa("complete"))
}
}, loadPCMFromByteArray: function (a, b, c, d, e) {
null == e && (e = 44100);
null == d && (d = !0);
null == c && (c = "float");
if (null == a) this.dispatchEvent(new sg("ioError")); else {
c = "float" == c ? 32 : 16;
d = d ? 2 : 1;
b = c / 8 * d * b | 0;
if (Ba.gt(a.position, 0) || Ba.gt(Fb.get_length(a), b)) {
var g = b;
null == g && (g = 0);
var f = g = new uc(g), h = a.position;
g = b;
null == g && (g = 0);
null == h && (h = 0);
f.writeBytes(a, h, g);
a = f
}
b = new Zc;
b.bitsPerSample = c;
b.channels = d;
a = Fb.toArrayBuffer(a);
g = null != a ? new Uint8Array(a, 0) : null;
b.data = g;
b.sampleRate = e | 0;
this.__buffer = b;
this.dispatchEvent(new oa("complete"))
}
}, play: function (a, b, c) {
null == b && (b = 0);
null == a && (a = 0);
if (null == this.__buffer ||
32 <= xd.__soundChannels.length) return null;
c = null == c ? new of : c.clone();
var d = xd.__soundTransform.pan + c.pan;
1 < d && (d = 1);
-1 > d && (d = -1);
var e = xd.__soundTransform.volume * c.volume, g = new Tj(this.__buffer);
g.offset = a | 0;
1 < b && g.set_loops(b - 1);
g.set_gain(e);
0 != d && g.set_pan(d);
return new hn(g, c)
}, get_id3: function () {
return new gp
}, get_length: function () {
return null != this.__buffer ? 1E3 * this.__buffer.get_src().duration() | 0 : 0
}, AudioBuffer_onURLLoad: function (a) {
null == a ? this.dispatchEvent(new sg("ioError")) : (this.__buffer =
a, this.dispatchEvent(new oa("complete")))
}, __class__: Cf, __properties__: {get_length: "get_length", get_id3: "get_id3"}
});
var hn = function (a, b) {
jb.call(this, this);
this.rightPeak = this.leftPeak = 1;
this.__soundTransform = null != b ? b : new of;
null != a && (this.__source = a, this.__source.onComplete.add(q(this, this.source_onComplete)), this.__isValid = !0, this.__source.play());
xd.__registerSoundChannel(this)
};
k["openfl.media.SoundChannel"] = hn;
hn.__name__ = "openfl.media.SoundChannel";
hn.__super__ = jb;
hn.prototype = u(jb.prototype,
{
leftPeak: null,
rightPeak: null,
__isValid: null,
__soundTransform: null,
__source: null,
stop: function () {
xd.__unregisterSoundChannel(this);
this.__isValid && (this.__source.stop(), this.__dispose())
},
__dispose: function () {
this.__isValid && (this.__source.onComplete.remove(q(this, this.source_onComplete)), this.__source.dispose(), this.__source = null, this.__isValid = !1)
},
__updateTransform: function () {
this.set_soundTransform(this.get_soundTransform())
},
get_position: function () {
return this.__isValid ? this.__source.get_currentTime() +
this.__source.offset : 0
},
set_position: function (a) {
if (!this.__isValid) return 0;
this.__source.set_currentTime((a | 0) - this.__source.offset);
return a
},
get_soundTransform: function () {
return this.__soundTransform.clone()
},
set_soundTransform: function (a) {
if (null != a) {
this.__soundTransform.pan = a.pan;
this.__soundTransform.volume = a.volume;
var b = xd.__soundTransform.pan + this.__soundTransform.pan;
-1 > b && (b = -1);
1 < b && (b = 1);
var c = xd.__soundTransform.volume * this.__soundTransform.volume;
this.__isValid && (this.__source.set_gain(c),
0 == b && null == this.__source.get_pan() || this.__source.set_pan(b))
}
return a
},
source_onComplete: function () {
xd.__unregisterSoundChannel(this);
this.__dispose();
this.dispatchEvent(new oa("soundComplete"))
},
__class__: hn,
__properties__: {
set_soundTransform: "set_soundTransform",
get_soundTransform: "get_soundTransform",
set_position: "set_position",
get_position: "get_position"
}
});
var Rr = function (a, b) {
null == b && (b = !1);
null == a && (a = 1E3);
this.bufferTime = a;
this.checkPolicyFile = b
};
k["openfl.media.SoundLoaderContext"] = Rr;
Rr.__name__ = "openfl.media.SoundLoaderContext";
Rr.prototype = {bufferTime: null, checkPolicyFile: null, __class__: Rr};
var xd = function () {
};
k["openfl.media.SoundMixer"] = xd;
xd.__name__ = "openfl.media.SoundMixer";
xd.__properties__ = {set_soundTransform: "set_soundTransform", get_soundTransform: "get_soundTransform"};
xd.areSoundsInaccessible = function () {
return !1
};
xd.stopAll = function () {
for (var a = 0, b = xd.__soundChannels; a < b.length;) {
var c = b[a];
++a;
c.stop()
}
};
xd.__registerSoundChannel = function (a) {
xd.__soundChannels.push(a)
};
xd.__unregisterSoundChannel = function (a) {
K.remove(xd.__soundChannels, a)
};
xd.get_soundTransform = function () {
return xd.__soundTransform
};
xd.set_soundTransform = function (a) {
xd.__soundTransform = a.clone();
for (var b = 0, c = xd.__soundChannels; b < c.length;) {
var d = c[b];
++b;
d.__updateTransform()
}
return a
};
var jn = function (a, b) {
null == b && (b = 240);
null == a && (a = 320);
Ga.call(this);
this.__drawableType = 8;
this.__width = a;
this.__height = b;
this.__textureTime = -1;
this.smoothing = !1;
this.deblocking = 0
};
k["openfl.media.Video"] = jn;
jn.__name__ =
"openfl.media.Video";
jn.__super__ = Ga;
jn.prototype = u(Ga.prototype, {
deblocking: null,
smoothing: null,
__active: null,
__buffer: null,
__bufferAlpha: null,
__bufferColorTransform: null,
__bufferContext: null,
__bufferData: null,
__dirty: null,
__height: null,
__indexBuffer: null,
__indexBufferContext: null,
__indexBufferData: null,
__stream: null,
__texture: null,
__textureTime: null,
__uvRect: null,
__vertexBuffer: null,
__vertexBufferContext: null,
__vertexBufferData: null,
__width: null,
attachNetStream: function (a) {
this.__stream = a;
null ==
this.__stream || null == this.__stream.__video || this.__stream.__closed || this.__stream.__video.play()
},
clear: function () {
},
__enterFrame: function (a) {
this.__renderable && null != this.__stream && !this.__renderDirty && (this.__renderDirty = !0, this.__setParentRenderDirty())
},
__getBounds: function (a, b) {
var c = ba.__pool.get();
c.setTo(0, 0, this.__width, this.__height);
c.__transform(c, b);
a.__expand(c.x, c.y, c.width, c.height);
ba.__pool.release(c)
},
__getIndexBuffer: function (a) {
if (null == this.__indexBuffer || this.__indexBufferContext !=
a.__context) this.__indexBufferData = new Uint16Array(6), this.__indexBufferData[0] = 0, this.__indexBufferData[1] = 1, this.__indexBufferData[2] = 2, this.__indexBufferData[3] = 2, this.__indexBufferData[4] = 1, this.__indexBufferData[5] = 3, this.__indexBufferContext = a.__context, this.__indexBuffer = a.createIndexBuffer(6), this.__indexBuffer.uploadFromTypedArray(this.__indexBufferData);
return this.__indexBuffer
},
__getTexture: function (a) {
if (null == this.__stream || null == this.__stream.__video) return null;
var b = a.__context.webgl,
c = b.RGBA, d = b.RGBA;
this.__stream.__closed || this.__stream.__video.currentTime == this.__textureTime || (null == this.__texture && (this.__texture = a.createRectangleTexture(this.__stream.__video.videoWidth, this.__stream.__video.videoHeight, 1, !1)), a.__bindGLTexture2D(this.__texture.__textureID), fc.texImage2D(b, b.TEXTURE_2D, 0, c, d, b.UNSIGNED_BYTE, this.__stream.__video), this.__textureTime = this.__stream.__video.currentTime);
return this.__texture
},
__getVertexBuffer: function (a) {
if (null == this.__vertexBuffer || this.__vertexBufferContext !=
a.__context) this.__vertexBufferData = new Float32Array(20), this.__vertexBufferData[0] = this.get_width(), this.__vertexBufferData[1] = this.get_height(), this.__vertexBufferData[3] = 1, this.__vertexBufferData[4] = 1, this.__vertexBufferData[6] = this.get_height(), this.__vertexBufferData[9] = 1, this.__vertexBufferData[10] = this.get_width(), this.__vertexBufferData[13] = 1, this.__vertexBufferContext = a.__context, this.__vertexBuffer = a.createVertexBuffer(3, 5), this.__vertexBuffer.uploadFromTypedArray($g.toArrayBufferView(this.__vertexBufferData));
return this.__vertexBuffer
},
__hitTest: function (a, b, c, d, e, g) {
if (!g.get_visible() || this.__isMask || null != this.get_mask() && !this.get_mask().__hitTestMask(a, b)) return !1;
this.__getRenderTransform();
var f = this.__renderTransform, h = f.a * f.d - f.b * f.c;
c = 0 == h ? -f.tx : 1 / h * (f.c * (f.ty - b) + f.d * (a - f.tx));
f = this.__renderTransform;
h = f.a * f.d - f.b * f.c;
a = 0 == h ? -f.ty : 1 / h * (f.a * (b - f.ty) + f.b * (f.tx - a));
return 0 < c && 0 < a && c <= this.__width && a <= this.__height ? (null == d || e || d.push(g), !0) : !1
},
__hitTestMask: function (a, b) {
var c = na.__pool.get();
c.setTo(a, b);
this.__globalToLocal(c, c);
a = 0 < c.x && 0 < c.y && c.x <= this.__width && c.y <= this.__height;
na.__pool.release(c);
return a
},
get_height: function () {
return this.__height * this.get_scaleY()
},
set_height: function (a) {
if (1 != this.get_scaleY() || a != this.__height) this.__setTransformDirty(), this.__dirty = !0;
this.set_scaleY(1);
return this.__height = a
},
get_videoHeight: function () {
return null != this.__stream && null != this.__stream.__video ? this.__stream.__video.videoHeight | 0 : 0
},
get_videoWidth: function () {
return null != this.__stream &&
null != this.__stream.__video ? this.__stream.__video.videoWidth | 0 : 0
},
get_width: function () {
return this.__width * this.__scaleX
},
set_width: function (a) {
if (1 != this.__scaleX || this.__width != a) this.__setTransformDirty(), this.__dirty = !0;
this.set_scaleX(1);
return this.__width = a
},
__class__: jn,
__properties__: u(Ga.prototype.__properties__, {
get_videoWidth: "get_videoWidth",
get_videoHeight: "get_videoHeight"
})
});
var gk = function () {
jb.call(this)
};
k["openfl.net.NetConnection"] = gk;
gk.__name__ = "openfl.net.NetConnection";
gk.__super__ =
jb;
gk.prototype = u(jb.prototype, {
connect: function (a, b, c, d, e, f) {
if (null != a) throw I.thrown('Error: Can only connect in "HTTP streaming" mode');
this.dispatchEvent(new ji("netStatus", !1, !0, {code: "NetConnection.Connect.Success"}))
}, __class__: gk
});
var kn = function (a, b) {
jb.call(this);
this.__connection = a;
this.__soundTransform = new of;
this.__video = window.document.createElement("video");
this.__video.setAttribute("playsinline", "");
this.__video.setAttribute("webkit-playsinline", "");
this.__video.setAttribute("crossorigin",
"anonymous");
this.__video.addEventListener("error", q(this, this.video_onError), !1);
this.__video.addEventListener("waiting", q(this, this.video_onWaiting), !1);
this.__video.addEventListener("ended", q(this, this.video_onEnd), !1);
this.__video.addEventListener("pause", q(this, this.video_onPause), !1);
this.__video.addEventListener("seeking", q(this, this.video_onSeeking), !1);
this.__video.addEventListener("playing", q(this, this.video_onPlaying), !1);
this.__video.addEventListener("timeupdate", q(this, this.video_onTimeUpdate),
!1);
this.__video.addEventListener("loadstart", q(this, this.video_onLoadStart), !1);
this.__video.addEventListener("stalled", q(this, this.video_onStalled), !1);
this.__video.addEventListener("durationchanged", q(this, this.video_onDurationChanged), !1);
this.__video.addEventListener("canplay", q(this, this.video_onCanPlay), !1);
this.__video.addEventListener("canplaythrough", q(this, this.video_onCanPlayThrough), !1);
this.__video.addEventListener("loadedmetadata", q(this, this.video_onLoadMetaData), !1)
};
k["openfl.net.NetStream"] =
kn;
kn.__name__ = "openfl.net.NetStream";
kn.__super__ = jb;
kn.prototype = u(jb.prototype, {
audioCodec: null,
bufferLength: null,
bufferTime: null,
bytesLoaded: null,
bytesTotal: null,
checkPolicyFile: null,
client: null,
currentFPS: null,
decodedFrames: null,
liveDelay: null,
objectEncoding: null,
time: null,
videoCode: null,
__closed: null,
__connection: null,
__soundTransform: null,
__timer: null,
__video: null,
close: function () {
null != this.__video && (this.__closed = !0, this.__video.pause(), this.__video.src = "", this.time = 0)
},
dispose: function () {
this.close();
this.__video = null
},
pause: function () {
null != this.__video && this.__video.pause()
},
play: function (a, b, c, d, e, f) {
null != this.__video && (this.__video.volume = xd.__soundTransform.volume * this.__soundTransform.volume, "string" == typeof a ? this.__video.src = a : this.__video.srcObject = a, this.__video.play())
},
requestVideoStatus: function () {
var a = this;
null != this.__video && (null == this.__timer && (this.__timer = new Ve(1)), this.__timer.run = function () {
a.__video.paused ? a.__playStatus("NetStream.Play.pause") : a.__playStatus("NetStream.Play.playing");
a.__timer.stop()
})
},
resume: function () {
null != this.__video && this.__video.play()
},
seek: function (a) {
null != this.__video && (0 > a ? a = 0 : a > this.__video.duration && (a = this.__video.duration), this.__dispatchStatus("NetStream.SeekStart.Notify"), this.__video.currentTime = a)
},
togglePause: function () {
null != this.__video && (this.__video.paused ? this.__video.play() : this.__video.pause())
},
__dispatchStatus: function (a) {
a = new ji("netStatus", !1, !1, {code: a});
this.__connection.dispatchEvent(a);
this.dispatchEvent(a)
},
__playStatus: function (a) {
if (null !=
this.__video && null != this.client) try {
var b = this.client.onPlayStatus;
b({
code: a,
duration: this.__video.duration,
position: this.__video.currentTime,
speed: this.__video.playbackRate,
start: this.__video.startTime
})
} catch (c) {
ra.lastError = c
}
},
video_onCanPlay: function (a) {
this.__playStatus("NetStream.Play.canplay")
},
video_onCanPlayThrough: function (a) {
this.__playStatus("NetStream.Play.canplaythrough")
},
video_onDurationChanged: function (a) {
this.__playStatus("NetStream.Play.durationchanged")
},
video_onEnd: function (a) {
this.__dispatchStatus("NetStream.Play.Stop");
this.__dispatchStatus("NetStream.Play.Complete");
this.__playStatus("NetStream.Play.Complete")
},
video_onError: function (a) {
this.__dispatchStatus("NetStream.Play.Stop");
this.__playStatus("NetStream.Play.error")
},
video_onLoadMetaData: function (a) {
if (null != this.__video && null != this.client) try {
var b = this.client.onMetaData;
b({
width: this.__video.videoWidth,
height: this.__video.videoHeight,
duration: this.__video.duration
})
} catch (c) {
ra.lastError = c
}
},
video_onLoadStart: function (a) {
this.__playStatus("NetStream.Play.loadstart")
},
video_onPause: function (a) {
this.__playStatus("NetStream.Play.pause")
},
video_onPlaying: function (a) {
this.__dispatchStatus("NetStream.Play.Start");
this.__playStatus("NetStream.Play.playing")
},
video_onSeeking: function (a) {
this.__playStatus("NetStream.Play.seeking");
this.__dispatchStatus("NetStream.Seek.Complete")
},
video_onStalled: function (a) {
this.__playStatus("NetStream.Play.stalled")
},
video_onTimeUpdate: function (a) {
null != this.__video && (this.time = this.__video.currentTime, this.__playStatus("NetStream.Play.timeupdate"))
},
video_onWaiting: function (a) {
this.__playStatus("NetStream.Play.waiting")
},
get_soundTransform: function () {
return this.__soundTransform.clone()
},
set_soundTransform: function (a) {
null != a && (this.__soundTransform.pan = a.pan, this.__soundTransform.volume = a.volume, null != this.__video && (this.__video.volume = xd.__soundTransform.volume * this.__soundTransform.volume));
return a
},
get_speed: function () {
return null != this.__video ? this.__video.playbackRate : 1
},
set_speed: function (a) {
return null != this.__video ? this.__video.playbackRate =
a : a
},
__class__: kn,
__properties__: {
set_speed: "set_speed",
get_speed: "get_speed",
set_soundTransform: "set_soundTransform",
get_soundTransform: "get_soundTransform"
}
});
var qd = function () {
jb.call(this);
this.client = this;
this.objectEncoding = qd.defaultObjectEncoding
};
k["openfl.net.SharedObject"] = qd;
qd.__name__ = "openfl.net.SharedObject";
qd.getLocal = function (a, b, c) {
c = " ~%&\\;:\"',<>?#".split("");
var d = !0;
if (null == a || "" == a) d = !1; else for (var e = 0; e < c.length;) {
var f = c[e];
++e;
if (-1 < a.indexOf(f)) {
d = !1;
break
}
}
if (!d) throw I.thrown(new id("Error #2134: Cannot create SharedObject."));
null == qd.__sharedObjects && (qd.__sharedObjects = new xa, null != zd.current && zd.current.onExit.add(qd.application_onExit));
c = b + "/" + a;
if (!Object.prototype.hasOwnProperty.call(qd.__sharedObjects.h, c)) {
d = null;
try {
var h = Zg.getLocalStorage();
null == b && (null != h && (d = h.getItem(window.location.href + ":" + a), h.removeItem(window.location.href + ":" + a)), b = window.location.pathname);
null != h && null == d && (d = h.getItem(b + ":" + a))
} catch (p) {
ra.lastError = p
}
h = new qd;
h.data = {};
h.__localPath = b;
h.__name = a;
if (null != d && "" != d) try {
var l = new Oe(d);
l.setResolver({resolveEnum: Ha.resolveEnum, resolveClass: qd.__resolveClass});
h.data = l.unserialize()
} catch (p) {
ra.lastError = p
}
qd.__sharedObjects.h[c] = h
}
return qd.__sharedObjects.h[c]
};
qd.getRemote = function (a, b, c, d) {
Ic.notImplemented({
fileName: "openfl/net/SharedObject.hx",
lineNumber: 808,
className: "openfl.net.SharedObject",
methodName: "getRemote"
});
return null
};
qd.__getPath = function (a, b) {
a = $a.get_applicationStorageDirectory() + "/" + a + "/";
b = T.replace(b, "//", "/");
b = T.replace(b, "//", "/");
T.startsWith(b, "/") &&
(b = K.substr(b, 1, null));
T.endsWith(b, "/") && (b = b.substring(0, b.length - 1));
if (-1 < b.indexOf("/")) {
var c = b.split("/");
b = "";
for (var d = 0, e = c.length - 1; d < e;) {
var f = d++;
b += "#" + c[f] + "/"
}
b += c[c.length - 1]
}
return a + b + ".sol"
};
qd.__mkdir = function (a) {
};
qd.__resolveClass = function (a) {
return null != a ? (T.startsWith(a, "neash.") && (a = T.replace(a, "neash.", "openfl.")), T.startsWith(a, "native.") && (a = T.replace(a, "native.", "openfl.")), T.startsWith(a, "flash.") && (a = T.replace(a, "flash.", "openfl.")), T.startsWith(a, "openfl._v2.") &&
(a = T.replace(a, "openfl._v2.", "openfl.")), T.startsWith(a, "openfl._legacy.") && (a = T.replace(a, "openfl._legacy.", "openfl.")), k[a]) : null
};
qd.application_onExit = function (a) {
a = qd.__sharedObjects.h;
for (var b = Object.keys(a), c = b.length, d = 0; d < c;) a[b[d++]].flush()
};
qd.__super__ = jb;
qd.prototype = u(jb.prototype, {
client: null,
data: null,
fps: null,
objectEncoding: null,
__localPath: null,
__name: null,
clear: function () {
this.data = {};
try {
var a = Zg.getLocalStorage();
null != a && a.removeItem(this.__localPath + ":" + this.__name)
} catch (b) {
ra.lastError =
b
}
},
close: function () {
},
connect: function (a, b) {
Ic.notImplemented({
fileName: "openfl/net/SharedObject.hx",
lineNumber: 392,
className: "openfl.net.SharedObject",
methodName: "connect"
})
},
flush: function (a) {
if (0 == V.fields(this.data).length) return 0;
a = Ge.run(this.data);
try {
var b = Zg.getLocalStorage();
null != b && (b.removeItem(this.__localPath + ":" + this.__name), b.setItem(this.__localPath + ":" + this.__name, a))
} catch (c) {
return ra.lastError = c, 1
}
return 0
},
send: function (a) {
Ic.notImplemented({
fileName: "openfl/net/SharedObject.hx",
lineNumber: 824, className: "openfl.net.SharedObject", methodName: "send"
})
},
setDirty: function (a) {
},
setProperty: function (a, b) {
null != this.data && (this.data[a] = b)
},
get_size: function () {
try {
var a = Ge.run(this.data);
return lb.ofString(a).length
} catch (b) {
return ra.lastError = b, 0
}
},
__class__: qd,
__properties__: {get_size: "get_size"}
});
var uh = function (a) {
jb.call(this);
this.bytesTotal = this.bytesLoaded = 0;
this.dataFormat = 1;
null != a && this.load(a)
};
k["openfl.net.URLLoader"] = uh;
uh.__name__ = "openfl.net.URLLoader";
uh.__super__ =
jb;
uh.prototype = u(jb.prototype, {
bytesLoaded: null,
bytesTotal: null,
data: null,
dataFormat: null,
__httpRequest: null,
close: function () {
null != this.__httpRequest && this.__httpRequest.cancel()
},
load: function (a) {
var b = this;
if (0 == this.dataFormat) {
var c = new ym;
this.__prepareRequest(c, a);
c.load().onProgress(q(this, this.httpRequest_onProgress)).onError(q(this, this.httpRequest_onError)).onComplete(function (a) {
b.__dispatchStatus();
b.data = a;
a = new oa("complete");
b.dispatchEvent(a)
})
} else c = new Uj, this.__prepareRequest(c,
a), c.load().onProgress(q(this, this.httpRequest_onProgress)).onError(q(this, this.httpRequest_onError)).onComplete(function (a) {
b.__dispatchStatus();
b.data = a;
a = new oa("complete");
b.dispatchEvent(a)
})
},
__dispatchStatus: function () {
var a = new ii("httpStatus", !1, !1, this.__httpRequest.responseStatus);
a.responseURL = this.__httpRequest.uri;
var b = [];
if (this.__httpRequest.enableResponseHeaders && null != this.__httpRequest.responseHeaders) for (var c = 0, d = this.__httpRequest.responseHeaders; c < d.length;) {
var e = d[c];
++c;
b.push(new hp(e.name, e.value))
}
a.responseHeaders = b;
this.dispatchEvent(a)
},
__prepareRequest: function (a, b) {
this.__httpRequest = a;
this.__httpRequest.uri = b.url;
this.__httpRequest.method = b.method;
if (null != b.data) if (Ha.typeof(b.data) == xb.TObject) {
var c = V.fields(b.data);
for (a = 0; a < c.length;) {
var d = c[a];
++a;
this.__httpRequest.formData.h[d] = V.field(b.data, d)
}
} else this.__httpRequest.data = b.data instanceof lb ? b.data : lb.ofString(z.string(b.data));
this.__httpRequest.contentType = b.contentType;
if (null != b.requestHeaders) for (a =
0, c = b.requestHeaders; a < c.length;) d = c[a], ++a, this.__httpRequest.headers.push(new im(d.name, d.value));
this.__httpRequest.followRedirects = b.followRedirects;
this.__httpRequest.timeout = b.idleTimeout | 0;
this.__httpRequest.withCredentials = b.manageCookies;
this.__httpRequest.userAgent = b.userAgent;
this.__httpRequest.enableResponseHeaders = !0
},
httpRequest_onError: function (a) {
this.__dispatchStatus();
var b = 403 == a ? new bj("securityError") : new sg("ioError");
b.text = z.string(a);
this.dispatchEvent(b)
},
httpRequest_onProgress: function (a,
b) {
var c = new Hg("progress");
c.bytesLoaded = a;
c.bytesTotal = b;
this.dispatchEvent(c)
},
__class__: uh
});
var Vg = function (a) {
null != a && (this.url = a);
this.contentType = null;
this.followRedirects = Ih.followRedirects;
this.idleTimeout = 0 < Ih.idleTimeout ? Ih.idleTimeout : 3E4;
this.manageCookies = Ih.manageCookies;
this.method = "GET";
this.requestHeaders = [];
this.userAgent = Ih.userAgent
};
k["openfl.net.URLRequest"] = Vg;
Vg.__name__ = "openfl.net.URLRequest";
Vg.prototype = {
contentType: null, data: null, followRedirects: null, idleTimeout: null,
manageCookies: null, method: null, requestHeaders: null, url: null, userAgent: null, __class__: Vg
};
var Ih = function () {
};
k["openfl.net.URLRequestDefaults"] = Ih;
Ih.__name__ = "openfl.net.URLRequestDefaults";
var hp = function (a, b) {
null == b && (b = "");
null == a && (a = "");
this.name = a;
this.value = b
};
k["openfl.net.URLRequestHeader"] = hp;
hp.__name__ = "openfl.net.URLRequestHeader";
hp.prototype = {name: null, value: null, __class__: hp};
var $r = {
_new: function (a) {
var b = {};
null != a && $r.decode(b, a);
return b
}, decode: function (a, b) {
for (var c = V.fields(a),
d = 0; d < c.length;) {
var e = c[d];
++d;
V.deleteField(a, e)
}
c = b.split(";").join("&").split("&");
for (d = 0; d < c.length;) if (e = c[d], ++d, b = e.indexOf("="), 0 < b) {
var f = K.substr(e, 0, b);
f = decodeURIComponent(f.split("+").join(" "));
e = K.substr(e, b + 1, null);
a[f] = decodeURIComponent(e.split("+").join(" "))
} else 0 != b && (a[decodeURIComponent(e.split("+").join(" "))] = "")
}, toString: function (a) {
for (var b = [], c = V.fields(a), d = 0; d < c.length;) {
var e = c[d];
++d;
var f = V.field(a, e);
if (-1 < e.indexOf("[]") && f instanceof Array) {
var h = [];
for (f =
H(f); f.hasNext();) {
var l = f.next();
h.push(encodeURIComponent(l))
}
h = h.join("&" + e + "=");
b.push(encodeURIComponent(e) + "=" + h)
} else b.push(encodeURIComponent(e) + "=" + encodeURIComponent(f))
}
return b.join("&")
}
}, Si = function (a) {
this.parentDomain = null != a ? a : Si.currentDomain
};
k["openfl.system.ApplicationDomain"] = Si;
Si.__name__ = "openfl.system.ApplicationDomain";
Si.prototype = {
parentDomain: null, getDefinition: function (a) {
return k[a]
}, hasDefinition: function (a) {
return null != k[a]
}, __class__: Si
};
var Cc = function () {
};
k["openfl.system.Capabilities"] = Cc;
Cc.__name__ = "openfl.system.Capabilities";
Cc.__properties__ = {
get_version: "get_version",
get_screenResolutionY: "get_screenResolutionY",
get_screenResolutionX: "get_screenResolutionX",
get_screenDPI: "get_screenDPI",
get_pixelAspectRatio: "get_pixelAspectRatio",
get_os: "get_os",
get_manufacturer: "get_manufacturer",
get_language: "get_language",
get_cpuArchitecture: "get_cpuArchitecture"
};
Cc.hasMultiChannelAudio = function (a) {
return !1
};
Cc.get_cpuArchitecture = function () {
return "x86"
};
Cc.get_language = function () {
var a = Xe.get_language(Xe.get_currentLocale());
if (null != a) switch (a = a.toLowerCase(), a) {
case "cs":
case "da":
case "de":
case "en":
case "es":
case "fi":
case "fr":
case "hu":
case "it":
case "ja":
case "ko":
case "nb":
case "nl":
case "pl":
case "pt":
case "ru":
case "sv":
case "tr":
return a;
case "zh":
a = Xe.get_region(Xe.get_currentLocale());
if (null != a) switch (a.toUpperCase()) {
case "HANT":
case "TW":
return "zh-TW"
}
return "zh-CN";
default:
return "xu"
}
return "en"
};
Cc.get_manufacturer = function () {
var a =
$a.get_platformName();
return "OpenFL" + (null != a ? " " + a : "")
};
Cc.get_os = function () {
var a = $a.get_platformLabel();
return null != a ? a : ""
};
Cc.get_pixelAspectRatio = function () {
return 1
};
Cc.get_screenDPI = function () {
var a = null != Ic.application ? Ic.application.__window : null, b = 72;
null != a && (b *= a.__scale);
return b
};
Cc.get_screenResolutionX = function () {
var a = Ic.current.stage, b = 0;
if (null == a) return 0;
if (null != a.window) {
var c = a.window.get_display();
null != c && (b = Math.ceil(c.currentMode.width * a.window.__scale))
}
return 0 < b ? b :
a.stageWidth
};
Cc.get_screenResolutionY = function () {
var a = Ic.current.stage, b = 0;
if (null == a) return 0;
if (null != a.window) {
var c = a.window.get_display();
null != c && (b = Math.ceil(c.currentMode.height * a.window.__scale))
}
return 0 < b ? b : a.stageHeight
};
Cc.get_version = function () {
return "WEB " + (T.replace("9.1.0", ".", ",") + ",0")
};
var Sr = function (a, b, c) {
null == a && (a = !1);
this.checkPolicyFile = a;
this.securityDomain = c;
this.applicationDomain = b;
this.allowLoadBytesCodeExecution = this.allowCodeImport = !0
};
k["openfl.system.LoaderContext"] =
Sr;
Sr.__name__ = "openfl.system.LoaderContext";
Sr.prototype = {
allowCodeImport: null,
allowLoadBytesCodeExecution: null,
applicationDomain: null,
checkPolicyFile: null,
securityDomain: null,
__class__: Sr
};
var hk = function () {
};
k["openfl.system.SecurityDomain"] = hk;
hk.__name__ = "openfl.system.SecurityDomain";
hk.prototype = {__class__: hk};
var fg = function () {
};
k["openfl.system.System"] = fg;
fg.__name__ = "openfl.system.System";
fg.__properties__ = {get_vmVersion: "get_vmVersion", get_totalMemory: "get_totalMemory"};
fg.disposeXML =
function (a) {
};
fg.exit = function (a) {
$a.exit(a)
};
fg.gc = function () {
};
fg.pause = function () {
Ic.notImplemented({
fileName: "openfl/system/System.hx",
lineNumber: 213,
className: "openfl.system.System",
methodName: "pause"
})
};
fg.resume = function () {
Ic.notImplemented({
fileName: "openfl/system/System.hx",
lineNumber: 229,
className: "openfl.system.System",
methodName: "resume"
})
};
fg.setClipboard = function (a) {
oe.set_text(a)
};
fg.get_totalMemory = function () {
return window.performance && window.performance.memory ? window.performance.memory.usedJSHeapSize :
0
};
fg.get_vmVersion = function () {
return "1.0.0"
};
var Wc = function (a) {
Sd.call(this, a)
};
k["openfl.text.Font"] = Wc;
Wc.__name__ = "openfl.text.Font";
Wc.enumerateFonts = function (a) {
return Wc.__registeredFonts
};
Wc.fromBytes = function (a) {
var b = new Wc;
b.__fromBytes(Fb.toBytes(a));
return b
};
Wc.fromFile = function (a) {
var b = new Wc;
b.__fromFile(a);
return b
};
Wc.loadFromBytes = function (a) {
return Sd.loadFromBytes(Fb.toBytes(a)).then(function (a) {
var b = new Wc;
b.__fromLimeFont(a);
return ob.withValue(b)
})
};
Wc.loadFromFile = function (a) {
return Sd.loadFromFile(a).then(function (a) {
var b =
new Wc;
b.__fromLimeFont(a);
return ob.withValue(b)
})
};
Wc.loadFromName = function (a) {
return Sd.loadFromName(a).then(function (a) {
var b = new Wc;
b.__fromLimeFont(a);
return ob.withValue(b)
})
};
Wc.registerFont = function (a) {
a = null == w.getClass(a) ? w.__cast(Ha.createInstance(a, []), Wc) : w.__cast(a, Wc);
null != a && (Wc.__registeredFonts.push(a), Wc.__fontByName.h[a.name] = a)
};
Wc.__super__ = Sd;
Wc.prototype = u(Sd.prototype, {
fontStyle: null, fontType: null, __initialized: null, __fromLimeFont: function (a) {
this.__copyFrom(a)
}, __initialize: function () {
return this.__initialized
},
get_fontName: function () {
return this.name
}, set_fontName: function (a) {
return this.name = a
}, __class__: Wc, __properties__: {set_fontName: "set_fontName", get_fontName: "get_fontName"}
});
var cf = function () {
this.__renderedOnCanvasWhileOnDOM = this.__forceCachedBitmapUpdate = !1;
Bb.call(this);
this.__drawableType = 7;
this.__caretIndex = -1;
this.__displayAsPassword = !1;
this.__graphics = new $e(this);
this.__textEngine = new Wb(this);
this.__layoutDirty = !0;
this.__offsetY = this.__offsetX = 0;
this.__mouseWheelEnabled = !0;
this.__text = "";
this.doubleClickEnabled = !0;
null == cf.__defaultTextFormat && (cf.__defaultTextFormat = new Sg("Times New Roman", 12, 0, !1, !1, !1, "", "", 3, 0, 0, 0, 0), cf.__defaultTextFormat.blockIndent = 0, cf.__defaultTextFormat.bullet = !1, cf.__defaultTextFormat.letterSpacing = 0, cf.__defaultTextFormat.kerning = !1);
this.__textFormat = cf.__defaultTextFormat.clone();
this.__textEngine.textFormatRanges.push(new lf(this.__textFormat, 0, 0));
this.addEventListener("mouseDown", q(this, this.this_onMouseDown));
this.addEventListener("focusIn", q(this,
this.this_onFocusIn));
this.addEventListener("focusOut", q(this, this.this_onFocusOut));
this.addEventListener("keyDown", q(this, this.this_onKeyDown));
this.addEventListener("mouseWheel", q(this, this.this_onMouseWheel));
this.addEventListener("doubleClick", q(this, this.this_onDoubleClick))
};
k["openfl.text.TextField"] = cf;
cf.__name__ = "openfl.text.TextField";
cf.__super__ = Bb;
cf.prototype = u(Bb.prototype, {
__bounds: null,
__caretIndex: null,
__cursorTimer: null,
__dirty: null,
__displayAsPassword: null,
__domRender: null,
__inputEnabled: null,
__isHTML: null,
__layoutDirty: null,
__mouseWheelEnabled: null,
__offsetX: null,
__offsetY: null,
__selectionIndex: null,
__showCursor: null,
__text: null,
__htmlText: null,
__textEngine: null,
__textFormat: null,
__div: null,
__renderedOnCanvasWhileOnDOM: null,
__rawHtmlText: null,
__forceCachedBitmapUpdate: null,
appendText: function (a) {
null != a && "" != a && (this.__layoutDirty = this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()), this.__updateText(this.__text + a), this.__textEngine.textFormatRanges.get(this.__textEngine.textFormatRanges.get_length() -
1).end = this.__text.length, this.setSelection(this.__text.length, this.__text.length))
},
getCharBoundaries: function (a) {
if (0 > a || a > this.__text.length - 1) return null;
var b = new ba;
return this.__getCharBoundaries(a, b) ? b : null
},
getCharIndexAtPoint: function (a, b) {
if (2 >= a || a > this.get_width() + 4 || 0 >= b || b > this.get_height() + 4) return -1;
this.__updateLayout();
a += this.get_scrollH();
for (var c = 0, d = this.get_scrollV() - 1; c < d;) {
var e = c++;
b += this.__textEngine.lineHeights.get(e)
}
for (c = this.__textEngine.layoutGroups.iterator(); c.hasNext();) {
var f =
c.next();
if (b >= f.offsetY && b <= f.offsetY + f.height && a >= f.offsetX && a <= f.offsetX + f.width) {
c = b = 0;
for (d = f.positions.length; c < d;) if (e = c++, b += f.positions[e], a <= f.offsetX + b) return f.startIndex + e;
return f.endIndex
}
}
return -1
},
getFirstCharInParagraph: function (a) {
if (0 > a || a > this.get_text().length) return -1;
for (var b = this.__textEngine.getLineBreakIndex(), c = 0; -1 < b;) {
if (b < a) c = b + 1; else if (b >= a) break;
b = this.__textEngine.getLineBreakIndex(b + 1)
}
return c
},
getLineIndexAtPoint: function (a, b) {
this.__updateLayout();
if (2 >= a ||
a > this.get_width() + 4 || 0 >= b || b > this.get_height() + 4) return -1;
a = 0;
for (var c = this.get_scrollV() - 1; a < c;) {
var d = a++;
b += this.__textEngine.lineHeights.get(d)
}
for (a = this.__textEngine.layoutGroups.iterator(); a.hasNext();) if (c = a.next(), b >= c.offsetY && b <= c.offsetY + c.height) return c.lineIndex;
return -1
},
getLineIndexOfChar: function (a) {
if (0 > a || a > this.__text.length) return -1;
this.__updateLayout();
for (var b = this.__textEngine.layoutGroups.iterator(); b.hasNext();) {
var c = b.next();
if (c.startIndex <= a && c.endIndex >= a) return c.lineIndex
}
return -1
},
getLineLength: function (a) {
this.__updateLayout();
if (0 > a || a > this.__textEngine.numLines - 1) return 0;
for (var b = -1, c = -1, d = this.__textEngine.layoutGroups.iterator(); d.hasNext();) {
var e = d.next();
if (e.lineIndex == a) -1 == b && (b = e.startIndex); else if (e.lineIndex == a + 1) {
c = e.startIndex;
break
}
}
-1 == c && (c = this.__text.length);
return c - b
},
getLineMetrics: function (a) {
this.__updateLayout();
var b = this.__textEngine.lineAscents.get(a), c = this.__textEngine.lineDescents.get(a),
d = this.__textEngine.lineLeadings.get(a), e = this.__textEngine.lineHeights.get(a);
a = this.__textEngine.lineWidths.get(a);
switch (this.__textFormat.align) {
case 0:
var f = (this.__textEngine.width - a) / 2;
break;
case 1:
case 4:
f = this.__textEngine.width - a - 2;
break;
case 2:
case 3:
case 5:
f = 2
}
return new ip(f, a, e, b, c, d)
},
getLineOffset: function (a) {
this.__updateLayout();
if (0 > a || a > this.__textEngine.numLines - 1) return -1;
for (var b = this.__textEngine.layoutGroups.iterator(); b.hasNext();) {
var c = b.next();
if (c.lineIndex == a) return c.startIndex
}
return 0
},
getLineText: function (a) {
this.__updateLayout();
if (0 > a ||
a > this.__textEngine.numLines - 1) return null;
for (var b = -1, c = -1, d = this.__textEngine.layoutGroups.iterator(); d.hasNext();) {
var e = d.next();
if (e.lineIndex == a) -1 == b && (b = e.startIndex); else if (e.lineIndex == a + 1) {
c = e.startIndex;
break
}
}
-1 == c && (c = this.__text.length);
return this.__textEngine.text.substring(b, c)
},
getParagraphLength: function (a) {
if (0 > a || a > this.get_text().length) return -1;
var b = this.getFirstCharInParagraph(a);
if (a >= this.get_text().length) return this.get_text().length - b + 1;
a = this.__textEngine.getLineBreakIndex(a) +
1;
0 == a && (a = this.__text.length);
return a - b
},
getTextFormat: function (a, b) {
null == b && (b = -1);
null == a && (a = -1);
var c = null;
if (a >= this.get_text().length || -1 > a || b > this.get_text().length || -1 > b) throw I.thrown(new Jh("The supplied index is out of bounds"));
-1 == a && (a = 0);
-1 == b && (b = this.get_text().length);
if (a >= b) return new Sg;
for (var d = this.__textEngine.textFormatRanges.iterator(); d.hasNext();) {
var e = d.next();
if (e.start <= a && e.end > a || e.start < b && e.end >= b) null == c ? c = e.format.clone() : (e.format.font != c.font && (c.font = null),
e.format.size != c.size && (c.size = null), e.format.color != c.color && (c.color = null), e.format.bold != c.bold && (c.bold = null), e.format.italic != c.italic && (c.italic = null), e.format.underline != c.underline && (c.underline = null), e.format.url != c.url && (c.url = null), e.format.target != c.target && (c.target = null), e.format.align != c.align && (c.align = null), e.format.leftMargin != c.leftMargin && (c.leftMargin = null), e.format.rightMargin != c.rightMargin && (c.rightMargin = null), e.format.indent != c.indent && (c.indent = null), e.format.leading != c.leading &&
(c.leading = null), e.format.blockIndent != c.blockIndent && (c.blockIndent = null), e.format.bullet != c.bullet && (c.bullet = null), e.format.kerning != c.kerning && (c.kerning = null), e.format.letterSpacing != c.letterSpacing && (c.letterSpacing = null), e.format.tabStops != c.tabStops && (c.tabStops = null))
}
null == c && (c = new Sg);
return c
},
replaceSelectedText: function (a) {
this.__replaceSelectedText(a, !1)
},
replaceText: function (a, b, c) {
this.__replaceText(a, b, c, !1)
},
setSelection: function (a, b) {
this.__selectionIndex = a;
this.__caretIndex =
b;
this.__updateScrollV();
this.__updateScrollH();
null != this.stage && this.stage.get_focus() == this && (this.__stopCursorTimer(), this.__startCursorTimer())
},
setTextFormat: function (a, b, c) {
null == c && (c = -1);
null == b && (b = -1);
var d = this.get_text().length;
-1 == b ? (-1 == c && (c = d), b = 0) : -1 == c && (c = b + 1);
if (b != c) {
if (0 > b || 0 >= c || c < b || b >= d || c > d) throw I.thrown(new Jh);
if (0 == b && c == d) {
this.__textEngine.textFormatRanges.set_length(1);
var e = this.__textEngine.textFormatRanges.get(0);
e.start = 0;
e.end = d;
e.format.__merge(a)
} else {
d = 0;
for (var f; d < this.__textEngine.textFormatRanges.get_length();) if (e = this.__textEngine.textFormatRanges.get(d), e.end <= b) ++d; else if (e.start >= c) break; else if (e.start <= b && e.end >= c) if (e.start == b && e.end == c) {
e.format = e.format.clone();
e.format.__merge(a);
break
} else if (e.start == b) f = new lf(e.format.clone(), b, c), f.format.__merge(a), this.__textEngine.textFormatRanges.insertAt(d, f), e.start = c, d += 2; else {
e.end == c ? (f = new lf(e.format.clone(), b, c), f.format.__merge(a), this.__textEngine.textFormatRanges.insertAt(d + 1, f)) :
(f = new lf(e.format.clone(), b, c), f.format.__merge(a), this.__textEngine.textFormatRanges.insertAt(d + 1, f), f = new lf(e.format.clone(), c, e.end), this.__textEngine.textFormatRanges.insertAt(d + 2, f));
e.end = b;
break
} else if (e.start >= b && e.end <= c) e.start == b ? (e.format = e.format.clone(), e.format.__merge(a), e.end = c) : this.__textEngine.textFormatRanges.removeAt(d); else if (e.start > b && e.end > b) {
e.start = c;
break
} else e.start < b && e.end <= c ? (f = new lf(e.format.clone(), b, c), f.format.__merge(a), this.__textEngine.textFormatRanges.insertAt(d +
1, f), e.end = b, d += 2) : (++d, Qa.warn("You found a bug in OpenFL's text code! Please save a copy of your project and contact Joshua Granick (@singmajesty) so we can fix this.", {
fileName: "openfl/text/TextField.hx",
lineNumber: 1571,
className: "openfl.text.TextField",
methodName: "setTextFormat"
}))
}
this.__layoutDirty = this.__dirty = !0;
this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty())
}
},
__allowMouseFocus: function () {
return 1 == this.__textEngine.type || this.get_tabEnabled() ? !0 : this.get_selectable()
},
__caretBeginningOfLine: function () {
this.__caretIndex = this.getLineOffset(this.getLineIndexOfChar(this.__caretIndex))
},
__caretBeginningOfNextLine: function () {
var a = this.getLineIndexOfChar(this.__caretIndex);
this.__caretIndex = a < this.__textEngine.numLines - 1 ? this.getLineOffset(a + 1) : this.__text.length
},
__caretBeginningOfPreviousLine: function () {
var a = this.getLineIndexOfChar(this.__caretIndex);
if (0 < a) {
var b = this.getLineOffset(this.getLineIndexOfChar(this.__caretIndex));
this.__caretIndex = this.__caretIndex ==
b ? this.getLineOffset(a - 1) : b
}
},
__caretEndOfLine: function () {
var a = this.getLineIndexOfChar(this.__caretIndex);
this.__caretIndex = a < this.__textEngine.numLines - 1 ? this.getLineOffset(a + 1) - 1 : this.__text.length
},
__caretNextCharacter: function () {
this.__caretIndex < this.__text.length && this.__caretIndex++
},
__caretNextLine: function () {
var a = this.getLineIndexOfChar(this.__caretIndex);
a < this.__textEngine.numLines - 1 && (this.__caretIndex = this.__getCharIndexOnDifferentLine(this.get_caretIndex(), a + 1))
},
__caretPreviousCharacter: function () {
0 <
this.__caretIndex && this.__caretIndex--
},
__caretPreviousLine: function () {
var a = this.getLineIndexOfChar(this.__caretIndex);
0 < a && (this.__caretIndex = this.__getCharIndexOnDifferentLine(this.get_caretIndex(), a - 1))
},
__disableInput: function () {
this.__inputEnabled && null != this.stage && (this.stage.window.__backend.setTextInputEnabled(!1), this.stage.window.onTextInput.remove(q(this, this.window_onTextInput)), this.stage.window.onKeyDown.remove(q(this, this.window_onKeyDown)), this.__inputEnabled = !1, this.__stopCursorTimer())
},
__dispatch: function (a) {
if (2 == a.eventPhase && "mouseUp" == a.type) {
var b = this.__getGroup(this.get_mouseX(), this.get_mouseY(), !0);
null != b && (b = b.format.url, null != b && "" != b && (T.startsWith(b, "event:") ? this.dispatchEvent(new kf("link", !1, !1, K.substr(b, 6, null))) : Oa.getURL(new Vg(b))))
}
return Bb.prototype.__dispatch.call(this, a)
},
__enableInput: function () {
null != this.stage && (this.stage.window.__backend.setTextInputEnabled(!0), this.__inputEnabled || (this.stage.window.__backend.setTextInputEnabled(!0), this.stage.window.onTextInput.has(q(this,
this.window_onTextInput)) || (this.stage.window.onTextInput.add(q(this, this.window_onTextInput)), this.stage.window.onKeyDown.add(q(this, this.window_onKeyDown))), this.__inputEnabled = !0, this.__startCursorTimer()))
},
__getAdvance: function (a) {
return a
},
__getBounds: function (a, b) {
this.__updateLayout();
var c = ba.__pool.get();
c.copyFrom(this.__textEngine.bounds);
b.tx += this.__offsetX;
b.ty += this.__offsetY;
c.__transform(c, b);
a.__expand(c.x, c.y, c.width, c.height);
ba.__pool.release(c)
},
__getCharBoundaries: function (a,
b) {
if (0 > a || a > this.__text.length - 1) return !1;
this.__updateLayout();
for (var c = this.__textEngine.layoutGroups.iterator(); c.hasNext();) {
var d = c.next();
if (a >= d.startIndex && a < d.endIndex) try {
for (var e = d.offsetX, f = 0, h = a - d.startIndex; f < h;) {
var l = f++;
e += d.positions[l]
}
b.setTo(e, d.offsetY, d.positions[a - d.startIndex], d.ascent + d.descent);
return !0
} catch (p) {
ra.lastError = p
}
}
return !1
},
__getCharIndexOnDifferentLine: function (a, b) {
if (0 > a || a > this.__text.length || 0 > b || b > this.__textEngine.numLines - 1) return -1;
for (var c = null,
d = null, e = this.__textEngine.layoutGroups.iterator(); e.hasNext();) {
var f = e.next();
if (a >= f.startIndex && a <= f.endIndex) {
c = f.offsetX;
for (var h = 0, l = a - f.startIndex; h < l;) {
var p = h++;
c += f.positions[p]
}
if (null != d) return this.__getPosition(c, d)
}
if (f.lineIndex == b) {
d = f.offsetY + f.height / 2;
f = 0;
for (h = this.get_scrollV() - 1; f < h;) l = f++, d -= this.__textEngine.lineHeights.get(l);
if (null != c) return this.__getPosition(c, d)
}
}
return -1
},
__getCursor: function () {
var a = this.__getGroup(this.get_mouseX(), this.get_mouseY(), !0);
return null !=
a && "" != a.format.url ? "button" : this.__textEngine.selectable ? "ibeam" : null
},
__getGroup: function (a, b, c) {
null == c && (c = !1);
this.__updateLayout();
a += this.get_scrollH();
for (var d = 0, e = this.get_scrollV() - 1; d < e;) {
var f = d++;
b += this.__textEngine.lineHeights.get(f)
}
!c && b > this.__textEngine.textHeight && (b = this.__textEngine.textHeight);
var h = !0;
d = 0;
for (e = this.__textEngine.layoutGroups.get_length(); d < e;) {
f = d++;
var l = this.__textEngine.layoutGroups.get(f);
f = f < this.__textEngine.layoutGroups.get_length() - 1 ? this.__textEngine.layoutGroups.get(f +
1) : null;
h && (b < l.offsetY && (b = l.offsetY), a < l.offsetX && (a = l.offsetX), h = !1);
if (b >= l.offsetY && b <= l.offsetY + l.height || !c && null == f) if (a >= l.offsetX && a <= l.offsetX + l.width || !c && (null == f || f.lineIndex != l.lineIndex)) return l
}
return null
},
__getPosition: function (a, b) {
b = this.__getGroup(a, b);
if (null == b) return this.__text.length;
for (var c = 0, d = 0, e = b.positions.length; d < e;) {
var f = d++;
c += b.positions[f];
if (a <= b.offsetX + c) {
if (a <= b.offsetX + (c - b.positions[f]) + b.positions[f] / 2) return b.startIndex + f;
if (b.startIndex + f < b.endIndex) return b.startIndex +
f + 1;
break
}
}
return b.endIndex
},
__hitTest: function (a, b, c, d, e, f) {
if (!f.get_visible() || this.__isMask || e && !this.mouseEnabled || null != this.get_mask() && !this.get_mask().__hitTestMask(a, b)) return !1;
this.__getRenderTransform();
this.__updateLayout();
c = this.__renderTransform;
e = c.a * c.d - c.b * c.c;
var g = 0 == e ? -c.tx : 1 / e * (c.c * (c.ty - b) + c.d * (a - c.tx));
c = this.__renderTransform;
e = c.a * c.d - c.b * c.c;
return this.__textEngine.bounds.contains(g, 0 == e ? -c.ty : 1 / e * (c.a * (b - c.ty) + c.b * (c.tx - a))) ? (null != d && d.push(f), !0) : !1
},
__hitTestMask: function (a,
b) {
this.__getRenderTransform();
this.__updateLayout();
var c = this.__renderTransform, d = c.a * c.d - c.b * c.c,
e = 0 == d ? -c.tx : 1 / d * (c.c * (c.ty - b) + c.d * (a - c.tx));
c = this.__renderTransform;
d = c.a * c.d - c.b * c.c;
return this.__textEngine.bounds.contains(e, 0 == d ? -c.ty : 1 / d * (c.a * (b - c.ty) + c.b * (c.tx - a))) ? !0 : !1
},
__replaceSelectedText: function (a, b) {
null == b && (b = !0);
null == a && (a = "");
if ("" != a || this.__selectionIndex != this.__caretIndex) {
var c = this.__caretIndex < this.__selectionIndex ? this.__caretIndex : this.__selectionIndex,
d = this.__caretIndex >
this.__selectionIndex ? this.__caretIndex : this.__selectionIndex;
if (!(c == d && 0 < this.__textEngine.maxChars && this.__text.length == this.__textEngine.maxChars)) {
c > this.__text.length && (c = this.__text.length);
d > this.__text.length && (d = this.__text.length);
if (d < c) {
var e = d;
d = c;
c = e
}
0 > c && (c = 0);
this.__replaceText(c, d, a, b)
}
}
},
__replaceText: function (a, b, c, d) {
if (!(b < a || 0 > a || b > this.__text.length || null == c)) {
d && (c = this.__textEngine.restrictText(c), 0 < this.__textEngine.maxChars && (d = this.__textEngine.maxChars - this.__text.length +
(b - a), 0 >= d ? c = "" : d < c.length && (c = K.substr(c, 0, d))));
this.__updateText(this.__text.substring(0, a) + c + this.__text.substring(b));
d = c.length - (b - a);
for (var e = 0, f; e < this.__textEngine.textFormatRanges.get_length();) f = this.__textEngine.textFormatRanges.get(e), a == b ? f.start == f.end ? 0 != f.start ? Qa.warn("You found a bug in OpenFL's text code! Please save a copy of your project and contact Joshua Granick (@singmajesty) so we can fix this.", {
fileName: "openfl/text/TextField.hx", lineNumber: 2060, className: "openfl.text.TextField",
methodName: "__replaceText"
}) : f.end += d : f.end >= a && (f.start >= a ? (f.start += d, f.end += d) : f.start < a && f.end >= b && (f.end += d)) : f.end > a && (f.start > b ? (f.start += d, f.end += d) : f.start <= a && f.end > b ? f.end += d : f.start >= a && f.end <= b ? this.__textEngine.textFormatRanges.splice(e--, 1) : f.end > b && f.start > a && f.start <= b ? (f.start = a, f.end += d) : f.start < a && f.end > a && f.end <= b && (f.end = a)), ++e;
0 == this.__textEngine.textFormatRanges.get_length() ? this.__textEngine.textFormatRanges.push(new lf(this.get_defaultTextFormat().clone(), 0, c.length)) :
a == b && 0 < this.__textEngine.textFormatRanges.get(0).start ? this.__textEngine.textFormatRanges.unshift(new lf(this.get_defaultTextFormat().clone(), 0, this.__textEngine.textFormatRanges.get(0).start)) : a != b && this.__textEngine.textFormatRanges.get(this.__textEngine.textFormatRanges.get_length() - 1).end < this.__text.length && this.__textEngine.textFormatRanges.push(new lf(this.get_defaultTextFormat().clone(), this.__textEngine.textFormatRanges.get(this.__textEngine.textFormatRanges.get_length() - 1).end, this.__text.length));
this.setSelection(a + c.length, a + c.length);
this.__layoutDirty = this.__dirty = !0;
this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty())
}
},
__startCursorTimer: function () {
this.__cursorTimer = Ve.delay(q(this, this.__startCursorTimer), 600);
this.__showCursor = !this.__showCursor;
this.__dirty = !0;
this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty())
},
__startTextInput: function () {
0 > this.__caretIndex && (this.__selectionIndex = this.__caretIndex = this.__text.length);
(Ga.__supportDOM ?
this.__renderedOnCanvasWhileOnDOM : 1) && this.__enableInput()
},
__stopCursorTimer: function () {
null != this.__cursorTimer && (this.__cursorTimer.stop(), this.__cursorTimer = null);
this.__showCursor && (this.__showCursor = !1, this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()))
},
__stopTextInput: function () {
(Ga.__supportDOM ? this.__renderedOnCanvasWhileOnDOM : 1) && this.__disableInput()
},
__updateLayout: function () {
if (this.__layoutDirty) {
var a = this.__textEngine.width;
this.__textEngine.update();
if (2 != this.__textEngine.autoSize) {
if (this.__textEngine.width != a) switch (this.__textEngine.autoSize) {
case 0:
this.set_x(this.get_x() + (a - this.__textEngine.width) / 2);
break;
case 3:
this.set_x(this.get_x() + (a - this.__textEngine.width))
}
this.__textEngine.getBounds()
}
this.__layoutDirty = !1
}
},
__updateScrollH: function () {
this.__updateLayout();
if (this.get_textWidth() <= this.get_width() - 4) this.set_scrollH(0); else {
var a = this.get_scrollH();
if (0 == this.__caretIndex || this.getLineOffset(this.getLineIndexOfChar(this.__caretIndex)) ==
this.__caretIndex) a = 0; else {
var b = ba.__pool.get(), c = !1;
this.__caretIndex < this.__text.length && (c = this.__getCharBoundaries(this.__caretIndex, b));
c || (this.__getCharBoundaries(this.__caretIndex - 1, b), b.x += b.width);
for (; b.x < a && 0 < a;) a -= 24;
for (; b.x > a + this.get_width() - 4;) a += 24;
ba.__pool.release(b)
}
0 < a && 1 != this.get_type() && (b = this.getLineLength(this.getLineIndexOfChar(this.__caretIndex)), this.get_scrollH() + this.get_width() - 4 > b && this.set_scrollH(Math.ceil(b - this.get_width() + 4)));
0 > a ? this.set_scrollH(0) : a > this.get_maxScrollH() ?
this.set_scrollH(this.get_maxScrollH()) : this.set_scrollH(a)
}
},
__updateScrollV: function () {
this.__updateLayout();
if (this.get_textHeight() <= this.get_height() - 4) this.set_scrollV(1); else {
var a = this.getLineIndexOfChar(this.__caretIndex);
-1 == a && 0 < this.__caretIndex && (a = this.getLineIndexOfChar(this.__caretIndex - 1) + 1);
if (a + 1 < this.get_scrollV()) this.set_scrollV(a + 1); else if (a + 1 > this.get_bottomScrollV()) {
for (var b = 0; 0 <= a;) if (b + this.__textEngine.lineHeights.get(a) <= this.get_height() - 4) b += this.__textEngine.lineHeights.get(a),
--a; else break;
this.set_scrollV(a + 2)
} else this.set_scrollV(this.get_scrollV())
}
},
__updateText: function (a) {
Ga.__supportDOM && this.__renderedOnCanvasWhileOnDOM && (this.__forceCachedBitmapUpdate = this.__text != a);
this.__textEngine.set_text(a);
this.__text = this.__textEngine.text;
this.__text.length < this.__caretIndex && (this.__selectionIndex = this.__caretIndex = this.__text.length);
if (!this.__displayAsPassword || Ga.__supportDOM && !this.__renderedOnCanvasWhileOnDOM) this.__textEngine.set_text(this.__text); else {
a = "";
for (var b = 0, c = this.get_text().length; b < c;) b++, a += "*";
this.__textEngine.set_text(a)
}
},
__updateTransforms: function (a) {
Bb.prototype.__updateTransforms.call(this, a);
a = this.__renderTransform;
var b = this.__offsetX, c = this.__offsetY;
a.tx = b * a.a + c * a.c + a.tx;
a.ty = b * a.b + c * a.d + a.ty
},
get_antiAliasType: function () {
return this.__textEngine.antiAliasType
},
set_antiAliasType: function (a) {
return this.__textEngine.antiAliasType = a
},
get_autoSize: function () {
return this.__textEngine.autoSize
},
set_autoSize: function (a) {
a != this.__textEngine.autoSize &&
(this.__layoutDirty = this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()));
return this.__textEngine.autoSize = a
},
get_background: function () {
return this.__textEngine.background
},
set_background: function (a) {
a != this.__textEngine.background && (this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()));
return this.__textEngine.background = a
},
get_backgroundColor: function () {
return this.__textEngine.backgroundColor
},
set_backgroundColor: function (a) {
a !=
this.__textEngine.backgroundColor && (this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()));
return this.__textEngine.backgroundColor = a
},
get_border: function () {
return this.__textEngine.border
},
set_border: function (a) {
a != this.__textEngine.border && (this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()));
return this.__textEngine.border = a
},
get_borderColor: function () {
return this.__textEngine.borderColor
},
set_borderColor: function (a) {
a !=
this.__textEngine.borderColor && (this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()));
return this.__textEngine.borderColor = a
},
get_bottomScrollV: function () {
this.__updateLayout();
return this.__textEngine.get_bottomScrollV()
},
get_caretIndex: function () {
return this.__caretIndex
},
get_defaultTextFormat: function () {
return this.__textFormat.clone()
},
set_defaultTextFormat: function (a) {
this.__textFormat.__merge(a);
this.__dirty = this.__layoutDirty = !0;
this.__renderDirty || (this.__renderDirty =
!0, this.__setParentRenderDirty());
return a
},
get_displayAsPassword: function () {
return this.__displayAsPassword
},
set_displayAsPassword: function (a) {
a != this.__displayAsPassword && (this.__layoutDirty = this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()), this.__displayAsPassword = a, this.__updateText(this.__text));
return a
},
get_embedFonts: function () {
return this.__textEngine.embedFonts
},
set_embedFonts: function (a) {
return this.__textEngine.embedFonts = a
},
get_gridFitType: function () {
return this.__textEngine.gridFitType
},
set_gridFitType: function (a) {
return this.__textEngine.gridFitType = a
},
get_height: function () {
this.__updateLayout();
return this.__textEngine.height * Math.abs(this.get_scaleY())
},
set_height: function (a) {
a != this.__textEngine.height && (this.__setTransformDirty(), this.__layoutDirty = this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()), this.__textEngine.height = a);
return this.__textEngine.height * Math.abs(this.get_scaleY())
},
get_htmlText: function () {
return this.__isHTML ? this.__rawHtmlText :
this.__text
},
set_htmlText: function (a) {
this.__isHTML && this.__text == a || (this.__layoutDirty = this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()));
this.__isHTML = !0;
this.__rawHtmlText = a;
a = Db.parse(a, this.__textFormat, this.__textEngine.textFormatRanges);
if (Ga.__supportDOM) {
1 < this.__textEngine.textFormatRanges.get_length() && this.__textEngine.textFormatRanges.splice(1, this.__textEngine.textFormatRanges.get_length() - 1);
var b = this.__textEngine.textFormatRanges.get(0);
b.format =
this.__textFormat;
b.start = 0;
this.__renderedOnCanvasWhileOnDOM ? (b.end = a.length, this.__updateText(a)) : (b.end = this.__rawHtmlText.length, this.__updateText(this.__rawHtmlText))
} else this.__updateText(a);
this.setSelection(this.get_length(), this.get_length());
return a
},
get_length: function () {
return null != this.__text ? this.__text.length : 0
},
get_maxChars: function () {
return this.__textEngine.maxChars
},
set_maxChars: function (a) {
a != this.__textEngine.maxChars && (this.__textEngine.maxChars = a, this.__layoutDirty = this.__dirty =
!0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()));
return a
},
get_maxScrollH: function () {
this.__updateLayout();
return this.__textEngine.maxScrollH
},
get_maxScrollV: function () {
this.__updateLayout();
return this.__textEngine.get_maxScrollV()
},
get_mouseWheelEnabled: function () {
return this.__mouseWheelEnabled
},
set_mouseWheelEnabled: function (a) {
return this.__mouseWheelEnabled = a
},
get_multiline: function () {
return this.__textEngine.multiline
},
set_multiline: function (a) {
a != this.__textEngine.multiline &&
(this.__layoutDirty = this.__dirty = !0, this.__updateText(this.__text), this.__updateScrollH(), this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()));
return this.__textEngine.multiline = a
},
get_numLines: function () {
this.__updateLayout();
return this.__textEngine.numLines
},
get_restrict: function () {
return this.__textEngine.restrict
},
set_restrict: function (a) {
this.__textEngine.restrict != a && (this.__textEngine.set_restrict(a), this.__updateText(this.__text));
return a
},
get_scrollH: function () {
return this.__textEngine.scrollH
},
set_scrollH: function (a) {
this.__updateLayout();
a > this.__textEngine.maxScrollH && (a = this.__textEngine.maxScrollH);
0 > a && (a = 0);
a != this.__textEngine.scrollH && (this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()), this.__textEngine.scrollH = a, this.dispatchEvent(new oa("scroll")));
return this.__textEngine.scrollH
},
get_scrollV: function () {
return this.__textEngine.get_scrollV()
},
set_scrollV: function (a) {
this.__updateLayout();
0 < a && a != this.__textEngine.get_scrollV() && (this.__dirty =
!0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()), this.__textEngine.set_scrollV(a), this.dispatchEvent(new oa("scroll")));
return this.__textEngine.get_scrollV()
},
get_selectable: function () {
return this.__textEngine.selectable
},
set_selectable: function (a) {
a != this.__textEngine.selectable && 1 == this.get_type() && (null != this.stage && this.stage.get_focus() == this ? this.__startTextInput() : a || this.__stopTextInput());
return this.__textEngine.selectable = a
},
get_selectionBeginIndex: function () {
return Math.min(this.__caretIndex,
this.__selectionIndex) | 0
},
get_selectionEndIndex: function () {
return Math.max(this.__caretIndex, this.__selectionIndex) | 0
},
get_sharpness: function () {
return this.__textEngine.sharpness
},
set_sharpness: function (a) {
a != this.__textEngine.sharpness && (this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()));
return this.__textEngine.sharpness = a
},
get_tabEnabled: function () {
return null == this.__tabEnabled ? 1 == this.__textEngine.type : this.__tabEnabled
},
get_text: function () {
return this.__text
},
set_text: function (a) {
if (this.__isHTML || this.__text != a) this.__layoutDirty = this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()); else return a;
1 < this.__textEngine.textFormatRanges.get_length() && this.__textEngine.textFormatRanges.splice(1, this.__textEngine.textFormatRanges.get_length() - 1);
var b = this.__textEngine.textFormatRanges.get(0);
b.format = this.__textFormat;
b.start = 0;
b.end = a.length;
this.__isHTML = !1;
this.__updateText(a);
this.setSelection(0, 0);
return a
},
get_textColor: function () {
return this.__textFormat.color
},
set_textColor: function (a) {
a != this.__textFormat.color && (this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()));
for (var b = this.__textEngine.textFormatRanges.iterator(); b.hasNext();) b.next().format.color = a;
return this.__textFormat.color = a
},
get_textWidth: function () {
this.__updateLayout();
return this.__textEngine.textWidth
},
get_textHeight: function () {
this.__updateLayout();
return this.__textEngine.textHeight
},
get_type: function () {
return this.__textEngine.type
},
set_type: function (a) {
a !=
this.__textEngine.type && (1 == a ? (this.addEventListener("addedToStage", q(this, this.this_onAddedToStage)), this.this_onFocusIn(null), this.__textEngine.__useIntAdvances = !0) : (this.removeEventListener("addedToStage", q(this, this.this_onAddedToStage)), this.__stopTextInput(), this.__textEngine.__useIntAdvances = null), this.__layoutDirty = this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()));
return this.__textEngine.type = a
},
get_width: function () {
this.__updateLayout();
return this.__textEngine.width *
Math.abs(this.__scaleX)
},
set_width: function (a) {
a != this.__textEngine.width && (this.__setTransformDirty(), this.__layoutDirty = this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()), this.__textEngine.width = a);
return this.__textEngine.width * Math.abs(this.__scaleX)
},
get_wordWrap: function () {
return this.__textEngine.wordWrap
},
set_wordWrap: function (a) {
a != this.__textEngine.wordWrap && (this.__layoutDirty = this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()));
return this.__textEngine.wordWrap = a
},
get_x: function () {
return this.__transform.tx + this.__offsetX
},
set_x: function (a) {
a != this.__transform.tx + this.__offsetX && this.__setTransformDirty();
return this.__transform.tx = a - this.__offsetX
},
get_y: function () {
return this.__transform.ty + this.__offsetY
},
set_y: function (a) {
a != this.__transform.ty + this.__offsetY && this.__setTransformDirty();
return this.__transform.ty = a - this.__offsetY
},
stage_onMouseMove: function (a) {
null != this.stage && this.get_selectable() && 0 <= this.__selectionIndex &&
(this.__updateLayout(), a = this.__getPosition(this.get_mouseX() + this.get_scrollH(), this.get_mouseY()), a != this.__caretIndex && (this.__caretIndex = a, a = !0, Ga.__supportDOM && (this.__renderedOnCanvasWhileOnDOM && (this.__forceCachedBitmapUpdate = !0), a = !1), a && (this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()))))
},
stage_onMouseUp: function (a) {
if (null != this.stage && (this.stage.removeEventListener("mouseMove", q(this, this.stage_onMouseMove)), this.stage.removeEventListener("mouseUp",
q(this, this.stage_onMouseUp)), this.stage.get_focus() == this)) {
this.__getWorldTransform();
this.__updateLayout();
a = this.__getPosition(this.get_mouseX() + this.get_scrollH(), this.get_mouseY());
var b = Math.max(this.__selectionIndex, a) | 0;
this.__selectionIndex = Math.min(this.__selectionIndex, a) | 0;
this.__caretIndex = b;
this.__inputEnabled && (this.this_onFocusIn(null), this.__stopCursorTimer(), this.__startCursorTimer(), Ga.__supportDOM && this.__renderedOnCanvasWhileOnDOM && (this.__forceCachedBitmapUpdate = !0))
}
},
this_onAddedToStage: function (a) {
this.this_onFocusIn(null)
},
this_onFocusIn: function (a) {
1 == this.get_type() && null != this.stage && this.stage.get_focus() == this && this.__startTextInput()
},
this_onFocusOut: function (a) {
this.__stopCursorTimer();
null != a.relatedObject && a.relatedObject instanceof cf ? (null != this.stage && (this.stage.window.onTextInput.remove(q(this, this.window_onTextInput)), this.stage.window.onKeyDown.remove(q(this, this.window_onKeyDown))), this.__inputEnabled = !1) : this.__stopTextInput();
this.__selectionIndex != this.__caretIndex && (this.__selectionIndex = this.__caretIndex,
this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty()))
},
this_onKeyDown: function (a) {
this.get_selectable() && 1 != this.get_type() && 67 == a.keyCode && (a.commandKey || a.ctrlKey) && this.__caretIndex != this.__selectionIndex && oe.set_text(this.__text.substring(this.__caretIndex, this.__selectionIndex))
},
this_onMouseDown: function (a) {
if (this.get_selectable() || 1 == this.get_type()) this.__updateLayout(), this.__selectionIndex = this.__caretIndex = this.__getPosition(this.get_mouseX() + this.get_scrollH(),
this.get_mouseY()), Ga.__supportDOM || (this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty())), this.stage.addEventListener("mouseMove", q(this, this.stage_onMouseMove)), this.stage.addEventListener("mouseUp", q(this, this.stage_onMouseUp))
},
this_onMouseWheel: function (a) {
this.get_mouseWheelEnabled() && this.set_scrollV(this.get_scrollV() - a.delta)
},
this_onDoubleClick: function (a) {
if (this.get_selectable()) {
this.__updateLayout();
a = "\n.!?, ;:()-_/".split("");
var b = this.__text,
c = -1, d = b.length, e = Math.max(this.__caretIndex, 1) | 0;
if (0 < b.length && 0 <= this.__caretIndex && d >= this.__caretIndex) {
for (var f = 0; f < a.length;) {
var h = a[f];
++f;
var l = b.lastIndexOf(h, e - 1);
l > c && (c = l + 1);
l = b.indexOf(h, e);
l < d && -1 != l && (d = l)
}
c != d && (this.setSelection(c, d), a = !0, Ga.__supportDOM && (this.__renderedOnCanvasWhileOnDOM && (this.__forceCachedBitmapUpdate = !0), a = !1), a && (this.__dirty = !0, this.__renderDirty || (this.__renderDirty = !0, this.__setParentRenderDirty())))
}
}
},
window_onKeyDown: function (a, b) {
switch (a) {
case 8:
this.__selectionIndex ==
this.__caretIndex && 0 < this.__caretIndex && (this.__selectionIndex = this.__caretIndex - 1);
this.__selectionIndex != this.__caretIndex ? (this.replaceSelectedText(""), this.__selectionIndex = this.__caretIndex, this.dispatchEvent(new oa("change", !0))) : (this.__stopCursorTimer(), this.__startCursorTimer());
break;
case 97:
this.get_selectable() && (Gb.get_metaKey(b) || Gb.get_ctrlKey(b)) && (this.__caretIndex = this.__text.length, this.__selectionIndex = 0);
break;
case 99:
(Gb.get_metaKey(b) || Gb.get_ctrlKey(b)) && this.__caretIndex !=
this.__selectionIndex && oe.set_text(this.__text.substring(this.__caretIndex, this.__selectionIndex));
break;
case 120:
(Gb.get_metaKey(b) || Gb.get_ctrlKey(b)) && this.__caretIndex != this.__selectionIndex && (oe.set_text(this.__text.substring(this.__caretIndex, this.__selectionIndex)), this.replaceSelectedText(""), this.dispatchEvent(new oa("change", !0)));
break;
case 127:
this.__selectionIndex == this.__caretIndex && this.__caretIndex < this.__text.length && (this.__selectionIndex = this.__caretIndex + 1);
this.__selectionIndex !=
this.__caretIndex ? (this.replaceSelectedText(""), this.__selectionIndex = this.__caretIndex, this.dispatchEvent(new oa("change", !0))) : (this.__stopCursorTimer(), this.__startCursorTimer());
break;
case 1073741898:
this.get_selectable() && (Gb.get_metaKey(b) || Gb.get_ctrlKey(b) ? this.__caretIndex = 0 : this.__caretBeginningOfLine(), Gb.get_shiftKey(b) || (this.__selectionIndex = this.__caretIndex), this.setSelection(this.__selectionIndex, this.__caretIndex));
break;
case 1073741901:
this.get_selectable() && (Gb.get_metaKey(b) ||
Gb.get_ctrlKey(b) ? this.__caretIndex = this.__text.length : this.__caretEndOfLine(), Gb.get_shiftKey(b) || (this.__selectionIndex = this.__caretIndex), this.setSelection(this.__selectionIndex, this.__caretIndex));
break;
case 1073741903:
this.get_selectable() && (Gb.get_metaKey(b) || Gb.get_ctrlKey(b) ? this.__caretBeginningOfNextLine() : this.__caretNextCharacter(), Gb.get_shiftKey(b) || (this.__selectionIndex = this.__caretIndex), this.setSelection(this.__selectionIndex, this.__caretIndex));
break;
case 1073741904:
this.get_selectable() &&
(Gb.get_metaKey(b) || Gb.get_ctrlKey(b) ? this.__caretBeginningOfPreviousLine() : this.__caretPreviousCharacter(), Gb.get_shiftKey(b) || (this.__selectionIndex = this.__caretIndex), this.setSelection(this.__selectionIndex, this.__caretIndex));
break;
case 1073741905:
this.get_selectable() && (Gb.get_metaKey(b) || Gb.get_ctrlKey(b) ? this.__caretIndex = this.__text.length : this.__caretNextLine(), Gb.get_shiftKey(b) || (this.__selectionIndex = this.__caretIndex), this.setSelection(this.__selectionIndex, this.__caretIndex));
break;
case 1073741906:
this.get_selectable() && (Gb.get_metaKey(b) || Gb.get_ctrlKey(b) ? this.__caretIndex = 0 : this.__caretPreviousLine(), Gb.get_shiftKey(b) || (this.__selectionIndex = this.__caretIndex), this.setSelection(this.__selectionIndex, this.__caretIndex));
break;
case 13:
case 1073741912:
this.__textEngine.multiline ? (a = new kf("textInput", !0, !0, "\n"), this.dispatchEvent(a), a.isDefaultPrevented() || (this.__replaceSelectedText("\n", !0), this.dispatchEvent(new oa("change", !0)))) : (this.__stopCursorTimer(), this.__startCursorTimer())
}
},
window_onTextInput: function (a) {
this.__replaceSelectedText(a, !0);
this.dispatchEvent(new oa("change", !0))
},
__class__: cf,
__properties__: u(Bb.prototype.__properties__, {
set_wordWrap: "set_wordWrap",
get_wordWrap: "get_wordWrap",
set_type: "set_type",
get_type: "get_type",
get_textWidth: "get_textWidth",
get_textHeight: "get_textHeight",
set_textColor: "set_textColor",
get_textColor: "get_textColor",
set_text: "set_text",
get_text: "get_text",
set_sharpness: "set_sharpness",
get_sharpness: "get_sharpness",
get_selectionEndIndex: "get_selectionEndIndex",
get_selectionBeginIndex: "get_selectionBeginIndex",
set_selectable: "set_selectable",
get_selectable: "get_selectable",
set_scrollV: "set_scrollV",
get_scrollV: "get_scrollV",
set_scrollH: "set_scrollH",
get_scrollH: "get_scrollH",
set_restrict: "set_restrict",
get_restrict: "get_restrict",
get_numLines: "get_numLines",
set_multiline: "set_multiline",
get_multiline: "get_multiline",
set_mouseWheelEnabled: "set_mouseWheelEnabled",
get_mouseWheelEnabled: "get_mouseWheelEnabled",
get_maxScrollV: "get_maxScrollV",
get_maxScrollH: "get_maxScrollH",
set_maxChars: "set_maxChars",
get_maxChars: "get_maxChars",
get_length: "get_length",
set_htmlText: "set_htmlText",
get_htmlText: "get_htmlText",
set_gridFitType: "set_gridFitType",
get_gridFitType: "get_gridFitType",
set_embedFonts: "set_embedFonts",
get_embedFonts: "get_embedFonts",
set_displayAsPassword: "set_displayAsPassword",
get_displayAsPassword: "get_displayAsPassword",
set_defaultTextFormat: "set_defaultTextFormat",
get_defaultTextFormat: "get_defaultTextFormat",
get_caretIndex: "get_caretIndex",
get_bottomScrollV: "get_bottomScrollV",
set_borderColor: "set_borderColor",
get_borderColor: "get_borderColor",
set_border: "set_border",
get_border: "get_border",
set_backgroundColor: "set_backgroundColor",
get_backgroundColor: "get_backgroundColor",
set_background: "set_background",
get_background: "get_background",
set_autoSize: "set_autoSize",
get_autoSize: "get_autoSize",
set_antiAliasType: "set_antiAliasType",
get_antiAliasType: "get_antiAliasType"
})
});
var Sg = function (a, b, c, d, e, f, h, l, p, m, k, n, t) {
this.font = a;
this.size = b;
this.color = c;
this.bold = d;
this.italic =
e;
this.underline = f;
this.url = h;
this.target = l;
this.align = p;
this.leftMargin = m;
this.rightMargin = k;
this.indent = n;
this.leading = t
};
k["openfl.text.TextFormat"] = Sg;
Sg.__name__ = "openfl.text.TextFormat";
Sg.prototype = {
align: null,
blockIndent: null,
bold: null,
bullet: null,
color: null,
font: null,
indent: null,
italic: null,
kerning: null,
leading: null,
leftMargin: null,
letterSpacing: null,
rightMargin: null,
size: null,
tabStops: null,
target: null,
underline: null,
url: null,
__ascent: null,
__descent: null,
clone: function () {
var a = new Sg(this.font,
this.size, this.color, this.bold, this.italic, this.underline, this.url, this.target);
a.align = this.align;
a.leftMargin = this.leftMargin;
a.rightMargin = this.rightMargin;
a.indent = this.indent;
a.leading = this.leading;
a.blockIndent = this.blockIndent;
a.bullet = this.bullet;
a.kerning = this.kerning;
a.letterSpacing = this.letterSpacing;
a.tabStops = this.tabStops;
a.__ascent = this.__ascent;
a.__descent = this.__descent;
return a
},
__merge: function (a) {
null != a.font && (this.font = a.font);
null != a.size && (this.size = a.size);
null != a.color &&
(this.color = a.color);
null != a.bold && (this.bold = a.bold);
null != a.italic && (this.italic = a.italic);
null != a.underline && (this.underline = a.underline);
null != a.url && (this.url = a.url);
null != a.target && (this.target = a.target);
null != a.align && (this.align = a.align);
null != a.leftMargin && (this.leftMargin = a.leftMargin);
null != a.rightMargin && (this.rightMargin = a.rightMargin);
null != a.indent && (this.indent = a.indent);
null != a.leading && (this.leading = a.leading);
null != a.blockIndent && (this.blockIndent = a.blockIndent);
null != a.bullet &&
(this.bullet = a.bullet);
null != a.kerning && (this.kerning = a.kerning);
null != a.letterSpacing && (this.letterSpacing = a.letterSpacing);
null != a.tabStops && (this.tabStops = a.tabStops);
null != a.__ascent && (this.__ascent = a.__ascent);
null != a.__descent && (this.__descent = a.__descent)
},
__class__: Sg
};
var ik = {
fromString: function (a) {
switch (a) {
case "center":
return 0;
case "end":
return 1;
case "justify":
return 2;
case "left":
return 3;
case "right":
return 4;
case "start":
return 5;
default:
return null
}
}, toString: function (a) {
switch (a) {
case 0:
return "center";
case 1:
return "end";
case 2:
return "justify";
case 3:
return "left";
case 4:
return "right";
case 5:
return "start";
default:
return null
}
}
}, ip = function (a, b, c, d, e, f) {
this.x = a;
this.width = b;
this.height = c;
this.ascent = d;
this.descent = e;
this.leading = f
};
k["openfl.text.TextLineMetrics"] = ip;
ip.__name__ = "openfl.text.TextLineMetrics";
ip.prototype = {
ascent: null,
descent: null,
height: null,
leading: null,
width: null,
x: null,
__class__: ip
};
var jp = function (a, b, c) {
this.glyph = a;
this.advance = b;
this.offset = null != c ? c : new be
};
k["openfl.text._internal.GlyphPosition"] =
jp;
jp.__name__ = "openfl.text._internal.GlyphPosition";
jp.prototype = {advance: null, glyph: null, offset: null, __class__: jp};
var Db = function () {
};
k["openfl.text._internal.HTMLParser"] = Db;
Db.__name__ = "openfl.text._internal.HTMLParser";
Db.parse = function (a, b, c) {
a = a.replace(Db.__regexBreakTag.r, "\n");
a = a.replace(Db.__regexEntities[5].r, " ");
var d = a.split("<");
if (1 == d.length) a = T.htmlUnescape(a.replace(Db.__regexHTMLTag.r, "")), 1 < c.get_length() && c.splice(1, c.get_length() - 1), c = c.get(0), c.format = b, c.start = 0, c.end =
a.length; else {
c.splice(0, c.get_length());
a = "";
for (var e, f = [b.clone()], h = [], l = !1, p = 0; p < d.length;) if (e = d[p], ++p, "" != e) {
var m = "/" == K.substr(e, 0, 1), k = e.indexOf(">"), n = k + 1, t = e.indexOf(" ");
t = e.substring(m ? 1 : 0, -1 < t && t < k ? t : k);
if (m) 0 == h.length || t.toLowerCase() != h[h.length - 1].toLowerCase() ? Qa.info("Invalid HTML, unexpected closing tag ignored: " + t, {
fileName: "openfl/text/_internal/HTMLParser.hx",
lineNumber: 82,
className: "openfl.text._internal.HTMLParser",
methodName: "parse"
}) : (h.pop(), f.pop(), m = f[f.length - 1].clone(),
"p" == t.toLowerCase() && 0 < c.get_length() && (a += "\n", l = !0), n < e.length && (e = T.htmlUnescape(K.substr(e, n, null)), c.push(new lf(m, a.length, a.length + e.length)), a += e, l = !1)); else if (m = f[f.length - 1].clone(), -1 < k) {
switch (t.toLowerCase()) {
case "a":
Db.__regexHref.match(e) && (m.url = Db.__getAttributeMatch(Db.__regexHref));
break;
case "b":
m.bold = !0;
break;
case "em":
case "i":
m.italic = !0;
break;
case "font":
Db.__regexFace.match(e) && (m.font = Db.__getAttributeMatch(Db.__regexFace));
Db.__regexColor.match(e) && (m.color = z.parseInt("0x" +
Db.__getAttributeMatch(Db.__regexColor)));
if (Db.__regexSize.match(e)) {
k = Db.__getAttributeMatch(Db.__regexSize);
var q = K.cca(k, 0);
m.size = 43 == q || 45 == q ? (2 <= f.length ? f[f.length - 2] : b).size + z.parseInt(k) : z.parseInt(k)
}
break;
case "p":
0 < c.get_length() && !l && (a += "\n");
Db.__regexAlign.match(e) && (k = Db.__getAttributeMatch(Db.__regexAlign).toLowerCase(), m.align = ik.fromString(k));
break;
case "textformat":
Db.__regexBlockIndent.match(e) && (m.blockIndent = z.parseInt(Db.__getAttributeMatch(Db.__regexBlockIndent)));
Db.__regexIndent.match(e) &&
(m.indent = z.parseInt(Db.__getAttributeMatch(Db.__regexIndent)));
Db.__regexLeading.match(e) && (m.leading = z.parseInt(Db.__getAttributeMatch(Db.__regexLeading)));
Db.__regexLeftMargin.match(e) && (m.leftMargin = z.parseInt(Db.__getAttributeMatch(Db.__regexLeftMargin)));
Db.__regexRightMargin.match(e) && (m.rightMargin = z.parseInt(Db.__getAttributeMatch(Db.__regexRightMargin)));
if (Db.__regexTabStops.match(e)) {
k = Db.__getAttributeMatch(Db.__regexTabStops).split(" ");
q = [];
for (var w = 0; w < k.length;) {
var u = k[w];
++w;
q.push(z.parseInt(u))
}
m.tabStops =
q
}
break;
case "u":
m.underline = !0
}
f.push(m);
h.push(t);
n < e.length && (e = T.htmlUnescape(e.substring(n)), c.push(new lf(m, a.length, a.length + e.length)), a += e, l = !1)
} else e = T.htmlUnescape(e), c.push(new lf(m, a.length, a.length + e.length)), a += e, l = !1
}
0 == c.get_length() && c.push(new lf(f[0], 0, 0))
}
return a
};
Db.__getAttributeMatch = function (a) {
return null != a.matched(2) ? a.matched(2) : a.matched(3)
};
var Wb = function (a) {
this.textField = a;
this.height = this.width = 100;
this.set_text("");
this.bounds = new ba(0, 0, 0, 0);
this.textBounds =
new ba(0, 0, 0, 0);
this.type = 0;
this.autoSize = 2;
this.embedFonts = !1;
this.selectable = !0;
this.borderColor = 0;
this.border = !1;
this.backgroundColor = 16777215;
this.background = !1;
this.gridFitType = 1;
this.maxChars = 0;
this.multiline = !1;
this.numLines = 1;
this.scrollH = this.sharpness = 0;
this.set_scrollV(1);
this.wordWrap = !1;
this.lineAscents = Eb.toFloatVector(null);
this.lineBreaks = Eb.toIntVector(null);
this.lineDescents = Eb.toFloatVector(null);
this.lineLeadings = Eb.toFloatVector(null);
this.lineHeights = Eb.toFloatVector(null);
this.lineWidths =
Eb.toFloatVector(null);
this.layoutGroups = Eb.toObjectVector(null);
this.textFormatRanges = Eb.toObjectVector(null);
null == Wb.__context && (Wb.__context = window.document.createElement("canvas").getContext("2d"))
};
k["openfl.text._internal.TextEngine"] = Wb;
Wb.__name__ = "openfl.text._internal.TextEngine";
Wb.findFont = function (a) {
return Wc.__fontByName.h[a]
};
Wb.findFontVariant = function (a) {
var b = a.font, c = a.bold;
a = a.italic;
null == b && (b = "_serif");
var d = T.replace(T.replace(b, " Normal", ""), " Regular", "");
return c && a &&
Object.prototype.hasOwnProperty.call(Wc.__fontByName.h, d + " Bold Italic") ? Wb.findFont(d + " Bold Italic") : c && Object.prototype.hasOwnProperty.call(Wc.__fontByName.h, d + " Bold") ? Wb.findFont(d + " Bold") : a && Object.prototype.hasOwnProperty.call(Wc.__fontByName.h, d + " Italic") ? Wb.findFont(d + " Italic") : Wb.findFont(b)
};
Wb.getFormatHeight = function (a) {
Wb.__context.font = Wb.getFont(a);
var b = Wb.getFontInstance(a);
if (null != a.__ascent) {
var c = a.size * a.__ascent;
b = a.size * a.__descent
} else null != b && 0 != b.unitsPerEM ? (c = b.ascender /
b.unitsPerEM * a.size, b = Math.abs(b.descender / b.unitsPerEM * a.size)) : (c = a.size, b = .185 * a.size);
return c + b + a.leading
};
Wb.getFont = function (a) {
var b = a.font, c = a.bold, d = a.italic;
null == b && (b = "_serif");
var e = T.replace(T.replace(b, " Normal", ""), " Regular", "");
c && d && Object.prototype.hasOwnProperty.call(Wc.__fontByName.h, e + " Bold Italic") ? (b = e + " Bold Italic", d = c = !1) : c && Object.prototype.hasOwnProperty.call(Wc.__fontByName.h, e + " Bold") ? (b = e + " Bold", c = !1) : d && Object.prototype.hasOwnProperty.call(Wc.__fontByName.h, e +
" Italic") ? (b = e + " Italic", d = !1) : (c && (-1 < b.indexOf(" Bold ") || T.endsWith(b, " Bold")) && (c = !1), d && (-1 < b.indexOf(" Italic ") || T.endsWith(b, " Italic")) && (d = !1));
c = (d ? "italic " : "normal ") + "normal " + (c ? "bold " : "normal ");
c += a.size + "px";
c += "/" + (a.leading + a.size + 3) + "px ";
switch (b) {
case "_sans":
a = "sans-serif";
break;
case "_serif":
a = "serif";
break;
case "_typewriter":
a = "monospace";
break;
default:
a = "'" + b.replace(/^[\s'"]+(.*)[\s'"]+$/, "$1") + "'"
}
return c += "" + a
};
Wb.getFontInstance = function (a) {
return Wb.findFontVariant(a)
};
Wb.prototype = {
antiAliasType: null,
autoSize: null,
background: null,
backgroundColor: null,
border: null,
borderColor: null,
bottomScrollV: null,
bounds: null,
caretIndex: null,
embedFonts: null,
gridFitType: null,
height: null,
layoutGroups: null,
lineAscents: null,
lineBreaks: null,
lineDescents: null,
lineLeadings: null,
lineHeights: null,
lineWidths: null,
maxChars: null,
maxScrollH: null,
maxScrollV: null,
multiline: null,
numLines: null,
restrict: null,
scrollH: null,
scrollV: null,
selectable: null,
sharpness: null,
text: null,
textBounds: null,
textHeight: null,
textFormatRanges: null,
textWidth: null,
type: null,
width: null,
wordWrap: null,
textField: null,
__cursorTimer: null,
__hasFocus: null,
__isKeyDown: null,
__measuredHeight: null,
__measuredWidth: null,
__restrictRegexp: null,
__selectionStart: null,
__showCursor: null,
__textFormat: null,
__textLayout: null,
__texture: null,
__useIntAdvances: null,
__cairoFont: null,
__font: null,
createRestrictRegexp: function (a) {
var b = "", c = [];
0 < (new fb("\\^(.-.|.)", "gu")).map(a, function (a) {
b += a.matched(1);
return ""
}).length && c.push("[^" + a + "]");
0 < b.length &&
c.push("[" + b + "]");
return new fb("(" + c.join("|") + ")", "g")
},
getBounds: function () {
var a = this.border ? 1 : 0;
this.bounds.width = this.width + a;
this.bounds.height = this.height + a;
for (var b = a = this.width, c = this.layoutGroups.iterator(); c.hasNext();) {
var d = c.next();
d.offsetX < a && (a = d.offsetX);
d.offsetY < b && (b = d.offsetY)
}
a >= this.width && (a = 2);
b >= this.height && (b = 2);
this.textBounds.setTo(Math.max(a - 2, 0), Math.max(b - 2, 0), Math.min(this.textWidth + 4, this.bounds.width + 4), Math.min(1.185 * this.textHeight + 4, this.bounds.height + 4))
},
getLine: function (a) {
return 0 > a || a > this.lineBreaks.get_length() + 1 ? null : 0 == this.lineBreaks.get_length() ? this.text : this.text.substring(0 < a ? this.lineBreaks.get(a - 1) : 0, this.lineBreaks.get(a))
},
getLineBreakIndex: function (a) {
null == a && (a = 0);
var b = this.text.indexOf("\n", a);
a = this.text.indexOf("\r", a);
return -1 == b ? a : -1 == a ? b : b < a ? b : a
},
getLineMeasurements: function () {
this.lineAscents.set_length(0);
this.lineDescents.set_length(0);
this.lineLeadings.set_length(0);
this.lineHeights.set_length(0);
this.lineWidths.set_length(0);
var a = 0, b = 0, c = null, d = 0, e = 0, f;
this.textHeight = this.textWidth = 0;
this.numLines = 1;
this.maxScrollH = 0;
for (var h = this.layoutGroups.iterator(); h.hasNext();) {
for (f = h.next(); f.lineIndex > this.numLines - 1;) this.lineAscents.push(a), this.lineDescents.push(b), this.lineLeadings.push(null != c ? c : 0), this.lineHeights.push(d), this.lineWidths.push(e), b = a = 0, c = null, e = d = 0, this.numLines++;
a = Math.max(a, f.ascent);
b = Math.max(b, f.descent);
c = null == c ? f.leading : Math.max(c, f.leading) | 0;
d = Math.max(d, f.height);
e = f.offsetX - 2 + f.width;
e >
this.textWidth && (this.textWidth = e);
f = f.offsetY - 2 + f.ascent + f.descent;
f > this.textHeight && (this.textHeight = f)
}
0 == this.textHeight && null != this.textField && 1 == this.textField.get_type() && (a = this.textField.__textFormat, b = Wb.getFontInstance(a), null != a.__ascent ? (h = a.size * a.__ascent, f = a.size * a.__descent) : null != b && 0 != b.unitsPerEM ? (h = b.ascender / b.unitsPerEM * a.size, f = Math.abs(b.descender / b.unitsPerEM * a.size)) : (h = a.size, f = .185 * a.size), c = a.leading, a = h, b = f, this.textHeight = h + f);
this.lineAscents.push(a);
this.lineDescents.push(b);
this.lineLeadings.push(null != c ? c : 0);
this.lineHeights.push(d);
this.lineWidths.push(e);
1 == this.numLines && 0 < c && (this.textHeight += c);
0 < this.layoutGroups.get_length() && (h = this.layoutGroups.get(this.layoutGroups.get_length() - 1), null != h && h.startIndex == h.endIndex && (this.textHeight -= d));
if (2 != this.autoSize) switch (this.autoSize) {
case 0:
case 1:
case 3:
this.wordWrap || (this.width = this.textWidth + 4), this.height = this.textHeight + 4, this.bottomScrollV = this.numLines
}
this.maxScrollH = this.textWidth > this.width - 4 ? this.textWidth -
this.width + 4 | 0 : 0;
this.scrollH > this.maxScrollH && (this.scrollH = this.maxScrollH)
},
getLayoutGroups: function () {
var a = this;
this.layoutGroups.set_length(0);
if (null != this.text && "" != this.text) {
var b = -1, c = null, d = null, e = cf.__defaultTextFormat.clone(), f = 0, h = 0, l = 0, p = 0,
m = 3, k = 0, n = 0, t = 0, q = 0, w = !0, u = null, x = null, A = 0, N = 0, z = 0, J = -2,
B = -1, ma = this.text.indexOf(" "), C = this.getLineBreakIndex(), D = 0, G = 0, F = 0,
I = 0, y = function (b, c, d) {
var e = [];
if (null == a.__useIntAdvances) {
var f = new fb("Trident/7.0", "");
a.__useIntAdvances = f.match(R.navigator.userAgent)
}
if (a.__useIntAdvances) {
var g =
0;
for (f = c; f < d;) {
var h = f++;
h = Wb.__context.measureText(b.substring(c, h + 1)).width;
e.push(h - g);
g = h
}
} else for (f = c; f < d;) h = f++, h < b.length - 1 ? (c = Wb.__context.measureText(b.charAt(h + 1)).width, c = Wb.__context.measureText(K.substr(b, h, 2)).width - c) : c = Wb.__context.measureText(b.charAt(h)).width, e.push(c);
return e
}, E = function (a) {
for (var b = 0, c = 0; c < a.length;) {
var d = a[c];
++c;
b += d
}
return b
}, L = function () {
return 2 + t + k + (w ? n : 0)
}, M = function () {
return a.width - 2 - q - L()
}, P = function (b, d) {
null == u || u.startIndex != u.endIndex ? (u = new ln(c.format,
b, d), a.layoutGroups.push(u)) : (u.format = c.format, u.startIndex = b, u.endIndex = d)
}, O = function () {
null != e.__ascent ? (h = e.size * e.__ascent, p = e.size * e.__descent) : null != d && 0 != d.unitsPerEM ? (h = d.ascender / d.unitsPerEM * e.size, p = Math.abs(d.descender / d.unitsPerEM * e.size)) : (h = e.size, p = .185 * e.size);
f = e.leading;
N = Math.ceil(h + p + f);
N > z && (z = N);
h > l && (l = h)
}, T = function () {
w = !0;
m = null != e.align ? e.align : 3;
k = null != e.blockIndent ? e.blockIndent : 0;
n = null != e.indent ? e.indent : 0;
t = null != e.leftMargin ? e.leftMargin : 0;
q = null != e.rightMargin ?
e.rightMargin : 0
}, Aa = function () {
return b < a.textFormatRanges.get_length() - 1 ? (b += 1, c = a.textFormatRanges.get(b), e.__merge(c.format), Wb.__context.font = Wb.getFont(e), d = Wb.getFontInstance(e), !0) : !1
}, S = function (d, e) {
if (d >= e) x = [], A = 0; else if (e <= c.end) x = y(a.text, d, e), A = E(x); else {
var f = d;
d = c.end;
var g = 0;
x = [];
for (A = 0; ;) if (f != d && (f = y(a.text, f, d), x = x.concat(f)), d != e) {
if (!Aa()) {
Qa.warn("You found a bug in OpenFL's text code! Please save a copy of your project and contact Joshua Granick (@singmajesty) so we can fix this.",
{
fileName: "openfl/text/_internal/TextEngine.hx",
lineNumber: 1064,
className: "openfl.text._internal.TextEngine",
methodName: "getLayoutGroups"
});
break
}
f = d;
d = e < c.end ? e : c.end;
++g
} else {
A = E(x);
break
}
b -= g + 1;
Aa()
}
}, za = function (b) {
if (b <= c.end) {
x = y(a.text, F, b);
A = E(x);
P(F, b);
u.positions = x;
var d = D, e = L();
u.offsetX = d + e;
u.ascent = h;
u.descent = p;
u.leading = f;
u.lineIndex = I;
u.offsetY = G + 2;
u.width = A;
u.height = N;
D += A;
b == c.end && (u = null, Aa(), O())
} else for (; ;) {
var g = b < c.end ? b : c.end;
F != g && (x = y(a.text, F, g), A = E(x), P(F, g), u.positions =
x, d = D, e = L(), u.offsetX = d + e, u.ascent = h, u.descent = p, u.leading = f, u.lineIndex = I, u.offsetY = G + 2, u.width = A, u.height = N, D += A, F = g);
g == c.end && (u = null);
if (g == b) break;
if (!Aa()) {
Qa.warn("You found a bug in OpenFL's text code! Please save a copy of your project and contact Joshua Granick (@singmajesty) so we can fix this.", {
fileName: "openfl/text/_internal/TextEngine.hx",
lineNumber: 1152,
className: "openfl.text._internal.TextEngine",
methodName: "getLayoutGroups"
});
break
}
O()
}
F = b
}, Sa = function () {
O();
for (var b = a.layoutGroups.get_length(); -1 <
--b;) {
var c = a.layoutGroups.get(b);
if (c.lineIndex < I) break;
c.lineIndex > I || (c.ascent = l, c.height = z)
}
G += z;
z = l = 0;
I += 1;
D = 0;
w = !1
}, W = function (b) {
if (4 <= a.width && a.wordWrap) {
var c = x, d, e, f;
for (d = E(c); 0 < c.length && D + d > M();) {
for (f = d = e = 0; D + f < M();) {
var g = c[d];
0 == g ? (++d, ++e) : (f += g, ++d)
}
if (d == e) d = e + 1; else for (; 1 < d && D + f > M();) --d, 0 < d - e ? (S(F, F + d - e), f = A) : (d = 1, e = 0, S(F, F + 1), f = 0);
c = F + d - e;
za(c);
Sa();
S(c, b);
c = x;
d = A
}
}
za(b)
};
Aa();
T();
O();
for (var U, X = this.text.length + 1; F < X;) if (-1 < C && (-1 == ma || C < ma)) F <= C ? (S(F, C), W(C), u = null) : null !=
u && u.startIndex != u.endIndex && (u.endIndex == ma && (u.width -= u.positions[u.positions.length - 1]), u = null), Sa(), c.end == C && (Aa(), O()), F = C + 1, B = C, C = this.getLineBreakIndex(F), T(); else if (-1 < ma) for (null != u && u.startIndex != u.endIndex && (u = null), U = !1; F < this.text.length;) {
var H = -1;
-1 == ma ? H = C : (H = ma + 1, -1 < C && C < H && (H = C));
-1 == H && (H = this.text.length);
S(F, H);
if (2 == m) {
if (0 < x.length && F == J) {
F += 1;
var Q = x.shift();
A -= Q;
D += Q
}
0 < x.length && H == ma + 1 && (--H, Q = x.pop(), A -= Q)
}
this.wordWrap && D + A > M() && (U = !0, 0 < x.length && H == ma + 1 && D + A - x[x.length -
1] <= M() && (U = !1));
if (U) {
2 != m && (null != u || 0 < this.layoutGroups.get_length()) && (U = u, null == U && (U = this.layoutGroups.get(this.layoutGroups.get_length() - 1)), U.width -= U.positions[U.positions.length - 1], U.endIndex--);
U = this.layoutGroups.get_length() - 1;
for (Q = 0; ;) {
u = this.layoutGroups.get(U);
if (0 < U && u.startIndex > J) ++Q; else break;
--U
}
F == J + 1 && Sa();
D = 0;
if (0 < Q) {
U = this.layoutGroups.get(this.layoutGroups.get_length() - Q).offsetX;
Q = this.layoutGroups.get_length() - Q;
for (var V = this.layoutGroups.get_length(); Q < V;) {
var Y = Q++;
u = this.layoutGroups.get(Y);
u.offsetX -= U;
u.offsetY = G + 2;
u.lineIndex = I;
D += u.width
}
}
W(H);
U = !1
} else null != u && F == ma ? (2 != m && (u.endIndex = ma, u.positions = u.positions.concat(x), u.width += A), D += A, F = H) : (null == u || 2 == m ? W(H) : (Q = H < c.end ? H : c.end, Q < H && (x = y(this.text, F, Q), A = E(x)), u.endIndex = Q, u.positions = u.positions.concat(x), u.width += A, D += A, Q == c.end && (u = null, Aa(), O(), F = Q, Q != H && za(H)), C == H && ++H, F = H), H == this.text.length && Sa());
H = this.text.indexOf(" ", F);
C == J && (u.endIndex = C, 0 > C - u.startIndex - u.positions.length && u.positions.push(0),
F = C + 1);
J = ma;
ma = H;
if (-1 < C && C <= F && (ma > C || -1 == ma) || F > this.text.length) break
} else F < this.text.length && (S(F, this.text.length), W(this.text.length), Sa()), F += 1;
B == F - 2 && -1 < B && (P(F - 1, F - 1), u.positions = [], u.ascent = h, u.descent = p, u.leading = f, u.lineIndex = I - 1, u.offsetX = L(), u.offsetY = G + 2 - N, u.width = 0, u.height = N)
}
},
restrictText: function (a) {
if (null == a) return a;
null != this.__restrictRegexp && (a = this.__restrictRegexp.split(a).join(""));
return a
},
setTextAlignment: function () {
for (var a = -1, b = 0, c, d, e = !1, f = 0, h = this.layoutGroups.get_length(); f <
h;) {
var l = f++;
c = this.layoutGroups.get(l);
if (c.lineIndex != a) switch (a = c.lineIndex, b = this.width - 4 - c.format.rightMargin, c.format.align) {
case 0:
b = this.lineWidths.get(a) < b ? Math.round((b - this.lineWidths.get(a)) / 2) : 0;
break;
case 2:
if (this.lineWidths.get(a) < b) {
d = 1;
for (var p = l + 1, m = this.layoutGroups.get_length(); p < m;) {
var k = p++;
if (this.layoutGroups.get(k).lineIndex == a) 0 != k && 32 != K.cca(this.text, this.layoutGroups.get(k).startIndex - 1) || ++d; else break
}
if (1 < d && (c = this.layoutGroups.get(l + d - 1), p = K.cca(this.text, c.endIndex),
c.endIndex < this.text.length && 10 != p && 13 != p)) for (b = (b - this.lineWidths.get(a)) / (d - 1), e = !0, p = 1; this.layoutGroups.get(l + p).offsetX += b * p, ++p < d;) ;
}
b = 0;
break;
case 4:
b = this.lineWidths.get(a) < b ? Math.round(b - this.lineWidths.get(a)) : 0;
break;
default:
b = 0
}
0 < b && (c.offsetX += b)
}
e && this.getLineMeasurements()
},
trimText: function (a) {
if (null == a) return a;
0 < this.maxChars && a.length > this.maxChars && (a = K.substr(a, 0, this.maxChars));
return a
},
update: function () {
null == this.text || 0 == this.textFormatRanges.get_length() ? (this.lineAscents.set_length(0),
this.lineBreaks.set_length(0), this.lineDescents.set_length(0), this.lineLeadings.set_length(0), this.lineHeights.set_length(0), this.lineWidths.set_length(0), this.layoutGroups.set_length(0), this.textHeight = this.textWidth = 0, this.numLines = 1, this.maxScrollH = 0, this.bottomScrollV = this.maxScrollV = 1) : (this.getLayoutGroups(), this.getLineMeasurements(), this.setTextAlignment());
this.getBounds()
},
get_bottomScrollV: function () {
if (1 == this.numLines || null == this.lineHeights) return 1;
for (var a = this.lineHeights.get_length(),
b = this.lineLeadings.get_length() == a ? -this.lineLeadings.get(a - 1) : 0, c = this.get_scrollV() - 1, d = this.lineHeights.get_length(); c < d;) {
var e = c++;
if (b + this.lineHeights.get(e) <= this.height - 4) b += this.lineHeights.get(e); else {
a = e;
break
}
}
return a < this.get_scrollV() ? this.get_scrollV() : a
},
get_maxScrollV: function () {
if (1 == this.numLines || null == this.lineHeights) return 1;
for (var a = this.numLines - 1, b = 0, c = a; 0 <= a;) if (b + this.lineHeights.get(a) <= this.height - 4) b += this.lineHeights.get(a), --a; else break;
a = a == c ? this.numLines : a +
2;
return 1 > a ? 1 : a
},
set_restrict: function (a) {
if (this.restrict == a) return this.restrict;
this.restrict = a;
this.__restrictRegexp = null == this.restrict || 0 == this.restrict.length ? null : this.createRestrictRegexp(a);
return this.restrict
},
get_scrollV: function () {
if (1 == this.numLines || null == this.lineHeights) return 1;
var a = this.get_maxScrollV();
return this.scrollV > a ? a : this.scrollV
},
set_scrollV: function (a) {
1 > a && (a = 1);
return this.scrollV = a
},
set_text: function (a) {
return this.text = a
},
__class__: Wb,
__properties__: {
set_text: "set_text",
set_scrollV: "set_scrollV",
get_scrollV: "get_scrollV",
set_restrict: "set_restrict",
get_maxScrollV: "get_maxScrollV",
get_bottomScrollV: "get_bottomScrollV"
}
};
var lf = function (a, b, c) {
this.format = a;
this.start = b;
this.end = c
};
k["openfl.text._internal.TextFormatRange"] = lf;
lf.__name__ = "openfl.text._internal.TextFormatRange";
lf.prototype = {end: null, format: null, start: null, __class__: lf};
var Yd = function (a, b, c, d, e, f) {
null == f && (f = "en");
null == e && (e = "Zyyy");
null == d && (d = 4);
null == c && (c = 12);
null == a && (a = "");
this.letterSpacing =
0;
this.set_text(a);
this.set_font(b);
this.set_size(c);
this.__direction = d;
this.__script = e;
this.__language = f;
this.positions = [];
this.__dirty = !0;
this.__create(this.__direction, this.__script, this.__language)
};
k["openfl.text._internal.TextLayout"] = Yd;
Yd.__name__ = "openfl.text._internal.TextLayout";
Yd.prototype = {
autoHint: null,
font: null,
glyphs: null,
letterSpacing: null,
positions: null,
size: null,
text: null,
__buffer: null,
__direction: null,
__dirty: null,
__handle: null,
__language: null,
__script: null,
__font: null,
__hbBuffer: null,
__hbFont: null,
__create: function (a, b, c) {
4 == c.length && (this.__hbBuffer = rs._new(), js._new(c))
},
__position: function () {
this.positions = []
},
get_positions: function () {
this.__dirty && (this.__dirty = !1, this.__position());
return this.positions
},
get_direction: function () {
return this.__direction
},
set_direction: function (a) {
if (a == this.__direction) return a;
this.__direction = a;
this.__dirty = !0;
return a
},
set_font: function (a) {
if (a == this.font) return a;
this.font = a;
this.__dirty = !0;
return a
},
get_glyphs: function () {
for (var a = [],
b = 0, c = this.get_positions(); b < c.length;) {
var d = c[b];
++b;
a.push(d.glyph)
}
return a
},
get_language: function () {
return this.__language
},
set_language: function (a) {
if (a == this.__language) return a;
this.__language = a;
this.__dirty = !0;
return a
},
get_script: function () {
return this.__script
},
set_script: function (a) {
if (a == this.__script) return a;
this.__script = a;
this.__dirty = !0;
return a
},
set_size: function (a) {
if (a == this.size) return a;
this.size = a;
this.__dirty = !0;
return a
},
set_text: function (a) {
if (a == this.text) return a;
this.text =
a;
this.__dirty = !0;
return a
},
__class__: Yd,
__properties__: {
set_text: "set_text",
set_size: "set_size",
set_script: "set_script",
get_script: "get_script",
get_positions: "get_positions",
set_language: "set_language",
get_language: "get_language",
get_glyphs: "get_glyphs",
set_font: "set_font",
set_direction: "set_direction",
get_direction: "get_direction"
}
};
var ln = function (a, b, c) {
this.format = a;
this.startIndex = b;
this.endIndex = c
};
k["openfl.text._internal.TextLayoutGroup"] = ln;
ln.__name__ = "openfl.text._internal.TextLayoutGroup";
ln.prototype = {
ascent: null,
descent: null,
endIndex: null,
format: null,
height: null,
leading: null,
lineIndex: null,
offsetX: null,
offsetY: null,
positions: null,
startIndex: null,
width: null,
getAdvance: function (a) {
return this.positions[a]
},
__class__: ln
};
var dc = function () {
jb.call(this);
dc.__instances.push(this)
};
k["openfl.ui.GameInput"] = dc;
dc.__name__ = "openfl.ui.GameInput";
dc.getDeviceAt = function (a) {
return 0 <= a && a < dc.__deviceList.length ? dc.__deviceList[a] : null
};
dc.__getDevice = function (a) {
if (null == a) return null;
if (null ==
dc.__devices.h.__keys__[a.__id__]) {
var b = bd.__getDeviceData(), c = b[a.id].id;
b = bd.__getDeviceData();
b = new mn(c, b[a.id].id);
dc.__deviceList.push(b);
dc.__devices.set(a, b);
dc.numDevices = dc.__deviceList.length
}
return dc.__devices.h[a.__id__]
};
dc.__onGamepadAxisMove = function (a, b, c) {
a = dc.__getDevice(a);
if (null != a && a.enabled) {
if (!a.__axis.h.hasOwnProperty(b)) {
if (null == b) var d = "null"; else switch (b) {
case 0:
d = "LEFT_X";
break;
case 1:
d = "LEFT_Y";
break;
case 2:
d = "RIGHT_X";
break;
case 3:
d = "RIGHT_Y";
break;
case 4:
d = "TRIGGER_LEFT";
break;
case 5:
d = "TRIGGER_RIGHT";
break;
default:
d = "UNKNOWN (" + b + ")"
}
d = new Df(a, "AXIS_" + d, -1, 1);
a.__axis.h[b] = d;
a.__controls.push(d)
}
d = a.__axis.h[b];
d.value = c;
d.dispatchEvent(new oa("change"))
}
};
dc.__onGamepadButtonDown = function (a, b) {
a = dc.__getDevice(a);
if (null != a && a.enabled) {
if (!a.__button.h.hasOwnProperty(b)) {
if (null == b) var c = "null"; else switch (b) {
case 0:
c = "A";
break;
case 1:
c = "B";
break;
case 2:
c = "X";
break;
case 3:
c = "Y";
break;
case 4:
c = "BACK";
break;
case 5:
c = "GUIDE";
break;
case 6:
c = "START";
break;
case 7:
c =
"LEFT_STICK";
break;
case 8:
c = "RIGHT_STICK";
break;
case 9:
c = "LEFT_SHOULDER";
break;
case 10:
c = "RIGHT_SHOULDER";
break;
case 11:
c = "DPAD_UP";
break;
case 12:
c = "DPAD_DOWN";
break;
case 13:
c = "DPAD_LEFT";
break;
case 14:
c = "DPAD_RIGHT";
break;
default:
c = "UNKNOWN (" + b + ")"
}
c = new Df(a, "BUTTON_" + c, 0, 1);
a.__button.h[b] = c;
a.__controls.push(c)
}
c = a.__button.h[b];
c.value = 1;
c.dispatchEvent(new oa("change"))
}
};
dc.__onGamepadButtonUp = function (a, b) {
a = dc.__getDevice(a);
if (null != a && a.enabled) {
if (!a.__button.h.hasOwnProperty(b)) {
if (null ==
b) var c = "null"; else switch (b) {
case 0:
c = "A";
break;
case 1:
c = "B";
break;
case 2:
c = "X";
break;
case 3:
c = "Y";
break;
case 4:
c = "BACK";
break;
case 5:
c = "GUIDE";
break;
case 6:
c = "START";
break;
case 7:
c = "LEFT_STICK";
break;
case 8:
c = "RIGHT_STICK";
break;
case 9:
c = "LEFT_SHOULDER";
break;
case 10:
c = "RIGHT_SHOULDER";
break;
case 11:
c = "DPAD_UP";
break;
case 12:
c = "DPAD_DOWN";
break;
case 13:
c = "DPAD_LEFT";
break;
case 14:
c = "DPAD_RIGHT";
break;
default:
c = "UNKNOWN (" + b + ")"
}
c = new Df(a, "BUTTON_" + c, 0, 1);
a.__button.h[b] = c;
a.__controls.push(c)
}
c =
a.__button.h[b];
c.value = 0;
c.dispatchEvent(new oa("change"))
}
};
dc.__onGamepadConnect = function (a) {
a = dc.__getDevice(a);
if (null != a) for (var b = 0, c = dc.__instances; b < c.length;) {
var d = c[b];
++b;
d.dispatchEvent(new Jg("deviceAdded", !0, !1, a))
}
};
dc.__onGamepadDisconnect = function (a) {
var b = dc.__devices.h[a.__id__];
if (null != b) {
null != dc.__devices.h.__keys__[a.__id__] && (K.remove(dc.__deviceList, dc.__devices.h[a.__id__]), dc.__devices.remove(a));
dc.numDevices = dc.__deviceList.length;
a = 0;
for (var c = dc.__instances; a < c.length;) {
var d =
c[a];
++a;
d.dispatchEvent(new Jg("deviceRemoved", !0, !1, b))
}
}
};
dc.__super__ = jb;
dc.prototype = u(jb.prototype, {
addEventListener: function (a, b, c, d, e) {
null == e && (e = !1);
null == d && (d = 0);
null == c && (c = !1);
jb.prototype.addEventListener.call(this, a, b, c, d, e);
if ("deviceAdded" == a) for (a = 0, b = dc.__deviceList; a < b.length;) c = b[a], ++a, this.dispatchEvent(new Jg("deviceAdded", !0, !1, c))
}, __class__: dc
});
var Df = function (a, b, c, d, e) {
null == e && (e = 0);
jb.call(this);
this.device = a;
this.id = b;
this.minValue = c;
this.maxValue = d;
this.value = e
};
k["openfl.ui.GameInputControl"] = Df;
Df.__name__ = "openfl.ui.GameInputControl";
Df.__super__ = jb;
Df.prototype = u(jb.prototype, {
device: null,
id: null,
maxValue: null,
minValue: null,
value: null,
__class__: Df
});
var mn = function (a, b) {
this.__controls = [];
this.__button = new eb;
this.__axis = new eb;
this.id = a;
this.name = b;
a = new Df(this, "AXIS_0", -1, 1);
this.__axis.h[0] = a;
this.__controls.push(a);
a = new Df(this, "AXIS_1", -1, 1);
this.__axis.h[1] = a;
this.__controls.push(a);
a = new Df(this, "AXIS_2", -1, 1);
this.__axis.h[2] = a;
this.__controls.push(a);
a = new Df(this, "AXIS_3", -1, 1);
this.__axis.h[3] = a;
this.__controls.push(a);
a = new Df(this, "AXIS_4", -1, 1);
this.__axis.h[4] = a;
this.__controls.push(a);
a = new Df(this, "AXIS_5", -1, 1);
this.__axis.h[5] = a;
this.__controls.push(a);
for (b = 0; 15 > b;) {
var c = b++;
a = new Df(this, "BUTTON_" + c, 0, 1);
this.__button.h[c] = a;
this.__controls.push(a)
}
};
k["openfl.ui.GameInputDevice"] = mn;
mn.__name__ = "openfl.ui.GameInputDevice";
mn.prototype = {
enabled: null,
id: null,
name: null,
sampleInterval: null,
__axis: null,
__button: null,
__controls: null,
__gamepad: null,
getCachedSamples: function (a, b) {
return 0
},
getControlAt: function (a) {
return 0 <= a && a < this.__controls.length ? this.__controls[a] : null
},
startCachingSamples: function (a, b) {
},
stopCachingSamples: function () {
},
get_numControls: function () {
return this.__controls.length
},
__class__: mn,
__properties__: {get_numControls: "get_numControls"}
};
var Fa = function () {
};
k["openfl.ui.Keyboard"] = Fa;
Fa.__name__ = "openfl.ui.Keyboard";
Fa.isAccessible = function () {
return !1
};
Fa.__convertKeyCode = function (a) {
switch (a) {
case 8:
return 8;
case 9:
return 9;
case 13:
return 13;
case 27:
return 27;
case 32:
return 32;
case 33:
return 49;
case 34:
return 222;
case 35:
return 51;
case 36:
return 52;
case 37:
return 53;
case 38:
return 55;
case 39:
return 222;
case 40:
return 57;
case 41:
return 48;
case 42:
return 56;
case 44:
return 188;
case 45:
return 189;
case 46:
return 190;
case 47:
return 191;
case 48:
return 48;
case 49:
return 49;
case 50:
return 50;
case 51:
return 51;
case 52:
return 52;
case 53:
return 53;
case 54:
return 54;
case 55:
return 55;
case 56:
return 56;
case 57:
return 57;
case 58:
return 186;
case 59:
return 186;
case 60:
return 60;
case 61:
return 187;
case 62:
return 190;
case 63:
return 191;
case 64:
return 50;
case 91:
return 219;
case 92:
return 220;
case 93:
return 221;
case 94:
return 54;
case 95:
return 189;
case 96:
return 192;
case 97:
return 65;
case 98:
return 66;
case 99:
return 67;
case 100:
return 68;
case 101:
return 69;
case 102:
return 70;
case 103:
return 71;
case 104:
return 72;
case 105:
return 73;
case 106:
return 74;
case 107:
return 75;
case 108:
return 76;
case 109:
return 77;
case 110:
return 78;
case 111:
return 79;
case 112:
return 80;
case 113:
return 81;
case 114:
return 82;
case 115:
return 83;
case 116:
return 84;
case 117:
return 85;
case 118:
return 86;
case 119:
return 87;
case 120:
return 88;
case 121:
return 89;
case 122:
return 90;
case 127:
return 46;
case 1073741881:
return 20;
case 1073741882:
return 112;
case 1073741883:
return 113;
case 1073741884:
return 114;
case 1073741885:
return 115;
case 1073741886:
return 116;
case 1073741887:
return 117;
case 1073741888:
return 118;
case 1073741889:
return 119;
case 1073741890:
return 120;
case 1073741891:
return 121;
case 1073741892:
return 122;
case 1073741893:
return 123;
case 1073741894:
return 301;
case 1073741895:
return 145;
case 1073741896:
return 19;
case 1073741897:
return 45;
case 1073741898:
return 36;
case 1073741899:
return 33;
case 1073741901:
return 35;
case 1073741902:
return 34;
case 1073741903:
return 39;
case 1073741904:
return 37;
case 1073741905:
return 40;
case 1073741906:
return 38;
case 1073741907:
return 144;
case 1073741908:
return 111;
case 1073741909:
return 106;
case 1073741910:
return 109;
case 1073741911:
return 107;
case 1073741912:
return 13;
case 1073741913:
return 97;
case 1073741914:
return 98;
case 1073741915:
return 99;
case 1073741916:
return 100;
case 1073741917:
return 101;
case 1073741918:
return 102;
case 1073741919:
return 103;
case 1073741920:
return 104;
case 1073741921:
return 105;
case 1073741922:
return 96;
case 1073741923:
return 110;
case 1073741925:
return 302;
case 1073741928:
return 124;
case 1073741929:
return 125;
case 1073741930:
return 126;
case 1073741982:
return 13;
case 1073742044:
return 110;
case 1073742048:
return 17;
case 1073742049:
return 16;
case 1073742050:
return 18;
case 1073742051:
return 15;
case 1073742052:
return 17;
case 1073742053:
return 16;
case 1073742054:
return 18;
case 1073742055:
return 15;
default:
return a
}
};
Fa.__getCharCode = function (a, b) {
null == b && (b = !1);
if (b) {
switch (a) {
case 48:
return 41;
case 49:
return 33;
case 50:
return 64;
case 51:
return 35;
case 52:
return 36;
case 53:
return 37;
case 54:
return 94;
case 55:
return 38;
case 56:
return 42;
case 57:
return 40;
case 186:
return 58;
case 187:
return 43;
case 188:
return 60;
case 189:
return 95;
case 190:
return 62;
case 191:
return 63;
case 192:
return 126;
case 219:
return 123;
case 220:
return 124;
case 221:
return 125;
case 222:
return 34
}
if (65 <= a && 90 >= a) return a - 65 + 65
} else {
switch (a) {
case 8:
return 8;
case 9:
return 9;
case 13:
return 13;
case 27:
return 27;
case 32:
return 32;
case 186:
return 59;
case 187:
return 61;
case 188:
return 44;
case 189:
return 45;
case 190:
return 46;
case 191:
return 47;
case 192:
return 96;
case 219:
return 91;
case 220:
return 92;
case 221:
return 93;
case 222:
return 39
}
if (48 <=
a && 57 >= a) return a - 48 + 48;
if (65 <= a && 90 >= a) return a - 65 + 97
}
if (96 <= a && 105 >= a) return a - 96 + 48;
switch (a) {
case 8:
return 8;
case 13:
return 13;
case 46:
return 127;
case 106:
return 42;
case 107:
return 43;
case 108:
return 44;
case 110:
return 45;
case 111:
return 46
}
return 0
};
Fa.__getKeyLocation = function (a) {
switch (a) {
case 1073741908:
case 1073741909:
case 1073741910:
case 1073741911:
case 1073741912:
case 1073741913:
case 1073741914:
case 1073741915:
case 1073741916:
case 1073741917:
case 1073741918:
case 1073741919:
case 1073741920:
case 1073741921:
case 1073741922:
case 1073741923:
case 1073742044:
return 3;
case 1073742048:
case 1073742049:
case 1073742050:
case 1073742051:
return 1;
case 1073742052:
case 1073742053:
case 1073742054:
case 1073742055:
return 2;
default:
return 0
}
};
var ve = function () {
};
k["openfl.ui.Mouse"] = ve;
ve.__name__ = "openfl.ui.Mouse";
ve.__properties__ = {set_cursor: "set_cursor", get_cursor: "get_cursor"};
ve.hide = function () {
ve.__hidden = !0;
for (var a = 0, b = zd.current.__windows; a < b.length;) {
var c = b[a];
++a;
c.set_cursor(null)
}
};
ve.show = function () {
ve.__hidden = !1;
var a = ve.__cursor;
ve.__cursor = null;
ve.set_cursor(a)
};
ve.get_cursor = function () {
return ve.__cursor
};
ve.set_cursor = function (a) {
null == a && (a = "auto");
var b = null;
switch (a) {
case "arrow":
b = rc.ARROW;
break;
case "button":
b = rc.POINTER;
break;
case "crosshair":
b = rc.CROSSHAIR;
break;
case "custom":
b = rc.CUSTOM;
break;
case "hand":
b = rc.MOVE;
break;
case "ibeam":
b = rc.TEXT;
break;
case "resize_nesw":
b = rc.RESIZE_NESW;
break;
case "resize_ns":
b = rc.RESIZE_NS;
break;
case "resize_nwse":
b = rc.RESIZE_NWSE;
break;
case "resize_we":
b = rc.RESIZE_WE;
break;
case "wait":
b = rc.WAIT;
break;
case "waitarrow":
b =
rc.WAIT_ARROW
}
if (null != b && !ve.__hidden) for (var c = 0, d = zd.current.__windows; c < d.length;) {
var e = d[c];
++c;
e.set_cursor(b)
}
return ve.__cursor = a
};
var Bf = {
fromLimeCursor: function (a) {
switch (a._hx_index) {
case 0:
return "arrow";
case 1:
return "crosshair";
case 2:
return "auto";
case 3:
return "hand";
case 4:
return "button";
case 5:
return "resize_nesw";
case 6:
return "resize_ns";
case 7:
return "resize_nwse";
case 8:
return "resize_we";
case 9:
return "ibeam";
case 10:
return "wait";
case 11:
return "waitarrow";
case 12:
return "custom"
}
}, toLimeCursor: function (a) {
switch (a) {
case "arrow":
return rc.ARROW;
case "auto":
return rc.DEFAULT;
case "button":
return rc.POINTER;
case "crosshair":
return rc.CROSSHAIR;
case "custom":
return rc.CUSTOM;
case "hand":
return rc.MOVE;
case "ibeam":
return rc.TEXT;
case "resize_nesw":
return rc.RESIZE_NESW;
case "resize_ns":
return rc.RESIZE_NS;
case "resize_nwse":
return rc.RESIZE_NWSE;
case "resize_we":
return rc.RESIZE_WE;
case "wait":
return rc.WAIT;
case "waitarrow":
return rc.WAIT_ARROW;
default:
return rc.DEFAULT
}
}
}, Ce = function () {
};
k["openfl.ui.Multitouch"] = Ce;
Ce.__name__ = "openfl.ui.Multitouch";
Ce.__properties__ = {get_supportsTouchEvents: "get_supportsTouchEvents"};
Ce.get_supportsTouchEvents = function () {
return "ontouchstart" in document.documentElement || window.DocumentTouch && document instanceof DocumentTouch ? !0 : !1
};
var W = function (a) {
null == a && (a = !1);
this.debugEnabled = a;
W.initialized || W.init()
};
k["openfl.utils.AGALMiniAssembler"] = W;
W.__name__ = "openfl.utils.AGALMiniAssembler";
W.init = function () {
W.initialized = !0;
var a = W.OPMAP, b = new ec("mov", 2, 0, 0);
a.h.mov = b;
a = W.OPMAP;
b = new ec("add", 3, 1, 0);
a.h.add =
b;
a = W.OPMAP;
b = new ec("sub", 3, 2, 0);
a.h.sub = b;
a = W.OPMAP;
b = new ec("mul", 3, 3, 0);
a.h.mul = b;
a = W.OPMAP;
b = new ec("div", 3, 4, 0);
a.h.div = b;
a = W.OPMAP;
b = new ec("rcp", 2, 5, 0);
a.h.rcp = b;
a = W.OPMAP;
b = new ec("min", 3, 6, 0);
a.h.min = b;
a = W.OPMAP;
b = new ec("max", 3, 7, 0);
a.h.max = b;
a = W.OPMAP;
b = new ec("frc", 2, 8, 0);
a.h.frc = b;
a = W.OPMAP;
b = new ec("sqt", 2, 9, 0);
a.h.sqt = b;
a = W.OPMAP;
b = new ec("rsq", 2, 10, 0);
a.h.rsq = b;
a = W.OPMAP;
b = new ec("pow", 3, 11, 0);
a.h.pow = b;
a = W.OPMAP;
b = new ec("log", 2, 12, 0);
a.h.log = b;
a = W.OPMAP;
b = new ec("exp", 2, 13, 0);
a.h.exp =
b;
a = W.OPMAP;
b = new ec("nrm", 2, 14, 0);
a.h.nrm = b;
a = W.OPMAP;
b = new ec("sin", 2, 15, 0);
a.h.sin = b;
a = W.OPMAP;
b = new ec("cos", 2, 16, 0);
a.h.cos = b;
a = W.OPMAP;
b = new ec("crs", 3, 17, 0);
a.h.crs = b;
a = W.OPMAP;
b = new ec("dp3", 3, 18, 0);
a.h.dp3 = b;
a = W.OPMAP;
b = new ec("dp4", 3, 19, 0);
a.h.dp4 = b;
a = W.OPMAP;
b = new ec("abs", 2, 20, 0);
a.h.abs = b;
a = W.OPMAP;
b = new ec("neg", 2, 21, 0);
a.h.neg = b;
a = W.OPMAP;
b = new ec("sat", 2, 22, 0);
a.h.sat = b;
a = W.OPMAP;
b = new ec("m33", 3, 23, 16);
a.h.m33 = b;
a = W.OPMAP;
b = new ec("m44", 3, 24, 16);
a.h.m44 = b;
a = W.OPMAP;
b = new ec("m34",
3, 25, 16);
a.h.m34 = b;
a = W.OPMAP;
b = new ec("ddx", 2, 26, 288);
a.h.ddx = b;
a = W.OPMAP;
b = new ec("ddy", 2, 27, 288);
a.h.ddy = b;
a = W.OPMAP;
b = new ec("ife", 2, 28, 897);
a.h.ife = b;
a = W.OPMAP;
b = new ec("ine", 2, 29, 897);
a.h.ine = b;
a = W.OPMAP;
b = new ec("ifg", 2, 30, 897);
a.h.ifg = b;
a = W.OPMAP;
b = new ec("ifl", 2, 31, 897);
a.h.ifl = b;
a = W.OPMAP;
b = new ec("els", 0, 32, 1921);
a.h.els = b;
a = W.OPMAP;
b = new ec("eif", 0, 33, 1409);
a.h.eif = b;
a = W.OPMAP;
b = new ec("kil", 1, 39, 160);
a.h.kil = b;
a = W.OPMAP;
b = new ec("tex", 3, 40, 40);
a.h.tex = b;
a = W.OPMAP;
b = new ec("sge", 3, 41, 0);
a.h.sge = b;
a = W.OPMAP;
b = new ec("slt", 3, 42, 0);
a.h.slt = b;
a = W.OPMAP;
b = new ec("sgn", 2, 43, 0);
a.h.sgn = b;
a = W.OPMAP;
b = new ec("seq", 3, 44, 0);
a.h.seq = b;
a = W.OPMAP;
b = new ec("sne", 3, 45, 0);
a.h.sne = b;
a = W.SAMPLEMAP;
b = new cd("rgba", 8, 0);
a.h.rgba = b;
a = W.SAMPLEMAP;
b = new cd("compressed", 8, 1);
a.h.compressed = b;
a = W.SAMPLEMAP;
b = new cd("compressedalpha", 8, 2);
a.h.compressedalpha = b;
a = W.SAMPLEMAP;
b = new cd("dxt1", 8, 1);
a.h.dxt1 = b;
a = W.SAMPLEMAP;
b = new cd("dxt5", 8, 2);
a.h.dxt5 = b;
a = W.SAMPLEMAP;
b = new cd("video", 8, 3);
a.h.video = b;
a = W.SAMPLEMAP;
b = new cd("2d", 12, 0);
a.h["2d"] = b;
a = W.SAMPLEMAP;
b = new cd("3d", 12, 2);
a.h["3d"] = b;
a = W.SAMPLEMAP;
b = new cd("cube", 12, 1);
a.h.cube = b;
a = W.SAMPLEMAP;
b = new cd("mipnearest", 24, 1);
a.h.mipnearest = b;
a = W.SAMPLEMAP;
b = new cd("miplinear", 24, 2);
a.h.miplinear = b;
a = W.SAMPLEMAP;
b = new cd("mipnone", 24, 0);
a.h.mipnone = b;
a = W.SAMPLEMAP;
b = new cd("nomip", 24, 0);
a.h.nomip = b;
a = W.SAMPLEMAP;
b = new cd("nearest", 28, 0);
a.h.nearest = b;
a = W.SAMPLEMAP;
b = new cd("linear", 28, 1);
a.h.linear = b;
a = W.SAMPLEMAP;
b = new cd("anisotropic2x", 28, 2);
a.h.anisotropic2x =
b;
a = W.SAMPLEMAP;
b = new cd("anisotropic4x", 28, 3);
a.h.anisotropic4x = b;
a = W.SAMPLEMAP;
b = new cd("anisotropic8x", 28, 4);
a.h.anisotropic8x = b;
a = W.SAMPLEMAP;
b = new cd("anisotropic16x", 28, 5);
a.h.anisotropic16x = b;
a = W.SAMPLEMAP;
b = new cd("centroid", 16, 1);
a.h.centroid = b;
a = W.SAMPLEMAP;
b = new cd("single", 16, 2);
a.h.single = b;
a = W.SAMPLEMAP;
b = new cd("ignoresampler", 16, 4);
a.h.ignoresampler = b;
a = W.SAMPLEMAP;
b = new cd("repeat", 20, 1);
a.h.repeat = b;
a = W.SAMPLEMAP;
b = new cd("wrap", 20, 1);
a.h.wrap = b;
a = W.SAMPLEMAP;
b = new cd("clamp", 20,
0);
a.h.clamp = b;
a = W.SAMPLEMAP;
b = new cd("clamp_u_repeat_v", 20, 2);
a.h.clamp_u_repeat_v = b;
a = W.SAMPLEMAP;
b = new cd("repeat_u_clamp_v", 20, 3);
a.h.repeat_u_clamp_v = b
};
W.prototype = {
agalcode: null, error: null, verbose: null, debugEnabled: null, assemble2: function (a, b, c, d) {
c = this.assemble("vertex", c, b);
b = this.assemble("fragment", d, b);
a = a.createProgram();
a.upload(c, b);
return a
}, assemble: function (a, b, c, d) {
null == d && (d = !1);
null == c && (c = 1);
var e = Oa.getTimer();
this.agalcode = new uc(0);
this.error = "";
var f = !1;
"fragment" == a ? f =
!0 : "vertex" != a && (this.error = 'ERROR: mode needs to be "fragment" or "vertex" but is "' + a + '".');
this.agalcode.__endian = 1;
this.agalcode.writeByte(160);
this.agalcode.writeUnsignedInt(c);
this.agalcode.writeByte(161);
this.agalcode.writeByte(f ? 1 : 0);
this.initregmap(c, d);
a = T.replace(b, "\r", "\n").split("\n");
b = 0;
d = a.length;
for (var h = new fb("<.*>", "g"), l = new fb("([\\w\\.\\-\\+]+)", "gi"), p = new fb("^\\w{3}", "ig"), m = new fb("vc\\[([vofi][acostdip]?[d]?)(\\d*)?(\\.[xyzw](\\+\\d{1,3})?)?\\](\\.[xyzw]{1,4})?|([vofi][acostdip]?[d]?)(\\d*)?(\\.[xyzw]{1,4})?",
"gi"), k = new fb("\\[.*\\]", "ig"), n = new fb("^\\b[A-Za-z]{1,3}", "ig"), t = new fb("\\d+", ""), q = new fb("(\\.[xyzw]{1,4})", ""), w = new fb("[A-Za-z]{1,3}", "ig"), u = new fb("(\\.[xyzw]{1,1})", ""), x = new fb("\\+\\d{1,3}", "ig"), A = 0; A < d && "" == this.error;) {
var N = T.trim(a[A]), J = N.indexOf("//");
-1 != J && (N = K.substr(N, 0, J));
var B = h.match(N) ? h.matchedPos().pos : -1;
J = null;
-1 != B && (J = this.match(K.substr(N, B, null), l), N = K.substr(N, 0, B));
var ma = null;
p.match(N) && (B = p.matched(0), ma = W.OPMAP.h[B]);
if (null == ma) 3 <= N.length && Qa.warn("warning: bad line " +
A + ": " + a[A], {
fileName: "openfl/utils/AGALMiniAssembler.hx",
lineNumber: 262,
className: "openfl.utils.AGALMiniAssembler",
methodName: "assemble"
}); else if (this.debugEnabled && Qa.info(ma, {
fileName: "openfl/utils/AGALMiniAssembler.hx",
lineNumber: 272,
className: "openfl.utils.AGALMiniAssembler",
methodName: "assemble"
}), null == ma) 3 <= N.length && Qa.warn("warning: bad line " + A + ": " + a[A], {
fileName: "openfl/utils/AGALMiniAssembler.hx",
lineNumber: 279,
className: "openfl.utils.AGALMiniAssembler",
methodName: "assemble"
}); else {
N =
K.substr(N, N.indexOf(ma.name) + ma.name.length, null);
if (0 != (ma.flags & 256) && 2 > c) {
this.error = "error: opcode requires version 2.";
break
}
if (0 != (ma.flags & 64) && f) {
this.error = "error: opcode is only allowed in vertex programs.";
break
}
if (0 != (ma.flags & 32) && !f) {
this.error = "error: opcode is only allowed in fragment programs.";
break
}
this.verbose && Qa.info("emit opcode=" + z.string(ma), {
fileName: "openfl/utils/AGALMiniAssembler.hx",
lineNumber: 308,
className: "openfl.utils.AGALMiniAssembler",
methodName: "assemble"
});
this.agalcode.writeUnsignedInt(ma.emitCode);
++b;
if (4096 < b) {
this.error = "error: too many opcodes. maximum is 4096.";
break
}
var C = this.match(N, m);
if (C.length != ma.numRegister) {
this.error = "error: wrong number of operands. found " + C.length + " but expected " + ma.numRegister + ".";
break
}
var D = !1, F = 160;
N = 0;
for (B = C.length; N < B;) {
var G = N++, I = !1, y = this.match(C[G], k);
0 < y.length && (C[G] = T.replace(C[G], y[0], "0"), this.verbose && Qa.info("IS REL", {
fileName: "openfl/utils/AGALMiniAssembler.hx",
lineNumber: 344,
className: "openfl.utils.AGALMiniAssembler",
methodName: "assemble"
}),
I = !0);
var E = this.match(C[G], n);
if (0 == E.length) {
this.error = "error: could not parse operand " + G + " (" + C[G] + ").";
D = !0;
break
}
var L = W.REGMAP.h[E[0]];
this.debugEnabled && Qa.info(L, {
fileName: "openfl/utils/AGALMiniAssembler.hx",
lineNumber: 363,
className: "openfl.utils.AGALMiniAssembler",
methodName: "assemble"
});
if (null == L) {
this.error = "error: could not find register name for operand " + G + " (" + C[G] + ").";
D = !0;
break
}
if (f) {
if (0 == (L.flags & 32)) {
this.error = "error: register operand " + G + " (" + C[G] + ") only allowed in vertex programs.";
D = !0;
break
}
if (I) {
this.error = "error: register operand " + G + " (" + C[G] + ") relative adressing not allowed in fragment programs.";
D = !0;
break
}
} else if (0 == (L.flags & 64)) {
this.error = "error: register operand " + G + " (" + C[G] + ") only allowed in fragment programs.";
D = !0;
break
}
C[G] = K.substr(C[G], C[G].indexOf(L.name) + L.name.length, null);
var M = I ? this.match(y[0], t) : this.match(C[G], t);
E = 0;
0 < M.length && (E = z.parseInt(M[0]));
if (Ba.gt(E, L.range)) {
N = L.range + 1;
this.error = "error: register operand " + G + " (" + C[G] + ") index exceeds limit of " +
(null == N ? "null" : z.string(Ba.toFloat(N))) + ".";
D = !0;
break
}
var P = this.match(C[G], q), O = 0 == G && 0 == (ma.flags & 128),
Aa = 2 == G && 0 != (ma.flags & 8), S = 0, za = 0, U = 0;
if (O && I) {
this.error = "error: relative can not be destination";
D = !0;
break
}
if (0 < P.length) {
for (var H = M = 0, Sa = P[0].length, Q = 1; Q < Sa;) H = K.cca(P[0], Q) - 120, Ba.gt(H, 2) && (H = 3), M = O ? M | 1 << H : M | H << (Q - 1 << 1), ++Q;
if (!O) for (; 4 >= Q;) M |= H << (Q - 1 << 1), ++Q
} else M = O ? 15 : 228;
if (I) {
P = this.match(y[0], w);
S = W.REGMAP.h[P[0]];
if (null == S) {
this.error = "error: bad index register";
D = !0;
break
}
S = S.emitCode;
H = this.match(y[0], u);
if (0 == H.length) {
this.error = "error: bad index register select";
D = !0;
break
}
za = K.cca(H[0], 1) - 120;
Ba.gt(za, 2) && (za = 3);
y = this.match(y[0], x);
0 < y.length && (U = z.parseInt(y[0]));
if (0 > U || 255 < U) {
this.error = "error: index offset " + U + " out of bounds. [0..255]";
D = !0;
break
}
this.verbose && Qa.info("RELATIVE: type=" + S + "==" + P[0] + " sel=" + (null == za ? "null" : z.string(Ba.toFloat(za))) + "==" + H[0] + " idx=" + (null == E ? "null" : z.string(Ba.toFloat(E))) + " offset=" + U, {
fileName: "openfl/utils/AGALMiniAssembler.hx", lineNumber: 518,
className: "openfl.utils.AGALMiniAssembler", methodName: "assemble"
})
}
this.verbose && Qa.info(" emit argcode=" + z.string(L) + "[" + (null == E ? "null" : z.string(Ba.toFloat(E))) + "][" + M + "]", {
fileName: "openfl/utils/AGALMiniAssembler.hx",
lineNumber: 525,
className: "openfl.utils.AGALMiniAssembler",
methodName: "assemble"
});
if (O) this.agalcode.writeShort(E), this.agalcode.writeByte(M), this.agalcode.writeByte(L.emitCode), F -= 32; else {
if (Aa) {
this.verbose && Qa.info(" emit sampler", {
fileName: "openfl/utils/AGALMiniAssembler.hx",
lineNumber: 541,
className: "openfl.utils.AGALMiniAssembler",
methodName: "assemble"
});
G = 5;
y = I = 0;
for (L = null == J ? 0 : J.length; y < L;) M = y++, this.verbose && Qa.info(" opt: " + J[M], {
fileName: "openfl/utils/AGALMiniAssembler.hx",
lineNumber: 552,
className: "openfl.utils.AGALMiniAssembler",
methodName: "assemble"
}), O = W.SAMPLEMAP.h[J[M]], null == O ? (I = parseFloat(J[M]), this.verbose && Qa.info(" bias: " + I, {
fileName: "openfl/utils/AGALMiniAssembler.hx",
lineNumber: 565,
className: "openfl.utils.AGALMiniAssembler",
methodName: "assemble"
})) :
(16 != O.flag && (G &= ~(15 << O.flag)), G |= O.mask << O.flag);
this.agalcode.writeShort(E);
this.agalcode.writeByte(8 * I | 0);
this.agalcode.writeByte(0);
this.agalcode.writeUnsignedInt(G);
this.verbose && Qa.info(" bits: " + (G - 5), {
fileName: "openfl/utils/AGALMiniAssembler.hx",
lineNumber: 586,
className: "openfl.utils.AGALMiniAssembler",
methodName: "assemble"
})
} else 0 == G && (this.agalcode.writeUnsignedInt(0), F -= 32), this.agalcode.writeShort(E), this.agalcode.writeByte(U), this.agalcode.writeByte(M), this.agalcode.writeByte(L.emitCode),
this.agalcode.writeByte(S), this.agalcode.writeShort(I ? za | 32768 : 0);
F -= 64
}
}
for (N = 0; N < F;) this.agalcode.writeByte(0), N += 8;
if (D) break
}
++A
}
"" != this.error && (this.error += "\n at line " + A + " " + a[A], Fb.set_length(this.agalcode, 0), Qa.info(this.error, {
fileName: "openfl/utils/AGALMiniAssembler.hx",
lineNumber: 631,
className: "openfl.utils.AGALMiniAssembler",
methodName: "assemble"
}));
if (this.debugEnabled) {
c = "generated bytecode:";
f = Fb.get_length(this.agalcode);
N = 0;
for (B = f; N < B;) f = N++, 0 == f % 16 && (c += "\n"), 0 == f % 4 && (c += " "),
f = T.hex(this.agalcode.b[f], 2), 2 > f.length && (f = "0" + f), c += f;
Qa.info(c, {
fileName: "openfl/utils/AGALMiniAssembler.hx",
lineNumber: 662,
className: "openfl.utils.AGALMiniAssembler",
methodName: "assemble"
})
}
this.verbose && Qa.info("AGALMiniAssembler.assemble time: " + (Oa.getTimer() - e) / 1E3 + "s", {
fileName: "openfl/utils/AGALMiniAssembler.hx",
lineNumber: 667,
className: "openfl.utils.AGALMiniAssembler",
methodName: "assemble"
});
return this.agalcode
}, initregmap: function (a, b) {
var c = W.REGMAP, d = new tf("va", "vertex attribute",
0, b ? 1024 : 1 == a || 2 == a ? 7 : 15, 66);
c.h.va = d;
c = W.REGMAP;
d = new tf("vc", "vertex constant", 1, b ? 1024 : 1 == a ? 127 : 249, 66);
c.h.vc = d;
c = W.REGMAP;
d = new tf("vt", "vertex temporary", 2, b ? 1024 : 1 == a ? 7 : 25, 67);
c.h.vt = d;
c = W.REGMAP;
d = new tf("vo", "vertex output", 3, b ? 1024 : 0, 65);
c.h.vo = d;
c = W.REGMAP;
d = new tf("vi", "varying", 4, b ? 1024 : 1 == a ? 7 : 9, 99);
c.h.vi = d;
c = W.REGMAP;
d = new tf("fc", "fragment constant", 1, b ? 1024 : 1 == a ? 27 : 2 == a ? 63 : 199, 34);
c.h.fc = d;
c = W.REGMAP;
d = new tf("ft", "fragment temporary", 2, b ? 1024 : 1 == a ? 7 : 25, 35);
c.h.ft = d;
c = W.REGMAP;
d =
new tf("fs", "texture sampler", 5, b ? 1024 : 7, 34);
c.h.fs = d;
c = W.REGMAP;
d = new tf("fo", "fragment output", 3, b ? 1024 : 1 == a ? 0 : 3, 33);
c.h.fo = d;
c = W.REGMAP;
d = new tf("fd", "fragment depth output", 6, b ? 1024 : 1 == a ? -1 : 0, 33);
c.h.fd = d;
c = W.REGMAP;
d = new tf("iid", "instance id", 7, b ? 1024 : 0, 66);
c.h.iid = d;
d = W.REGMAP.h.vo;
W.REGMAP.h.op = d;
d = W.REGMAP.h.vi;
W.REGMAP.h.i = d;
d = W.REGMAP.h.vi;
W.REGMAP.h.v = d;
d = W.REGMAP.h.fo;
W.REGMAP.h.oc = d;
d = W.REGMAP.h.fd;
W.REGMAP.h.od = d;
d = W.REGMAP.h.vi;
W.REGMAP.h.fi = d
}, match: function (a, b) {
for (var c = [], d = 0; b.matchSub(a,
d);) d = b.matched(0), c.push(d), d = b.matchedPos().pos + d.length;
return c
}, __class__: W
};
var ec = function (a, b, c, d) {
this.name = a;
this.numRegister = b;
this.emitCode = c;
this.flags = d
};
k["openfl.utils._AGALMiniAssembler.OpCode"] = ec;
ec.__name__ = "openfl.utils._AGALMiniAssembler.OpCode";
ec.prototype = {
emitCode: null, flags: null, name: null, numRegister: null, toString: function () {
return '[OpCode name="' + this.name + '", numRegister=' + this.numRegister + ", emitCode=" + this.emitCode + ", flags=" + this.flags + "]"
}, __class__: ec
};
var tf = function (a,
b, c, d, e) {
this.name = a;
this.longName = b;
this.emitCode = c;
this.range = d;
this.flags = e
};
k["openfl.utils._AGALMiniAssembler.Register"] = tf;
tf.__name__ = "openfl.utils._AGALMiniAssembler.Register";
tf.prototype = {
emitCode: null, name: null, longName: null, flags: null, range: null, toString: function () {
return '[Register name="' + this.name + '", longName="' + this.longName + '", emitCode=' + (null == this.emitCode ? "null" : z.string(Ba.toFloat(this.emitCode))) + ", range=" + (null == this.range ? "null" : z.string(Ba.toFloat(this.range))) + ", flags=" +
(null == this.flags ? "null" : z.string(Ba.toFloat(this.flags))) + "]"
}, __class__: tf
};
var cd = function (a, b, c) {
this.name = a;
this.flag = b;
this.mask = c
};
k["openfl.utils._AGALMiniAssembler.Sampler"] = cd;
cd.__name__ = "openfl.utils._AGALMiniAssembler.Sampler";
cd.prototype = {
flag: null, mask: null, name: null, toString: function () {
return '[Sampler name="' + this.name + '", flag="' + (null == this.flag ? "null" : z.string(Ba.toFloat(this.flag))) + '", mask=' + (null == this.mask ? "null" : z.string(Ba.toFloat(this.mask))) + "]"
}, __class__: cd
};
var nn =
function () {
};
k["openfl.utils.IAssetCache"] = nn;
nn.__name__ = "openfl.utils.IAssetCache";
nn.__isInterface__ = !0;
nn.prototype = {
get_enabled: null,
set_enabled: null,
clear: null,
getBitmapData: null,
getFont: null,
getSound: null,
hasBitmapData: null,
hasFont: null,
hasSound: null,
removeBitmapData: null,
removeFont: null,
removeSound: null,
setBitmapData: null,
setFont: null,
setSound: null,
__class__: nn,
__properties__: {set_enabled: "set_enabled", get_enabled: "get_enabled"}
};
var on = function () {
this.__enabled = !0;
this.bitmapData = new xa;
this.font = new xa;
this.sound = new xa
};
k["openfl.utils.AssetCache"] = on;
on.__name__ = "openfl.utils.AssetCache";
on.__interfaces__ = [nn];
on.prototype = {
bitmapData: null, font: null, sound: null, __enabled: null, clear: function (a) {
if (null == a) this.bitmapData = new xa, this.font = new xa, this.sound = new xa; else {
var b = this.bitmapData.h;
b = Object.keys(b);
for (var c = b.length, d = 0; d < c;) {
var e = b[d++];
T.startsWith(e, a) && this.removeBitmapData(e)
}
b = this.font.h;
b = Object.keys(b);
c = b.length;
for (d = 0; d < c;) e = b[d++], T.startsWith(e, a) && this.removeFont(e);
b = this.sound.h;
b = Object.keys(b);
c = b.length;
for (d = 0; d < c;) e = b[d++], T.startsWith(e, a) && this.removeSound(e)
}
}, getBitmapData: function (a) {
return this.bitmapData.h[a]
}, getFont: function (a) {
return this.font.h[a]
}, getSound: function (a) {
return this.sound.h[a]
}, hasBitmapData: function (a) {
return Object.prototype.hasOwnProperty.call(this.bitmapData.h, a)
}, hasFont: function (a) {
return Object.prototype.hasOwnProperty.call(this.font.h, a)
}, hasSound: function (a) {
return Object.prototype.hasOwnProperty.call(this.sound.h, a)
},
removeBitmapData: function (a) {
var b = ta.cache.image;
Object.prototype.hasOwnProperty.call(b.h, a) && delete b.h[a];
b = this.bitmapData;
return Object.prototype.hasOwnProperty.call(b.h, a) ? (delete b.h[a], !0) : !1
}, removeFont: function (a) {
var b = ta.cache.font;
Object.prototype.hasOwnProperty.call(b.h, a) && delete b.h[a];
b = this.font;
return Object.prototype.hasOwnProperty.call(b.h, a) ? (delete b.h[a], !0) : !1
}, removeSound: function (a) {
var b = ta.cache.audio;
Object.prototype.hasOwnProperty.call(b.h, a) && delete b.h[a];
b = this.sound;
return Object.prototype.hasOwnProperty.call(b.h, a) ? (delete b.h[a], !0) : !1
}, setBitmapData: function (a, b) {
this.bitmapData.h[a] = b
}, setFont: function (a, b) {
this.font.h[a] = b
}, setSound: function (a, b) {
this.sound.h[a] = b
}, get_enabled: function () {
return this.__enabled
}, set_enabled: function (a) {
return this.__enabled = a
}, __class__: on, __properties__: {set_enabled: "set_enabled", get_enabled: "get_enabled"}
};
var qe = function () {
Ab.call(this)
};
k["openfl.utils.AssetLibrary"] = qe;
qe.__name__ = "openfl.utils.AssetLibrary";
qe.fromBytes =
function (a, b) {
return qe.fromManifest(Nc.fromBytes(Fb.toLimeBytes(a), b))
};
qe.fromFile = function (a, b) {
return qe.fromManifest(Nc.fromFile(a, b))
};
qe.fromManifest = function (a) {
a = Ab.fromManifest(a);
if (null != a) {
if (a instanceof qe) return a;
var b = new qe;
b.__proxy = a;
return b
}
return null
};
qe.loadFromBytes = function (a, b) {
return Nc.loadFromBytes(Fb.toLimeBytes(a), b).then(function (a) {
return qe.loadFromManifest(a)
})
};
qe.loadFromFile = function (a, b) {
return Nc.loadFromFile(a, b).then(function (a) {
return qe.loadFromManifest(a)
})
};
qe.loadFromManifest = function (a) {
a = qe.fromManifest(a);
return null != a ? a.load().then(function (a) {
return ob.withValue(a)
}) : ob.withError("Could not load asset manifest")
};
qe.__super__ = Ab;
qe.prototype = u(Ab.prototype, {
__proxy: null, exists: function (a, b) {
return null != this.__proxy ? this.__proxy.exists(a, b) : Ab.prototype.exists.call(this, a, b)
}, getAsset: function (a, b) {
return null != this.__proxy ? this.__proxy.getAsset(a, b) : Ab.prototype.getAsset.call(this, a, b)
}, getAudioBuffer: function (a) {
return null != this.__proxy ? this.__proxy.getAudioBuffer(a) :
Ab.prototype.getAudioBuffer.call(this, a)
}, getBytes: function (a) {
return null != this.__proxy ? this.__proxy.getBytes(a) : Ab.prototype.getBytes.call(this, a)
}, getFont: function (a) {
return null != this.__proxy ? this.__proxy.getFont(a) : Ab.prototype.getFont.call(this, a)
}, getImage: function (a) {
return null != this.__proxy ? this.__proxy.getImage(a) : Ab.prototype.getImage.call(this, a)
}, getMovieClip: function (a) {
return null
}, getPath: function (a) {
return null != this.__proxy ? this.__proxy.getPath(a) : Ab.prototype.getPath.call(this,
a)
}, getText: function (a) {
return null != this.__proxy ? this.__proxy.getText(a) : Ab.prototype.getText.call(this, a)
}, isLocal: function (a, b) {
return null != this.__proxy ? this.__proxy.isLocal(a, b) : Ab.prototype.isLocal.call(this, a, b)
}, list: function (a) {
return null != this.__proxy ? this.__proxy.list(a) : Ab.prototype.list.call(this, a)
}, loadAsset: function (a, b) {
return null != this.__proxy ? this.__proxy.loadAsset(a, b) : Ab.prototype.loadAsset.call(this, a, b)
}, load: function () {
return null != this.__proxy ? this.__proxy.load() : Ab.prototype.load.call(this)
},
loadAudioBuffer: function (a) {
return null != this.__proxy ? this.__proxy.loadAudioBuffer(a) : Ab.prototype.loadAudioBuffer.call(this, a)
}, loadBytes: function (a) {
return null != this.__proxy ? this.__proxy.loadBytes(a) : Ab.prototype.loadBytes.call(this, a)
}, loadFont: function (a) {
return null != this.__proxy ? this.__proxy.loadFont(a) : Ab.prototype.loadFont.call(this, a)
}, loadImage: function (a) {
return null != this.__proxy ? this.__proxy.loadImage(a) : Ab.prototype.loadImage.call(this, a)
}, loadMovieClip: function (a) {
return ob.withValue(this.getMovieClip(a))
},
loadText: function (a) {
return null != this.__proxy ? this.__proxy.loadText(a) : Ab.prototype.loadText.call(this, a)
}, unload: function () {
null != this.__proxy ? this.__proxy.unload() : Ab.prototype.unload.call(this)
}, __class__: qe
});
var Da = function () {
};
k["openfl.utils.Assets"] = Da;
Da.__name__ = "openfl.utils.Assets";
Da.addEventListener = function (a, b, c, d, e) {
null == e && (e = !1);
null == d && (d = 0);
null == c && (c = !1);
ta.onChange.has(Da.LimeAssets_onChange) || ta.onChange.add(Da.LimeAssets_onChange);
Da.dispatcher.addEventListener(a, b, c,
d, e)
};
Da.dispatchEvent = function (a) {
return Da.dispatcher.dispatchEvent(a)
};
Da.exists = function (a, b) {
return ta.exists(a, b)
};
Da.getBitmapData = function (a, b) {
null == b && (b = !0);
if (b && Da.cache.get_enabled() && Da.cache.hasBitmapData(a)) {
var c = Da.cache.getBitmapData(a);
if (Da.isValidBitmapData(c)) return c
}
c = ta.getImage(a, !1);
return null != c ? (c = ka.fromImage(c), b && Da.cache.get_enabled() && Da.cache.setBitmapData(a, c), c) : null
};
Da.getBytes = function (a) {
return Fb.fromLimeBytes(ta.getBytes(a))
};
Da.getFont = function (a, b) {
null ==
b && (b = !0);
if (b && Da.cache.get_enabled() && Da.cache.hasFont(a)) return Da.cache.getFont(a);
var c = ta.getFont(a, !1);
if (null != c) {
var d = new Wc;
d.__fromLimeFont(c);
b && Da.cache.get_enabled() && Da.cache.setFont(a, d);
return d
}
return new Wc
};
Da.getLibrary = function (a) {
return ta.getLibrary(a)
};
Da.getMovieClip = function (a) {
var b = a.substring(0, a.indexOf(":")), c = K.substr(a, a.indexOf(":") + 1, null), d = Da.getLibrary(b);
if (null != d) {
if (d instanceof qe && d.exists(c, "MOVIE_CLIP")) {
if (d.isLocal(c, "MOVIE_CLIP")) return d.getMovieClip(c);
Qa.error('MovieClip asset "' + a + '" exists, but only asynchronously', {
fileName: "openfl/utils/Assets.hx",
lineNumber: 207,
className: "openfl.utils.Assets",
methodName: "getMovieClip"
});
return null
}
Qa.error('There is no MovieClip asset with an ID of "' + a + '"', {
fileName: "openfl/utils/Assets.hx",
lineNumber: 213,
className: "openfl.utils.Assets",
methodName: "getMovieClip"
})
} else Qa.error('There is no asset library named "' + b + '"', {
fileName: "openfl/utils/Assets.hx",
lineNumber: 217,
className: "openfl.utils.Assets",
methodName: "getMovieClip"
});
return null
};
Da.getMusic = function (a, b) {
null == b && (b = !0);
return Da.getSound(a, b)
};
Da.getPath = function (a) {
return ta.getPath(a)
};
Da.getSound = function (a, b) {
null == b && (b = !0);
if (b && Da.cache.get_enabled() && Da.cache.hasSound(a)) {
var c = Da.cache.getSound(a);
if (Da.isValidSound(c)) return c
}
c = ta.getAudioBuffer(a, !1);
return null != c ? (c = Cf.fromAudioBuffer(c), b && Da.cache.get_enabled() && Da.cache.setSound(a, c), c) : null
};
Da.getText = function (a) {
return ta.getText(a)
};
Da.hasEventListener = function (a) {
return Da.dispatcher.hasEventListener(a)
};
Da.hasLibrary = function (a) {
return ta.hasLibrary(a)
};
Da.isLocal = function (a, b, c) {
null == c && (c = !0);
if (c && Da.cache.get_enabled() && (("IMAGE" == b || null == b) && Da.cache.hasBitmapData(a) || ("FONT" == b || null == b) && Da.cache.hasFont(a) || ("SOUND" == b || "MUSIC" == b || null == b) && Da.cache.hasSound(a))) return !0;
c = a.substring(0, a.indexOf(":"));
a = K.substr(a, a.indexOf(":") + 1, null);
c = Da.getLibrary(c);
return null != c ? c.isLocal(a, b) : !1
};
Da.isValidBitmapData = function (a) {
return null != a && null != a.image
};
Da.isValidSound = function (a) {
return !0
};
Da.list = function (a) {
return ta.list(a)
};
Da.loadBitmapData = function (a, b) {
null == b && (b = !0);
null == b && (b = !0);
var c = new fe;
if (b && Da.cache.get_enabled() && Da.cache.hasBitmapData(a)) {
var d = Da.cache.getBitmapData(a);
if (Da.isValidBitmapData(d)) return c.complete(d), c.future
}
ta.loadImage(a, !1).onComplete(function (d) {
null != d ? (d = ka.fromImage(d), b && Da.cache.get_enabled() && Da.cache.setBitmapData(a, d), c.complete(d)) : c.error('[Assets] Could not load Image "' + a + '"')
}).onError(q(c, c.error)).onProgress(q(c, c.progress));
return c.future
};
Da.loadBytes = function (a) {
var b = new fe;
a = ta.loadBytes(a);
a.onComplete(function (a) {
b.complete(Fb.fromLimeBytes(a))
});
a.onProgress(function (a, d) {
b.progress(a, d)
});
a.onError(function (a) {
b.error(a)
});
return b.future
};
Da.loadFont = function (a, b) {
null == b && (b = !0);
null == b && (b = !0);
var c = new fe;
if (b && Da.cache.get_enabled() && Da.cache.hasFont(a)) return c.complete(Da.cache.getFont(a)), c.future;
ta.loadFont(a).onComplete(function (d) {
var e = new Wc;
e.__fromLimeFont(d);
b && Da.cache.get_enabled() && Da.cache.setFont(a,
e);
c.complete(e)
}).onError(q(c, c.error)).onProgress(q(c, c.progress));
return c.future
};
Da.loadLibrary = function (a) {
return ta.loadLibrary(a).then(function (b) {
var c = null;
null != b && (b instanceof qe ? c = b : (c = new qe, c.__proxy = b, ta.registerLibrary(a, c)));
return ob.withValue(c)
})
};
Da.loadMusic = function (a, b) {
null == b && (b = !0);
null == b && (b = !0);
return new ob(function () {
return Da.getMusic(a, b)
})
};
Da.loadMovieClip = function (a) {
var b = new fe, c = a.substring(0, a.indexOf(":")), d = K.substr(a, a.indexOf(":") + 1, null),
e = Da.getLibrary(c);
if (null != e) {
if (e instanceof qe && e.exists(d, "MOVIE_CLIP")) return b.completeWith(e.loadMovieClip(d)), b.future;
b.error('[Assets] There is no MovieClip asset with an ID of "' + a + '"')
} else b.error('[Assets] There is no asset library named "' + c + '"');
return b.future
};
Da.loadSound = function (a, b) {
null == b && (b = !0);
null == b && (b = !0);
var c = new fe;
ta.loadAudioBuffer(a, b).onComplete(function (d) {
null != d ? (d = Cf.fromAudioBuffer(d), b && Da.cache.get_enabled() && Da.cache.setSound(a, d), c.complete(d)) : c.error('[Assets] Could not load Sound "' +
a + '"')
}).onError(q(c, c.error)).onProgress(q(c, c.progress));
return c.future
};
Da.loadText = function (a) {
return ta.loadText(a)
};
Da.registerLibrary = function (a, b) {
ta.registerLibrary(a, b)
};
Da.removeEventListener = function (a, b, c) {
null == c && (c = !1);
Da.dispatcher.removeEventListener(a, b, c)
};
Da.resolveClass = function (a) {
return k[a]
};
Da.resolveEnum = function (a) {
return A[a]
};
Da.unloadLibrary = function (a) {
ta.unloadLibrary(a)
};
Da.LimeAssets_onChange = function () {
Da.dispatchEvent(new oa("change"))
};
var Fb = {
__properties__: {
set_position: "set_position",
get_position: "get_position",
set_length: "set_length",
get_length: "get_length",
get_bytesAvailable: "get_bytesAvailable",
set_defaultObjectEncoding: "set_defaultObjectEncoding",
get_defaultObjectEncoding: "get_defaultObjectEncoding",
set_defaultEndian: "set_defaultEndian",
get_defaultEndian: "get_defaultEndian"
}, _new: function (a) {
null == a && (a = 0);
return new uc(a)
}, clear: function (a) {
a.clear()
}, compress: function (a, b) {
a.compress(b)
}, deflate: function (a) {
a.deflate()
}, fromArrayBuffer: function (a) {
return null == a ? null : uc.fromBytes(lb.ofData(a))
},
fromBytes: function (a) {
return null == a ? null : a instanceof uc ? a : uc.fromBytes(a)
}, fromBytesData: function (a) {
return null == a ? null : uc.fromBytes(lb.ofData(a))
}, fromFile: function (a) {
return Fb.fromLimeBytes(oc.fromFile(a))
}, fromLimeBytes: function (a) {
return Fb.fromBytes(a)
}, get: function (a, b) {
return a.b[b]
}, inflate: function (a) {
a.inflate()
}, loadFromBytes: function (a) {
return oc.loadFromBytes(a).then(function (a) {
a = Fb.fromLimeBytes(a);
return ob.withValue(a)
})
}, loadFromFile: function (a) {
return oc.loadFromFile(a).then(function (a) {
a =
Fb.fromLimeBytes(a);
return ob.withValue(a)
})
}, readBoolean: function (a) {
return a.readBoolean()
}, readByte: function (a) {
return a.readByte()
}, readBytes: function (a, b, c, d) {
null == d && (d = 0);
null == c && (c = 0);
a.readBytes(b, c, d)
}, readDouble: function (a) {
return a.readDouble()
}, readFloat: function (a) {
return a.readFloat()
}, readInt: function (a) {
return a.readInt()
}, readMultiByte: function (a, b, c) {
return a.readMultiByte(b, c)
}, readObject: function (a) {
return a.readObject()
}, readShort: function (a) {
return a.readShort()
}, readUTF: function (a) {
return a.readUTF()
},
readUTFBytes: function (a, b) {
return a.readUTFBytes(b)
}, readUnsignedByte: function (a) {
return a.readUnsignedByte()
}, readUnsignedInt: function (a) {
return a.readUnsignedInt()
}, readUnsignedShort: function (a) {
return a.readUnsignedShort()
}, set: function (a, b, c) {
a.__resize(b + 1);
a.b[b] = c & 255;
return c
}, toArrayBuffer: function (a) {
return a.b.bufferValue
}, toBytePointer: function (a) {
ss.set(Fb.__bytePointer, a, null, null, a.position);
return Fb.__bytePointer
}, toBytes: function (a) {
return a
}, toBytesData: function (a) {
return a.b.bufferValue
},
toLimeBytes: function (a) {
return a
}, toString: function (a) {
return a.toString()
}, uncompress: function (a, b) {
a.uncompress(b)
}, writeBoolean: function (a, b) {
a.writeBoolean(b)
}, writeByte: function (a, b) {
a.writeByte(b)
}, writeBytes: function (a, b, c, d) {
null == d && (d = 0);
null == c && (c = 0);
a.writeBytes(b, c, d)
}, writeDouble: function (a, b) {
a.writeDouble(b)
}, writeFloat: function (a, b) {
a.writeFloat(b)
}, writeInt: function (a, b) {
a.writeInt(b)
}, writeMultiByte: function (a, b, c) {
a.writeMultiByte(b, c)
}, writeObject: function (a, b) {
a.writeObject(b)
},
writeShort: function (a, b) {
a.writeShort(b)
}, writeUTF: function (a, b) {
a.writeUTF(b)
}, writeUTFBytes: function (a, b) {
a.writeUTFBytes(b)
}, writeUnsignedInt: function (a, b) {
a.writeUnsignedInt(b)
}, get_bytesAvailable: function (a) {
return a.length - a.position
}, get_defaultEndian: function () {
null == uc.__defaultEndian && ($a.get_endianness() == Eg.LITTLE_ENDIAN ? uc.__defaultEndian = 1 : uc.__defaultEndian = 0);
return uc.__defaultEndian
}, set_defaultEndian: function (a) {
return uc.__defaultEndian = a
}, get_defaultObjectEncoding: function () {
return uc.defaultObjectEncoding
},
set_defaultObjectEncoding: function (a) {
return uc.defaultObjectEncoding = a
}, get_endian: function (a) {
return a.__endian
}, set_endian: function (a, b) {
return a.__endian = b
}, get_length: function (a) {
return null == a ? 0 : a.length
}, set_length: function (a, b) {
0 < b && (a.__resize(b), b < a.position && (a.position = b));
return a.length = b
}, get_objectEncoding: function (a) {
return a.objectEncoding
}, set_objectEncoding: function (a, b) {
return a.objectEncoding = b
}, get_position: function (a) {
return a.position
}, set_position: function (a, b) {
return a.position =
b
}
}, pn = function () {
};
k["openfl.utils.IDataOutput"] = pn;
pn.__name__ = "openfl.utils.IDataOutput";
pn.__isInterface__ = !0;
pn.prototype = {
get_endian: null,
set_endian: null,
objectEncoding: null,
writeBoolean: null,
writeByte: null,
writeBytes: null,
writeDouble: null,
writeFloat: null,
writeInt: null,
writeMultiByte: null,
writeObject: null,
writeShort: null,
writeUnsignedInt: null,
writeUTF: null,
writeUTFBytes: null,
__class__: pn,
__properties__: {set_endian: "set_endian", get_endian: "get_endian"}
};
var qn = function () {
};
k["openfl.utils.IDataInput"] =
qn;
qn.__name__ = "openfl.utils.IDataInput";
qn.__isInterface__ = !0;
qn.prototype = {
get_bytesAvailable: null,
get_endian: null,
set_endian: null,
objectEncoding: null,
readBoolean: null,
readByte: null,
readBytes: null,
readDouble: null,
readFloat: null,
readInt: null,
readMultiByte: null,
readObject: null,
readShort: null,
readUnsignedByte: null,
readUnsignedInt: null,
readUnsignedShort: null,
readUTF: null,
readUTFBytes: null,
__class__: qn,
__properties__: {
set_endian: "set_endian",
get_endian: "get_endian",
get_bytesAvailable: "get_bytesAvailable"
}
};
var uc = function (a) {
null == a && (a = 0);
var b = new lb(new ArrayBuffer(a));
lb.call(this, b.b.buffer);
this.__length = a;
null == uc.__defaultEndian && ($a.get_endianness() == Eg.LITTLE_ENDIAN ? uc.__defaultEndian = 1 : uc.__defaultEndian = 0);
this.__endian = uc.__defaultEndian;
this.objectEncoding = uc.defaultObjectEncoding;
this.position = 0
};
k["openfl.utils.ByteArrayData"] = uc;
uc.__name__ = "openfl.utils.ByteArrayData";
uc.__interfaces__ = [pn, qn];
uc.__properties__ = {set_defaultEndian: "set_defaultEndian", get_defaultEndian: "get_defaultEndian"};
uc.fromBytes = function (a) {
var b = new uc;
b.__fromBytes(a);
return b
};
uc.get_defaultEndian = function () {
null == uc.__defaultEndian && ($a.get_endianness() == Eg.LITTLE_ENDIAN ? uc.__defaultEndian = 1 : uc.__defaultEndian = 0);
return uc.__defaultEndian
};
uc.set_defaultEndian = function (a) {
return uc.__defaultEndian = a
};
uc.__super__ = lb;
uc.prototype = u(lb.prototype, {
objectEncoding: null,
position: null,
__endian: null,
__length: null,
clear: function () {
this.position = this.length = 0
},
compress: function (a) {
null == a && (a = 2);
if (this.__length > this.length) {
var b =
this.length;
this.length = this.__length;
var c = new lb(new ArrayBuffer(b));
c.blit(0, this, 0, b);
this.b = c.b;
this.__length = c.length;
this.data = c.data;
this.length = b
}
switch (a) {
case 0:
a = oc.compress(this, ge.DEFLATE);
break;
case 1:
a = oc.compress(this, ge.LZMA);
break;
default:
a = oc.compress(this, ge.ZLIB)
}
null != a && (this.b = a.b, this.__length = a.length, this.data = a.data, this.position = this.length = this.__length)
},
deflate: function () {
this.compress(0)
},
inflate: function () {
this.uncompress(0)
},
readBoolean: function () {
if (this.position <
this.length) return 0 != this.b[this.position++];
throw I.thrown(new hh);
},
readByte: function () {
var a = this.readUnsignedByte();
return 0 != (a & 128) ? a - 256 : a
},
readBytes: function (a, b, c) {
null == c && (c = 0);
null == b && (b = 0);
0 == c && (c = this.length - this.position);
if (this.position + c > this.length) throw I.thrown(new hh);
a.length < b + c && a.__resize(b + c);
a.blit(b, this, this.position, c);
this.position += c
},
readDouble: function () {
if (1 == this.__endian) {
if (this.position + 8 > this.length) throw I.thrown(new hh);
this.position += 8;
return this.getDouble(this.position -
8)
}
var a = this.readInt(), b = this.readInt();
return ee.i64ToDouble(b, a)
},
readFloat: function () {
if (1 == this.__endian) {
if (this.position + 4 > this.length) throw I.thrown(new hh);
this.position += 4;
return this.getFloat(this.position - 4)
}
return ee.i32ToFloat(this.readInt())
},
readInt: function () {
var a = this.readUnsignedByte(), b = this.readUnsignedByte(), c = this.readUnsignedByte(),
d = this.readUnsignedByte();
return 1 == this.__endian ? d << 24 | c << 16 | b << 8 | a : a << 24 | b << 16 | c << 8 | d
},
readMultiByte: function (a, b) {
return this.readUTFBytes(a)
},
readObject: function () {
switch (this.objectEncoding) {
case 10:
var a = this.readUTF();
return Oe.run(a);
case 12:
return a = this.readUTF(), JSON.parse(a);
default:
return null
}
},
readShort: function () {
var a = this.readUnsignedByte(), b = this.readUnsignedByte();
a = 1 == this.__endian ? b << 8 | a : a << 8 | b;
return 0 != (a & 32768) ? a - 65536 : a
},
readUnsignedByte: function () {
if (this.position < this.length) return this.b[this.position++];
throw I.thrown(new hh);
},
readUnsignedInt: function () {
var a = this.readUnsignedByte(), b = this.readUnsignedByte(),
c = this.readUnsignedByte(), d = this.readUnsignedByte();
return 1 == this.__endian ? d << 24 | c << 16 | b << 8 | a : a << 24 | b << 16 | c << 8 | d
},
readUnsignedShort: function () {
var a = this.readUnsignedByte(), b = this.readUnsignedByte();
return 1 == this.__endian ? (b << 8) + a : a << 8 | b
},
readUTF: function () {
var a = this.readUnsignedShort();
return this.readUTFBytes(a)
},
readUTFBytes: function (a) {
if (this.position + a > this.length) throw I.thrown(new hh);
this.position += a;
return this.getString(this.position - a, a)
},
uncompress: function (a) {
null == a && (a = 2);
if (this.__length >
this.length) {
var b = this.length;
this.length = this.__length;
var c = new lb(new ArrayBuffer(b));
c.blit(0, this, 0, b);
this.b = c.b;
this.__length = c.length;
this.data = c.data;
this.length = b
}
switch (a) {
case 0:
a = oc.decompress(this, ge.DEFLATE);
break;
case 1:
a = oc.decompress(this, ge.LZMA);
break;
default:
a = oc.decompress(this, ge.ZLIB)
}
null != a && (this.b = a.b, this.__length = a.length, this.data = a.data, this.length = this.__length);
this.position = 0
},
writeBoolean: function (a) {
this.writeByte(a ? 1 : 0)
},
writeByte: function (a) {
this.__resize(this.position +
1);
this.b[this.position++] = a & 255
},
writeBytes: function (a, b, c) {
null == c && (c = 0);
null == b && (b = 0);
0 != Fb.get_length(a) && (0 == c && (c = Fb.get_length(a) - b), this.__resize(this.position + c), this.blit(this.position, a, b, c), this.position += c)
},
writeDouble: function (a) {
a = ee.doubleToI64(a);
1 == this.__endian ? (this.writeInt(a.low), this.writeInt(a.high)) : (this.writeInt(a.high), this.writeInt(a.low))
},
writeFloat: function (a) {
1 == this.__endian ? (this.__resize(this.position + 4), this.setFloat(this.position, a), this.position += 4) : (a = ee.floatToI32(a),
this.writeInt(a))
},
writeInt: function (a) {
this.__resize(this.position + 4);
1 == this.__endian ? (this.b[this.position++] = a & 255, this.b[this.position++] = a >> 8 & 255, this.b[this.position++] = a >> 16 & 255, this.b[this.position++] = a >> 24 & 255) : (this.b[this.position++] = a >> 24 & 255, this.b[this.position++] = a >> 16 & 255, this.b[this.position++] = a >> 8 & 255, this.b[this.position++] = a & 255)
},
writeMultiByte: function (a, b) {
this.writeUTFBytes(a)
},
writeObject: function (a) {
switch (this.objectEncoding) {
case 10:
a = Ge.run(a);
this.writeUTF(a);
break;
case 12:
a = JSON.stringify(a), this.writeUTF(a)
}
},
writeShort: function (a) {
this.__resize(this.position + 2);
1 == this.__endian ? (this.b[this.position++] = a & 255, this.b[this.position++] = a >> 8 & 255) : (this.b[this.position++] = a >> 8 & 255, this.b[this.position++] = a & 255)
},
writeUnsignedInt: function (a) {
this.writeInt(a)
},
writeUTF: function (a) {
a = lb.ofString(a);
this.writeShort(a.length);
this.writeBytes(Fb.fromBytes(a))
},
writeUTFBytes: function (a) {
a = lb.ofString(a);
this.writeBytes(Fb.fromBytes(a))
},
__fromBytes: function (a) {
this.b =
a.b;
this.__length = a.length;
this.data = a.data;
this.length = a.length
},
__resize: function (a) {
if (a > this.__length) {
var b = new lb(new ArrayBuffer(3 * (a + 1) >> 1));
if (0 < this.__length) {
var c = this.length;
this.length = this.__length;
b.blit(0, this, 0, this.__length);
this.length = c
}
this.b = b.b;
this.__length = b.length;
this.data = b.data
}
this.length < a && (this.length = a)
},
__setData: function (a) {
this.b = a.b;
this.__length = a.length;
this.data = a.data
},
get_bytesAvailable: function () {
return this.length - this.position
},
get_endian: function () {
return this.__endian
},
set_endian: function (a) {
return this.__endian = a
},
__class__: uc,
__properties__: {
set_endian: "set_endian",
get_endian: "get_endian",
get_bytesAvailable: "get_bytesAvailable"
}
});
var ts = {
exists: function (a, b) {
return a.exists(b)
}, get: function (a, b) {
return a.get(b)
}, keyValueIterator: function (a) {
return a.keyValueIterator()
}, remove: function (a, b) {
return a.remove(b)
}, set: function (a, b, c) {
a.set(b, c);
return c
}, iterator: function (a) {
return a.keys()
}, each: function (a) {
return a.iterator()
}, toStringMap: function (a, b) {
return new xa
},
toIntMap: function (a, b) {
return new eb
}, toFloatMap: function (a, b) {
return new ej
}, toEnumValueMapMap: function (a, b) {
return new Mj
}, toObjectMap: function (a, b) {
return new Oc
}, toUtilsObjectMap: function (a, b) {
return new fj
}, toClassMap: function (a, b) {
return new gj
}, fromStringMap: function (a) {
return a
}, fromIntMap: function (a) {
return a
}, fromFloatMap: function (a) {
return a
}, fromObjectMap: function (a) {
return a
}, fromUtilsObjectMap: function (a) {
return a
}, fromClassMap: function (a) {
return a
}
}, gj = function () {
this.types = new xa;
this.values = new xa
};
k["openfl.utils._Dictionary.ClassMap"] = gj;
gj.__name__ = "openfl.utils._Dictionary.ClassMap";
gj.__interfaces__ = [jd];
gj.prototype = {
types: null, values: null, clear: function () {
this.types.h = Object.create(null);
this.values.h = Object.create(null)
}, copy: function () {
for (var a = new gj, b = this.keys(); b.hasNext();) {
var c = b.next();
a.set(c, this.get(c))
}
return a
}, exists: function (a) {
return Object.prototype.hasOwnProperty.call(this.types.h, a.__name__)
}, get: function (a) {
return this.values.h[a.__name__]
},
keyValueIterator: function () {
return new kh(this)
}, keys: function () {
return new Bi(this.types.h)
}, iterator: function () {
return new Bi(this.values.h)
}, remove: function (a) {
a = a.__name__;
var b = this.types;
Object.prototype.hasOwnProperty.call(b.h, a) ? (delete b.h[a], b = !0) : b = !1;
if (b) return !0;
b = this.values;
return Object.prototype.hasOwnProperty.call(b.h, a) ? (delete b.h[a], !0) : !1
}, set: function (a, b) {
var c = a.__name__;
this.types.h[c] = a;
this.values.h[c] = b
}, toString: function () {
return xa.stringify(this.values.h)
}, __class__: gj
};
var ej = function () {
this.floatKeys = [];
this.values = []
};
k["openfl.utils._Dictionary.FloatMap"] = ej;
ej.__name__ = "openfl.utils._Dictionary.FloatMap";
ej.__interfaces__ = [jd];
ej.prototype = {
floatKeys: null, values: null, clear: function () {
this.floatKeys = [];
this.values = []
}, copy: function () {
for (var a = new ej, b = this.keys(); b.hasNext();) {
var c = b.next();
a.set(c, this.get(c))
}
return a
}, exists: function (a) {
return -1 < this.indexOf(a)
}, get: function (a) {
a = this.indexOf(a);
return -1 < a ? this.values[a] : null
}, keyValueIterator: function () {
return new kh(this)
},
keys: function () {
return new Qe(this.floatKeys.slice())
}, iterator: function () {
return new Qe(this.values.slice())
}, remove: function (a) {
a = this.indexOf(a);
return -1 < a ? (this.floatKeys.splice(a, 1), this.values.splice(a, 1), !0) : !1
}, set: function (a, b) {
this.insertSorted(a, b)
}, indexOf: function (a) {
var b = this.floatKeys.length, c = 0, d = b - 1;
if (0 == b) return -1;
for (; c < d;) {
b = Math.floor((c + d) / 2);
if (this.floatKeys[b] == a) return b;
this.floatKeys[b] > a ? d = b - 1 : c = b + 1
}
return this.floatKeys[c] == a ? c : -1
}, insertSorted: function (a, b) {
var c =
this.floatKeys.length, d = 0, e = c - 1;
if (0 == c) this.floatKeys.push(a), this.values.push(b); else {
for (; d < e;) {
c = Math.floor((d + e) / 2);
if (this.floatKeys[c] == a) {
this.values[c] = b;
return
}
this.floatKeys[c] > a ? e = c - 1 : d = c + 1
}
this.floatKeys[d] > a ? (this.floatKeys.splice(d, 0, a), this.values.splice(d, 0, b)) : this.floatKeys[d] < a ? (this.floatKeys.splice(d + 1, 0, a), this.values.splice(d + 1, 0, b)) : this.values[d] = b
}
}, toString: function () {
return this.values.toString()
}, __class__: ej
};
var fj = function () {
this.map = new Oc
};
k["openfl.utils._Dictionary.UtilsObjectMap"] =
fj;
fj.__name__ = "openfl.utils._Dictionary.UtilsObjectMap";
fj.__interfaces__ = [jd];
fj.prototype = {
map: null, clear: function () {
this.map.h = {__keys__: {}}
}, copy: function () {
for (var a = new fj, b = this.keys(); b.hasNext();) {
var c = b.next();
a.set(c, this.get(c))
}
return a
}, exists: function (a) {
return null != this.map.h.__keys__[a.__id__]
}, get: function (a) {
return this.map.h[a.__id__]
}, keyValueIterator: function () {
return new kh(this)
}, keys: function () {
return this.map.keys()
}, iterator: function () {
return this.map.iterator()
}, remove: function (a) {
return this.map.remove(a)
},
set: function (a, b) {
this.map.set(a, b)
}, toString: function () {
return this.map.toString()
}, __class__: fj
};
var Xr = {
fromLimeEndian: function (a) {
switch (a._hx_index) {
case 0:
return 1;
case 1:
return 0
}
}, fromString: function (a) {
switch (a) {
case "bigEndian":
return 0;
case "littleEndian":
return 1;
default:
return null
}
}, toLimeEndian: function (a) {
switch (a) {
case 0:
return Eg.BIG_ENDIAN;
case 1:
return Eg.LITTLE_ENDIAN;
default:
return null
}
}, toString: function (a) {
switch (a) {
case 0:
return "bigEndian";
case 1:
return "littleEndian";
default:
return null
}
}
},
rn = function () {
};
k["haxe.lang.Iterator"] = rn;
rn.__name__ = "haxe.lang.Iterator";
rn.__isInterface__ = !0;
rn.prototype = {hasNext: null, next: null, __class__: rn};
var sn = function () {
};
k["haxe.lang.Iterable"] = sn;
sn.__name__ = "haxe.lang.Iterable";
sn.__isInterface__ = !0;
sn.prototype = {iterator: null, __class__: sn};
var Ic = function () {
};
k["openfl.utils._internal.Lib"] = Ic;
Ic.__name__ = "openfl.utils._internal.Lib";
Ic.notImplemented = function (a) {
var b = a.className + "." + a.methodName;
Object.prototype.hasOwnProperty.call(Ic.__sentWarnings.h,
b) || (Ic.__sentWarnings.h[b] = !0, Qa.warn(a.methodName + " is not implemented", a))
};
var di = function () {
this.rollOutStack = []
};
k["openfl.utils._internal.TouchData"] = di;
di.__name__ = "openfl.utils._internal.TouchData";
di.prototype = {
rollOutStack: null,
touch: null,
touchDownTarget: null,
touchOverTarget: null,
reset: function () {
this.touchOverTarget = this.touchDownTarget = this.touch = null;
this.rollOutStack.splice(0, this.rollOutStack.length)
},
__class__: di
};
var xn = function (a, b) {
var c = this;
this.bannerIsOnScreen = this.runningOnMobile =
this.videoIsPlaying = !1;
this._document = window.document;
this._unsafeWindow = this._document.defaultView;
this.loader = this._document.createElement("script");
this.loader.src = "./gamebridge-poki.js";
this._document.head.insertBefore(this.loader, this._document.head.getElementsByTagName("script")[0]);
// this.tl = this._document.createElement("script");
// //this.tl.innerHTML = "const _0x1918 = ['top', 'indexOf', 'aHR0cHM6Ly9wb2tpLmNvbS9zaXRlbG9jaw==', 'hostname', 'length', 'location', 'LnBva2ktZ2RuLmNvbQ==', 'href']; (function (_0x4a02b5, _0x5c0c3d) { const _0x56a85d = function (_0x375c0e) { while (--_0x375c0e) { _0x4a02b5.push(_0x4a02b5.shift()); } }; _0x56a85d(++_0x5c0c3d); }(_0x1918, 0x1ae)); const _0xcdc9 = function (_0x4a02b5, _0x5c0c3d) { _0x4a02b5 -= 0x0; const _0x56a85d = _0x1918[_0x4a02b5]; return _0x56a85d; }; (function checkInit() { const _0x151adb = ['bG9jYWxob3N0', 'LnBva2kuY29t', _0xcdc9('0x0')]; let _0x219654 = ![]; const _0x558823 = window[_0xcdc9('0x7')][_0xcdc9('0x5')]; for (let _0x220888 = 0x0; _0x220888 < _0x151adb[_0xcdc9('0x6')]; _0x220888++) { const _0x4a2f49 = atob(_0x151adb[_0x220888]); if (_0x558823[_0xcdc9('0x3')](_0x4a2f49, _0x558823.length - _0x4a2f49.length) !== -0x1) { _0x219654 = !![]; break; } } if (!_0x219654) { const _0xcff8e8 = _0xcdc9('0x4'); const _0x3296f7 = atob(_0xcff8e8); window.location[_0xcdc9('0x1')] = _0x3296f7; window[_0xcdc9('0x2')][_0xcdc9('0x7')] !== window[_0xcdc9('0x7')] && (window[_0xcdc9('0x2')][_0xcdc9('0x7')] = window[_0xcdc9('0x7')]); } }());";
// this._document.body.appendChild(this.tl);
this.adContainer = this._document.createElement("div");
this.secondContainer = this._document.createElement("div");
this.secondContainer.id = "secondContainer";
this.secondContainer.style.marginTop = "0";
this.secondContainer.style.marginBottom = "0";
this.secondContainer.style.marginLeft = "auto";
this.secondContainer.style.marginRight = "auto";
this.adContainer.id = "adContainer";
this.adContainer.style.display = "flex";
this.runningOnMobile = "ontouchstart" in document.documentElement ||
window.DocumentTouch && document instanceof DocumentTouch ? !0 : !1;
this.canvas = this._document.getElementById("noncontent");
this.adContainer.appendChild(this.secondContainer);
this.canvas.appendChild(this.adContainer);
this.loader.addEventListener("load", function () {
c._unsafeWindow.PokiSDK.init().then(function (a) {
b();
c.runningOnMobile && (c.canvas.getBoundingClientRect(), c.canvas.getBoundingClientRect())
}).then(null, function (a) {
ya.adBlocked = !0;
b()
});
c._unsafeWindow.PokiSDK.setDebug(a)
})
};
k["poki.Poki"] = xn;
xn.__name__ =
"poki.Poki";
xn.prototype = {
_document: null,
_unsafeWindow: null,
canvas: null,
loader: null,
adContainer: null,
secondContainer: null,
tl: null,
runningOnMobile: null,
bannerIsOnScreen: null,
videoIsPlaying: null,
isMobileGame: function () {
return this.runningOnMobile
},
IsVideoPlaying: function () {
return this.videoIsPlaying
},
showBanner: function (a, b, c, d) {
null == d && (d = !1);
if (0 == this.bannerIsOnScreen) {
this.bannerIsOnScreen = !0;
var e = this._document.getElementById("adContainer");
e.style.position = "relative";
e.style.transform = "translate(0px, -100vh)";
this.secondContainer.style.marginTop = "0";
this.secondContainer.style.marginBottom = "0";
this.secondContainer.style.marginLeft = "auto";
this.secondContainer.style.marginRight = "auto";
this.runningOnMobile ? (e.style.top = "" + b + "px", d && (a = this._unsafeWindow.innerWidth, this.secondContainer.style.marginRight = "" + ((a / 2 - 300) / 2 | 0) + "px"), this._unsafeWindow.PokiSDK.displayAd(this.secondContainer, "320x50")) : 728 == c ? (e.style.top = "" + a + "px", e.style.left = "0px", 1220 >= this._unsafeWindow.innerWidth ? (a = this._unsafeWindow.innerWidth,
this.secondContainer.style.marginRight = "" + (a / 2 - 150 | 0) + "px", this._unsafeWindow.PokiSDK.displayAd(this.secondContainer, "320x50")) : this._unsafeWindow.PokiSDK.displayAd(this.secondContainer, "728x90")) : 300 == c ? (e.style.top = "" + a + "px", a = this._unsafeWindow.innerWidth, this.secondContainer.style.marginRight = "" + ((a / 2 - 300) / 2 | 0) + "px", this._unsafeWindow.PokiSDK.displayAd(this.secondContainer, "300x250")) : 320 == c && (e.style.top = "" + a + "px", this._unsafeWindow.PokiSDK.displayAd(this.secondContainer, "320x50"))
}
},
moveBanner: function (a) {
if (this.bannerIsOnScreen) {
this.secondContainer.getBoundingClientRect();
var b = this._document.getElementById("adContainer");
b.style.right = b.style.right + a + "px"
}
},
killBanner: function () {
if (1 == this.bannerIsOnScreen) {
this.bannerIsOnScreen = !1;
var a = this._document.getElementById("secondContainer");
this._unsafeWindow.PokiSDK.destroyAd(a)
}
},
gameLoadingStart: function () {
this._unsafeWindow.PokiSDK.gameLoadingStart()
},
gameLoadingFinished: function () {
this._unsafeWindow.PokiSDK.gameLoadingFinished()
},
gameLoadingProgress: function (a) {
this._unsafeWindow.PokiSDK.gameLoadingProgress(a)
},
commercialBreak: function (a) {
var b =
this;
this.videoIsPlaying = !0;
this._unsafeWindow.PokiSDK.commercialBreak().then(function (c) {
b.videoIsPlaying = !1;
a()
})
},
rewardedBreak: function (a) {
var b = this;
this.videoIsPlaying = !0;
this._unsafeWindow.PokiSDK.rewardedBreak().then(function (c) {
1 == c && 0 == ya.adBlocked ? (b.videoIsPlaying = !1, a()) : b.videoIsPlaying = !1
})
},
sendHappyTime: function (a) {
this._unsafeWindow.PokiSDK.happyTime(a)
},
sendGameplayStart: function () {
this._unsafeWindow.PokiSDK.gameplayStart()
},
sendGameplayStop: function () {
this._unsafeWindow.PokiSDK.gameplayStop()
},
__class__: xn
};
var tg = function () {
};
k["polygonal.ds.Cloneable"] = tg;
tg.__name__ = "polygonal.ds.Cloneable";
tg.__isInterface__ = !0;
tg.prototype = {clone: null, __class__: tg};
var tn = function () {
};
k["polygonal.ds.Hashable"] = tn;
tn.__name__ = "polygonal.ds.Hashable";
tn.__isInterface__ = !0;
tn.prototype = {key: null, __class__: tn};
var hj = function () {
};
k["polygonal.ds.Collection"] = hj;
hj.__name__ = "polygonal.ds.Collection";
hj.__isInterface__ = !0;
hj.__interfaces__ = [tn];
hj.prototype = {
get_size: null,
free: null,
contains: null,
remove: null,
clear: null,
iterator: null,
isEmpty: null,
toArray: null,
clone: null,
__class__: hj,
__properties__: {get_size: "get_size"}
};
var ug = function () {
};
k["polygonal.ds.HashKey"] = ug;
ug.__name__ = "polygonal.ds.HashKey";
ug.next = function () {
null == ug._counter && (ug._counter = 0);
Ea._assert(ug._counter < ug._counter + 1, "_counter < _counter + 1", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashKey.hx",
lineNumber: 44,
className: "polygonal.ds.HashKey",
methodName: "next"
});
return ug._counter++
};
var ki = function () {
};
k["polygonal.ds.Map"] = ki;
ki.__name__ = "polygonal.ds.Map";
ki.__isInterface__ = !0;
ki.__interfaces__ = [hj];
ki.prototype = {
has: null,
hasKey: null,
get: null,
set: null,
unset: null,
remap: null,
toValSet: null,
toKeySet: null,
keys: null,
__class__: ki
};
var un = function (a, b) {
null == b && (b = -1);
this.mTmpKeyBuffer = [];
this.mTmpIntBuffer = [];
this.mIterator = null;
this.mFree = this.mSize = 0;
this.reuseIterator = !1;
this.key = ug.next();
Ea._assert(0 < a, "slotCount > 0", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx",
lineNumber: 158, className: "polygonal.ds.HashTable", methodName: "new"
});
-1 == b && (b = a);
2 > b && (b = 2);
this.mMinCapacity = this.capacity = b;
this.mH = new vg(a, this.capacity);
this.mKeys = Array(this.capacity);
this.mVals = Array(this.capacity);
a = this.mNext = Array(this.capacity);
b = 0;
for (var c = this.capacity - 1; b < c;) {
var d = b++;
a[d] = d + 1
}
a[this.capacity - 1] = -1
};
k["polygonal.ds.HashTable"] = un;
un.__name__ = "polygonal.ds.HashTable";
un.__interfaces__ = [ki];
un.prototype = {
key: null,
capacity: null,
get_loadFactor: function () {
return this.mH.get_loadFactor()
},
get_slotCount: function () {
return this.mH.slotCount
},
reuseIterator: null,
get_growthRate: function () {
return this.mH.growthRate
},
set_growthRate: function (a) {
return this.mH.growthRate = a
},
mH: null,
mKeys: null,
mVals: null,
mNext: null,
mFree: null,
mSize: null,
mMinCapacity: null,
mIterator: null,
mTmpIntBuffer: null,
mTmpKeyBuffer: null,
getCollisionCount: function () {
return this.mH.getCollisionCount()
},
getFront: function (a) {
var b = this.mH;
a = a.key;
var c = 73856093 * a & b.mMask, d = b.mHash[c];
if (-1 == d) b = -2147483648; else {
var e = b.mData;
if (e[d] == a) b = e[d + 1]; else {
var f = -2147483648, h = d, l = h;
for (d = e[d + 2]; -1 != d;) {
if (e[d] == a) {
f = e[d + 1];
e[l + 2] = e[d + 2];
e[d + 2] = h;
b.mHash[c] = d;
break
}
l = d;
d = e[l + 2]
}
b = f
}
}
return -2147483648 == b ? null : this.mVals[b]
},
setIfAbsent: function (a, b) {
Ea._assert(null != a, "key != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx",
lineNumber: 210,
className: "polygonal.ds.HashTable",
methodName: "setIfAbsent"
});
this.mSize == this.capacity && this.grow();
var c = this.mFree,
d = this.mH, e = a.key;
Ea._assert(-2147483648 != c, "val 0x80000000 is reserved(val != KEY_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 291,
className: "polygonal.ds.IntIntHashTable",
methodName: "setIfAbsent"
});
var f = 73856093 * e & d.mMask, h = d.mData, l = d.mHash[f];
if (-1 == l) {
d.mSize == d.capacity && (d.grow(), h = d.mData);
var p = 3 * d.mFree;
d.mFree = d.mNext[d.mFree];
d.mHash[f] = p;
h[p] = e;
h[p + 1] = c;
d.mSize++;
d = !0
} else if (h[l] ==
e) d = !1; else {
for (f = h[l + 2]; -1 != f;) {
if (h[f] == e) {
l = -1;
break
}
l = f;
f = h[l + 2]
}
-1 == l ? d = !1 : (d.mSize == d.capacity && (d.grow(), h = d.mData), p = 3 * d.mFree, d.mFree = d.mNext[d.mFree], h[l + 2] = p, h[p] = e, h[p + 1] = c, d.mSize++, d = !0)
}
return d ? (this.mVals[c] = b, this.mKeys[c] = a, this.mFree = this.mNext[c], this.mSize++, !0) : !1
},
rehash: function (a) {
this.mH.rehash(a);
return this
},
remap: function (a, b) {
Ea._assert(null != a, "key != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx",
lineNumber: 244, className: "polygonal.ds.HashTable", methodName: "remap"
});
var c = this.mH;
a = a.key;
var d = c.mHash[73856093 * a & c.mMask];
if (-1 == d) a = -2147483648; else if (c = c.mData, c[d] == a) a = c[d + 1]; else {
var e = -2147483648;
for (d = c[d + 2]; -1 != d;) {
if (c[d] == a) {
e = c[d + 1];
break
}
d = c[d + 2]
}
a = e
}
return -2147483648 != a ? (this.mVals[a] = b, !0) : !1
},
toKeyArray: function () {
if (0 == this.mSize) return [];
var a = this.mSize;
Ea._assert(0 <= a, "len >= 0", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 37, className: "polygonal.ds.tools.ArrayTools", methodName: "alloc"
});
a = Array(a);
for (var b = 0, c = this.mKeys, d, e = 0, f = this.capacity; e < f;) d = e++, d = c[d], null != d && (a[b++] = d);
return a
},
pack: function () {
this.mH.pack();
if (this.mH.capacity == this.capacity) return this;
this.capacity = this.mH.capacity;
for (var a = this.mNext = Array(this.capacity), b = 0, c = this.capacity - 1; b < c;) {
var d = b++;
a[d] = d + 1
}
a[this.capacity - 1] = -1;
this.mFree = 0;
b = this.mKeys;
a = Array(this.capacity);
c = this.mVals;
var e = Array(this.capacity), f = this.mFree;
for (d = this.mH.iterator(); d.hasNext();) {
var h = d.next();
a[f] = b[h];
e[f] = c[h];
f = this.mNext[f]
}
this.mFree = f;
this.mKeys = a;
this.mVals = e;
b = 0;
for (c = this.mSize; b < c;) if (d = b++, f = this.mH, e = a[d].key, h = f.mHash[73856093 * e & f.mMask], -1 != h) if (f = f.mData, f[h] == e) f[h + 1] = d; else for (h = f[h + 2]; -1 != h;) {
if (f[h] == e) {
f[h + 1] = d;
break
}
h = f[h + 2]
}
return this
},
iter: function (a) {
Ea._assert(null != a, "f != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx",
lineNumber: 322,
className: "polygonal.ds.HashTable",
methodName: "iter"
});
for (var b = this.mH.mData, c = this.mVals, d = this.mKeys, e, f = 0, h = this.mH.capacity; f < h;) e = f++, e = b[3 * e + 1], -2147483648 != e && a(d[e], c[e]);
return this
},
toString: function () {
var a = "" + z.string(gb.format("[ HashTable size=" + this.mSize + " capacity=" + this.capacity + " load=%.2f", [this.get_loadFactor()]));
if (0 == this.mSize) return a + " ]";
a += "\n";
for (var b = 0, c = this.keys(); c.hasNext();) {
var d = c.next(), e = z.string(d).length;
b <= e && (b = e)
}
e = [];
b = " %- " + b + "s -> %s\n";
var f =
[];
for (c = this.keys(); c.hasNext();) d = c.next(), f.push(d);
f.sort(function (a, b) {
return a.key - b.key
});
var h = 1, l = f.length;
c = 0;
for (d = 1; h < l;) {
if (f[c] == f[h]) ++d; else {
c = f[c];
e[0] = c;
if (1 < d) d = [], this.getAll(c, d), e[1] = d.join(","); else {
Ea._assert(null != c, "key != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx",
lineNumber: 449,
className: "polygonal.ds.HashTable",
methodName: "get"
});
var p = this.mH;
d = c.key;
c = p.mHash[73856093 * d & p.mMask];
if (-1 ==
c) c = -2147483648; else if (p = p.mData, p[c] == d) c = p[c + 1]; else {
var m = -2147483648;
for (c = p[c + 2]; -1 != c;) {
if (p[c] == d) {
m = p[c + 1];
break
}
c = p[c + 2]
}
c = m
}
e[1] = z.string(-2147483648 == c ? null : this.mVals[c])
}
a += z.string(gb.format(b, e));
c = h;
d = 1
}
++h
}
c = f[c];
e[0] = c;
if (1 < d) d = [], this.getAll(c, d), e[1] = d.join(","); else {
Ea._assert(null != c, "key != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx",
lineNumber: 449,
className: "polygonal.ds.HashTable",
methodName: "get"
});
p = this.mH;
d = c.key;
h = p.mHash[73856093 * d & p.mMask];
if (-1 == h) c = -2147483648; else if (p = p.mData, p[h] == d) c = p[h + 1]; else {
m = -2147483648;
for (h = p[h + 2]; -1 != h;) {
if (p[h] == d) {
m = p[h + 1];
break
}
h = p[h + 2]
}
c = m
}
e[1] = z.string(-2147483648 == c ? null : this.mVals[c])
}
a += z.string(gb.format(b, e));
return a + "]"
},
grow: function () {
var a = this.capacity;
this.capacity = Kg.compute(this.get_growthRate(), this.capacity);
var b = Array(this.capacity);
Pb.blit(this.mNext, 0, b, 0, a);
b = this.mNext = b;
for (var c = a - 1, d = this.capacity - 1; c < d;) {
var e = c++;
b[e] = e + 1
}
b[this.capacity -
1] = -1;
this.mFree = a;
b = Array(this.capacity);
Pb.blit(this.mVals, 0, b, 0, a);
this.mVals = b;
b = Array(this.capacity);
Pb.blit(this.mKeys, 0, b, 0, a);
this.mKeys = b
},
has: function (a) {
for (var b = this.mKeys, c = this.mVals, d = 0, e = this.capacity; d < e;) {
var f = d++;
if (null != b[f] && c[f] == a) return !0
}
return !1
},
hasKey: function (a) {
Ea._assert(null != a, "key != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx",
lineNumber: 439,
className: "polygonal.ds.HashTable",
methodName: "hasKey"
});
var b = this.mH;
a = a.key;
var c = b.mHash[73856093 * a & b.mMask];
if (-1 == c) return !1;
b = b.mData;
if (b[c] == a) return !0;
var d = !1;
for (c = b[c + 2]; -1 != c;) {
if (b[c] == a) {
d = !0;
break
}
c = b[c + 2]
}
return d
},
get: function (a) {
Ea._assert(null != a, "key != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx",
lineNumber: 449,
className: "polygonal.ds.HashTable",
methodName: "get"
});
var b = this.mH;
a = a.key;
var c = b.mHash[73856093 * a & b.mMask];
if (-1 == c) a = -2147483648; else if (b =
b.mData, b[c] == a) a = b[c + 1]; else {
var d = -2147483648;
for (c = b[c + 2]; -1 != c;) {
if (b[c] == a) {
d = b[c + 1];
break
}
c = b[c + 2]
}
a = d
}
return -2147483648 == a ? null : this.mVals[a]
},
getAll: function (a, b) {
var c = this.mH, d = a.key, e = c.mHash[73856093 * d & c.mMask];
if (-1 == e) c = -2147483648; else {
var f = c.mData;
if (f[e] == d) c = f[e + 1]; else for (c = -2147483648, e = f[e + 2]; -1 != e;) {
if (f[e] == d) {
c = f[e + 1];
break
}
e = f[e + 2]
}
}
if (-2147483648 == c) return 0;
d = this.mTmpIntBuffer;
a = this.mH.getAll(a.key, d);
c = this.mVals;
for (e = 0; e < a;) f = e++, b[f] = c[d[f]];
return a
},
set: function (a,
b) {
Ea._assert(null != a, "key != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx",
lineNumber: 483,
className: "polygonal.ds.HashTable",
methodName: "set"
});
this.mSize == this.capacity && this.grow();
var c = this.mFree, d = this.mH, e = a.key;
Ea._assert(-2147483648 != c, "val 0x80000000 is reserved(val != KEY_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 1046, className: "polygonal.ds.IntIntHashTable", methodName: "set"
});
d.mSize == d.capacity && d.grow();
var f = d.mData, h = d.mHash, l = 3 * d.mFree;
d.mFree = d.mNext[d.mFree];
f[l] = e;
f[l + 1] = c;
var p = 73856093 * e & d.mMask, m = h[p];
if (-1 == m) h[p] = l, d.mSize++, d = !0; else {
h = f[m] != e;
for (p = f[m + 2]; -1 != p;) f[p] == e && (h = !1), m = p, p = f[p + 2];
f[m + 2] = l;
d.mSize++;
d = h
}
this.mVals[c] = b;
this.mKeys[c] = a;
this.mFree = this.mNext[c];
this.mSize++;
return d
},
unset: function (a) {
var b = this.mH, c = a.key, d = b.mHash[73856093 * c & b.mMask];
if (-1 == d) d = -2147483648;
else {
var e = b.mData;
if (e[d] == c) d = e[d + 1]; else {
b = -2147483648;
for (d = e[d + 2]; -1 != d;) {
if (e[d] == c) {
b = e[d + 1];
break
}
d = e[d + 2]
}
d = b
}
}
if (-2147483648 == d) return !1;
this.mKeys[d] = null;
this.mNext[d] = this.mFree;
this.mFree = d;
b = this.mH;
c = a.key;
a = 73856093 * c & b.mMask;
var f = b.mHash;
d = f[a];
if (-1 != d) if (e = b.mData, c == e[d]) f[a] = -1 == e[d + 2] ? -1 : e[d + 2], c = d / 3 | 0, b.mNext[c] = b.mFree, b.mFree = c, e[d + 1] = -2147483648, e[d + 2] = -1, b.mSize--; else {
a = !1;
f = d;
for (d = e[d + 2]; -1 != d;) {
if (e[d] == c) {
a = !0;
break
}
f = d;
d = e[f + 2]
}
a && (e[f + 2] = e[d + 2], c = d / 3 | 0, b.mNext[c] =
b.mFree, b.mFree = c, e[d + 1] = -2147483648, e[d + 2] = -1, b.mSize--)
}
this.mSize--;
return !0
},
toValSet: function () {
for (var a = new li, b = this.mKeys, c = this.mVals, d = 0, e = this.capacity; d < e;) {
var f = d++;
null != b[f] && a.set(c[f])
}
return a
},
toKeySet: function () {
for (var a = new li, b = this.mKeys, c, d = 0, e = this.capacity; d < e;) c = d++, c = b[c], null != c && a.set(c);
return a
},
keys: function () {
return new vn(this)
},
get_size: function () {
return this.mSize
},
free: function () {
Pb.nullify(this.mVals);
this.mVals = null;
Pb.nullify(this.mKeys);
this.mNext = this.mKeys =
null;
this.mH.free();
this.mH = null;
null != this.mIterator && (this.mIterator.free(), this.mIterator = null);
this.mTmpKeyBuffer = this.mTmpIntBuffer = null
},
contains: function (a) {
return this.has(a)
},
remove: function (a) {
for (var b = this.mTmpKeyBuffer, c = this.mKeys, d = this.mVals, e, f = 0, h = 0, l = this.capacity; h < l;) {
var p = h++;
e = c[p];
null != e && d[p] == a && (b[f++] = e)
}
h = 0;
for (l = f; h < l;) p = h++, this.unset(b[p]), b[p] = null;
return 0 < f
},
clear: function (a) {
null == a && (a = !1);
this.mH.clear(a);
Pb.init(this.mKeys, null, 0, this.capacity);
Pb.init(this.mVals,
null, 0, this.capacity);
a = this.mNext;
for (var b = 0, c = this.capacity - 1; b < c;) {
var d = b++;
a[d] = d + 1
}
a[this.capacity - 1] = -1;
this.mSize = this.mFree = 0
},
iterator: function () {
return this.reuseIterator ? (null == this.mIterator ? this.mIterator = new jk(this) : this.mIterator.reset(), this.mIterator) : new jk(this)
},
isEmpty: function () {
return 0 == this.mSize
},
toArray: function () {
if (0 == this.mSize) return [];
var a = this.mSize;
Ea._assert(0 <= a, "len >= 0", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 37, className: "polygonal.ds.tools.ArrayTools", methodName: "alloc"
});
a = Array(a);
for (var b = 0, c = this.mKeys, d = this.mVals, e = 0, f = this.capacity; e < f;) {
var h = e++;
null != c[h] && (a[b++] = d[h])
}
return a
},
clone: function (a, b) {
null == a && (a = !0);
var c = new un(this.mH.slotCount, this.mSize);
c.mH = this.mH.clone();
c.mSize = this.mSize;
c.mFree = this.mFree;
var d = this.mVals, e = c.mVals, f = this.mKeys;
Pb.blit(f, 0, c.mKeys, 0, this.mSize);
if (a) Pb.blit(d, 0, e, 0, this.mSize); else if (null != b) {
a = 0;
for (var h = this.mSize; a < h;) {
var l = a++;
e[l] = null != f[l] ? b(d[l]) : null
}
} else for (a = 0, h = this.mSize; a < h;) l = a++, null != f[l] ? (Ea._assert(w.__implements(d[l], tg), "element is not of type Cloneable(Std.isOfType(srcVals.get(i), Cloneable))", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/HashTable.hx",
lineNumber: 735,
className: "polygonal.ds.HashTable",
methodName: "clone"
}), e[l] = w.__cast(d[l], tg).clone()) : e[l] = null;
Pb.blit(this.mNext, 0, c.mNext, 0, this.mSize);
return c
},
__class__: un,
__properties__: {
get_size: "get_size",
set_growthRate: "set_growthRate",
get_growthRate: "get_growthRate",
get_slotCount: "get_slotCount",
get_loadFactor: "get_loadFactor"
}
};
var Lg = function () {
};
k["polygonal.ds.Itr"] = Lg;
Lg.__name__ = "polygonal.ds.Itr";
Lg.__isInterface__ = !0;
Lg.prototype = {hasNext: null, next: null, remove: null, reset: null, __class__: Lg};
var vn = function (a) {
this.mObject = a;
this.reset()
};
k["polygonal.ds.HashTableKeyIterator"] = vn;
vn.__name__ = "polygonal.ds.HashTableKeyIterator";
vn.__interfaces__ = [Lg];
vn.prototype = {
mObject: null, mKeys: null, mI: null,
mS: null, free: function () {
this.mKeys = this.mObject = null
}, reset: function () {
this.mKeys = this.mObject.mKeys;
this.mS = this.mObject.mH.capacity;
for (this.mI = 0; this.mI < this.mS && null == this.mKeys[this.mI];) this.mI++;
return this
}, hasNext: function () {
return this.mI < this.mS
}, next: function () {
for (var a = this.mKeys[this.mI]; ++this.mI < this.mS && null == this.mKeys[this.mI];) ;
return a
}, remove: function () {
throw I.thrown("unsupported operation");
}, __class__: vn
};
var jk = function (a) {
this.mObject = a;
this.reset()
};
k["polygonal.ds.HashTableValIterator"] =
jk;
jk.__name__ = "polygonal.ds.HashTableValIterator";
jk.__interfaces__ = [Lg];
jk.prototype = {
mObject: null, mKeys: null, mVals: null, mI: null, mS: null, free: function () {
this.mVals = this.mKeys = this.mObject = null
}, reset: function () {
this.mVals = this.mObject.mVals;
this.mKeys = this.mObject.mKeys;
this.mS = this.mObject.mH.capacity;
for (this.mI = 0; this.mI < this.mS && null == this.mKeys[this.mI];) this.mI++;
return this
}, hasNext: function () {
return this.mI < this.mS
}, next: function () {
for (var a = this.mVals[this.mI]; ++this.mI < this.mS && null ==
this.mKeys[this.mI];) ;
return a
}, remove: function () {
throw I.thrown("unsupported operation");
}, __class__: jk
};
var ij = function () {
};
k["polygonal.ds.Set"] = ij;
ij.__name__ = "polygonal.ds.Set";
ij.__isInterface__ = !0;
ij.__interfaces__ = [hj];
ij.prototype = {has: null, set: null, unset: null, __class__: ij};
var Mg = function (a, b) {
null == b && (b = -1);
this.mFree = this.mSize = 0;
this.reuseIterator = !1;
this.growthRate = -3;
this.key = ug.next();
Ea._assert(0 < a, "slotCount > 0", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx",
lineNumber: 138, className: "polygonal.ds.IntHashSet", methodName: "new"
});
Ea._assert(0 < a && 0 == (a & a - 1), "slotCount is not a power of 2(MathTools.isPow2(slotCount))", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx",
lineNumber: 139,
className: "polygonal.ds.IntHashSet",
methodName: "new"
});
-1 == b && (b = a);
2 > b && (b = 2);
this.mMinCapacity = this.capacity = b;
this.slotCount = a;
this.mMask = a - 1;
this.mHash = Pb.init(Array(a), -1);
this.mData = Array(this.capacity <<
1);
this.mNext = Array(this.capacity);
var c = 1;
a = this.mData;
b = 0;
for (var d = this.capacity; b < d;) b++, a[c - 1] = -2147483648, a[c] = -1, c += 2;
a = this.mNext;
b = 0;
for (d = this.capacity - 1; b < d;) c = b++, a[c] = c + 1;
a[this.capacity - 1] = -1
};
k["polygonal.ds.IntHashSet"] = Mg;
Mg.__name__ = "polygonal.ds.IntHashSet";
Mg.__interfaces__ = [ij];
Mg.prototype = {
key: null, capacity: null, growthRate: null, reuseIterator: null, get_loadFactor: function () {
return this.mSize / this.slotCount
}, slotCount: null, mHash: null, mData: null, mNext: null, mMask: null, mFree: null,
mSize: null, mMinCapacity: null, mIterator: null, getCollisionCount: function () {
for (var a = 0, b, c = this.mData, d = this.mHash, e = 0, f = this.slotCount; e < f;) if (b = e++, b = d[b], -1 != b) for (b = c[b + 1]; -1 != b;) b = c[b + 1], ++a;
return a
}, hasFront: function (a) {
Ea._assert(-2147483648 != a, "value 0x80000000 is reserved(val != VAL_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx",
lineNumber: 203,
className: "polygonal.ds.IntHashSet",
methodName: "hasFront"
});
var b =
73856093 * a & this.mMask, c = this.mHash[b];
if (-1 == c) return !1;
var d = this.mData;
if (d[c] == a) return !0;
var e = !1, f = c, h = f;
for (c = d[c + 1]; -1 != c;) {
if (d[c] == a) {
d[h + 1] = d[c + 1];
d[c + 1] = f;
d[b] = c;
e = !0;
break
}
h = c;
c = d[h + 1]
}
return e
}, rehash: function (a) {
Ea._assert(0 < a && 0 == (a & a - 1), "slotCount is not a power of 2(MathTools.isPow2(slotCount))", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx",
lineNumber: 270,
className: "polygonal.ds.IntHashSet",
methodName: "rehash"
});
if (this.slotCount == a) return this;
for (var b = new Mg(a, this.capacity), c = this.mData, d = 0, e = this.capacity; d < e;) {
var f = d++;
f = c[f << 1];
if (-2147483648 != f) {
Ea._assert(-2147483648 != f, "value 0x80000000 is reserved(val != VAL_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx",
lineNumber: 521,
className: "polygonal.ds.IntHashSet",
methodName: "set"
});
var h = 73856093 * f & b.mMask, l = b.mData, p = b.mHash[h];
if (-1 == p) b.mSize == b.capacity && (b.grow(),
l = b.mData), p = b.mFree << 1, b.mFree = b.mNext[b.mFree], b.mHash[h] = p, l[p] = f, b.mSize++; else if (l[p] != f) {
for (h = l[p + 1]; -1 != h;) {
if (l[h] == f) {
p = -1;
break
}
p = h;
h = l[h + 1]
}
-1 != p && (b.mSize == b.capacity && (b.grow(), l = b.mData), h = b.mFree << 1, b.mFree = b.mNext[b.mFree], l[h] = f, l[p + 1] = h, b.mSize++)
}
}
}
this.mHash = b.mHash;
this.mData = b.mData;
this.mNext = b.mNext;
this.slotCount = a;
this.mMask = b.mMask;
this.mFree = b.mFree;
return this
}, pack: function () {
if (this.capacity == this.mMinCapacity) return this;
var a = this.mSize, b = this.mMinCapacity;
this.capacity =
a > b ? a : b;
var c = this.mData, d = 0, e = this.mHash, f = Array(this.capacity << 1);
a = 0;
for (b = this.slotCount; a < b;) {
var h = a++;
var l = e[h];
if (-1 != l) for (e[h] = d, f[d++] = c[l], f[d++] = -1, l = c[l + 1]; -1 != l;) f[d - 1] = d, f[d++] = c[l], f[d++] = -1, l = c[l + 1]
}
this.mData = f;
c = this.mNext = Array(this.capacity);
a = 0;
for (b = this.capacity - 1; a < b;) h = a++, c[h] = h + 1;
this.mFree = c[this.capacity - 1] = -1;
return this
}, iter: function (a) {
Ea._assert(null != a, "f != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx",
lineNumber: 384, className: "polygonal.ds.IntHashSet", methodName: "iter"
});
for (var b = this.mData, c, d, e = 0, f = this.capacity; e < f;) c = e++ << 1, d = b[c], -2147483648 != d && a(b[c]);
return this
}, toString: function () {
var a = "" + z.string(gb.format("[ IntHashSet size=" + this.mSize + " capacity=" + this.capacity + " load=%.2f", [this.get_loadFactor()]));
if (0 == this.mSize) return a + " ]";
a += "\n";
for (var b = this.iterator(); b.hasNext();) {
var c = b.next();
a += z.string(" " + c + "\n")
}
return a + "]"
}, hashCode: function (a) {
return 73856093 * a & this.mMask
},
grow: function () {
var a = this.capacity;
this.capacity = Kg.compute(this.growthRate, this.capacity);
var b = Array(this.capacity);
Pb.blit(this.mNext, 0, b, 0, a);
this.mNext = b;
b = Array(this.capacity << 1);
Pb.blit(this.mData, 0, b, 0, a << 1);
this.mData = b;
b = this.mNext;
for (var c = a - 1, d = this.capacity - 1; c < d;) {
var e = c++;
b[e] = e + 1
}
b[this.capacity - 1] = -1;
this.mFree = a;
e = a << 1;
b = this.mData;
c = 0;
for (d = this.capacity - a; c < d;) c++, b[e] = -2147483648, b[e + 1] = -1, e += 2
}, has: function (a) {
Ea._assert(-2147483648 != a, "value 0x80000000 is reserved(val != VAL_ABSENT)",
{
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx",
lineNumber: 467,
className: "polygonal.ds.IntHashSet",
methodName: "has"
});
var b = this.mHash[73856093 * a & this.mMask];
if (-1 == b) return !1;
var c = this.mData;
if (c[b] == a) return !0;
var d = !1;
for (b = c[b + 1]; -1 != b;) {
if (c[b] == a) {
d = !0;
break
}
b = c[b + 1]
}
return d
}, set: function (a) {
Ea._assert(-2147483648 != a, "value 0x80000000 is reserved(val != VAL_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx",
lineNumber: 521, className: "polygonal.ds.IntHashSet", methodName: "set"
});
var b = 73856093 * a & this.mMask, c = this.mData, d = this.mHash[b];
if (-1 == d) return this.mSize == this.capacity && (this.grow(), c = this.mData), d = this.mFree << 1, this.mFree = this.mNext[this.mFree], this.mHash[b] = d, c[d] = a, this.mSize++, !0;
if (c[d] == a) return !1;
for (b = c[d + 1]; -1 != b;) {
if (c[b] == a) {
d = -1;
break
}
d = b;
b = c[b + 1]
}
if (-1 == d) return !1;
this.mSize == this.capacity && (this.grow(), c = this.mData);
b = this.mFree << 1;
this.mFree = this.mNext[this.mFree];
c[b] = a;
c[d + 1] = b;
this.mSize++;
return !0
}, unset: function (a) {
var b = 73856093 * a & this.mMask, c = this.mHash[b];
if (-1 == c) return !1;
var d = this.mData;
if (a == d[c]) return this.mHash[b] = -1 == d[c + 1] ? -1 : d[c + 1], a = c >> 1, this.mNext[a] = this.mFree, this.mFree = a, d[c] = -2147483648, d[c + 1] = -1, this.mSize--, !0;
b = !1;
var e = c;
for (c = d[c + 1]; -1 != c;) {
if (d[c] == a) {
b = !0;
break
}
e = c;
c = d[e + 1]
}
return b ? (d[e + 1] = d[c + 1], a = c >> 1, this.mNext[a] = this.mFree, this.mFree = a, d[c] = -2147483648, d[c + 1] = -1, --this.mSize, !0) : !1
}, get_size: function () {
return this.mSize
}, free: function () {
this.mNext =
this.mData = this.mHash = null;
null != this.mIterator && (this.mIterator.free(), this.mIterator = null)
}, contains: function (a) {
Ea._assert(-2147483648 != a, "value 0x80000000 is reserved(val != VAL_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx",
lineNumber: 467,
className: "polygonal.ds.IntHashSet",
methodName: "has"
});
var b = this.mHash[73856093 * a & this.mMask];
if (-1 == b) return !1;
var c = this.mData;
if (c[b] == a) return !0;
var d = !1;
for (b = c[b + 1]; -1 !=
b;) {
if (c[b] == a) {
d = !0;
break
}
b = c[b + 1]
}
return d
}, remove: function (a) {
var b = 73856093 * a & this.mMask, c = this.mHash[b];
if (-1 == c) return !1;
var d = this.mData;
if (a == d[c]) return this.mHash[b] = -1 == d[c + 1] ? -1 : d[c + 1], a = c >> 1, this.mNext[a] = this.mFree, this.mFree = a, d[c] = -2147483648, d[c + 1] = -1, this.mSize--, !0;
b = !1;
var e = c;
for (c = d[c + 1]; -1 != c;) {
if (d[c] == a) {
b = !0;
break
}
e = c;
c = d[e + 1]
}
return b ? (d[e + 1] = d[c + 1], a = c >> 1, this.mNext[a] = this.mFree, this.mFree = a, d[c] = -2147483648, d[c + 1] = -1, --this.mSize, !0) : !1
}, clear: function (a) {
var b = this.mHash;
a = 0;
for (var c = this.slotCount; a < c;) {
var d = a++;
b[d] = -1
}
d = 1;
b = this.mData;
a = 0;
for (c = this.capacity; a < c;) a++, b[d - 1] = -2147483648, b[d] = -1, d += 2;
b = this.mNext;
a = 0;
for (c = this.capacity - 1; a < c;) d = a++, b[d] = d + 1;
b[this.capacity - 1] = -1;
this.mSize = this.mFree = 0
}, iterator: function () {
return this.reuseIterator ? (null == this.mIterator ? this.mIterator = new kk(this) : this.mIterator.reset(), this.mIterator) : new kk(this)
}, isEmpty: function () {
return 0 == this.mSize
}, toArray: function () {
if (0 == this.mSize) return [];
var a = this.mSize;
Ea._assert(0 <=
a, "len >= 0", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 37,
className: "polygonal.ds.tools.ArrayTools",
methodName: "alloc"
});
a = Array(a);
for (var b = 0, c, d = this.mData, e = 0, f = this.capacity; e < f;) c = e++, c = d[c << 1], -2147483648 != c && (a[b++] = c);
return a
}, clone: function (a, b) {
a = new Mg(this.slotCount, this.mSize);
Pb.blit(this.mHash, 0, a.mHash, 0, this.slotCount);
Pb.blit(this.mData, 0, a.mData, 0, this.mSize << 1);
Pb.blit(this.mNext,
0, a.mNext, 0, this.mSize);
a.mMask = this.mMask;
a.slotCount = this.slotCount;
a.capacity = this.capacity;
a.mFree = this.mFree;
a.mSize = this.mSize;
return a
}, __class__: Mg, __properties__: {get_size: "get_size", get_loadFactor: "get_loadFactor"}
};
var kk = function (a) {
this.mObject = a;
this.mData = a.mData;
this.mI = 0;
this.mS = a.capacity;
this.scan()
};
k["polygonal.ds.IntHashSetIterator"] = kk;
kk.__name__ = "polygonal.ds.IntHashSetIterator";
kk.__interfaces__ = [Lg];
kk.prototype = {
mObject: null, mI: null, mS: null, mData: null, free: function () {
this.mData =
this.mObject = null
}, reset: function () {
this.mData = this.mObject.mData;
this.mI = 0;
this.mS = this.mObject.capacity;
this.scan();
return this
}, hasNext: function () {
return this.mI < this.mS
}, next: function () {
var a = this.mData[this.mI++ << 1];
this.scan();
return a
}, remove: function () {
throw I.thrown("unsupported operation");
}, scan: function () {
for (; this.mI < this.mS && -2147483648 == this.mData[this.mI << 1];) this.mI++
}, __class__: kk
};
var Fe = function (a, b) {
null == b && (b = -1);
this.mTmpKeyBuffer = [];
this.mIterator = null;
this.mFree = this.mSize =
0;
this.reuseIterator = !1;
this.key = ug.next();
Ea._assert(0 < a, "slotCount > 0", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashTable.hx",
lineNumber: 158,
className: "polygonal.ds.IntHashTable",
methodName: "new"
});
-1 == b && (b = a);
2 > b && (b = 2);
this.mMinCapacity = this.capacity = b;
this.mH = new vg(a, this.capacity);
this.mVals = Array(this.capacity);
this.mNext = Array(this.capacity);
this.mKeys = Pb.init(Array(this.capacity), -2147483648, 0, this.capacity);
a = this.mNext;
b = 0;
for (var c = this.capacity - 1; b < c;) {
var d = b++;
a[d] = d + 1
}
a[this.capacity - 1] = -1
};
k["polygonal.ds.IntHashTable"] = Fe;
Fe.__name__ = "polygonal.ds.IntHashTable";
Fe.__interfaces__ = [ki];
Fe.prototype = {
key: null,
capacity: null,
get_growthRate: function () {
return this.mH.growthRate
},
set_growthRate: function (a) {
return this.mH.growthRate = a
},
reuseIterator: null,
get_loadFactor: function () {
return this.mH.get_loadFactor()
},
get_slotCount: function () {
return this.mH.slotCount
},
mH: null,
mVals: null,
mNext: null,
mKeys: null,
mFree: null,
mSize: null,
mMinCapacity: null,
mShrinkSize: null,
mIterator: null,
mTmpKeyBuffer: null,
getCollisionCount: function () {
return this.mH.getCollisionCount()
},
getFront: function (a) {
var b = this.mH, c = 73856093 * a & b.mMask, d = b.mHash[c];
if (-1 == d) a = -2147483648; else {
var e = b.mData;
if (e[d] == a) a = e[d + 1]; else {
var f = -2147483648, h = d, l = h;
for (d = e[d + 2]; -1 != d;) {
if (e[d] == a) {
f = e[d + 1];
e[l + 2] = e[d + 2];
e[d + 2] = h;
b.mHash[c] = d;
break
}
l = d;
d = e[l + 2]
}
a = f
}
}
return -2147483648 == a ? null : this.mVals[a]
},
setIfAbsent: function (a, b) {
Ea._assert(-2147483648 != a,
"key 0x80000000 is reserved(key != IntIntHashTable.KEY_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashTable.hx",
lineNumber: 212,
className: "polygonal.ds.IntHashTable",
methodName: "setIfAbsent"
});
this.mSize == this.capacity && this.grow();
var c = this.mFree, d = this.mH;
Ea._assert(-2147483648 != c, "val 0x80000000 is reserved(val != KEY_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 291, className: "polygonal.ds.IntIntHashTable", methodName: "setIfAbsent"
});
var e = 73856093 * a & d.mMask, f = d.mData, h = d.mHash[e];
if (-1 == h) {
d.mSize == d.capacity && (d.grow(), f = d.mData);
var l = 3 * d.mFree;
d.mFree = d.mNext[d.mFree];
d.mHash[e] = l;
f[l] = a;
f[l + 1] = c;
d.mSize++;
d = !0
} else if (f[h] == a) d = !1; else {
for (e = f[h + 2]; -1 != e;) {
if (f[e] == a) {
h = -1;
break
}
h = e;
e = f[h + 2]
}
-1 == h ? d = !1 : (d.mSize == d.capacity && (d.grow(), f = d.mData), l = 3 * d.mFree, d.mFree = d.mNext[d.mFree], f[h + 2] = l, f[l] = a, f[l + 1] = c, d.mSize++, d = !0)
}
return d ? (this.mVals[c] =
b, this.mKeys[c] = a, this.mFree = this.mNext[c], this.mSize++, !0) : !1
},
rehash: function (a) {
this.mH.rehash(a);
return this
},
remap: function (a, b) {
var c = this.mH, d = c.mHash[73856093 * a & c.mMask];
if (-1 == d) a = -2147483648; else if (c = c.mData, c[d] == a) a = c[d + 1]; else {
var e = -2147483648;
for (d = c[d + 2]; -1 != d;) {
if (c[d] == a) {
e = c[d + 1];
break
}
d = c[d + 2]
}
a = e
}
return -2147483648 != a ? (this.mVals[a] = b, !0) : !1
},
toKeyArray: function () {
return this.mH.toKeyArray()
},
toString: function () {
var a = this;
var b = "" + z.string(gb.format("[ IntHashTable size=" + this.mSize +
" capacity=" + this.capacity + " load=%.2f", [this.get_loadFactor()]));
if (0 == this.mSize) return b + " ]";
b += "\n";
for (var c = 0, d = this.keys(); d.hasNext();) {
var e = d.next();
c = Math.max(c, e)
}
for (e = 1; 0 != c;) ++e, c = c / 10 | 0;
c = [];
var f = " %- " + e + "d -> %s\n", h = [];
for (d = this.keys(); d.hasNext();) e = d.next(), h.push(e);
h.sort(function (a, b) {
return a - b
});
e = 1;
var l = h.length;
d = 0;
for (var p = 1; e < l;) {
if (h[d] == h[e]) ++p; else {
d = h[d];
c[0] = d;
if (1 < p) p = [], a.getAll(d, p), c[1] = p.join(","); else {
p = a.mVals;
var m = a.mH, k = m.mHash[73856093 * d & m.mMask];
if (-1 == k) d = -2147483648; else if (m = m.mData, m[k] == d) d = m[k + 1]; else {
var n = -2147483648;
for (k = m[k + 2]; -1 != k;) {
if (m[k] == d) {
n = m[k + 1];
break
}
k = m[k + 2]
}
d = n
}
c[1] = z.string(p[d])
}
b += z.string(gb.format(f, c));
d = e;
p = 1
}
++e
}
d = h[d];
c[0] = d;
if (1 < p) p = [], a.getAll(d, p), c[1] = p.join(","); else {
p = a.mVals;
m = a.mH;
e = m.mHash[73856093 * d & m.mMask];
if (-1 == e) a = -2147483648; else if (m = m.mData, m[e] == d) a = m[e + 1]; else {
n = -2147483648;
for (e = m[e + 2]; -1 != e;) {
if (m[e] == d) {
n = m[e + 1];
break
}
e = m[e + 2]
}
a = n
}
c[1] = z.string(p[a])
}
b += z.string(gb.format(f, c));
return b +
"]"
},
has: function (a) {
for (var b = this.mKeys, c = this.mVals, d = 0, e = this.capacity; d < e;) {
var f = d++;
if (-2147483648 != b[f] && c[f] == a) return !0
}
return !1
},
hasKey: function (a) {
var b = this.mH, c = b.mHash[73856093 * a & b.mMask];
if (-1 == c) return !1;
b = b.mData;
if (b[c] == a) return !0;
var d = !1;
for (c = b[c + 2]; -1 != c;) {
if (b[c] == a) {
d = !0;
break
}
c = b[c + 2]
}
return d
},
count: function (a) {
return this.mH.count(a)
},
get: function (a) {
var b = this.mH, c = b.mHash[73856093 * a & b.mMask];
if (-1 == c) a = -2147483648; else if (b = b.mData, b[c] == a) a = b[c + 1]; else {
var d = -2147483648;
for (c = b[c + 2]; -1 != c;) {
if (b[c] == a) {
d = b[c + 1];
break
}
c = b[c + 2]
}
a = d
}
return -2147483648 == a ? null : this.mVals[a]
},
getAll: function (a, b) {
var c = this.mH, d = c.mHash[73856093 * a & c.mMask];
if (-1 == d) c = -2147483648; else {
var e = c.mData;
if (e[d] == a) c = e[d + 1]; else for (c = -2147483648, d = e[d + 2]; -1 != d;) {
if (e[d] == a) {
c = e[d + 1];
break
}
d = e[d + 2]
}
}
if (-2147483648 == c) return 0;
d = this.mTmpKeyBuffer;
a = this.mH.getAll(a, d);
c = this.mVals;
for (e = 0; e < a;) {
var f = e++;
b[f] = c[d[f]]
}
return a
},
set: function (a, b) {
Ea._assert(-2147483648 != a, "key 0x80000000 is reserved(key != IntIntHashTable.KEY_ABSENT)",
{
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashTable.hx",
lineNumber: 397,
className: "polygonal.ds.IntHashTable",
methodName: "set"
});
this.mSize == this.capacity && this.grow();
var c = this.mFree, d = this.mH;
Ea._assert(-2147483648 != c, "val 0x80000000 is reserved(val != KEY_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 1046,
className: "polygonal.ds.IntIntHashTable",
methodName: "set"
});
d.mSize == d.capacity && d.grow();
var e = d.mData, f = d.mHash, h = 3 * d.mFree;
d.mFree = d.mNext[d.mFree];
e[h] = a;
e[h + 1] = c;
var l = 73856093 * a & d.mMask, p = f[l];
if (-1 == p) f[l] = h, d.mSize++, d = !0; else {
f = e[p] != a;
for (l = e[p + 2]; -1 != l;) e[l] == a && (f = !1), p = l, l = e[l + 2];
e[p + 2] = h;
d.mSize++;
d = f
}
this.mVals[c] = b;
this.mKeys[c] = a;
this.mFree = this.mNext[c];
this.mSize++;
return d
},
unset: function (a) {
var b = this.mH, c = b.mHash[73856093 * a & b.mMask];
if (-1 == c) c = -2147483648; else {
var d = b.mData;
if (d[c] == a) c = d[c + 1]; else {
b = -2147483648;
for (c =
d[c + 2]; -1 != c;) {
if (d[c] == a) {
b = d[c + 1];
break
}
c = d[c + 2]
}
c = b
}
}
if (-2147483648 == c) return !1;
this.mVals[c] = null;
this.mKeys[c] = -2147483648;
this.mNext[c] = this.mFree;
this.mFree = c;
b = this.mH;
var e = 73856093 * a & b.mMask, f = b.mHash;
c = f[e];
if (-1 != c) if (d = b.mData, a == d[c]) f[e] = -1 == d[c + 2] ? -1 : d[c + 2], a = c / 3 | 0, b.mNext[a] = b.mFree, b.mFree = a, d[c + 1] = -2147483648, d[c + 2] = -1, b.mSize--; else {
e = !1;
f = c;
for (c = d[c + 2]; -1 != c;) {
if (d[c] == a) {
e = !0;
break
}
f = c;
c = d[f + 2]
}
e && (d[f + 2] = d[c + 2], a = c / 3 | 0, b.mNext[a] = b.mFree, b.mFree = a, d[c + 1] = -2147483648, d[c + 2] =
-1, b.mSize--)
}
this.mSize--;
return !0
},
toValSet: function () {
for (var a = new li, b = this.mKeys, c = this.mVals, d = 0, e = this.capacity; d < e;) {
var f = d++;
-2147483648 != b[f] && a.set(c[f])
}
return a
},
toKeySet: function () {
return this.mH.toKeySet()
},
keys: function () {
return this.mH.keys()
},
pack: function () {
this.mH.pack();
if (this.mH.capacity == this.capacity) return this;
this.capacity = this.mH.capacity;
for (var a = this.mNext = Array(this.capacity), b = 0, c = this.capacity - 1; b < c;) {
var d = b++;
a[d] = d + 1
}
a[this.capacity - 1] = -1;
this.mFree = 0;
b = this.mKeys;
a = Array(this.capacity);
c = this.mVals;
var e = Array(this.capacity), f = this.mFree;
for (d = this.mH.iterator(); d.hasNext();) {
var h = d.next();
a[f] = b[h];
e[f] = c[h];
f = this.mNext[f]
}
this.mFree = f;
this.mKeys = a;
this.mVals = e;
b = 0;
for (c = this.mSize; b < c;) if (d = b++, f = this.mH, e = a[d], h = f.mHash[73856093 * e & f.mMask], -1 != h) if (f = f.mData, f[h] == e) f[h + 1] = d; else for (h = f[h + 2]; -1 != h;) {
if (f[h] == e) {
f[h + 1] = d;
break
}
h = f[h + 2]
}
return this
},
iter: function (a) {
Ea._assert(null != a, "f != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashTable.hx",
lineNumber: 518, className: "polygonal.ds.IntHashTable", methodName: "iter"
});
var b = this.mVals, c = this.mH;
Ea._assert(!0, "f != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 1360,
className: "polygonal.ds.IntIntHashTable",
methodName: "iter"
});
for (var d = c.mData, e, f = 0, h = c.capacity; f < h;) c = 3 * f++, e = d[c + 1], -2147483648 != e && a(d[c], b[e]);
return this
},
grow: function () {
var a = this.capacity;
this.capacity = Kg.compute(this.get_growthRate(),
this.capacity);
var b = Array(this.capacity);
Pb.blit(this.mNext, 0, b, 0, a);
this.mNext = b;
b = Array(this.capacity);
Pb.blit(this.mKeys, 0, b, 0, a);
b = this.mKeys = b;
for (var c = a, d = this.capacity; c < d;) {
var e = c++;
b[e] = -2147483648
}
b = this.mNext;
c = a - 1;
for (d = this.capacity - 1; c < d;) e = c++, b[e] = e + 1;
b[this.capacity - 1] = -1;
this.mFree = a;
b = Array(this.capacity);
Pb.blit(this.mVals, 0, b, 0, a);
this.mVals = b
},
get_size: function () {
return this.mSize
},
free: function () {
Pb.nullify(this.mVals);
this.mNext = this.mKeys = this.mVals = null;
this.mH.free();
this.mH = null;
null != this.mIterator && (this.mIterator.free(), this.mIterator = null);
this.mTmpKeyBuffer = null
},
contains: function (a) {
return this.has(a)
},
remove: function (a) {
for (var b = this.mTmpKeyBuffer, c = 0, d = this.mKeys, e = this.mVals, f, h = 0, l = this.capacity; h < l;) {
var p = h++;
f = d[p];
-2147483648 != f && e[p] == a && (b[c++] = f)
}
h = 0;
for (l = c; h < l;) p = h++, this.unset(b[p]);
return 0 < c
},
clear: function (a) {
null == a && (a = !1);
this.mH.clear(a);
Pb.init(this.mKeys, -2147483648, 0, this.capacity);
a = this.mNext;
for (var b = 0, c = this.capacity - 1; b < c;) {
var d =
b++;
a[d] = d + 1
}
a[this.capacity - 1] = -1;
this.mSize = this.mFree = 0
},
iterator: function () {
return this.reuseIterator ? (null == this.mIterator ? this.mIterator = new lk(this) : this.mIterator.reset(), this.mIterator) : new lk(this)
},
isEmpty: function () {
return 0 == this.mSize
},
toArray: function () {
if (0 == this.mSize) return [];
var a = this.mSize;
Ea._assert(0 <= a, "len >= 0", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 37,
className: "polygonal.ds.tools.ArrayTools",
methodName: "alloc"
});
a = Array(a);
for (var b = 0, c = this.mKeys, d = this.mVals, e = 0, f = this.capacity; e < f;) {
var h = e++;
-2147483648 != c[h] && (a[b++] = d[h])
}
return a
},
clone: function (a, b) {
null == a && (a = !0);
var c = new Fe(this.mH.slotCount, this.mSize);
c.mH = this.mH.clone(!1);
c.mSize = this.mSize;
c.mFree = this.mFree;
var d = this.mVals, e = c.mVals;
if (a) Pb.blit(d, 0, e, 0, this.mSize); else if (a = this.mKeys, null != b) for (var f = 0, h = this.mSize; f < h;) {
var l = f++;
-2147483648 != a[l] && (e[l] = b(d[l]))
} else for (f = 0, h = this.mSize; f < h;) l = f++, -2147483648 !=
a[l] && (Ea._assert(w.__implements(d[l], tg), "element is not of type Cloneable(Std.isOfType(src.get(i), Cloneable))", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashTable.hx",
lineNumber: 727,
className: "polygonal.ds.IntHashTable",
methodName: "clone"
}), e[l] = w.__cast(d[l], tg).clone());
Pb.blit(this.mKeys, 0, c.mKeys, 0, this.mSize);
Pb.blit(this.mNext, 0, c.mNext, 0, this.mSize);
return c
},
__class__: Fe,
__properties__: {
get_size: "get_size", get_slotCount: "get_slotCount",
get_loadFactor: "get_loadFactor", set_growthRate: "set_growthRate", get_growthRate: "get_growthRate"
}
};
var lk = function (a) {
this.mObject = a;
this.reset()
};
k["polygonal.ds.IntHashTableIterator"] = lk;
lk.__name__ = "polygonal.ds.IntHashTableIterator";
lk.__interfaces__ = [Lg];
lk.prototype = {
mObject: null, mVals: null, mKeys: null, mI: null, mS: null, free: function () {
this.mKeys = this.mVals = this.mObject = null
}, reset: function () {
this.mVals = this.mObject.mVals;
this.mKeys = this.mObject.mKeys;
this.mS = this.mObject.mH.capacity;
for (this.mI =
0; this.mI < this.mS && -2147483648 == this.mKeys[this.mI];) this.mI++;
return this
}, hasNext: function () {
return this.mI < this.mS
}, next: function () {
for (var a = this.mVals[this.mI]; ++this.mI < this.mS && -2147483648 == this.mKeys[this.mI];) ;
return a
}, remove: function () {
throw I.thrown("unsupported operation");
}, __class__: lk
};
var vg = function (a, b) {
null == b && (b = -1);
this.mTmpBufferSize = 16;
this.mFree = this.mSize = 0;
this.reuseIterator = !1;
this.growthRate = -3;
this.key = ug.next();
Ea._assert(0 < a, "slotCount > 0", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 156, className: "polygonal.ds.IntIntHashTable", methodName: "new"
});
Ea._assert(0 < a && 0 == (a & a - 1), "slotCount is not a power of 2(MathTools.isPow2(slotCount))", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 157,
className: "polygonal.ds.IntIntHashTable",
methodName: "new"
});
-1 == b ? b = a : (Ea._assert(2 <= b, "minimum capacity is 2(initialCapacity >= 2)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 163, className: "polygonal.ds.IntIntHashTable", methodName: "new"
}), Ea._assert(0 < a && 0 == (a & a - 1), "capacity is not a power of 2(MathTools.isPow2(slotCount))", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 164,
className: "polygonal.ds.IntIntHashTable",
methodName: "new"
}));
this.mMinCapacity = this.capacity = b;
this.slotCount = a;
this.mMask = a - 1;
this.mHash = Pb.init(Array(a), -1);
this.mData = Array(3 * this.capacity);
this.mNext =
Array(this.capacity);
var c = 2;
a = this.mData;
b = 0;
for (var d = this.capacity; b < d;) b++, a[c - 1] = -2147483648, a[c] = -1, c += 3;
a = this.mNext;
b = 0;
for (d = this.capacity - 1; b < d;) c = b++, a[c] = c + 1;
a[this.capacity - 1] = -1;
this.mTmpBuffer = Array(this.mTmpBufferSize)
};
k["polygonal.ds.IntIntHashTable"] = vg;
vg.__name__ = "polygonal.ds.IntIntHashTable";
vg.__interfaces__ = [ki];
vg.prototype = {
key: null,
capacity: null,
growthRate: null,
reuseIterator: null,
get_loadFactor: function () {
return this.mSize / this.slotCount
},
slotCount: null,
mHash: null,
mData: null,
mNext: null,
mMask: null,
mFree: null,
mSize: null,
mMinCapacity: null,
mIterator: null,
mTmpBuffer: null,
mTmpBufferSize: null,
getCollisionCount: function () {
for (var a = 0, b, c = this.mData, d = this.mHash, e = 0, f = this.slotCount; e < f;) if (b = e++, b = d[b], -1 != b) for (b = c[b + 2]; -1 != b;) b = c[b + 2], ++a;
return a
},
getFront: function (a) {
var b = 73856093 * a & this.mMask, c = this.mHash[b];
if (-1 == c) return -2147483648;
var d = this.mData;
if (d[c] == a) return d[c + 1];
var e = -2147483648, f = c, h = f;
for (c = d[c + 2]; -1 != c;) {
if (d[c] == a) {
e = d[c + 1];
d[h + 2] = d[c + 2];
d[c + 2] = f;
this.mHash[b] =
c;
break
}
h = c;
c = d[h + 2]
}
return e
},
setIfAbsent: function (a, b) {
Ea._assert(-2147483648 != b, "val 0x80000000 is reserved(val != KEY_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 291,
className: "polygonal.ds.IntIntHashTable",
methodName: "setIfAbsent"
});
var c = 73856093 * a & this.mMask, d = this.mData, e = this.mHash[c];
if (-1 == e) {
this.mSize == this.capacity && (this.grow(), d = this.mData);
var f = 3 * this.mFree;
this.mFree = this.mNext[this.mFree];
this.mHash[c] = f;
d[f] = a;
d[f + 1] = b;
this.mSize++;
return !0
}
if (d[e] == a) return !1;
for (c = d[e + 2]; -1 != c;) {
if (d[c] == a) {
e = -1;
break
}
e = c;
c = d[e + 2]
}
if (-1 == e) return !1;
this.mSize == this.capacity && (this.grow(), d = this.mData);
f = 3 * this.mFree;
this.mFree = this.mNext[this.mFree];
d[e + 2] = f;
d[f] = a;
d[f + 1] = b;
this.mSize++;
return !0
},
rehash: function (a) {
Ea._assert(0 < a && 0 == (a & a - 1), "slotCount is not a power of 2(MathTools.isPow2(slotCount))", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 403, className: "polygonal.ds.IntIntHashTable", methodName: "rehash"
});
if (this.slotCount == a) return this;
for (var b = new vg(a, this.capacity), c = this.mData, d = 0, e = this.capacity; d < e;) {
var f = d++, h = c[3 * f + 1];
if (-2147483648 != h) {
var l = c[3 * f];
Ea._assert(-2147483648 != h, "val 0x80000000 is reserved(val != KEY_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 1046,
className: "polygonal.ds.IntIntHashTable",
methodName: "set"
});
b.mSize == b.capacity && b.grow();
f = b.mData;
var p = b.mHash, m = 3 * b.mFree;
b.mFree = b.mNext[b.mFree];
f[m] = l;
f[m + 1] = h;
l = 73856093 * l & b.mMask;
h = p[l];
if (-1 == h) p[l] = m; else {
for (p = f[h + 2]; -1 != p;) h = p, p = f[p + 2];
f[h + 2] = m
}
b.mSize++
}
}
this.mHash = b.mHash;
this.mData = b.mData;
this.mNext = b.mNext;
this.slotCount = a;
this.mMask = b.mMask;
this.mFree = b.mFree;
return this
},
remap: function (a, b) {
var c = this.mHash[73856093 * a & this.mMask];
if (-1 == c) return !1;
var d = this.mData;
if (d[c] == a) return d[c + 1] = b, !0;
for (c = d[c + 2]; -1 != c;) {
if (d[c] == a) {
d[c + 1] = b;
break
}
c = d[c + 2]
}
return -1 != c
},
extract: function (a) {
var b = 73856093 * a & this.mMask, c = this.mHash, d = c[b];
if (-1 == d) return -2147483648;
var e = this.mData;
if (a == e[d]) {
var f = e[d + 1];
c[b] = -1 == e[d + 2] ? -1 : e[d + 2];
a = d / 3 | 0;
this.mNext[a] = this.mFree;
this.mFree = a;
e[d + 1] = -2147483648;
e[d + 2] = -1;
this.mSize--;
return f
}
b = d;
d = e[d + 2];
for (f = -2147483648; -1 != d;) {
if (e[d] == a) {
f = e[d + 1];
break
}
b = d;
d = e[b + 2]
}
return -2147483648 != f ? (e[b + 2] = e[d + 2], a = d / 3 | 0, this.mNext[a] = this.mFree, this.mFree = a, e[d + 1] = -2147483648, e[d + 2] = -1, this.mSize--, f) : -2147483648
},
toKeyArray: function () {
if (0 == this.mSize) return [];
var a = this.mSize;
Ea._assert(0 <= a, "len >= 0", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 37,
className: "polygonal.ds.tools.ArrayTools",
methodName: "alloc"
});
a = Array(a);
for (var b = 0, c = this.mData, d = 0, e = this.capacity; d < e;) {
var f = d++;
-2147483648 != c[3 * f + 1] && (a[b++] = c[3 * f])
}
return a
},
toString: function () {
var a = "" + z.string(gb.format("[ IntIntHashTable size=" + this.mSize +
" capacity=" + this.capacity + " load=%.2f", [this.get_loadFactor()]));
if (0 == this.mSize) return a + " ]";
a += "\n";
for (var b = 0, c = this.keys(); c.hasNext();) {
var d = c.next();
b = Math.max(b, d)
}
for (d = 1; 0 != b;) ++d, b = b / 10 | 0;
b = [];
var e = " %- " + d + "d -> %s\n", f = [];
for (c = this.keys(); c.hasNext();) d = c.next(), f.push(d);
f.sort(function (a, b) {
return a - b
});
d = 1;
var h = f.length;
c = 0;
for (var l = 1; d < h;) {
if (f[c] == f[d]) ++l; else {
c = f[c];
b[0] = c;
if (1 < l) l = [], this.getAll(c, l), b[1] = l.join(","); else {
l = this.mHash[73856093 * c & this.mMask];
if (-1 == l) c =
-2147483648; else {
var p = this.mData;
if (p[l] == c) c = p[l + 1]; else {
var m = -2147483648;
for (l = p[l + 2]; -1 != l;) {
if (p[l] == c) {
m = p[l + 1];
break
}
l = p[l + 2]
}
c = m
}
}
b[1] = c
}
a += z.string(gb.format(e, b));
c = d;
l = 1
}
++d
}
c = f[c];
b[0] = c;
if (1 < l) l = [], this.getAll(c, l), b[1] = l.join(","); else {
d = this.mHash[73856093 * c & this.mMask];
if (-1 == d) l = -2147483648; else if (p = this.mData, p[d] == c) l = p[d + 1]; else {
m = -2147483648;
for (d = p[d + 2]; -1 != d;) {
if (p[d] == c) {
m = p[d + 1];
break
}
d = p[d + 2]
}
l = m
}
b[1] = l
}
a += z.string(gb.format(e, b));
return a + "]"
},
has: function (a) {
Ea._assert(-2147483648 !=
a, "val 0x80000000 is reserved(val != VAL_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 697,
className: "polygonal.ds.IntIntHashTable",
methodName: "has"
});
for (var b = !1, c = this.mData, d = 0, e = this.capacity; d < e;) {
var f = d++;
if (c[3 * f + 1] == a) {
b = !0;
break
}
}
return b
},
hasKey: function (a) {
var b = this.mHash[73856093 * a & this.mMask];
if (-1 == b) return !1;
var c = this.mData;
if (c[b] == a) return !0;
var d = !1;
for (b = c[b + 2]; -1 != b;) {
if (c[b] ==
a) {
d = !0;
break
}
b = c[b + 2]
}
return d
},
count: function (a) {
var b = 0, c = this.mHash[73856093 * a & this.mMask];
if (-1 != c) for (var d = this.mData; -1 != c;) d[c] == a && ++b, c = d[c + 2];
return b
},
get: function (a) {
var b = this.mHash[73856093 * a & this.mMask];
if (-1 == b) return -2147483648;
var c = this.mData;
if (c[b] == a) return c[b + 1];
var d = -2147483648;
for (b = c[b + 2]; -1 != b;) {
if (c[b] == a) {
d = c[b + 1];
break
}
b = c[b + 2]
}
return d
},
getAll: function (a, b) {
var c = this.mHash[73856093 * a & this.mMask];
if (-1 == c) return 0;
var d = 0, e = this.mData;
e[c] == a && (b[d++] = e[c + 1]);
for (c =
e[c + 2]; -1 != c;) e[c] == a && (b[d++] = e[c + 1]), c = e[c + 2];
return d
},
hasPair: function (a, b) {
Ea._assert(-2147483648 != b, "val 0x80000000 is reserved(val != KEY_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 891,
className: "polygonal.ds.IntIntHashTable",
methodName: "hasPair"
});
var c = this.mHash[73856093 * a & this.mMask];
if (-1 != c) {
var d = this.mData;
if (d[c] == a && d[c + 1] == b) return !0;
for (c = d[c + 2]; -1 != c;) {
if (d[c] == a && d[c + 1] == b) return !0;
c = d[c + 2]
}
}
return !1
},
unsetPair: function (a, b) {
Ea._assert(-2147483648 != b, "val 0x80000000 is reserved(val != KEY_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 939,
className: "polygonal.ds.IntIntHashTable",
methodName: "unsetPair"
});
var c = 73856093 * a & this.mMask, d = this.mHash, e = d[c];
if (-1 == e) return !1;
var f = this.mData;
if (a == f[e] && b == f[e + 1]) return d[c] = -1 == f[e + 2] ? -1 : f[e + 2], a = e / 3 | 0, this.mNext[a] = this.mFree, this.mFree =
a, f[e + 1] = -2147483648, f[e + 2] = -1, this.mSize--, !0;
c = !1;
d = e;
for (e = f[e + 2]; -1 != e;) {
if (f[e] == a && f[e + 1] == b) {
c = !0;
break
}
d = e;
e = f[d + 2]
}
return c ? (f[d + 2] = f[e + 2], a = e / 3 | 0, this.mNext[a] = this.mFree, this.mFree = a, f[e + 1] = -2147483648, f[e + 2] = -1, --this.mSize, !0) : !1
},
set: function (a, b) {
Ea._assert(-2147483648 != b, "val 0x80000000 is reserved(val != KEY_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 1046,
className: "polygonal.ds.IntIntHashTable",
methodName: "set"
});
this.mSize == this.capacity && this.grow();
var c = this.mData, d = this.mHash, e = 3 * this.mFree;
this.mFree = this.mNext[this.mFree];
c[e] = a;
c[e + 1] = b;
var f = 73856093 * a & this.mMask;
b = d[f];
if (-1 == b) return d[f] = e, this.mSize++, !0;
d = c[b] != a;
for (f = c[b + 2]; -1 != f;) c[f] == a && (d = !1), b = f, f = c[f + 2];
c[b + 2] = e;
this.mSize++;
return d
},
unset: function (a) {
var b = 73856093 * a & this.mMask, c = this.mHash, d = c[b];
if (-1 == d) return !1;
var e = this.mData;
if (a == e[d]) return c[b] = -1 == e[d + 2] ? -1 : e[d + 2], a = d / 3 | 0, this.mNext[a] = this.mFree, this.mFree =
a, e[d + 1] = -2147483648, e[d + 2] = -1, this.mSize--, !0;
b = !1;
c = d;
for (d = e[d + 2]; -1 != d;) {
if (e[d] == a) {
b = !0;
break
}
c = d;
d = e[c + 2]
}
return b ? (e[c + 2] = e[d + 2], a = d / 3 | 0, this.mNext[a] = this.mFree, this.mFree = a, e[d + 1] = -2147483648, e[d + 2] = -1, this.mSize--, !0) : !1
},
toValSet: function () {
for (var a = new Mg(this.capacity), b = this.mData, c = 0, d = this.capacity; c < d;) {
var e = c++;
e = b[3 * e + 1];
if (-2147483648 != e) {
Ea._assert(-2147483648 != e, "value 0x80000000 is reserved(val != VAL_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx",
lineNumber: 521, className: "polygonal.ds.IntHashSet", methodName: "set"
});
var f = 73856093 * e & a.mMask, h = a.mData, l = a.mHash[f];
if (-1 == l) a.mSize == a.capacity && (a.grow(), h = a.mData), l = a.mFree << 1, a.mFree = a.mNext[a.mFree], a.mHash[f] = l, h[l] = e, a.mSize++; else if (h[l] != e) {
for (f = h[l + 1]; -1 != f;) {
if (h[f] == e) {
l = -1;
break
}
l = f;
f = h[f + 1]
}
-1 != l && (a.mSize == a.capacity && (a.grow(), h = a.mData), f = a.mFree << 1, a.mFree = a.mNext[a.mFree], h[f] = e, h[l + 1] = f, a.mSize++)
}
}
}
return a
},
toKeySet: function () {
for (var a = new Mg(this.capacity), b = this.mData,
c = 0, d = this.capacity; c < d;) {
var e = c++;
if (-2147483648 != b[3 * e + 1]) {
e = b[3 * e];
Ea._assert(-2147483648 != e, "value 0x80000000 is reserved(val != VAL_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntHashSet.hx",
lineNumber: 521,
className: "polygonal.ds.IntHashSet",
methodName: "set"
});
var f = 73856093 * e & a.mMask, h = a.mData, l = a.mHash[f];
if (-1 == l) a.mSize == a.capacity && (a.grow(), h = a.mData), l = a.mFree << 1, a.mFree = a.mNext[a.mFree], a.mHash[f] = l, h[l] = e, a.mSize++;
else if (h[l] != e) {
for (f = h[l + 1]; -1 != f;) {
if (h[f] == e) {
l = -1;
break
}
l = f;
f = h[f + 1]
}
-1 != l && (a.mSize == a.capacity && (a.grow(), h = a.mData), f = a.mFree << 1, a.mFree = a.mNext[a.mFree], h[f] = e, h[l + 1] = f, a.mSize++)
}
}
}
return a
},
keys: function () {
return new wn(this)
},
pack: function () {
if (this.capacity == this.mMinCapacity) return this;
var a = this.mSize, b = this.mMinCapacity;
this.capacity = a > b ? a : b;
var c = this.mData, d = 0, e = this.mHash, f = Array(3 * this.capacity), h = 2;
a = 0;
for (b = this.capacity; a < b;) a++, f[h - 1] = -2147483648, f[h] = -1, h += 3;
a = 0;
for (b = this.slotCount; a <
b;) {
var l = a++;
h = e[l];
if (-1 != h) for (e[l] = d, f[d] = c[h], f[d + 1] = c[h + 1], f[d + 2] = -1, d += 3, h = c[h + 2]; -1 != h;) f[d - 1] = d, f[d] = c[h], f[d + 1] = c[h + 1], f[d + 2] = -1, d += 3, h = c[h + 2]
}
this.mData = f;
c = this.mNext = Array(this.capacity);
a = 0;
for (b = this.capacity - 1; a < b;) l = a++, c[l] = l + 1;
this.mFree = c[this.capacity - 1] = -1;
return this
},
iter: function (a) {
Ea._assert(null != a, "f != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 1360,
className: "polygonal.ds.IntIntHashTable",
methodName: "iter"
});
for (var b = this.mData, c, d, e = 0, f = this.capacity; e < f;) c = 3 * e++, d = b[c + 1], -2147483648 != d && a(b[c], d);
return this
},
hashCode: function (a) {
return 73856093 * a & this.mMask
},
grow: function () {
var a = this.capacity;
this.capacity = Kg.compute(this.growthRate, this.capacity);
var b = Array(this.capacity);
Pb.blit(this.mNext, 0, b, 0, a);
this.mNext = b;
b = Array(3 * this.capacity);
Pb.blit(this.mData, 0, b, 0, 3 * a);
this.mData = b;
b = this.mNext;
for (var c = a - 1, d = this.capacity - 1; c < d;) {
var e = c++;
b[e] = e + 1
}
b[this.capacity - 1] = -1;
this.mFree =
a;
e = 3 * a + 2;
b = this.mData;
c = 0;
for (d = this.capacity - a; c < d;) c++, b[e - 1] = -2147483648, b[e] = -1, e += 3
},
get_size: function () {
return this.mSize
},
free: function () {
this.mNext = this.mData = this.mHash = null;
null != this.mIterator && (this.mIterator.free(), this.mIterator = null);
this.mTmpBuffer = null
},
contains: function (a) {
return this.has(a)
},
remove: function (a) {
Ea._assert(-2147483648 != a, "val 0x80000000 is reserved(val != KEY_ABSENT)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/IntIntHashTable.hx",
lineNumber: 1465, className: "polygonal.ds.IntIntHashTable", methodName: "remove"
});
for (var b = 0, c = this.mTmpBuffer, d = this.mTmpBufferSize, e = this.mData, f, h = 0, l = this.capacity; h < l;) f = h++, f *= 3, e[f + 1] == a && (b == d && (this.mTmpBufferSize = d <<= 1, c = Array(d), Pb.blit(this.mTmpBuffer, 0, c, 0, b), this.mTmpBuffer = c), c[b++] = e[f]);
h = 0;
for (l = b; h < l;) {
f = h++;
d = c[f];
f = 73856093 * d & this.mMask;
var p = this.mHash;
a = p[f];
if (-1 != a) if (e = this.mData, d == e[a]) p[f] = -1 == e[a + 2] ? -1 : e[a + 2], f = a / 3 | 0, this.mNext[f] = this.mFree, this.mFree = f, e[a + 1] = -2147483648,
e[a + 2] = -1, this.mSize--; else {
f = !1;
p = a;
for (a = e[a + 2]; -1 != a;) {
if (e[a] == d) {
f = !0;
break
}
p = a;
a = e[p + 2]
}
f && (e[p + 2] = e[a + 2], d = a / 3 | 0, this.mNext[d] = this.mFree, this.mFree = d, e[a + 1] = -2147483648, e[a + 2] = -1, this.mSize--)
}
}
return 0 < b
},
clear: function (a) {
var b = this.mHash;
a = 0;
for (var c = this.slotCount; a < c;) {
var d = a++;
b[d] = -1
}
d = 2;
b = this.mData;
a = 0;
for (c = this.capacity; a < c;) a++, b[d - 1] = -2147483648, b[d] = -1, d += 3;
b = this.mNext;
a = 0;
for (c = this.capacity - 1; a < c;) d = a++, b[d] = d + 1;
b[this.capacity - 1] = -1;
this.mSize = this.mFree = 0
},
iterator: function () {
return this.reuseIterator ?
(null == this.mIterator ? this.mIterator = new mk(this) : this.mIterator.reset(), this.mIterator) : new mk(this)
},
isEmpty: function () {
return 0 == this.mSize
},
toArray: function () {
if (0 == this.mSize) return [];
var a = this.mSize;
Ea._assert(0 <= a, "len >= 0", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 37,
className: "polygonal.ds.tools.ArrayTools",
methodName: "alloc"
});
a = Array(a);
for (var b = 0, c, d = this.mData, e = 0, f = this.capacity; e < f;) c =
e++, c = d[3 * c + 1], -2147483648 != c && (a[b++] = c);
return a
},
clone: function (a, b) {
a = new vg(this.slotCount, this.capacity);
Pb.blit(this.mHash, 0, a.mHash, 0, this.slotCount);
Pb.blit(this.mData, 0, a.mData, 0, 3 * this.capacity);
Pb.blit(this.mNext, 0, a.mNext, 0, this.capacity);
a.mMask = this.mMask;
a.slotCount = this.slotCount;
a.capacity = this.capacity;
a.mFree = this.mFree;
a.mSize = this.mSize;
return a
},
__class__: vg,
__properties__: {get_size: "get_size", get_loadFactor: "get_loadFactor"}
};
var mk = function (a) {
this.mObject = a;
this.mData = a.mData;
this.mI = 0;
this.mS = a.capacity;
this.scan()
};
k["polygonal.ds.IntIntHashTableValIterator"] = mk;
mk.__name__ = "polygonal.ds.IntIntHashTableValIterator";
mk.__interfaces__ = [Lg];
mk.prototype = {
mObject: null, mI: null, mS: null, mData: null, free: function () {
this.mData = this.mObject = null
}, reset: function () {
this.mData = this.mObject.mData;
this.mI = 0;
this.mS = this.mObject.capacity;
this.scan();
return this
}, hasNext: function () {
return this.mI < this.mS
}, next: function () {
var a = this.mData[3 * this.mI++ + 1];
this.scan();
return a
}, remove: function () {
throw I.thrown("unsupported operation");
}, scan: function () {
for (; this.mI < this.mS && -2147483648 == this.mData[3 * this.mI + 1];) this.mI++
}, __class__: mk
};
var wn = function (a) {
this.mObject = a;
this.mData = a.mData;
this.mI = 0;
this.mS = a.capacity;
this.scan()
};
k["polygonal.ds.IntIntHashTableKeyIterator"] = wn;
wn.__name__ = "polygonal.ds.IntIntHashTableKeyIterator";
wn.__interfaces__ = [Lg];
wn.prototype = {
mObject: null, mI: null, mS: null, mData: null, free: function () {
this.mData = this.mObject = null
}, reset: function () {
this.mData = this.mObject.mData;
this.mI = 0;
this.mS = this.mObject.capacity;
this.scan();
return this
}, hasNext: function () {
return this.mI < this.mS
}, next: function () {
var a = this.mData[3 * this.mI++];
this.scan();
return a
}, remove: function () {
throw I.thrown("unsupported operation");
}, scan: function () {
for (; this.mI < this.mS && -2147483648 == this.mData[3 * this.mI + 1];) this.mI++
}, __class__: wn
};
var li = function (a, b) {
null == a && (a = 16);
this.mIterator = null;
this.mSize = 0;
this.reuseIterator = !1;
this.growthRate = -2;
this.key = ug.next();
this.capacity = this.mInitialCapacity = 1 > a ? 1 : a;
null != b && (this.capacity = b.length);
this.mData = Array(this.capacity);
if (null != b) for (a = 0; a < b.length;) {
var c = b[a];
++a;
this.set(c)
}
};
k["polygonal.ds.ListSet"] = li;
li.__name__ = "polygonal.ds.ListSet";
li.__interfaces__ = [ij];
li.prototype = {
key: null,
capacity: null,
growthRate: null,
reuseIterator: null,
mData: null,
mInitialCapacity: null,
mSize: null,
mIterator: null,
reserve: function (a) {
a > this.capacity && (this.capacity = a, this.resizeContainer(a));
return this
},
pack: function () {
if (this.capacity > this.mInitialCapacity) {
var a = this.mInitialCapacity, b = this.mSize;
this.capacity =
a > b ? a : b;
this.resizeContainer(this.capacity)
} else {
a = this.mData;
b = this.mSize;
for (var c = this.capacity; b < c;) {
var d = b++;
a[d] = null
}
}
return this
},
iter: function (a) {
Ea._assert(null != a, "f != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/ListSet.hx",
lineNumber: 136,
className: "polygonal.ds.ListSet",
methodName: "iter"
});
for (var b = this.mData, c = 0, d = this.mSize; c < d;) {
var e = c++;
a(b[e])
}
return this
},
toString: function () {
var a = "" + z.string("[ ListSet size=" +
this.mSize);
if (this.isEmpty()) return a + " ]";
a += "\n";
for (var b = 0, c = this.mSize; b < c;) {
var d = b++;
a += " ";
a += z.string(z.string(this.mData[d]));
a += "\n"
}
return a + "]"
},
has: function (a) {
if (this.isEmpty()) return !1;
for (var b = this.mData, c = 0, d = this.mSize; c < d;) {
var e = c++;
if (b[e] == a) return !0
}
return !1
},
set: function (a) {
for (var b = this.mData, c = 0, d = this.mSize; c < d;) {
var e = c++;
if (b[e] == a) return !1
}
this.mSize == this.capacity && (this.grow(), b = this.mData);
b[this.mSize++] = a;
return !0
},
unset: function (a) {
return this.remove(a)
},
merge: function (a,
b, c) {
if (b) for (a = a.iterator(); a.hasNext();) b = a.next(), this.set(b); else if (null != c) for (a = a.iterator(); a.hasNext();) b = a.next(), this.set(c(b)); else for (a = a.iterator(); a.hasNext();) b = a.next(), Ea._assert(w.__implements(b, tg), "element is not of type Cloneable(Std.isOfType(val, Cloneable))", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/ListSet.hx",
lineNumber: 230,
className: "polygonal.ds.ListSet",
methodName: "merge"
}), this.set(w.__cast(b, tg).clone())
},
get_size: function () {
return this.mSize
},
free: function () {
Pb.nullify(this.mData);
this.mData = null;
null != this.mIterator && (this.mIterator.free(), this.mIterator = null)
},
contains: function (a) {
return this.has(a)
},
remove: function (a) {
for (var b = this.mData, c = 0, d = this.mSize; c < d;) {
var e = c++;
if (b[e] == a) return b[e] = this.mData[--this.mSize], !0
}
return !1
},
clear: function (a) {
null == a && (a = !1);
a && Pb.nullify(this.mData);
this.mSize = 0
},
iterator: function () {
if (this.reuseIterator) {
if (null == this.mIterator) this.mIterator = new nk(this);
else {
var a = this.mIterator;
a.mData = a.mObject.mData;
a.mS = a.mObject.mSize;
a.mI = 0
}
return this.mIterator
}
return new nk(this)
},
isEmpty: function () {
return 0 == this.mSize
},
toArray: function () {
return Pb.toArray(this.mData, 0, this.mSize, [])
},
clone: function (a, b) {
null == a && (a = !0);
var c = new li;
c.capacity = this.mSize;
c.mSize = this.mSize;
c.mData = Array(this.mSize);
var d = this.mData, e = c.mData;
if (a) Pb.blit(d, 0, e, 0, this.mSize); else if (null == b) {
a = 0;
for (var f = this.mSize; a < f;) {
var h = a++;
Ea._assert(w.__implements(d[h], tg), "element is not of type Cloneable(Std.isOfType(src.get(i), Cloneable))",
{
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/ListSet.hx",
lineNumber: 359,
className: "polygonal.ds.ListSet",
methodName: "clone"
});
e[h] = w.__cast(d[h], tg).clone()
}
} else for (a = 0, f = this.mSize; a < f;) h = a++, e[h] = b(d[h]);
return c
},
grow: function () {
this.capacity = Kg.compute(this.growthRate, this.capacity);
this.resizeContainer(this.capacity)
},
resizeContainer: function (a) {
a = Array(a);
Pb.blit(this.mData, 0, a, 0, this.mSize);
this.mData = a
},
__class__: li,
__properties__: {get_size: "get_size"}
};
var nk = function (a) {
this.mObject = a;
this.mData = this.mObject.mData;
this.mS = this.mObject.mSize;
this.mI = 0
};
k["polygonal.ds.ListSetIterator"] = nk;
nk.__name__ = "polygonal.ds.ListSetIterator";
nk.__interfaces__ = [Lg];
nk.prototype = {
mObject: null, mData: null, mI: null, mS: null, free: function () {
this.mData = this.mObject = null
}, reset: function () {
this.mData = this.mObject.mData;
this.mS = this.mObject.mSize;
this.mI = 0;
return this
}, hasNext: function () {
return this.mI < this.mS
}, next: function () {
return this.mData[this.mI++]
}, remove: function () {
Ea._assert(0 <
this.mI, "call next() before removing an element(mI > 0)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/ListSet.hx",
lineNumber: 430,
className: "polygonal.ds.ListSetIterator",
methodName: "remove"
});
this.mData[this.mI] = this.mData[--this.mS]
}, __class__: nk
};
var gb = function () {
};
k["polygonal.ds.Printf"] = gb;
gb.__name__ = "polygonal.ds.Printf";
gb.init = function () {
var a = Array(40);
gb._padChars = a;
gb._padChars[0] = T.rpad("", "0", 0);
gb._padChars[1] = T.rpad("",
"0", 1);
gb._padChars[2] = T.rpad("", "0", 2);
gb._padChars[3] = T.rpad("", "0", 3);
gb._padChars[4] = T.rpad("", "0", 4);
gb._padChars[5] = T.rpad("", "0", 5);
gb._padChars[6] = T.rpad("", "0", 6);
gb._padChars[7] = T.rpad("", "0", 7);
gb._padChars[8] = T.rpad("", "0", 8);
gb._padChars[9] = T.rpad("", "0", 9);
gb._padChars[10] = T.rpad("", "0", 10);
gb._padChars[11] = T.rpad("", "0", 11);
gb._padChars[12] = T.rpad("", "0", 12);
gb._padChars[13] = T.rpad("", "0", 13);
gb._padChars[14] = T.rpad("", "0", 14);
gb._padChars[15] = T.rpad("", "0", 15);
gb._padChars[16] = T.rpad("",
"0", 16);
gb._padChars[17] = T.rpad("", "0", 17);
gb._padChars[18] = T.rpad("", "0", 18);
gb._padChars[19] = T.rpad("", "0", 19);
for (a = 0; 20 > a;) {
var b = a++;
gb._padChars[b + 20] = T.rpad("", " ", b)
}
a = Array(64);
gb._tmp = a
};
gb.format = function (a, b) {
gb._initialized || (gb._initialized = !0, gb.init());
var c = new Sa, d = 0, e = [], f = 0;
for (a = gb.tokenize(a, e); f < a;) {
var h = f++, l = e[h];
switch (l._hx_index) {
case 0:
h = l.string;
c.b += null == h ? "null" : "" + h;
break;
case 1:
h = l.type;
l = l.args;
if (null == l.width) {
if (!w.__instanceof(b[d], Ia)) throw I.thrown(new jh("invalid 'width' argument"));
l.width = b[d++]
}
if (null == l.precision) {
if (!w.__instanceof(b[d], Ia)) throw I.thrown(new jh("invalid 'precision' argument"));
l.precision = b[d++]
}
if (-1 < l.pos) {
if (l.pos > b.length - 1) throw I.thrown(new jh("argument index out of range"));
var p = b[l.pos]
} else p = b[d++];
null == p && (p = "null");
switch (h._hx_index) {
case 0:
switch (h.type._hx_index) {
case 0:
gb.formatCharacter(p, l, c);
break;
case 1:
gb.formatSignedDecimal(p, l, c);
break;
case 2:
gb.formatUnsignedDecimal(p, l, c);
break;
case 3:
gb.formatOctal(p, l, c);
break;
case 4:
gb.formatHexadecimal(p,
l, c);
break;
case 5:
gb.formatBinary(p, l, c)
}
break;
case 1:
switch (h.floatType._hx_index) {
case 0:
gb.formatFloat(p, l, c);
break;
case 1:
gb.formatScientific(p, l, c);
break;
case 2:
gb.formatNaturalFloat(p, l, c)
}
break;
case 2:
gb.formatString(p, l, c);
break;
case 3:
throw I.thrown(new jh("specifier 'p' is not supported"));
case 4:
throw I.thrown(new jh("specifier 'n' is not supported"));
}
break;
case 2:
h = l.name;
if (!Object.prototype.hasOwnProperty.call(b[0], h)) throw I.thrown(new jh('no field named "' + h + '" found'));
c.b += z.string(z.string(V.field(b[0],
h)));
++d;
break;
case 3:
throw I.thrown(new jh("Invalid format specifier."));
}
}
return c.b
};
gb.tokenize = function (a, b) {
for (var c = 0, d, e = 0, f = new Sa, h = a.length; c < h;) if (d = a.charCodeAt(c++), 37 == d) if (d = a.charCodeAt(c++), 37 == d) f.b += String.fromCodePoint(d); else {
0 < f.b.length && (b[e++] = Ng.Raw(f.b), f = new Sa);
if (40 == d) if (d = a.indexOf(")", c), -1 == d) d = Ng.Unknown("named parameter", c); else {
var l = K.substr(a, c, d - c);
c = d + 1;
d = Ng.Property(l)
} else {
l = 0;
null == l && (l = 0);
l = new kp(l, -1, -1, -1);
a:for (; 32 <= d && 48 >= d;) switch (d) {
case 32:
d =
a.charCodeAt(c++);
l.flags |= 1 << Za.Space._hx_index;
break;
case 35:
d = a.charCodeAt(c++);
l.flags |= 1 << Za.Sharp._hx_index;
break;
case 43:
d = a.charCodeAt(c++);
l.flags |= 1 << Za.Plus._hx_index;
break;
case 45:
d = a.charCodeAt(c++);
l.flags |= 1 << Za.Minus._hx_index;
break;
case 48:
d = a.charCodeAt(c++);
l.flags |= 1 << Za.Zero._hx_index;
break;
default:
break a
}
0 != (l.flags & 1 << Za.Minus._hx_index) && 0 != (l.flags & 1 << Za.Zero._hx_index) && (l.flags &= -1 - (1 << Za.Zero._hx_index));
0 != (l.flags & 1 << Za.Space._hx_index) && 0 != (l.flags & 1 << Za.Plus._hx_index) &&
(l.flags &= -1 - (1 << Za.Space._hx_index));
if (42 == d) l.width = null, d = a.charCodeAt(c++); else if (48 <= d && 57 >= d) {
for (var p = 0; 48 <= d && 57 >= d;) p = d - 48 + 10 * p, d = a.charCodeAt(c++);
l.width = p;
if (36 == d) if (l.pos = p - 1, l.width = -1, d = a.charCodeAt(c++), 42 == d) l.width = null, d = a.charCodeAt(c++); else if (48 <= d && 57 >= d) {
for (p = 0; 48 <= d && 57 >= d;) p = d - 48 + 10 * p, d = a.charCodeAt(c++);
l.width = p
}
}
if (46 == d) if (d = a.charCodeAt(c++), 42 == d) l.precision = null, d = a.charCodeAt(c++); else {
p = 0;
if (48 <= d && 57 >= d) for (; 48 <= d && 57 >= d;) p = d - 48 + 10 * p, d = a.charCodeAt(c++);
l.precision =
p
}
a:for (; 76 <= d && 108 >= d;) switch (d) {
case 76:
d = a.charCodeAt(c++);
l.flags |= 1 << Za.LengthUpperCaseL._hx_index;
break;
case 104:
d = a.charCodeAt(c++);
l.flags |= 1 << Za.LengthH._hx_index;
break;
case 108:
d = a.charCodeAt(c++);
l.flags |= 1 << Za.LengthLowerCaseL._hx_index;
break;
default:
break a
}
if (69 <= d && 120 >= d) {
switch (d) {
case 69:
l.flags |= 1 << Za.UpperCase._hx_index;
p = we.FmtFloat(mi.FScientific);
break;
case 71:
l.flags |= 1 << Za.UpperCase._hx_index;
p = we.FmtFloat(mi.FNatural);
break;
case 88:
l.flags |= 1 << Za.UpperCase._hx_index;
p = we.FmtInt(Ef.IHex);
break;
case 98:
p = we.FmtInt(Ef.IBin);
break;
case 99:
p = we.FmtInt(Ef.ICharacter);
break;
case 100:
p = we.FmtInt(Ef.ISignedDecimal);
break;
case 101:
p = we.FmtFloat(mi.FScientific);
break;
case 102:
p = we.FmtFloat(mi.FNormal);
break;
case 103:
p = we.FmtFloat(mi.FNatural);
break;
case 105:
p = we.FmtInt(Ef.ISignedDecimal);
break;
case 110:
p = we.FmtNothing;
break;
case 111:
p = we.FmtInt(Ef.IOctal);
break;
case 112:
p = we.FmtPointer;
break;
case 115:
p = we.FmtString;
break;
case 117:
p = we.FmtInt(Ef.IUnsignedDecimal);
break;
case 120:
p = we.FmtInt(Ef.IHex);
break;
default:
p = null
}
d = null == p ? Ng.Unknown(String.fromCodePoint(d), c) : Ng.Tag(p, l)
} else d = Ng.Unknown(String.fromCodePoint(d), c)
}
b[e++] = d
} else f.b += String.fromCodePoint(d);
0 < f.b.length && (b[e++] = Ng.Raw(f.b));
return e
};
gb.formatBinary = function (a, b, c) {
var d = b.flags, e = b.precision;
b = b.width;
0 != (d & 1 << Za.LengthH._hx_index) && (a &= 65535);
if (0 == a) {
if (0 == e) return;
d &= -1 - (1 << Za.Sharp._hx_index)
}
-1 == e && (e = 1);
for (var f = gb._tmp, h = 0; f[h++] = a & 1, a >>>= 1, 0 < a;) ;
a = h;
if (0 != (d & 1 << Za.Minus._hx_index)) {
0 != (d & 1 << Za.Sharp._hx_index) &&
(c.b += "0b");
if (e > h) for (var l = 0, p = e - h; l < p;) l++, c.b += "0";
for (; -1 < --a;) c.b += String.fromCodePoint(48 + f[a]);
0 != (d & 1 << Za.Sharp._hx_index) && (b -= 2);
e > h && (h = e);
if (b > h) for (l = 0, p = b - h; l < p;) l++, c.b += " "
} else {
p = h;
e > p && (p = e);
0 != (d & 1 << Za.Sharp._hx_index) && (b -= 2);
if (b > p) if (0 != (d & 1 << Za.Zero._hx_index) && 1 == e) for (l = 0, p = b - p; l < p;) l++, c.b += "0"; else for (l = 0, p = b - p; l < p;) l++, c.b += " ";
0 != (d & 1 << Za.Sharp._hx_index) && (c.b += "0b");
if (e > h) for (l = 0, p = e - h; l < p;) l++, c.b += "0";
for (; -1 < --a;) c.b += String.fromCodePoint(48 + f[a])
}
};
gb.formatOctal =
function (a, b, c) {
var d = b.flags, e = b.precision;
b = b.width;
0 != (d & 1 << Za.LengthH._hx_index) && (a &= 65535);
if (0 == a) {
if (0 == e) {
c.b += z.string(0 != (d & 1 << Za.Sharp._hx_index) ? "0" : "");
return
}
d &= -1 - (1 << Za.Sharp._hx_index)
}
for (var f = gb._tmp, h = 0; f[h++] = a & 7, a >>>= 3, 0 < a;) ;
a = h;
-1 != e ? 0 != (d & 1 << Za.Zero._hx_index) && (d &= -1 - (1 << Za.Zero._hx_index), d |= 1 << Za.Space._hx_index) : e = 1;
if (0 != (d & 1 << Za.Minus._hx_index)) {
0 != (d & 1 << Za.Sharp._hx_index) && (c.b += "0", ++h);
if (e > h) for (var l = 0, p = e - h; l < p;) l++, c.b += "0";
for (; -1 < --a;) d = String.fromCodePoint(48 +
f[a]), c.b += z.string(d);
e > h && (h = e);
if (b > h) for (l = 0, p = b - h; l < p;) l++, c.b += " "
} else {
0 != (d & 1 << Za.Sharp._hx_index) && ++h;
p = h;
e > p && (p = e);
if (b > p) if (0 != (d & 1 << Za.Zero._hx_index)) for (l = 0, p = b - p; l < p;) l++, c.b += "0"; else for (l = 0, p = b - p; l < p;) l++, c.b += " ";
0 != (d & 1 << Za.Sharp._hx_index) && (c.b += "0");
if (e > h) for (l = 0, p = e - h; l < p;) l++, c.b += "0";
for (; -1 < --a;) d = String.fromCodePoint(48 + f[a]), c.b += z.string(d)
}
};
gb.formatHexadecimal = function (a, b, c) {
var d = b.flags, e = b.precision;
b = b.width;
0 != (d & 1 << Za.LengthH._hx_index) && (a &= 65535);
if (0 ==
a) {
if (0 == e) return;
d &= -1 - (1 << Za.Sharp._hx_index)
}
-1 == e && (e = 1);
for (var f = gb._tmp, h = 0; f[h++] = a & 15, a >>>= 4, 0 < a;) ;
a = h;
if (0 != (d & 1 << Za.Minus._hx_index)) {
0 != (d & 1 << Za.Sharp._hx_index) && (c.b = 0 != (d & 1 << Za.UpperCase._hx_index) ? c.b + "0X" : c.b + "0x");
if (e > h) for (var l = 0, p = e - h; l < p;) l++, c.b += "0";
for (l = 0 != (d & 1 << Za.UpperCase._hx_index) ? 65 : 97; -1 < --a;) p = f[a], 10 > p ? (p = String.fromCodePoint(48 + p), c.b += z.string(p)) : (p = String.fromCodePoint(l + (p - 10)), c.b += z.string(p));
0 != (d & 1 << Za.Sharp._hx_index) && (b -= 2);
e > h && (h = e);
if (b > h) for (l =
0, p = b - h; l < p;) l++, c.b += " "
} else {
p = h;
e > p && (p = e);
0 != (d & 1 << Za.Sharp._hx_index) && (b -= 2);
if (b > p) if (0 != (d & 1 << Za.Zero._hx_index) && 1 == e) for (l = 0, p = b - p; l < p;) l++, c.b += "0"; else for (l = 0, p = b - p; l < p;) l++, c.b += " ";
0 != (d & 1 << Za.Sharp._hx_index) && (c.b = 0 != (d & 1 << Za.UpperCase._hx_index) ? c.b + "0X" : c.b + "0x");
if (e > h) for (l = 0, p = e - h; l < p;) l++, c.b += "0";
for (l = 0 != (d & 1 << Za.UpperCase._hx_index) ? 65 : 97; -1 < --a;) p = f[a], 10 > p ? (p = String.fromCodePoint(48 + p), c.b += z.string(p)) : (p = String.fromCodePoint(l + (p - 10)), c.b += z.string(p))
}
};
gb.formatSignedDecimal =
function (a, b, c) {
var d = b.flags, e = b.precision;
b = b.width;
if (0 != e || 0 != a) {
0 != (d & 1 << Za.LengthH._hx_index) && (a &= 65535);
var f = z.string(0 > a ? -a : a), h = f.length;
a = 0 > a ? "-" : 0 != (d & 1 << Za.Plus._hx_index) ? "+" : 0 != (d & 1 << Za.Space._hx_index) ? " " : null;
var l = null != a;
if (0 != (d & 1 << Za.Minus._hx_index)) {
l && (c.b += null == a ? "null" : "" + a);
if (e > h) for (var p = 0, m = e - h; p < m;) p++, c.b += "0";
c.b += z.string(f);
e > h && (h = e);
h += l ? 1 : 0;
if (b > h) for (p = 0, m = b - h; p < m;) p++, c.b += " "
} else {
m = h + (l ? 1 : 0);
e > m && (m = e);
if (b > m) if (0 != (d & 1 << Za.Zero._hx_index)) for (l && (c.b +=
null == a ? "null" : "" + a), p = 0, m = b - m; p < m;) p++, c.b += "0"; else for (p = 0, m = b - m; p < m;) p++, c.b += " ";
l && 0 == (d & 1 << Za.Zero._hx_index) && (c.b += null == a ? "null" : "" + a);
if (e > h) for (p = 0, m = e - h; p < m;) p++, c.b += "0";
c.b += z.string(f)
}
}
};
gb.formatUnsignedDecimal = function (a, b, c) {
if (0 <= a) gb.formatSignedDecimal(a, b, c); else {
a = new db(0, a);
a = es.toString(a);
var d = a.length, e = b.flags, f = b.precision;
b = b.width;
if (0 != (e & 1 << Za.Minus._hx_index)) {
if (f > d) {
e = 0;
for (var h = f - d; e < h;) e++, c.b += "0"
}
c.b += null == a ? "null" : "" + a;
f > d && (d = f);
if (b > d) for (e = 0, h = b - d; e <
h;) e++, c.b += " "
} else {
h = d;
f > h && (h = f);
if (b > h) if (0 != (e & 1 << Za.Zero._hx_index)) for (e = 0, h = b - h; e < h;) e++, c.b += "0"; else for (e = 0, h = b - h; e < h;) e++, c.b += " ";
if (f > d) for (e = 0, h = f - d; e < h;) e++, c.b += "0";
c.b += null == a ? "null" : "" + a
}
}
};
gb.formatNaturalFloat = function (a, b, c) {
var d = new Sa;
gb.formatFloat(a, b, d);
var e = d.b;
d = new Sa;
gb.formatScientific(a, b, d);
a = d.b;
e = e.length <= a.length ? e : a;
c.b += null == e ? "null" : "" + e
};
gb.formatScientific = function (a, b, c) {
var d = b.flags, e = b.precision;
-1 == e && (e = gb.DEFAULT_PRECISION);
var f, h = "";
if (0 == a) {
var l =
f = 0;
h += "0";
if (0 < e) {
h += ".";
for (var p = 0, m = e; p < m;) p++, h += "0"
}
} else p = Math, f = 0 < a ? 1 : 0 > a ? -1 : 0, a = p.abs(a), l = p.floor(Math.log(a) / 2.302585092994046), a /= p.pow(10, l), p = p.pow(.1, e), a = Math.round(a / p) * p;
0 != a && (h += K.substr(null == a ? "null" : "" + a, 0, e + 2));
h += 0 != (d & 1 << Za.UpperCase._hx_index) ? "E" : "e";
h += 0 <= l ? "+" : "-";
a = z.string(0 > l ? -l : l);
m = gb.DEFAULT_NUM_EXP_DIGITS - a.length;
if (1 > m) p = a; else {
if (30 < m) for (e = l = "0", p = 0, --m; p < m;) p++, e += l; else e = gb._padChars[m];
p = e + a
}
h += p;
(a = -1 == f || 0 != (d & 1 << Za.Plus._hx_index) || 0 != (d & 1 << Za.Space._hx_index)) &&
0 == (d & 1 << Za.Zero._hx_index) && (h = (-1 == f ? "-" : 0 != (d & 1 << Za.Plus._hx_index) ? "+" : " ") + h);
if (0 < b.width && (p = b.width, a && 0 != (d & 1 << Za.Zero._hx_index) && --p, b = 0 != (d & 1 << Za.Zero._hx_index) ? 0 : 20, m = p - h.length, 1 <= m)) {
if (30 < m) for (e = l = 0 == b ? "0" : " ", p = 0, --m; p < m;) p++, e += l; else e = gb._padChars[b + m];
h = e + h
}
a && 0 != (d & 1 << Za.Zero._hx_index) && (h = (-1 == f ? "-" : 0 != (d & 1 << Za.Plus._hx_index) ? "+" : " ") + h);
c.b += null == h ? "null" : "" + h
};
gb.formatFloat = function (a, b, c) {
var d = b.flags, e = b.precision;
-1 == e && (e = gb.DEFAULT_PRECISION);
b = b.width;
var f = 0 >
a;
0 == e ? (a = z.string(Math.round(a)), 0 != (d & 1 << Za.Sharp._hx_index) && (a += ".")) : a = a.toFixed(e);
var h = a.length;
f && -1 < a.indexOf("-") && (a = K.substr(a, 1, null));
e = null;
0 == (d & 1 << Za.Plus._hx_index) || f ? 0 != (d & 1 << Za.Space._hx_index) ? (e = " ", ++h) : f && (e = "-") : (e = "+", ++h);
f = null != e;
if (0 != (d & 1 << Za.Minus._hx_index)) {
if (f && (c.b += null == e ? "null" : "" + e), c.b += null == a ? "null" : "" + a, b > h) for (d = 0, b -= h; d < b;) d++, c.b += " "
} else {
if (b > h) if (0 != (d & 1 << Za.Zero._hx_index)) for (f && (c.b += null == e ? "null" : "" + e, f = !1), d = 0, b -= h; d < b;) d++, c.b += "0"; else for (d =
0, b -= h; d < b;) d++, c.b += " ";
f && (c.b += null == e ? "null" : "" + e);
c.b += null == a ? "null" : "" + a
}
};
gb.formatCharacter = function (a, b, c) {
if (0 != (b.flags & 1 << Za.Minus._hx_index)) {
a = String.fromCodePoint(a);
c.b += z.string(a);
var d = 0;
for (b = b.width - 1; d < b;) d++, c.b += " "
} else {
d = 0;
for (b = b.width - 1; d < b;) d++, c.b += " ";
a = String.fromCodePoint(a);
c.b += z.string(a)
}
};
gb.formatString = function (a, b, c) {
var d = a.length, e = b.precision;
if (0 != (b.flags & 1 << Za.Minus._hx_index)) {
-1 != e ? (c.b += null == e ? K.substr(a, 0, null) : K.substr(a, 0, e), d = e) : c.b += null == a ?
"null" : "" + a;
var f = 0;
for (b = b.width - d; f < b;) f++, c.b += " "
} else {
-1 != e && (d = e);
f = 0;
for (b = b.width - d; f < b;) f++, c.b += " ";
c.b = -1 != e ? c.b + (null == e ? K.substr(a, 0, null) : K.substr(a, 0, e)) : c.b + (null == a ? "null" : "" + a)
}
};
gb.pad = function (a, b, c, d) {
b -= a.length;
if (1 > b) return a;
if (30 < b) {
var e = 0 == c ? "0" : " ";
c = e;
var f = 0;
for (--b; f < b;) f++, c += e
} else c = gb._padChars[c + b];
return 0 < d ? a + c : c + a
};
var jh = function (a) {
this.message = a
};
k["polygonal.ds.PrintfError"] = jh;
jh.__name__ = "polygonal.ds.PrintfError";
jh.prototype = {
message: null, toString: function () {
return this.message
},
__class__: jh
};
var kp = function (a, b, c, d) {
this.flags = a;
this.pos = b;
this.width = c;
this.precision = d
};
k["polygonal.ds._Printf.FormatArgs"] = kp;
kp.__name__ = "polygonal.ds._Printf.FormatArgs";
kp.prototype = {flags: null, pos: null, width: null, precision: null, __class__: kp};
var Za = A["polygonal.ds._Printf.FormatFlag"] = {
__ename__: "polygonal.ds._Printf.FormatFlag",
__constructs__: null,
Minus: {_hx_name: "Minus", _hx_index: 0, __enum__: "polygonal.ds._Printf.FormatFlag", toString: t},
Plus: {
_hx_name: "Plus", _hx_index: 1, __enum__: "polygonal.ds._Printf.FormatFlag",
toString: t
},
Space: {_hx_name: "Space", _hx_index: 2, __enum__: "polygonal.ds._Printf.FormatFlag", toString: t},
Sharp: {_hx_name: "Sharp", _hx_index: 3, __enum__: "polygonal.ds._Printf.FormatFlag", toString: t},
Zero: {_hx_name: "Zero", _hx_index: 4, __enum__: "polygonal.ds._Printf.FormatFlag", toString: t},
LengthH: {_hx_name: "LengthH", _hx_index: 5, __enum__: "polygonal.ds._Printf.FormatFlag", toString: t},
LengthUpperCaseL: {
_hx_name: "LengthUpperCaseL",
_hx_index: 6,
__enum__: "polygonal.ds._Printf.FormatFlag",
toString: t
},
LengthLowerCaseL: {
_hx_name: "LengthLowerCaseL",
_hx_index: 7, __enum__: "polygonal.ds._Printf.FormatFlag", toString: t
},
UpperCase: {
_hx_name: "UpperCase",
_hx_index: 8,
__enum__: "polygonal.ds._Printf.FormatFlag",
toString: t
}
};
Za.__constructs__ = [Za.Minus, Za.Plus, Za.Space, Za.Sharp, Za.Zero, Za.LengthH, Za.LengthUpperCaseL, Za.LengthLowerCaseL, Za.UpperCase];
var Ng = A["polygonal.ds._Printf.FormatToken"] = {
__ename__: "polygonal.ds._Printf.FormatToken", __constructs__: null, Raw: (x = function (a) {
return {_hx_index: 0, string: a, __enum__: "polygonal.ds._Printf.FormatToken", toString: t}
},
x._hx_name = "Raw", x.__params__ = ["string"], x), Tag: (x = function (a, b) {
return {_hx_index: 1, type: a, args: b, __enum__: "polygonal.ds._Printf.FormatToken", toString: t}
}, x._hx_name = "Tag", x.__params__ = ["type", "args"], x), Property: (x = function (a) {
return {_hx_index: 2, name: a, __enum__: "polygonal.ds._Printf.FormatToken", toString: t}
}, x._hx_name = "Property", x.__params__ = ["name"], x), Unknown: (x = function (a, b) {
return {_hx_index: 3, string: a, pos: b, __enum__: "polygonal.ds._Printf.FormatToken", toString: t}
}, x._hx_name = "Unknown", x.__params__ =
["string", "pos"], x)
};
Ng.__constructs__ = [Ng.Raw, Ng.Tag, Ng.Property, Ng.Unknown];
var we = A["polygonal.ds._Printf.FormatDataType"] = {
__ename__: "polygonal.ds._Printf.FormatDataType",
__constructs__: null,
FmtInt: (x = function (a) {
return {_hx_index: 0, type: a, __enum__: "polygonal.ds._Printf.FormatDataType", toString: t}
}, x._hx_name = "FmtInt", x.__params__ = ["type"], x),
FmtFloat: (x = function (a) {
return {_hx_index: 1, floatType: a, __enum__: "polygonal.ds._Printf.FormatDataType", toString: t}
}, x._hx_name = "FmtFloat", x.__params__ = ["floatType"],
x),
FmtString: {
_hx_name: "FmtString",
_hx_index: 2,
__enum__: "polygonal.ds._Printf.FormatDataType",
toString: t
},
FmtPointer: {
_hx_name: "FmtPointer",
_hx_index: 3,
__enum__: "polygonal.ds._Printf.FormatDataType",
toString: t
},
FmtNothing: {
_hx_name: "FmtNothing",
_hx_index: 4,
__enum__: "polygonal.ds._Printf.FormatDataType",
toString: t
}
};
we.__constructs__ = [we.FmtInt, we.FmtFloat, we.FmtString, we.FmtPointer, we.FmtNothing];
var Ef = A["polygonal.ds._Printf.IntType"] = {
__ename__: "polygonal.ds._Printf.IntType",
__constructs__: null,
ICharacter: {
_hx_name: "ICharacter",
_hx_index: 0,
__enum__: "polygonal.ds._Printf.IntType",
toString: t
},
ISignedDecimal: {
_hx_name: "ISignedDecimal",
_hx_index: 1,
__enum__: "polygonal.ds._Printf.IntType",
toString: t
},
IUnsignedDecimal: {
_hx_name: "IUnsignedDecimal",
_hx_index: 2,
__enum__: "polygonal.ds._Printf.IntType",
toString: t
},
IOctal: {_hx_name: "IOctal", _hx_index: 3, __enum__: "polygonal.ds._Printf.IntType", toString: t},
IHex: {_hx_name: "IHex", _hx_index: 4, __enum__: "polygonal.ds._Printf.IntType", toString: t},
IBin: {
_hx_name: "IBin",
_hx_index: 5, __enum__: "polygonal.ds._Printf.IntType", toString: t
}
};
Ef.__constructs__ = [Ef.ICharacter, Ef.ISignedDecimal, Ef.IUnsignedDecimal, Ef.IOctal, Ef.IHex, Ef.IBin];
var mi = A["polygonal.ds._Printf.FloatType"] = {
__ename__: "polygonal.ds._Printf.FloatType",
__constructs__: null,
FNormal: {_hx_name: "FNormal", _hx_index: 0, __enum__: "polygonal.ds._Printf.FloatType", toString: t},
FScientific: {
_hx_name: "FScientific",
_hx_index: 1,
__enum__: "polygonal.ds._Printf.FloatType",
toString: t
},
FNatural: {
_hx_name: "FNatural", _hx_index: 2,
__enum__: "polygonal.ds._Printf.FloatType", toString: t
}
};
mi.__constructs__ = [mi.FNormal, mi.FScientific, mi.FNatural];
var Zd = function () {
};
k["polygonal.ds.tools.ArrayTools"] = Zd;
Zd.__name__ = "polygonal.ds.tools.ArrayTools";
Zd.alloc = function (a) {
Ea._assert(0 <= a, "len >= 0", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 37,
className: "polygonal.ds.tools.ArrayTools",
methodName: "alloc"
});
return Array(a)
};
Zd.trim = function (a,
b) {
a.length > b && (a.length = b);
return a
};
Zd.swap = function (a, b, c) {
Ea._assert(null != a, "array != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 94,
className: "polygonal.ds.tools.ArrayTools",
methodName: "swap"
});
Ea._assert(0 <= b && b < a.length, "0 <= a && a < array.length", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 95,
className: "polygonal.ds.tools.ArrayTools",
methodName: "swap"
});
Ea._assert(0 <= c && c < a.length, "0 <= b && b < array.length", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 96,
className: "polygonal.ds.tools.ArrayTools",
methodName: "swap"
});
if (b != c) {
var d = a[b];
a[b] = a[c];
a[c] = d
}
};
Zd.getFront = function (a, b) {
Ea._assert(null != a, "array != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 113, className: "polygonal.ds.tools.ArrayTools", methodName: "getFront"
});
Ea._assert(0 <= b && b < a.length, "0 <= index && index < array.length", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 114,
className: "polygonal.ds.tools.ArrayTools",
methodName: "getFront"
});
Ea._assert(null != a, "array != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 94, className: "polygonal.ds.tools.ArrayTools", methodName: "swap"
});
Ea._assert(0 <= b && b < a.length, "0 <= a && a < array.length", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 95,
className: "polygonal.ds.tools.ArrayTools",
methodName: "swap"
});
Ea._assert(0 < a.length, "0 <= b && b < array.length", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 96, className: "polygonal.ds.tools.ArrayTools", methodName: "swap"
});
if (0 != b) {
var c = a[b];
a[b] = a[0];
a[0] = c
}
return a[0]
};
Zd.init = function (a, b, c, d) {
null == d && (d = 0);
null == c && (c = 0);
d = 0 >= d ? a.length : c + d;
Ea._assert(0 <= c && c < a.length, "min >= 0 && min < a.length", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 129,
className: "polygonal.ds.tools.ArrayTools",
methodName: "init"
});
for (Ea._assert(d <= a.length, "max <= a.length",
{
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 130,
className: "polygonal.ds.tools.ArrayTools",
methodName: "init"
}); c < d;) a[c++] = b;
return a
};
Zd.blit = function (a, b, c, d, e) {
if (0 < e) if (Ea._assert(b < a.length, "srcPos out of range(srcPos < src.length)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 145,
className: "polygonal.ds.tools.ArrayTools",
methodName: "blit"
}), Ea._assert(d < c.length, "dstPos out of range(dstPos < dst.length)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 146,
className: "polygonal.ds.tools.ArrayTools",
methodName: "blit"
}), Ea._assert(b + e <= a.length && d + e <= c.length, "n out of range(srcPos + n <= src.length && dstPos + n <= dst.length)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 147, className: "polygonal.ds.tools.ArrayTools", methodName: "blit"
}), a == c) if (b < d) {
var f = b + e;
b = d + e;
for (var h = 0; h < e;) h++, --f, --b, a[b] = a[f]
} else {
if (b > d) for (f = b, b = d, h = 0; h < e;) h++, a[b] = a[f], ++f, ++b
} else if (0 == b && 0 == d) for (h = 0; h < e;) f = h++, c[f] = a[f]; else if (0 == b) for (h = 0; h < e;) f = h++, c[d + f] = a[f]; else if (0 == d) for (h = 0; h < e;) f = h++, c[f] = a[b + f]; else for (h = 0; h < e;) f = h++, c[d + f] = a[b + f]
};
Zd.iter = function (a, b, c) {
null == c && (c = 0);
0 == c && (c = a.length);
for (var d = 0; d < c;) {
var e = d++;
b(a[e])
}
};
Zd.forEach = function (a, b) {
for (var c =
0, d = a.length; c < d;) {
var e = c++;
a[e] = b(a[e], e)
}
};
Zd.binarySearchCmp = function (a, b, c, d, e) {
Ea._assert(null != a, "a != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 236,
className: "polygonal.ds.tools.ArrayTools",
methodName: "binarySearchCmp"
});
Ea._assert(null != e, "comparator != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 237,
className: "polygonal.ds.tools.ArrayTools",
methodName: "binarySearchCmp"
});
Ea._assert(0 <= c && c < a.length, "min >= 0 && min < a.length", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 238,
className: "polygonal.ds.tools.ArrayTools",
methodName: "binarySearchCmp"
});
Ea._assert(d < a.length, "max < a.length", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 239, className: "polygonal.ds.tools.ArrayTools", methodName: "binarySearchCmp"
});
for (var f, h = d + 1; c < h;) f = c + (h - c >> 1), 0 > e(a[f], b) ? c = f + 1 : h = f;
return c <= d && 0 == e(a[c], b) ? c : ~c
};
Zd.binarySearchf = function (a, b, c, d) {
Ea._assert(null != a, "a != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 265,
className: "polygonal.ds.tools.ArrayTools",
methodName: "binarySearchf"
});
Ea._assert(0 <= c && c < a.length, "min >= 0 && min < a.length",
{
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 266,
className: "polygonal.ds.tools.ArrayTools",
methodName: "binarySearchf"
});
Ea._assert(d < a.length, "max < a.length", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 267,
className: "polygonal.ds.tools.ArrayTools",
methodName: "binarySearchf"
});
for (var e, f = d + 1; c < f;) e = c + (f - c >> 1),
a[e] < b ? c = e + 1 : f = e;
return c <= d && a[c] == b ? c : ~c
};
Zd.binarySearchi = function (a, b, c, d) {
Ea._assert(null != a, "a != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 293,
className: "polygonal.ds.tools.ArrayTools",
methodName: "binarySearchi"
});
Ea._assert(0 <= c && c < a.length, "min >= 0 && min < a.length", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 294, className: "polygonal.ds.tools.ArrayTools", methodName: "binarySearchi"
});
Ea._assert(d < a.length, "max < a.length", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 295,
className: "polygonal.ds.tools.ArrayTools",
methodName: "binarySearchi"
});
for (var e, f = d + 1; c < f;) e = c + (f - c >> 1), a[e] < b ? c = e + 1 : f = e;
return c <= d && a[c] == b ? c : ~c
};
Zd.shuffle = function (a, b) {
Ea._assert(null != a, "a != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 320, className: "polygonal.ds.tools.ArrayTools", methodName: "shuffle"
});
var c = a.length;
if (null == b) for (; 1 < --c;) {
var d = ni.f() * c | 0, e = a[c];
a[c] = a[d];
a[d] = e
} else {
Ea._assert(b.length >= a.length, "insufficient random values(rvals.length >= a.length)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 335,
className: "polygonal.ds.tools.ArrayTools",
methodName: "shuffle"
});
for (var f = 0; 1 < --c;) d = b[f++] * c | 0, e = a[c], a[c] =
a[d], a[d] = e
}
};
Zd.random = function (a) {
var b = a.length;
return 2 > b ? a[0] : a[ni.f() * b | 0]
};
Zd.sortRange = function (a, b, c, d, e) {
var f = a.length;
if (1 < f) if (Ea._assert(0 <= d && d <= f - 1 && d + e <= f, "first out of range(first >= 0 && first <= k - 1 && first + n <= k)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 370,
className: "polygonal.ds.tools.ArrayTools",
methodName: "sortRange"
}), Ea._assert(0 <= e && e <= f, "n out of range(n >= 0 && n <= k)",
{
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 371,
className: "polygonal.ds.tools.ArrayTools",
methodName: "sortRange"
}), c) for (c = d + 1, e = d + e; c < e;) {
var h = c++;
for (f = a[h]; h > d;) {
var l = a[h - 1];
if (0 < b(l, f)) a[h] = l, --h; else break
}
a[h] = f
} else Zd._quickSort(a, d, e, b)
};
Zd.quickPerm = function (a) {
for (var b = [], c = [], d = [], e, f, h = 0; h < a;) c[h] = h + 1, d[h] = 0, ++h;
b.push(c.slice());
for (h = 1; h < a;) d[h] < h ? (e = h % 2 * d[h], f = c[e], c[e] = c[h], c[h] = f, b.push(c.slice()),
d[h]++, h = 1) : (d[h] = 0, ++h);
return b
};
Zd.equals = function (a, b, c) {
if (a.length != b.length) return !1;
for (var d = 0, e = a.length; d < e;) {
if (!c(a[d], b[d])) return !1;
++d
}
return !0
};
Zd.split = function (a, b, c) {
Ea._assert(0 == b % c, "n is not a multiple of k(n % k == 0)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 464,
className: "polygonal.ds.tools.ArrayTools",
methodName: "split"
});
for (var d = [], e = null, f = 0; f < b;) {
var h = f++;
0 == h % c && (e = [],
d[h / c | 0] = e);
e.push(a[h])
}
return d
};
Zd.pairwise = function (a, b, c) {
var d = 0;
for (Ea._assert(0 == (c & 1), "max & 1 == 0", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 489,
className: "polygonal.ds.tools.ArrayTools",
methodName: "pairwise"
}); d < c;) b(d, a[d], a[d + 1]), d += 2
};
Zd.bruteforce = function (a, b) {
for (var c = 0, d, e = a.length, f = e - 1, h; c < f;) {
h = a[c];
for (d = c + 1; d < e;) b(h, a[d]), ++d;
++c
}
};
Zd._quickSort = function (a, b, c, d) {
var e = b + c - 1, f =
b, h = e;
if (1 < c) {
var l = b + (c >> 1);
c = b + c - 1;
var p = a[b], m = a[l], k = a[c], n = d(p, k);
l = 0 > n && 0 > d(p, m) ? 0 > d(m, k) ? l : c : 0 > d(m, p) && 0 > d(m, k) ? 0 > n ? b : c : 0 > d(k, p) ? l : b;
c = a[l];
for (a[l] = a[b]; f < h;) {
for (; 0 > d(c, a[h]) && f < h;) --h;
h != f && (a[f] = a[h], ++f);
for (; 0 < d(c, a[f]) && f < h;) ++f;
h != f && (a[h] = a[f], --h)
}
a[f] = c;
Zd._quickSort(a, b, f - b, d);
Zd._quickSort(a, f + 1, e - f, d)
}
};
var Ea = function () {
};
k["polygonal.ds.tools.Assert"] = Ea;
Ea.__name__ = "polygonal.ds.tools.Assert";
Ea._assert = function (a, b, c) {
if (!a) throw a = "in file " + c.fileName + ", line " + c.lineNumber,
Error("Assertion failed" + (null != b ? ": " : " ") + (null == b ? a : "" + b + " (" + a + ")"));
};
var Kg = function () {
};
k["polygonal.ds.tools.GrowthRate"] = Kg;
Kg.__name__ = "polygonal.ds.tools.GrowthRate";
Kg.compute = function (a, b) {
Ea._assert(-3 <= a, "invalid growth rate(rate >= -3)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/GrowthRate.hx",
lineNumber: 52,
className: "polygonal.ds.tools.GrowthRate",
methodName: "compute"
});
if (0 < a) b += a; else switch (a) {
case -3:
b <<= 1;
break;
case -2:
b = (3 * b >> 1) + 1;
break;
case -1:
a = b + 1;
b = (a >> 3) + (9 > a ? 3 : 6) + a;
break;
case 0:
throw I.thrown("out of space");
}
return b
};
var Pb = function () {
};
k["polygonal.ds.tools.NativeArrayTools"] = Pb;
Pb.__name__ = "polygonal.ds.tools.NativeArrayTools";
Pb.alloc = function (a) {
return Array(a)
};
Pb.get = function (a, b) {
return a[b]
};
Pb.set = function (a, b, c) {
a[b] = c
};
Pb.size = function (a) {
return a.length
};
Pb.toArray = function (a, b, c, d) {
Ea._assert(0 <= b && b < a.length, "first index out of range(first >= 0 && first < size(src))", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 140, className: "polygonal.ds.tools.NativeArrayTools", methodName: "toArray"
});
Ea._assert(0 <= c && b + c <= a.length, "len out of range(len >= 0 && first + len <= size(src))", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 141,
className: "polygonal.ds.tools.NativeArrayTools",
methodName: "toArray"
});
if (0 == c) return [];
Ea._assert(0 <= c, "len >= 0", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/ArrayTools.hx",
lineNumber: 37, className: "polygonal.ds.tools.ArrayTools", methodName: "alloc"
});
d = Array(c);
if (0 == b) for (var e = 0; e < c;) {
var f = e++;
d[f] = a[f]
} else for (e = b, c = b + c; e < c;) f = e++, d[f - b] = a[f];
return d
};
Pb.ofArray = function (a) {
return a.slice(0, a.length)
};
Pb.blit = function (a, b, c, d, e) {
if (0 < e) if (Ea._assert(b < a.length, "srcPos out of range(srcPos < size(src))", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 197,
className: "polygonal.ds.tools.NativeArrayTools",
methodName: "blit"
}), Ea._assert(d < c.length, "dstPos out of range(dstPos < size(dst))", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 198,
className: "polygonal.ds.tools.NativeArrayTools",
methodName: "blit"
}), Ea._assert(b + e <= a.length && d + e <= c.length, "n out of range(srcPos + n <= size(src) && dstPos + n <= size(dst))", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 199, className: "polygonal.ds.tools.NativeArrayTools", methodName: "blit"
}), a == c) if (b < d) {
var f = b + e;
b = d + e;
for (var h = 0; h < e;) h++, --f, --b, a[b] = a[f]
} else {
if (b > d) for (f = b, b = d, h = 0; h < e;) h++, a[b] = a[f], ++f, ++b
} else if (0 == b && 0 == d) for (h = 0; h < e;) f = h++, c[f] = a[f]; else if (0 == b) for (h = 0; h < e;) f = h++, c[d + f] = a[f]; else if (0 == d) for (h = 0; h < e;) f = h++, c[f] = a[b + f]; else for (h = 0; h < e;) f = h++, c[d + f] = a[b + f]
};
Pb.copy = function (a) {
return a.slice(0)
};
Pb.zero = function (a, b, c) {
null == c && (c = 0);
null == b && (b = 0);
c = 0 >= c ? a.length : b + c;
Ea._assert(0 <=
b && b < a.length, "min >= 0 && min < size(dst)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 293,
className: "polygonal.ds.tools.NativeArrayTools",
methodName: "zero"
});
for (Ea._assert(c <= a.length, "max <= size(dst)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 294,
className: "polygonal.ds.tools.NativeArrayTools",
methodName: "zero"
}); b < c;) a[b++] = 0;
return a
};
Pb.init = function (a, b, c, d) {
null == d && (d = 0);
null == c && (c = 0);
d = 0 >= d ? a.length : c + d;
Ea._assert(0 <= c && c < a.length, "min >= 0 && min < size(a)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 315,
className: "polygonal.ds.tools.NativeArrayTools",
methodName: "init"
});
for (Ea._assert(d <= a.length, "max <= size(a)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 316, className: "polygonal.ds.tools.NativeArrayTools", methodName: "init"
}); c < d;) a[c++] = b;
return a
};
Pb.nullify = function (a, b, c) {
null == c && (c = 0);
null == b && (b = 0);
c = 0 >= c ? a.length : b + c;
Ea._assert(0 <= b && b < a.length, "min >= 0 && min < size(a)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 331,
className: "polygonal.ds.tools.NativeArrayTools",
methodName: "nullify"
});
for (Ea._assert(c <= a.length, "max <= size(a)",
{
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 332,
className: "polygonal.ds.tools.NativeArrayTools",
methodName: "nullify"
}); b < c;) a[b++] = null;
return a
};
Pb.binarySearchCmp = function (a, b, c, d, e) {
Ea._assert(null != a, "a != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 351,
className: "polygonal.ds.tools.NativeArrayTools",
methodName: "binarySearchCmp"
});
Ea._assert(null != e, "cmp != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 352,
className: "polygonal.ds.tools.NativeArrayTools",
methodName: "binarySearchCmp"
});
Ea._assert(0 <= c && c < a.length, "min >= 0 && min < size(a)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 353,
className: "polygonal.ds.tools.NativeArrayTools",
methodName: "binarySearchCmp"
});
Ea._assert(d < a.length, "max < size(a)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 354,
className: "polygonal.ds.tools.NativeArrayTools",
methodName: "binarySearchCmp"
});
for (var f, h = d + 1; c < h;) f = c + (h - c >> 1), 0 > e(a[f], b) ? c = f + 1 : h = f;
return c <= d && 0 == e(a[c], b) ? c : ~c
};
Pb.binarySearchf = function (a, b, c, d) {
Ea._assert(null != a, "a != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 379, className: "polygonal.ds.tools.NativeArrayTools", methodName: "binarySearchf"
});
Ea._assert(0 <= c && c < a.length, "min >= 0 && min < size(a)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 380,
className: "polygonal.ds.tools.NativeArrayTools",
methodName: "binarySearchf"
});
Ea._assert(d < a.length, "max < size(a)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 381, className: "polygonal.ds.tools.NativeArrayTools", methodName: "binarySearchf"
});
for (var e, f = d + 1; c < f;) e = c + (f - c >> 1), a[e] < b ? c = e + 1 : f = e;
return c <= d && a[c] == b ? c : ~c
};
Pb.binarySearchi = function (a, b, c, d) {
Ea._assert(null != a, "a != null", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 406,
className: "polygonal.ds.tools.NativeArrayTools",
methodName: "binarySearchi"
});
Ea._assert(0 <= c && c < a.length, "min >= 0 && min < size(a)",
{
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 407,
className: "polygonal.ds.tools.NativeArrayTools",
methodName: "binarySearchi"
});
Ea._assert(d < a.length, "max < size(a)", {
fileName: "C:/Users/Vasile/AppData/Local/Stencyl/libs/haxelib/Stencyl/ds/2.1.1-1d23c8a6f8/src/polygonal/ds/tools/NativeArrayTools.hx",
lineNumber: 408,
className: "polygonal.ds.tools.NativeArrayTools",
methodName: "binarySearchi"
});
for (var e, f =
d + 1; c < f;) e = c + (f - c >> 1), a[e] < b ? c = e + 1 : f = e;
return c <= d && a[c] == b ? c : ~c
};
var ni = function () {
};
k["polygonal.ds.tools.Shuffle"] = ni;
ni.__name__ = "polygonal.ds.tools.Shuffle";
ni.f = function () {
return Math.random()
};
ni.setRandom = function (a) {
ni.f = a
};
ni.frand = function () {
return ni.f()
};
var lp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.My_Boss = "_MyBoss";
this.nameMap.h.Activated = "_Activated";
this._Activated = !1;
this.nameMap.h.Death_Delay_Timer = "_DeathDelayTimer";
this._DeathDelayTimer = 0
};
k["scripts.ActorEvents_101"] =
lp;
lp.__name__ = "scripts.ActorEvents_101";
lp.__super__ = P;
lp.prototype = u(P.prototype, {
_MyBoss: null, _Activated: null, _DeathDelayTimer: null, _event_SetupMyBoss: function (a) {
if (this.wrapper.enabled) {
var b = f.getActorGroup(8);
var c = a.otherActor.getType(), d = a.otherActor.getGroup();
b = b == c || b == d
} else b = !1;
b && (b = this._MyBoss, f.isPrimitive(b) || ("string" == typeof b ? "" != w.__cast(b, String) : null != b) || this._Activated || (this._Activated = !0, this._MyBoss = a.otherActor))
}, _event_Updating: function (a) {
var b = this;
this.wrapper.enabled &&
(this._Activated && !this._MyBoss.isAlive() && (this._Activated = !1, f.runLater(1E3 * this._DeathDelayTimer, function (a) {
b.actor.shout("_customEvent_die")
}, this.actor)), "1" == this.actor.getAnimation() && 3 == this.actor.getCurrentFrame() && f.recycleActor(this.actor))
}, init: function () {
var a = this, b = h.engine, c = h.engine.getGameAttribute("Enemies_Live") - 1;
b.gameAttributes.h.Enemies_Live = c;
f.runPeriodically(500, function (b) {
a._DeathDelayTimer += .1
}, this.actor);
f.runLater(1750, function (b) {
a.actor.setAnimation("1")
}, this.actor);
this.addListener(this.actor.whenCollided, q(this, this._event_SetupMyBoss));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
}, forwardMessage: function (a) {
}, __class__: lp
});
var mp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Hero = "_Hero";
this.nameMap.h.Max_Speed = "_MaxSpeed";
this._MaxSpeed = 0;
this.nameMap.h.Activated = "_Activated";
this._Activated = !1;
this.nameMap.h.Current_Direction = "_CurrentDirection";
this._CurrentDirection = "";
this.nameMap.h.Facing = "_Facing";
this._Facing = "";
this.nameMap.h.Speed_X =
"_SpeedX";
this._SpeedX = 0;
this.nameMap.h.Speed_Y = "_SpeedY";
this._SpeedY = 0;
this.nameMap.h.Pos_X = "_PosX";
this._PosX = 0;
this.nameMap.h.Pos_Y = "_PosY";
this._PosY = 0;
this.nameMap.h.Firing = "_Firing";
this._Firing = !1;
this.nameMap.h.Stopped_To_Fire = "_StoppedToFire";
this._StoppedToFire = !1;
this.nameMap.h.Limit_Bottom = "_LimitBottom";
this._LimitBottom = 0;
this.nameMap.h.Limit_Left = "_LimitLeft";
this._LimitLeft = 0;
this.nameMap.h.Limit_Right = "_LimitRight";
this._LimitRight = 0;
this.nameMap.h.Limit_Top = "_LimitTop";
this._LimitTop =
0
};
k["scripts.ActorEvents_103"] = mp;
mp.__name__ = "scripts.ActorEvents_103";
mp.__super__ = P;
mp.prototype = u(P.prototype, {
_Hero: null,
_MaxSpeed: null,
_Activated: null,
_CurrentDirection: null,
_Facing: null,
_SpeedX: null,
_SpeedY: null,
_PosX: null,
_PosY: null,
_Firing: null,
_StoppedToFire: null,
_LimitBottom: null,
_LimitLeft: null,
_LimitRight: null,
_LimitTop: null,
_event_Updating: function (a) {
var b = this;
this.wrapper.enabled && (!this._Activated && ("Up" == this._Facing && this.actor.push(0, 1, 10), "Down" == this._Facing && this.actor.push(0,
-1, 10), this.actor.getY() <= this._LimitTop || this.actor.getY() >= this._LimitBottom) && (this._Activated = !0), this._Activated && (a = this._Hero, (f.isPrimitive(a) || ("string" == typeof a ? "" != w.__cast(a, String) : null != a)) && this._Hero.isAlive() && this.actor.getX() > this._LimitLeft && this.actor.getX() < this._LimitRight && 2 > Math.abs(this.actor.getXCenter() - this._Hero.getXCenter()) && !this._Firing && (this._StoppedToFire = this._Firing = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.setAnimation(this._Facing +
"_B"), f.runLater(100, function (a) {
"Down" == b._Facing ? (f.createRecycledActor(f.getActorType(105), b.actor.getX() + 2, b.actor.getY() + 2, 0), f.getLastCreatedActor().setVelocity(90, 5), f.createRecycledActor(f.getActorType(67), b.actor.getX() - 4, b.actor.getY(), 0), f.getLastCreatedActor().shout("_customEvent_splosion_bullet")) : "Up" == b._Facing && (f.createRecycledActor(f.getActorType(105), b.actor.getX() + 2, b.actor.getY() + 2, 0), f.getLastCreatedActor().setVelocity(-90, 5), f.createRecycledActor(f.getActorType(67), b.actor.getX() -
6, b.actor.getY() - 8, 0), f.getLastCreatedActor().shout("_customEvent_splosion_bullet"));
f.playSoundOnChannel(f.getSound(136), h.engine.getGameAttribute("Sound_Channel") | 0);
a = h.engine;
var c = h.engine.getGameAttribute("Sound_Channel") + 1;
a.gameAttributes.h.Sound_Channel = c;
b._StoppedToFire = !1
}, this.actor), f.runLater(1E3, function (a) {
b.actor.setAnimation(b._Facing + "_A");
b._Firing = !1
}, this.actor)), this.actor.getX() <= this._LimitLeft && "Up" == this._Facing && (this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.setX(this._LimitLeft),
this._Facing = "Right"), this.actor.getX() >= this._LimitRight && "Down" == this._Facing && (this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.setX(this._LimitRight), this._Facing = "Left"), this.actor.getY() <= this._LimitTop && "Right" == this._Facing && (this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.setY(this._LimitTop), this._Facing = "Down"), this.actor.getY() >= this._LimitBottom && "Left" == this._Facing && (this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.setY(this._LimitBottom),
this._Facing = "Up"), this.actor.setAnimation(this._Facing + "_A"), this._StoppedToFire || ("Up" == this._Facing && (this.actor.getY() != this._LimitBottom && (this.actor.setY(this._LimitBottom), this.actor.setYVelocity(0)), this.actor.push(-1, 0, 6)), "Down" == this._Facing && (this.actor.getY() != this._LimitTop && (this.actor.setY(this._LimitTop), this.actor.setYVelocity(0)), this.actor.push(1, 0, 6)), "Left" == this._Facing && (this.actor.getX() != this._LimitRight && (this.actor.setX(this._LimitRight), this.actor.setXVelocity(0)), this.actor.push(0,
1, 6)), "Right" == this._Facing && (this.actor.getX() != this._LimitLeft && (this.actor.setX(this._LimitLeft), this.actor.setXVelocity(0)), this.actor.push(0, -1, 6))), this.actor.getXVelocity() > this._MaxSpeed && this.actor.setXVelocity(this._MaxSpeed), this.actor.getYVelocity() > this._MaxSpeed && this.actor.setYVelocity(this._MaxSpeed), this.actor.getXVelocity() < -this._MaxSpeed && this.actor.setXVelocity(-this._MaxSpeed), this.actor.getYVelocity() < -this._MaxSpeed && this.actor.setYVelocity(-this._MaxSpeed)))
},
init: function () {
var a =
this;
this._LimitTop = 32;
this._LimitBottom = 211;
this._LimitLeft = 38;
this._LimitRight = 378;
for (var b = 0, c = f.getActorsOfType(f.getActorType(18)); b < c.length;) {
var d = c[b];
++b;
null == d || d.dead || d.recycled || (this._Hero = d)
}
this._MaxSpeed = 6;
this.actor.getY() <= f.getScreenHeight() / 2 ? this._Facing = "Down" : this.actor.getY() >= f.getScreenHeight() / 2 && (this._Facing = "Up");
this.actor.setAnimation(this._Facing + "_A");
f.runLater(2E3, function (b) {
a._Activated = !0
}, this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
},
forwardMessage: function (a) {
},
__class__: mp
});
var np = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Hit = "_Hit";
this._Hit = !1
};
k["scripts.ActorEvents_105"] = np;
np.__name__ = "scripts.ActorEvents_105";
np.__super__ = P;
np.prototype = u(P.prototype, {
_Hit: null, _event_HitsTile: function (a) {
if (this.wrapper.enabled) {
var b = f.getActorGroup(1);
var c = a.otherActor.getType();
a = a.otherActor.getGroup();
b = b == c || b == a
} else b = !1;
b && !this._Hit && (this._Hit = !0, this._customEvent_got_hit())
}, _customEvent_got_hit: function () {
f.createRecycledActor(f.getActorType(67),
this.actor.getX() - 8, this.actor.getY() - 8, 2);
f.getLastCreatedActor().shout("_customEvent_splosion_bullet");
f.playSoundOnChannel(f.getSound(135), h.engine.getGameAttribute("Sound_Channel") | 0);
var a = h.engine, b = h.engine.getGameAttribute("Sound_Channel") + 1;
a.gameAttributes.h.Sound_Channel = b;
a = h.engine;
b = h.engine.getGameAttribute("Enemies_Live") - 1;
a.gameAttributes.h.Enemies_Live = b;
a = h.engine;
b = h.engine.getGameAttribute("Enemies_Killed") + 1;
a.gameAttributes.h.Enemies_Killed = b;
f.recycleActor(this.actor)
}, init: function () {
var a =
this;
this.actor.setValue("Enemy_Manager", "_Activated", !0);
f.runLater(100, function (b) {
a.actor.set_alpha(1)
}, this.actor);
this.addListener(this.actor.whenCollided, q(this, this._event_HitsTile))
}, forwardMessage: function (a) {
}, __class__: np
});
var op = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Hero = "_Hero";
this.nameMap.h.Max_Speed = "_MaxSpeed";
this._MaxSpeed = 0;
this.nameMap.h.Activated = "_Activated";
this._Activated = !1;
this.nameMap.h.Current_Direction = "_CurrentDirection";
this._CurrentDirection = "";
this.nameMap.h.Facing =
"_Facing";
this._Facing = "";
this.nameMap.h.Speed_X = "_SpeedX";
this._SpeedX = 0;
this.nameMap.h.Speed_Y = "_SpeedY";
this._SpeedY = 0;
this.nameMap.h.Pos_X = "_PosX";
this._PosX = 0;
this.nameMap.h.Pos_Y = "_PosY";
this._PosY = 0;
this.nameMap.h.Firing = "_Firing";
this._Firing = !1;
this.nameMap.h.Stopped_To_Fire = "_StoppedToFire";
this._StoppedToFire = !1;
this.nameMap.h.Hit_Points = "_HitPoints";
this._HitPoints = 0;
this.nameMap.h.Limit_Top = "_LimitTop";
this._LimitTop = 0;
this.nameMap.h.Limit_Bottom = "_LimitBottom";
this._LimitBottom = 0;
this.nameMap.h.Limit_Left =
"_LimitLeft";
this._LimitLeft = 0;
this.nameMap.h.Limit_Right = "_LimitRight";
this._LimitRight = 0
};
k["scripts.ActorEvents_107"] = op;
op.__name__ = "scripts.ActorEvents_107";
op.__super__ = P;
op.prototype = u(P.prototype, {
_Hero: null,
_MaxSpeed: null,
_Activated: null,
_CurrentDirection: null,
_Facing: null,
_SpeedX: null,
_SpeedY: null,
_PosX: null,
_PosY: null,
_Firing: null,
_StoppedToFire: null,
_HitPoints: null,
_LimitTop: null,
_LimitBottom: null,
_LimitLeft: null,
_LimitRight: null,
_event_Updating: function (a) {
var b = this;
this.wrapper.enabled &&
("3" == this.actor.getAnimation() && (this._HitPoints = 3, this.actor.setAnimation(this._Facing + ("_" + this._HitPoints))), "2" == this.actor.getAnimation() && (this._HitPoints = 2, this.actor.setAnimation(this._Facing + ("_" + this._HitPoints))), "1" == this.actor.getAnimation() && (this._HitPoints = 1, this.actor.setAnimation(this._Facing + ("_" + this._HitPoints))), !this._Activated && ("Up" == this._Facing && this.actor.push(0, 1, 10), "Down" == this._Facing && this.actor.push(0, -1, 10), this.actor.getY() <= this._LimitTop || this.actor.getY() >=
this._LimitBottom) && (this._Activated = !0), this._Activated && (a = this._Hero, (f.isPrimitive(a) || ("string" == typeof a ? "" != w.__cast(a, String) : null != a)) && this._Hero.isAlive() && (this.actor.getX() > this._LimitLeft && this.actor.getX() < this._LimitRight && 2 > Math.abs(this.actor.getXCenter() - this._Hero.getXCenter()) && !this._Firing && (this._StoppedToFire = this._Firing = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0), f.runLater(100, function (a) {
"Down" == b._Facing ? (f.createRecycledActor(f.getActorType(105), b.actor.getX() +
8, b.actor.getY() + 16, 0), f.getLastCreatedActor().setVelocity(90, 5), f.createRecycledActor(f.getActorType(67), b.actor.getX() + 4, b.actor.getY() + 12, 0), f.getLastCreatedActor().shout("_customEvent_splosion_bullet")) : "Up" == b._Facing && (f.createRecycledActor(f.getActorType(105), b.actor.getX() + 8, b.actor.getY() - 8, 0), f.getLastCreatedActor().setVelocity(-90, 5), f.createRecycledActor(f.getActorType(67), b.actor.getX() + 4, b.actor.getY() - 4, 0), f.getLastCreatedActor().shout("_customEvent_splosion_bullet"));
f.playSoundOnChannel(f.getSound(136),
h.engine.getGameAttribute("Sound_Channel") | 0);
a = h.engine;
var c = h.engine.getGameAttribute("Sound_Channel") + 1;
a.gameAttributes.h.Sound_Channel = c;
b._StoppedToFire = !1
}, this.actor), f.runLater(1E3, function (a) {
b._Firing = !1
}, this.actor)), this.actor.getY() > this._LimitLeft && this.actor.getY() < this._LimitRight && 2 > Math.abs(this.actor.getYCenter() - this._Hero.getYCenter()) && !this._Firing && (this._StoppedToFire = this._Firing = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0), f.runLater(100, function (a) {
"Left" ==
b._Facing ? (f.createRecycledActor(f.getActorType(105), b.actor.getX(), b.actor.getY() + 6, 0), f.getLastCreatedActor().setVelocity(180, 5), f.createRecycledActor(f.getActorType(67), b.actor.getX(), b.actor.getY() + 4, 0), f.getLastCreatedActor().shout("_customEvent_splosion_bullet")) : "Right" == b._Facing && (f.createRecycledActor(f.getActorType(105), b.actor.getX() + 16, b.actor.getY() + 6, 0), f.getLastCreatedActor().setVelocity(0, 5), f.createRecycledActor(f.getActorType(67), b.actor.getX(), b.actor.getY() + 4, 0), f.getLastCreatedActor().shout("_customEvent_splosion_bullet"));
f.playSoundOnChannel(f.getSound(136), h.engine.getGameAttribute("Sound_Channel") | 0);
a = h.engine;
var c = h.engine.getGameAttribute("Sound_Channel") + 1;
a.gameAttributes.h.Sound_Channel = c;
b._StoppedToFire = !1
}, this.actor), f.runLater(1E3, function (a) {
b._Firing = !1
}, this.actor))), this.actor.getX() <= this._LimitLeft && "Up" == this._Facing && (this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.setX(this._LimitLeft), this._Facing = "Right"), this.actor.getX() >= this._LimitRight && "Down" == this._Facing && (this.actor.setXVelocity(0),
this.actor.setYVelocity(0), this.actor.setX(this._LimitRight), this._Facing = "Left"), this.actor.getY() <= this._LimitTop && "Right" == this._Facing && (this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.setY(this._LimitTop), this._Facing = "Down"), this.actor.getY() >= this._LimitBottom && "Left" == this._Facing && (this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.setY(this._LimitBottom), this._Facing = "Up"), this.actor.setAnimation(this._Facing + ("_" + this._HitPoints)), this._StoppedToFire || ("Up" ==
this._Facing && (this.actor.getY() != this._LimitBottom && (this.actor.setY(this._LimitBottom), this.actor.setYVelocity(0)), this.actor.push(-1, 0, 6)), "Down" == this._Facing && (this.actor.getY() != this._LimitTop && (this.actor.setY(this._LimitTop), this.actor.setYVelocity(0)), this.actor.push(1, 0, 6)), "Left" == this._Facing && (this.actor.getX() != this._LimitRight && (this.actor.setX(this._LimitRight), this.actor.setXVelocity(0)), this.actor.push(0, 1, 6)), "Right" == this._Facing && (this.actor.getX() != this._LimitLeft && (this.actor.setX(this._LimitLeft),
this.actor.setXVelocity(0)), this.actor.push(0, -1, 6))), this.actor.getXVelocity() > this._MaxSpeed && this.actor.setXVelocity(this._MaxSpeed), this.actor.getYVelocity() > this._MaxSpeed && this.actor.setYVelocity(this._MaxSpeed), this.actor.getXVelocity() < -this._MaxSpeed && this.actor.setXVelocity(-this._MaxSpeed), this.actor.getYVelocity() < -this._MaxSpeed && this.actor.setYVelocity(-this._MaxSpeed)))
},
init: function () {
for (var a = this, b = 0, c = f.getActorsOfType(f.getActorType(18)); b < c.length;) {
var d = c[b];
++b;
null == d ||
d.dead || d.recycled || (this._Hero = d)
}
this._MaxSpeed = 6;
this._HitPoints = 3;
this._LimitTop = 24;
this._LimitBottom = 200;
this._LimitLeft = 30;
this._LimitRight = 370;
this.actor.getY() <= f.getScreenHeight() / 2 ? this._Facing = "Down" : this.actor.getY() >= f.getScreenHeight() / 2 && (this._Facing = "Up");
this.actor.setAnimation(this._Facing + "_A");
f.runLater(2E3, function (b) {
a._Activated = !0
}, this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
},
forwardMessage: function (a) {
},
__class__: op
});
var pp = function (a,
b, c) {
P.call(this, b);
this.nameMap.h.Hero = "_Hero";
this.nameMap.h.Opened = "_Opened";
this._Opened = !1;
this.nameMap.h.Unlocked = "_Unlocked";
this._Unlocked = !1;
this.nameMap.h.My_Level = "_MyLevel";
this._MyLevel = 0;
this.nameMap.h.Hit_Hero = "_HitHero";
this._HitHero = !1
};
k["scripts.ActorEvents_128"] = pp;
pp.__name__ = "scripts.ActorEvents_128";
pp.__super__ = P;
pp.prototype = u(P.prototype, {
_Hero: null,
_Opened: null,
_Unlocked: null,
_MyLevel: null,
_HitHero: null,
_event_Updating: function (a) {
var b = this;
this.wrapper.enabled && (40 > Math.abs(this._Hero.getXCenter() -
this.actor.getXCenter()) && 48 > Math.abs(this._Hero.getYCenter() - this.actor.getYCenter()) && !this._Opened && this._Unlocked && (this._Opened = !0, this.actor.setAnimation("Open"), f.playSoundOnChannel(f.getSound(139), 4)), (39 < Math.abs(this._Hero.getXCenter() - this.actor.getXCenter()) || 47 < Math.abs(this._Hero.getYCenter() - this.actor.getYCenter())) && this._Opened && (this._Opened = !1, this.actor.setAnimation("6"), f.playSoundOnChannel(f.getSound(140), 5), f.runLater(100, function (a) {
f.createRecycledActor(f.getActorType(180),
b.actor.getXCenter() + f.randomInt(-2, 2), b.actor.getY() + f.randomInt(0, b.actor.getHeight() | 0), 0);
f.createRecycledActor(f.getActorType(180), b.actor.getXCenter() + f.randomInt(-2, 2), b.actor.getY() + f.randomInt(0, b.actor.getHeight() | 0), 0);
f.createRecycledActor(f.getActorType(180), b.actor.getXCenter() + f.randomInt(-2, 2), b.actor.getY() + f.randomInt(0, b.actor.getHeight() | 0), 0);
f.createRecycledActor(f.getActorType(180), b.actor.getXCenter() + f.randomInt(-2, 2), b.actor.getY() + f.randomInt(0, b.actor.getHeight() | 0), 0);
f.createRecycledActor(f.getActorType(180), b.actor.getXCenter() + f.randomInt(-2, 2), b.actor.getY() + f.randomInt(0, b.actor.getHeight() | 0), 0);
f.createRecycledActor(f.getActorType(180), b.actor.getXCenter() + f.randomInt(-2, 2), b.actor.getY() + f.randomInt(0, b.actor.getHeight() | 0), 0)
}, this.actor)))
},
_event_HitsHero: function (a) {
if (this.wrapper.enabled) {
var b = f.getActorType(18);
var c = a.otherActor.getType(), d = a.otherActor.getGroup();
b = b == c || b == d
} else b = !1;
b && !this._HitHero && this._Unlocked && (ya.sendGameplayStop(),
this._HitHero = !0, a.otherActor.disableBehavior("8 Way Movement"), a.otherActor.growTo(.5, .5, .5, Wa.linear), a.otherActor.fadeTo(0, .5, Wa.linear), a.otherActor.moveTo(this.actor.getXCenter() - 5, this.actor.getYCenter() + 24, .5, Wa.linear), f.engine.pause(), ya.commercialBreak(function () {
f.engine.unpause();
var a = zb.get().scenes.h[14].getID(), b = 204, c = 204, d = 204;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
var h = f.createFadeOut(.5, b << 16 | c << 8 | d);
d = c = b = 204;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
f.switchScene(a,
h, f.createFadeIn(.5, b << 16 | c << 8 | d));
f.playSoundOnChannel(f.getSound(143), 4)
}))
},
init: function () {
for (var a = 0, b = f.getActorsOfType(f.getActorType(18)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Hero = c)
}
this._Unlocked = !0;
this.actor.setAnimation("6");
this.actor.setCurrentFrame(2);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsHero))
},
forwardMessage: function (a) {
},
__class__: pp
});
var qp = function (a, b,
c) {
P.call(this, b);
this.nameMap.h.Moving_Left = "_MovingLeft";
this._MovingLeft = !1
};
k["scripts.ActorEvents_132"] = qp;
qp.__name__ = "scripts.ActorEvents_132";
qp.__super__ = P;
qp.prototype = u(P.prototype, {
_MovingLeft: null, _event_Updating: function (a) {
this.wrapper.enabled && (this.actor.setXVelocity(.92 * this.actor.getXVelocity()), this.actor.setYVelocity(.92 * this.actor.getYVelocity()), 0 > this.actor.getXVelocity() && !this._MovingLeft && (this._MovingLeft = !0, this.actor.growTo(-1, 1, .01, Wa.linear)))
}, init: function () {
this.addListener(this.actor.whenUpdated,
q(this, this._event_Updating))
}, forwardMessage: function (a) {
}, __class__: qp
});
var rp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Hero = "_Hero";
this.nameMap.h.Opened = "_Opened";
this._Opened = !1;
this.nameMap.h.Hit_Hero = "_HitHero";
this._HitHero = !1
};
k["scripts.ActorEvents_146"] = rp;
rp.__name__ = "scripts.ActorEvents_146";
rp.__super__ = P;
rp.prototype = u(P.prototype, {
_Hero: null, _Opened: null, _HitHero: null, _event_Updating: function (a) {
var b = this;
this.wrapper.enabled && (56 > Math.abs(this._Hero.getXCenter() - this.actor.getXCenter()) &&
64 > Math.abs(this._Hero.getYCenter() - this.actor.getYCenter()) && !this._Opened && (this._Opened = !0, this.actor.setAnimation("Open"), f.playSoundOnChannel(f.getSound(139), 4)), (55 < Math.abs(this._Hero.getXCenter() - this.actor.getXCenter()) || 63 < Math.abs(this._Hero.getYCenter() - this.actor.getYCenter())) && this._Opened && (this._Opened = !1, this.actor.setAnimation("0"), f.playSoundOnChannel(f.getSound(140), 5), f.runLater(100, function (a) {
f.createRecycledActor(f.getActorType(180), b.actor.getXCenter() + f.randomInt(-2, 2),
b.actor.getY() + f.randomInt(0, b.actor.getHeight() | 0), 0);
f.createRecycledActor(f.getActorType(180), b.actor.getXCenter() + f.randomInt(-2, 2), b.actor.getY() + f.randomInt(0, b.actor.getHeight() | 0), 0);
f.createRecycledActor(f.getActorType(180), b.actor.getXCenter() + f.randomInt(-2, 2), b.actor.getY() + f.randomInt(0, b.actor.getHeight() | 0), 0);
f.createRecycledActor(f.getActorType(180), b.actor.getXCenter() + f.randomInt(-2, 2), b.actor.getY() + f.randomInt(0, b.actor.getHeight() | 0), 0);
f.createRecycledActor(f.getActorType(180),
b.actor.getXCenter() + f.randomInt(-2, 2), b.actor.getY() + f.randomInt(0, b.actor.getHeight() | 0), 0);
f.createRecycledActor(f.getActorType(180), b.actor.getXCenter() + f.randomInt(-2, 2), b.actor.getY() + f.randomInt(0, b.actor.getHeight() | 0), 0)
}, this.actor)))
}, _event_Drawing: function (a, b, c) {
if (this.wrapper.enabled && this._Opened) {
b = f.getFont(252);
null != b && b != a.font && (a.font = b);
a.drawActor = !1;
a.actor = null;
a.x = 0;
a.y = 0;
b = this.actor.getXCenter() - a.font.getTextWidth("Tutorial") / h.SCALE / 2;
c = this.actor.getY() + 28;
null ==
a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + b * a.scaleX, c = a.y + c * a.scaleY) : (b = a.x + b * a.scaleX - h.cameraX, c = a.y + c * a.scaleY - h.cameraY) : (b = a.x + b * a.scaleX, c = a.y + c * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
var d = null, e = a.font;
e = "Tutorial:" + e.ID + ":" + a.alpha + ":" + h.SCALE + ":" + e.get_letterSpacing();
if (Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, e)) {
var g = ca.drawnStringCache.h[e];
g.lifetime = 5;
d = g.img
} else {
g =
a.font.font.getTextWidth("Tutorial", a.font.fontScale);
var l = a.font.font.getFontHeight() * a.font.fontScale | 0;
0 < g && 0 < l && (d = new ka(g, l, !0, 0), a.font.font.renderToImg(d, "Tutorial", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), g = new vc, g.img = d, g.lifetime = 5, ca.drawnStringCache.h[e] = g, ca.drawnStringCacheKeys.push(e))
}
null != d && (a.graphics.beginBitmapFill(d, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, d.width, d.height), a.graphics.endFill())
}
}, _event_HitsHero: function (a) {
if (this.wrapper.enabled) {
var b = f.getActorType(18);
var c = a.otherActor.getType(), d = a.otherActor.getGroup();
b = b == c || b == d
} else b = !1;
b && !this._HitHero && (ya.sendGameplayStop(), this._HitHero = !0, a.otherActor.disableBehavior("8 Way Movement"), a.otherActor.growTo(.5, .5, .5, Wa.linear), a.otherActor.fadeTo(0, .5, Wa.linear), a.otherActor.moveTo(this.actor.getXCenter() - 5, this.actor.getYCenter() + 6, .5, Wa.linear), f.engine.pause(), ya.commercialBreak(function () {
f.engine.unpause();
var a = zb.get().scenes.h[17].getID(), b = 204, c = 204, d = 204;
null == d && (d = 0);
null == c && (c = 0);
null ==
b && (b = 0);
var h = f.createFadeOut(.5, b << 16 | c << 8 | d);
d = c = b = 204;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
f.switchScene(a, h, f.createFadeIn(.5, b << 16 | c << 8 | d));
f.playSoundOnChannel(f.getSound(143), 4)
}))
}, init: function () {
for (var a = 0, b = f.getActorsOfType(f.getActorType(18)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Hero = c)
}
this.actor.setCurrentFrame(1);
this.actor.moveToBottom();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenDrawing,
q(this, this._event_Drawing));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsHero))
}, forwardMessage: function (a) {
}, __class__: rp
});
var sp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Animation_1 = "_Animation1";
this._Animation1 = "";
this.nameMap.h.Img = "_Img";
this.nameMap.h.Get_Pixel = "_GetPixel";
this.nameMap.h.xSpawn = "_xSpawn";
this._xSpawn = 0;
this.nameMap.h.ySpawn = "_ySpawn";
this._ySpawn = 0;
this.nameMap.h.Animation_2 = "_Animation2";
this._Animation2 = "";
this.nameMap.h.Enemy_Chooser = "_EnemyChooser";
this._EnemyChooser = 0;
this.nameMap.h.Spawn_Delay = "_SpawnDelay";
this._SpawnDelay = 0
};
k["scripts.ActorEvents_150"] = sp;
sp.__name__ = "scripts.ActorEvents_150";
sp.__super__ = P;
sp.prototype = u(P.prototype, {
_Animation1: null,
_Img: null,
_GetPixel: null,
_xSpawn: null,
_ySpawn: null,
_Animation2: null,
_EnemyChooser: null,
_SpawnDelay: null,
_customEvent_spawn_bosses: function () {
var a = this;
0 == h.engine.getGameAttribute("Score") % 5 ? this._SpawnDelay = 2 : 5 >= h.engine.getGameAttribute("Score") ? this._SpawnDelay = 5 : 6 <= h.engine.getGameAttribute("Score") &&
10 >= h.engine.getGameAttribute("Score") ? this._SpawnDelay = 5.5 : 11 <= h.engine.getGameAttribute("Score") && 15 >= h.engine.getGameAttribute("Score") ? this._SpawnDelay = 6 : 16 <= h.engine.getGameAttribute("Score") && 20 >= h.engine.getGameAttribute("Score") ? this._SpawnDelay = 6.5 : 21 <= h.engine.getGameAttribute("Score") && (this._SpawnDelay = 7);
f.runLater(1E3 * this._SpawnDelay, function (b) {
5 > h.engine.getGameAttribute("Score") ? a._EnemyChooser = f.randomInt(1, 3) : a._EnemyChooser = f.randomInt(1, 6);
var c = h.engine.getGameAttribute("Score"),
d = h.engine.getGameAttribute("Big_Boss_Order").charAt(0);
c == 5 * (null == d ? 0 : "number" == typeof d ? w.__cast(d, Ka) : "number" == typeof d && (d | 0) === d ? w.__cast(d, Ia) : "boolean" == typeof d ? w.__cast(d, La) ? 1 : 0 : "string" == typeof d ? parseFloat(d) : parseFloat(z.string(d))) ? a._EnemyChooser = 1 : (c = h.engine.getGameAttribute("Score"), d = h.engine.getGameAttribute("Big_Boss_Order").charAt(1), c == 5 * (null == d ? 0 : "number" == typeof d ? w.__cast(d, Ka) : "number" == typeof d && (d | 0) === d ? w.__cast(d, Ia) : "boolean" == typeof d ? w.__cast(d, La) ? 1 : 0 : "string" ==
typeof d ? parseFloat(d) : parseFloat(z.string(d))) ? a._EnemyChooser = 2 : (c = h.engine.getGameAttribute("Score"), d = h.engine.getGameAttribute("Big_Boss_Order").charAt(2), c == 5 * (null == d ? 0 : "number" == typeof d ? w.__cast(d, Ka) : "number" == typeof d && (d | 0) === d ? w.__cast(d, Ia) : "boolean" == typeof d ? w.__cast(d, La) ? 1 : 0 : "string" == typeof d ? parseFloat(d) : parseFloat(z.string(d))) ? a._EnemyChooser = 3 : (c = h.engine.getGameAttribute("Score"), d = h.engine.getGameAttribute("Big_Boss_Order").charAt(3), c == 5 * (null == d ? 0 : "number" == typeof d ? w.__cast(d,
Ka) : "number" == typeof d && (d | 0) === d ? w.__cast(d, Ia) : "boolean" == typeof d ? w.__cast(d, La) ? 1 : 0 : "string" == typeof d ? parseFloat(d) : parseFloat(z.string(d))) && (a._EnemyChooser = 4))));
a.actor.setAnimation("" + f.randomInt(0, 5));
if (2 == a._EnemyChooser) for (; "2" == a.actor.getAnimation();) a.actor.setAnimation("" + f.randomInt(0, 5));
a._Animation1 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var e = a.actor.getWidth() | 0; b < e;) {
var g = b++;
a._xSpawn = g;
g = 0;
for (var l = a.actor.getHeight() | 0; g < l;) c = g++, a._ySpawn =
c, c = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0), a._GetPixel = "" + c, d = a._GetPixel, !f.isPrimitive(d) && ("string" == typeof d ? "" == w.__cast(d, String) : null == d) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81), a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Boss_Endless"))
}
f.setValueForScene("Scene_Manager",
"_EndlessBossesSpawned", 1);
f.runLater(2E3, function (b) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(142), f.randomInt(6, 29));
f.recycleActor(a.actor)
}, a.actor)
}, this.actor)
},
init: function () {
this.actor.disableActorDrawing()
},
forwardMessage: function (a) {
},
__class__: sp
});
var tp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Unlocked = "_Unlocked";
this._Unlocked = !1;
this.nameMap.h.Unlocked_Y = "_UnlockedY";
this._UnlockedY = 0;
this.nameMap.h.Keys_Collected = "_KeysCollected";
this._KeysCollected =
0;
this.nameMap.h.Big_Boss_Level = "_BigBossLevel";
this._BigBossLevel = !1;
this.nameMap.h.End_Level = "_EndLevel";
this._EndLevel = !1
};
k["scripts.ActorEvents_152"] = tp;
tp.__name__ = "scripts.ActorEvents_152";
tp.__super__ = P;
tp.prototype = u(P.prototype, {
_Unlocked: null,
_UnlockedY: null,
_KeysCollected: null,
_BigBossLevel: null,
_EndLevel: null,
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled && this._Unlocked && 224 > this._UnlockedY) {
a.drawActor = !1;
a.actor = null;
a.x = 0;
a.y = 0;
c = b = 255;
var d = 0;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
b = b << 16 | c << 8 | d;
a.fillColor = 0 > b ? b + 16777216 : b;
a.alpha = .3;
c = this._UnlockedY;
b = 20 * a.scaleX;
c *= a.scaleY;
d = 394 * a.scaleX;
var e = 16 * a.scaleY;
!a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY);
0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha);
a.graphics.beginFill(a.fillColor, a.alpha);
a.graphics.drawRect(a.x + b, a.y + c, d, e);
a.graphics.endFill();
a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY);
a.graphics.lineStyle()
}
},
_event_Updating: function (a) {
this.wrapper.enabled && 0 != this.actor.getZIndex() && this.actor.setZIndex(0)
},
_customEvent_key_collected: function () {
var a = this;
this._KeysCollected += 1;
if (!this._BigBossLevel && !this._EndLevel) {
var b = this.actor, c = this.actor.getAnimation();
b.setAnimation("" + ((null == c ? 0 : "number" == typeof c ? w.__cast(c, Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c, Ia) : "boolean" == typeof c ? w.__cast(c, La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c))) + 1))
}
this._BigBossLevel && ("Boss_0" ==
this.actor.getAnimation() ? this.actor.setAnimation("Boss_1") : "Boss_1" == this.actor.getAnimation() ? this.actor.setAnimation("Boss_2") : "Boss_2" == this.actor.getAnimation() ? this.actor.setAnimation("Boss_3") : "Boss_3" == this.actor.getAnimation() && this.actor.setAnimation("Boss_4"));
c = b = 255;
var d = 51;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
this.actor.setFilter([f.createTintFilter(b << 16 | c << 8 | d, 1)]);
f.runLater(200, function (b) {
a.actor.clearFilters()
}, this.actor);
if (1 == this._KeysCollected && this._EndLevel) {
ya.sendHappyTime(.1);
this.actor.setAnimation("End_1");
f.shoutToScene("_customEvent_unlocked_door");
this._customEvent_unlocked_event();
b = 0;
for (c = f.getActorsOfType(f.getActorType(18)); b < c.length;) d = c[b], ++b, null == d || d.dead || d.recycled || d.shout("_customEvent_weapon_inactive");
f.saveGame("mySave", function (a) {
})
}
if (4 == this._KeysCollected && !this._BigBossLevel) {
ya.sendHappyTime(.3);
f.shoutToScene("_customEvent_unlocked_door");
this._customEvent_unlocked_event();
b = 0;
for (c = f.getActorsOfType(f.getActorType(18)); b < c.length;) d = c[b],
++b, null == d || d.dead || d.recycled || d.shout("_customEvent_weapon_inactive");
f.saveGame("mySave", function (a) {
})
}
if (5 == this._KeysCollected && this._BigBossLevel) {
ya.sendHappyTime(.7);
f.shoutToScene("_customEvent_spawn_upgrades");
f.shoutToScene("_customEvent_unlocked_door");
this._customEvent_unlocked_event();
b = 0;
for (c = f.getActorsOfType(f.getActorType(18)); b < c.length;) d = c[b], ++b, null == d || d.dead || d.recycled || d.shout("_customEvent_weapon_inactive");
f.saveGame("mySave", function (a) {
})
}
},
_customEvent_big_boss_key_collected: function () {
var a =
this;
this._KeysCollected += 1;
if (this._BigBossLevel) for (var b = 0, c = f.getActorsOfType(f.getActorType(197)); b < c.length;) {
var d = c[b];
++b;
null == d || d.dead || d.recycled || d.setAnimation(T.replace(d.getAnimation(), "0", "1"))
}
c = b = 255;
d = 51;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
this.actor.setFilter([f.createTintFilter(b << 16 | c << 8 | d, 1)]);
f.runLater(200, function (b) {
a.actor.clearFilters()
}, this.actor);
if (4 == this._KeysCollected && !this._BigBossLevel) {
ya.sendHappyTime(.3);
f.shoutToScene("_customEvent_unlocked_door");
this._customEvent_unlocked_event();
b = 0;
for (c = f.getActorsOfType(f.getActorType(18)); b < c.length;) d = c[b], ++b, null == d || d.dead || d.recycled || d.shout("_customEvent_weapon_inactive");
f.saveGame("mySave", function (a) {
})
}
if (5 == this._KeysCollected && this._BigBossLevel) {
ya.sendHappyTime(.7);
f.shoutToScene("_customEvent_spawn_upgrades");
f.shoutToScene("_customEvent_unlocked_door");
this._customEvent_unlocked_event();
b = 0;
for (c = f.getActorsOfType(f.getActorType(18)); b < c.length;) d = c[b], ++b, null == d || d.dead || d.recycled ||
d.shout("_customEvent_weapon_inactive");
f.saveGame("mySave", function (a) {
})
}
},
_customEvent_unlocked_event: function () {
var a = this;
this._Unlocked || (this._Unlocked = !0, this._UnlockedY = 32, f.playSoundOnChannel(f.getSound(178), 5), f.runPeriodically(50, function (b) {
if (a._UnlockedY < f.getSceneHeight()) {
a._UnlockedY += 16;
b = 0;
for (var c = f.getActorsOfType(f.getActorType(154)); b < c.length;) {
var d = c[b];
++b;
null != d && !d.dead && !d.recycled && d.getY() < a._UnlockedY + 16 && (d.setAnimation("2"), 4 == h.engine.getGameAttribute("Score") ||
9 == h.engine.getGameAttribute("Score") || 14 == h.engine.getGameAttribute("Score") || 19 == h.engine.getGameAttribute("Score") || 24 == h.engine.getGameAttribute("Score")) && (f.createRecycledActor(f.getActorType(67), d.getX() + 4, d.getY() + 3, 0), f.getLastCreatedActor().say("ActorEvents_67", "_customEvent_splosion_door_skull"))
}
if (25 == h.engine.getGameAttribute("Score")) for (b = 0, c = f.getActorsOfType(f.getActorType(218)); b < c.length;) d = c[b], ++b, null == d || d.dead || d.recycled || d.getY() < a._UnlockedY + 16 && d.setAnimation("2");
b = 0;
for (c = w.__cast(f.getActorGroup(5), df).list; b < c.length;) d = c[b], ++b, null == d || d.dead || d.recycled || d.getY() < a._UnlockedY + 16 && d.shout("_customEvent_die");
b = 0;
for (c = w.__cast(f.getActorGroup(8), df).list; b < c.length;) d = c[b], ++b, null == d || d.dead || d.recycled || d.getY() < a._UnlockedY + 16 && d.shout("_customEvent_die")
}
}, this.actor))
},
init: function () {
0 == h.engine.getGameAttribute("Score") % 5 && 0 != h.engine.getGameAttribute("Score") && 25 != h.engine.getGameAttribute("Score") && (this._BigBossLevel = !0, this.actor.setAnimation("Boss_0"),
f.createRecycledActor(f.getActorType(197), this.actor.getX() + 14, this.actor.getY() + 8, 0));
25 == h.engine.getGameAttribute("Score") && (this._EndLevel = !0, this.actor.setAnimation("End_0"));
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
},
forwardMessage: function (a) {
},
__class__: tp
});
var up = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Passed_Level = "_PassedLevel";
this._PassedLevel = !1;
this.nameMap.h.Moving_To_Next_Scene =
"_MovingToNextScene";
this._MovingToNextScene = !1
};
k["scripts.ActorEvents_154"] = up;
up.__name__ = "scripts.ActorEvents_154";
up.__super__ = P;
up.prototype = u(P.prototype, {
_PassedLevel: null, _MovingToNextScene: null, _event_HitsHero: function (a) {
if (this.wrapper.enabled) {
var b = f.getActorType(18);
var c = a.otherActor.getType(), d = a.otherActor.getGroup();
b = b == c || b == d
} else b = !1;
b && this._PassedLevel && !this._MovingToNextScene && (ya.sendGameplayStop(), this._MovingToNextScene = !0, a.otherActor.disableBehavior("8 Way Movement"),
a.otherActor.growTo(.5, .5, .5, Wa.linear), a.otherActor.fadeTo(0, .5, Wa.linear), a.otherActor.moveTo(this.actor.getXCenter() - 5, this.actor.getYCenter() + 3, .5, Wa.linear), f.shoutToScene("_customEvent_entered_door"), f.playSoundOnChannel(f.getSound(143), 4))
}, _customEvent_open_door: function () {
this.actor.setAnimation("3");
f.playSoundOnChannel(f.getSound(139), 4);
f.createRecycledActor(f.getActorType(180), this.actor.getXCenter() + f.randomInt(-2, 2), this.actor.getY() + f.randomInt(0, this.actor.getHeight() | 0), 0);
f.createRecycledActor(f.getActorType(180),
this.actor.getXCenter() + f.randomInt(-2, 2), this.actor.getY() + f.randomInt(0, this.actor.getHeight() | 0), 0);
f.createRecycledActor(f.getActorType(180), this.actor.getXCenter() + f.randomInt(-2, 2), this.actor.getY() + f.randomInt(0, this.actor.getHeight() | 0), 0);
f.createRecycledActor(f.getActorType(180), this.actor.getXCenter() + f.randomInt(-2, 2), this.actor.getY() + f.randomInt(0, this.actor.getHeight() | 0), 0)
}, init: function () {
var a = this;
this.actor.setCurrentFrame(1);
this.actor.moveToBottom();
f.runLater(50, function (b) {
4 !=
h.engine.getGameAttribute("Score") && 9 != h.engine.getGameAttribute("Score") && 14 != h.engine.getGameAttribute("Score") && 19 != h.engine.getGameAttribute("Score") && 24 != h.engine.getGameAttribute("Score") || a.actor.setAnimation("Skull")
}, this.actor);
this.addListener(this.actor.whenCollided, q(this, this._event_HitsHero))
}, forwardMessage: function (a) {
}, __class__: up
});
var vp = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_156"] = vp;
vp.__name__ = "scripts.ActorEvents_156";
vp.__super__ = P;
vp.prototype = u(P.prototype,
{
init: function () {
"Title" == f.getCurrentSceneName() ? this.actor.setAnimation("7") : (5 >= h.engine.getGameAttribute("Score") && this.actor.setAnimation("1"), 6 <= h.engine.getGameAttribute("Score") && 10 >= h.engine.getGameAttribute("Score") && this.actor.setAnimation("2"), 11 <= h.engine.getGameAttribute("Score") && 15 >= h.engine.getGameAttribute("Score") && this.actor.setAnimation("3"), 16 <= h.engine.getGameAttribute("Score") && 20 >= h.engine.getGameAttribute("Score") && this.actor.setAnimation("4"), 21 <= h.engine.getGameAttribute("Score") &&
24 >= h.engine.getGameAttribute("Score") && this.actor.setAnimation("5"), 25 == h.engine.getGameAttribute("Score") && this.actor.setAnimation("6"))
}, forwardMessage: function (a) {
}, __class__: vp
});
var wp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Animation_1 = "_Animation1";
this._Animation1 = "";
this.nameMap.h.Img = "_Img";
this.nameMap.h.xSpawn = "_xSpawn";
this._xSpawn = 0;
this.nameMap.h.ySpawn = "_ySpawn";
this._ySpawn = 0;
this.nameMap.h.Get_Pixel = "_GetPixel";
this.nameMap.h["1_Offset"] = "_1Offset";
this._1Offset = 0
};
k["scripts.ActorEvents_158"] =
wp;
wp.__name__ = "scripts.ActorEvents_158";
wp.__super__ = P;
wp.prototype = u(P.prototype, {
_Animation1: null,
_Img: null,
_xSpawn: null,
_ySpawn: null,
_GetPixel: null,
_1Offset: null,
_customEvent_draw_score: function () {
if (10 > h.engine.getGameAttribute("Score")) {
this._Animation1 = "0";
this._Img = f.getImageForActor(this.actor);
for (var a = 0, b = this.actor.getWidth() | 0; a < b;) {
var c = a++;
this._xSpawn = c;
c = 0;
for (var d = this.actor.getHeight() | 0; c < d;) {
var e = c++;
this._ySpawn = e;
e = this._GetPixel = "" + f.imageGetPixel(this._Img, this._xSpawn |
0, this._ySpawn | 0);
!f.isPrimitive(e) && ("string" == typeof e ? "" == w.__cast(e, String) : null == e) || "5197647" != "" + z.string(this._GetPixel) ? (e = this._GetPixel, !f.isPrimitive(e) && ("string" == typeof e ? "" == w.__cast(e, String) : null == e) || "16777215" != "" + z.string(this._GetPixel) ? (e = this._GetPixel, !f.isPrimitive(e) && ("string" == typeof e ? "" == w.__cast(e, String) : null == e) || "7960953" != "" + z.string(this._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(161), (this._xSpawn + 8) * f.getTileWidth(), (this._ySpawn + 6) * f.getTileHeight(),
f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161", "_TileID", 2))) : (f.createRecycledActorOnLayer(f.getActorType(161), (this._xSpawn + 8) * f.getTileWidth(), (this._ySpawn + 6) * f.getTileHeight(), f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161", "_TileID", 1))) : (f.createRecycledActorOnLayer(f.getActorType(161), (this._xSpawn + 8) * f.getTileWidth(), (this._ySpawn + 6) * f.getTileHeight(), f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161", "_TileID",
0))
}
}
this.actor.setAnimation(("" + h.engine.getGameAttribute("Score")).charAt(0));
this._Animation1 = this.actor.getAnimation();
this._Img = f.getImageForActor(this.actor);
a = 0;
for (b = this.actor.getWidth() | 0; a < b;) for (this._xSpawn = c = a++, c = 0, d = this.actor.getHeight() | 0; c < d;) this._ySpawn = e = c++, e = this._GetPixel = "" + f.imageGetPixel(this._Img, this._xSpawn | 0, this._ySpawn | 0), !f.isPrimitive(e) && ("string" == typeof e ? "" == w.__cast(e, String) : null == e) || "5197647" != "" + z.string(this._GetPixel) ? (e = this._GetPixel, !f.isPrimitive(e) &&
("string" == typeof e ? "" == w.__cast(e, String) : null == e) || "16777215" != "" + z.string(this._GetPixel) ? (e = this._GetPixel, !f.isPrimitive(e) && ("string" == typeof e ? "" == w.__cast(e, String) : null == e) || "7960953" != "" + z.string(this._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(161), (this._xSpawn + 15) * f.getTileWidth(), (this._ySpawn + 6) * f.getTileHeight(), f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161", "_TileID", 2))) : (f.createRecycledActorOnLayer(f.getActorType(161), (this._xSpawn + 15) *
f.getTileWidth(), (this._ySpawn + 6) * f.getTileHeight(), f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161", "_TileID", 1))) : (f.createRecycledActorOnLayer(f.getActorType(161), (this._xSpawn + 15) * f.getTileWidth(), (this._ySpawn + 6) * f.getTileHeight(), f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161", "_TileID", 0))
} else if (10 <= h.engine.getGameAttribute("Score")) {
this.actor.setAnimation(("" + h.engine.getGameAttribute("Score")).charAt(0));
this._Animation1 = this.actor.getAnimation();
"1" == this.actor.getAnimation() ? this._1Offset = 1 : this._1Offset = 0;
this._Img = f.getImageForActor(this.actor);
a = 0;
for (b = this.actor.getWidth() | 0; a < b;) for (this._xSpawn = c = a++, c = 0, d = this.actor.getHeight() | 0; c < d;) this._ySpawn = e = c++, e = this._GetPixel = "" + f.imageGetPixel(this._Img, this._xSpawn | 0, this._ySpawn | 0), !f.isPrimitive(e) && ("string" == typeof e ? "" == w.__cast(e, String) : null == e) || "5197647" != "" + z.string(this._GetPixel) ? (e = this._GetPixel, !f.isPrimitive(e) && ("string" == typeof e ? "" == w.__cast(e, String) : null == e) || "16777215" !=
"" + z.string(this._GetPixel) ? (e = this._GetPixel, !f.isPrimitive(e) && ("string" == typeof e ? "" == w.__cast(e, String) : null == e) || "7960953" != "" + z.string(this._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(161), (this._xSpawn + 8 + this._1Offset) * f.getTileWidth(), (this._ySpawn + 6) * f.getTileHeight(), f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161", "_TileID", 2))) : (f.createRecycledActorOnLayer(f.getActorType(161), (this._xSpawn + 8 + this._1Offset) * f.getTileWidth(), (this._ySpawn + 6) * f.getTileHeight(),
f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161", "_TileID", 1))) : (f.createRecycledActorOnLayer(f.getActorType(161), (this._xSpawn + 8 + this._1Offset) * f.getTileWidth(), (this._ySpawn + 6) * f.getTileHeight(), f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161", "_TileID", 0));
this.actor.setAnimation(("" + h.engine.getGameAttribute("Score")).charAt(1));
this._Animation1 = this.actor.getAnimation();
this._Img = f.getImageForActor(this.actor);
a = 0;
for (b = this.actor.getWidth() |
0; a < b;) for (this._xSpawn = c = a++, c = 0, d = this.actor.getHeight() | 0; c < d;) this._ySpawn = e = c++, e = this._GetPixel = "" + f.imageGetPixel(this._Img, this._xSpawn | 0, this._ySpawn | 0), !f.isPrimitive(e) && ("string" == typeof e ? "" == w.__cast(e, String) : null == e) || "5197647" != "" + z.string(this._GetPixel) ? (e = this._GetPixel, !f.isPrimitive(e) && ("string" == typeof e ? "" == w.__cast(e, String) : null == e) || "16777215" != "" + z.string(this._GetPixel) ? (e = this._GetPixel, !f.isPrimitive(e) && ("string" == typeof e ? "" == w.__cast(e, String) : null == e) || "7960953" !=
"" + z.string(this._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(161), (this._xSpawn + 15) * f.getTileWidth(), (this._ySpawn + 6) * f.getTileHeight(), f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161", "_TileID", 2))) : (f.createRecycledActorOnLayer(f.getActorType(161), (this._xSpawn + 15) * f.getTileWidth(), (this._ySpawn + 6) * f.getTileHeight(), f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161", "_TileID", 1))) : (f.createRecycledActorOnLayer(f.getActorType(161),
(this._xSpawn + 15) * f.getTileWidth(), (this._ySpawn + 6) * f.getTileHeight(), f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161", "_TileID", 0))
}
},
_customEvent_draw_25_score: function () {
this.actor.setAnimation(("" + h.engine.getGameAttribute("Score")).charAt(0));
this._Animation1 = this.actor.getAnimation();
this._Img = f.getImageForActor(this.actor);
for (var a = 0, b = this.actor.getWidth() | 0; a < b;) {
var c = a++;
this._xSpawn = c;
c = 0;
for (var d = this.actor.getHeight() | 0; c < d;) {
var e = c++;
this._ySpawn = e;
e =
this._GetPixel = "" + f.imageGetPixel(this._Img, this._xSpawn | 0, this._ySpawn | 0);
!f.isPrimitive(e) && ("string" == typeof e ? "" == w.__cast(e, String) : null == e) || "5197647" != "" + z.string(this._GetPixel) ? (e = this._GetPixel, !f.isPrimitive(e) && ("string" == typeof e ? "" == w.__cast(e, String) : null == e) || "16777215" != "" + z.string(this._GetPixel) ? (e = this._GetPixel, !f.isPrimitive(e) && ("string" == typeof e ? "" == w.__cast(e, String) : null == e) || "7960953" != "" + z.string(this._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(161), (this._xSpawn +
7 + this._1Offset) * f.getTileWidth(), (this._ySpawn + 6) * f.getTileHeight(), f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161", "_TileID", 2))) : (f.createRecycledActorOnLayer(f.getActorType(161), (this._xSpawn + 7 + this._1Offset) * f.getTileWidth(), (this._ySpawn + 6) * f.getTileHeight(), f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161", "_TileID", 1))) : (f.createRecycledActorOnLayer(f.getActorType(161), (this._xSpawn + 7 + this._1Offset) * f.getTileWidth(), (this._ySpawn + 6) *
f.getTileHeight(), f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161", "_TileID", 0))
}
}
this.actor.setAnimation(("" + h.engine.getGameAttribute("Score")).charAt(1));
this._Animation1 = this.actor.getAnimation();
this._Img = f.getImageForActor(this.actor);
a = 0;
for (b = this.actor.getWidth() | 0; a < b;) for (this._xSpawn = c = a++, c = 0, d = this.actor.getHeight() | 0; c < d;) this._ySpawn = e = c++, e = this._GetPixel = "" + f.imageGetPixel(this._Img, this._xSpawn | 0, this._ySpawn | 0), !f.isPrimitive(e) && ("string" == typeof e ?
"" == w.__cast(e, String) : null == e) || "5197647" != "" + z.string(this._GetPixel) ? (e = this._GetPixel, !f.isPrimitive(e) && ("string" == typeof e ? "" == w.__cast(e, String) : null == e) || "16777215" != "" + z.string(this._GetPixel) ? (e = this._GetPixel, !f.isPrimitive(e) && ("string" == typeof e ? "" == w.__cast(e, String) : null == e) || "7960953" != "" + z.string(this._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(161), (this._xSpawn + 16) * f.getTileWidth(), (this._ySpawn + 6) * f.getTileHeight(), f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161",
"_TileID", 2))) : (f.createRecycledActorOnLayer(f.getActorType(161), (this._xSpawn + 16) * f.getTileWidth(), (this._ySpawn + 6) * f.getTileHeight(), f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161", "_TileID", 1))) : (f.createRecycledActorOnLayer(f.getActorType(161), (this._xSpawn + 16) * f.getTileWidth(), (this._ySpawn + 6) * f.getTileHeight(), f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_161", "_TileID", 0))
},
init: function () {
var a = this;
this.actor.disableActorDrawing();
f.runLater(0,
function (b) {
25 != h.engine.getGameAttribute("Score") ? a._customEvent_draw_score() : a._customEvent_draw_25_score()
}, this.actor)
},
forwardMessage: function (a) {
},
__class__: wp
});
var xp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Tile_ID = "_TileID";
this._TileID = 0
};
k["scripts.ActorEvents_161"] = xp;
xp.__name__ = "scripts.ActorEvents_161";
xp.__super__ = P;
xp.prototype = u(P.prototype, {
_TileID: null, init: function () {
var a = this;
this.actor.disableActorDrawing();
f.runLater(1E3 * f.randomFloatBetween(.5, .8), function (b) {
1 != a._TileID &&
a.actor.enableActorDrawing();
a.actor.setAnimation("1");
f.runLater(1E3 * f.randomFloatBetween(.2, .4), function (b) {
a.actor.setAnimation("0");
f.runLater(100, function (b) {
f.setTileAt(f.getTilePosition(1, a.actor.getY() + 2), f.getTilePosition(0, a.actor.getX()), f.engine.getLayerById(0), 160, a._TileID | 0);
f.recycleActor(a.actor)
}, a.actor)
}, a.actor)
}, this.actor)
}, forwardMessage: function (a) {
}, __class__: xp
});
var yp = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_163"] = yp;
yp.__name__ = "scripts.ActorEvents_163";
yp.__super__ = P;
yp.prototype = u(P.prototype, {
init: function () {
var a = this;
this.actor.setAnimation("" + f.randomInt(0, 3));
f.runLater(1E3 * f.randomFloatBetween(3, 4), function (b) {
a.actor.setAnimation("" + f.randomInt(4, 5))
}, this.actor);
f.runLater(1E3 * f.randomFloatBetween(4.5, 5), function (b) {
f.recycleActor(a.actor)
}, this.actor)
}, forwardMessage: function (a) {
}, __class__: yp
});
var zp = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_165"] = zp;
zp.__name__ = "scripts.ActorEvents_165";
zp.__super__ = P;
zp.prototype = u(P.prototype,
{
init: function () {
}, forwardMessage: function (a) {
}, __class__: zp
});
var Ap = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_167"] = Ap;
Ap.__name__ = "scripts.ActorEvents_167";
Ap.__super__ = P;
Ap.prototype = u(P.prototype, {
_event_Updating: function (a) {
var b = this;
if (this.wrapper.enabled) {
a = 0;
for (var c = f.getActorsOfType(f.getActorType(18)); a < c.length;) {
var d = [c[a]];
++a;
null != d[0] && !d[0].dead && !d[0].recycled && this.actor.getY() >= d[0].getY() && 0 < this.actor.getYVelocity() && (this.actor.setYVelocity(0), this.actor.setAnimation("1"),
f.playSoundOnChannel(f.getSound(137), 4), f.startShakingScreen(.005, .25), f.createRecycledActor(f.getActorType(180), this.actor.getX() + f.randomInt(-2, 16), this.actor.getY() + f.randomInt(12, 14), 0), f.createRecycledActor(f.getActorType(180), this.actor.getX() + f.randomInt(-2, 16), this.actor.getY() + f.randomInt(12, 14), 0), f.createRecycledActor(f.getActorType(180), this.actor.getX() + f.randomInt(-2, 16), this.actor.getY() + f.randomInt(12, 14), 0), f.createRecycledActor(f.getActorType(180), this.actor.getX() + f.randomInt(-2,
16), this.actor.getY() + f.randomInt(12, 14), 0), f.runLater(1E3, function (a) {
return function (c) {
"End" != f.getCurrentSceneName() && ya.sendGameplayStart();
f.isKeyDown("up") && (f.simulateKeyRelease("up"), f.simulateKeyPress("up"));
f.isKeyDown("down") && (f.simulateKeyRelease("down"), f.simulateKeyPress("down"));
f.isKeyDown("left") && (f.simulateKeyRelease("left"), f.simulateKeyPress("left"));
f.isKeyDown("right") && (f.simulateKeyRelease("right"), f.simulateKeyPress("right"));
a[0].enableActorDrawing();
a[0].enableBehavior("8 Way Movement Custom");
f.setValueForScene("Scene_Manager", "_HeroReady", 1);
f.setValueForScene("Tutorial_Manager", "_HeroReady", 1);
f.recycleActor(b.actor)
}
}(d), this.actor))
}
}
}, init: function () {
var a = this;
this.actor.makeAlwaysSimulate();
f.runLater(1E3, function (b) {
a.actor.setYVelocity(25);
f.playSoundOnChannel(f.getSound(143), 4)
}, this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
}, forwardMessage: function (a) {
}, __class__: Ap
});
var Bp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Pause_Message = "_PauseMessage";
this.nameMap.h.Game_Paused = "_GamePaused";
this._GamePaused = !1;
this.nameMap.h.Game_Over = "_GameOver";
this._GameOver = !1
};
k["scripts.ActorEvents_170"] = Bp;
Bp.__name__ = "scripts.ActorEvents_170";
Bp.__super__ = P;
Bp.prototype = u(P.prototype, {
_PauseMessage: null, _GamePaused: null, _GameOver: null, _event_Drawing: function (a, b, c) {
if (this.wrapper.enabled && this._GamePaused) {
a.drawActor = !1;
a.actor = null;
a.x = 0;
a.y = 0;
b = f.getFont(172);
null != b && b != a.font && (a.font = b);
b = (f.getSceneWidth() - a.font.getTextWidth("PAUSED") / h.SCALE) /
2;
null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + b * a.scaleX, c = a.y + 55 * a.scaleY) : (b = a.x + b * a.scaleX - h.cameraX, c = a.y + 55 * a.scaleY - h.cameraY) : (b = a.x + b * a.scaleX, c = a.y + 55 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
var d = null, e = a.font;
e = "PAUSED:" + e.ID + ":" + a.alpha + ":" + h.SCALE + ":" + e.get_letterSpacing();
if (Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, e)) {
var g = ca.drawnStringCache.h[e];
g.lifetime = 5;
d =
g.img
} else {
g = a.font.font.getTextWidth("PAUSED", a.font.fontScale);
var l = a.font.font.getFontHeight() * a.font.fontScale | 0;
0 < g && 0 < l && (d = new ka(g, l, !0, 0), a.font.font.renderToImg(d, "PAUSED", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), g = new vc, g.img = d, g.lifetime = 5, ca.drawnStringCache.h[e] = g, ca.drawnStringCacheKeys.push(e))
}
null != d && (a.graphics.beginBitmapFill(d, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, d.width, d.height), a.graphics.endFill())
}
}, _event_OnActor: function (a) {
this.wrapper.enabled && 3 == a && (this._GameOver ||
this._customEvent_pause_unpause())
}, _event_Esc: function (a, b) {
this.wrapper.enabled && a && (this._GameOver || this._customEvent_pause_unpause())
}, _customEvent_pause_unpause: function () {
if (f.engine.isPaused()) {
h.engine.gameAttributes.h.adIsPlaying = !0;
h.engine.gameAttributes.h.adIsPlaying = !1;
f.engine.unpause();
ya.sendGameplayStart();
this._GamePaused = !1;
this.actor.setAnimation("0");
for (var a = 0, b = f.getActorsOfType(f.getActorType(174)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || f.recycleActor(c)
}
a =
0;
for (b = f.getActorsOfType(f.getActorType(205)); a < b.length;) c = b[a], ++a, null == c || c.dead || c.recycled || f.recycleActor(c)
} else f.engine.isPaused() || (ya.sendGameplayStop(), this._GamePaused = !0, this.actor.setAnimation("1"), f.createRecycledActor(f.getActorType(174), 74, 188, 0), f.createRecycledActor(f.getActorType(205), 294, 188, 0), f.engine.pause())
}, init: function () {
this._PauseMessage = [];
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
this.addListener(this.actor.whenMousedOver, q(this, this._event_OnActor));
this.addListener(f.engine.whenKeyPressedEvents.getOrCreateEvent("esc"), q(this, this._event_Esc))
}, forwardMessage: function (a) {
}, __class__: Bp
});
var Cp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Active = "_Active";
this._Active = !1
};
k["scripts.ActorEvents_174"] = Cp;
Cp.__name__ = "scripts.ActorEvents_174";
Cp.__super__ = P;
Cp.prototype = u(P.prototype, {
_Active: null, _event_Keyboard: function (a, b) {
this.wrapper.enabled && a && !this._Active && (this._Active = !0, this.actor.setAnimation("1"))
}, _event_Keyboard2: function (a, b) {
this.wrapper.enabled &&
a && this._Active && (this._Active = !1, this.actor.setAnimation("0"))
}, _event_Keyboard3: function (a, b) {
if (this.wrapper.enabled && a && this._Active && !h.engine.getGameAttribute("adIsPlaying")) {
this.actor.setAnimation("2");
h.engine.gameAttributes.h.Score = 0;
h.engine.gameAttributes.h.Speedrun_Timer = 0;
a = zb.get().scenes.h[15].getID();
var c = b = 204, d = 204;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
var e = f.createFadeOut(.3, b << 16 | c << 8 | d);
d = c = b = 204;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
f.switchScene(a, e, f.createFadeIn(.3,
b << 16 | c << 8 | d))
}
}, _event_MouseOver: function (a) {
this.wrapper.enabled && 1 == a && "1" != this.actor.getAnimation() && this.actor.setAnimation("1")
}, _event_MouseExit: function (a) {
this.wrapper.enabled && -1 == a && (this._Active || "0" == this.actor.getAnimation() || this.actor.setAnimation("0"))
}, _event_MouseClick: function (a) {
if (this.wrapper.enabled && 3 == a && !h.engine.getGameAttribute("adIsPlaying")) {
this.actor.setAnimation("2");
h.engine.gameAttributes.h.Score = 0;
a = zb.get().scenes.h[15].getID();
var b = 204, c = 204, d = 204;
null == d &&
(d = 0);
null == c && (c = 0);
null == b && (b = 0);
var e = f.createFadeOut(.3, b << 16 | c << 8 | d);
d = c = b = 204;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
f.switchScene(a, e, f.createFadeIn(.3, b << 16 | c << 8 | d))
}
}, init: function () {
this.addListener(f.engine.whenKeyPressedEvents.getOrCreateEvent("left"), q(this, this._event_Keyboard));
this.addListener(f.engine.whenKeyPressedEvents.getOrCreateEvent("right"), q(this, this._event_Keyboard2));
this.addListener(f.engine.whenKeyPressedEvents.getOrCreateEvent("enter"), q(this, this._event_Keyboard3));
this.addListener(this.actor.whenMousedOver, q(this, this._event_MouseOver));
this.addListener(this.actor.whenMousedOver, q(this, this._event_MouseExit));
this.addListener(this.actor.whenMousedOver, q(this, this._event_MouseClick))
}, forwardMessage: function (a) {
}, __class__: Cp
});
var Dp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Active = "_Active";
this._Active = !1
};
k["scripts.ActorEvents_176"] = Dp;
Dp.__name__ = "scripts.ActorEvents_176";
Dp.__super__ = P;
Dp.prototype = u(P.prototype, {
_Active: null, _event_Updating: function (a) {
this.wrapper.enabled &&
(this._Active ? this.actor.setAnimation("1") : this.actor.setAnimation("0"))
}, _event_Left: function (a, b) {
if (this.wrapper.enabled && a) for (a = 0, b = f.getActorsOfType(f.getActorType(250)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Active = !this._Active)
}
}, _event_Right: function (a, b) {
if (this.wrapper.enabled && a) for (a = 0, b = f.getActorsOfType(f.getActorType(250)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Active = !this._Active)
}
}, _event_Enter: function (a, b) {
if (this.wrapper.enabled &&
a && !f.engine.isPaused() && this._Active && !h.engine.getGameAttribute("adIsPlaying")) {
ya.killBanner();
this.actor.setAnimation("2");
h.engine.gameAttributes.h.Speedrun_Timer = 0;
h.engine.getGameAttribute("Score") > h.engine.getGameAttribute("High_Score") && (a = h.engine, b = h.engine.getGameAttribute("Score"), a.gameAttributes.h.High_Score = b);
h.engine.gameAttributes.h.Score = 0;
h.engine.gameAttributes.h.Big_Boss_Order = "asdf";
h.engine.gameAttributes.h.Upgrade_Homing = !1;
h.engine.gameAttributes.h.Upgrade_Machinegun = !1;
h.engine.gameAttributes.h.Upgrade_Mines = !1;
h.engine.gameAttributes.h.Upgrade_Minetrail = !1;
h.engine.gameAttributes.h.Upgrade_Orbit = !1;
h.engine.gameAttributes.h.Upgrade_Quad = !1;
h.engine.gameAttributes.h.Upgrade_Shotgun = !1;
h.engine.gameAttributes.h.Upgrade_Spread = !1;
a = zb.get().scenes.h[15].getID();
var c = b = 204, d = 204;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
var e = f.createFadeOut(.3, b << 16 | c << 8 | d);
d = c = b = 204;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
f.switchScene(a, e, f.createFadeIn(.3, b << 16 | c << 8 | d))
}
},
_event_MouseOver: function (a) {
if (this.wrapper.enabled && 1 == a) {
this._Active = !0;
a = 0;
for (var b = f.getActorsOfType(f.getActorType(250)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c.setValue("ActorEvents_250", "_Active", !1)
}
}
}, _event_MouseClick: function (a) {
if (this.wrapper.enabled && 3 == a && !f.engine.isPaused()) {
ya.killBanner();
this.actor.setAnimation("2");
h.engine.gameAttributes.h.Speedrun_Timer = 0;
if (h.engine.getGameAttribute("Score") > h.engine.getGameAttribute("High_Score")) {
a = h.engine;
var b = h.engine.getGameAttribute("Score");
a.gameAttributes.h.High_Score = b
}
h.engine.gameAttributes.h.Score = 0;
h.engine.gameAttributes.h.Big_Boss_Order = "asdf";
h.engine.gameAttributes.h.Upgrade_Homing = !1;
h.engine.gameAttributes.h.Upgrade_Machinegun = !1;
h.engine.gameAttributes.h.Upgrade_Mines = !1;
h.engine.gameAttributes.h.Upgrade_Minetrail = !1;
h.engine.gameAttributes.h.Upgrade_Orbit = !1;
h.engine.gameAttributes.h.Upgrade_Quad = !1;
h.engine.gameAttributes.h.Upgrade_Shotgun = !1;
h.engine.gameAttributes.h.Upgrade_Spread = !1;
a = zb.get().scenes.h[15].getID();
var c = b = 204, d = 204;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
var e = f.createFadeOut(.3, b << 16 | c << 8 | d);
d = c = b = 204;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
f.switchScene(a, e, f.createFadeIn(.3, b << 16 | c << 8 | d))
}
}, init: function () {
this._Active = !1;
this.actor.setAnimation("0");
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(f.engine.whenKeyPressedEvents.getOrCreateEvent("left"), q(this, this._event_Left));
this.addListener(f.engine.whenKeyPressedEvents.getOrCreateEvent("right"),
q(this, this._event_Right));
this.addListener(f.engine.whenKeyPressedEvents.getOrCreateEvent("enter"), q(this, this._event_Enter));
this.addListener(this.actor.whenMousedOver, q(this, this._event_MouseOver));
this.addListener(this.actor.whenMousedOver, q(this, this._event_MouseClick))
}, forwardMessage: function (a) {
}, __class__: Dp
});
var Ep = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Played_Footstep = "_PlayedFootstep";
this._PlayedFootstep = !1;
this.nameMap.h.Lives = "_Lives";
this._Lives = 0;
this.nameMap.h.Got_Hit_Direction =
"_GotHitDirection";
this._GotHitDirection = 0;
this.nameMap.h.Death_Screen_Flash = "_DeathScreenFlash";
this._DeathScreenFlash = 0;
this.nameMap.h.Hit_Screen_Flash = "_HitScreenFlash";
this._HitScreenFlash = 0;
this.nameMap.h.Got_Hit = "_GotHit";
this._GotHit = !1;
this.nameMap.h.Hit_Blink = "_HitBlink";
this._HitBlink = !1;
this.nameMap.h.Hit_Blink_B = "_HitBlinkB";
this._HitBlinkB = !1
};
k["scripts.ActorEvents_18"] = Ep;
Ep.__name__ = "scripts.ActorEvents_18";
Ep.__super__ = P;
Ep.prototype = u(P.prototype, {
_PlayedFootstep: null,
_Lives: null,
_GotHitDirection: null,
_DeathScreenFlash: null,
_HitScreenFlash: null,
_GotHit: null,
_HitBlink: null,
_HitBlinkB: null,
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled && 0 < this._HitScreenFlash) {
a.drawActor = !1;
a.actor = null;
a.x = 0;
a.y = 0;
b = 208;
c = 90;
var d = 94;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
b = b << 16 | c << 8 | d;
a.fillColor = 0 > b ? b + 16777216 : b;
a.alpha = this._HitScreenFlash / 100;
c = b = 0;
d = f.getScreenWidth();
var e = f.getScreenHeight();
b *= a.scaleX;
c *= a.scaleY;
d *= a.scaleX;
e *= a.scaleY;
!a.drawActor || null != a.actor &&
a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY);
0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha);
a.graphics.beginFill(a.fillColor, a.alpha);
a.graphics.drawRect(a.x + b, a.y + c, d, e);
a.graphics.endFill();
a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY);
a.graphics.lineStyle()
}
},
_event_Updating: function (a) {
var b = this;
this.wrapper.enabled && (this.actor.isBehaviorEnabled("8 Way Movement Custom") && (f.isKeyDown("up") || f.isKeyDown("down") || f.isKeyDown("left") ||
f.isKeyDown("right")) && !this._PlayedFootstep && (this._PlayedFootstep = !0, f.playSoundOnChannel(f.getSound(112), 1), f.createRecycledActorOnLayer(f.getActorType(180), this.actor.getX() + f.randomInt(3, 6), this.actor.getY() + f.randomInt(9, 14), f.engine.getLayerById(0)), f.runLater(250, function (a) {
b._PlayedFootstep = !1
}, this.actor)), this._GotHit && (this._HitBlink || this._HitBlinkB || (this._HitBlink = !0, this.actor.disableActorDrawing(), f.runLater(50, function (a) {
b._HitBlinkB = !0
}, this.actor)), this._HitBlink && this._HitBlinkB &&
(this._HitBlink = !1, this.actor.enableActorDrawing(), f.runLater(50, function (a) {
b._HitBlinkB = !1
}, this.actor))))
},
_customEvent_got_hit: function () {
var a = this;
if (!this._GotHit) {
var b = h.engine, c = h.engine.getGameAttribute("Lives") - 1;
b.gameAttributes.h.Lives = c;
this._GotHit = !0;
f.runLater(1700, function (b) {
a._GotHit = !1;
a.actor.enableActorDrawing()
}, this.actor);
this.actor.applyImpulseInDirection(this._GotHitDirection, 300);
b = 0;
for (c = f.getActorsOfType(f.getActorType(188)); b < c.length;) {
var d = c[b];
++b;
null == d || d.dead ||
d.recycled || d.shout("_customEvent_got_hit")
}
f.playSoundOnChannel(f.getSound(190), 1);
0 == h.engine.getGameAttribute("Lives") && (ya.sendGameplayStop(), f.createRecycledActor(f.getActorType(67), this.actor.getX(), this.actor.getY(), 0), f.getLastCreatedActor().shout("_customEvent_splosion_hero"), f.runLater(50, function (b) {
f.shoutToScene("_customEvent_game_over");
f.createRecycledActor(f.getActorType(132), a.actor.getX() - 2, a.actor.getY() + 3, 0);
f.getLastCreatedActor().applyImpulseInDirection(a._GotHitDirection, 20);
a.actor.disableActorDrawing();
f.runLater(100, function (b) {
f.recycleActor(a.actor)
}, a.actor)
}, this.actor));
f.runLater(10, function (a) {
f.startShakingScreen(.02, .5)
}, this.actor)
}
},
init: function () {
this.actor.disableActorDrawing();
this.actor.disableBehavior("8 Way Movement Custom");
window.navigator.maxTouchPoints || "ontouchstart" in document ? (this.actor.enableBehavior("Joystick_Manager_Actor"), this.actor.say("Joystick_Manager_Actor", "_customEvent_setup")) : this.actor.disableBehavior("Joystick_Manager_Actor");
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
},
forwardMessage: function (a) {
},
__class__: Ep
});
var Fp = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_180"] = Fp;
Fp.__name__ = "scripts.ActorEvents_180";
Fp.__super__ = P;
Fp.prototype = u(P.prototype, {
init: function () {
var a = this;
f.runLater(1E3 * f.randomFloatBetween(.3, .4), function (b) {
a.actor.setCurrentFrame(f.randomInt(1, 6))
}, this.actor);
f.runLater(1E3 * f.randomFloatBetween(.7,
.8), function (b) {
a.actor.setCurrentFrame(f.randomInt(7, 10))
}, this.actor);
f.runLater(1E3, function (b) {
f.recycleActor(a.actor)
}, this.actor)
}, forwardMessage: function (a) {
}, __class__: Fp
});
var Gp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Level_Assignment = "_LevelAssignment";
this._LevelAssignment = 0;
this.nameMap.h.Level_Size = "_LevelSize";
this._LevelSize = "";
this.nameMap.h.Level_Status = "_LevelStatus";
this._LevelStatus = ""
};
k["scripts.ActorEvents_182"] = Gp;
Gp.__name__ = "scripts.ActorEvents_182";
Gp.__super__ = P;
Gp.prototype = u(P.prototype, {
_LevelAssignment: null, _LevelSize: null, _LevelStatus: null, _event_Drawing: function (a, b, c) {
if (this.wrapper.enabled && "Map_Top" == this.actor.getAnimation()) {
b = f.getFont(255);
null != b && b != a.font && (a.font = b);
a.alpha = .5;
null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + -1 * a.scaleX, c = a.y + -9 * a.scaleY) : (b = a.x + -1 * a.scaleX - h.cameraX, c = a.y + -9 * a.scaleY - h.cameraY) : (b = a.x + -1 * a.scaleX, c = a.y + -9 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
var d = null, e = a.font;
e = "MAP:" + e.ID + ":" + a.alpha + ":" + h.SCALE + ":" + e.get_letterSpacing();
if (Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, e)) {
var g = ca.drawnStringCache.h[e];
g.lifetime = 5;
d = g.img
} else {
g = a.font.font.getTextWidth("MAP", a.font.fontScale);
var l = a.font.font.getFontHeight() * a.font.fontScale | 0;
0 < g && 0 < l && (d = new ka(g, l, !0, 0), a.font.font.renderToImg(d, "MAP", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), g = new vc, g.img = d, g.lifetime = 5, ca.drawnStringCache.h[e] =
g, ca.drawnStringCacheKeys.push(e))
}
null != d && (a.graphics.beginBitmapFill(d, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, d.width, d.height), a.graphics.endFill())
}
}, init: function () {
var a = this;
this._LevelSize = "Sm_";
this._LevelStatus = "Default";
f.runLater(10, function (b) {
0 == a._LevelAssignment && (a.actor.setAnimation("Map_Top"), f.createRecycledActor(f.getActorType(182), a.actor.getX(), a.actor.getY() + 7, 0), f.getLastCreatedActor().setValue("ActorEvents_182", "_LevelAssignment", a._LevelAssignment + 1));
25 != a._LevelAssignment &&
0 != a._LevelAssignment && (f.createRecycledActor(f.getActorType(182), a.actor.getX(), a.actor.getY() + 7, 0), f.getLastCreatedActor().setValue("ActorEvents_182", "_LevelAssignment", a._LevelAssignment + 1), 0 == a._LevelAssignment % 5 && (a._LevelSize = "Med_", f.getLastCreatedActor().setY(f.getLastCreatedActor().getY() + 3)));
25 == a._LevelAssignment && (a._LevelSize = "Lrg_");
0 != a._LevelAssignment && (a._LevelAssignment == h.engine.getGameAttribute("High_Score") - 1 && (a._LevelStatus = "Best", f.createRecycledActor(f.getActorType(186),
a.actor.getX() - 6, a.actor.getY() + 4, 0)), a._LevelAssignment < h.engine.getGameAttribute("Score") ? a._LevelStatus = "Passed" : a._LevelAssignment == h.engine.getGameAttribute("Score") && (a._LevelStatus = "Active", f.createRecycledActor(f.getActorType(184), a.actor.getX() + 15, a.actor.getY() + 2, 0)), 26 == h.engine.getGameAttribute("Score") && (a._LevelStatus = "Passed"), a.actor.setAnimation(a._LevelSize + a._LevelStatus))
}, this.actor);
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing))
}, forwardMessage: function (a) {
},
__class__: Gp
});
var Hp = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_184"] = Hp;
Hp.__name__ = "scripts.ActorEvents_184";
Hp.__super__ = P;
Hp.prototype = u(P.prototype, {
init: function () {
var a = this;
f.runPeriodically(500, function (b) {
f.getValueForScene("Scene_Manager", "_GameOver") && "1" != a.actor.getAnimation() && a.actor.setAnimation("1")
}, this.actor)
}, forwardMessage: function (a) {
}, __class__: Hp
});
var Ip = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_186"] = Ip;
Ip.__name__ = "scripts.ActorEvents_186";
Ip.__super__ =
P;
Ip.prototype = u(P.prototype, {
init: function () {
}, forwardMessage: function (a) {
}, __class__: Ip
});
var Jp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Life_Assignment = "_LifeAssignment";
this._LifeAssignment = 0;
this.nameMap.h.Timer = "_Timer";
this._Timer = 0;
this.nameMap.h.Timer_Mark = "_TimerMark";
this._TimerMark = 0;
this.nameMap.h.Hero_Got_Hit = "_HeroGotHit";
this._HeroGotHit = !1
};
k["scripts.ActorEvents_188"] = Jp;
Jp.__name__ = "scripts.ActorEvents_188";
Jp.__super__ = P;
Jp.prototype = u(P.prototype, {
_LifeAssignment: null, _Timer: null,
_TimerMark: null, _HeroGotHit: null, _event_Updating: function (a) {
this.wrapper.enabled && (this._Timer += f.getStepSize(), this._HeroGotHit && 1E3 <= this._Timer && "Flash" == this.actor.getAnimation() && (this.actor.setAnimation("0"), this._HeroGotHit = !1))
}, _customEvent_got_hit: function () {
this._LifeAssignment == h.engine.getGameAttribute("Lives") + 1 && (this._HeroGotHit = !0, this._Timer = 0, this.actor.setAnimation("Flash"))
}, init: function () {
var a = this;
f.runLater(10, function (b) {
0 == a._LifeAssignment && (a._LifeAssignment = 1, a.actor.setAnimation("1"),
f.createRecycledActor(f.getActorType(188), a.actor.getX() + (a.actor.getWidth() + 1), a.actor.getY(), 0), f.getLastCreatedActor().setValue("ActorEvents_188", "_LifeAssignment", 2), f.createRecycledActor(f.getActorType(188), f.getLastCreatedActor().getX() + (f.getLastCreatedActor().getWidth() + 1), a.actor.getY(), 0), f.getLastCreatedActor().setValue("ActorEvents_188", "_LifeAssignment", 3));
a._LifeAssignment <= h.engine.getGameAttribute("Lives") && a.actor.setAnimation("1")
}, this.actor);
this.addListener(this.actor.whenUpdated,
q(this, this._event_Updating))
}, forwardMessage: function (a) {
}, __class__: Jp
});
var Kp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Shooting = "_Shooting";
this._Shooting = !1;
this.nameMap.h.Shooting_Direction = "_ShootingDirection";
this._ShootingDirection = 0;
this.nameMap.h.Shooting_Ready = "_ShootingReady";
this._ShootingReady = !1;
this.nameMap.h.Timer = "_Timer";
this._Timer = 0;
this.nameMap.h.Might_Be_Stuck = "_MightBeStuck";
this._MightBeStuck = !1
};
k["scripts.ActorEvents_191"] = Kp;
Kp.__name__ = "scripts.ActorEvents_191";
Kp.__super__ = P;
Kp.prototype = u(P.prototype, {
_Shooting: null,
_ShootingDirection: null,
_ShootingReady: null,
_Timer: null,
_MightBeStuck: null,
_event_Updating: function (a) {
var b = this;
this.wrapper.enabled && (this._Timer += f.getStepSize(), this._ShootingReady && !this._Shooting && 48 < this.actor.getX() && this.actor.getX() < f.getSceneWidth() - (48 + this.actor.getWidth()) && 48 < this.actor.getY() && this.actor.getY() < f.getSceneHeight() - (40 + this.actor.getHeight()) && (this._Timer = 0, this._ShootingReady = !1, this._Shooting = !0, this.actor.setXVelocity(0),
this.actor.setYVelocity(0)), this._Shooting && 10 == this._Timer && (f.createRecycledActor(f.getActorType(81), this.actor.getXCenter() - 16, this.actor.getY() - 24, 0), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", 1), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"), f.createRecycledActor(f.getActorType(81), this.actor.getXCenter() - 16, this.actor.getY() + (this.actor.getHeight() - 8), 0), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", 1), f.getLastCreatedActor().setValue("ActorEvents_81",
"_SpawnID", "Endless"), f.createRecycledActor(f.getActorType(81), this.actor.getX() - 24, this.actor.getYCenter() - 16, 0), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", 1), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"), f.createRecycledActor(f.getActorType(81), this.actor.getX() + (this.actor.getWidth() - 8), this.actor.getYCenter() - 16, 0), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", 1), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless")), this._Shooting &&
3E3 == this._Timer && (this._Shooting = !1, 0 == this.actor.getXVelocity() && 0 == this.actor.getYVelocity() && this.actor.setVelocity(f.randomInt(0, 360), 6)), 6E3 == this._Timer && (this._ShootingReady = !0), 48 > this.actor.getX() && !this._MightBeStuck && (this._MightBeStuck = !0, f.runLater(2E3, function (a) {
b._MightBeStuck = !0;
48 > b.actor.getX() && b.actor.setVelocity(f.randomInt(320, 400), 6)
}, this.actor)), this.actor.getX() > f.getSceneWidth() - (48 + this.actor.getWidth()) && (this._MightBeStuck = !0, f.runLater(2E3, function (a) {
b._MightBeStuck =
!0;
b.actor.getX() > f.getSceneWidth() - (48 + b.actor.getWidth()) && b.actor.setVelocity(f.randomInt(140, 220), 6)
}, this.actor)), 48 > this.actor.getY() && (this._MightBeStuck = !0, f.runLater(2E3, function (a) {
b._MightBeStuck = !0;
48 > b.actor.getY() && b.actor.setVelocity(f.randomInt(410, 490), 6)
}, this.actor)), this.actor.getY() > f.getSceneHeight() - (40 + this.actor.getHeight()) && (this._MightBeStuck = !0, f.runLater(2E3, function (a) {
b._MightBeStuck = !0;
b.actor.getY() > f.getSceneHeight() - (40 + b.actor.getHeight()) && b.actor.setVelocity(f.randomInt(230,
310), 6)
}, this.actor)))
},
init: function () {
var a = this;
this.actor.setValue("Enemy_Manager", "_HitPoints", 12);
this.actor.set_alpha(.5);
this.actor.setX((f.getSceneWidth() - this.actor.getWidth()) / 2);
f.runLater(500, function (b) {
a.actor.set_alpha(1);
a.actor.setVelocity(f.randomInt(0, 360), 6)
}, this.actor);
f.runLater(6E3, function (b) {
a._ShootingReady = !0
}, this.actor);
f.runPeriodically(2E3, function (b) {
a._ShootingReady || a._Shooting || 0 == a.actor.getYVelocity() && a.actor.setVelocity(f.randomInt(0, 360), 6)
}, this.actor);
h.engine.gameAttributes.h.BG_Pattern_Bounce =
!0;
f.createRecycledActorOnLayer(f.getActorType(258), 0, 0, f.engine.getLayerById(6));
f.getLastCreatedActor().moveToBottom();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
},
forwardMessage: function (a) {
},
__class__: Kp
});
var Lp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Stopped = "_Stopped";
this._Stopped = !1;
this.nameMap.h.Spawn = "_Spawn";
this.nameMap.h.Dying = "_Dying";
this._Dying = !1;
this.nameMap.h.My_Direction = "_MyDirection";
this._MyDirection = 0
};
k["scripts.ActorEvents_193"] = Lp;
Lp.__name__ =
"scripts.ActorEvents_193";
Lp.__super__ = P;
Lp.prototype = u(P.prototype, {
_Stopped: null,
_Spawn: null,
_Dying: null,
_MyDirection: null,
init: function () {
var a = this;
f.runPeriodically(400, function (b) {
f.createRecycledActor(f.getActorType(195), a.actor.getX(), a.actor.getY(), 0)
}, this.actor)
},
forwardMessage: function (a) {
},
__class__: Lp
});
var Mp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.My_Boss = "_MyBoss";
this.nameMap.h.Activated = "_Activated";
this._Activated = !1;
this.nameMap.h.Death_Delay_Timer = "_DeathDelayTimer";
this._DeathDelayTimer =
0
};
k["scripts.ActorEvents_195"] = Mp;
Mp.__name__ = "scripts.ActorEvents_195";
Mp.__super__ = P;
Mp.prototype = u(P.prototype, {
_MyBoss: null, _Activated: null, _DeathDelayTimer: null, _event_SetupBoss: function (a) {
if (this.wrapper.enabled) {
var b = f.getActorGroup(5);
var c = a.otherActor.getType(), d = a.otherActor.getGroup();
b = b == c || b == d
} else b = !1;
!b || a.otherActor.getType() != f.getActorType(77) && a.otherActor.getType() != f.getActorType(193) || (b = this._MyBoss, f.isPrimitive(b) || ("string" == typeof b ? "" != w.__cast(b, String) : null != b) ||
this._Activated || (this._Activated = !0, this._MyBoss = a.otherActor))
}, _event_Updating: function (a) {
var b = this;
this.wrapper.enabled && (this._Activated && !this._MyBoss.isAlive() && (this._Activated = !1, f.runLater(1E3 * this._DeathDelayTimer, function (a) {
b.actor.shout("_customEvent_die")
}, this.actor)), "1" == this.actor.getAnimation() && 3 == this.actor.getCurrentFrame() && f.recycleActor(this.actor))
}, init: function () {
var a = this, b = h.engine, c = h.engine.getGameAttribute("Enemies_Live") - 1;
b.gameAttributes.h.Enemies_Live = c;
f.runPeriodically(400,
function (b) {
a._DeathDelayTimer += .1
}, this.actor);
f.runLater(1100, function (b) {
a.actor.setAnimation("1")
}, this.actor);
this.addListener(this.actor.whenCollided, q(this, this._event_SetupBoss));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
}, forwardMessage: function (a) {
}, __class__: Mp
});
var Np = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_197"] = Np;
Np.__name__ = "scripts.ActorEvents_197";
Np.__super__ = P;
Np.prototype = u(P.prototype, {
init: function () {
var a = h.engine.getGameAttribute("Score"),
b = h.engine.getGameAttribute("Big_Boss_Order").charAt(0);
a == 5 * (null == b ? 0 : "number" == typeof b ? w.__cast(b, Ka) : "number" == typeof b && (b | 0) === b ? w.__cast(b, Ia) : "boolean" == typeof b ? w.__cast(b, La) ? 1 : 0 : "string" == typeof b ? parseFloat(b) : parseFloat(z.string(b))) ? this.actor.setAnimation("Big_Bounce_0") : (a = h.engine.getGameAttribute("Score"), b = h.engine.getGameAttribute("Big_Boss_Order").charAt(1), a == 5 * (null == b ? 0 : "number" == typeof b ? w.__cast(b, Ka) : "number" == typeof b && (b | 0) === b ? w.__cast(b, Ia) : "boolean" == typeof b ? w.__cast(b,
La) ? 1 : 0 : "string" == typeof b ? parseFloat(b) : parseFloat(z.string(b))) ? this.actor.setAnimation("Big_Grid_0") : (a = h.engine.getGameAttribute("Score"), b = h.engine.getGameAttribute("Big_Boss_Order").charAt(2), a == 5 * (null == b ? 0 : "number" == typeof b ? w.__cast(b, Ka) : "number" == typeof b && (b | 0) === b ? w.__cast(b, Ia) : "boolean" == typeof b ? w.__cast(b, La) ? 1 : 0 : "string" == typeof b ? parseFloat(b) : parseFloat(z.string(b))) ? this.actor.setAnimation("Big_Diag_0") : (a = h.engine.getGameAttribute("Score"), b = h.engine.getGameAttribute("Big_Boss_Order").charAt(3),
a == 5 * (null == b ? 0 : "number" == typeof b ? w.__cast(b, Ka) : "number" == typeof b && (b | 0) === b ? w.__cast(b, Ia) : "boolean" == typeof b ? w.__cast(b, La) ? 1 : 0 : "string" == typeof b ? parseFloat(b) : parseFloat(z.string(b))) && this.actor.setAnimation("Big_Follow_0"))))
}, forwardMessage: function (a) {
}, __class__: Np
});
var Op = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Change_Directions = "_ChangeDirections";
this._ChangeDirections = !1;
this.nameMap.h.Hero = "_Hero";
this.nameMap.h.Speed = "_Speed";
this._Speed = 0;
this.nameMap.h.Current_Direction =
"_CurrentDirection";
this._CurrentDirection = "";
this.nameMap.h.Max_Speed = "_MaxSpeed";
this._MaxSpeed = 0;
this.nameMap.h.Starting_Direction = "_StartingDirection";
this._StartingDirection = 0;
this.nameMap.h.Activated = "_Activated";
this._Activated = !1;
this.nameMap.h.Shooting_Ready = "_ShootingReady";
this._ShootingReady = !1;
this.nameMap.h.Timer = "_Timer";
this._Timer = 0;
this.nameMap.h.Shooting = "_Shooting";
this._Shooting = !1;
this.nameMap.h.Ypos = "_Ypos";
this._Ypos = 0
};
k["scripts.ActorEvents_199"] = Op;
Op.__name__ = "scripts.ActorEvents_199";
Op.__super__ = P;
Op.prototype = u(P.prototype, {
_ChangeDirections: null,
_Hero: null,
_Speed: null,
_CurrentDirection: null,
_MaxSpeed: null,
_StartingDirection: null,
_Activated: null,
_ShootingReady: null,
_Timer: null,
_Shooting: null,
_Ypos: null,
_event_Updating: function (a) {
this.wrapper.enabled && (this._Timer += f.getStepSize(), this._ShootingReady && !this._Shooting && 80 < this.actor.getX() && this.actor.getX() < f.getSceneWidth() - (80 + this.actor.getWidth()) && (this._Timer = 0, this._ShootingReady = !1, this._Shooting = !0, this.actor.setXVelocity(0),
this.actor.setYVelocity(0)), this._Shooting && 10 == this._Timer && (f.createRecycledActor(f.getActorType(81), this.actor.getX() - 12, this.actor.getY() - 24, 0), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", 3), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"), f.createRecycledActor(f.getActorType(81), this.actor.getX() - 12, this.actor.getY() + (this.actor.getHeight() - 8), 0), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", 3), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID",
"Endless"), f.createRecycledActor(f.getActorType(81), this.actor.getX() + (this.actor.getWidth() - 20), this.actor.getY() - 24, 0), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", 3), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"), f.createRecycledActor(f.getActorType(81), this.actor.getX() + (this.actor.getWidth() - 20), this.actor.getY() + (this.actor.getHeight() - 8), 0), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", 3), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID",
"Endless")), this._Shooting && 3E3 == this._Timer && (this._Shooting = !1), 6E3 == this._Timer && (this._ShootingReady = !0), 64 >= this.actor.getX() && (this._CurrentDirection = "Right"), 332 <= this.actor.getX() && (this._CurrentDirection = "Left"), this._Activated && !this._Shooting && ("Up" == this._CurrentDirection ? (this.actor.setXVelocity(0), this.actor.applyImpulse(0, -1, 1)) : "Down" == this._CurrentDirection ? (this.actor.setXVelocity(0), this.actor.applyImpulse(0, 1, 1)) : "Left" == this._CurrentDirection ? (this.actor.setYVelocity(0), this.actor.applyImpulse(-1,
0, 1)) : "Right" == this._CurrentDirection && (this.actor.setYVelocity(0), this.actor.applyImpulse(1, 0, 1))), this.actor.getXVelocity() > this._MaxSpeed && this.actor.setXVelocity(this._MaxSpeed), this.actor.getYVelocity() > this._MaxSpeed && this.actor.setYVelocity(this._MaxSpeed), this.actor.getXVelocity() < -this._MaxSpeed && this.actor.setXVelocity(-this._MaxSpeed), this.actor.getYVelocity() < -this._MaxSpeed && this.actor.setYVelocity(-this._MaxSpeed), this.actor.getY() != this._Ypos && this.actor.setY(this._Ypos))
},
init: function () {
var a =
this;
this._Ypos = this.actor.getY();
for (var b = 0, c = f.getActorsOfType(f.getActorType(18)); b < c.length;) {
var d = c[b];
++b;
null == d || d.dead || d.recycled || (this._Hero = d)
}
this._MaxSpeed = this._Speed = 4;
this._StartingDirection = f.randomInt(1, 2);
1 == this._StartingDirection ? this._CurrentDirection = "Left" : 2 == this._StartingDirection && (this._CurrentDirection = "Right");
f.runLater(500, function (b) {
a._Activated = !0
}, this.actor);
f.runLater(5E3, function (b) {
a._ShootingReady = !0
}, this.actor);
h.engine.gameAttributes.h.BG_Pattern_Grid =
!0;
f.createRecycledActorOnLayer(f.getActorType(260), 0, 0, f.engine.getLayerById(6));
f.getLastCreatedActor().moveToBottom();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
},
forwardMessage: function (a) {
},
__class__: Op
});
var Pp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Timer = "_Timer";
this._Timer = 0;
this.nameMap.h.Shooting_Ready = "_ShootingReady";
this._ShootingReady = !1;
this.nameMap.h.Shooting = "_Shooting";
this._Shooting = !1
};
k["scripts.ActorEvents_201"] = Pp;
Pp.__name__ = "scripts.ActorEvents_201";
Pp.__super__ = P;
Pp.prototype = u(P.prototype, {
_Timer: null, _ShootingReady: null, _Shooting: null, _event_Updating: function (a) {
this.wrapper.enabled && (this._Timer += f.getStepSize(), this._ShootingReady && !this._Shooting && (this.actor.disableBehavior("Follow Target CUSTOM"), this._Timer = 0, this._ShootingReady = !1, this._Shooting = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0)), this._Shooting && 10 == this._Timer && (f.createRecycledActor(f.getActorType(81), 48, 32, 0), f.getLastCreatedActor().setValue("ActorEvents_81",
"_RNG", 8), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"), f.createRecycledActor(f.getActorType(81), 368, 32, 0), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", 8), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"), f.createRecycledActor(f.getActorType(81), 48, 208, 0), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", 8), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"), f.createRecycledActor(f.getActorType(81), 368, 208, 0), f.getLastCreatedActor().setValue("ActorEvents_81",
"_RNG", 8), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless")), this._Shooting && 3E3 == this._Timer && (this._Shooting = !1, this.actor.enableBehavior("Follow Target CUSTOM")), 7E3 == this._Timer && (this._ShootingReady = !0), this._Shooting && (this.actor.setXVelocity(0), this.actor.setYVelocity(0)))
}, init: function () {
this.actor.setX((f.getSceneWidth() - this.actor.getWidth()) / 2);
h.engine.gameAttributes.h.BG_Pattern_Follow = !0;
f.createRecycledActorOnLayer(f.getActorType(264), 0, 0, f.engine.getLayerById(6));
f.getLastCreatedActor().moveToBottom();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
}, forwardMessage: function (a) {
}, __class__: Pp
});
var Qp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.RNG = "_RNG";
this._RNG = 0;
this.nameMap.h.My_Direction = "_MyDirection";
this._MyDirection = 0;
this.nameMap.h.Warping = "_Warping";
this._Warping = !1;
this.nameMap.h.Speed = "_Speed";
this._Speed = 0;
this.nameMap.h.Timer = "_Timer";
this._Timer = 0;
this.nameMap.h.Shooting_Ready = "_ShootingReady";
this._ShootingReady = !1;
this.nameMap.h.Shooting = "_Shooting";
this._Shooting = !1
};
k["scripts.ActorEvents_203"] = Qp;
Qp.__name__ = "scripts.ActorEvents_203";
Qp.__super__ = P;
Qp.prototype = u(P.prototype, {
_RNG: null,
_MyDirection: null,
_Warping: null,
_Speed: null,
_Timer: null,
_ShootingReady: null,
_Shooting: null,
_event_Updating: function (a) {
var b = this;
this.wrapper.enabled && (this._Warping || (31 == this.actor.getY() && (this._Warping = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.set_alpha(.5), this.actor.setAnimation("" + this.actor.getAnimation() +
"b"), this.actor.setY(208), f.runLater(1E3, function (a) {
b._Warping = !1;
b.actor.set_alpha(1);
b.actor.setAnimation(("" + b.actor.getAnimation()).charAt(0));
b.actor.setVelocity(b._MyDirection, b._Speed);
b._customEvent_play_sound()
}, this.actor)), 209 == this.actor.getY() && (this._Warping = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.set_alpha(.5), this.actor.setAnimation("" + this.actor.getAnimation() + "b"), this.actor.setY(32), f.runLater(1E3, function (a) {
b._Warping = !1;
b.actor.set_alpha(1);
b.actor.setAnimation(("" +
b.actor.getAnimation()).charAt(0));
b.actor.setVelocity(b._MyDirection, b._Speed);
b._customEvent_play_sound()
}, this.actor)), 31 == this.actor.getX() && (this._Warping = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.set_alpha(.5), this.actor.setAnimation("" + this.actor.getAnimation() + "b"), this.actor.setX(352), f.runLater(1E3, function (a) {
b._Warping = !1;
b.actor.set_alpha(1);
b.actor.setAnimation(("" + b.actor.getAnimation()).charAt(0));
b.actor.setVelocity(b._MyDirection, b._Speed);
b._customEvent_play_sound()
},
this.actor)), 353 == this.actor.getX() && (this._Warping = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.set_alpha(.5), this.actor.setAnimation("" + this.actor.getAnimation() + "b"), this.actor.setX(32), f.runLater(1E3, function (a) {
b._Warping = !1;
b.actor.set_alpha(1);
b.actor.setAnimation(("" + b.actor.getAnimation()).charAt(0));
b.actor.setVelocity(b._MyDirection, b._Speed);
b._customEvent_play_sound()
}, this.actor))), this._Timer += f.getStepSize(), this._ShootingReady && !this._Shooting && 64 < this.actor.getX() &&
this.actor.getX() < f.getSceneWidth() - (64 + this.actor.getWidth()) && (this._Timer = 0, this._ShootingReady = !1, this._Shooting = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0)), this._Shooting && 10 == this._Timer && (f.createRecycledActor(f.getActorType(81), this.actor.getX() - 24, this.actor.getY(), 0), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", 5), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"), f.createRecycledActor(f.getActorType(81), this.actor.getX() - 40, this.actor.getY(),
0), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", 5), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"), f.createRecycledActor(f.getActorType(81), this.actor.getX() + this.actor.getWidth() - 8, this.actor.getY(), 0), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", 5), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"), f.createRecycledActor(f.getActorType(81), this.actor.getX() + this.actor.getWidth() + 8, this.actor.getY(), 0), f.getLastCreatedActor().setValue("ActorEvents_81",
"_RNG", 5), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless")), this._Shooting && 3E3 == this._Timer && (this._Shooting = !1, this.actor.setVelocity(this._MyDirection, this._Speed)), 6E3 == this._Timer && (this._ShootingReady = !0), this._Shooting && (this.actor.setXVelocity(0), this.actor.setYVelocity(0)))
},
_customEvent_play_sound: function () {
f.playSoundOnChannel(f.getSound(144), h.engine.getGameAttribute("Sound_Channel") | 0);
var a = h.engine, b = h.engine.getGameAttribute("Sound_Channel") + 1;
a.gameAttributes.h.Sound_Channel =
b
},
init: function () {
var a = this;
this.actor.setX((f.getSceneWidth() - this.actor.getWidth()) / 2);
this._RNG = f.randomInt(1, 4);
this._MyDirection = 90 * this._RNG + 45;
this._Speed = 5;
2 != this._RNG && 4 != this._RNG || this.actor.growTo(-1, 1, .01, Wa.linear);
f.runLater(500, function (b) {
a.actor.setVelocity(a._MyDirection, a._Speed)
}, this.actor);
h.engine.gameAttributes.h.BG_Pattern_Diagonal = !0;
f.createRecycledActorOnLayer(f.getActorType(262), 0, 0, f.engine.getLayerById(6));
f.getLastCreatedActor().moveToBottom();
this.addListener(this.actor.whenUpdated,
q(this, this._event_Updating))
},
forwardMessage: function (a) {
},
__class__: Qp
});
var Rp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Active = "_Active";
this._Active = !1
};
k["scripts.ActorEvents_205"] = Rp;
Rp.__name__ = "scripts.ActorEvents_205";
Rp.__super__ = P;
Rp.prototype = u(P.prototype, {
_Active: null, _event_Keyboard: function (a, b) {
this.wrapper.enabled && a && this._Active && (this._Active = !1, this.actor.setAnimation("0"))
}, _event_Keyboard2: function (a, b) {
this.wrapper.enabled && a && !this._Active && (this._Active = !0, this.actor.setAnimation("1"))
},
_event_Keyboard3: function (a, b) {
if (this.wrapper.enabled && a && this._Active && !h.engine.getGameAttribute("adIsPlaying")) for (this.actor.setAnimation("2"), a = 0, b = f.getActorsOfType(f.getActorType(170)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c.shout("_customEvent_pause_unpause")
}
}, _event_MouseOver: function (a) {
this.wrapper.enabled && 1 == a && "1" != this.actor.getAnimation() && this.actor.setAnimation("1")
}, _event_MouseExit: function (a) {
this.wrapper.enabled && -1 == a && (this._Active || "0" == this.actor.getAnimation() ||
this.actor.setAnimation("0"))
}, _event_MouseClick: function (a) {
if (this.wrapper.enabled && 3 == a && !h.engine.getGameAttribute("adIsPlaying")) {
this.actor.setAnimation("2");
a = 0;
for (var b = f.getActorsOfType(f.getActorType(170)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c.shout("_customEvent_pause_unpause")
}
}
}, init: function () {
this._Active = !0;
this.actor.setAnimation("1");
this.addListener(f.engine.whenKeyPressedEvents.getOrCreateEvent("left"), q(this, this._event_Keyboard));
this.addListener(f.engine.whenKeyPressedEvents.getOrCreateEvent("right"),
q(this, this._event_Keyboard2));
this.addListener(f.engine.whenKeyPressedEvents.getOrCreateEvent("enter"), q(this, this._event_Keyboard3));
this.addListener(this.actor.whenMousedOver, q(this, this._event_MouseOver));
this.addListener(this.actor.whenMousedOver, q(this, this._event_MouseExit));
this.addListener(this.actor.whenMousedOver, q(this, this._event_MouseClick))
}, forwardMessage: function (a) {
}, __class__: Rp
});
var Sp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Animation_1 = "_Animation1";
this._Animation1 = "";
this.nameMap.h.Img = "_Img";
this.nameMap.h.Get_Pixel = "_GetPixel";
this.nameMap.h.xSpawn = "_xSpawn";
this._xSpawn = 0;
this.nameMap.h.ySpawn = "_ySpawn";
this._ySpawn = 0;
this.nameMap.h.Animation_2 = "_Animation2";
this._Animation2 = "";
this.nameMap.h.Enemy_Chooser = "_EnemyChooser";
this._EnemyChooser = 0;
this.nameMap.h.Enemy_Chooser_Top_Limit = "_EnemyChooserTopLimit";
this._EnemyChooserTopLimit = 0;
this.nameMap.h.spawn_end_animation_cycle = "_spawnendanimationcycle";
this._spawnendanimationcycle = 0;
this.nameMap.h.spawn_end_enemy_cycle =
"_spawnendenemycycle";
this._spawnendenemycycle = 0
};
k["scripts.ActorEvents_207"] = Sp;
Sp.__name__ = "scripts.ActorEvents_207";
Sp.__super__ = P;
Sp.prototype = u(P.prototype, {
_Animation1: null,
_Img: null,
_GetPixel: null,
_xSpawn: null,
_ySpawn: null,
_Animation2: null,
_EnemyChooser: null,
_EnemyChooserTopLimit: null,
_spawnendanimationcycle: null,
_spawnendenemycycle: null,
init: function () {
},
forwardMessage: function (a) {
},
__class__: Sp
});
var Tp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Death_Bar_Left = "_DeathBarLeft";
this._DeathBarLeft =
0;
this.nameMap.h.Death_Bar_Right = "_DeathBarRight";
this._DeathBarRight = 0;
this.nameMap.h.Death_Event = "_DeathEvent";
this._DeathEvent = !1
};
k["scripts.ActorEvents_210"] = Tp;
Tp.__name__ = "scripts.ActorEvents_210";
Tp.__super__ = P;
Tp.prototype = u(P.prototype, {
_DeathBarLeft: null, _DeathBarRight: null, _DeathEvent: null, _event_Drawing: function (a, b, c) {
if (this.wrapper.enabled && this._DeathEvent) {
a.drawActor = !1;
a.actor = null;
a.x = 0;
a.y = 0;
b = 254;
c = 55;
var d = 147;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
b = b << 16 | c << 8 | d;
a.fillColor =
0 > b ? b + 16777216 : b;
a.alpha = .3;
b = this._DeathBarLeft;
b *= a.scaleX;
c = 32 * a.scaleY;
d = 16 * a.scaleX;
var e = 196 * a.scaleY;
!a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY);
0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha);
a.graphics.beginFill(a.fillColor, a.alpha);
a.graphics.drawRect(a.x + b, a.y + c, d, e);
a.graphics.endFill();
a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY);
a.graphics.lineStyle();
b = this._DeathBarRight;
b *= a.scaleX;
c = 32 * a.scaleY;
d = 16 * a.scaleX;
e = 196 * a.scaleY;
!a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY);
0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha);
a.graphics.beginFill(a.fillColor, a.alpha);
a.graphics.drawRect(a.x + b, a.y + c, d, e);
a.graphics.endFill();
a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY);
a.graphics.lineStyle()
}
}, _customEvent_death_event: function () {
var a = this;
this._DeathEvent || (this._DeathEvent = !0, this._DeathBarRight =
this._DeathBarLeft = 208, f.runPeriodically(50, function (b) {
a._DeathBarLeft = 48 <= a._DeathBarLeft ? a._DeathBarLeft - 16 : 208;
a._DeathBarRight < f.getSceneWidth() - 48 ? a._DeathBarRight += 16 : a._DeathBarRight = 208;
b = 0;
for (var c = w.__cast(f.getActorGroup(5), df).list; b < c.length;) {
var d = c[b];
++b;
null == d || d.dead || d.recycled || (d.getX() < a.actor.getXCenter() && d.getX() < a._DeathBarLeft && d.shout("_customEvent_die"), d.getX() > a.actor.getXCenter() && d.getX() > a._DeathBarRight && d.shout("_customEvent_die"))
}
}, this.actor), f.runPeriodically(100,
function (b) {
f.createRecycledActor(f.getActorType(67), a.actor.getXCenter() - f.randomInt(8, 24), a.actor.getYCenter() - f.randomInt(8, 24), 0);
f.getLastCreatedActor().shout("_customEvent_splosion_enemy")
}, this.actor), f.runLater(3E3, function (b) {
f.createRecycledActor(f.getActorType(67), a.actor.getXCenter() - 16, a.actor.getYCenter() - 16, 0);
f.getLastCreatedActor().shout("_customEvent_splosion_big_end_boss");
f.createRecycledActor(f.getActorType(220), a.actor.getXCenter() - 10, a.actor.getYCenter() - 12, 0);
f.recycleActor(a.actor)
},
this.actor))
}, init: function () {
var a = this;
f.runLater(100, function (a) {
f.createRecycledActor(f.getActorType(207), 0, 0, 0);
a = 0;
for (var b = f.getActorsOfType(f.getActorType(207)); a < b.length;) {
var d = b[a];
++a;
null == d || d.dead || d.recycled || d.shout("_customEvent_spawn_end")
}
}, this.actor);
f.runPeriodically(4500, function (b) {
if (!a._DeathEvent) {
b = 0;
for (var c = f.getActorsOfType(f.getActorType(207)); b < c.length;) {
var d = c[b];
++b;
null == d || d.dead || d.recycled || d.shout("_customEvent_spawn_end")
}
}
}, this.actor);
f.runLater(1250,
function (b) {
a.actor.setAnimation("45")
}, this.actor);
f.playSoundOnChannel(f.getSound(240), f.randomInt(6, 29));
f.runLater(250, function (a) {
f.playSoundOnChannel(f.getSound(240), f.randomInt(6, 29))
}, this.actor);
f.runLater(500, function (a) {
f.playSoundOnChannel(f.getSound(240), f.randomInt(6, 29))
}, this.actor);
f.runLater(750, function (a) {
f.playSoundOnChannel(f.getSound(240), f.randomInt(6, 29))
}, this.actor);
f.runLater(1E3, function (a) {
f.playSoundOnChannel(f.getSound(240), f.randomInt(6, 29))
}, this.actor);
this.addListener(this.actor.whenDrawing,
q(this, this._event_Drawing))
}, forwardMessage: function (a) {
}, __class__: Tp
});
var Up = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_215"] = Up;
Up.__name__ = "scripts.ActorEvents_215";
Up.__super__ = P;
Up.prototype = u(P.prototype, {
init: function () {
}, forwardMessage: function (a) {
}, __class__: Up
});
var Vp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Passed_Level = "_PassedLevel";
this._PassedLevel = !1;
this.nameMap.h.Moving_To_Next_Scene = "_MovingToNextScene";
this._MovingToNextScene = !1
};
k["scripts.ActorEvents_218"] =
Vp;
Vp.__name__ = "scripts.ActorEvents_218";
Vp.__super__ = P;
Vp.prototype = u(P.prototype, {
_PassedLevel: null, _MovingToNextScene: null, _event_HitsHero: function (a) {
if (this.wrapper.enabled) {
var b = f.getActorType(18);
var c = a.otherActor.getType(), d = a.otherActor.getGroup();
b = b == c || b == d
} else b = !1;
b && this._PassedLevel && !this._MovingToNextScene && (this._MovingToNextScene = !0, a.otherActor.disableBehavior("8 Way Movement"), a.otherActor.growTo(.5, .5, .5, Wa.linear), a.otherActor.fadeTo(0, .5, Wa.linear), a.otherActor.moveTo(this.actor.getXCenter() -
5, this.actor.getYCenter() + 3, .5, Wa.linear), f.shoutToScene("_customEvent_entered_door"), f.playSoundOnChannel(f.getSound(143), 4))
}, _customEvent_open_door: function () {
this.actor.setAnimation("3");
f.playSoundOnChannel(f.getSound(139), 4);
for (var a = 0; 10 > a;) a++, f.createRecycledActor(f.getActorType(180), this.actor.getXCenter() + f.randomInt(-3, 3), this.actor.getY() + f.randomInt(0, this.actor.getHeight() | 0), 0)
}, init: function () {
this.actor.setCurrentFrame(1);
this.actor.moveToBottom();
this.addListener(this.actor.whenCollided,
q(this, this._event_HitsHero))
}, forwardMessage: function (a) {
}, __class__: Vp
});
var Wp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Picked_Up = "_PickedUp";
this._PickedUp = !1;
this.nameMap.h.Screen_Flash = "_ScreenFlash";
this._ScreenFlash = 0
};
k["scripts.ActorEvents_220"] = Wp;
Wp.__name__ = "scripts.ActorEvents_220";
Wp.__super__ = P;
Wp.prototype = u(P.prototype, {
_PickedUp: null, _ScreenFlash: null, _event_Updating: function (a) {
if (this.wrapper.enabled && (this.actor.setXVelocity(.98 * this.actor.getXVelocity()), this.actor.setYVelocity(.98 *
this.actor.getYVelocity()), this._PickedUp)) {
this.actor.disableBehavior("Bounce With Full Speed");
32 <= this.actor.getY() ? this.actor.setYVelocity(-20) : (this.actor.setYVelocity(0), this.actor.getXCenter() < f.getSceneWidth() / 2 ? this.actor.setXVelocity(20) : this.actor.setXVelocity(-20));
a = 0;
for (var b = f.getActorsOfType(f.getActorType(152)); a < b.length;) {
var c = b[a];
++a;
if (null != c && !c.dead && !c.recycled) {
var d = this.actor.getXCenter();
d = null == d ? 0 : "number" == typeof d ? w.__cast(d, Ka) : "number" == typeof d && (d | 0) === d ? w.__cast(d,
Ia) : "boolean" == typeof d ? w.__cast(d, La) ? 1 : 0 : "string" == typeof d ? parseFloat(d) : parseFloat(z.string(d));
var e = this.actor.getYCenter();
e = null == e ? 0 : "number" == typeof e ? w.__cast(e, Ka) : "number" == typeof e && (e | 0) === e ? w.__cast(e, Ia) : "boolean" == typeof e ? w.__cast(e, La) ? 1 : 0 : "string" == typeof e ? parseFloat(e) : parseFloat(z.string(e));
var g = c.getXCenter();
g = null == g ? 0 : "number" == typeof g ? w.__cast(g, Ka) : "number" == typeof g && (g | 0) === g ? w.__cast(g, Ia) : "boolean" == typeof g ? w.__cast(g, La) ? 1 : 0 : "string" == typeof g ? parseFloat(g) :
parseFloat(z.string(g));
var h = c.getYCenter();
25 > za.distance_between_points(d, e, g, null == h ? 0 : "number" == typeof h ? w.__cast(h, Ka) : "number" == typeof h && (h | 0) === h ? w.__cast(h, Ia) : "boolean" == typeof h ? w.__cast(h, La) ? 1 : 0 : "string" == typeof h ? parseFloat(h) : parseFloat(z.string(h))) && (c.shout("_customEvent_key_collected"), f.recycleActor(this.actor))
}
}
}
}, _event_Drawing: function (a, b, c) {
if (this.wrapper.enabled) {
if (this._PickedUp) {
a.drawActor = !1;
a.actor = null;
a.x = 0;
a.y = 0;
var d = b = 255, e = 0;
null == e && (e = 0);
null == d && (d = 0);
null ==
b && (b = 0);
b = b << 16 | d << 8 | e;
a.fillColor = 0 > b ? b + 16777216 : b;
a.alpha = .6;
b = 16 * Math.floor(this.actor.getXCenter() / f.getTileWidth());
c = 16 * Math.floor(this.actor.getYCenter() / f.getTileWidth());
b *= a.scaleX;
c *= a.scaleY;
d = 16 * a.scaleX;
e = 16 * a.scaleY;
!a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY);
0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha);
a.graphics.beginFill(a.fillColor, a.alpha);
a.graphics.drawRect(a.x + b, a.y + c, d, e);
a.graphics.endFill();
a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY);
a.graphics.lineStyle()
}
if ("Tutorial" == f.getCurrentSceneName() && !this._PickedUp) {
d = this.actor;
a.drawActor = !0;
a.actor = d;
d.smoothMove ? (b = d.drawX - Math.floor(d.cacheWidth / 2) - d.currOffset.x, c = d.drawY - Math.floor(d.cacheHeight / 2) - d.currOffset.y, a.x = b * a.scaleX, a.y = c * a.scaleY) : (a.x = d.colX * a.scaleX, a.y = d.colY * a.scaleY);
b = f.getFont(217);
null != b && b != a.font && (a.font = b);
null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + -4 * a.scaleX, c = a.y + -8 * a.scaleY) : (b = a.x + -4 * a.scaleX - h.cameraX, c = a.y + -8 * a.scaleY - h.cameraY) : (b = a.x + -4 * a.scaleX, c = a.y + -8 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
var g = null;
d = a.font;
var l = "Key:" + d.ID + ":" + a.alpha + ":" + h.SCALE + ":" + d.get_letterSpacing();
Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, l) ? (d = ca.drawnStringCache.h[l], d.lifetime = 5, g = d.img) : (d = a.font.font.getTextWidth("Key", a.font.fontScale), e = a.font.font.getFontHeight() * a.font.fontScale |
0, 0 < d && 0 < e && (g = new ka(d, e, !0, 0), a.font.font.renderToImg(g, "Key", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), d = new vc, d.img = g, d.lifetime = 5, ca.drawnStringCache.h[l] = d, ca.drawnStringCacheKeys.push(l)));
null != g && (a.graphics.beginBitmapFill(g, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, g.width, g.height), a.graphics.endFill())
}
0 < this._ScreenFlash && (a.drawActor = !1, a.actor = null, a.x = 0, a.y = 0, d = b = 255, e = 0, null == e && (e = 0), null == d && (d = 0), null == b && (b = 0), b = b << 16 | d << 8 | e, a.fillColor = 0 > b ? b + 16777216 : b, a.alpha = this._ScreenFlash /
100, c = b = 0, d = f.getScreenWidth(), e = f.getScreenHeight(), b *= a.scaleX, c *= a.scaleY, d *= a.scaleX, e *= a.scaleY, !a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY), 0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha), a.graphics.beginFill(a.fillColor, a.alpha), a.graphics.drawRect(a.x + b, a.y + c, d, e), a.graphics.endFill(), a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY), a.graphics.lineStyle())
}
}, _event_HitsHero: function (a) {
var b =
this;
if (this.wrapper.enabled) {
var c = f.getActorType(18);
var d = a.otherActor.getType();
a = a.otherActor.getGroup();
c = c == d || c == a
} else c = !1;
if (c && !this._PickedUp) {
this.actor.disableBehavior("Follow Target CUSTOM");
this._PickedUp = !0;
this.actor.setXVelocity(0);
this.actor.setYVelocity(0);
this.actor.setAnimation("Picked_Up");
f.playSoundOnChannel(f.getSound(141), 5);
this.actor.disableActorDrawing();
this._ScreenFlash = 95;
var e = this.attributeTweens.h._ScreenFlash;
null == e && (e = new ce, e.doOnUpdate(function () {
b._ScreenFlash =
e.value
}), this.attributeTweens.h._ScreenFlash = e);
e.tween(this._ScreenFlash, 0, Wa.linear, 300)
}
}, init: function () {
for (var a = 0, b = f.getActorsOfType(f.getActorType(18)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || this.actor.applyImpulseInDirection(za.angle_to_target("degrees", this.actor, c), 19)
}
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsHero))
},
forwardMessage: function (a) {
}, __class__: Wp
});
var Xp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Picked_Up = "_PickedUp";
this._PickedUp = !1;
this.nameMap.h.Increase_Lives = "_IncreaseLives";
this._IncreaseLives = !1;
this.nameMap.h.Screen_Flash = "_ScreenFlash";
this._ScreenFlash = 0;
this.nameMap.h.Hero = "_Hero";
this.nameMap.h.Display_Text = "_DisplayText";
this._DisplayText = !1
};
k["scripts.ActorEvents_226"] = Xp;
Xp.__name__ = "scripts.ActorEvents_226";
Xp.__super__ = P;
Xp.prototype = u(P.prototype, {
_PickedUp: null, _IncreaseLives: null,
_ScreenFlash: null, _Hero: null, _DisplayText: null, _event_Updating: function (a) {
var b = this;
if (this.wrapper.enabled) {
if (!this._PickedUp) {
if (this._DisplayText) a = !1; else {
a = this.actor.getXCenter();
var c = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = this.actor.getYCenter();
var d = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" ==
typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = this._Hero.getXCenter();
var e = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = this._Hero.getYCenter();
a = 40 > za.distance_between_points(c, d, e, null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" ==
typeof a ? parseFloat(a) : parseFloat(z.string(a)))
}
a && (this._DisplayText = !0);
this._DisplayText ? (a = this.actor.getXCenter(), c = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)), a = this.actor.getYCenter(), d = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)),
a = this._Hero.getXCenter(), e = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)), a = this._Hero.getYCenter(), a = 40 < za.distance_between_points(c, d, e, null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)))) : a = !1;
a && (this._DisplayText = !1)
}
if (this._PickedUp) if (this.actor.disableActorDrawing(),
0 < this.actor.getY()) this.actor.setYVelocity(-15); else if (!this._IncreaseLives) for (this._IncreaseLives = !0, this.actor.setYVelocity(0), a = h.engine, c = h.engine.getGameAttribute("Lives") + 1, a.gameAttributes.h.Lives = c, f.playSoundOnChannel(f.getSound(178), 5), a = 0, c = f.getActorsOfType(f.getActorType(188)); a < c.length;) d = [c[a]], ++a, null == d[0] || d[0].dead || d[0].recycled || d[0].getValue("ActorEvents_188", "_LifeAssignment") != h.engine.getGameAttribute("Lives") || (d[0].setAnimation("Flash"), f.runLater(500, function (a) {
return function (c) {
a[0].setAnimation("1");
f.recycleActor(b.actor)
}
}(d), this.actor))
}
}, _event_Drawing: function (a, b, c) {
if (this.wrapper.enabled) {
if (this._PickedUp && !this._IncreaseLives) {
a.drawActor = !1;
a.actor = null;
a.x = 0;
a.y = 0;
b = 208;
var d = 90, e = 94;
null == e && (e = 0);
null == d && (d = 0);
null == b && (b = 0);
b = b << 16 | d << 8 | e;
a.fillColor = 0 > b ? b + 16777216 : b;
a.alpha = .6;
b = 16 * Math.floor(this.actor.getXCenter() / f.getTileWidth());
c = 16 * Math.floor(this.actor.getYCenter() / f.getTileWidth());
b *= a.scaleX;
c *= a.scaleY;
d = 16 * a.scaleX;
e = 16 * a.scaleY;
!a.drawActor || null != a.actor && a.actor.isHUD ||
(a.x -= h.cameraX, a.y -= h.cameraY);
0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha);
a.graphics.beginFill(a.fillColor, a.alpha);
a.graphics.drawRect(a.x + b, a.y + c, d, e);
a.graphics.endFill();
a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY);
a.graphics.lineStyle()
}
0 < this._ScreenFlash && (a.drawActor = !1, a.actor = null, a.x = 0, a.y = 0, e = d = b = 255, null == e && (e = 0), null == d && (d = 0), null == b && (b = 0), b = b << 16 | d << 8 | e, a.fillColor = 0 > b ? b + 16777216 : b, a.alpha = this._ScreenFlash /
100, c = b = 0, d = f.getScreenWidth(), e = f.getScreenHeight(), b *= a.scaleX, c *= a.scaleY, d *= a.scaleX, e *= a.scaleY, !a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY), 0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha), a.graphics.beginFill(a.fillColor, a.alpha), a.graphics.drawRect(a.x + b, a.y + c, d, e), a.graphics.endFill(), a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY), a.graphics.lineStyle());
if (this._DisplayText && !this._PickedUp) {
d =
this.actor;
a.drawActor = !0;
a.actor = d;
d.smoothMove ? (b = d.drawX - Math.floor(d.cacheWidth / 2) - d.currOffset.x, c = d.drawY - Math.floor(d.cacheHeight / 2) - d.currOffset.y, a.x = b * a.scaleX, a.y = c * a.scaleY) : (a.x = d.colX * a.scaleX, a.y = d.colY * a.scaleY);
b = f.getFont(252);
null != b && b != a.font && (a.font = b);
null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + -9 * a.scaleX, c = a.y + -3 * a.scaleY) : (b = a.x + -9 * a.scaleX - h.cameraX, c = a.y + -3 * a.scaleY - h.cameraY) :
(b = a.x + -9 * a.scaleX, c = a.y + -3 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
var g = null;
d = a.font;
var l = "HEALTH!:" + d.ID + ":" + a.alpha + ":" + h.SCALE + ":" + d.get_letterSpacing();
Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, l) ? (d = ca.drawnStringCache.h[l], d.lifetime = 5, g = d.img) : (d = a.font.font.getTextWidth("HEALTH!", a.font.fontScale), e = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < d && 0 < e && (g = new ka(d, e, !0, 0), a.font.font.renderToImg(g, "HEALTH!", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), d = new vc, d.img =
g, d.lifetime = 5, ca.drawnStringCache.h[l] = d, ca.drawnStringCacheKeys.push(l)));
null != g && (a.graphics.beginBitmapFill(g, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, g.width, g.height), a.graphics.endFill())
}
}
}, _event_HitsHero: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = f.getActorType(18);
var d = a.otherActor.getType();
a = a.otherActor.getGroup();
c = c == d || c == a
} else c = !1;
if (c && !this._PickedUp) {
this._PickedUp = !0;
this._ScreenFlash = 95;
var e = this.attributeTweens.h._ScreenFlash;
null == e && (e = new ce, e.doOnUpdate(function () {
b._ScreenFlash =
e.value
}), this.attributeTweens.h._ScreenFlash = e);
e.tween(this._ScreenFlash, 0, Wa.linear, 300);
this.actor.disableActorDrawing();
c = 0;
for (d = f.getActorsOfType(f.getActorType(228)); c < d.length;) a = d[c], ++c, null == a || a.dead || a.recycled || f.recycleActor(a);
c = 0;
for (d = f.getActorsOfType(f.getActorType(154)); c < d.length;) a = d[c], ++c, null == a || a.dead || a.recycled || (a.setValue("ActorEvents_154", "_PassedLevel", !0), a.shout("_customEvent_open_door"))
}
}, init: function () {
for (var a = 0, b = f.getActorsOfType(f.getActorType(18)); a <
b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Hero = c)
}
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsHero))
}, forwardMessage: function (a) {
}, __class__: Xp
});
var Yp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Picked_Up = "_PickedUp";
this._PickedUp = !1;
this.nameMap.h.Screen_Flash = "_ScreenFlash";
this._ScreenFlash = 0;
this.nameMap.h.Upgrade_Type =
"_UpgradeType";
this._UpgradeType = 0;
this.nameMap.h.Hero = "_Hero";
this.nameMap.h.Display_Text = "_DisplayText";
this._DisplayText = !1;
this.nameMap.h.Order_RNG = "_OrderRNG";
this._OrderRNG = 0;
this.nameMap.h.Upgrade_Machinegun = "_UpgradeMachinegun";
this._UpgradeMachinegun = !1;
this.nameMap.h.Upgrade_Spread = "_UpgradeSpread";
this._UpgradeSpread = !1;
this.nameMap.h.Upgrade_Quad = "_UpgradeQuad";
this._UpgradeQuad = !1;
this.nameMap.h.Upgrade_Homing = "_UpgradeHoming";
this._UpgradeHoming = !1;
this.nameMap.h.Upgrade_Minetrail = "_UpgradeMinetrail";
this._UpgradeMinetrail = !1;
this.nameMap.h.Upgrade_Mines = "_UpgradeMines";
this._UpgradeMines = !1;
this.nameMap.h.Upgrade_Orbit = "_UpgradeOrbit";
this._UpgradeOrbit = !1;
this.nameMap.h.Upgrade_Shotgun = "_UpgradeShotgun";
this._UpgradeShotgun = !1;
this.nameMap.h.Right_Side_Upgrade = "_RightSideUpgrade";
this.nameMap.h.Left_Side_Upgrade = "_LeftSideUpgrade";
this._LeftSideUpgrade = !1
};
k["scripts.ActorEvents_228"] = Yp;
Yp.__name__ = "scripts.ActorEvents_228";
Yp.__super__ = P;
Yp.prototype = u(P.prototype, {
_PickedUp: null,
_ScreenFlash: null,
_UpgradeType: null,
_Hero: null,
_DisplayText: null,
_OrderRNG: null,
_UpgradeMachinegun: null,
_UpgradeSpread: null,
_UpgradeQuad: null,
_UpgradeHoming: null,
_UpgradeMinetrail: null,
_UpgradeMines: null,
_UpgradeOrbit: null,
_UpgradeShotgun: null,
_RightSideUpgrade: null,
_LeftSideUpgrade: null,
_event_Updating: function (a) {
if (this.wrapper.enabled) {
this._PickedUp && this.actor.disableActorDrawing();
if (this._DisplayText) a = !1; else {
a = this.actor.getXCenter();
var b = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a |
0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = this.actor.getYCenter();
var c = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = this._Hero.getXCenter();
var d = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" ==
typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = this._Hero.getYCenter();
a = 76 > za.distance_between_points(b, c, d, null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)))
}
a && (this._DisplayText = !0);
this._DisplayText ? (a = this.actor.getXCenter(), b = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" ==
typeof a ? parseFloat(a) : parseFloat(z.string(a)), a = this.actor.getYCenter(), c = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)), a = this._Hero.getXCenter(), d = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)), a = this._Hero.getYCenter(), a =
76 < za.distance_between_points(b, c, d, null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)))) : a = !1;
a && (this._DisplayText = !1)
}
},
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled) if (0 < this._ScreenFlash) {
a.drawActor = !1;
a.actor = null;
a.x = 0;
a.y = 0;
b = 68;
var d = 209, e = 255;
null == e && (e = 0);
null == d && (d = 0);
null == b && (b = 0);
b = b << 16 | d << 8 | e;
a.fillColor = 0 > b ? b + 16777216 : b;
a.alpha = this._ScreenFlash /
100;
c = b = 0;
d = f.getScreenWidth();
e = f.getScreenHeight();
b *= a.scaleX;
c *= a.scaleY;
d *= a.scaleX;
e *= a.scaleY;
!a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY);
0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha);
a.graphics.beginFill(a.fillColor, a.alpha);
a.graphics.drawRect(a.x + b, a.y + c, d, e);
a.graphics.endFill();
a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY);
a.graphics.lineStyle()
} else if (this._DisplayText) {
d = this.actor;
a.drawActor = !0;
a.actor = d;
d.smoothMove ? (b = d.drawX - Math.floor(d.cacheWidth / 2) - d.currOffset.x, c = d.drawY - Math.floor(d.cacheHeight / 2) - d.currOffset.y, a.x = b * a.scaleX, a.y = c * a.scaleY) : (a.x = d.colX * a.scaleX, a.y = d.colY * a.scaleY);
b = f.getFont(252);
null != b && b != a.font && (a.font = b);
if ("Title" == f.getCurrentSceneName()) {
null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + -49 * a.scaleX, c = a.y + 32 * a.scaleY) : (b = a.x + -49 * a.scaleX - h.cameraX,
c = a.y + 32 * a.scaleY - h.cameraY) : (b = a.x + -49 * a.scaleX, c = a.y + 32 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
var g = null;
d = a.font;
var l = "WATCH VIDEO FOR:" + d.ID + ":" + a.alpha + ":" + h.SCALE + ":" + d.get_letterSpacing();
Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, l) ? (d = ca.drawnStringCache.h[l], d.lifetime = 5, g = d.img) : (d = a.font.font.getTextWidth("WATCH VIDEO FOR", a.font.fontScale), e = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < d && 0 < e && (g = new ka(d, e, !0, 0), a.font.font.renderToImg(g, "WATCH VIDEO FOR",
0, a.alpha, 0, 0, a.font.fontScale, 0, !1), d = new vc, d.img = g, d.lifetime = 5, ca.drawnStringCache.h[l] = d, ca.drawnStringCacheKeys.push(l)));
null != g && (a.graphics.beginBitmapFill(g, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, g.width, g.height), a.graphics.endFill());
null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + -52 * a.scaleX, c = a.y + 40 * a.scaleY) : (b = a.x + -52 * a.scaleX - h.cameraX, c = a.y + 40 * a.scaleY - h.cameraY) : (b = a.x + -52 * a.scaleX,
c = a.y + 40 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
g = null;
d = a.font;
l = "WEAPON UPGRADE!:" + d.ID + ":" + a.alpha + ":" + h.SCALE + ":" + d.get_letterSpacing();
Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, l) ? (d = ca.drawnStringCache.h[l], d.lifetime = 5, g = d.img) : (d = a.font.font.getTextWidth("WEAPON UPGRADE!", a.font.fontScale), e = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < d && 0 < e && (g = new ka(d, e, !0, 0), a.font.font.renderToImg(g, "WEAPON UPGRADE!", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), d = new vc, d.img = g,
d.lifetime = 5, ca.drawnStringCache.h[l] = d, ca.drawnStringCacheKeys.push(l)))
} else null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE)), a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + -12 * a.scaleX, c = a.y + -7 * a.scaleY) : (b = a.x + -12 * a.scaleX - h.cameraX, c = a.y + -7 * a.scaleY - h.cameraY) : (b = a.x + -12 * a.scaleX, c = a.y + -7 * a.scaleY), a.mtx.identity(), a.mtx.translate(b, c), g = null, d = a.font, l = "UPGRADE!:" + d.ID + ":" + a.alpha + ":" + h.SCALE + ":" + d.get_letterSpacing(), Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h,
l) ? (d = ca.drawnStringCache.h[l], d.lifetime = 5, g = d.img) : (d = a.font.font.getTextWidth("UPGRADE!", a.font.fontScale), e = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < d && 0 < e && (g = new ka(d, e, !0, 0), a.font.font.renderToImg(g, "UPGRADE!", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), d = new vc, d.img = g, d.lifetime = 5, ca.drawnStringCache.h[l] = d, ca.drawnStringCacheKeys.push(l)));
null != g && (a.graphics.beginBitmapFill(g, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, g.width, g.height), a.graphics.endFill())
}
},
_event_HitsHero: function (a) {
var b =
this;
if (this.wrapper.enabled) {
var c = f.getActorType(18);
var d = a.otherActor.getType();
a = a.otherActor.getGroup();
c = c == d || c == a
} else c = !1;
if (c && !this._PickedUp) {
this._PickedUp = !0;
this._ScreenFlash = 95;
var e = this.attributeTweens.h._ScreenFlash;
null == e && (e = new ce, e.doOnUpdate(function () {
b._ScreenFlash = e.value
}), this.attributeTweens.h._ScreenFlash = e);
e.tween(this._ScreenFlash, 0, Wa.linear, 300);
ya.adBlocked || (f.engine.pause(), ya.sendGameplayStop(), ya.rewardedBreak(function () {
f.engine.unpause();
f.runLater(500,
function (a) {
b._customEvent_upgrade();
ya.sendGameplayStart()
}, b.actor)
}))
}
},
_customEvent_choose_upgrade: function () {
this._LeftSideUpgrade && (this._UpgradeMachinegun = h.engine.getGameAttribute("Upgrade_Machinegun"), this._UpgradeSpread = h.engine.getGameAttribute("Upgrade_Spread"), this._UpgradeQuad = h.engine.getGameAttribute("Upgrade_Quad"), this._UpgradeHoming = h.engine.getGameAttribute("Upgrade_Homing"), this._UpgradeMines = h.engine.getGameAttribute("Upgrade_Mines"), this._UpgradeMinetrail = h.engine.getGameAttribute("Upgrade_Minetrail"),
this._UpgradeOrbit = h.engine.getGameAttribute("Upgrade_Orbit"), this._UpgradeShotgun = h.engine.getGameAttribute("Upgrade_Shotgun"));
this._LeftSideUpgrade && (this._OrderRNG = f.randomInt(1, 5));
1 == this._OrderRNG ? this._customEvent_order_1() : 2 == this._OrderRNG ? this._customEvent_order_2() : 3 == this._OrderRNG ? this._customEvent_order_3() : 4 == this._OrderRNG ? this._customEvent_order_4() : 5 == this._OrderRNG && this._customEvent_order_5()
},
_customEvent_order_1: function () {
this._UpgradeMachinegun ? this._UpgradeSpread ? this._UpgradeQuad ?
this._UpgradeHoming ? this._UpgradeMines ? this._UpgradeMinetrail ? this._UpgradeOrbit ? this._UpgradeShotgun || (this._UpgradeType = 7) : this._UpgradeType = 6 : this._UpgradeType = 5 : this._UpgradeType = 4 : this._UpgradeType = 3 : this._UpgradeType = 2 : this._UpgradeType = 1 : this._UpgradeType = 0;
this.actor.setAnimation("" + this._UpgradeType);
this._LeftSideUpgrade && "Title" != f.getCurrentSceneName() && this._customEvent_spawn_right_upgrade()
},
_customEvent_order_2: function () {
this._UpgradeHoming ? this._UpgradeMines ? this._UpgradeQuad ? this._UpgradeMinetrail ?
this._UpgradeSpread ? this._UpgradeOrbit ? this._UpgradeMachinegun ? this._UpgradeShotgun || (this._UpgradeType = 7) : this._UpgradeType = 0 : this._UpgradeType = 6 : this._UpgradeType = 1 : this._UpgradeType = 5 : this._UpgradeType = 2 : this._UpgradeType = 4 : this._UpgradeType = 3;
this.actor.setAnimation("" + this._UpgradeType);
this._LeftSideUpgrade && "Title" != f.getCurrentSceneName() && this._customEvent_spawn_right_upgrade()
},
_customEvent_order_3: function () {
this._UpgradeShotgun ? this._UpgradeOrbit ? this._UpgradeMinetrail ? this._UpgradeMines ?
this._UpgradeHoming ? this._UpgradeQuad ? this._UpgradeSpread ? this._UpgradeMachinegun || (this._UpgradeType = 0) : this._UpgradeType = 1 : this._UpgradeType = 2 : this._UpgradeType = 3 : this._UpgradeType = 4 : this._UpgradeType = 5 : this._UpgradeType = 6 : this._UpgradeType = 7;
this.actor.setAnimation("" + this._UpgradeType);
this._LeftSideUpgrade && "Title" != f.getCurrentSceneName() && this._customEvent_spawn_right_upgrade()
},
_customEvent_order_4: function () {
this._UpgradeSpread ? this._UpgradeHoming ? this._UpgradeMinetrail ? this._UpgradeShotgun ?
this._UpgradeMachinegun ? this._UpgradeQuad ? this._UpgradeMines ? this._UpgradeOrbit || (this._UpgradeType = 6) : this._UpgradeType = 4 : this._UpgradeType = 2 : this._UpgradeType = 0 : this._UpgradeType = 7 : this._UpgradeType = 5 : this._UpgradeType = 3 : this._UpgradeType = 1;
this.actor.setAnimation("" + this._UpgradeType);
this._LeftSideUpgrade && "Title" != f.getCurrentSceneName() && this._customEvent_spawn_right_upgrade()
},
_customEvent_order_5: function () {
this._UpgradeOrbit ? this._UpgradeMines ? this._UpgradeQuad ? this._UpgradeMachinegun ? this._UpgradeShotgun ?
this._UpgradeMinetrail ? this._UpgradeHoming ? this._UpgradeSpread || (this._UpgradeType = 1) : this._UpgradeType = 3 : this._UpgradeType = 5 : this._UpgradeType = 7 : this._UpgradeType = 0 : this._UpgradeType = 2 : this._UpgradeType = 4 : this._UpgradeType = 6;
this.actor.setAnimation("" + this._UpgradeType);
this._LeftSideUpgrade && "Title" != f.getCurrentSceneName() && this._customEvent_spawn_right_upgrade()
},
_customEvent_spawn_right_upgrade: function () {
if (3 > h.engine.getGameAttribute("Lives")) f.createRecycledActor(f.getActorType(226), 335, 117,
0); else {
f.createRecycledActor(f.getActorType(228), 335, 117, 0);
f.getLastCreatedActor().setValue("ActorEvents_228", "_UpgradeType", f.randomInt(1, 7));
this._RightSideUpgrade = f.getLastCreatedActor();
this._RightSideUpgrade.setValue("ActorEvents_228", "_UpgradeMachinegun", this._UpgradeMachinegun);
this._RightSideUpgrade.setValue("ActorEvents_228", "_UpgradeSpread", this._UpgradeSpread);
this._RightSideUpgrade.setValue("ActorEvents_228", "_UpgradeQuad", this._UpgradeQuad);
this._RightSideUpgrade.setValue("ActorEvents_228",
"_UpgradeHoming", this._UpgradeHoming);
this._RightSideUpgrade.setValue("ActorEvents_228", "_UpgradeMines", this._UpgradeMines);
this._RightSideUpgrade.setValue("ActorEvents_228", "_UpgradeMinetrail", this._UpgradeMinetrail);
this._RightSideUpgrade.setValue("ActorEvents_228", "_UpgradeOrbit", this._UpgradeOrbit);
this._RightSideUpgrade.setValue("ActorEvents_228", "_UpgradeShotgun", this._UpgradeShotgun);
for (this._RightSideUpgrade.setValue("ActorEvents_228", "_OrderRNG", f.randomInt(1, 5)); this._OrderRNG == this._RightSideUpgrade.getValue("ActorEvents_228",
"_OrderRNG");) this._RightSideUpgrade.setValue("ActorEvents_228", "_OrderRNG", f.randomInt(1, 5));
this._RightSideUpgrade.shout("_customEvent_choose_upgrade")
}
},
_customEvent_upgrade: function () {
var a = this;
0 == this._UpgradeType ? h.engine.gameAttributes.h.Upgrade_Machinegun = !0 : 1 == this._UpgradeType ? h.engine.gameAttributes.h.Upgrade_Spread = !0 : 2 == this._UpgradeType ? h.engine.gameAttributes.h.Upgrade_Quad = !0 : 3 == this._UpgradeType ? h.engine.gameAttributes.h.Upgrade_Homing = !0 : 4 == this._UpgradeType ? h.engine.gameAttributes.h.Upgrade_Mines =
!0 : 5 == this._UpgradeType ? h.engine.gameAttributes.h.Upgrade_Minetrail = !0 : 6 == this._UpgradeType ? h.engine.gameAttributes.h.Upgrade_Orbit = !0 : 7 == this._UpgradeType && (h.engine.gameAttributes.h.Upgrade_Shotgun = !0);
for (var b = 0, c = f.getActorsOfType(f.getActorType(154)); b < c.length;) {
var d = c[b];
++b;
null == d || d.dead || d.recycled || (d.setValue("ActorEvents_154", "_PassedLevel", !0), d.shout("_customEvent_open_door"))
}
b = 0;
for (c = f.getActorsOfType(f.getActorType(228)); b < c.length;) d = c[b], ++b, null == d || d.dead || d.recycled || 32 <
Math.abs(za.distance_to_target(d, this.actor)) && f.recycleActor(d);
f.playSoundOnChannel(f.getSound(266), f.randomInt(6, 29));
b = 0;
for (c = f.getActorsOfType(f.getActorType(226)); b < c.length;) d = c[b], ++b, null == d || d.dead || d.recycled || f.recycleActor(d);
b = 0;
for (c = f.getActorsOfType(f.getActorType(256)); b < c.length;) d = c[b], ++b, null == d || d.dead || d.recycled || f.recycleActor(d);
f.startShakingScreen(.003, .3);
f.runLater(300, function (b) {
f.recycleActor(a.actor)
}, this.actor)
},
init: function () {
for (var a = this, b = 0, c = f.getActorsOfType(f.getActorType(18)); b <
c.length;) {
var d = c[b];
++b;
null == d || d.dead || d.recycled || (this._Hero = d)
}
this._UpgradeType = f.randomInt(1, 7);
f.runLater(50, function (b) {
a._LeftSideUpgrade && a._customEvent_choose_upgrade()
}, this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsHero))
},
forwardMessage: function (a) {
},
__class__: Yp
});
var Zp = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Hit =
"_Hit";
this._Hit = !1
};
k["scripts.ActorEvents_23"] = Zp;
Zp.__name__ = "scripts.ActorEvents_23";
Zp.__super__ = P;
Zp.prototype = u(P.prototype, {
_Hit: null, _event_Updating: function (a) {
this.wrapper.enabled && ((16 > this.actor.getY() || this.actor.getY() > f.getSceneHeight() - 32) && !this._Hit && (this._Hit = !0, this._customEvent_got_hit()), (26 > this.actor.getX() || this.actor.getX() > f.getSceneWidth() - 36) && !this._Hit && (this._Hit = !0, this._customEvent_got_hit()))
}, _customEvent_got_hit: function () {
f.createRecycledActor(f.getActorType(67),
this.actor.getX() - 8, this.actor.getY() - 8, 2);
f.getLastCreatedActor().shout("_customEvent_splosion_bullet");
f.recycleActor(this.actor)
}, init: function () {
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
}, forwardMessage: function (a) {
}, __class__: Zp
});
var $p = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_230"] = $p;
$p.__name__ = "scripts.ActorEvents_230";
$p.__super__ = P;
$p.prototype = u(P.prototype, {
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled) {
b = 68;
c = 209;
var d = 255;
null == d &&
(d = 0);
null == c && (c = 0);
null == b && (b = 0);
b = b << 16 | c << 8 | d;
a.fillColor = 0 > b ? b + 16777216 : b;
a.alpha = .6;
c = b = 8;
d = this.actor.getWidth() / 2;
var e = this.actor.getHeight() / 2;
b *= a.scaleX;
c *= a.scaleY;
d *= a.scaleX;
e *= a.scaleY;
!a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY);
0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha);
a.graphics.beginFill(a.fillColor, a.alpha);
a.graphics.drawRect(a.x + b, a.y + c, d, e);
a.graphics.endFill();
a.drawActor && !a.actor.isHUD &&
(a.x += h.cameraX, a.y += h.cameraY);
a.graphics.lineStyle()
}
}, init: function () {
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing))
}, forwardMessage: function (a) {
}, __class__: $p
});
var aq = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_232"] = aq;
aq.__name__ = "scripts.ActorEvents_232";
aq.__super__ = P;
aq.prototype = u(P.prototype, {
init: function () {
var a = this;
f.runLater(700, function (b) {
f.recycleActor(a.actor)
}, this.actor)
}, forwardMessage: function (a) {
}, __class__: aq
});
var bq = function (a, b, c) {
P.call(this,
b)
};
k["scripts.ActorEvents_234"] = bq;
bq.__name__ = "scripts.ActorEvents_234";
bq.__super__ = P;
bq.prototype = u(P.prototype, {
init: function () {
this.actor.moveToBottom()
}, forwardMessage: function (a) {
}, __class__: bq
});
var cq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Talking_To_Hero = "_TalkingToHero";
this._TalkingToHero = !1;
this.nameMap.h.Hero = "_Hero";
this.nameMap.h.Phrase = "_Phrase";
this._Phrase = ""
};
k["scripts.ActorEvents_241"] = cq;
cq.__name__ = "scripts.ActorEvents_241";
cq.__super__ = P;
cq.prototype = u(P.prototype,
{
_TalkingToHero: null, _Hero: null, _Phrase: null, _event_Updating: function (a) {
if (this.wrapper.enabled) {
a = this.actor.getXCenter();
var b = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = this.actor.getYCenter();
var c = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) :
parseFloat(z.string(a));
a = this._Hero.getXCenter();
var d = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = this._Hero.getYCenter();
16 > za.distance_between_points(b, c, d, null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a))) && !this._TalkingToHero &&
(this._TalkingToHero = !0, this._Phrase = "" + z.string(f.getValueForScene("SceneEvents_18", "_ClonePhrases")[f.randomInt(0, 21)]));
a = this.actor.getXCenter();
b = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = this.actor.getYCenter();
c = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" ==
typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = this._Hero.getXCenter();
d = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = this._Hero.getYCenter();
16 < za.distance_between_points(b, c, d, null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a))) &&
this._TalkingToHero && (this._TalkingToHero = !1)
}
}, _event_Drawing: function (a, b, c) {
if (this.wrapper.enabled && this._TalkingToHero) {
c = f.getFont(252);
null != c && c != a.font && (a.font = c);
if (this.actor.getX() < f.getScreenWidth() / 2) {
c = this._Phrase;
null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE));
if (a.drawActor) if (null != a.actor && a.actor.isHUD) {
b = a.x + 0 * a.scaleX;
var d = a.y + -8 * a.scaleY
} else b = a.x + 0 * a.scaleX - h.cameraX, d = a.y + -8 * a.scaleY - h.cameraY; else b = a.x + 0 * a.scaleX, d = a.y + -8 * a.scaleY;
a.mtx.identity();
a.mtx.translate(b, d);
var e = null, g = a.font;
g = c + ":" + g.ID + ":" + a.alpha + ":" + h.SCALE + ":" + g.get_letterSpacing();
if (Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, g)) c = ca.drawnStringCache.h[g], c.lifetime = 5, e = c.img; else {
var l = a.font.font.getTextWidth(c, a.font.fontScale),
k = a.font.font.getFontHeight() * a.font.fontScale | 0;
0 < l && 0 < k && (e = new ka(l, k, !0, 0), a.font.font.renderToImg(e, c, 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), c = new vc, c.img = e, c.lifetime = 5, ca.drawnStringCache.h[g] = c, ca.drawnStringCacheKeys.push(g))
}
} else c =
this._Phrase, b = -(f.getFont(217).getTextWidth(this._Phrase) / h.SCALE) + 10, null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE)), a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + b * a.scaleX, d = a.y + -8 * a.scaleY) : (b = a.x + b * a.scaleX - h.cameraX, d = a.y + -8 * a.scaleY - h.cameraY) : (b = a.x + b * a.scaleX, d = a.y + -8 * a.scaleY), a.mtx.identity(), a.mtx.translate(b, d), e = null, g = a.font, g = c + ":" + g.ID + ":" + a.alpha + ":" + h.SCALE + ":" + g.get_letterSpacing(), Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h,
g) ? (c = ca.drawnStringCache.h[g], c.lifetime = 5, e = c.img) : (l = a.font.font.getTextWidth(c, a.font.fontScale), k = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < l && 0 < k && (e = new ka(l, k, !0, 0), a.font.font.renderToImg(e, c, 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), c = new vc, c.img = e, c.lifetime = 5, ca.drawnStringCache.h[g] = c, ca.drawnStringCacheKeys.push(g)));
null != e && (a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, d, e.width, e.height), a.graphics.endFill())
}
}, init: function () {
for (var a = 0, b = f.getActorsOfType(f.getActorType(18)); a <
b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Hero = c)
}
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing))
}, forwardMessage: function (a) {
}, __class__: cq
});
var dq = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_245"] = dq;
dq.__name__ = "scripts.ActorEvents_245";
dq.__super__ = P;
dq.prototype = u(P.prototype, {
init: function () {
}, forwardMessage: function (a) {
}, __class__: dq
});
var eq = function (a, b, c) {
P.call(this,
b);
this.nameMap.h.Game_Paused = "_GamePaused";
this._GamePaused = !1
};
k["scripts.ActorEvents_247"] = eq;
eq.__name__ = "scripts.ActorEvents_247";
eq.__super__ = P;
eq.prototype = u(P.prototype, {
_GamePaused: null, _event_OnActor: function (a) {
this.wrapper.enabled && 3 == a && (50 == h.engine.getGameAttribute("Volume") ? (h.engine.gameAttributes.h.Volume = 0, this.actor.setAnimation("1")) : (h.engine.gameAttributes.h.Volume = 50, this.actor.setAnimation("0")), f.setVolumeForAllSounds(h.engine.getGameAttribute("Volume") / 100), f.setVolumeForChannel(h.engine.getGameAttribute("Volume") /
2 / 100, 0))
}, _event_Msound: function (a, b) {
this.wrapper.enabled && a && (50 == h.engine.getGameAttribute("Volume") ? (h.engine.gameAttributes.h.Volume = 0, this.actor.setAnimation("1")) : (h.engine.gameAttributes.h.Volume = 50, this.actor.setAnimation("0")), f.setVolumeForAllSounds(h.engine.getGameAttribute("Volume") / 100), f.setVolumeForChannel(h.engine.getGameAttribute("Volume") / 2 / 100, 0))
}, init: function () {
50 == h.engine.getGameAttribute("Volume") && this.actor.setAnimation("0");
0 == h.engine.getGameAttribute("Volume") && this.actor.setAnimation("1");
this.addListener(this.actor.whenMousedOver, q(this, this._event_OnActor));
this.addListener(f.engine.whenKeyPressedEvents.getOrCreateEvent("M"), q(this, this._event_Msound))
}, forwardMessage: function (a) {
}, __class__: eq
});
var fq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Active = "_Active";
this._Active = !1;
this.nameMap.h.Countdown = "_Countdown";
this._Countdown = 8;
this.nameMap.h.Countdown_Ended = "_CountdownEnded";
this._CountdownEnded = !1;
this.nameMap.h.buttonWasClicked = "_buttonWasClicked";
this._buttonWasClicked =
!1
};
k["scripts.ActorEvents_250"] = fq;
fq.__name__ = "scripts.ActorEvents_250";
fq.__super__ = P;
fq.prototype = u(P.prototype, {
_Active: null,
_Countdown: null,
_CountdownEnded: null,
_buttonWasClicked: null,
_event_Updating: function (a) {
this.wrapper.enabled && (ya.adBlocked || (this._Active ? this.actor.setAnimation("1") : this.actor.setAnimation("0")))
},
_event_left: function (a, b) {
this.wrapper.enabled && a && !ya.adBlocked && (this._Active = !this._Active)
},
_event_right: function (a, b) {
this.wrapper.enabled && a && !ya.adBlocked && (this._Active =
!this._Active)
},
_event_enter: function (a, b) {
this.wrapper.enabled && a && !ya.adBlocked && this._Active && !h.engine.getGameAttribute("adIsPlaying") && (this._buttonWasClicked = !0, this._customEvent_rewardToContinue())
},
_event_MouseOver: function (a) {
if (this.wrapper.enabled && 1 == a && !ya.adBlocked) {
this._Active = !0;
a = 0;
for (var b = f.getActorsOfType(f.getActorType(176)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c.setValue("ActorEvents_176", "_Active", !1)
}
}
},
_event_MouseClick: function (a) {
this.wrapper.enabled &&
3 == a && (ya.adBlocked || this._customEvent_rewardToContinue())
},
_customEvent_rewardToContinue: function () {
var a = this;
this._Active && (h.engine.gameAttributes.h.Can_Continue = !1, h.engine.gameAttributes.h.adIsPlaying = !0, f.engine.pause(), ya.rewardedBreak(function () {
f.engine.unpause();
h.engine.gameAttributes.h.adIsPlaying = !1;
a._buttonWasClicked = !1;
a.actor.setAnimation("2");
var b = 204, c = 204, d = 204;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
var e = f.createFadeOut(.3, b << 16 | c << 8 | d);
d = c = b = 204;
null == d && (d = 0);
null ==
c && (c = 0);
null == b && (b = 0);
f.reloadCurrentScene(e, f.createFadeIn(.3, b << 16 | c << 8 | d))
}))
},
init: function () {
var a = this;
this._Active = !0;
ya.adBlocked ? this.actor.setAnimation("0") : (this.actor.setAnimation("1"), this._Countdown = 8, this._buttonWasClicked = !1, f.runPeriodically(800, function (b) {
--a._Countdown
}, this.actor));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(f.engine.whenKeyPressedEvents.getOrCreateEvent("left"), q(this, this._event_left));
this.addListener(f.engine.whenKeyPressedEvents.getOrCreateEvent("right"),
q(this, this._event_right));
this.addListener(f.engine.whenKeyPressedEvents.getOrCreateEvent("enter"), q(this, this._event_enter));
this.addListener(this.actor.whenMousedOver, q(this, this._event_MouseOver));
this.addListener(this.actor.whenMousedOver, q(this, this._event_MouseClick))
},
forwardMessage: function (a) {
},
__class__: fq
});
var gq = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_253"] = gq;
gq.__name__ = "scripts.ActorEvents_253";
gq.__super__ = P;
gq.prototype = u(P.prototype, {
_event_Drawing: function (a, b,
c) {
if (this.wrapper.enabled) {
c = this.actor;
a.drawActor = !0;
a.actor = c;
c.smoothMove ? (b = c.drawX - Math.floor(c.cacheWidth / 2) - c.currOffset.x, c = c.drawY - Math.floor(c.cacheHeight / 2) - c.currOffset.y, a.x = b * a.scaleX, a.y = c * a.scaleY) : (a.x = c.colX * a.scaleX, a.y = c.colY * a.scaleY);
b = f.getFont(255);
null != b && b != a.font && (a.font = b);
if ("Title" == f.getCurrentSceneName()) {
null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + 2 * a.scaleX, c = a.y + -8 *
a.scaleY) : (b = a.x + 2 * a.scaleX - h.cameraX, c = a.y + -8 * a.scaleY - h.cameraY) : (b = a.x + 2 * a.scaleX, c = a.y + -8 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
var d = null, e = a.font;
e = "BEST TIME:" + e.ID + ":" + a.alpha + ":" + h.SCALE + ":" + e.get_letterSpacing();
if (Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, e)) {
var g = ca.drawnStringCache.h[e];
g.lifetime = 5;
d = g.img
} else {
var l = a.font.font.getTextWidth("BEST TIME", a.font.fontScale),
k = a.font.font.getFontHeight() * a.font.fontScale | 0;
0 < l && 0 < k && (d = new ka(l, k, !0, 0), a.font.font.renderToImg(d,
"BEST TIME", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), g = new vc, g.img = d, g.lifetime = 5, ca.drawnStringCache.h[e] = g, ca.drawnStringCacheKeys.push(e))
}
null != d && (a.graphics.beginBitmapFill(d, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, d.width, d.height), a.graphics.endFill());
1 <= h.engine.getGameAttribute("Speedrun_Best") ? (g = "" + Math.floor(h.engine.getGameAttribute("Speedrun_Best") / 1E3 / 60) + ":" + ("" + h.engine.getGameAttribute("Speedrun_Best") / 1E3 % 60).substring(0, 4), null == a.font && (a.font = a.defaultFont, a.font.fontScale !=
h.SCALE && (a.font.fontScale = h.SCALE)), a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + 6 * a.scaleX, c = a.y + 3 * a.scaleY) : (b = a.x + 6 * a.scaleX - h.cameraX, c = a.y + 3 * a.scaleY - h.cameraY) : (b = a.x + 6 * a.scaleX, c = a.y + 3 * a.scaleY), a.mtx.identity(), a.mtx.translate(b, c), d = null, e = a.font, e = g + ":" + e.ID + ":" + a.alpha + ":" + h.SCALE + ":" + e.get_letterSpacing(), Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, e) ? (g = ca.drawnStringCache.h[e], g.lifetime = 5, d = g.img) : (l = a.font.font.getTextWidth(g, a.font.fontScale), k = a.font.font.getFontHeight() *
a.font.fontScale | 0, 0 < l && 0 < k && (d = new ka(l, k, !0, 0), a.font.font.renderToImg(d, g, 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), g = new vc, g.img = d, g.lifetime = 5, ca.drawnStringCache.h[e] = g, ca.drawnStringCacheKeys.push(e)))) : (null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE)), a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + 8 * a.scaleX, c = a.y + 3 * a.scaleY) : (b = a.x + 8 * a.scaleX - h.cameraX, c = a.y + 3 * a.scaleY - h.cameraY) : (b = a.x + 8 * a.scaleX, c = a.y + 3 * a.scaleY), a.mtx.identity(), a.mtx.translate(b,
c), d = null, e = a.font, e = "- - - -:" + e.ID + ":" + a.alpha + ":" + h.SCALE + ":" + e.get_letterSpacing(), Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, e) ? (g = ca.drawnStringCache.h[e], g.lifetime = 5, d = g.img) : (l = a.font.font.getTextWidth("- - - -", a.font.fontScale), k = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < l && 0 < k && (d = new ka(l, k, !0, 0), a.font.font.renderToImg(d, "- - - -", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), g = new vc, g.img = d, g.lifetime = 5, ca.drawnStringCache.h[e] = g, ca.drawnStringCacheKeys.push(e))));
null !=
d && (a.graphics.beginBitmapFill(d, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, d.width, d.height), a.graphics.endFill())
}
"1" == f.getCurrentSceneName() && (null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE)), a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + a.scaleX, c = a.y + -8 * a.scaleY) : (b = a.x + a.scaleX - h.cameraX, c = a.y + -8 * a.scaleY - h.cameraY) : (b = a.x + a.scaleX, c = a.y + -8 * a.scaleY), a.mtx.identity(), a.mtx.translate(b, c), d = null, e = a.font, e = "YOUR TIME:" + e.ID + ":" + a.alpha + ":" + h.SCALE +
":" + e.get_letterSpacing(), Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, e) ? (g = ca.drawnStringCache.h[e], g.lifetime = 5, d = g.img) : (l = a.font.font.getTextWidth("YOUR TIME", a.font.fontScale), k = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < l && 0 < k && (d = new ka(l, k, !0, 0), a.font.font.renderToImg(d, "YOUR TIME", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), g = new vc, g.img = d, g.lifetime = 5, ca.drawnStringCache.h[e] = g, ca.drawnStringCacheKeys.push(e))), null != d && (a.graphics.beginBitmapFill(d, a.mtx, !1, aa.antialias),
a.graphics.drawRect(b, c, d.width, d.height), a.graphics.endFill()))
}
}, init: function () {
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing))
}, forwardMessage: function (a) {
}, __class__: gq
});
var hq = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_256"] = hq;
hq.__name__ = "scripts.ActorEvents_256";
hq.__super__ = P;
hq.prototype = u(P.prototype, {
init: function () {
}, forwardMessage: function (a) {
}, __class__: hq
});
var iq = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_258"] = iq;
iq.__name__ = "scripts.ActorEvents_258";
iq.__super__ = P;
iq.prototype = u(P.prototype, {
init: function () {
}, forwardMessage: function (a) {
}, __class__: iq
});
var jq = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_260"] = jq;
jq.__name__ = "scripts.ActorEvents_260";
jq.__super__ = P;
jq.prototype = u(P.prototype, {
init: function () {
}, forwardMessage: function (a) {
}, __class__: jq
});
var kq = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_262"] = kq;
kq.__name__ = "scripts.ActorEvents_262";
kq.__super__ = P;
kq.prototype = u(P.prototype, {
init: function () {
}, forwardMessage: function (a) {
},
__class__: kq
});
var lq = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_264"] = lq;
lq.__name__ = "scripts.ActorEvents_264";
lq.__super__ = P;
lq.prototype = u(P.prototype, {
init: function () {
}, forwardMessage: function (a) {
}, __class__: lq
});
var mq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Picked_Up = "_PickedUp";
this._PickedUp = !1;
this.nameMap.h.Increase_Lives = "_IncreaseLives";
this._IncreaseLives = !1;
this.nameMap.h.Screen_Flash = "_ScreenFlash";
this._ScreenFlash = 0;
this.nameMap.h.Hero = "_Hero";
this.nameMap.h.Display_Text =
"_DisplayText";
this._DisplayText = !1
};
k["scripts.ActorEvents_267"] = mq;
mq.__name__ = "scripts.ActorEvents_267";
mq.__super__ = P;
mq.prototype = u(P.prototype, {
_PickedUp: null,
_IncreaseLives: null,
_ScreenFlash: null,
_Hero: null,
_DisplayText: null,
_event_Updating: function (a) {
var b = this;
if (this.wrapper.enabled && this.actor.isAlive()) {
if (!this._PickedUp) {
if (this._DisplayText) a = !1; else {
a = this.actor.getXCenter();
var c = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" ==
typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = this.actor.getYCenter();
var d = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = this._Hero.getXCenter();
var e = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = this._Hero.getYCenter();
a = 40 > za.distance_between_points(c, d, e, null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)))
}
a && (this._DisplayText = !0);
this._DisplayText ? (a = this.actor.getXCenter(), c = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)),
a = this.actor.getYCenter(), d = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)), a = this._Hero.getXCenter(), e = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)), a = this._Hero.getYCenter(), a = 40 < za.distance_between_points(c, d, e, null == a ? 0 : "number" ==
typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)))) : a = !1;
a && (this._DisplayText = !1)
}
if (this._PickedUp) if (this.actor.disableActorDrawing(), 0 < this.actor.getY()) this.actor.setYVelocity(-15); else if (!this._IncreaseLives) for (this._IncreaseLives = !0, this.actor.setYVelocity(0), a = h.engine, c = h.engine.getGameAttribute("Lives") + 1, a.gameAttributes.h.Lives = c, a = 0, c = f.getActorsOfType(f.getActorType(188)); a <
c.length;) d = [c[a]], ++a, null == d[0] || d[0].dead || d[0].recycled || d[0].getValue("ActorEvents_188", "_LifeAssignment") != h.engine.getGameAttribute("Lives") || (d[0].setAnimation("Flash"), f.runLater(500, function (a) {
return function (c) {
a[0].setAnimation("1");
f.recycleActor(b.actor)
}
}(d), this.actor))
}
},
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled) {
if (this._PickedUp && !this._IncreaseLives) {
a.drawActor = !1;
a.actor = null;
a.x = 0;
a.y = 0;
b = 208;
var d = 90, e = 94;
null == e && (e = 0);
null == d && (d = 0);
null == b && (b = 0);
b = b << 16 | d <<
8 | e;
a.fillColor = 0 > b ? b + 16777216 : b;
a.alpha = .6;
b = 16 * Math.floor(this.actor.getXCenter() / f.getTileWidth());
c = 16 * Math.floor(this.actor.getYCenter() / f.getTileWidth());
b *= a.scaleX;
c *= a.scaleY;
d = 16 * a.scaleX;
e = 16 * a.scaleY;
!a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY);
0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha);
a.graphics.beginFill(a.fillColor, a.alpha);
a.graphics.drawRect(a.x + b, a.y + c, d, e);
a.graphics.endFill();
a.drawActor &&
!a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY);
a.graphics.lineStyle()
}
0 < this._ScreenFlash && (a.drawActor = !1, a.actor = null, a.x = 0, a.y = 0, e = d = b = 255, null == e && (e = 0), null == d && (d = 0), null == b && (b = 0), b = b << 16 | d << 8 | e, a.fillColor = 0 > b ? b + 16777216 : b, a.alpha = this._ScreenFlash / 100, c = b = 0, d = f.getScreenWidth(), e = f.getScreenHeight(), b *= a.scaleX, c *= a.scaleY, d *= a.scaleX, e *= a.scaleY, !a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY), 0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize *
h.SCALE, a.strokeColor, a.alpha), a.graphics.beginFill(a.fillColor, a.alpha), a.graphics.drawRect(a.x + b, a.y + c, d, e), a.graphics.endFill(), a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY), a.graphics.lineStyle());
if (this._DisplayText && !this._PickedUp) {
a.drawActor = !1;
a.actor = null;
a.x = 0;
a.y = 0;
b = f.getFont(252);
null != b && b != a.font && (a.font = b);
if (ya.adBlocked) b = this.actor.getX() - f.getFont(252).getTextWidth("Remove your adblocker to gain a life!") / h.SCALE / 2, c = this.actor.getY() - 10, null == a.font && (a.font =
a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE)), a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + b * a.scaleX, c = a.y + c * a.scaleY) : (b = a.x + b * a.scaleX - h.cameraX, c = a.y + c * a.scaleY - h.cameraY) : (b = a.x + b * a.scaleX, c = a.y + c * a.scaleY), a.mtx.identity(), a.mtx.translate(b, c), g = null, d = a.font, l = "Remove your adblocker to gain a life!:" + d.ID + ":" + a.alpha + ":" + h.SCALE + ":" + d.get_letterSpacing(), Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, l) ? (d = ca.drawnStringCache.h[l], d.lifetime = 5, g = d.img) :
(d = a.font.font.getTextWidth("Remove your adblocker to gain a life!", a.font.fontScale), e = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < d && 0 < e && (g = new ka(d, e, !0, 0), a.font.font.renderToImg(g, "Remove your adblocker to gain a life!", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), d = new vc, d.img = g, d.lifetime = 5, ca.drawnStringCache.h[l] = d, ca.drawnStringCacheKeys.push(l))); else {
b = this.actor.getX() - f.getFont(252).getTextWidth("Extra Life!") / h.SCALE / 2;
c = this.actor.getY() - 10;
null == a.font && (a.font = a.defaultFont, a.font.fontScale !=
h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + b * a.scaleX, c = a.y + c * a.scaleY) : (b = a.x + b * a.scaleX - h.cameraX, c = a.y + c * a.scaleY - h.cameraY) : (b = a.x + b * a.scaleX, c = a.y + c * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
var g = null;
d = a.font;
var l = "Extra Life!:" + d.ID + ":" + a.alpha + ":" + h.SCALE + ":" + d.get_letterSpacing();
Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, l) ? (d = ca.drawnStringCache.h[l], d.lifetime = 5, g = d.img) : (d = a.font.font.getTextWidth("Extra Life!", a.font.fontScale),
e = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < d && 0 < e && (g = new ka(d, e, !0, 0), a.font.font.renderToImg(g, "Extra Life!", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), d = new vc, d.img = g, d.lifetime = 5, ca.drawnStringCache.h[l] = d, ca.drawnStringCacheKeys.push(l)))
}
null != g && (a.graphics.beginBitmapFill(g, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, g.width, g.height), a.graphics.endFill())
}
}
},
_event_HitsHero: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = f.getActorType(18);
var d = a.otherActor.getType();
a = a.otherActor.getGroup();
c = c == d || c == a
} else c = !1;
!c || ya.adBlocked || ya.IsVideoPlaying() || this._PickedUp || (f.engine.pause(), ya.rewardedBreak(function () {
f.engine.unpause();
b._PickedUp = !0;
b._ScreenFlash = 95;
var a = b.attributeTweens.h._ScreenFlash;
null == a && (a = new ce, a.doOnUpdate(function () {
b._ScreenFlash = a.value
}), b.attributeTweens.h._ScreenFlash = a);
a.tween(b._ScreenFlash, 0, Wa.linear, 300);
f.runLater(1E3, function (a) {
f.playSoundOnChannel(f.getSound(178), 5)
}, b.actor)
}))
},
init: function () {
ya.adBlocked && this.actor.setFilter([f.createGrayscaleFilter()]);
for (var a = 0, b = f.getActorsOfType(f.getActorType(18)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._Hero = c)
}
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsHero))
},
forwardMessage: function (a) {
},
__class__: mq
});
var nq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Timer = "_Timer";
this._Timer = 0
};
k["scripts.ActorEvents_27"] = nq;
nq.__name__ =
"scripts.ActorEvents_27";
nq.__super__ = P;
nq.prototype = u(P.prototype, {
_Timer: null, _event_Updating: function (a) {
this.wrapper.enabled && (this._Timer += f.getStepSize(), 0 == this._Timer % 500 && 0 == this.actor.getXVelocity() && 0 == this.actor.getYVelocity() && this.actor.setVelocity(f.randomInt(0, 360), 6), 10 < this.actor.getXVelocity() && this.actor.setXVelocity(10), 10 < this.actor.getYVelocity() && this.actor.setYVelocity(10), -10 > this.actor.getXVelocity() && this.actor.setXVelocity(-10), -10 > this.actor.getYVelocity() && this.actor.setYVelocity(-10))
},
init: function () {
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
}, forwardMessage: function (a) {
}, __class__: nq
});
var oq = function (a, b, c) {
P.call(this, b);
this.nameMap.h["Screen Diagonal"] = "_ScreenDiagonal";
this._ScreenDiagonal = 0;
this.nameMap.h.Enemy_Radar = "_EnemyRadar";
this._EnemyRadar = 0;
this.nameMap.h.Activated = "_Activated";
this._Activated = !1;
this.nameMap.h.Pinging_Radar = "_PingingRadar";
this._PingingRadar = !1;
this.nameMap.h.Target_Actor = "_TargetActor";
this.nameMap.h["Distance X"] = "_DistanceX";
this._DistanceX = 0;
this.nameMap.h["Distance Y"] = "_DistanceY";
this._DistanceY = 0;
this.nameMap.h.Distance = "_Distance";
this._Distance = 0;
this.nameMap.h.Direction = "_Direction";
this._Direction = 0;
this.nameMap.h["Minimum Easing Speed"] = "_MinimumEasingSpeed";
this._MinimumEasingSpeed = 5;
this.nameMap.h.Speed = "_Speed";
this._Speed = 20;
this.nameMap.h.Margin = "_Margin";
this._Margin = 0;
this.nameMap.h.Easing = "_Easing";
this._Easing = !1;
this.nameMap.h["Stop when Colliding"] = "_StopwhenColliding";
this._StopwhenColliding = !0;
this.nameMap.h.Collided = "_Collided";
this._Collided = !1;
this.nameMap.h.Hit = "_Hit";
this._Hit = !1
};
k["scripts.ActorEvents_35"] = oq;
oq.__name__ = "scripts.ActorEvents_35";
oq.__super__ = P;
oq.prototype = u(P.prototype, {
_ScreenDiagonal: null,
_EnemyRadar: null,
_Activated: null,
_PingingRadar: null,
_TargetActor: null,
_DistanceX: null,
_DistanceY: null,
_Distance: null,
_Direction: null,
_MinimumEasingSpeed: null,
_Speed: null,
_Margin: null,
_Easing: null,
_StopwhenColliding: null,
_Collided: null,
_Hit: null,
_event_Updating: function (a) {
var b =
this;
if (this.wrapper.enabled && ((16 > this.actor.getY() || this.actor.getY() > f.getSceneHeight() - 36) && !this._Hit && (this._Hit = !0, this._customEvent_got_hit()), (16 > this.actor.getX() || this.actor.getX() > f.getSceneWidth() - 24) && !this._Hit && (this._Hit = !0, this._customEvent_got_hit()), this._Activated)) {
a = this._TargetActor;
if (!f.isPrimitive(a) && ("string" == typeof a ? "" == w.__cast(a, String) : null == a) || !this._TargetActor.isAlive()) if (this.actor.setXVelocity(.9 * this.actor.getXVelocity()), this.actor.setYVelocity(.9 * this.actor.getYVelocity()),
!this._PingingRadar) {
this._PingingRadar = !0;
f.engine.allActors.reuseIterator = !1;
for (a = f.engine.allActors.iterator(); a.hasNext();) {
var c = a.next();
null != c && !c.dead && !c.recycled && c.isOnScreenCache && (c.getGroup() == f.getActorGroup(5) || c.getGroup() == f.getActorGroup(8) || c.getGroup() == f.getActorGroup(10) || c.getGroup() == f.getActorGroup(11)) && za.distance_to_target(this.actor, c) < this._EnemyRadar && 1 != this.actor.getActorValue("Targeted") && (this._TargetActor = c, c.setActorValue("Targeted", !0), this._EnemyRadar = 4)
}
f.engine.allActors.reuseIterator =
!0;
f.runLater(50, function (a) {
320 >= b._EnemyRadar && (b._EnemyRadar += 8, b._PingingRadar = !1)
}, this.actor)
}
a = this._TargetActor;
(f.isPrimitive(a) || ("string" == typeof a ? "" != w.__cast(a, String) : null != a)) && this._TargetActor.isAlive() && (this._DistanceX = this._TargetActor.getXCenter() - this.actor.getXCenter(), this._DistanceY = this._TargetActor.getYCenter() - this.actor.getYCenter(), this._Distance = Math.sqrt(Math.pow(this._DistanceX, 2) + Math.pow(this._DistanceY, 2)), this._Direction = 57.29577951308402 * Math.atan2(this._DistanceY,
this._DistanceX), !(this._Distance > this._Margin) || this._StopwhenColliding && this._Collided ? this.actor.setVelocity(0, 0) : this._Easing ? this.actor.setVelocity(this._Direction, this._MinimumEasingSpeed + (this._Distance - this._Margin) / this._ScreenDiagonal * this._Speed) : this.actor.setVelocity(this._Direction, this._Speed), this._Collided = !1)
}
},
_customEvent_got_hit: function () {
f.createRecycledActor(f.getActorType(67), this.actor.getX() - 8, this.actor.getY() - 8, 2);
f.getLastCreatedActor().shout("_customEvent_splosion_bullet");
f.startShakingScreen(.001, .1);
f.recycleActor(this.actor)
},
init: function () {
var a = this;
this.actor.makeAlwaysSimulate();
this._ScreenDiagonal = Math.sqrt(Math.pow(f.getScreenWidth(), 2) + Math.pow(f.getScreenHeight(), 2));
this._EnemyRadar = 8;
f.runLater(200, function (b) {
a._Activated = !0;
a.actor.moveToTop()
}, this.actor);
f.runLater(2250, function (b) {
f.createRecycledActor(f.getActorType(67), a.actor.getX() - 8, a.actor.getY() - 8, 0);
f.getLastCreatedActor().shout("_customEvent_splosion_bullet");
f.recycleActor(a.actor)
}, this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
},
forwardMessage: function (a) {
},
__class__: oq
});
var pq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Activated = "_Activated";
this._Activated = !1;
this.nameMap.h.Hit = "_Hit";
this._Hit = !1
};
k["scripts.ActorEvents_37"] = pq;
pq.__name__ = "scripts.ActorEvents_37";
pq.__super__ = P;
pq.prototype = u(P.prototype, {
_Activated: null, _Hit: null, _event_Updating: function (a) {
this.wrapper.enabled && ((16 > this.actor.getY() || this.actor.getY() > f.getSceneHeight() - 36) &&
!this._Hit && (this._Hit = !0, this._customEvent_got_hit()), (16 > this.actor.getX() || this.actor.getX() > f.getSceneWidth() - 24) && !this._Hit && (this._Hit = !0, this._customEvent_got_hit()), this.actor.setXVelocity(.93 * this.actor.getXVelocity()), this.actor.setYVelocity(.93 * this.actor.getYVelocity()))
}, _customEvent_got_hit: function () {
f.createRecycledActor(f.getActorType(67), this.actor.getX() - 8, this.actor.getY() - 8, 2);
f.getLastCreatedActor().shout("_customEvent_splosion_bullet");
f.startShakingScreen(.001, .1);
f.recycleActor(this.actor)
},
init: function () {
var a = this;
this.actor.makeAlwaysSimulate();
f.runLater(100, function (b) {
a._Activated = !0
}, this.actor);
f.runLater(2E3, function (b) {
0 == a.actor.getActorValue("Mine_ID") && f.runLater(800, function (b) {
f.recycleActor(a.actor)
}, a.actor);
4 == a.actor.getActorValue("Mine_ID") && f.runLater(800, function (b) {
f.recycleActor(a.actor)
}, a.actor)
}, this.actor);
f.runLater(1E3 * (f.randomInt(28, 32) / 10), function (b) {
f.playSoundOnChannel(f.getSound(112), 6);
a._customEvent_got_hit()
}, this.actor);
this.addListener(this.actor.whenUpdated,
q(this, this._event_Updating))
}, forwardMessage: function (a) {
}, __class__: pq
});
var qq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Change_Directions = "_ChangeDirections";
this._ChangeDirections = !1;
this.nameMap.h.Hero = "_Hero";
this.nameMap.h.Speed = "_Speed";
this._Speed = 0;
this.nameMap.h.Current_Direction = "_CurrentDirection";
this._CurrentDirection = "";
this.nameMap.h.Max_Speed = "_MaxSpeed";
this._MaxSpeed = 0;
this.nameMap.h.Starting_Direction = "_StartingDirection";
this._StartingDirection = 0;
this.nameMap.h.Activated =
"_Activated";
this._Activated = !1
};
k["scripts.ActorEvents_41"] = qq;
qq.__name__ = "scripts.ActorEvents_41";
qq.__super__ = P;
qq.prototype = u(P.prototype, {
_ChangeDirections: null,
_Hero: null,
_Speed: null,
_CurrentDirection: null,
_MaxSpeed: null,
_StartingDirection: null,
_Activated: null,
_event_Updating: function (a) {
var b = this;
this.wrapper.enabled && this._Activated && (a = this._Hero, (f.isPrimitive(a) || ("string" == typeof a ? "" != w.__cast(a, String) : null != a)) && this._Hero.isAlive() && (4 > Math.abs(this.actor.getXCenter() - this._Hero.getXCenter()) &&
!this._ChangeDirections && (this._ChangeDirections = !0, this.actor.getYCenter() < this._Hero.getYCenter() ? this._CurrentDirection = "Down" : this._CurrentDirection = "Up", f.runLater(1E3 * f.randomFloatBetween(.9, .99), function (a) {
b._ChangeDirections = !1;
b.actor.setAnimation("Idle")
}, this.actor)), 4 > Math.abs(this.actor.getYCenter() - this._Hero.getYCenter()) && !this._ChangeDirections && (this._ChangeDirections = !0, this.actor.getXCenter() < this._Hero.getXCenter() ? this._CurrentDirection = "Right" : this._CurrentDirection = "Left",
f.runLater(1E3 * f.randomFloatBetween(1.3, 2), function (a) {
b._ChangeDirections = !1;
b.actor.setAnimation("Idle")
}, this.actor))), this._ChangeDirections ? ("Up" == this._CurrentDirection ? (this.actor.setXVelocity(0), this.actor.applyImpulse(0, -1, 1)) : "Down" == this._CurrentDirection ? (this.actor.setXVelocity(0), this.actor.applyImpulse(0, 1, 1)) : "Left" == this._CurrentDirection ? (this.actor.setYVelocity(0), this.actor.applyImpulse(-1, 0, 1)) : "Right" == this._CurrentDirection && (this.actor.setYVelocity(0), this.actor.applyImpulse(1,
0, 1)), this.actor.setAnimation(this._CurrentDirection)) : (this.actor.setXVelocity(0), this.actor.setYVelocity(0)), this.actor.getXVelocity() > this._MaxSpeed && this.actor.setXVelocity(this._MaxSpeed), this.actor.getYVelocity() > this._MaxSpeed && this.actor.setYVelocity(this._MaxSpeed), this.actor.getXVelocity() < -this._MaxSpeed && this.actor.setXVelocity(-this._MaxSpeed), this.actor.getYVelocity() < -this._MaxSpeed && this.actor.setYVelocity(-this._MaxSpeed))
},
_event_HitsSomething: function (a) {
this.wrapper.enabled && (this._ChangeDirections =
!1, "Up" == this._CurrentDirection ? this._CurrentDirection = "Down" : "Down" == this._CurrentDirection && (this._CurrentDirection = "Up"), "Left" == this._CurrentDirection ? this._CurrentDirection = "Right" : "Right" == this._CurrentDirection && (this._CurrentDirection = "Left"))
},
init: function () {
for (var a = this, b = 0, c = f.getActorsOfType(f.getActorType(18)); b < c.length;) {
var d = c[b];
++b;
null == d || d.dead || d.recycled || (this._Hero = d)
}
this._MaxSpeed = this._Speed = 5;
f.runLater(500, function (b) {
a._Activated = !0
}, this.actor);
this.addListener(this.actor.whenUpdated,
q(this, this._event_Updating));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsSomething))
},
forwardMessage: function (a) {
},
__class__: qq
});
var rq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Change_Directions = "_ChangeDirections";
this._ChangeDirections = !1;
this.nameMap.h.Hero = "_Hero";
this.nameMap.h.Speed = "_Speed";
this._Speed = 0;
this.nameMap.h.Current_Direction = "_CurrentDirection";
this._CurrentDirection = "";
this.nameMap.h.Max_Speed = "_MaxSpeed";
this._MaxSpeed = 0;
this.nameMap.h.Starting_Direction =
"_StartingDirection";
this._StartingDirection = 0;
this.nameMap.h.Activated = "_Activated";
this._Activated = !1
};
k["scripts.ActorEvents_45"] = rq;
rq.__name__ = "scripts.ActorEvents_45";
rq.__super__ = P;
rq.prototype = u(P.prototype, {
_ChangeDirections: null,
_Hero: null,
_Speed: null,
_CurrentDirection: null,
_MaxSpeed: null,
_StartingDirection: null,
_Activated: null,
_event_Updating: function (a) {
this.wrapper.enabled && (this._Activated && ("Up" == this._CurrentDirection ? (this.actor.setXVelocity(0), this.actor.applyImpulse(0, -1, 1)) : "Down" ==
this._CurrentDirection ? (this.actor.setXVelocity(0), this.actor.applyImpulse(0, 1, 1)) : "Left" == this._CurrentDirection ? (this.actor.setYVelocity(0), this.actor.applyImpulse(-1, 0, 1)) : "Right" == this._CurrentDirection && (this.actor.setYVelocity(0), this.actor.applyImpulse(1, 0, 1))), this.actor.getXVelocity() > this._MaxSpeed && this.actor.setXVelocity(this._MaxSpeed), this.actor.getYVelocity() > this._MaxSpeed && this.actor.setYVelocity(this._MaxSpeed), this.actor.getXVelocity() < -this._MaxSpeed && this.actor.setXVelocity(-this._MaxSpeed),
this.actor.getYVelocity() < -this._MaxSpeed && this.actor.setYVelocity(-this._MaxSpeed))
},
_event_HitsSomething: function (a) {
this.wrapper.enabled && ("Up" == this._CurrentDirection ? this._CurrentDirection = "Down" : "Down" == this._CurrentDirection && (this._CurrentDirection = "Up"), "Left" == this._CurrentDirection ? this._CurrentDirection = "Right" : "Right" == this._CurrentDirection && (this._CurrentDirection = "Left"))
},
init: function () {
for (var a = this, b = 0, c = f.getActorsOfType(f.getActorType(18)); b < c.length;) {
var d = c[b];
++b;
null ==
d || d.dead || d.recycled || (this._Hero = d)
}
this._MaxSpeed = this._Speed = 4.5;
this._StartingDirection = f.randomInt(1, 4);
1 == this._StartingDirection ? this._CurrentDirection = "Up" : 2 == this._StartingDirection ? this._CurrentDirection = "Down" : 3 == this._StartingDirection ? (this._CurrentDirection = "Left", this.actor.setAnimation("1b")) : 4 == this._StartingDirection && (this._CurrentDirection = "Right", this.actor.setAnimation("1b"));
f.runLater(500, function (b) {
a._Activated = !0
}, this.actor);
this.addListener(this.actor.whenUpdated, q(this,
this._event_Updating));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsSomething))
},
forwardMessage: function (a) {
},
__class__: rq
});
var sq = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_47"] = sq;
sq.__name__ = "scripts.ActorEvents_47";
sq.__super__ = P;
sq.prototype = u(P.prototype, {
init: function () {
}, forwardMessage: function (a) {
}, __class__: sq
});
var tq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.RNG = "_RNG";
this._RNG = 0;
this.nameMap.h.My_Direction = "_MyDirection";
this._MyDirection = 0;
this.nameMap.h.Warping =
"_Warping";
this._Warping = !1;
this.nameMap.h.Speed = "_Speed";
this._Speed = 0
};
k["scripts.ActorEvents_53"] = tq;
tq.__name__ = "scripts.ActorEvents_53";
tq.__super__ = P;
tq.prototype = u(P.prototype, {
_RNG: null, _MyDirection: null, _Warping: null, _Speed: null, _event_Updating: function (a) {
var b = this;
this.wrapper.enabled && !this._Warping && (31 >= this.actor.getY() && (this._Warping = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.set_alpha(.5), this.actor.setAnimation("" + this._RNG + "b"), this.actor.setY(216), f.runLater(1E3,
function (a) {
b._Warping = !1;
b.actor.set_alpha(1);
b.actor.setAnimation("" + b._RNG);
b.actor.setVelocity(b._MyDirection, b._Speed);
b._customEvent_play_sound()
}, this.actor)), 217 <= this.actor.getY() && (this._Warping = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.set_alpha(.5), this.actor.setAnimation("" + this._RNG + "b"), this.actor.setY(32), f.runLater(1E3, function (a) {
b._Warping = !1;
b.actor.set_alpha(1);
b.actor.setAnimation("" + b._RNG);
b.actor.setVelocity(b._MyDirection, b._Speed);
b._customEvent_play_sound()
},
this.actor)), 31 >= this.actor.getX() && (this._Warping = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.set_alpha(.5), this.actor.setAnimation("" + this._RNG + "b"), this.actor.setX(376), f.runLater(1E3, function (a) {
b._Warping = !1;
b.actor.set_alpha(1);
b.actor.setAnimation("" + b._RNG);
b.actor.setVelocity(b._MyDirection, b._Speed);
b._customEvent_play_sound()
}, this.actor)), 377 <= this.actor.getX() && (this._Warping = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.set_alpha(.5), this.actor.setAnimation("" +
this._RNG + "b"), this.actor.setX(32), f.runLater(1E3, function (a) {
b._Warping = !1;
b.actor.set_alpha(1);
b.actor.setAnimation("" + b._RNG);
b.actor.setVelocity(b._MyDirection, b._Speed);
b._customEvent_play_sound()
}, this.actor)))
}, _customEvent_play_sound: function () {
f.playSoundOnChannel(f.getSound(144), h.engine.getGameAttribute("Sound_Channel") | 0);
var a = h.engine, b = h.engine.getGameAttribute("Sound_Channel") + 1;
a.gameAttributes.h.Sound_Channel = b
}, init: function () {
var a = this;
this._RNG = f.randomInt(1, 4);
this._MyDirection =
90 * this._RNG + 45;
this.actor.setAnimation("" + this._RNG);
this._Speed = 5;
f.runLater(500, function (b) {
a.actor.setVelocity(a._MyDirection, a._Speed)
}, this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
}, forwardMessage: function (a) {
}, __class__: tq
});
var uq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Moving = "_Moving";
this._Moving = !1;
this.nameMap.h.Activated = "_Activated";
this._Activated = !1
};
k["scripts.ActorEvents_57"] = uq;
uq.__name__ = "scripts.ActorEvents_57";
uq.__super__ = P;
uq.prototype =
u(P.prototype, {
_Moving: null, _Activated: null, _event_Updating: function (a) {
var b = this;
this.wrapper.enabled && this._Activated && (this._Moving || (this._Moving = !0, this.actor.applyImpulseInDirection(f.randomInt(0, 360), 5), f.runLater(1500, function (a) {
b._Moving = !1;
b.actor.setXVelocity(0);
b.actor.setYVelocity(0)
}, this.actor)), this.actor.setXVelocity(.99 * this.actor.getXVelocity()), this.actor.setYVelocity(.99 * this.actor.getYVelocity()))
}, init: function () {
var a = this;
f.runLater(500, function (b) {
a._Activated = !0
}, this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
}, forwardMessage: function (a) {
}, __class__: uq
});
var vq = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_59"] = vq;
vq.__name__ = "scripts.ActorEvents_59";
vq.__super__ = P;
vq.prototype = u(P.prototype, {
_customEvent_got_hit: function () {
for (var a = 0, b = f.randomInt(1, 2); a < b;) a++, f.createRecycledActor(f.getActorType(67), this.actor.getX(), this.actor.getY(), 2);
f.getLastCreatedActor().shout("_customEvent_splosion_bullet");
f.startShakingScreen(.01,
.1);
f.recycleActor(this.actor)
}, init: function () {
var a = this;
this.actor.makeAlwaysSimulate();
f.runLater(3E3, function (b) {
a._customEvent_got_hit()
}, this.actor)
}, forwardMessage: function (a) {
}, __class__: vq
});
var wq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Splosion_Angle = "_SplosionAngle";
this._SplosionAngle = 0
};
k["scripts.ActorEvents_67"] = wq;
wq.__name__ = "scripts.ActorEvents_67";
wq.__super__ = P;
wq.prototype = u(P.prototype, {
_SplosionAngle: null, _customEvent_splosion_enemy: function () {
var a = this;
f.createRecycledActorOnLayer(f.getActorType(163),
this.actor.getX(), this.actor.getY(), f.engine.getLayerById(0));
f.startShakingScreen(.002, .1);
f.playSoundOnChannel(f.getSound(110), f.randomInt(6, 29));
f.runLater(100, function (b) {
f.createRecycledActor(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), 0);
f.getLastCreatedActor().setAnimation("1");
f.getLastCreatedActor().moveDown();
f.createRecycledActor(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), 0);
f.getLastCreatedActor().setAnimation("2");
f.getLastCreatedActor().moveDown();
f.createRecycledActor(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), 0);
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown();
f.createRecycledActor(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), 0);
f.getLastCreatedActor().setAnimation("4");
f.getLastCreatedActor().moveDown();
f.createRecycledActor(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3,
3), 0);
f.getLastCreatedActor().setAnimation("5");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(69), a.actor.getXCenter() + f.randomInt(-3, 3), a.actor.getYCenter() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69", "_MyDirection", a._SplosionAngle + f.randomInt(-45, 45));
f.getLastCreatedActor().setAnimation("" + f.randomInt(0, 11));
f.createRecycledActorOnLayer(f.getActorType(69), a.actor.getXCenter() + f.randomInt(-3, 3), a.actor.getYCenter() +
f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69", "_MyDirection", a._SplosionAngle + f.randomInt(-45, 45));
f.getLastCreatedActor().setAnimation("" + f.randomInt(0, 11))
}, this.actor)
}, _customEvent_splosion_small: function () {
var a = this;
f.playSoundOnChannel(f.getSound(138), f.randomInt(6, 29));
f.runLater(100, function (b) {
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("2");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(69), a.actor.getXCenter() + f.randomInt(-3, 3), a.actor.getYCenter() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("" + f.randomInt(0, 11))
}, this.actor)
}, _customEvent_splosion_bullet: function () {
var a =
this;
f.runLater(100, function (b) {
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().moveDown()
}, this.actor)
}, _customEvent_splosion_hero: function () {
var a = this;
f.playSoundOnChannel(f.getSound(110), 2);
f.runLater(100, function (b) {
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("1");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("2");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67),
a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("4");
f.getLastCreatedActor().moveDown()
}, this.actor);
f.runLater(200, function (b) {
f.createRecycledActor(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6, 6), 2);
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown();
f.createRecycledActor(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6, 6), 2);
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown()
}, this.actor)
}, _customEvent_splosion_bosses: function () {
var a = this;
f.createRecycledActorOnLayer(f.getActorType(163), this.actor.getX(), this.actor.getY(),
f.engine.getLayerById(0));
f.startShakingScreen(.003, .1);
f.playSoundOnChannel(f.getSound(110), f.randomInt(6, 29));
f.runLater(100, function (b) {
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("1");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("2");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("4");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67),
a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("5");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(69), a.actor.getXCenter() + f.randomInt(-3, 3), a.actor.getYCenter() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69", "_MyDirection", a._SplosionAngle + f.randomInt(-45, 45));
f.getLastCreatedActor().setAnimation("" + f.randomInt(0, 11));
f.createRecycledActorOnLayer(f.getActorType(69),
a.actor.getXCenter() + f.randomInt(-3, 3), a.actor.getYCenter() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69", "_MyDirection", a._SplosionAngle + f.randomInt(-45, 45));
f.getLastCreatedActor().setAnimation("" + f.randomInt(0, 11))
}, this.actor);
f.runLater(150, function (b) {
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("1");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("2");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-6,
6), a.actor.getY() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("4");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("5");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(69), a.actor.getXCenter() + f.randomInt(-6, 6), a.actor.getYCenter() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69", "_MyDirection", a._SplosionAngle + f.randomInt(-45, 45));
f.getLastCreatedActor().setAnimation("" + f.randomInt(0, 11))
}, this.actor);
f.runLater(200, function (b) {
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-9, 9), a.actor.getY() + f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("1");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-9, 9), a.actor.getY() +
f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("2");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-9, 9), a.actor.getY() + f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-9, 9), a.actor.getY() + f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("4");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-9, 9), a.actor.getY() + f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("5");
f.getLastCreatedActor().moveDown();
f.createRecycledActor(f.getActorType(69), a.actor.getXCenter() + f.randomInt(-9, 9), a.actor.getYCenter() + f.randomInt(-9, 9), 2);
f.createRecycledActorOnLayer(f.getActorType(69), a.actor.getXCenter() + f.randomInt(-9, 9), a.actor.getYCenter() + f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69", "_MyDirection", a._SplosionAngle + f.randomInt(-45, 45));
f.getLastCreatedActor().setAnimation("" + f.randomInt(0, 11))
}, this.actor)
}, _customEvent_splosion_big_bosses: function () {
var a = this;
f.createRecycledActorOnLayer(f.getActorType(163), this.actor.getX(), this.actor.getY(), f.engine.getLayerById(0));
f.startShakingScreen(.004, .1);
f.playSoundOnChannel(f.getSound(110), f.randomInt(6, 29));
f.runLater(100, function (b) {
f.createRecycledActorOnLayer(f.getActorType(67),
a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("1");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("2");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("4");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("5");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(69), a.actor.getXCenter() + f.randomInt(-3, 3), a.actor.getYCenter() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69", "_MyDirection", a._SplosionAngle + f.randomInt(-45, 45));
f.getLastCreatedActor().setAnimation("" + f.randomInt(0, 11));
f.createRecycledActorOnLayer(f.getActorType(69), a.actor.getXCenter() + f.randomInt(-3, 3), a.actor.getYCenter() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69",
"_MyDirection", a._SplosionAngle + f.randomInt(-45, 45));
f.getLastCreatedActor().setAnimation("" + f.randomInt(0, 11))
}, this.actor);
f.runLater(125, function (b) {
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("1");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("2");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("4");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("5");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(69), a.actor.getXCenter() + f.randomInt(-6, 6), a.actor.getYCenter() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69", "_MyDirection", a._SplosionAngle + f.randomInt(-45, 45));
f.getLastCreatedActor().setAnimation("" +
f.randomInt(0, 11))
}, this.actor);
f.runLater(150, function (b) {
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-9, 9), a.actor.getY() + f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("1");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-9, 9), a.actor.getY() + f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("2");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67),
a.actor.getX() + f.randomInt(-9, 9), a.actor.getY() + f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-9, 9), a.actor.getY() + f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("4");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-9, 9), a.actor.getY() + f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("5");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(69), a.actor.getXCenter() + f.randomInt(-9, 9), a.actor.getYCenter() + f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69", "_MyDirection", a._SplosionAngle + f.randomInt(-45, 45));
f.getLastCreatedActor().setAnimation("" + f.randomInt(0, 11))
}, this.actor);
f.runLater(175, function (b) {
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-12,
12), a.actor.getY() + f.randomInt(-12, 12), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("1");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-12, 12), a.actor.getY() + f.randomInt(-12, 12), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("2");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-12, 12), a.actor.getY() + f.randomInt(-12, 12), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-12, 12), a.actor.getY() + f.randomInt(-12, 12), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("4");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-12, 12), a.actor.getY() + f.randomInt(-12, 12), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("5");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(69), a.actor.getXCenter() + f.randomInt(-12, 12), a.actor.getYCenter() + f.randomInt(-12, 12), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69", "_MyDirection", a._SplosionAngle + f.randomInt(-45, 45));
f.getLastCreatedActor().setAnimation("" + f.randomInt(0, 11))
}, this.actor);
f.runLater(200, function (b) {
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-15, 15), a.actor.getY() + f.randomInt(-15, 15), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("1");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-15, 15), a.actor.getY() + f.randomInt(-15, 15), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("2");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-15, 15), a.actor.getY() + f.randomInt(-15, 15), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-15, 15), a.actor.getY() + f.randomInt(-15, 15), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("4");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-15, 15), a.actor.getY() + f.randomInt(-15, 15), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("5");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(69), a.actor.getXCenter() +
f.randomInt(-15, 15), a.actor.getYCenter() + f.randomInt(-15, 15), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69", "_MyDirection", a._SplosionAngle + f.randomInt(-45, 45));
f.getLastCreatedActor().setAnimation("" + f.randomInt(0, 11))
}, this.actor)
}, _customEvent_splosion_big_end_boss: function () {
var a = this;
f.createRecycledActorOnLayer(f.getActorType(163), this.actor.getX(), this.actor.getY(), f.engine.getLayerById(0));
f.startShakingScreen(.0075, .3);
f.playSoundOnChannel(f.getSound(110), f.randomInt(6,
29));
f.runLater(100, function (b) {
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("1");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("2");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67),
a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("4");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("5");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(69), a.actor.getXCenter() + f.randomInt(-3, 3), a.actor.getYCenter() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69", "_MyDirection", a._SplosionAngle);
f.getLastCreatedActor().setAnimation("" + f.randomInt(0, 11));
f.createRecycledActorOnLayer(f.getActorType(69), a.actor.getXCenter() + f.randomInt(-3, 3), a.actor.getYCenter() + f.randomInt(-3, 3), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69", "_MyDirection", a._SplosionAngle);
f.getLastCreatedActor().setAnimation("" + f.randomInt(0, 11))
}, this.actor);
f.runLater(125, function (b) {
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("1");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6,
6), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("2");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("4");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-6, 6), a.actor.getY() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("5");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(69), a.actor.getXCenter() + f.randomInt(-6, 6), a.actor.getYCenter() + f.randomInt(-6, 6), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69", "_MyDirection", a._SplosionAngle);
f.getLastCreatedActor().setAnimation("" +
f.randomInt(0, 11))
}, this.actor);
f.runLater(150, function (b) {
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-9, 9), a.actor.getY() + f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("1");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-9, 9), a.actor.getY() + f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("2");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67),
a.actor.getX() + f.randomInt(-9, 9), a.actor.getY() + f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-9, 9), a.actor.getY() + f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("4");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-9, 9), a.actor.getY() + f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("5");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(69), a.actor.getXCenter() + f.randomInt(-9, 9), a.actor.getYCenter() + f.randomInt(-9, 9), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69", "_MyDirection", a._SplosionAngle);
f.getLastCreatedActor().setAnimation("" + f.randomInt(0, 11))
}, this.actor);
f.runLater(175, function (b) {
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-12, 12), a.actor.getY() +
f.randomInt(-12, 12), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("1");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-12, 12), a.actor.getY() + f.randomInt(-12, 12), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("2");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-12, 12), a.actor.getY() + f.randomInt(-12, 12), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-12, 12), a.actor.getY() + f.randomInt(-12, 12), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("4");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-12, 12), a.actor.getY() + f.randomInt(-12, 12), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("5");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(69),
a.actor.getXCenter() + f.randomInt(-12, 12), a.actor.getYCenter() + f.randomInt(-12, 12), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69", "_MyDirection", a._SplosionAngle);
f.getLastCreatedActor().setAnimation("" + f.randomInt(0, 11))
}, this.actor);
f.runLater(200, function (b) {
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-15, 15), a.actor.getY() + f.randomInt(-15, 15), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("1");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-15, 15), a.actor.getY() + f.randomInt(-15, 15), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("2");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-15, 15), a.actor.getY() + f.randomInt(-15, 15), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("3");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() +
f.randomInt(-15, 15), a.actor.getY() + f.randomInt(-15, 15), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("4");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(67), a.actor.getX() + f.randomInt(-15, 15), a.actor.getY() + f.randomInt(-15, 15), f.engine.getLayerById(0));
f.getLastCreatedActor().setAnimation("5");
f.getLastCreatedActor().moveDown();
f.createRecycledActorOnLayer(f.getActorType(69), a.actor.getXCenter() + f.randomInt(-15, 15), a.actor.getYCenter() + f.randomInt(-15,
15), f.engine.getLayerById(0));
f.getLastCreatedActor().setValue("ActorEvents_69", "_MyDirection", a._SplosionAngle);
f.getLastCreatedActor().setAnimation("" + f.randomInt(0, 11))
}, this.actor);
f.runLater(290, function (b) {
f.createRecycledActor(f.getActorType(67), a.actor.getXCenter() - 16, a.actor.getYCenter() - 16, 0);
f.getLastCreatedActor().shout("_customEvent_splosion_big_bosses")
}, this.actor)
}, _customEvent_splosion_door_skull: function () {
var a = this;
f.startShakingScreen(.002, .1);
f.runLater(0, function (b) {
f.createRecycledActor(f.getActorType(67),
a.actor.getX() + f.randomInt(-3, 3), a.actor.getY() + f.randomInt(-3, 3), 0);
f.getLastCreatedActor().setAnimation("1");
f.getLastCreatedActor().moveDown()
}, this.actor)
}, init: function () {
var a = this;
f.runLater(300, function (b) {
f.recycleActor(a.actor)
}, this.actor);
0 == this._SplosionAngle && (this._SplosionAngle = f.randomInt(0, 360))
}, forwardMessage: function (a) {
}, __class__: wq
});
var xq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.My_Direction = "_MyDirection";
this._MyDirection = 0
};
k["scripts.ActorEvents_69"] = xq;
xq.__name__ =
"scripts.ActorEvents_69";
xq.__super__ = P;
xq.prototype = u(P.prototype, {
_MyDirection: null, _event_Updating: function (a) {
this.wrapper.enabled && (2 < Math.abs(this.actor.getXVelocity()) ? this.actor.setXVelocity(.95 * this.actor.getXVelocity()) : this.actor.setXVelocity(0), 2 < Math.abs(this.actor.getYVelocity()) ? this.actor.setYVelocity(.95 * this.actor.getYVelocity()) : this.actor.setYVelocity(0), (32 > this.actor.getY() || 224 < this.actor.getY()) && this.actor.setYVelocity(0), (37 > this.actor.getX() || 393 < this.actor.getX()) && this.actor.setXVelocity(0))
},
init: function () {
var a = this;
this.actor.moveToBottom();
f.runLater(10, function (b) {
0 != a._MyDirection && (a._MyDirection = f.randomInt(0, 360));
a.actor.applyImpulseInDirection(a._MyDirection, f.randomInt(10, 20))
}, this.actor);
f.runLater(1E3 * f.randomFloatBetween(1.2, 1.5), function (b) {
f.recycleActor(a.actor)
}, this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
}, forwardMessage: function (a) {
}, __class__: xq
});
var yq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Picked_Up = "_PickedUp";
this._PickedUp =
!1
};
k["scripts.ActorEvents_73"] = yq;
yq.__name__ = "scripts.ActorEvents_73";
yq.__super__ = P;
yq.prototype = u(P.prototype, {
_PickedUp: null, init: function () {
}, forwardMessage: function (a) {
}, __class__: yq
});
var zq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Stopped = "_Stopped";
this._Stopped = !1;
this.nameMap.h.Spawn = "_Spawn";
this.nameMap.h.Dying = "_Dying";
this._Dying = !1;
this.nameMap.h.Target_Actor = "_TargetActor";
this.nameMap.h.My_Direction = "_MyDirection";
this._MyDirection = 0;
this.nameMap.h.Wander_Left = "_WanderLeft";
this._WanderLeft = !1;
this.nameMap.h.Hit_Tile = "_HitTile";
this._HitTile = !1;
this.nameMap.h.Speed = "_Speed";
this._Speed = 0
};
k["scripts.ActorEvents_77"] = zq;
zq.__name__ = "scripts.ActorEvents_77";
zq.__super__ = P;
zq.prototype = u(P.prototype, {
_Stopped: null,
_Spawn: null,
_Dying: null,
_TargetActor: null,
_MyDirection: null,
_WanderLeft: null,
_HitTile: null,
_Speed: null,
_event_HitsTiles: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = f.getActorGroup(1);
var d = a.otherActor.getType();
a = a.otherActor.getGroup();
c = c == d || c ==
a
} else c = !1;
c && !this._HitTile && (this._HitTile = !0, 1 == f.randomInt(0, 1) ? this._MyDirection += f.randomInt(90, 1220) : this._MyDirection -= f.randomInt(-90, -100), f.runLater(200, function (a) {
b._HitTile = !1
}, this.actor))
},
init: function () {
var a = this;
this.actor.setValue("Enemy_Manager", "_Activated", !0);
this._Speed = 2.5;
f.runLater(10, function (b) {
a.actor.applyImpulseInDirection(a._MyDirection, a._Speed)
}, this.actor);
f.runLater(500, function (b) {
a.actor.set_alpha(1)
}, this.actor);
f.runPeriodically(400, function (b) {
f.createRecycledActor(f.getActorType(195),
a.actor.getX(), a.actor.getY(), 0);
a.actor.setXVelocity(.003 * a.actor.getXVelocity());
a.actor.setYVelocity(.003 * a.actor.getYVelocity());
a._WanderLeft ? a.actor.applyImpulseInDirection(a._MyDirection + f.randomInt(-6, -10), a._Speed) : a.actor.applyImpulseInDirection(a._MyDirection + f.randomInt(6, 10), a._Speed)
}, this.actor);
this.addListener(this.actor.whenCollided, q(this, this._event_HitsTiles))
},
forwardMessage: function (a) {
},
__class__: zq
});
var Aq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.RNG = "_RNG";
this._RNG =
0;
this.nameMap.h.Spawn_ID = "_SpawnID";
this._SpawnID = "";
this.nameMap.h.Timer = "_Timer";
this._Timer = 0
};
k["scripts.ActorEvents_81"] = Aq;
Aq.__name__ = "scripts.ActorEvents_81";
Aq.__super__ = P;
Aq.prototype = u(P.prototype, {
_RNG: null, _SpawnID: null, _Timer: null, _event_Updating: function (a) {
this.wrapper.enabled && (this._Timer += f.getStepSize(), 20 == this._Timer && ("Big_Boss" == this._SpawnID && this.actor.shout("_customEvent_spawn_big_boss"), "Big_End_Boss" == this._SpawnID && this.actor.shout("_customEvent_spawn_big_end_boss")),
2E3 == this._Timer && (a = this._SpawnID, f.isPrimitive(a) || ("string" == typeof a ? "" != w.__cast(a, String) : null != a) ? "Boss" == this._SpawnID ? this.actor.shout("_customEvent_spawn_boss") : "Endless" == this._SpawnID ? this.actor.shout("_customEvent_spawn_endless") : "Boss_Endless" == this._SpawnID && this.actor.shout("_customEvent_spawn_boss_endless") : (this._SpawnID = "Normal", this.actor.shout("_customEvent_spawn_normal"))))
}, _event_Drawing: function (a, b, c) {
if (this.wrapper.enabled) {
c = this.actor;
a.drawActor = !0;
a.actor = c;
c.smoothMove ?
(b = c.drawX - Math.floor(c.cacheWidth / 2) - c.currOffset.x, c = c.drawY - Math.floor(c.cacheHeight / 2) - c.currOffset.y, a.x = b * a.scaleX, a.y = c * a.scaleY) : (a.x = c.colX * a.scaleX, a.y = c.colY * a.scaleY);
if ("Tutorial" == f.getCurrentSceneName()) if (b = f.getFont(252), null != b && b != a.font && (a.font = b), "Endless" == this._SpawnID) {
null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + 2 * a.scaleX, c = a.y + -4 * a.scaleY) : (b = a.x + 2 * a.scaleX - h.cameraX, c = a.y + -4 *
a.scaleY - h.cameraY) : (b = a.x + 2 * a.scaleX, c = a.y + -4 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
var d = null, e = a.font,
g = "Enemy:" + e.ID + ":" + a.alpha + ":" + h.SCALE + ":" + e.get_letterSpacing();
if (Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, g)) e = ca.drawnStringCache.h[g], e.lifetime = 5, d = e.img; else {
e = a.font.font.getTextWidth("Enemy", a.font.fontScale);
var l = a.font.font.getFontHeight() * a.font.fontScale | 0;
0 < e && 0 < l && (d = new ka(e, l, !0, 0), a.font.font.renderToImg(d, "Enemy", 0, a.alpha, 0, 0, a.font.fontScale, 0,
!1), e = new vc, e.img = d, e.lifetime = 5, ca.drawnStringCache.h[g] = e, ca.drawnStringCacheKeys.push(g))
}
null != d && (a.graphics.beginBitmapFill(d, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, d.width, d.height), a.graphics.endFill())
} else "Boss_Endless" == this._SpawnID && (null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE)), a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + -9 * a.scaleX, c = a.y + -14 * a.scaleY) : (b = a.x + -9 * a.scaleX - h.cameraX, c = a.y + -14 * a.scaleY - h.cameraY) : (b = a.x + -9 * a.scaleX,
c = a.y + -14 * a.scaleY), a.mtx.identity(), a.mtx.translate(b, c), d = null, e = a.font, g = "Key Boss:" + e.ID + ":" + a.alpha + ":" + h.SCALE + ":" + e.get_letterSpacing(), Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, g) ? (e = ca.drawnStringCache.h[g], e.lifetime = 5, d = e.img) : (e = a.font.font.getTextWidth("Key Boss", a.font.fontScale), l = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < e && 0 < l && (d = new ka(e, l, !0, 0), a.font.font.renderToImg(d, "Key Boss", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), e = new vc, e.img = d, e.lifetime = 5, ca.drawnStringCache.h[g] =
e, ca.drawnStringCacheKeys.push(g))), null != d && (a.graphics.beginBitmapFill(d, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, d.width, d.height), a.graphics.endFill()));
"Endless" == this._SpawnID ? (b = 255, c = 153, d = 204, null == d && (d = 0), null == c && (c = 0), null == b && (b = 0), b = b << 16 | c << 8 | d, a.fillColor = 0 > b ? b + 16777216 : b, a.alpha = .2, c = b = 8, e = this.actor.getWidth() / 2, l = this.actor.getHeight() / 2, b *= a.scaleX, c *= a.scaleY, e *= a.scaleX, l *= a.scaleY, !a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY), 0 == a.strokeSize ?
a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha), a.graphics.beginFill(a.fillColor, a.alpha), a.graphics.drawRect(a.x + b, a.y + c, e, l), a.graphics.endFill(), a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY), a.graphics.lineStyle()) : "Boss_Endless" == this._SpawnID ? (b = 255, c = 102, d = 255, null == d && (d = 0), null == c && (c = 0), null == b && (b = 0), b = b << 16 | c << 8 | d, a.fillColor = 0 > b ? b + 16777216 : b, a.alpha = .2, c = b = 0, e = this.actor.getWidth(), l = this.actor.getWidth(), b *= a.scaleX, c *= a.scaleY, e *=
a.scaleX, l *= a.scaleY, !a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY), 0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha), a.graphics.beginFill(a.fillColor, a.alpha), a.graphics.drawRect(a.x + b, a.y + c, e, l), a.graphics.endFill(), a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY), a.graphics.lineStyle()) : "Big_Boss" == this._SpawnID ? (b = 255, c = 102, d = 255, null == d && (d = 0), null == c && (c = 0), null == b && (b = 0), b = b << 16 | c << 8 | d, a.fillColor =
0 > b ? b + 16777216 : b, a.alpha = .2, c = b = -4, e = this.actor.getWidth() + 8, l = this.actor.getWidth() + 8, b *= a.scaleX, c *= a.scaleY, e *= a.scaleX, l *= a.scaleY, !a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY), 0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha), a.graphics.beginFill(a.fillColor, a.alpha), a.graphics.drawRect(a.x + b, a.y + c, e, l), a.graphics.endFill(), a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY), a.graphics.lineStyle()) : "Big_End_Boss" ==
this._SpawnID && (b = 255, c = 102, d = 255, null == d && (d = 0), null == c && (c = 0), null == b && (b = 0), b = b << 16 | c << 8 | d, a.fillColor = 0 > b ? b + 16777216 : b, a.alpha = .2, c = b = -20, e = this.actor.getWidth() + 40, l = this.actor.getWidth() + 40, b *= a.scaleX, c *= a.scaleY, e *= a.scaleX, l *= a.scaleY, !a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY), 0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha), a.graphics.beginFill(a.fillColor, a.alpha), a.graphics.drawRect(a.x + b, a.y + c, e, l),
a.graphics.endFill(), a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY), a.graphics.lineStyle())
}
}, _customEvent_spawn_endless: function () {
1 == this._RNG ? f.createRecycledActor(f.getActorType(27), this.actor.getXCenter() - 8, this.actor.getYCenter() - 8, 0) : 2 == this._RNG ? f.createRecycledActor(f.getActorType(57), this.actor.getXCenter() - 8, this.actor.getYCenter() - 8, 0) : 3 == this._RNG ? f.createRecycledActor(f.getActorType(45), this.actor.getXCenter() - 8, this.actor.getYCenter() - 8, 0) : 4 == this._RNG ? f.createRecycledActor(f.getActorType(41),
this.actor.getXCenter() - 8, this.actor.getYCenter() - 8, 0) : 5 == this._RNG ? f.createRecycledActor(f.getActorType(53), this.actor.getXCenter() - 8, this.actor.getYCenter() - 8, 0) : 6 == this._RNG ? f.createRecycledActor(f.getActorType(95), this.actor.getXCenter() - 8, this.actor.getYCenter() - 8, 0) : 7 == this._RNG ? (f.createRecycledActor(f.getActorType(77), this.actor.getXCenter() - 8, this.actor.getYCenter() - 8, 0), f.getLastCreatedActor().setValue("ActorEvents_77", "_MyDirection", f.randomInt(0, 360)), 0 == f.randomInt(0, 1) && f.getLastCreatedActor().setValue("ActorEvents_77",
"_WanderLeft", !0)) : 8 == this._RNG ? f.createRecycledActor(f.getActorType(47), this.actor.getXCenter() - 8, this.actor.getYCenter() - 8, 0) : 9 == this._RNG ? f.createRecycledActor(f.getActorType(193), this.actor.getXCenter() - 8, this.actor.getYCenter() - 8, 0) : 10 == this._RNG && f.createRecycledActor(f.getActorType(103), this.actor.getXCenter() - 8, this.actor.getYCenter() - 8, 0);
f.recycleActor(this.actor)
}, _customEvent_spawn_boss_endless: function () {
var a = this;
f.runLater(0, function (b) {
1 == a._RNG ? f.createRecycledActor(f.getActorType(87),
a.actor.getXCenter() - 13, a.actor.getYCenter() - 12, 0) : 2 == a._RNG ? f.createRecycledActor(f.getActorType(89), a.actor.getXCenter() - 13, a.actor.getYCenter() - 12, 0) : 3 == a._RNG ? f.createRecycledActor(f.getActorType(91), a.actor.getXCenter() - 13, a.actor.getYCenter() - 12, 0) : 4 == a._RNG ? f.createRecycledActor(f.getActorType(97), a.actor.getXCenter() - 13, a.actor.getYCenter() - 12, 0) : 5 == a._RNG ? (f.createRecycledActor(f.getActorType(99), a.actor.getXCenter() - 13, a.actor.getYCenter() - 12, 0), f.getLastCreatedActor().setValue("ActorEvents_99",
"_MyDirection", f.randomInt(0, 360)), 0 == f.randomInt(0, 1) && f.getLastCreatedActor().setValue("ActorEvents_99", "_WanderLeft", !0)) : 6 == a._RNG && f.createRecycledActor(f.getActorType(107), a.actor.getXCenter() - 13, a.actor.getYCenter() - 12, 0);
f.recycleActor(a.actor)
}, this.actor)
}, _customEvent_spawn_big_boss: function () {
var a = this, b = h.engine.getGameAttribute("Score"),
c = h.engine.getGameAttribute("Big_Boss_Order").charAt(0);
b == 5 * (null == c ? 0 : "number" == typeof c ? w.__cast(c, Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c,
Ia) : "boolean" == typeof c ? w.__cast(c, La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c))) ? (this.actor.setX(201), this.actor.setY(164), f.runLater(1800, function (b) {
f.createRecycledActor(f.getActorType(191), a.actor.getX() - 6, a.actor.getY(), 0);
f.recycleActor(a.actor)
}, this.actor)) : (b = h.engine.getGameAttribute("Score"), c = h.engine.getGameAttribute("Big_Boss_Order").charAt(1), b == 5 * (null == c ? 0 : "number" == typeof c ? w.__cast(c, Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c, Ia) : "boolean" == typeof c ? w.__cast(c,
La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c))) ? 1 == f.randomInt(0, 1) ? (this.actor.setX(104), this.actor.setY(112), f.runLater(1800, function (b) {
f.createRecycledActor(f.getActorType(199), a.actor.getX(), a.actor.getY(), 0);
f.recycleActor(a.actor)
}, this.actor)) : (this.actor.setX(312), this.actor.setY(112), f.runLater(1800, function (b) {
f.createRecycledActor(f.getActorType(199), a.actor.getX() - 8, a.actor.getY(), 0);
f.recycleActor(a.actor)
}, this.actor)) : (b = h.engine.getGameAttribute("Score"), c = h.engine.getGameAttribute("Big_Boss_Order").charAt(2),
b == 5 * (null == c ? 0 : "number" == typeof c ? w.__cast(c, Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c, Ia) : "boolean" == typeof c ? w.__cast(c, La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c))) ? (this.actor.setX(201), this.actor.setY(164), f.runLater(1800, function (b) {
f.createRecycledActor(f.getActorType(203), a.actor.getX() - 8, a.actor.getY(), 0);
f.recycleActor(a.actor)
}, this.actor)) : (b = h.engine.getGameAttribute("Score"), c = h.engine.getGameAttribute("Big_Boss_Order").charAt(3), b == 5 * (null == c ? 0 : "number" == typeof c ?
w.__cast(c, Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c, Ia) : "boolean" == typeof c ? w.__cast(c, La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c))) && (this.actor.setX(201), this.actor.setY(164), f.runLater(1800, function (b) {
f.createRecycledActor(f.getActorType(201), a.actor.getX() - 8, a.actor.getY(), 0);
f.recycleActor(a.actor)
}, this.actor)))));
f.runLater(1750, function (a) {
f.playSoundOnChannel(f.getSound(209), f.randomInt(6, 29))
}, this.actor)
}, _customEvent_spawn_big_end_boss: function () {
var a = this;
this.actor.setX(200);
this.actor.setY(117);
f.runLater(1800, function (b) {
f.createRecycledActor(f.getActorType(210), a.actor.getX() - 20, a.actor.getY() - 20, 0);
f.startShakingScreen(.01, 1);
f.recycleActor(a.actor)
}, this.actor)
}, init: function () {
var a = this;
f.getValueForScene("Scene_Manager", "_GameOver") && f.recycleActor(this.actor);
this.actor.bringToFront();
this.actor.disableActorDrawing();
f.runLater(200, function (b) {
a.actor.enableActorDrawing()
}, this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenDrawing,
q(this, this._event_Drawing))
}, forwardMessage: function (a) {
}, __class__: Aq
});
var Bq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Picked_Up = "_PickedUp";
this._PickedUp = !1;
this.nameMap.h.Big_Boss_Key = "_BigBossKey";
this._BigBossKey = !1
};
k["scripts.ActorEvents_85"] = Bq;
Bq.__name__ = "scripts.ActorEvents_85";
Bq.__super__ = P;
Bq.prototype = u(P.prototype, {
_PickedUp: null, _BigBossKey: null, _event_Updating: function (a) {
if (this.wrapper.enabled) {
224 < this.actor.getY() && this.actor.setY(224);
if (this._PickedUp) {
this.actor.disableBehavior("Bounce With Full Speed");
32 <= this.actor.getY() ? this.actor.setYVelocity(-20) : (this.actor.setYVelocity(0), this.actor.getXCenter() < f.getSceneWidth() / 2 ? this.actor.setXVelocity(20) : this.actor.setXVelocity(-20));
a = 0;
for (var b = f.getActorsOfType(f.getActorType(152)); a < b.length;) {
var c = b[a];
++a;
if (null != c && !c.dead && !c.recycled) {
var d = this.actor.getXCenter();
d = null == d ? 0 : "number" == typeof d ? w.__cast(d, Ka) : "number" == typeof d && (d | 0) === d ? w.__cast(d, Ia) : "boolean" == typeof d ? w.__cast(d, La) ? 1 : 0 : "string" == typeof d ? parseFloat(d) : parseFloat(z.string(d));
var e = this.actor.getYCenter();
e = null == e ? 0 : "number" == typeof e ? w.__cast(e, Ka) : "number" == typeof e && (e | 0) === e ? w.__cast(e, Ia) : "boolean" == typeof e ? w.__cast(e, La) ? 1 : 0 : "string" == typeof e ? parseFloat(e) : parseFloat(z.string(e));
var g = c.getXCenter();
g = null == g ? 0 : "number" == typeof g ? w.__cast(g, Ka) : "number" == typeof g && (g | 0) === g ? w.__cast(g, Ia) : "boolean" == typeof g ? w.__cast(g, La) ? 1 : 0 : "string" == typeof g ? parseFloat(g) : parseFloat(z.string(g));
var h = c.getYCenter();
25 > za.distance_between_points(d, e, g, null == h ? 0 : "number" ==
typeof h ? w.__cast(h, Ka) : "number" == typeof h && (h | 0) === h ? w.__cast(h, Ia) : "boolean" == typeof h ? w.__cast(h, La) ? 1 : 0 : "string" == typeof h ? parseFloat(h) : parseFloat(z.string(h))) && (this._BigBossKey ? c.shout("_customEvent_big_boss_key_collected") : c.shout("_customEvent_key_collected"), f.recycleActor(this.actor))
}
}
}
"Tutorial" != f.getCurrentSceneName() || this._PickedUp || (5 < this.actor.getXVelocity() && this.actor.setXVelocity(5), -5 > this.actor.getXVelocity() && this.actor.setXVelocity(-5), 5 < this.actor.getYVelocity() && this.actor.setYVelocity(5),
-5 > this.actor.getYVelocity() && this.actor.setYVelocity(-5));
this._PickedUp || (20 < this.actor.getXVelocity() && this.actor.setXVelocity(20), -20 > this.actor.getXVelocity() && this.actor.setXVelocity(-20), 20 < this.actor.getYVelocity() && this.actor.setYVelocity(20), -20 > this.actor.getYVelocity() && this.actor.setYVelocity(-20))
}
}, _event_Drawing: function (a, b, c) {
if (this.wrapper.enabled) {
if (this._PickedUp) {
a.drawActor = !1;
a.actor = null;
a.x = 0;
a.y = 0;
var d = b = 255, e = 0;
null == e && (e = 0);
null == d && (d = 0);
null == b && (b = 0);
b = b << 16 | d <<
8 | e;
a.fillColor = 0 > b ? b + 16777216 : b;
a.alpha = .6;
b = 16 * Math.floor(this.actor.getXCenter() / f.getTileWidth());
c = 16 * Math.floor(this.actor.getYCenter() / f.getTileWidth());
b *= a.scaleX;
c *= a.scaleY;
d = 16 * a.scaleX;
e = 16 * a.scaleY;
!a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY);
0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha);
a.graphics.beginFill(a.fillColor, a.alpha);
a.graphics.drawRect(a.x + b, a.y + c, d, e);
a.graphics.endFill();
a.drawActor &&
!a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY);
a.graphics.lineStyle()
}
if ("Tutorial" == f.getCurrentSceneName() && !this._PickedUp) {
d = this.actor;
a.drawActor = !0;
a.actor = d;
d.smoothMove ? (b = d.drawX - Math.floor(d.cacheWidth / 2) - d.currOffset.x, c = d.drawY - Math.floor(d.cacheHeight / 2) - d.currOffset.y, a.x = b * a.scaleX, a.y = c * a.scaleY) : (a.x = d.colX * a.scaleX, a.y = d.colY * a.scaleY);
b = f.getFont(252);
null != b && b != a.font && (a.font = b);
null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ?
null != a.actor && a.actor.isHUD ? (b = a.x + 0 * a.scaleX, c = a.y + -7 * a.scaleY) : (b = a.x + 0 * a.scaleX - h.cameraX, c = a.y + -7 * a.scaleY - h.cameraY) : (b = a.x + 0 * a.scaleX, c = a.y + -7 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
var g = null;
d = a.font;
var l = "Key:" + d.ID + ":" + a.alpha + ":" + h.SCALE + ":" + d.get_letterSpacing();
Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, l) ? (d = ca.drawnStringCache.h[l], d.lifetime = 5, g = d.img) : (d = a.font.font.getTextWidth("Key", a.font.fontScale), e = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 <
d && 0 < e && (g = new ka(d, e, !0, 0), a.font.font.renderToImg(g, "Key", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), d = new vc, d.img = g, d.lifetime = 5, ca.drawnStringCache.h[l] = d, ca.drawnStringCacheKeys.push(l)));
null != g && (a.graphics.beginBitmapFill(g, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, g.width, g.height), a.graphics.endFill())
}
}
}, _event_HitsHero: function (a) {
if (this.wrapper.enabled) {
var b = f.getActorType(18);
var c = a.otherActor.getType();
a = a.otherActor.getGroup();
b = b == c || b == a
} else b = !1;
b && !this._PickedUp && (this.actor.disableBehavior("Follow Target CUSTOM"),
this._PickedUp = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.setAnimation("Picked_Up"), f.playSoundOnChannel(f.getSound(141), 5), this.actor.disableActorDrawing())
}, init: function () {
25 == h.engine.getGameAttribute("Score") && this.actor.disableBehavior("Follow Target CUSTOM");
var a = f.getValueForScene("Scene_Manager", "_PassedLevel");
1 != a && "true" != a || f.recycleActor(this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenDrawing,
q(this, this._event_Drawing));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsHero))
}, forwardMessage: function (a) {
}, __class__: Bq
});
var Cq = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_87"] = Cq;
Cq.__name__ = "scripts.ActorEvents_87";
Cq.__super__ = P;
Cq.prototype = u(P.prototype, {
init: function () {
var a = this;
this.actor.set_alpha(.5);
f.runLater(500, function (b) {
a.actor.set_alpha(1);
a.actor.setAnimation("3");
a.actor.setVelocity(f.randomInt(0, 360), 5)
}, this.actor);
f.runPeriodically(2E3, function (b) {
0 ==
a.actor.getXVelocity() && 0 == a.actor.getYVelocity() && a.actor.setVelocity(f.randomInt(0, 360), 5)
}, this.actor)
}, forwardMessage: function (a) {
}, __class__: Cq
});
var Dq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Change_Directions = "_ChangeDirections";
this._ChangeDirections = !1;
this.nameMap.h.Hero = "_Hero";
this.nameMap.h.Speed = "_Speed";
this._Speed = 0;
this.nameMap.h.Current_Direction = "_CurrentDirection";
this._CurrentDirection = "";
this.nameMap.h.Max_Speed = "_MaxSpeed";
this._MaxSpeed = 0;
this.nameMap.h.Starting_Direction =
"_StartingDirection";
this._StartingDirection = 0;
this.nameMap.h.Activated = "_Activated";
this._Activated = !1
};
k["scripts.ActorEvents_89"] = Dq;
Dq.__name__ = "scripts.ActorEvents_89";
Dq.__super__ = P;
Dq.prototype = u(P.prototype, {
_ChangeDirections: null,
_Hero: null,
_Speed: null,
_CurrentDirection: null,
_MaxSpeed: null,
_StartingDirection: null,
_Activated: null,
_event_Updating: function (a) {
this.wrapper.enabled && (this._Activated && ("Up" == this._CurrentDirection ? (this.actor.setXVelocity(0), this.actor.applyImpulse(0, -1, 1)) : "Down" ==
this._CurrentDirection ? (this.actor.setXVelocity(0), this.actor.applyImpulse(0, 1, 1)) : "Left" == this._CurrentDirection ? (this.actor.setYVelocity(0), this.actor.applyImpulse(-1, 0, 1)) : "Right" == this._CurrentDirection && (this.actor.setYVelocity(0), this.actor.applyImpulse(1, 0, 1))), this.actor.getXVelocity() > this._MaxSpeed && this.actor.setXVelocity(this._MaxSpeed), this.actor.getYVelocity() > this._MaxSpeed && this.actor.setYVelocity(this._MaxSpeed), this.actor.getXVelocity() < -this._MaxSpeed && this.actor.setXVelocity(-this._MaxSpeed),
this.actor.getYVelocity() < -this._MaxSpeed && this.actor.setYVelocity(-this._MaxSpeed))
},
_event_HitsSomething: function (a) {
this.wrapper.enabled && a.otherActor.getGroup() != f.getActorGroup(6) && ("Up" == this._CurrentDirection ? this._CurrentDirection = "Down" : "Down" == this._CurrentDirection && (this._CurrentDirection = "Up"), "Left" == this._CurrentDirection ? this._CurrentDirection = "Right" : "Right" == this._CurrentDirection && (this._CurrentDirection = "Left"))
},
init: function () {
for (var a = this, b = 0, c = f.getActorsOfType(f.getActorType(18)); b <
c.length;) {
var d = c[b];
++b;
null == d || d.dead || d.recycled || (this._Hero = d)
}
this._MaxSpeed = this._Speed = 5;
this._StartingDirection = f.randomInt(1, 2);
1 == this._StartingDirection ? this._CurrentDirection = "Left" : 2 == this._StartingDirection && (this._CurrentDirection = "Right");
f.runLater(500, function (b) {
a._Activated = !0
}, this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsSomething))
},
forwardMessage: function (a) {
},
__class__: Dq
});
var Eq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.RNG = "_RNG";
this._RNG = 0;
this.nameMap.h.My_Direction = "_MyDirection";
this._MyDirection = 0;
this.nameMap.h.Warping = "_Warping";
this._Warping = !1;
this.nameMap.h.Speed = "_Speed";
this._Speed = 0
};
k["scripts.ActorEvents_91"] = Eq;
Eq.__name__ = "scripts.ActorEvents_91";
Eq.__super__ = P;
Eq.prototype = u(P.prototype, {
_RNG: null, _MyDirection: null, _Warping: null, _Speed: null, _event_Updating: function (a) {
var b = this;
this.wrapper.enabled && !this._Warping && (31 == this.actor.getY() &&
(this._Warping = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.set_alpha(.5), this.actor.setAnimation("" + this.actor.getAnimation() + "b"), this.actor.setY(208), f.runLater(1E3, function (a) {
b._Warping = !1;
b.actor.set_alpha(1);
b.actor.setAnimation(("" + b.actor.getAnimation()).charAt(0));
b.actor.setVelocity(b._MyDirection, b._Speed);
b._customEvent_play_sound()
}, this.actor)), 209 == this.actor.getY() && (this._Warping = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.set_alpha(.5),
this.actor.setAnimation("" + this.actor.getAnimation() + "b"), this.actor.setY(32), f.runLater(1E3, function (a) {
b._Warping = !1;
b.actor.set_alpha(1);
b.actor.setAnimation(("" + b.actor.getAnimation()).charAt(0));
b.actor.setVelocity(b._MyDirection, b._Speed);
b._customEvent_play_sound()
}, this.actor)), 33 == this.actor.getX() && (this._Warping = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.set_alpha(.5), this.actor.setAnimation("" + this.actor.getAnimation() + "b"), this.actor.setX(352), f.runLater(1E3,
function (a) {
b._Warping = !1;
b.actor.set_alpha(1);
b.actor.setAnimation(("" + b.actor.getAnimation()).charAt(0));
b.actor.setVelocity(b._MyDirection, b._Speed);
b._customEvent_play_sound()
}, this.actor)), 353 == this.actor.getX() && (this._Warping = !0, this.actor.setXVelocity(0), this.actor.setYVelocity(0), this.actor.set_alpha(.5), this.actor.setAnimation("" + this.actor.getAnimation() + "b"), this.actor.setX(34), f.runLater(1E3, function (a) {
b._Warping = !1;
b.actor.set_alpha(1);
b.actor.setAnimation(("" + b.actor.getAnimation()).charAt(0));
b.actor.setVelocity(b._MyDirection, b._Speed);
b._customEvent_play_sound()
}, this.actor)))
}, _customEvent_play_sound: function () {
f.playSoundOnChannel(f.getSound(144), h.engine.getGameAttribute("Sound_Channel") | 0);
var a = h.engine, b = h.engine.getGameAttribute("Sound_Channel") + 1;
a.gameAttributes.h.Sound_Channel = b
}, init: function () {
var a = this;
this._RNG = f.randomInt(1, 4);
this._MyDirection = 90 * this._RNG + 45;
this._Speed = 5;
2 != this._RNG && 4 != this._RNG || this.actor.growTo(-1, 1, .01, Wa.linear);
f.runLater(500, function (b) {
a.actor.setVelocity(a._MyDirection,
a._Speed)
}, this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
}, forwardMessage: function (a) {
}, __class__: Eq
});
var Fq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Change_Directions = "_ChangeDirections";
this._ChangeDirections = !1;
this.nameMap.h.Hero = "_Hero";
this.nameMap.h.Speed = "_Speed";
this._Speed = 0;
this.nameMap.h.Current_Direction = "_CurrentDirection";
this._CurrentDirection = "";
this.nameMap.h.Max_Speed = "_MaxSpeed";
this._MaxSpeed = 0;
this.nameMap.h.Starting_Direction = "_StartingDirection";
this._StartingDirection = 0;
this.nameMap.h.Activated = "_Activated";
this._Activated = !1
};
k["scripts.ActorEvents_95"] = Fq;
Fq.__name__ = "scripts.ActorEvents_95";
Fq.__super__ = P;
Fq.prototype = u(P.prototype, {
_ChangeDirections: null,
_Hero: null,
_Speed: null,
_CurrentDirection: null,
_MaxSpeed: null,
_StartingDirection: null,
_Activated: null,
_event_Updating: function (a) {
var b = this;
this.wrapper.enabled && this._Activated && (a = this._Hero, (f.isPrimitive(a) || ("string" == typeof a ? "" != w.__cast(a, String) : null != a)) && this._Hero.isAlive() &&
(-134 > za.angle_to_target("degrees", this._Hero, this.actor) && -136 < za.angle_to_target("degrees", this._Hero, this.actor) && !this._ChangeDirections && (this._ChangeDirections = !0, this._CurrentDirection = "NW", f.runLater(1E3 * f.randomFloatBetween(.9, .99), function (a) {
b._ChangeDirections = !1;
b.actor.setAnimation("Idle")
}, this.actor)), -44 > za.angle_to_target("degrees", this._Hero, this.actor) && -46 < za.angle_to_target("degrees", this._Hero, this.actor) && !this._ChangeDirections && (this._ChangeDirections = !0, this._CurrentDirection =
"NE", f.runLater(1E3 * f.randomFloatBetween(.9, .99), function (a) {
b._ChangeDirections = !1;
b.actor.setAnimation("Idle")
}, this.actor)), 46 > za.angle_to_target("degrees", this._Hero, this.actor) && 44 < za.angle_to_target("degrees", this._Hero, this.actor) && !this._ChangeDirections && (this._ChangeDirections = !0, this._CurrentDirection = "SE", f.runLater(1E3 * f.randomFloatBetween(.9, .99), function (a) {
b._ChangeDirections = !1;
b.actor.setAnimation("Idle")
}, this.actor)), 136 > za.angle_to_target("degrees", this._Hero, this.actor) && 134 <
za.angle_to_target("degrees", this._Hero, this.actor) && !this._ChangeDirections && (this._ChangeDirections = !0, this._CurrentDirection = "SW", f.runLater(1E3 * f.randomFloatBetween(.9, .99), function (a) {
b._ChangeDirections = !1;
b.actor.setAnimation("Idle")
}, this.actor))), this._ChangeDirections ? ("NW" == this._CurrentDirection ? this.actor.applyImpulseInDirection(-135, 1) : "NE" == this._CurrentDirection ? this.actor.applyImpulseInDirection(-45, 1) : "SE" == this._CurrentDirection ? this.actor.applyImpulseInDirection(45, 1) : "SW" == this._CurrentDirection &&
this.actor.applyImpulseInDirection(135, 1), this.actor.setAnimation(this._CurrentDirection)) : (this.actor.setXVelocity(0), this.actor.setYVelocity(0)), this.actor.getXVelocity() > this._MaxSpeed && this.actor.setXVelocity(this._MaxSpeed), this.actor.getYVelocity() > this._MaxSpeed && this.actor.setYVelocity(this._MaxSpeed), this.actor.getXVelocity() < -this._MaxSpeed && this.actor.setXVelocity(-this._MaxSpeed), this.actor.getYVelocity() < -this._MaxSpeed && this.actor.setYVelocity(-this._MaxSpeed))
},
_event_HitsSomething: function (a) {
this.wrapper.enabled &&
(this._ChangeDirections = !1, "Up" == this._CurrentDirection ? this._CurrentDirection = "Down" : "Down" == this._CurrentDirection && (this._CurrentDirection = "Up"), "Left" == this._CurrentDirection ? this._CurrentDirection = "Right" : "Right" == this._CurrentDirection && (this._CurrentDirection = "Left"))
},
init: function () {
for (var a = this, b = 0, c = f.getActorsOfType(f.getActorType(18)); b < c.length;) {
var d = c[b];
++b;
null == d || d.dead || d.recycled || (this._Hero = d)
}
this._MaxSpeed = this._Speed = 4;
f.runLater(500, function (b) {
a._Activated = !0
}, this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsSomething))
},
forwardMessage: function (a) {
},
__class__: Fq
});
var Gq = function (a, b, c) {
P.call(this, b)
};
k["scripts.ActorEvents_97"] = Gq;
Gq.__name__ = "scripts.ActorEvents_97";
Gq.__super__ = P;
Gq.prototype = u(P.prototype, {
init: function () {
}, forwardMessage: function (a) {
}, __class__: Gq
});
var Hq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Stopped = "_Stopped";
this._Stopped = !1;
this.nameMap.h.Spawn =
"_Spawn";
this.nameMap.h.Dying = "_Dying";
this._Dying = !1;
this.nameMap.h.Target_Actor = "_TargetActor";
this.nameMap.h.My_Direction = "_MyDirection";
this._MyDirection = 0;
this.nameMap.h.Wander_Left = "_WanderLeft";
this._WanderLeft = !1;
this.nameMap.h.Hit_Tile = "_HitTile";
this._HitTile = !1;
this.nameMap.h.Speed = "_Speed";
this._Speed = 0
};
k["scripts.ActorEvents_99"] = Hq;
Hq.__name__ = "scripts.ActorEvents_99";
Hq.__super__ = P;
Hq.prototype = u(P.prototype, {
_Stopped: null, _Spawn: null, _Dying: null, _TargetActor: null, _MyDirection: null,
_WanderLeft: null, _HitTile: null, _Speed: null, _event_HitsTiles: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = f.getActorGroup(1);
var d = a.otherActor.getType();
a = a.otherActor.getGroup();
c = c == d || c == a
} else c = !1;
c && !this._HitTile && (this._HitTile = !0, 1 == f.randomInt(0, 1) ? this._MyDirection += f.randomInt(90, 120) : this._MyDirection -= f.randomInt(-90, -100), f.runLater(200, function (a) {
b._HitTile = !1
}, this.actor))
}, init: function () {
var a = this;
this._Speed = 2.5;
f.runLater(10, function (b) {
a.actor.applyImpulseInDirection(a._MyDirection,
a._Speed)
}, this.actor);
f.runPeriodically(500, function (b) {
f.createRecycledActor(f.getActorType(101), a.actor.getXCenter() - 8, a.actor.getYCenter() - 8, 0);
a.actor.setXVelocity(0);
a.actor.setYVelocity(0);
a._MyDirection = a._WanderLeft ? a._MyDirection - 3 : a._MyDirection + 3;
a.actor.applyImpulseInDirection(a._MyDirection, a._Speed)
}, this.actor);
this.addListener(this.actor.whenCollided, q(this, this._event_HitsTiles))
}, forwardMessage: function (a) {
}, __class__: Hq
});
var Iq = function (a, b) {
f.call(this);
this.nameMap.h.x_Death =
"_xDeath";
this._xDeath = 0;
this.nameMap.h.y_Death = "_yDeath";
this._yDeath = 0;
this.nameMap.h.RNG = "_RNG";
this._RNG = 0;
this.nameMap.h.Pickups_Live = "_PickupsLive";
this._PickupsLive = 0;
this.nameMap.h.Enemies_Live = "_EnemiesLive";
this._EnemiesLive = 0;
this.nameMap.h.Passed_Level = "_PassedLevel";
this._PassedLevel = !1;
this.nameMap.h.Started = "_Started";
this._Started = !1;
this.nameMap.h.Enemy_Spawner_Counter = "_EnemySpawnerCounter";
this._EnemySpawnerCounter = 0;
this.nameMap.h.Death_Screen_Flash = "_DeathScreenFlash";
this._DeathScreenFlash =
0;
this.nameMap.h.Endless_Bosses_Spawned = "_EndlessBossesSpawned";
this._EndlessBossesSpawned = !1;
this.nameMap.h.Game_Over = "_GameOver";
this._GameOver = !1;
this.nameMap.h.Game_Over_UI = "_GameOverUI";
this._GameOverUI = !1;
this.nameMap.h.Game_Over_Scan = "_GameOverScan";
this._GameOverScan = 0;
this.nameMap.h.Hero_Ready = "_HeroReady";
this._HeroReady = !1;
this.nameMap.h.Big_Boss_Level = "_BigBossLevel";
this._BigBossLevel = !1;
this.nameMap.h.Entered_Door = "_EnteredDoor";
this._EnteredDoor = !1;
this.nameMap.h.Weapon_Pickups_Live =
"_WeaponPickupsLive";
this._WeaponPickupsLive = 0;
this.nameMap.h.Timer = "_Timer";
this._Timer = 0
};
k["scripts.Design_130_130"] = Iq;
Iq.__name__ = "scripts.Design_130_130";
Iq.__super__ = Md;
Iq.prototype = u(Md.prototype, {
_xDeath: null,
_yDeath: null,
_RNG: null,
_PickupsLive: null,
_EnemiesLive: null,
_PassedLevel: null,
_Started: null,
_EnemySpawnerCounter: null,
_DeathScreenFlash: null,
_EndlessBossesSpawned: null,
_GameOver: null,
_GameOverUI: null,
_GameOverScan: null,
_HeroReady: null,
_BigBossLevel: null,
_EnteredDoor: null,
_WeaponPickupsLive: null,
_Timer: null,
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled) {
if (this._GameOver && 224 > this._GameOverScan && 0 < this._GameOverScan) {
var d = 254, e = 55;
b = 147;
null == b && (b = 0);
null == e && (e = 0);
null == d && (d = 0);
d = d << 16 | e << 8 | b;
a.fillColor = 0 > d ? d + 16777216 : d;
a.alpha = .3;
c = this._GameOverScan;
b = 20 * a.scaleX;
c *= a.scaleY;
d = 394 * a.scaleX;
e = 16 * a.scaleY;
!a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY);
0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor,
a.alpha);
a.graphics.beginFill(a.fillColor, a.alpha);
a.graphics.drawRect(a.x + b, a.y + c, d, e);
a.graphics.endFill();
a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY);
a.graphics.lineStyle()
}
0 < this._DeathScreenFlash && (b = e = d = 255, null == b && (b = 0), null == e && (e = 0), null == d && (d = 0), d = d << 16 | e << 8 | b, a.fillColor = 0 > d ? d + 16777216 : d, a.alpha = this._DeathScreenFlash / 100, c = b = 0, d = f.getScreenWidth(), e = f.getScreenHeight(), b *= a.scaleX, c *= a.scaleY, d *= a.scaleX, e *= a.scaleY, !a.drawActor || null != a.actor && a.actor.isHUD || (a.x -=
h.cameraX, a.y -= h.cameraY), 0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha), a.graphics.beginFill(a.fillColor, a.alpha), a.graphics.drawRect(a.x + b, a.y + c, d, e), a.graphics.endFill(), a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY), a.graphics.lineStyle());
if (this._GameOverUI) {
d = f.getFont(172);
null != d && d != a.font && (a.font = d);
b = (f.getSceneWidth() - a.font.getTextWidth("GAME OVER") / h.SCALE) / 2;
null == a.font && (a.font = a.defaultFont, a.font.fontScale !=
h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + b * a.scaleX, c = a.y + 55 * a.scaleY) : (b = a.x + b * a.scaleX - h.cameraX, c = a.y + 55 * a.scaleY - h.cameraY) : (b = a.x + b * a.scaleX, c = a.y + 55 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
var g = null;
d = a.font;
var l = "GAME OVER:" + d.ID + ":" + a.alpha + ":" + h.SCALE + ":" + d.get_letterSpacing();
Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, l) ? (d = ca.drawnStringCache.h[l], d.lifetime = 5, g = d.img) : (d = a.font.font.getTextWidth("GAME OVER", a.font.fontScale),
e = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < d && 0 < e && (g = new ka(d, e, !0, 0), a.font.font.renderToImg(g, "GAME OVER", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), d = new vc, d.img = g, d.lifetime = 5, ca.drawnStringCache.h[l] = d, ca.drawnStringCacheKeys.push(l)));
null != g && (a.graphics.beginBitmapFill(g, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, g.width, g.height), a.graphics.endFill())
}
}
},
_event_Updating: function (a) {
this.wrapper.enabled && (25 <= h.engine.getGameAttribute("Sound_Channel") && (h.engine.gameAttributes.h.Sound_Channel =
6), !this._Started && this._HeroReady && (f.isKeyPressed("up") || f.isKeyPressed("down") || f.isKeyPressed("left") || f.isKeyPressed("right") || f.isKeyPressed("W") || f.isKeyPressed("S") || f.isKeyPressed("A") || f.isKeyPressed("D")) && (this._Started = !0, this._Timer = 0), !this._Started || this._PassedLevel || this._GameOver || (this._Timer += f.getStepSize(), 2500 == this._Timer && (f.createRecycledActorOnLayer(f.getActorType(81), 136, 116, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", 1), f.getLastCreatedActor().setValue("ActorEvents_81",
"_SpawnID", "Endless")), 5E3 == this._Timer && (f.createRecycledActorOnLayer(f.getActorType(81), 136, 116, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", 1), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless")), 7500 == this._Timer && (f.createRecycledActorOnLayer(f.getActorType(81), 136, 116, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", 1), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless")), 1E4 == this._Timer &&
(f.createRecycledActorOnLayer(f.getActorType(81), 272, 116, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", 1), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Boss_Endless"), this._Timer = 0)))
},
_customEvent_unlocked_door: function () {
this._PassedLevel = !0;
for (var a = 0, b = f.getActorsOfType(f.getActorType(81)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || f.recycleActor(c)
}
f.runLater(1E3, function (a) {
a = 0;
for (var b = f.getActorsOfType(f.getActorType(85)); a <
b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || f.recycleActor(c)
}
a = 0;
for (b = f.getActorsOfType(f.getActorType(154)); a < b.length;) c = b[a], ++a, null == c || c.dead || c.recycled || (c.setValue("ActorEvents_154", "_PassedLevel", !0), c.shout("_customEvent_open_door"))
}, null)
},
_customEvent_entered_door: function () {
if (!this._EnteredDoor) {
this._EnteredDoor = !0;
h.engine.gameAttributes.h.Tutorial_Complete = !0;
var a = zb.get().scenes.h[15].getID(), b = 204, c = 204, d = 204;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
var e = f.createFadeOut(.3,
b << 16 | c << 8 | d);
d = c = b = 204;
null == d && (d = 0);
null == c && (c = 0);
null == b && (b = 0);
f.switchScene(a, e, f.createFadeIn(.3, b << 16 | c << 8 | d));
f.saveGame("mySave", function (a) {
})
}
},
_customEvent_game_over: function () {
var a = this;
this._GameOver || (this._GameOver = !0, f.runLater(1E3, function (b) {
a._GameOverScan = 32;
f.runPeriodically(50, function (b) {
if (a._GameOverScan < f.getSceneHeight()) {
a._GameOverScan += 16;
b = 0;
for (var c = w.__cast(f.getActorGroup(5), df).list; b < c.length;) {
var e = c[b];
++b;
null == e || e.dead || e.recycled || e.getY() < a._GameOverScan +
16 && e.shout("_customEvent_die")
}
b = 0;
for (c = w.__cast(f.getActorGroup(8), df).list; b < c.length;) e = c[b], ++b, null == e || e.dead || e.recycled || e.getY() < a._GameOverScan + 16 && e.shout("_customEvent_die");
b = 0;
for (c = w.__cast(f.getActorGroup(10), df).list; b < c.length;) e = c[b], ++b, null == e || e.dead || e.recycled || e.getY() < a._GameOverScan + 16 && e.shout("_customEvent_die");
b = 0;
for (c = f.getActorsOfType(f.getActorType(81)); b < c.length;) e = c[b], ++b, null == e || e.dead || e.recycled || e.getY() < a._GameOverScan + 16 && f.recycleActor(e);
b = 0;
for (c =
f.getActorsOfType(f.getActorType(73)); b < c.length;) e = c[b], ++b, null == e || e.dead || e.recycled || e.getY() < a._GameOverScan + 16 && f.recycleActor(e);
b = 0;
for (c = f.getActorsOfType(f.getActorType(85)); b < c.length;) e = c[b], ++b, null == e || e.dead || e.recycled || e.getY() < a._GameOverScan + 16 && f.recycleActor(e)
}
}, null)
}, null), f.runLater(2E3, function (b) {
a._GameOverUI = !0;
f.playSoundOnChannel(f.getSound(179), 5);
f.createRecycledActor(f.getActorType(174), 74, 188, 0);
f.createRecycledActor(f.getActorType(176), 294, 188, 0)
}, null), h.engine.gameAttributes.h.Score =
0, h.engine.gameAttributes.h.Big_Boss_Order = "asdf", f.runLater(50, function (b) {
a._DeathScreenFlash = 95;
f.runLater(100, function (b) {
a._DeathScreenFlash = 0;
f.startShakingScreen(.02, .5)
}, null)
}, null), f.saveGame("mySave", function (a) {
}))
},
_customEvent_enemy_type_killed: function () {
},
init: function () {
0 == h.engine.getGameAttribute("Lives") && (h.engine.gameAttributes.h.Lives = 3);
0 == h.engine.getGameAttribute("High_Score") && (h.engine.gameAttributes.h.High_Score = 1);
0 == h.engine.getGameAttribute("Score") && (h.engine.gameAttributes.h.Score =
1);
f.createRecycledActor(f.getActorType(182), 10, 17, 0);
f.createRecycledActor(f.getActorType(188), 276, 5, 0);
h.engine.gameAttributes.h.Enemies_Live = 0;
ya.isMobileGame() || f.disableBehaviorForScene("MyJoystick");
this.addListener(f.engine.whenDrawing, q(this, this._event_Drawing));
this.addListener(f.engine.whenUpdated, q(this, this._event_Updating))
},
forwardMessage: function (a) {
},
__class__: Iq
});
var Jq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Actor = "actor";
this.nameMap.h.Weapon_Name = "_WeaponName";
this._WeaponName =
"";
this.nameMap.h.Display_Weapon_Name = "_DisplayWeaponName";
this._DisplayWeaponName = !1;
this.nameMap.h.Weapon_RNG = "_WeaponRNG";
this._WeaponRNG = 0;
this.nameMap.h.Hero = "_Hero";
this.nameMap.h.Picked_Up = "_PickedUp";
this._PickedUp = !1
};
k["scripts.Design_132_132_TutorialWeaponManager"] = Jq;
Jq.__name__ = "scripts.Design_132_132_TutorialWeaponManager";
Jq.__super__ = P;
Jq.prototype = u(P.prototype, {
_WeaponName: null,
_DisplayWeaponName: null,
_WeaponRNG: null,
_Hero: null,
_PickedUp: null,
_event_Updating: function (a) {
var b = this;
if (this.wrapper.enabled && (a = this._Hero, f.isPrimitive(a) || ("string" == typeof a ? "" != w.__cast(a, String) : null != a))) {
if (this._DisplayWeaponName) a = !1; else {
a = this.actor.getXCenter();
var c = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = this.actor.getYCenter();
var d = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ?
w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = this._Hero.getXCenter();
var e = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = this._Hero.getYCenter();
a = 32 > za.distance_between_points(c, d, e, null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ?
parseFloat(a) : parseFloat(z.string(a)))
}
a && (this._DisplayWeaponName = !0);
this._DisplayWeaponName ? (a = this.actor.getXCenter(), c = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)), a = this.actor.getYCenter(), d = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)),
a = this._Hero.getXCenter(), e = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)), a = this._Hero.getYCenter(), a = 32 < za.distance_between_points(c, d, e, null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)))) : a = !1;
a && (this._DisplayWeaponName = !1);
this._PickedUp ? a = !1 : (a = this.actor.getXCenter(), c = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)), a = this.actor.getYCenter(), d = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)), a = this._Hero.getXCenter(), e = null == a ? 0 : "number" == typeof a ?
w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)), a = this._Hero.getYCenter(), a = 14 > za.distance_between_points(c, d, e, null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a))));
a && (this._PickedUp = !0);
this._PickedUp ? (a = this.actor.getXCenter(), c = null == a ? 0 : "number" == typeof a ?
w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)), a = this.actor.getYCenter(), d = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)), a = this._Hero.getXCenter(), e = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ?
w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)), a = this._Hero.getYCenter(), a = 14 < za.distance_between_points(c, d, e, null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)))) : a = !1;
a && (this._PickedUp = !1, f.runLater(1E3, function (a) {
f.createRecycledActor(f.getActorType(73), b.actor.getX(), b.actor.getY(), 0);
f.getLastCreatedActor().setValue("Pickup_Manager",
"_WeaponRNG", b._WeaponRNG)
}, this.actor))
}
},
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled && this._DisplayWeaponName) {
b = f.getFont(252);
null != b && b != a.font && (a.font = b);
c = this.actor;
a.drawActor = !0;
a.actor = c;
c.smoothMove ? (b = c.drawX - Math.floor(c.cacheWidth / 2) - c.currOffset.x, c = c.drawY - Math.floor(c.cacheHeight / 2) - c.currOffset.y, a.x = b * a.scaleX, a.y = c * a.scaleY) : (a.x = c.colX * a.scaleX, a.y = c.colY * a.scaleY);
if (this.actor.getX() < f.getSceneWidth() / 2) {
var d = this._WeaponName;
b = this.actor.getWidth() + 4;
null == a.font &&
(a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + b * a.scaleX, c = a.y + 4 * a.scaleY) : (b = a.x + b * a.scaleX - h.cameraX, c = a.y + 4 * a.scaleY - h.cameraY) : (b = a.x + b * a.scaleX, c = a.y + 4 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
var e = null, g = a.font;
g = d + ":" + g.ID + ":" + a.alpha + ":" + h.SCALE + ":" + g.get_letterSpacing();
if (Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, g)) d = ca.drawnStringCache.h[g], d.lifetime = 5, e = d.img; else {
var l = a.font.font.getTextWidth(d,
a.font.fontScale), k = a.font.font.getFontHeight() * a.font.fontScale | 0;
0 < l && 0 < k && (e = new ka(l, k, !0, 0), a.font.font.renderToImg(e, d, 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), d = new vc, d.img = e, d.lifetime = 5, ca.drawnStringCache.h[g] = d, ca.drawnStringCacheKeys.push(g))
}
} else d = this._WeaponName, b = -(f.getFont(217).getTextWidth(this._WeaponName) / h.SCALE + -4), null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE)), a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + b * a.scaleX, c = a.y + 4 * a.scaleY) :
(b = a.x + b * a.scaleX - h.cameraX, c = a.y + 4 * a.scaleY - h.cameraY) : (b = a.x + b * a.scaleX, c = a.y + 4 * a.scaleY), a.mtx.identity(), a.mtx.translate(b, c), e = null, g = a.font, g = d + ":" + g.ID + ":" + a.alpha + ":" + h.SCALE + ":" + g.get_letterSpacing(), Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, g) ? (d = ca.drawnStringCache.h[g], d.lifetime = 5, e = d.img) : (l = a.font.font.getTextWidth(d, a.font.fontScale), k = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < l && 0 < k && (e = new ka(l, k, !0, 0), a.font.font.renderToImg(e, d, 0, a.alpha, 0, 0, a.font.fontScale,
0, !1), d = new vc, d.img = e, d.lifetime = 5, ca.drawnStringCache.h[g] = d, ca.drawnStringCacheKeys.push(g)));
null != e && (a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, e.width, e.height), a.graphics.endFill())
}
},
init: function () {
var a = this;
this.actor.disableActorDrawing();
for (var b = 0, c = f.getActorsOfType(f.getActorType(18)); b < c.length;) {
var d = c[b];
++b;
null == d || d.dead || d.recycled || (this._Hero = d)
}
f.runLater(1E3 * f.randomFloatBetween(.1, .4), function (b) {
f.createRecycledActor(f.getActorType(73),
a.actor.getX(), a.actor.getY(), 0);
f.getLastCreatedActor().setValue("Pickup_Manager", "_WeaponRNG", a._WeaponRNG)
}, this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing))
},
forwardMessage: function (a) {
},
__class__: Jq
});
var Kq = function (a, b) {
f.call(this);
this.nameMap.h.x_Death = "_xDeath";
this._xDeath = 0;
this.nameMap.h.y_Death = "_yDeath";
this._yDeath = 0;
this.nameMap.h.RNG = "_RNG";
this._RNG = 0;
this.nameMap.h.Pickups_Live =
"_PickupsLive";
this._PickupsLive = 0;
this.nameMap.h.Enemies_Live = "_EnemiesLive";
this._EnemiesLive = 0;
this.nameMap.h.Passed_Level = "_PassedLevel";
this._PassedLevel = !1;
this.nameMap.h.Started = "_Started";
this._Started = !1;
this.nameMap.h.Enemy_Spawner_Counter = "_EnemySpawnerCounter";
this._EnemySpawnerCounter = 0;
this.nameMap.h.Death_Screen_Flash = "_DeathScreenFlash";
this._DeathScreenFlash = 0;
this.nameMap.h.Endless_Bosses_Spawned = "_EndlessBossesSpawned";
this._EndlessBossesSpawned = !1;
this.nameMap.h.Game_Over = "_GameOver";
this._GameOver = !1;
this.nameMap.h.Game_Over_UI = "_GameOverUI";
this._GameOverUI = !1;
this.nameMap.h.Game_Over_Scan = "_GameOverScan";
this._GameOverScan = 0;
this.nameMap.h.Hero_Ready = "_HeroReady";
this._HeroReady = !1;
this.nameMap.h.Big_Boss_Level = "_BigBossLevel";
this._BigBossLevel = !1;
this.nameMap.h.Enemy_Type_Killed = "_EnemyTypeKilled";
this.nameMap.h.Speedrun_Timer = "_SpeedrunTimer";
this._SpeedrunTimer = 0;
this.nameMap.h.Entered_Door = "_EnteredDoor";
this._EnteredDoor = !1;
this.nameMap.h.Big_Boss_Slot_1 = "_BigBossSlot1";
this._BigBossSlot1 = 0;
this.nameMap.h.Big_Boss_Slot_2 = "_BigBossSlot2";
this._BigBossSlot2 = 0;
this.nameMap.h.Big_Boss_Slot_3 = "_BigBossSlot3";
this._BigBossSlot3 = 0;
this.nameMap.h.Big_Boss_Slot_4 = "_BigBossSlot4";
this._BigBossSlot4 = 0;
this.nameMap.h.RNG_2 = "_RNG2";
this._RNG2 = 0;
this.nameMap.h.End_Boss_Level = "_EndBossLevel";
this._EndBossLevel = !1;
this.nameMap.h.Timer_X = "_TimerX";
this._TimerX = 0;
this.nameMap.h.Timer_Y = "_TimerY";
this._TimerY = 0;
this.nameMap.h.bannerTime = "_bannerTime";
this._bannerTime = 0
};
k["scripts.Design_14_14_SceneManager"] =
Kq;
Kq.__name__ = "scripts.Design_14_14_SceneManager";
Kq.__super__ = Md;
Kq.prototype = u(Md.prototype, {
_xDeath: null,
_yDeath: null,
_RNG: null,
_PickupsLive: null,
_EnemiesLive: null,
_PassedLevel: null,
_Started: null,
_EnemySpawnerCounter: null,
_DeathScreenFlash: null,
_EndlessBossesSpawned: null,
_GameOver: null,
_GameOverUI: null,
_GameOverScan: null,
_HeroReady: null,
_BigBossLevel: null,
_EnemyTypeKilled: null,
_SpeedrunTimer: null,
_EnteredDoor: null,
_BigBossSlot1: null,
_BigBossSlot2: null,
_BigBossSlot3: null,
_BigBossSlot4: null,
_RNG2: null,
_EndBossLevel: null,
_TimerX: null,
_TimerY: null,
_bannerTime: null,
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled) {
var d = f.getFont(252);
null != d && d != a.font && (a.font = d);
d = f.getFont(255);
null != d && d != a.font && (a.font = d);
d = "" + Math.floor(this._SpeedrunTimer / 1E3 / 60) + ":" + ("" + this._SpeedrunTimer / 1E3 % 60).substring(0, 4);
b = this._TimerX;
c = this._TimerY;
null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + b * a.scaleX, c = a.y + c *
a.scaleY) : (b = a.x + b * a.scaleX - h.cameraX, c = a.y + c * a.scaleY - h.cameraY) : (b = a.x + b * a.scaleX, c = a.y + c * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
var e = null, g = a.font,
l = d + ":" + g.ID + ":" + a.alpha + ":" + h.SCALE + ":" + g.get_letterSpacing();
if (Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, l)) d = ca.drawnStringCache.h[l], d.lifetime = 5, e = d.img; else {
g = a.font.font.getTextWidth(d, a.font.fontScale);
var k = a.font.font.getFontHeight() * a.font.fontScale | 0;
0 < g && 0 < k && (e = new ka(g, k, !0, 0), a.font.font.renderToImg(e, d, 0,
a.alpha, 0, 0, a.font.fontScale, 0, !1), d = new vc, d.img = e, d.lifetime = 5, ca.drawnStringCache.h[l] = d, ca.drawnStringCacheKeys.push(l))
}
null != e && (a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, e.width, e.height), a.graphics.endFill());
if (!this._Started) {
d = f.getFont(172);
null != d && d != a.font && (a.font = d);
if (5 == h.engine.getGameAttribute("Score") || 10 == h.engine.getGameAttribute("Score") || 15 == h.engine.getGameAttribute("Score") || 20 == h.engine.getGameAttribute("Score")) b = (f.getSceneWidth() - a.font.getTextWidth("BOSS") /
h.SCALE) / 2, null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE)), a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + b * a.scaleX, c = a.y + 184 * a.scaleY) : (b = a.x + b * a.scaleX - h.cameraX, c = a.y + 184 * a.scaleY - h.cameraY) : (b = a.x + b * a.scaleX, c = a.y + 184 * a.scaleY), a.mtx.identity(), a.mtx.translate(b, c), e = null, g = a.font, l = "BOSS:" + g.ID + ":" + a.alpha + ":" + h.SCALE + ":" + g.get_letterSpacing(), Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, l) ? (d = ca.drawnStringCache.h[l], d.lifetime = 5, e =
d.img) : (g = a.font.font.getTextWidth("BOSS", a.font.fontScale), k = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < g && 0 < k && (e = new ka(g, k, !0, 0), a.font.font.renderToImg(e, "BOSS", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), d = new vc, d.img = e, d.lifetime = 5, ca.drawnStringCache.h[l] = d, ca.drawnStringCacheKeys.push(l))), null != e && (a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, e.width, e.height), a.graphics.endFill());
25 == h.engine.getGameAttribute("Score") && (b = (f.getSceneWidth() - a.font.getTextWidth("END BOSS") /
h.SCALE) / 2, null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE)), a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + b * a.scaleX, c = a.y + 184 * a.scaleY) : (b = a.x + b * a.scaleX - h.cameraX, c = a.y + 184 * a.scaleY - h.cameraY) : (b = a.x + b * a.scaleX, c = a.y + 184 * a.scaleY), a.mtx.identity(), a.mtx.translate(b, c), e = null, g = a.font, l = "END BOSS:" + g.ID + ":" + a.alpha + ":" + h.SCALE + ":" + g.get_letterSpacing(), Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, l) ? (d = ca.drawnStringCache.h[l], d.lifetime =
5, e = d.img) : (g = a.font.font.getTextWidth("END BOSS", a.font.fontScale), k = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < g && 0 < k && (e = new ka(g, k, !0, 0), a.font.font.renderToImg(e, "END BOSS", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), d = new vc, d.img = e, d.lifetime = 5, ca.drawnStringCache.h[l] = d, ca.drawnStringCacheKeys.push(l))), null != e && (a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, e.width, e.height), a.graphics.endFill()))
}
this._GameOver && 224 > this._GameOverScan && 0 < this._GameOverScan &&
(d = 254, b = 55, c = 147, null == c && (c = 0), null == b && (b = 0), null == d && (d = 0), d = d << 16 | b << 8 | c, a.fillColor = 0 > d ? d + 16777216 : d, a.alpha = .3, c = this._GameOverScan, b = 20 * a.scaleX, c *= a.scaleY, g = 394 * a.scaleX, k = 16 * a.scaleY, !a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY), 0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha), a.graphics.beginFill(a.fillColor, a.alpha), a.graphics.drawRect(a.x + b, a.y + c, g, k), a.graphics.endFill(), a.drawActor && !a.actor.isHUD &&
(a.x += h.cameraX, a.y += h.cameraY), a.graphics.lineStyle());
0 < this._DeathScreenFlash && (c = b = d = 255, null == c && (c = 0), null == b && (b = 0), null == d && (d = 0), d = d << 16 | b << 8 | c, a.fillColor = 0 > d ? d + 16777216 : d, a.alpha = this._DeathScreenFlash / 100, c = b = 0, g = f.getScreenWidth(), k = f.getScreenHeight(), b *= a.scaleX, c *= a.scaleY, g *= a.scaleX, k *= a.scaleY, !a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY), 0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha), a.graphics.beginFill(a.fillColor,
a.alpha), a.graphics.drawRect(a.x + b, a.y + c, g, k), a.graphics.endFill(), a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY), a.graphics.lineStyle());
this._GameOverUI && (d = f.getFont(172), null != d && d != a.font && (a.font = d), b = (f.getSceneWidth() - a.font.getTextWidth("GAME OVER") / h.SCALE) / 2, null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE)), a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + b * a.scaleX, c = a.y + 55 * a.scaleY) : (b = a.x + b * a.scaleX - h.cameraX, c = a.y + 55 * a.scaleY -
h.cameraY) : (b = a.x + b * a.scaleX, c = a.y + 55 * a.scaleY), a.mtx.identity(), a.mtx.translate(b, c), e = null, g = a.font, l = "GAME OVER:" + g.ID + ":" + a.alpha + ":" + h.SCALE + ":" + g.get_letterSpacing(), Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, l) ? (d = ca.drawnStringCache.h[l], d.lifetime = 5, e = d.img) : (g = a.font.font.getTextWidth("GAME OVER", a.font.fontScale), k = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < g && 0 < k && (e = new ka(g, k, !0, 0), a.font.font.renderToImg(e, "GAME OVER", 0, a.alpha, 0, 0, a.font.fontScale, 0,
!1), d = new vc, d.img = e, d.lifetime = 5, ca.drawnStringCache.h[l] = d, ca.drawnStringCacheKeys.push(l))), null != e && (a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, e.width, e.height), a.graphics.endFill()), d = f.getFont(173), null != d && d != a.font && (a.font = d), d = "LEVEL: " + h.engine.getGameAttribute("Score"), b = (f.getSceneWidth() - a.font.getTextWidth("LEVEL: " + h.engine.getGameAttribute("Score")) / h.SCALE) / 2, null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE)),
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + b * a.scaleX, c = a.y + 200 * a.scaleY) : (b = a.x + b * a.scaleX - h.cameraX, c = a.y + 200 * a.scaleY - h.cameraY) : (b = a.x + b * a.scaleX, c = a.y + 200 * a.scaleY), a.mtx.identity(), a.mtx.translate(b, c), e = null, g = a.font, l = d + ":" + g.ID + ":" + a.alpha + ":" + h.SCALE + ":" + g.get_letterSpacing(), Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, l) ? (d = ca.drawnStringCache.h[l], d.lifetime = 5, e = d.img) : (g = a.font.font.getTextWidth(d, a.font.fontScale), k = a.font.font.getFontHeight() * a.font.fontScale | 0,
0 < g && 0 < k && (e = new ka(g, k, !0, 0), a.font.font.renderToImg(e, d, 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), d = new vc, d.img = e, d.lifetime = 5, ca.drawnStringCache.h[l] = d, ca.drawnStringCacheKeys.push(l))), null != e && (a.graphics.beginBitmapFill(e, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, e.width, e.height), a.graphics.endFill()))
}
},
_event_Updating: function (a) {
if (this.wrapper.enabled) {
!this._Started || this._EnteredDoor || this._GameOver || f.engine.isPaused() || (this._SpeedrunTimer += f.getStepSize());
25 <= h.engine.getGameAttribute("Sound_Channel") &&
(h.engine.gameAttributes.h.Sound_Channel = 6);
if (!this._Started && this._HeroReady && (f.isKeyPressed("up") || f.isKeyPressed("down") || f.isKeyPressed("left") || f.isKeyPressed("right") || f.isKeyPressed("W") || f.isKeyPressed("S") || f.isKeyPressed("A") || f.isKeyPressed("D") || f.isMousePressed())) {
this._Started = !0;
a = 0;
for (var b = f.getActorsOfType(f.getActorType(207)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || c.shout("_customEvent_spawn")
}
a = 0;
for (b = f.getActorsOfType(f.getActorType(150)); a < b.length;) c =
b[a], ++a, null == c || c.dead || c.recycled || c.shout("_customEvent_spawn_bosses");
0 == h.engine.getGameAttribute("Score") % 5 && (f.createRecycledActorOnLayer(f.getActorType(81), 128, 128, f.engine.getLayerById(0)), 25 != h.engine.getGameAttribute("Score") ? f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Big_Boss") : 25 == h.engine.getGameAttribute("Score") && f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Big_End_Boss"))
}
this._PassedLevel || 2 == this._PickupsLive || (this._PickupsLive += 1, this._RNG =
f.randomInt(0, 7), f.createRecycledActorOnLayer(f.getActorType(73), 16 * f.randomInt(4, 21), 16 * f.randomInt(4, 11), f.engine.getLayerById(0)), this._EndlessBossesSpawned && 3 > h.engine.getGameAttribute("Enemies_Live") && 4 <= this._RNG && (this._RNG = f.randomInt(0, 3)), f.getLastCreatedActor().setValue("Pickup_Manager", "_WeaponRNG", this._RNG))
}
},
_customEvent_setup_big_boss_order: function () {
this._BigBossSlot1 = f.randomInt(1, 4);
for (this._BigBossSlot2 = f.randomInt(1, 4); this._BigBossSlot2 == this._BigBossSlot1;) this._BigBossSlot2 =
f.randomInt(1, 4);
for (this._BigBossSlot3 = f.randomInt(1, 4); this._BigBossSlot3 == this._BigBossSlot1 || this._BigBossSlot3 == this._BigBossSlot2;) this._BigBossSlot3 = f.randomInt(1, 4);
for (this._BigBossSlot4 = f.randomInt(1, 4); this._BigBossSlot4 == this._BigBossSlot1 || this._BigBossSlot4 == this._BigBossSlot2 || this._BigBossSlot4 == this._BigBossSlot3;) this._BigBossSlot4 = f.randomInt(1, 4);
h.engine.gameAttributes.h.Big_Boss_Order = "" + this._BigBossSlot1 + ("" + this._BigBossSlot2 + ("" + this._BigBossSlot3 + ("" + this._BigBossSlot4)))
},
_customEvent_unlocked_door: function () {
3 > h.engine.getGameAttribute("Lives") && f.runLater(500, function (a) {
a = 0;
for (var b = f.getActorsOfType(f.getActorType(18)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || 0 == h.engine.getGameAttribute("Score") % 5 || (c.getX() > f.getScreenWidth() / 2 ? f.createRecycledActor(f.getActorType(267), 79, 117, 0) : f.createRecycledActor(f.getActorType(267), 335, 117, 0), f.getLastCreatedActor().sendBackward())
}
}, null);
this._PassedLevel = !0;
for (var a = 0, b = f.getActorsOfType(f.getActorType(81)); a <
b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || f.recycleActor(c)
}
a = 0;
for (b = f.getActorsOfType(f.getActorType(73)); a < b.length;) c = b[a], ++a, null == c || c.dead || c.recycled || c.getValue("ActorEvents_73", "_PickedUp") || f.recycleActor(c);
f.runLater(1E3, function (a) {
if (0 != h.engine.getGameAttribute("Score") % 5) {
a = 0;
for (var b = f.getActorsOfType(f.getActorType(154)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (c.setValue("ActorEvents_154", "_PassedLevel", !0), c.shout("_customEvent_open_door"))
}
}
if (25 ==
h.engine.getGameAttribute("Score")) for (f.startShakingScreen(.005, 1.5), a = 0, b = f.getActorsOfType(f.getActorType(218)); a < b.length;) c = b[a], ++a, null == c || c.dead || c.recycled || (c.setValue("ActorEvents_218", "_PassedLevel", !0), c.shout("_customEvent_open_door"))
}, null)
},
_customEvent_entered_door: function () {
if (!this._EnteredDoor) {
this._EnteredDoor = !0;
for (var a = 0, b = f.getActorsOfType(f.getActorType(256)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || f.recycleActor(c)
}
a = 0;
for (b = f.getActorsOfType(f.getActorType(267)); a <
b.length;) c = b[a], ++a, null == c || c.dead || c.recycled || f.recycleActor(c);
26 != h.engine.getGameAttribute("Score") && (a = h.engine, b = h.engine.getGameAttribute("Score") + 1, a.gameAttributes.h.Score = b);
h.engine.getGameAttribute("Score") > h.engine.getGameAttribute("High_Score") && (a = h.engine, b = h.engine.getGameAttribute("Score"), a.gameAttributes.h.High_Score = b);
h.engine.gameAttributes.h.Speedrun_Timer = this._SpeedrunTimer;
25 > h.engine.getGameAttribute("Score") ? (f.engine.pause(), ya.commercialBreak(function () {
f.engine.unpause();
f.saveGame("mySave", function (a) {
});
var a = 0, b = 0, c = 0;
null == c && (c = 0);
null == b && (b = 0);
null == a && (a = 0);
var h = f.createFadeOut(.75, a << 16 | b << 8 | c);
c = b = a = 0;
null == c && (c = 0);
null == b && (b = 0);
null == a && (a = 0);
f.reloadCurrentScene(h, f.createFadeIn(.09, a << 16 | b << 8 | c))
})) : 25 != h.engine.getGameAttribute("Score") || this._EndBossLevel ? 26 == h.engine.getGameAttribute("Score") && (f.engine.pause(), ya.commercialBreak(function () {
f.engine.unpause();
var a = h.engine, b = h.engine.getGameAttribute("Speedrun_Timer");
a.gameAttributes.h.Speedrun_Best =
b;
f.saveGame("mySave", function (a) {
});
a = zb.get().scenes.h[18].getID();
var c = b = 0, l = 0;
null == l && (l = 0);
null == c && (c = 0);
null == b && (b = 0);
var k = f.createFadeOut(1.5, b << 16 | c << 8 | l);
l = c = b = 0;
null == l && (l = 0);
null == c && (c = 0);
null == b && (b = 0);
f.switchScene(a, k, f.createFadeIn(1.5, b << 16 | c << 8 | l))
})) : (f.engine.pause(), ya.commercialBreak(function () {
f.engine.unpause();
f.saveGame("mySave", function (a) {
});
var a = 0, b = 0, c = 0;
null == c && (c = 0);
null == b && (b = 0);
null == a && (a = 0);
var h = f.createFadeOut(.75, a << 16 | b << 8 | c);
c = b = a = 0;
null == c && (c = 0);
null == b && (b = 0);
null == a && (a = 0);
f.reloadCurrentScene(h, f.createFadeIn(.09, a << 16 | b << 8 | c))
}))
}
},
_customEvent_game_over: function () {
var a = this;
if (!this._GameOver) {
this._GameOver = !0;
f.runLater(1E3, function (b) {
a._GameOverScan = 32;
f.runPeriodically(50, function (b) {
if (a._GameOverScan < f.getSceneHeight()) {
a._GameOverScan += 16;
b = 0;
for (var c = w.__cast(f.getActorGroup(5), df).list; b < c.length;) {
var d = c[b];
++b;
null == d || d.dead || d.recycled || d.getY() < a._GameOverScan + 16 && d.shout("_customEvent_die")
}
b = 0;
for (c = w.__cast(f.getActorGroup(8),
df).list; b < c.length;) d = c[b], ++b, null == d || d.dead || d.recycled || d.getY() < a._GameOverScan + 16 && d.shout("_customEvent_die");
b = 0;
for (c = w.__cast(f.getActorGroup(10), df).list; b < c.length;) d = c[b], ++b, null == d || d.dead || d.recycled || d.getY() < a._GameOverScan + 16 && d.shout("_customEvent_die");
b = 0;
for (c = f.getActorsOfType(f.getActorType(81)); b < c.length;) d = c[b], ++b, null == d || d.dead || d.recycled || d.getY() < a._GameOverScan + 16 && f.recycleActor(d);
b = 0;
for (c = f.getActorsOfType(f.getActorType(73)); b < c.length;) d = c[b], ++b, null == d ||
d.dead || d.recycled || d.getY() < a._GameOverScan + 16 && f.recycleActor(d)
}
}, null)
}, null);
for (var b = 0, c = f.getActorsOfType(f.getActorType(170)); b < c.length;) {
var d = c[b];
++b;
null == d || d.dead || d.recycled || d.setValue("ActorEvents_170", "_GameOver", 1)
}
h.engine.getGameAttribute("Can_Continue") ? this._bannerTime = 2 : this._bannerTime = 4;
f.runLater(1E3 * this._bannerTime, function (b) {
a._GameOverUI = !0;
f.playSoundOnChannel(f.getSound(179), 5);
h.engine.getGameAttribute("Can_Continue") ? (h.engine.gameAttributes.h.Can_Continue = !1,
f.createRecycledActor(f.getActorType(250), 96, 110, 0), f.createRecycledActor(f.getActorType(176), 242, 118, 0)) : (f.createRecycledActor(f.getActorType(176), 172, 118, 0), f.getLastCreatedActor().setValue("ActorEvents_176", "_Active", !0))
}, null);
f.runLater(50, function (b) {
a._DeathScreenFlash = 95;
f.runLater(100, function (b) {
a._DeathScreenFlash = 0;
f.startShakingScreen(.02, .5)
}, null)
}, null);
f.saveGame("mySave", function (a) {
})
}
},
_customEvent_enemy_type_killed: function () {
var a = this;
f.runLater(150, function (b) {
b = a._EnemyTypeKilled;
(f.isPrimitive(b) || ("string" == typeof b ? "" != w.__cast(b, String) : null != b)) && f.createRecycledActor(a._EnemyTypeKilled, 0, 0, 0)
}, null)
},
_customEvent_spawn_upgrades: function () {
f.createRecycledActor(f.getActorType(230), 71, 119, 0);
f.createRecycledActor(f.getActorType(230), 327, 119, 0);
f.runLater(1250, function (a) {
a = 0;
for (var b = f.getActorsOfType(f.getActorType(230)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || f.recycleActor(c)
}
f.createRecycledActor(f.getActorType(228), 79, 117, 0);
f.getLastCreatedActor().setValue("ActorEvents_228",
"_LeftSideUpgrade", 1)
}, null)
},
init: function () {
this._SpeedrunTimer = h.engine.getGameAttribute("Speedrun_Timer");
0 == h.engine.getGameAttribute("Lives") && (h.engine.gameAttributes.h.Lives = 3);
0 == h.engine.getGameAttribute("High_Score") && (h.engine.gameAttributes.h.High_Score = 1);
0 == h.engine.getGameAttribute("Score") && (h.engine.gameAttributes.h.Score = 1);
"asdf" == h.engine.getGameAttribute("Big_Boss_Order") && this._customEvent_setup_big_boss_order();
f.createRecycledActor(f.getActorType(207), 0, 0, 0);
f.createRecycledActor(f.getActorType(150),
0, 0, 0);
f.createRecycledActor(f.getActorType(158), 0, 0, 0);
f.createRecycledActor(f.getActorType(182), 10, 17, 0);
f.createRecycledActor(f.getActorType(188), 276, 5, 0);
for (var a = 0, b = f.getActorsOfType(f.getActorType(253)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._TimerX = c.getX() + 6, this._TimerY = c.getY() + 2)
}
if (0 == h.engine.getGameAttribute("Score") % 5) {
this._BigBossLevel = !0;
a = 0;
for (b = f.getActorsOfType(f.getActorType(207)); a < b.length;) c = b[a], ++a, null == c || c.dead || c.recycled || f.recycleActor(c);
25 != h.engine.getGameAttribute("Score") && (f.createRecycledActorOnLayer(f.getActorType(234), 75, 123, f.engine.getLayerById(6)), f.createRecycledActorOnLayer(f.getActorType(234), 331, 123, f.engine.getLayerById(6)));
if (25 == h.engine.getGameAttribute("Score")) {
this._EndBossLevel = !0;
f.createRecycledActorOnLayer(f.getActorType(218), 185, 105, f.engine.getLayerById(0));
a = 0;
for (b = f.getActorsOfType(f.getActorType(150)); a < b.length;) c = b[a], ++a, null == c || c.dead || c.recycled || f.recycleActor(c);
a = 0;
for (b = f.getActorsOfType(f.getActorType(18)); a <
b.length;) c = b[a], ++a, null == c || c.dead || c.recycled || c.setY(c.getY() - 32);
a = 0;
for (b = f.getActorsOfType(f.getActorType(167)); a < b.length;) c = b[a], ++a, null == c || c.dead || c.recycled || c.setY(c.getY() - 32)
}
}
h.engine.getGameAttribute("BG_Pattern_Bounce") && (f.createRecycledActorOnLayer(f.getActorType(258), 0, 0, f.engine.getLayerById(6)), f.getLastCreatedActor().moveToBottom());
h.engine.getGameAttribute("BG_Pattern_Grid") && (f.createRecycledActorOnLayer(f.getActorType(260), 0, 0, f.engine.getLayerById(6)), f.getLastCreatedActor().moveToBottom());
h.engine.getGameAttribute("BG_Pattern_Diagonal") && (f.createRecycledActorOnLayer(f.getActorType(262), 0, 0, f.engine.getLayerById(6)), f.getLastCreatedActor().moveToBottom());
h.engine.getGameAttribute("BG_Pattern_Follow") && (f.createRecycledActorOnLayer(f.getActorType(264), 0, 0, f.engine.getLayerById(6)), f.getLastCreatedActor().moveToBottom());
h.engine.gameAttributes.h.Enemies_Live = 0;
ya.isMobileGame() || f.disableBehaviorForScene("MyJoystick");
this.addListener(f.engine.whenDrawing, q(this, this._event_Drawing));
this.addListener(f.engine.whenUpdated, q(this, this._event_Updating))
},
forwardMessage: function (a) {
},
__class__: Kq
});
var Lq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Actor = "actor";
this.nameMap.h.Joystick_Active = "_JoystickActive";
this._JoystickActive = !1;
this.nameMap.h["Up Animation (Idle)"] = "_UpAnimationIdle";
this._UpAnimationIdle = "";
this.nameMap.h["Up Animation"] = "_UpAnimation";
this._UpAnimation = "";
this.nameMap.h["Down Animation (Idle)"] = "_DownAnimationIdle";
this._DownAnimationIdle = "";
this.nameMap.h["Down Animation"] =
"_DownAnimation";
this._DownAnimation = "";
this.nameMap.h["Left Animation (Idle)"] = "_LeftAnimationIdle";
this._LeftAnimationIdle = "";
this.nameMap.h["Left Animation"] = "_LeftAnimation";
this._LeftAnimation = "";
this.nameMap.h["Right Animation (Idle)"] = "_RightAnimationIdle";
this._RightAnimationIdle = "";
this.nameMap.h["Right Animation"] = "_RightAnimation";
this._RightAnimation = "";
this.nameMap.h["Prefer Vertical Animtations"] = "_PreferVerticalAnimtations";
this._PreferVerticalAnimtations = !1;
this.nameMap.h["Use Animations"] =
"_UseAnimations";
this._UseAnimations = !0;
this.nameMap.h.Active_Weapons = "_ActiveWeapons";
this._ActiveWeapons = 0;
this.nameMap.h.allowedToStart = "_allowedToStart";
this._allowedToStart = !1
};
k["scripts.Design_150_150_JoystickManagerActor"] = Lq;
Lq.__name__ = "scripts.Design_150_150_JoystickManagerActor";
Lq.__super__ = P;
Lq.prototype = u(P.prototype, {
_JoystickActive: null,
_UpAnimationIdle: null,
_UpAnimation: null,
_DownAnimationIdle: null,
_DownAnimation: null,
_LeftAnimationIdle: null,
_LeftAnimation: null,
_RightAnimationIdle: null,
_RightAnimation: null,
_PreferVerticalAnimtations: null,
_UseAnimations: null,
_ActiveWeapons: null,
_allowedToStart: null,
init: function () {
},
forwardMessage: function (a) {
},
__class__: Lq
});
var Mq = function (a, b) {
f.call(this);
this.addWhenUpdatedListener(null, q(this, this.onUpdate));
this.addWhenDrawingListener(null, q(this, this.onDraw));
h.stage.addEventListener("mouseDown", q(this, this.onMouseDown));
h.stage.addEventListener("mouseMove", q(this, this.onMouseMove));
h.stage.addEventListener("mouseUp", q(this, this.onMouseUp))
};
k["scripts.Design_157_157_MyJoystick"] = Mq;
Mq.__name__ = "scripts.Design_157_157_MyJoystick";
Mq.__super__ = Md;
Mq.prototype = u(Md.prototype, {
XClick: null,
YClick: null,
joystickDistance: null,
joystickDirection: null,
outerRadius: null,
innerRadius: null,
canDraw: null,
viewOffsetX: null,
viewOffsetY: null,
center: null,
innerImage: null,
outerImage: null,
myActor: null,
UpAnimationIdle: null,
UpAnimation: null,
DownAnimationIdle: null,
DownAnimation: null,
LeftAnimationIdle: null,
LeftAnimation: null,
RightAnimationIdle: null,
RightAnimation: null,
ActiveWeapons: null,
init: function () {
if (ya.isMobileGame()) {
this.UpAnimationIdle = "Stand_Left";
this.UpAnimation = "Run_Left";
this.DownAnimationIdle = "Stand_Right";
this.DownAnimation = "Run_Right";
this.LeftAnimationIdle = "Stand_Left";
this.LeftAnimation = "Run_Left";
this.RightAnimationIdle = "Stand_Right";
this.RightAnimation = "Run_Right";
this.joystickDistance = this.joystickDirection = 0;
this.outerRadius = 8;
this.innerRadius = 4;
this.center = new na;
this.innerImage = new ba(0, 0, this.innerRadius, this.innerRadius);
this.outerImage =
new ba(0, 0, this.outerRadius, this.outerRadius);
this.viewOffsetX = h.screenOffsetX;
this.viewOffsetY = h.screenOffsetY;
for (var a = 0, b = f.getActorsOfType(f.getActorType(18)); a < b.length;) {
var c = b[a];
++a;
this.myActor = c
}
}
},
update: function (a) {
if (ya.isMobileGame()) {
a = 0;
for (var b = f.getActorsOfType(f.getActorType(18)); a < b.length;) {
var c = b[a];
++a;
c.isAlive() && (0 == this.joystickDirection ? c.setVelocity(0, 0) : c.setVelocity(Math.round(this.joystickDirection), 10), 0 == c.getXVelocity() && 0 == c.getYVelocity() ? c.getAnimation() ==
this.UpAnimation ? c.setAnimation(this.UpAnimationIdle) : c.getAnimation() == this.DownAnimation ? c.setAnimation(this.DownAnimationIdle) : c.getAnimation() == this.LeftAnimation ? c.setAnimation(this.LeftAnimationIdle) : c.getAnimation() == this.RightAnimation && c.setAnimation(this.RightAnimationIdle) : 0 > c.getYVelocity() && 0 == c.getXVelocity() ? c.setAnimation(this.UpAnimation) : 0 < c.getYVelocity() && 0 == c.getXVelocity() ? c.setAnimation(this.DownAnimation) : 0 > c.getXVelocity() ? c.setAnimation(this.LeftAnimation) : 0 < c.getXVelocity() &&
c.setAnimation(this.RightAnimation))
}
}
},
draw: function (a) {
if (ya.isMobileGame() && this.canDraw) {
var b = (this.outerImage.x + .5 * this.outerImage.width) / h.SCALE,
c = (this.outerImage.y + .5 * this.outerImage.width) / h.SCALE,
d = (this.innerImage.x + .5 * this.innerImage.width) / h.SCALE,
e = (this.innerImage.y + .5 * this.innerImage.width) / h.SCALE;
a.alpha = .5;
var f = 255, l = 204, k = 0;
null == k && (k = 0);
null == l && (l = 0);
null == f && (f = 0);
f = f << 16 | l << 8 | k;
a.fillColor = 0 > f ? f + 16777216 : f;
f = this.outerImage.width / h.SCALE;
b *= a.scaleX;
c *= a.scaleY;
f *= a.scaleX;
!a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY);
0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha);
a.graphics.beginFill(a.fillColor, a.alpha);
a.graphics.drawCircle(a.x + b, a.y + c, f);
a.graphics.endFill();
a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY);
a.graphics.lineStyle();
l = f = 153;
k = 255;
null == k && (k = 0);
null == l && (l = 0);
null == f && (f = 0);
f = f << 16 | l << 8 | k;
a.fillColor = 0 > f ? f + 16777216 : f;
f = this.innerImage.height / h.SCALE;
b =
d * a.scaleX;
c = e * a.scaleY;
f *= a.scaleX;
!a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY);
0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor, a.alpha);
a.graphics.beginFill(a.fillColor, a.alpha);
a.graphics.drawCircle(a.x + b, a.y + c, f);
a.graphics.endFill();
a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY);
a.graphics.lineStyle()
}
},
onMousePress: function (a, b) {
if (ya.isMobileGame()) {
f.engine.allActors.reuseIterator = !1;
for (var c = f.engine.allActors.iterator(); c.hasNext();) {
var d =
c.next();
if (null != d && !d.dead && !d.recycled && d.isOnScreenCache && d.isMouseDown()) return
}
f.engine.allActors.reuseIterator = !0;
c = 0;
for (d = f.getActorsOfType(f.getActorType(18)); c < d.length;) {
var e = d[c];
++c;
if (!e.isAlive()) return
}
a /= h.screenScaleX;
b /= h.screenScaleY;
this.center.x = a - this.viewOffsetX;
this.center.y = b - this.viewOffsetY;
this.outerImage.x = this.center.x - .5 * this.outerImage.width;
this.outerImage.y = this.center.y - .5 * this.outerImage.height;
this.innerImage.x = this.center.x - .5 * this.innerImage.width;
this.innerImage.y =
this.center.y - .5 * this.innerImage.height;
this.joystickDistance = this.joystickDirection = 0;
this.canDraw = !0
}
},
onMouseReleased: function (a, b) {
ya.isMobileGame() && (this.joystickDistance = this.joystickDirection = 0, this.canDraw = !1)
},
onDragg: function (a, b) {
if (ya.isMobileGame() && (this.center.x = f.getMouseX(), this.center.y = f.getMouseY(), this.canDraw)) {
a /= h.screenScaleX;
b /= h.screenScaleY;
var c = Math.sqrt(Math.pow(this.center.x + this.viewOffsetX - a, 2) + Math.pow(this.center.y + this.viewOffsetY - b, 2)),
d = Math.atan2(this.center.y +
this.viewOffsetY - b, this.center.x + this.viewOffsetX - a),
e = Math.sqrt(Math.pow(f.getMousePressedX() + this.viewOffsetX - a, 2) + Math.pow(f.getMousePressedY() + this.viewOffsetY - b, 2)),
g = Math.atan2(f.getMousePressedY() + this.viewOffsetY - b, f.getMousePressedX() + this.viewOffsetX - a);
c > this.outerRadius - this.innerRadius && (c = this.outerRadius - this.innerRadius);
e > this.outerRadius - this.innerRadius ? (a = f.getMousePressedX(), this.innerImage.x = a - Math.cos(g) * (this.outerRadius - this.innerRadius) - .5 * this.innerImage.width, a = f.getMousePressedY(),
this.innerImage.y = a - Math.sin(g) * (this.outerRadius - this.innerRadius) - .5 * this.innerImage.height) : (this.innerImage.x = a - this.viewOffsetX - .5 * this.innerImage.width, this.innerImage.y = b - this.viewOffsetY - .5 * this.innerImage.height);
this.joystickDistance = c / (this.outerRadius - this.innerRadius);
this.joystickDirection = 180 * d / 3.1415926535 + 180
}
},
onMouseDown: function (a) {
this.onMousePress(a.stageX, a.stageY)
},
onMouseMove: function (a) {
this.onDragg(a.stageX, a.stageY)
},
onMouseUp: function (a) {
this.onMouseReleased(a.stageX,
a.stageY)
},
onUpdate: function (a, b) {
if (this.wrapper.enabled && ya.isMobileGame()) for (a = 0, b = f.getActorsOfType(f.getActorType(18)); a < b.length;) {
var c = b[a];
++a;
c.isAlive() && (0 == this.joystickDirection ? c.setVelocity(0, 0) : c.setVelocity(Math.round(this.joystickDirection), 10), 0 == c.getXVelocity() && 0 == c.getYVelocity() ? c.getAnimation() == this.UpAnimation ? c.setAnimation(this.UpAnimationIdle) : c.getAnimation() == this.DownAnimation ? c.setAnimation(this.DownAnimationIdle) : c.getAnimation() == this.LeftAnimation ? c.setAnimation(this.LeftAnimationIdle) :
c.getAnimation() == this.RightAnimation && c.setAnimation(this.RightAnimationIdle) : 0 > c.getYVelocity() && 0 == c.getXVelocity() ? c.setAnimation(this.UpAnimation) : 0 < c.getYVelocity() && 0 == c.getXVelocity() ? c.setAnimation(this.DownAnimation) : 0 > c.getXVelocity() ? c.setAnimation(this.LeftAnimation) : 0 < c.getXVelocity() && c.setAnimation(this.RightAnimation))
}
},
onDraw: function (a, b, c, d) {
if (this.wrapper.enabled && ya.isMobileGame() && this.canDraw) {
b = (this.outerImage.x + .5 * this.outerImage.width) / h.SCALE;
c = (this.outerImage.y + .5 *
this.outerImage.width) / h.SCALE;
d = (this.innerImage.x + .5 * this.innerImage.width) / h.SCALE;
var e = (this.innerImage.y + .5 * this.innerImage.width) / h.SCALE;
a.alpha = .5;
var f = 255, l = 204, k = 0;
null == k && (k = 0);
null == l && (l = 0);
null == f && (f = 0);
f = f << 16 | l << 8 | k;
a.fillColor = 0 > f ? f + 16777216 : f;
f = this.outerImage.width / h.SCALE;
b *= a.scaleX;
c *= a.scaleY;
f *= a.scaleX;
!a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY);
0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize * h.SCALE, a.strokeColor,
a.alpha);
a.graphics.beginFill(a.fillColor, a.alpha);
a.graphics.drawCircle(a.x + b, a.y + c, f);
a.graphics.endFill();
a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY);
a.graphics.lineStyle();
l = f = 153;
k = 255;
null == k && (k = 0);
null == l && (l = 0);
null == f && (f = 0);
f = f << 16 | l << 8 | k;
a.fillColor = 0 > f ? f + 16777216 : f;
f = this.innerImage.height / h.SCALE;
b = d * a.scaleX;
c = e * a.scaleY;
f *= a.scaleX;
!a.drawActor || null != a.actor && a.actor.isHUD || (a.x -= h.cameraX, a.y -= h.cameraY);
0 == a.strokeSize ? a.graphics.lineStyle() : a.graphics.lineStyle(a.strokeSize *
h.SCALE, a.strokeColor, a.alpha);
a.graphics.beginFill(a.fillColor, a.alpha);
a.graphics.drawCircle(a.x + b, a.y + c, f);
a.graphics.endFill();
a.drawActor && !a.actor.isHUD && (a.x += h.cameraX, a.y += h.cameraY);
a.graphics.lineStyle()
}
},
__class__: Mq
});
var Nq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Actor = "actor";
this.nameMap.h.Enemy_Chooser_Top_Limit = "_EnemyChooserTopLimit";
this._EnemyChooserTopLimit = 0;
this.nameMap.h.Get_Pixel = "_GetPixel";
this.nameMap.h.Enemy_Chooser = "_EnemyChooser";
this._EnemyChooser = 0;
this.nameMap.h.Animation_1 =
"_Animation1";
this._Animation1 = "";
this.nameMap.h.Img = "_Img";
this.nameMap.h.xSpawn = "_xSpawn";
this._xSpawn = 0;
this.nameMap.h.ySpawn = "_ySpawn";
this._ySpawn = 0;
this.nameMap.h.Animation_2 = "_Animation2";
this._Animation2 = "";
this.nameMap.h.spawn_end_animation_cycle = "_spawnendanimationcycle";
this._spawnendanimationcycle = 0;
this.nameMap.h.spawn_end_enemy_cycle = "_spawnendenemycycle";
this._spawnendenemycycle = 0
};
k["scripts.Design_158_158_PatternSpnEnemiesManager"] = Nq;
Nq.__name__ = "scripts.Design_158_158_PatternSpnEnemiesManager";
Nq.__super__ = P;
Nq.prototype = u(P.prototype, {
_EnemyChooserTopLimit: null,
_GetPixel: null,
_EnemyChooser: null,
_Animation1: null,
_Img: null,
_xSpawn: null,
_ySpawn: null,
_Animation2: null,
_spawnendanimationcycle: null,
_spawnendenemycycle: null,
_customEvent_spawn: function () {
2 >= h.engine.getGameAttribute("Score") ? this._customEvent_spawn_1_2() : 3 <= h.engine.getGameAttribute("Score") && 5 >= h.engine.getGameAttribute("Score") ? this._customEvent_spawn_3_5() : 6 <= h.engine.getGameAttribute("Score") && 7 >= h.engine.getGameAttribute("Score") ?
this._customEvent_spawn_6_7() : 8 <= h.engine.getGameAttribute("Score") && 10 >= h.engine.getGameAttribute("Score") ? this._customEvent_spawn_8_10() : 11 <= h.engine.getGameAttribute("Score") && 12 >= h.engine.getGameAttribute("Score") ? this._customEvent_spawn_11_12() : 13 <= h.engine.getGameAttribute("Score") && 15 >= h.engine.getGameAttribute("Score") ? this._customEvent_spawn_13_15() : 16 <= h.engine.getGameAttribute("Score") && 17 >= h.engine.getGameAttribute("Score") ? this._customEvent_spawn_16_17() : 18 <= h.engine.getGameAttribute("Score") &&
20 >= h.engine.getGameAttribute("Score") ? this._customEvent_spawn_18_20() : 21 <= h.engine.getGameAttribute("Score") && 22 >= h.engine.getGameAttribute("Score") ? this._customEvent_spawn_21_22() : 23 <= h.engine.getGameAttribute("Score") && this._customEvent_spawn_23_25()
},
_customEvent_spawn_1_2: function () {
var a = this;
f.runLater(100, function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit | 0);
a.actor.setAnimation("" + f.randomInt(1, 12));
a._Animation1 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b =
0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81), a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81",
"_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (b) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29));
f.recycleActor(a.actor)
}, a.actor)
}, this.actor)
},
_customEvent_spawn_3_5: function () {
var a = this;
f.runLater(100, function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit | 0);
a.actor.setAnimation("" + f.randomInt(13, 24));
a._Animation1 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81), a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81",
"_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (b) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29));
f.recycleActor(a.actor)
}, a.actor)
}, this.actor)
},
_customEvent_spawn_6_7: function () {
var a = this;
f.runLater(100, function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit | 0);
a.actor.setAnimation("" + f.randomInt(1, 12));
a._Animation1 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81), a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81",
"_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (a) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29))
}, a.actor)
}, this.actor);
f.runLater(2E3, function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit | 0);
a.actor.setAnimation("" + f.randomInt(1, 12));
for (a._Animation2 = a.actor.getAnimation(); "" + a._Animation2 == "" + a._Animation1;) a.actor.setAnimation("" + f.randomInt(1, 12)), a._Animation2 =
a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81), a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() -
8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (b) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29));
f.recycleActor(a.actor)
}, a.actor)
}, this.actor)
},
_customEvent_spawn_8_10: function () {
var a = this;
f.runLater(100, function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit | 0);
a.actor.setAnimation("" +
f.randomInt(1, 12));
a._Animation1 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81), a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() +
a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (a) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29))
}, a.actor)
}, this.actor);
f.runLater(2E3, function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit | 0);
a.actor.setAnimation("" + f.randomInt(13, 24));
for (a._Animation2 =
a.actor.getAnimation(); "" + a._Animation2 == "" + a._Animation1;) a.actor.setAnimation("" + f.randomInt(13, 24)), a._Animation2 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81),
a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (b) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29));
f.recycleActor(a.actor)
}, a.actor)
}, this.actor)
},
_customEvent_spawn_11_12: function () {
var a = this;
f.runLater(100,
function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit | 0);
a.actor.setAnimation("" + f.randomInt(13, 24));
a._Animation1 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81),
a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (a) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29))
}, a.actor)
}, this.actor);
f.runLater(2E3, function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit |
0);
a.actor.setAnimation("" + f.randomInt(13, 24));
for (a._Animation2 = a.actor.getAnimation(); "" + a._Animation2 == "" + a._Animation1;) a.actor.setAnimation("" + f.randomInt(13, 24)), a._Animation2 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g,
String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81), a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (b) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29));
f.recycleActor(a.actor)
},
a.actor)
}, this.actor)
},
_customEvent_spawn_13_15: function () {
var a = this;
f.runLater(100, function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit | 0);
a.actor.setAnimation("" + f.randomInt(13, 24));
a._Animation1 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" ==
typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81), a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (a) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(134),
f.randomInt(6, 29))
}, a.actor)
}, this.actor);
f.runLater(2E3, function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit | 0);
a.actor.setAnimation("" + f.randomInt(13, 24));
for (a._Animation2 = a.actor.getAnimation(); "" + a._Animation2 == "" + a._Animation1;) a.actor.setAnimation("" + f.randomInt(13, 24)), a._Animation2 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img,
a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81), a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (b) {
f.getValueForScene("Scene_Manager",
"_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29));
f.recycleActor(a.actor)
}, a.actor)
}, this.actor)
},
_customEvent_spawn_16_17: function () {
var a = this;
f.runLater(100, function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit | 0);
a.actor.setAnimation("" + f.randomInt(25, 36));
a._Animation1 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img,
a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81), a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (a) {
f.getValueForScene("Scene_Manager",
"_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29))
}, a.actor)
}, this.actor);
f.runLater(2E3, function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit | 0);
a.actor.setAnimation("" + f.randomInt(13, 24));
for (a._Animation2 = a.actor.getAnimation(); "" + a._Animation2 == "" + a._Animation1;) a.actor.setAnimation("" + f.randomInt(13, 24)), a._Animation2 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() |
0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81), a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81",
"_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (b) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29));
f.recycleActor(a.actor)
}, a.actor)
}, this.actor)
},
_customEvent_spawn_18_20: function () {
var a = this;
f.runLater(100, function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit | 0);
a.actor.setAnimation("" + f.randomInt(25, 36));
a._Animation1 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81), a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser),
f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (a) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29))
}, a.actor)
}, this.actor);
f.runLater(2E3, function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit | 0);
a.actor.setAnimation("" + f.randomInt(13, 24));
for (a._Animation2 = a.actor.getAnimation(); "" + a._Animation2 == "" + a._Animation1;) a.actor.setAnimation("" + f.randomInt(13, 24)), a._Animation2 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81), a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)),
f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (b) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29));
f.recycleActor(a.actor)
}, a.actor)
}, this.actor)
},
_customEvent_spawn_21_22: function () {
var a = this;
f.runLater(100, function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit | 0);
a.actor.setAnimation("" + f.randomInt(25, 36));
a._Animation1 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81), a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn *
f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (a) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29))
}, a.actor)
}, this.actor);
f.runLater(2E3, function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit | 0);
a.actor.setAnimation("" + f.randomInt(25, 36));
for (a._Animation2 = a.actor.getAnimation(); "" +
a._Animation2 == "" + a._Animation1;) a.actor.setAnimation("" + f.randomInt(24, 36)), a._Animation2 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81),
a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (b) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29));
f.recycleActor(a.actor)
}, a.actor)
}, this.actor)
},
_customEvent_spawn_23_25: function () {
var a = this;
f.runLater(100,
function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit | 0);
a.actor.setAnimation("" + f.randomInt(25, 36));
a._Animation1 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81),
a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (a) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29))
}, a.actor)
}, this.actor);
f.runLater(2E3, function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit |
0);
a.actor.setAnimation("" + f.randomInt(25, 36));
for (a._Animation2 = a.actor.getAnimation(); "" + a._Animation2 == "" + a._Animation1;) a.actor.setAnimation("" + f.randomInt(24, 36)), a._Animation2 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g,
String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81), a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (a) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29))
}, a.actor)
},
this.actor);
f.runLater(4E3, function (b) {
a._EnemyChooser = f.randomInt(1, a._EnemyChooserTopLimit | 0);
a.actor.setAnimation("" + f.randomInt(1, 12));
for (a._Animation2 = a.actor.getAnimation(); "" + a._Animation2 == "" + a._Animation1;) a.actor.setAnimation("" + f.randomInt(1, 12)), a._Animation2 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn |
0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81), a.actor.getX() + a._xSpawn * f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (b) {
f.getValueForScene("Scene_Manager",
"_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29));
f.recycleActor(a.actor)
}, a.actor)
}, this.actor)
},
_customEvent_spawn_end: function () {
var a = this;
f.runLater(100, function (b) {
0 == a._spawnendanimationcycle ? a._spawnendanimationcycle = 1 : (a._spawnendanimationcycle += 1, 9 == a._spawnendanimationcycle && (a._spawnendanimationcycle = 1));
0 == a._spawnendenemycycle ? a._spawnendenemycycle = 1 : (a._spawnendenemycycle += 1, 11 == a._spawnendenemycycle && (a._spawnendenemycycle = 1));
a._EnemyChooser = a._spawnendenemycycle;
a.actor.setAnimation("" + a._spawnendanimationcycle);
a._Animation1 = a.actor.getAnimation();
a._Img = f.getImageForActor(a.actor);
b = 0;
for (var c = a.actor.getWidth() | 0; b < c;) {
var d = b++;
a._xSpawn = d;
d = 0;
for (var e = a.actor.getHeight() | 0; d < e;) {
var g = d++;
a._ySpawn = g;
g = f.imageGetPixel(a._Img, a._xSpawn | 0, a._ySpawn | 0);
a._GetPixel = "" + g;
g = a._GetPixel;
!f.isPrimitive(g) && ("string" == typeof g ? "" == w.__cast(g, String) : null == g) || "0" == "" + z.string(a._GetPixel) || (f.createRecycledActorOnLayer(f.getActorType(81), a.actor.getX() + a._xSpawn *
f.getTileWidth() - 8, a.actor.getY() + a._ySpawn * f.getTileHeight() - 8 + 16, f.engine.getLayerById(0)), f.getLastCreatedActor().setValue("ActorEvents_81", "_RNG", a._EnemyChooser), f.getLastCreatedActor().setValue("ActorEvents_81", "_SpawnID", "Endless"))
}
}
f.runLater(2E3, function (a) {
f.getValueForScene("Scene_Manager", "_GameOver") || f.playSoundOnChannel(f.getSound(134), f.randomInt(6, 29))
}, a.actor)
}, this.actor)
},
init: function () {
this.actor.disableActorDrawing();
4 >= h.engine.getGameAttribute("Score") ? this._EnemyChooserTopLimit =
7 : 5 <= h.engine.getGameAttribute("Score") && 9 >= h.engine.getGameAttribute("Score") ? this._EnemyChooserTopLimit = 8 : 10 <= h.engine.getGameAttribute("Score") && 14 >= h.engine.getGameAttribute("Score") ? this._EnemyChooserTopLimit = 9 : 15 <= h.engine.getGameAttribute("Score") && (this._EnemyChooserTopLimit = 10)
},
forwardMessage: function (a) {
},
__class__: Nq
});
var Oq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Actor = "actor";
this.nameMap.h.Hit_Points = "_HitPoints";
this._HitPoints = 0;
this.nameMap.h.Got_Hit = "_GotHit";
this._GotHit =
!1;
this.nameMap.h.Activated = "_Activated";
this._Activated = !1;
this.nameMap.h.Splosion_Angle = "_SplosionAngle";
this._SplosionAngle = 0;
this.nameMap.h.Timer = "_Timer";
this._Timer = 0;
this.nameMap.h.Hit_X = "_HitX";
this._HitX = 0;
this.nameMap.h.Hit_Y = "_HitY";
this._HitY = 0
};
k["scripts.Design_15_15_EnemyManager"] = Oq;
Oq.__name__ = "scripts.Design_15_15_EnemyManager";
Oq.__super__ = P;
Oq.prototype = u(P.prototype, {
_HitPoints: null,
_GotHit: null,
_Activated: null,
_SplosionAngle: null,
_Timer: null,
_HitX: null,
_HitY: null,
_event_Updating: function (a) {
this.wrapper.enabled &&
(this._Timer += f.getStepSize(), 500 <= this._Timer && !this._Activated && (this.actor.set_alpha(1), this._Activated = !0), 50 == this._Timer && this._GotHit && (this._GotHit = !1))
},
_event_Drawing: function (a, b, c) {
},
_event_HITSBULLETS: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = f.getActorGroup(6);
var d = a.otherActor.getType();
var e = a.otherActor.getGroup();
d = c == d || c == e
} else d = !1;
if (d && this._Activated && !this._GotHit) {
this._GotHit = !0;
this._Timer = 0;
c = this.actor.getXCenter();
d = null == c ? 0 : "number" == typeof c ? w.__cast(c,
Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c, Ia) : "boolean" == typeof c ? w.__cast(c, La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c));
c = this.actor.getYCenter();
e = null == c ? 0 : "number" == typeof c ? w.__cast(c, Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c, Ia) : "boolean" == typeof c ? w.__cast(c, La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c));
c = a.otherActor.getXCenter();
var g = null == c ? 0 : "number" == typeof c ? w.__cast(c, Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c, Ia) : "boolean" == typeof c ?
w.__cast(c, La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c));
c = a.otherActor.getYCenter();
this._SplosionAngle = za.angle_between_points("degrees", d, e, g, null == c ? 0 : "number" == typeof c ? w.__cast(c, Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c, Ia) : "boolean" == typeof c ? w.__cast(c, La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c)));
this._HitX = a.otherActor.getXCenter();
this._HitY = a.otherActor.getYCenter();
f.recycleActor(a.otherActor);
--this._HitPoints;
this.actor.getGroup() == f.getActorGroup(8) &&
(this.actor.setAnimation("" + this._HitPoints), f.createRecycledActor(f.getActorType(67), this._HitX - 16, this._HitY - 16, 0), f.getLastCreatedActor().setValue("ActorEvents_67", "_SplosionAngle", this._SplosionAngle), f.getLastCreatedActor().shout("_customEvent_splosion_enemy"));
this.actor.getGroup() == f.getActorGroup(10) && (f.createRecycledActor(f.getActorType(67), this._HitX - 16, this._HitY - 16, 0), f.getLastCreatedActor().setValue("ActorEvents_67", "_SplosionAngle", this._SplosionAngle), f.getLastCreatedActor().shout("_customEvent_splosion_enemy"),
this.actor.setAnimation("Flash"), f.runLater(100, function (a) {
b.actor.setAnimation("" + Math.ceil(b._HitPoints / 3))
}, this.actor));
this.actor.getGroup() == f.getActorGroup(11) && (f.createRecycledActor(f.getActorType(67), this._HitX - 16, this._HitY - 16, 0), f.getLastCreatedActor().setValue("ActorEvents_67", "_SplosionAngle", this._SplosionAngle), f.getLastCreatedActor().shout("_customEvent_splosion_enemy"), 39 <= this._HitPoints ? this.actor.setAnimation("5_Flash") : 30 <= this._HitPoints && 38 >= this._HitPoints ? this.actor.setAnimation("4_Flash") :
21 <= this._HitPoints && 29 >= this._HitPoints ? this.actor.setAnimation("3_Flash") : 12 <= this._HitPoints && 20 >= this._HitPoints ? this.actor.setAnimation("2_Flash") : 1 <= this._HitPoints && 11 >= this._HitPoints && this.actor.setAnimation("1_Flash"), f.runLater(100, function (a) {
b.actor.setAnimation("" + 3 * Math.floor((b._HitPoints + 2) / 3))
}, this.actor));
0 == this._HitPoints && this._customEvent_die()
}
},
_event_HITSHERO: function (a) {
var b = this;
if (this.wrapper.enabled) {
var c = f.getActorType(18);
var d = a.otherActor.getType();
var e = a.otherActor.getGroup();
d = c == d || c == e
} else d = !1;
if (d && this._Activated && !this._GotHit && !a.otherActor.getValue("ActorEvents_18", "_GotHit")) {
this._GotHit = !0;
this._Timer = 0;
this.actor.getGroup() == f.getActorGroup(5) && (f.setValueForScene("Scene_Manager", "_EnemyTypeKilled", a.thisActor.getType()), f.shoutToScene("_customEvent_enemy_type_killed"));
f.setValueForScene("Scene_Manager", "_xDeath", a.otherActor.getX());
f.setValueForScene("Scene_Manager", "_yDeath", a.otherActor.getY());
e = a.otherActor;
c = a.otherActor.getXCenter();
d = null == c ? 0 :
"number" == typeof c ? w.__cast(c, Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c, Ia) : "boolean" == typeof c ? w.__cast(c, La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c));
c = a.otherActor.getYCenter();
var g = null == c ? 0 : "number" == typeof c ? w.__cast(c, Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c, Ia) : "boolean" == typeof c ? w.__cast(c, La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c));
c = this.actor.getXCenter();
var h = null == c ? 0 : "number" == typeof c ? w.__cast(c, Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c,
Ia) : "boolean" == typeof c ? w.__cast(c, La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c));
c = this.actor.getYCenter();
e.setValue("ActorEvents_18", "_GotHitDirection", za.angle_between_points("degrees", d, g, h, null == c ? 0 : "number" == typeof c ? w.__cast(c, Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c, Ia) : "boolean" == typeof c ? w.__cast(c, La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c))));
a.otherActor.shout("_customEvent_got_hit");
c = this.actor.getXCenter();
d = null == c ? 0 : "number" == typeof c ? w.__cast(c,
Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c, Ia) : "boolean" == typeof c ? w.__cast(c, La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c));
c = this.actor.getYCenter();
g = null == c ? 0 : "number" == typeof c ? w.__cast(c, Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c, Ia) : "boolean" == typeof c ? w.__cast(c, La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c));
c = a.otherActor.getXCenter();
h = null == c ? 0 : "number" == typeof c ? w.__cast(c, Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c, Ia) : "boolean" == typeof c ? w.__cast(c,
La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c));
c = a.otherActor.getYCenter();
this._SplosionAngle = za.angle_between_points("degrees", d, g, h, null == c ? 0 : "number" == typeof c ? w.__cast(c, Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c, Ia) : "boolean" == typeof c ? w.__cast(c, La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c)));
--this._HitPoints;
this.actor.getGroup() == f.getActorGroup(8) && (this.actor.setAnimation("" + this._HitPoints), f.createRecycledActor(f.getActorType(67), this.actor.getXCenter() -
16, this.actor.getYCenter() - 16, 0), f.getLastCreatedActor().setValue("ActorEvents_67", "_SplosionAngle", this._SplosionAngle), f.getLastCreatedActor().shout("_customEvent_splosion_enemy"));
this.actor.getGroup() == f.getActorGroup(10) && (f.createRecycledActor(f.getActorType(67), this.actor.getXCenter() - 16, this.actor.getYCenter() - 16, 0), f.getLastCreatedActor().setValue("ActorEvents_67", "_SplosionAngle", this._SplosionAngle), f.getLastCreatedActor().shout("_customEvent_splosion_enemy"), this.actor.setAnimation("Flash"),
f.runLater(100, function (a) {
b.actor.setAnimation("" + Math.ceil(b._HitPoints / 3))
}, this.actor));
0 == this._HitPoints && this._customEvent_die()
}
},
_customEvent_die: function () {
f.createRecycledActor(f.getActorType(67), this.actor.getXCenter() - 16, this.actor.getYCenter() - 16, 0);
f.getLastCreatedActor().setValue("ActorEvents_67", "_SplosionAngle", this._SplosionAngle);
this.actor.getGroup() == f.getActorGroup(5) ? f.getLastCreatedActor().shout("_customEvent_splosion_enemy") : this.actor.getGroup() == f.getActorGroup(8) ? f.getLastCreatedActor().shout("_customEvent_splosion_bosses") :
this.actor.getGroup() == f.getActorGroup(10) ? f.getLastCreatedActor().shout("_customEvent_splosion_big_bosses") : this.actor.getGroup() == f.getActorGroup(11) && (this.actor.shout("_customEvent_death_event"), f.getLastCreatedActor().shout("_customEvent_splosion_bosses"));
if (this.actor.getGroup() == f.getActorGroup(8) || this.actor.getGroup() == f.getActorGroup(10)) f.createRecycledActor(f.getActorType(85), this.actor.getXCenter() - 4, this.actor.getYCenter() - 4, 0), this.actor.getType() == f.getActorType(89) ? f.getLastCreatedActor().setAnimation("2") :
this.actor.getType() == f.getActorType(91) ? f.getLastCreatedActor().setAnimation("3") : this.actor.getType() == f.getActorType(97) ? f.getLastCreatedActor().setAnimation("4") : this.actor.getType() == f.getActorType(99) ? f.getLastCreatedActor().setAnimation("5") : this.actor.getType() == f.getActorType(107) && f.getLastCreatedActor().setAnimation("6"), this.actor.getGroup() == f.getActorGroup(10) && (f.getLastCreatedActor().setX(this.actor.getX() + 7), f.getLastCreatedActor().setY(this.actor.getY() + 5), f.getLastCreatedActor().setValue("ActorEvents_85",
"_BigBossKey", 1)), this.actor.getType() == f.getActorType(191) ? f.getLastCreatedActor().setAnimation("Big_Bounce") : this.actor.getType() == f.getActorType(199) ? f.getLastCreatedActor().setAnimation("Big_Grid") : this.actor.getType() == f.getActorType(203) ? f.getLastCreatedActor().setAnimation("Big_Diag") : this.actor.getType() == f.getActorType(201) && f.getLastCreatedActor().setAnimation("Big_Follow");
if (this.actor.getType() != f.getActorType(101) && this.actor.getType() != f.getActorType(195)) {
var a = h.engine, b = h.engine.getGameAttribute("Enemies_Live") -
1;
a.gameAttributes.h.Enemies_Live = b;
a = h.engine;
b = h.engine.getGameAttribute("Enemies_Killed") + 1;
a.gameAttributes.h.Enemies_Killed = b
}
this.actor.getGroup() != f.getActorGroup(11) && f.recycleActor(this.actor)
},
init: function () {
var a = this;
16 > this.actor.getX() && f.recycleActor(this.actor);
if (16 < this.actor.getX()) {
var b = h.engine, c = h.engine.getGameAttribute("Enemies_Live") + 1;
b.gameAttributes.h.Enemies_Live = c;
this._HitPoints = 1;
this.actor.getGroup() == f.getActorGroup(8) && (this._HitPoints = 3);
this.actor.getGroup() ==
f.getActorGroup(10) && (this._HitPoints = 12);
this.actor.getType() == f.getActorType(210) && (this._HitPoints = 45);
this.actor.set_alpha(0);
f.runLater(50, function (b) {
a.actor.set_alpha(.5)
}, this.actor);
b = f.getValueForScene("Scene_Manager", "_PassedLevel");
1 != b && "true" != b || this.actor.shout("_customEvent_die")
}
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating));
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
this.addListener(this.actor.whenCollided, q(this, this._event_HITSBULLETS));
this.addListener(this.actor.whenCollided, q(this, this._event_HITSHERO))
},
forwardMessage: function (a) {
},
__class__: Oq
});
var Pq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Actor = "actor";
this.nameMap.h["Target Actor"] = "_TargetActor";
this.nameMap.h["Distance X"] = "_DistanceX";
this._DistanceX = 0;
this.nameMap.h["Distance Y"] = "_DistanceY";
this._DistanceY = 0;
this.nameMap.h.Distance = "_Distance";
this._Distance = 0;
this.nameMap.h.Direction = "_Direction";
this._Direction = 0;
this.nameMap.h.Speed = "_Speed";
this._Speed = 30;
this.nameMap.h.Margin = "_Margin";
this._Margin = 0;
this.nameMap.h.Easing = "_Easing";
this._Easing = !0;
this.nameMap.h["Minimum Easing Speed"] = "_MinimumEasingSpeed";
this._MinimumEasingSpeed = 5;
this.nameMap.h["Screen Diagonal"] = "_ScreenDiagonal";
this._ScreenDiagonal = 0;
this.nameMap.h["Stop when Colliding"] = "_StopwhenColliding";
this._StopwhenColliding = !0;
this.nameMap.h.Collided = "_Collided";
this._Collided = !1;
this.nameMap.h.Activated = "_Activated";
this._Activated = !1
};
k["scripts.Design_28_28_FollowTargetCUSTOM"] =
Pq;
Pq.__name__ = "scripts.Design_28_28_FollowTargetCUSTOM";
Pq.__super__ = P;
Pq.prototype = u(P.prototype, {
_TargetActor: null,
_DistanceX: null,
_DistanceY: null,
_Distance: null,
_Direction: null,
_Speed: null,
_Margin: null,
_Easing: null,
_MinimumEasingSpeed: null,
_ScreenDiagonal: null,
_StopwhenColliding: null,
_Collided: null,
_Activated: null,
_event_Updated: function (a) {
this.wrapper.enabled && this._Activated && (a = this._TargetActor, (f.isPrimitive(a) || ("string" == typeof a ? "" != w.__cast(a, String) : null != a)) && this._TargetActor.isAlive() ?
(this._DistanceX = this._TargetActor.getXCenter() - this.actor.getXCenter(), this._DistanceY = this._TargetActor.getYCenter() - this.actor.getYCenter(), this._Distance = Math.sqrt(Math.pow(this._DistanceX, 2) + Math.pow(this._DistanceY, 2)), this._Direction = 57.29577951308402 * Math.atan2(this._DistanceY, this._DistanceX), !(this._Distance > this._Margin) || this._StopwhenColliding && this._Collided ? this.actor.setVelocity(0, 0) : this._Easing ? this.actor.setVelocity(this._Direction, this._MinimumEasingSpeed + (this._Distance - this._Margin) /
this._ScreenDiagonal * this._Speed) : this.actor.setVelocity(this._Direction, this._Speed), this._Collided = !1) : this.actor.setVelocity(0, 0))
},
_event_HitsHero: function (a) {
this.wrapper.enabled && this._TargetActor == a.otherActor && (this._Collided = !0)
},
init: function () {
for (var a = this, b = 0, c = f.getActorsOfType(f.getActorType(18)); b < c.length;) {
var d = c[b];
++b;
null == d || d.dead || d.recycled || (this._TargetActor = d)
}
this._ScreenDiagonal = Math.sqrt(Math.pow(f.getScreenWidth(), 2) + Math.pow(f.getScreenHeight(), 2));
f.runLater(500,
function (b) {
a._Activated = !0
}, this.actor);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updated));
this.addListener(this.actor.whenCollided, q(this, this._event_HitsHero))
},
forwardMessage: function (a) {
},
__class__: Pq
});
var Qq = function (a, b, c) {
P.call(this, b);
this.nameMap.h["Down Control"] = "_DownControl";
this.nameMap.h.Actor = "actor";
this.nameMap.h["Left Control"] = "_LeftControl";
this.nameMap.h["Right Control"] = "_RightControl";
this.nameMap.h["Move X"] = "_MoveX";
this._MoveX = 0;
this.nameMap.h["Move Y"] =
"_MoveY";
this._MoveY = 0;
this.nameMap.h["Normalize Diagonal Speed"] = "_NormalizeDiagonalSpeed";
this._NormalizeDiagonalSpeed = !0;
this.nameMap.h.Sqrt2 = "_Sqrt2";
this._Sqrt2 = 0;
this.nameMap.h["Stop Turning While Moving"] = "_StopTurningWhileMoving";
this._StopTurningWhileMoving = !0;
this.nameMap.h["Use Controls"] = "_UseControls";
this._UseControls = !0;
this.nameMap.h.Speed = "_Speed";
this._Speed = 30;
this.nameMap.h["Use Animations"] = "_UseAnimations";
this._UseAnimations = !0;
this.nameMap.h["Up Animation (Idle)"] = "_UpAnimationIdle";
this._UpAnimationIdle = "";
this.nameMap.h["Up Animation"] = "_UpAnimation";
this._UpAnimation = "";
this.nameMap.h["Down Animation (Idle)"] = "_DownAnimationIdle";
this._DownAnimationIdle = "";
this.nameMap.h["Down Animation"] = "_DownAnimation";
this._DownAnimation = "";
this.nameMap.h["Left Animation (Idle)"] = "_LeftAnimationIdle";
this._LeftAnimationIdle = "";
this.nameMap.h["Left Animation"] = "_LeftAnimation";
this._LeftAnimation = "";
this.nameMap.h["Right Animation (Idle)"] = "_RightAnimationIdle";
this._RightAnimationIdle =
"";
this.nameMap.h["Right Animation"] = "_RightAnimation";
this._RightAnimation = "";
this.nameMap.h["Prefer Vertical Animtations"] = "_PreferVerticalAnimtations";
this._PreferVerticalAnimtations = !1;
this.nameMap.h.Active_Weapons = "_ActiveWeapons";
this._ActiveWeapons = 0;
this.nameMap.h["Use Controls WASD"] = "_UseControlsWASD";
this._UseControlsWASD = !1;
this.nameMap.h["Up Control"] = "_UpControl"
};
k["scripts.Design_31_31_8WayMovementCustom"] = Qq;
Qq.__name__ = "scripts.Design_31_31_8WayMovementCustom";
Qq.__super__ = P;
Qq.prototype =
u(P.prototype, {
_DownControl: null,
_LeftControl: null,
_RightControl: null,
_MoveX: null,
_MoveY: null,
_NormalizeDiagonalSpeed: null,
_Sqrt2: null,
_StopTurningWhileMoving: null,
_UseControls: null,
_Speed: null,
_UseAnimations: null,
_UpAnimationIdle: null,
_UpAnimation: null,
_DownAnimationIdle: null,
_DownAnimation: null,
_LeftAnimationIdle: null,
_LeftAnimation: null,
_RightAnimationIdle: null,
_RightAnimation: null,
_PreferVerticalAnimtations: null,
_ActiveWeapons: null,
_UseControlsWASD: null,
_UpControl: null,
_event_Updated: function (a) {
if (this.wrapper.enabled &&
!ya.isMobileGame()) {
(f.isKeyDown("W") || f.isKeyDown("A") || f.isKeyDown("S") || f.isKeyDown("D")) && !this._UseControlsWASD && (this._UseControls = !1, this._UseControlsWASD = !0);
(f.isKeyDown(this._UpControl) || f.isKeyDown(this._DownControl) || f.isKeyDown(this._LeftControl) || f.isKeyDown(this._RightControl)) && !this._UseControls && (this._UseControlsWASD = !1, this._UseControls = !0);
if (this._UseControls) {
a = f.isKeyDown(this._RightControl);
var b = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a,
Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = f.isKeyDown(this._LeftControl);
this._MoveX = b - (null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)));
a = f.isKeyDown(this._DownControl);
b = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" ==
typeof a ? parseFloat(a) : parseFloat(z.string(a));
a = f.isKeyDown(this._UpControl);
this._MoveY = b - (null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)))
} else this._UseControlsWASD && (a = f.isKeyDown("D"), b = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)),
a = f.isKeyDown("A"), this._MoveX = b - (null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a))), a = f.isKeyDown("S"), b = null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) : "number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a)), a = f.isKeyDown("W"), this._MoveY = b - (null == a ? 0 : "number" == typeof a ? w.__cast(a, Ka) :
"number" == typeof a && (a | 0) === a ? w.__cast(a, Ia) : "boolean" == typeof a ? w.__cast(a, La) ? 1 : 0 : "string" == typeof a ? parseFloat(a) : parseFloat(z.string(a))));
this._NormalizeDiagonalSpeed && 0 != this._MoveX && 0 != this._MoveY ? (this.actor.setXVelocity(this._MoveX * this._Speed / this._Sqrt2), this.actor.setYVelocity(this._MoveY * this._Speed / this._Sqrt2)) : (this.actor.setXVelocity(this._MoveX * this._Speed), this.actor.setYVelocity(this._MoveY * this._Speed));
!this._StopTurningWhileMoving || 0 == this._MoveX && 0 == this._MoveY || this.actor.setAngularVelocity(0);
this._MoveY = this._MoveX = 0;
this._UseAnimations && (0 == this.actor.getXVelocity() && 0 == this.actor.getYVelocity() ? this.actor.getAnimation() == this._UpAnimation ? this.actor.setAnimation(this._UpAnimationIdle) : this.actor.getAnimation() == this._DownAnimation ? this.actor.setAnimation(this._DownAnimationIdle) : this.actor.getAnimation() == this._LeftAnimation ? this.actor.setAnimation(this._LeftAnimationIdle) : this.actor.getAnimation() == this._RightAnimation && this.actor.setAnimation(this._RightAnimationIdle) : 0 > this.actor.getYVelocity() &&
(0 == this.actor.getXVelocity() || this._PreferVerticalAnimtations) ? this.actor.setAnimation(this._UpAnimation) : 0 < this.actor.getYVelocity() && (0 == this.actor.getXVelocity() || this._PreferVerticalAnimtations) ? this.actor.setAnimation(this._DownAnimation) : 0 > this.actor.getXVelocity() ? this.actor.setAnimation(this._LeftAnimation) : 0 < this.actor.getXVelocity() && this.actor.setAnimation(this._RightAnimation))
}
},
_customEvent_MoveUp: function () {
this._MoveY = -1
},
_customEvent_MoveDown: function () {
this._MoveY = 1
},
_customEvent_MoveLeft: function () {
this._MoveX =
-1
},
_customEvent_MoveRight: function () {
this._MoveX = 1
},
_customEvent_weapon_active: function () {
this._ActiveWeapons += 1;
this._DownAnimationIdle = "Stand_Right_Active";
this._DownAnimation = "Run_Right_Active";
this._LeftAnimationIdle = "Stand_Left_Active";
this._LeftAnimation = "Run_Left_Active";
this._RightAnimationIdle = "Stand_Right_Active";
this._RightAnimation = "Run_Right_Active";
this._UpAnimationIdle = "Stand_Left_Active";
this._UpAnimation = "Run_Left_Active"
},
_customEvent_weapon_inactive: function () {
--this._ActiveWeapons;
0 == this._ActiveWeapons && (this._DownAnimationIdle = "Stand_Right", this._DownAnimation = "Run_Right", this._LeftAnimationIdle = "Stand_Left", this._LeftAnimation = "Run_Left", this._RightAnimationIdle = "Stand_Right", this._RightAnimation = "Run_Right", this._UpAnimationIdle = "Stand_Left", this._UpAnimation = "Run_Left");
0 > this._ActiveWeapons && (this._ActiveWeapons = 0)
},
init: function () {
this._Sqrt2 = Math.sqrt(2);
this.addListener(this.actor.whenUpdated, q(this, this._event_Updated))
},
forwardMessage: function (a) {
},
__class__: Qq
});
var Rq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Actor = "actor";
this.nameMap.h.Facing = "_Facing";
this._Facing = -90;
this.nameMap.h["Idle Threshold"] = "_IdleThreshold";
this._IdleThreshold = 1;
this.nameMap.h.Target_Actor = "_TargetActor"
};
k["scripts.Design_38_38_FaceDirectionofHEROMotion"] = Rq;
Rq.__name__ = "scripts.Design_38_38_FaceDirectionofHEROMotion";
Rq.__super__ = P;
Rq.prototype = u(P.prototype, {
_Facing: null, _IdleThreshold: null, _TargetActor: null, _event_Updated: function (a) {
this.wrapper.enabled && (Math.pow(this._TargetActor.getXVelocity(),
2) + Math.pow(this._TargetActor.getYVelocity(), 2) > Math.pow(this._IdleThreshold, 2) ? this.actor.setAngle(.01745329251994278 * (57.29577951308402 * Math.atan2(this._TargetActor.getYVelocity(), this._TargetActor.getXVelocity()) - this._Facing)) : this.actor.setAngularVelocity(0))
}, init: function () {
for (var a = 0, b = f.getActorsOfType(f.getActorType(18)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._TargetActor = c)
}
this.addListener(this.actor.whenUpdated, q(this, this._event_Updated))
}, forwardMessage: function (a) {
},
__class__: Rq
});
var Sq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Actor = "actor";
this.nameMap.h.Speed = "_Speed";
this._Speed = 0;
this.nameMap.h.Collided = "_Collided";
this._Collided = !1;
this.nameMap.h.Played_Collision_Sound = "_PlayedCollisionSound";
this._PlayedCollisionSound = !1
};
k["scripts.Design_40_40_BounceWithFullSpeedCustom"] = Sq;
Sq.__name__ = "scripts.Design_40_40_BounceWithFullSpeedCustom";
Sq.__super__ = P;
Sq.prototype = u(P.prototype, {
_Speed: null, _Collided: null, _PlayedCollisionSound: null, _event_Updated: function (a) {
this.wrapper.enabled &&
(this._Collided || (this._Speed = Math.sqrt(Math.pow(this.actor.getXVelocity(), 2) + Math.pow(this.actor.getYVelocity(), 2))), this._Collided = !1)
}, _event_ActorAny: function (a) {
var b = this;
if (this.wrapper.enabled && (this._Collided = !0, this.actor.setVelocity(57.29577951308402 * Math.atan2(this.actor.getYVelocity(), this.actor.getXVelocity()), this._Speed), !this._PlayedCollisionSound)) {
this._PlayedCollisionSound = !0;
f.playSoundOnChannel(f.getSound(137), h.engine.getGameAttribute("Sound_Channel") | 0);
a = h.engine;
var c = h.engine.getGameAttribute("Sound_Channel") +
1;
a.gameAttributes.h.Sound_Channel = c;
f.runLater(1E3, function (a) {
b._PlayedCollisionSound = !1
}, this.actor)
}
}, init: function () {
this.addListener(this.actor.whenUpdated, q(this, this._event_Updated));
this.addListener(this.actor.whenCollided, q(this, this._event_ActorAny))
}, forwardMessage: function (a) {
}, __class__: Sq
});
var Tq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Actor = "actor";
this.nameMap.h.Player = "_Player";
this.nameMap.h.Picked_Up = "_PickedUp";
this._PickedUp = !1;
this.nameMap.h.RNG = "_RNG";
this._RNG = 0;
this.nameMap.h.Hero =
"_Hero";
this.nameMap.h.Weapon_RNG = "_WeaponRNG";
this._WeaponRNG = 0;
this.nameMap.h.Weapon_Type = "_WeaponType";
this._WeaponType = "";
this.nameMap.h.Activated = "_Activated";
this._Activated = !1;
this.nameMap.h.Upgrade_Factor = "_UpgradeFactor";
this._UpgradeFactor = 0;
this.nameMap.h.Upgraded = "_Upgraded";
this._Upgraded = !1
};
k["scripts.Design_41_41_PickupManager"] = Tq;
Tq.__name__ = "scripts.Design_41_41_PickupManager";
Tq.__super__ = P;
Tq.prototype = u(P.prototype, {
_Player: null,
_PickedUp: null,
_RNG: null,
_Hero: null,
_WeaponRNG: null,
_WeaponType: null,
_Activated: null,
_UpgradeFactor: null,
_Upgraded: null,
_event_Drawing: function (a, b, c) {
},
_event_Updating: function (a) {
if (this.wrapper.enabled) {
if (this._Activated) {
var b = this._Hero;
f.isPrimitive(b) || ("string" == typeof b ? "" != w.__cast(b, String) : null != b) ? (b = this._WeaponType, a = f.isPrimitive(b) ? !0 : "string" == typeof b ? "" != w.__cast(b, String) : null != b) : a = !1
} else a = !1;
if (a) {
b = this.actor.getXCenter();
a = null == b ? 0 : "number" == typeof b ? w.__cast(b, Ka) : "number" == typeof b && (b | 0) === b ? w.__cast(b, Ia) : "boolean" ==
typeof b ? w.__cast(b, La) ? 1 : 0 : "string" == typeof b ? parseFloat(b) : parseFloat(z.string(b));
b = this.actor.getYCenter();
var c = null == b ? 0 : "number" == typeof b ? w.__cast(b, Ka) : "number" == typeof b && (b | 0) === b ? w.__cast(b, Ia) : "boolean" == typeof b ? w.__cast(b, La) ? 1 : 0 : "string" == typeof b ? parseFloat(b) : parseFloat(z.string(b));
b = this._Hero.getXCenter();
var d = null == b ? 0 : "number" == typeof b ? w.__cast(b, Ka) : "number" == typeof b && (b | 0) === b ? w.__cast(b, Ia) : "boolean" == typeof b ? w.__cast(b, La) ? 1 : 0 : "string" == typeof b ? parseFloat(b) : parseFloat(z.string(b));
b = this._Hero.getYCenter();
14 > za.distance_between_points(a, c, d, null == b ? 0 : "number" == typeof b ? w.__cast(b, Ka) : "number" == typeof b && (b | 0) === b ? w.__cast(b, Ia) : "boolean" == typeof b ? w.__cast(b, La) ? 1 : 0 : "string" == typeof b ? parseFloat(b) : parseFloat(z.string(b))) && !this._PickedUp && !h.engine.getGameAttribute("Can_Pickup") && (h.engine.gameAttributes.h.Can_Pickup = !0, this._PickedUp || (b = f.getValueForScene("Scene_Manager", "_PickupsLive"), f.setValueForScene("Scene_Manager", "_PickupsLive", (null == b ? 0 : "number" == typeof b ? w.__cast(b,
Ka) : "number" == typeof b && (b | 0) === b ? w.__cast(b, Ia) : "boolean" == typeof b ? w.__cast(b, La) ? 1 : 0 : "string" == typeof b ? parseFloat(b) : parseFloat(z.string(b))) - 1), "Tutorial" == f.getCurrentSceneName() && (b = f.getValueForScene("Tutorial_Manager", "_PickupsLive"), f.setValueForScene("Tutorial_Manager", "_PickupsLive", (null == b ? 0 : "number" == typeof b ? w.__cast(b, Ka) : "number" == typeof b && (b | 0) === b ? w.__cast(b, Ia) : "boolean" == typeof b ? w.__cast(b, La) ? 1 : 0 : "string" == typeof b ? parseFloat(b) : parseFloat(z.string(b))) - 1)), this._PickedUp =
!0, this._Hero.shout("_customEvent_weapon_active"), "machinegun" == this._WeaponType ? this._customEvent_machinegun() : "spread" == this._WeaponType ? this._customEvent_spread() : "quad" == this._WeaponType ? this._customEvent_quad() : "homing" == this._WeaponType ? this._customEvent_homing() : "mines" == this._WeaponType ? this._customEvent_mines() : "mine_trail" == this._WeaponType ? this._customEvent_mine_trail() : "orbit" == this._WeaponType ? this._customEvent_orbit() : "shotgun" == this._WeaponType && this._customEvent_shotgun()))
}
}
},
_customEvent_machinegun: function () {
var a =
this;
this.actor.disableActorDrawing();
this.actor.enableBehavior("Face Direction of HERO Motion");
f.runPeriodically(1E3 * (.25 - this._UpgradeFactor), function (b) {
f.createRecycledActor(f.getActorType(23), a._Hero.getXCenter() - 4, a._Hero.getYCenter() - 4, 0);
f.getLastCreatedActor().setVelocity(57.29577951308402 * a.actor.getAngle() + f.randomInt(-5, 5), 50);
f.startShakingScreen(.001, .1);
a._customEvent_sound_gun()
}, this.actor);
h.engine.gameAttributes.h.Can_Pickup = !1;
f.runLater(2E3, function (b) {
a._Hero.shout("_customEvent_weapon_inactive");
f.recycleActor(a.actor)
}, this.actor)
},
_customEvent_spread: function () {
for (var a = 0, b = 12 + this._UpgradeFactor | 0; a < b;) {
var c = a++;
f.createRecycledActor(f.getActorType(23), this.actor.getXCenter() - 4, this.actor.getYCenter() - 4, 0);
f.getLastCreatedActor().setVelocity(30 * c, 40)
}
this._customEvent_sound_gun();
f.startShakingScreen(.001, .1);
if (h.engine.getGameAttribute("Upgrade_Spread")) {
a = 0;
for (b = 12 + this._UpgradeFactor | 0; a < b;) c = a++, f.createRecycledActor(f.getActorType(23), this.actor.getXCenter() - 4, this.actor.getYCenter() -
4, 0), f.getLastCreatedActor().setVelocity(30 * c, 20);
this._customEvent_sound_gun();
f.startShakingScreen(.001, .1)
}
h.engine.gameAttributes.h.Can_Pickup = !1;
this._Hero.shout("_customEvent_weapon_inactive");
f.recycleActor(this.actor)
},
_customEvent_quad: function () {
var a = this;
this.actor.disableActorDrawing();
f.createRecycledActor(f.getActorType(23), this._Hero.getXCenter() - 4, this._Hero.getYCenter() - 4, 0);
f.getLastCreatedActor().setVelocity(f.randomInt(2, -2), 40);
f.createRecycledActor(f.getActorType(23), this._Hero.getXCenter() -
4, this._Hero.getYCenter() - 4, 0);
f.getLastCreatedActor().setVelocity(f.randomInt(88, 92), 40);
f.createRecycledActor(f.getActorType(23), this._Hero.getXCenter() - 4, this._Hero.getYCenter() - 4, 0);
f.getLastCreatedActor().setVelocity(f.randomInt(178, 182), 40);
f.createRecycledActor(f.getActorType(23), this._Hero.getXCenter() - 4, this._Hero.getYCenter() - 4, 0);
f.getLastCreatedActor().setVelocity(f.randomInt(268, 272), 40);
this._customEvent_sound_gun();
f.runPeriodically(1E3 * (.45 - this._UpgradeFactor), function (b) {
f.createRecycledActor(f.getActorType(23),
a._Hero.getXCenter() - 4, a._Hero.getYCenter() - 4, 0);
f.getLastCreatedActor().setVelocity(f.randomInt(2, -2), 40);
f.createRecycledActor(f.getActorType(23), a._Hero.getXCenter() - 4, a._Hero.getYCenter() - 4, 0);
f.getLastCreatedActor().setVelocity(f.randomInt(88, 92), 40);
f.createRecycledActor(f.getActorType(23), a._Hero.getXCenter() - 4, a._Hero.getYCenter() - 4, 0);
f.getLastCreatedActor().setVelocity(f.randomInt(178, 182), 40);
f.createRecycledActor(f.getActorType(23), a._Hero.getXCenter() - 4, a._Hero.getYCenter() - 4, 0);
f.getLastCreatedActor().setVelocity(f.randomInt(268,
272), 40);
a._customEvent_sound_gun()
}, this.actor);
h.engine.gameAttributes.h.Can_Pickup = !1;
f.runLater(1500, function (b) {
a._Hero.shout("_customEvent_weapon_inactive");
f.recycleActor(a.actor)
}, this.actor)
},
_customEvent_homing: function () {
for (var a = 0, b = 4 + this._UpgradeFactor | 0; a < b;) {
var c = a++;
f.createRecycledActor(f.getActorType(35), this.actor.getXCenter() - 4, this.actor.getYCenter() - 4, 0);
h.engine.getGameAttribute("Upgrade_Homing") ? f.getLastCreatedActor().setVelocity(72 * c, 10) : f.getLastCreatedActor().setVelocity(90 *
c + 45, 10)
}
this._customEvent_sound_gun();
f.startShakingScreen(.001, .1);
h.engine.gameAttributes.h.Can_Pickup = !1;
this._Hero.shout("_customEvent_weapon_inactive");
f.recycleActor(this.actor)
},
_customEvent_mines: function () {
this._RNG = f.randomInt(0, 359);
if (h.engine.getGameAttribute("Upgrade_Mines")) for (var a = 0, b = 8 + this._UpgradeFactor | 0; a < b;) {
var c = a++;
f.createRecycledActor(f.getActorType(37), this._Hero.getXCenter() - 4, this._Hero.getYCenter() - 4, 0);
f.getLastCreatedActor().setActorValue("Mine_ID", c);
f.getLastCreatedActor().setVelocity(this._RNG +
45 * c + 22, 30)
}
a = 0;
for (b = 8 + this._UpgradeFactor | 0; a < b;) c = a++, f.createRecycledActor(f.getActorType(37), this._Hero.getXCenter() - 4, this._Hero.getYCenter() - 4, 0), f.getLastCreatedActor().setActorValue("Mine_ID", c), f.getLastCreatedActor().setVelocity(this._RNG + 45 * c, 35), c == 7 + this._UpgradeFactor && (f.startShakingScreen(.001, .1), h.engine.gameAttributes.h.Can_Pickup = !1, this._Hero.shout("_customEvent_weapon_inactive"), f.recycleActor(this.actor));
this._customEvent_sound_gun()
},
_customEvent_mine_trail: function () {
var a =
this;
this.actor.disableActorDrawing();
this.actor.enableBehavior("Face Opposite of HERO Motion");
h.engine.gameAttributes.h.Can_Pickup = !1;
if (h.engine.getGameAttribute("Upgrade_Minetrail")) for (var b = 0; 10 > b;) {
var c = [b++];
f.runLater(250 * c[0], function (b) {
return function (c) {
f.createRecycledActor(f.getActorType(37), a._Hero.getXCenter() - 8, a._Hero.getYCenter() - 8, 0);
f.getLastCreatedActor().setActorValue("Mine_ID", b[0]);
f.getLastCreatedActor().setVelocity(57.29577951308402 * a._Hero.getAngle() + f.randomInt(0, 360),
10)
}
}(c), this.actor)
}
for (b = 0; 10 > b;) c = [b++], f.runLater(250 * c[0], function (b) {
return function (c) {
f.createRecycledActor(f.getActorType(37), a._Hero.getXCenter() - 8, a._Hero.getYCenter() - 8, 0);
f.getLastCreatedActor().setActorValue("Mine_ID", b[0]);
f.getLastCreatedActor().setVelocity(57.29577951308402 * a._Hero.getAngle() + f.randomInt(0, 360), 10);
f.startShakingScreen(.001, .1);
a._customEvent_sound_gun();
9 == b[0] && (a._Hero.shout("_customEvent_weapon_inactive"), f.recycleActor(a.actor))
}
}(c), this.actor)
},
_customEvent_orbit: function () {
var a =
this;
this.actor.disableActorDrawing();
f.createRecycledActor(f.getActorType(59), this._Hero.getXCenter() - 4, this._Hero.getYCenter() - 32, 0);
f.createRecycledActor(f.getActorType(59), this._Hero.getXCenter() + 24, this._Hero.getYCenter() - 4, 0);
f.createRecycledActor(f.getActorType(59), this._Hero.getXCenter() - 4, this._Hero.getYCenter() + 24, 0);
f.createRecycledActor(f.getActorType(59), this._Hero.getXCenter() - 32, this._Hero.getYCenter() - 4, 0);
h.engine.getGameAttribute("Upgrade_Orbit") && (f.createRecycledActor(f.getActorType(59),
this._Hero.getXCenter() - 4, this._Hero.getYCenter() - 40, 0), f.getLastCreatedActor().setValue("Custom Rotate Around Actor", "_Speed", -400), f.createRecycledActor(f.getActorType(59), this._Hero.getXCenter() + 32, this._Hero.getYCenter() - 4, 0), f.getLastCreatedActor().setValue("Custom Rotate Around Actor", "_Speed", -400), f.createRecycledActor(f.getActorType(59), this._Hero.getXCenter() - 4, this._Hero.getYCenter() + 32, 0), f.getLastCreatedActor().setValue("Custom Rotate Around Actor", "_Speed", -400), f.createRecycledActor(f.getActorType(59),
this._Hero.getXCenter() - 40, this._Hero.getYCenter() - 4, 0), f.getLastCreatedActor().setValue("Custom Rotate Around Actor", "_Speed", -400));
this._customEvent_sound_gun();
f.startShakingScreen(.001, .1);
h.engine.gameAttributes.h.Can_Pickup = !1;
f.runLater(3E3, function (b) {
a._Hero.shout("_customEvent_weapon_inactive");
f.recycleActor(a.actor)
}, this.actor)
},
_customEvent_shotgun: function () {
var a = this;
this.actor.disableActorDrawing();
this.actor.enableBehavior("Face Direction of HERO Motion");
f.runLater(100, function (b) {
b =
0;
for (var c = 3 + a._UpgradeFactor | 0; b < c;) {
var d = b++;
f.createRecycledActor(f.getActorType(23), a._Hero.getXCenter() - 4, a._Hero.getYCenter() - 4, 0);
f.getLastCreatedActor().setVelocity(57.29577951308402 * a.actor.getAngle() - (10 + 3 * a._UpgradeFactor) + f.randomInt(8, 12) * d, 40)
}
a._customEvent_sound_gun()
}, this.actor);
f.runPeriodically(650, function (b) {
b = 0;
for (var c = 3 + a._UpgradeFactor | 0; b < c;) {
var d = b++;
f.createRecycledActor(f.getActorType(23), a._Hero.getXCenter() - 4, a._Hero.getYCenter() - 4, 0);
f.getLastCreatedActor().setVelocity(57.29577951308402 *
a.actor.getAngle() - (10 + 3 * a._UpgradeFactor) + f.randomInt(8, 12) * d, 40)
}
a._customEvent_sound_gun();
f.startShakingScreen(.001, .1)
}, this.actor);
h.engine.gameAttributes.h.Can_Pickup = !1;
f.runLater(2E3, function (b) {
a._Hero.shout("_customEvent_weapon_inactive");
f.recycleActor(a.actor)
}, this.actor)
},
_customEvent_sound_gun: function () {
f.playSoundOnChannel(f.getSound(136), h.engine.getGameAttribute("Sound_Channel") | 0);
var a = h.engine, b = h.engine.getGameAttribute("Sound_Channel") + 1;
a.gameAttributes.h.Sound_Channel = b
},
init: function () {
var a = this;
this.actor.disableBehavior("Face Direction of HERO Motion");
this.actor.disableBehavior("Face Opposite of HERO Motion");
this.actor.moveToBottom();
f.runLater(500, function (b) {
a._Activated = !0
}, this.actor);
for (var b = 0, c = f.getActorsOfType(f.getActorType(154)); b < c.length;) {
var d = c[b];
++b;
null != d && !d.dead && !d.recycled && 40 > Math.abs(this.actor.getXCenter() - d.getXCenter()) && 40 > Math.abs(this.actor.getYCenter() - d.getYCenter()) && (this.actor.getX() < f.getSceneWidth() / 2 ? this.actor.setX(this.actor.getX() -
48) : this.actor.setX(this.actor.getX() + 48), this.actor.getY() < f.getSceneHeight() / 2 ? this.actor.setY(this.actor.getY() - 48) : this.actor.setY(this.actor.getY() + 48))
}
b = 0;
for (c = f.getActorsOfType(f.getActorType(18)); b < c.length;) d = c[b], ++b, null == d || d.dead || d.recycled || !d.isAlive() || (this._Hero = d, 24 > za.distance_to_target(this.actor, this._Hero) && (d = f.getValueForScene("Scene_Manager", "_PickupsLive"), f.setValueForScene("Scene_Manager", "_PickupsLive", (null == d ? 0 : "number" == typeof d ? w.__cast(d, Ka) : "number" == typeof d &&
(d | 0) === d ? w.__cast(d, Ia) : "boolean" == typeof d ? w.__cast(d, La) ? 1 : 0 : "string" == typeof d ? parseFloat(d) : parseFloat(z.string(d))) - 1), f.recycleActor(this.actor)));
this.actor.disableActorDrawing();
f.createRecycledActor(f.getActorType(232), this.actor.getX() - 8, this.actor.getY() - 8, 0);
f.runLater(600, function (b) {
a._PickedUp || a.actor.enableActorDrawing()
}, this.actor);
f.runLater(10, function (b) {
0 == a._WeaponRNG ? (a._WeaponType = "machinegun", h.engine.getGameAttribute("Upgrade_Machinegun") && (a._Upgraded = !0, a._UpgradeFactor =
.1)) : 1 == a._WeaponRNG ? (a._WeaponType = "spread", h.engine.getGameAttribute("Upgrade_Spread") && (a._Upgraded = !0)) : 2 == a._WeaponRNG ? (a._WeaponType = "quad", h.engine.getGameAttribute("Upgrade_Quad") && (a._Upgraded = !0, a._UpgradeFactor = .2)) : 3 == a._WeaponRNG ? (a._WeaponType = "homing", h.engine.getGameAttribute("Upgrade_Homing") && (a._Upgraded = !0, a._UpgradeFactor = 1)) : 4 == a._WeaponRNG ? (a._WeaponType = "mines", h.engine.getGameAttribute("Upgrade_Mines") && (a._Upgraded = !0, a._UpgradeFactor = 0)) : 5 == a._WeaponRNG ? (a._WeaponType = "mine_trail",
h.engine.getGameAttribute("Upgrade_Minetrail") && (a._Upgraded = !0, a._UpgradeFactor = 4)) : 6 == a._WeaponRNG ? (a._WeaponType = "orbit", h.engine.getGameAttribute("Upgrade_Orbit") && (a._Upgraded = !0)) : 7 == a._WeaponRNG && (a._WeaponType = "shotgun", h.engine.getGameAttribute("Upgrade_Shotgun") && (a._Upgraded = !0, a._UpgradeFactor = 2));
f.runLater(20, function (b) {
a._Upgraded ? (a.actor.setAnimation(a._WeaponType + "_up"), a.actor.setX(a.actor.getX() - 1), a.actor.setY(a.actor.getY() - 10)) : a.actor.setAnimation(a._WeaponType)
}, a.actor)
},
this.actor);
this.addListener(this.actor.whenDrawing, q(this, this._event_Drawing));
this.addListener(this.actor.whenUpdated, q(this, this._event_Updating))
},
forwardMessage: function (a) {
},
__class__: Tq
});
var Uq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Actor = "actor";
this.nameMap.h.Facing = "_Facing";
this._Facing = -90;
this.nameMap.h["Idle Threshold"] = "_IdleThreshold";
this._IdleThreshold = 1
};
k["scripts.Design_52_52_FaceDirectionofMotion"] = Uq;
Uq.__name__ = "scripts.Design_52_52_FaceDirectionofMotion";
Uq.__super__ =
P;
Uq.prototype = u(P.prototype, {
_Facing: null, _IdleThreshold: null, _event_Updated: function (a) {
this.wrapper.enabled && (Math.pow(this.actor.getXVelocity(), 2) + Math.pow(this.actor.getYVelocity(), 2) > Math.pow(this._IdleThreshold, 2) ? this.actor.setAngle(.01745329251994278 * (57.29577951308402 * Math.atan2(this.actor.getYVelocity(), this.actor.getXVelocity()) - this._Facing)) : this.actor.setAngularVelocity(0))
}, init: function () {
this.addListener(this.actor.whenUpdated, q(this, this._event_Updated))
}, forwardMessage: function (a) {
},
__class__: Uq
});
var Vq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Actor = "actor";
this.nameMap.h.Facing = "_Facing";
this._Facing = -90;
this.nameMap.h["Idle Threshold"] = "_IdleThreshold";
this._IdleThreshold = 1;
this.nameMap.h.Target_Actor = "_TargetActor"
};
k["scripts.Design_54_54_FaceOppositeofHEROMotion"] = Vq;
Vq.__name__ = "scripts.Design_54_54_FaceOppositeofHEROMotion";
Vq.__super__ = P;
Vq.prototype = u(P.prototype, {
_Facing: null, _IdleThreshold: null, _TargetActor: null, _event_Updated: function (a) {
this.wrapper.enabled &&
(Math.pow(this._TargetActor.getXVelocity(), 2) + Math.pow(this._TargetActor.getYVelocity(), 2) > Math.pow(this._IdleThreshold, 2) ? this.actor.setAngle(.01745329251994278 * (57.29577951308402 * Math.atan2(this._TargetActor.getYVelocity(), this._TargetActor.getXVelocity()) - this._Facing - 180)) : this.actor.setAngularVelocity(0))
}, init: function () {
for (var a = 0, b = f.getActorsOfType(f.getActorType(18)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._TargetActor = c)
}
this.addListener(this.actor.whenUpdated, q(this,
this._event_Updated))
}, forwardMessage: function (a) {
}, __class__: Vq
});
var Wq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Actor = "actor";
this.nameMap.h["Distance X"] = "_DistanceX";
this._DistanceX = 0;
this.nameMap.h["Distance Y"] = "_DistanceY";
this._DistanceY = 0;
this.nameMap.h.Direction = "_Direction";
this._Direction = 0;
this.nameMap.h.Distance = "_Distance";
this._Distance = 0;
this.nameMap.h.Speed = "_Speed";
this._Speed = 10;
this.nameMap.h.Facing = "_Facing";
this._Facing = 0;
this.nameMap.h["Point Away"] = "_PointAway";
this._PointAway =
!0;
this.nameMap.h["Origin Actor"] = "_OriginActor";
this.nameMap.h["Step Seconds"] = "_StepSeconds";
this._StepSeconds = 0;
this.nameMap.h["New Distance"] = "_NewDistance";
this._NewDistance = 0;
this.nameMap.h["Distance Threshold"] = "_DistanceThreshold";
this._DistanceThreshold = 10;
this.nameMap.h["Fixed Radius"] = "_FixedRadius";
this._FixedRadius = !0
};
k["scripts.Design_61_61_CustomRotateAroundActor"] = Wq;
Wq.__name__ = "scripts.Design_61_61_CustomRotateAroundActor";
Wq.__super__ = P;
Wq.prototype = u(P.prototype, {
_DistanceX: null,
_DistanceY: null,
_Direction: null,
_Distance: null,
_Speed: null,
_Facing: null,
_PointAway: null,
_OriginActor: null,
_StepSeconds: null,
_NewDistance: null,
_DistanceThreshold: null,
_FixedRadius: null,
_event_Updated: function (a) {
this.wrapper.enabled && (a = this._OriginActor, (f.isPrimitive(a) || ("string" == typeof a ? "" != w.__cast(a, String) : null != a)) && this._OriginActor.isAlive() && (this._FixedRadius || (this._DistanceX = this.actor.getXCenter() - this._OriginActor.getXCenter(), this._DistanceY = this.actor.getYCenter() - this._OriginActor.getYCenter(),
this._NewDistance = Math.sqrt(Math.pow(this._DistanceX, 2) + Math.pow(this._DistanceY, 2)), Math.abs(this._NewDistance - this._Distance) > this._DistanceThreshold && (this._Distance = this._NewDistance, this._Direction = Math.atan2(this._DistanceY, this._DistanceX))), this._Direction = (this._Direction += .01745329251994278 * this._Speed * this._StepSeconds) - 2 * Math.PI * Math.floor(this._Direction / (2 * Math.PI)), this.actor.setX(this._OriginActor.getXCenter() + this._Distance * Math.cos(this._Direction) - this.actor.getWidth() / 2), this.actor.setY(this._OriginActor.getYCenter() +
this._Distance * Math.sin(this._Direction) - this.actor.getHeight() / 2), this._PointAway && this.actor.setAngle(.01745329251994278 * (57.29577951308402 * this._Direction - this._Facing))))
},
_customEvent_Initialize: function () {
var a = this._OriginActor;
(f.isPrimitive(a) || ("string" == typeof a ? "" != w.__cast(a, String) : null != a)) && this._OriginActor.isAlive() && (this._DistanceX = this.actor.getXCenter() - this._OriginActor.getXCenter(), this._DistanceY = this.actor.getYCenter() - this._OriginActor.getYCenter(), this._Distance = Math.sqrt(Math.pow(this._DistanceX,
2) + Math.pow(this._DistanceY, 2)), this._Direction = Math.atan2(this._DistanceY, this._DistanceX))
},
init: function () {
this._StepSeconds = f.getStepSize() / 1E3;
for (var a = 0, b = f.getActorsOfType(f.getActorType(18)); a < b.length;) {
var c = b[a];
++a;
null == c || c.dead || c.recycled || (this._OriginActor = c)
}
this._customEvent_Initialize();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updated))
},
forwardMessage: function (a) {
},
__class__: Wq
});
var Xq = function (a, b, c) {
P.call(this, b);
this.nameMap.h.Actor = "actor";
this.nameMap.h.yPos =
"_yPos";
this._yPos = 0
};
k["scripts.Design_66_66_ZOrdering"] = Xq;
Xq.__name__ = "scripts.Design_66_66_ZOrdering";
Xq.__super__ = P;
Xq.prototype = u(P.prototype, {
_yPos: null, _event_Updated: function (a) {
this.wrapper.enabled && this._yPos != this.actor.getY() && (this._yPos = this.actor.getY(), f.sayToScene("Actor Z Ordering", "_customBlock_UpdateList"))
}, init: function () {
this._yPos = this.actor.getY();
this.addListener(this.actor.whenUpdated, q(this, this._event_Updated))
}, forwardMessage: function (a) {
}, __class__: Xq
});
var Yq = function (a,
b) {
f.call(this);
this.nameMap.h["Actor List"] = "_ActorList";
this.nameMap.h.zIndex = "_zIndex";
this._zIndex = 0;
this.nameMap.h.Layers = "_Layers";
this._Layers = ""
};
k["scripts.Design_67_67_ActorZOrdering"] = Yq;
Yq.__name__ = "scripts.Design_67_67_ActorZOrdering";
Yq.__super__ = Md;
Yq.prototype = u(Md.prototype, {
_ActorList: null, _zIndex: null, _Layers: null, _customBlock_UpdateList: function () {
for (var a = 0, b = w.__cast(this._Layers.split(" "), Array); a < b.length;) {
var c = b[a];
++a;
f.engine.allActors.reuseIterator = !1;
for (var d = f.engine.allActors.iterator(); d.hasNext();) {
var e =
d.next();
if (null != e && !e.dead && !e.recycled && e.isOnScreenCache && e.getLayerID() == (null == c ? 0 : "number" == typeof c ? w.__cast(c, Ka) : "number" == typeof c && (c | 0) === c ? w.__cast(c, Ia) : "boolean" == typeof c ? w.__cast(c, La) ? 1 : 0 : "string" == typeof c ? parseFloat(c) : parseFloat(z.string(c)))) if (0 == this._ActorList.length) this._ActorList.push(e); else {
this._zIndex = this._ActorList.length;
for (var g = 0, h = this._zIndex | 0; g < h;) if (g++, e.getY() + e.getHeight() < this._ActorList[this._zIndex - 1 | 0].getY() + this._ActorList[this._zIndex - 1 | 0].getHeight()) --this._zIndex;
else break;
this._ActorList.splice(this._zIndex | 0, 0, e)
}
}
f.engine.allActors.reuseIterator = !0;
c = 0;
for (d = this._ActorList.length; c < d;) e = c++, this._ActorList[e].setZIndex(e);
this._ActorList = []
}
}, _customBlock_OrderLayer: function (a) {
f.engine.allActors.reuseIterator = !1;
for (var b = f.engine.allActors.iterator(); b.hasNext();) {
var c = b.next();
if (null != c && !c.dead && !c.recycled && c.isOnScreenCache && c.getLayerID() == a) if (0 == this._ActorList.length) this._ActorList.push(c); else {
this._zIndex = this._ActorList.length;
for (var d =
0, e = this._zIndex | 0; d < e;) if (d++, c.getY() + c.getHeight() < this._ActorList[this._zIndex - 1 | 0].getY() + this._ActorList[this._zIndex - 1 | 0].getHeight()) --this._zIndex; else break;
this._ActorList.splice(this._zIndex | 0, 0, c)
}
}
f.engine.allActors.reuseIterator = !0;
d = 0;
for (e = this._ActorList.length; d < e;) a = d++, this._ActorList[a].setZIndex(a);
this._ActorList = []
}, init: function () {
var a = this;
this._ActorList = [];
f.runLater(20, function (b) {
a._customBlock_UpdateList()
}, null)
}, forwardMessage: function (a) {
}, __class__: Yq
});
var Zq =
function (a, b, c) {
P.call(this, b);
this.nameMap.h.Actor = "actor"
};
k["scripts.Design_86_86_DieOnLeavingScreen"] = Zq;
Zq.__name__ = "scripts.Design_86_86_DieOnLeavingScreen";
Zq.__super__ = P;
Zq.prototype = u(P.prototype, {
_event_LeavesScreen: function (a, b, c, d) {
this.wrapper.enabled && b && f.recycleActor(this.actor)
}, init: function () {
this.actor.makeAlwaysSimulate();
this.addListener(this.actor.whenPositionStateChanged, q(this, this._event_LeavesScreen))
}, forwardMessage: function (a) {
}, __class__: Zq
});
var ms = function () {
};
k["scripts.MyScripts"] =
ms;
ms.__name__ = "scripts.MyScripts";
var $q = function (a, b) {
f.call(this);
this.nameMap.h.RNG = "_RNG";
this._RNG = 0
};
k["scripts.SceneEvents_14"] = $q;
$q.__name__ = "scripts.SceneEvents_14";
$q.__super__ = Md;
$q.prototype = u(Md.prototype, {
_RNG: null, init: function () {
}, forwardMessage: function (a) {
}, __class__: $q
});
var ar = function (a, b) {
f.call(this);
this.nameMap.h.RNG = "_RNG";
this._RNG = 0;
this.nameMap.h.Upgrades_Available = "_UpgradesAvailable";
this.nameMap.h.RNG_2 = "_RNG2";
this._RNG2 = 0;
this.nameMap.h.Upgrade_Slot_1 = "_UpgradeSlot1";
this._UpgradeSlot1 = 0;
this.nameMap.h.Upgrade_Slot_2 = "_UpgradeSlot2";
this._UpgradeSlot2 = 0;
this.nameMap.h.Upgrade_Slot_3 = "_UpgradeSlot3";
this._UpgradeSlot3 = 0;
this.nameMap.h.Upgrade_Slot_4 = "_UpgradeSlot4";
this._UpgradeSlot4 = 0;
this.nameMap.h.Upgrade_Slot_5 = "_UpgradeSlot5";
this._UpgradeSlot5 = 0;
this.nameMap.h.Upgrade_Slot_6 = "_UpgradeSlot6";
this._UpgradeSlot6 = 0;
this.nameMap.h.Upgrade_Slot_7 = "_UpgradeSlot7";
this._UpgradeSlot7 = 0;
this.nameMap.h.Upgrade_Slot_8 = "_UpgradeSlot8";
this._UpgradeSlot8 = 0
};
k["scripts.SceneEvents_15"] =
ar;
ar.__name__ = "scripts.SceneEvents_15";
ar.__super__ = Md;
ar.prototype = u(Md.prototype, {
_RNG: null,
_UpgradesAvailable: null,
_RNG2: null,
_UpgradeSlot1: null,
_UpgradeSlot2: null,
_UpgradeSlot3: null,
_UpgradeSlot4: null,
_UpgradeSlot5: null,
_UpgradeSlot6: null,
_UpgradeSlot7: null,
_UpgradeSlot8: null,
_event_Drawing: function (a, b, c) {
if (this.wrapper.enabled) {
b = f.getFont(252);
null != b && b != a.font && (a.font = b);
b = f.getFont(172);
null != b && b != a.font && (a.font = b);
b = (f.getSceneWidth() - f.getFont(172).getTextWidth("INTO THE PIT") /
h.SCALE) / 2;
null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + b * a.scaleX, c = a.y + 182 * a.scaleY) : (b = a.x + b * a.scaleX - h.cameraX, c = a.y + 182 * a.scaleY - h.cameraY) : (b = a.x + b * a.scaleX, c = a.y + 182 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
var d = null, e = a.font;
e = "INTO THE PIT:" + e.ID + ":" + a.alpha + ":" + h.SCALE + ":" + e.get_letterSpacing();
if (Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, e)) {
var g = ca.drawnStringCache.h[e];
g.lifetime = 5;
d = g.img
} else {
g = a.font.font.getTextWidth("INTO THE PIT", a.font.fontScale);
var l = a.font.font.getFontHeight() * a.font.fontScale | 0;
0 < g && 0 < l && (d = new ka(g, l, !0, 0), a.font.font.renderToImg(d, "INTO THE PIT", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), g = new vc, g.img = d, g.lifetime = 5, ca.drawnStringCache.h[e] = g, ca.drawnStringCacheKeys.push(e))
}
null != d && (a.graphics.beginBitmapFill(d, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, d.width, d.height), a.graphics.endFill());
b = f.getFont(255);
null != b && b != a.font &&
(a.font = b);
window.navigator.maxTouchPoints || "ontouchstart" in document ? (b = (f.getSceneWidth() - f.getFont(255).getTextWidth("MOVE=DRAG FINGER") / h.SCALE) / 2, null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE)), a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + b * a.scaleX, c = a.y + 228 * a.scaleY) : (b = a.x + b * a.scaleX - h.cameraX, c = a.y + 228 * a.scaleY - h.cameraY) : (b = a.x + b * a.scaleX, c = a.y + 228 * a.scaleY), a.mtx.identity(), a.mtx.translate(b, c), d = null, e = a.font, e = "MOVE=DRAG FINGER:" + e.ID + ":" +
a.alpha + ":" + h.SCALE + ":" + e.get_letterSpacing(), Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, e) ? (g = ca.drawnStringCache.h[e], g.lifetime = 5, d = g.img) : (g = a.font.font.getTextWidth("MOVE=DRAG FINGER", a.font.fontScale), l = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < g && 0 < l && (d = new ka(g, l, !0, 0), a.font.font.renderToImg(d, "MOVE=DRAG FINGER", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), g = new vc, g.img = d, g.lifetime = 5, ca.drawnStringCache.h[e] = g, ca.drawnStringCacheKeys.push(e)))) : (b = (f.getSceneWidth() - f.getFont(255).getTextWidth("MOVE=ARROWS/WASD ESC=PAUSE M=MUTE") /
h.SCALE) / 2, null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE)), a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + b * a.scaleX, c = a.y + 228 * a.scaleY) : (b = a.x + b * a.scaleX - h.cameraX, c = a.y + 228 * a.scaleY - h.cameraY) : (b = a.x + b * a.scaleX, c = a.y + 228 * a.scaleY), a.mtx.identity(), a.mtx.translate(b, c), d = null, e = a.font, e = "MOVE=ARROWS/WASD ESC=PAUSE M=MUTE:" + e.ID + ":" + a.alpha + ":" + h.SCALE + ":" + e.get_letterSpacing(), Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, e) ? (g = ca.drawnStringCache.h[e],
g.lifetime = 5, d = g.img) : (g = a.font.font.getTextWidth("MOVE=ARROWS/WASD ESC=PAUSE M=MUTE", a.font.fontScale), l = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < g && 0 < l && (d = new ka(g, l, !0, 0), a.font.font.renderToImg(d, "MOVE=ARROWS/WASD ESC=PAUSE M=MUTE", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), g = new vc, g.img = d, g.lifetime = 5, ca.drawnStringCache.h[e] = g, ca.drawnStringCacheKeys.push(e))));
null != d && (a.graphics.beginBitmapFill(d, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, d.width, d.height), a.graphics.endFill())
}
},
_customEvent_spawn_upgrades: function () {
var a = this;
f.createRecycledActor(f.getActorType(230), 348, 44, 0);
this._RNG = f.randomInt(0, 7);
f.runLater(1500, function (b) {
b = 0;
for (var c = f.getActorsOfType(f.getActorType(230)); b < c.length;) {
var d = c[b];
++b;
null == d || d.dead || d.recycled || f.recycleActor(d)
}
f.createRecycledActor(f.getActorType(228), 356, 42, 0);
f.getLastCreatedActor().setValue("ActorEvents_228", "_UpgradeType", a._RNG);
f.getLastCreatedActor().setValue("ActorEvents_228", "_LeftSideUpgrade", 1)
}, null)
},
init: function () {
0 ==
h.engine.getGameAttribute("High_Score") && (h.engine.gameAttributes.h.High_Score = 1);
h.engine.gameAttributes.h.Speedrun_Timer = 0;
h.engine.gameAttributes.h.Big_Boss_Order = "asdf";
h.engine.gameAttributes.h.Lives = 3;
h.engine.gameAttributes.h.Can_Continue = !0;
h.engine.gameAttributes.h.Upgrade_Homing = !1;
h.engine.gameAttributes.h.Upgrade_Machinegun = !1;
h.engine.gameAttributes.h.Upgrade_Mines = !1;
h.engine.gameAttributes.h.Upgrade_Minetrail = !1;
h.engine.gameAttributes.h.Upgrade_Orbit = !1;
h.engine.gameAttributes.h.Upgrade_Quad =
!1;
h.engine.gameAttributes.h.Upgrade_Shotgun = !1;
h.engine.gameAttributes.h.Upgrade_Spread = !1;
h.engine.gameAttributes.h.BG_Pattern_Bounce = !1;
h.engine.gameAttributes.h.BG_Pattern_Diagonal = !1;
h.engine.gameAttributes.h.BG_Pattern_Follow = !1;
h.engine.gameAttributes.h.BG_Pattern_Grid = !1;
h.engine.gameAttributes.h.Tutorial_Complete = !0;
this._customEvent_spawn_upgrades();
this.addListener(f.engine.whenDrawing, q(this, this._event_Drawing))
},
forwardMessage: function (a) {
},
__class__: ar
});
var br = function (a, b) {
f.call(this);
this.nameMap.h.Scene_Transitioning = "_SceneTransitioning";
this._SceneTransitioning = !1
};
k["scripts.SceneEvents_16"] = br;
br.__name__ = "scripts.SceneEvents_16";
br.__super__ = Md;
br.prototype = u(Md.prototype, {
_SceneTransitioning: null, init: function () {
var a = this;
window.addEventListener("keydown", function (a) {
switch (a.keyCode) {
case 37:
case 39:
case 38:
case 40:
case 32:
a.preventDefault()
}
}, !1);
window.addEventListener("keyup", function (a) {
}, !1);
f.loadGame("mySave", function (a) {
f.loopSoundOnChannel(f.getSound(113), 0);
h.engine.gameAttributes.h.Volume = 50;
f.setVolumeForAllSounds(h.engine.getGameAttribute("Volume") / 100);
f.setVolumeForChannel(h.engine.getGameAttribute("Volume") / 2 / 100, 0)
});
h.engine.gameAttributes.h.Score = 0;
h.engine.gameAttributes.h.Sound_Channel = 6;
f.runLater(700, function (b) {
a._SceneTransitioning = !0;
f.engine.pause();
ya.commercialBreak(function () {
f.engine.unpause();
var a = zb.get().scenes.h[15].getID(), b = 204, e = 204, g = 204;
null == g && (g = 0);
null == e && (e = 0);
null == b && (b = 0);
var h = f.createFadeOut(.1, b << 16 | e << 8 | g);
g = e = b = 204;
null == g && (g = 0);
null == e && (e = 0);
null == b && (b = 0);
f.switchScene(a, h, f.createFadeIn(.1, b << 16 | e << 8 | g))
})
}, null)
}, forwardMessage: function (a) {
}, __class__: br
});
var cr = function (a, b) {
f.call(this);
this.nameMap.h.RNG = "_RNG";
this._RNG = 0
};
k["scripts.SceneEvents_17"] = cr;
cr.__name__ = "scripts.SceneEvents_17";
cr.__super__ = Md;
cr.prototype = u(Md.prototype, {
_RNG: null, init: function () {
}, forwardMessage: function (a) {
}, __class__: cr
});
var dr = function (a, b) {
f.call(this);
this.nameMap.h.RNG = "_RNG";
this._RNG = 0;
this.nameMap.h.Clone_Phrases =
"_ClonePhrases"
};
k["scripts.SceneEvents_18"] = dr;
dr.__name__ = "scripts.SceneEvents_18";
dr.__super__ = Md;
dr.prototype = u(Md.prototype, {
_RNG: null, _ClonePhrases: null, _event_Drawing: function (a, b, c) {
if (this.wrapper.enabled) {
b = f.getFont(172);
null != b && b != a.font && (a.font = b);
b = (f.getSceneWidth() - f.getFont(172).getTextWidth("THE END") / h.SCALE) / 2;
null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + b * a.scaleX, c = a.y + 182 * a.scaleY) :
(b = a.x + b * a.scaleX - h.cameraX, c = a.y + 182 * a.scaleY - h.cameraY) : (b = a.x + b * a.scaleX, c = a.y + 182 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
var d = null, e = a.font;
e = "THE END:" + e.ID + ":" + a.alpha + ":" + h.SCALE + ":" + e.get_letterSpacing();
if (Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, e)) {
var g = ca.drawnStringCache.h[e];
g.lifetime = 5;
d = g.img
} else {
var l = a.font.font.getTextWidth("THE END", a.font.fontScale),
k = a.font.font.getFontHeight() * a.font.fontScale | 0;
0 < l && 0 < k && (d = new ka(l, k, !0, 0), a.font.font.renderToImg(d,
"THE END", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), g = new vc, g.img = d, g.lifetime = 5, ca.drawnStringCache.h[e] = g, ca.drawnStringCacheKeys.push(e))
}
null != d && (a.graphics.beginBitmapFill(d, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, d.width, d.height), a.graphics.endFill());
b = f.getFont(255);
null != b && b != a.font && (a.font = b);
null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + 140 * a.scaleX, c = a.y + 6 * a.scaleY) : (b = a.x + 140 * a.scaleX -
h.cameraX, c = a.y + 6 * a.scaleY - h.cameraY) : (b = a.x + 140 * a.scaleX, c = a.y + 6 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
d = null;
e = a.font;
e = "YOUR TIME:" + e.ID + ":" + a.alpha + ":" + h.SCALE + ":" + e.get_letterSpacing();
Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, e) ? (g = ca.drawnStringCache.h[e], g.lifetime = 5, d = g.img) : (l = a.font.font.getTextWidth("YOUR TIME", a.font.fontScale), k = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < l && 0 < k && (d = new ka(l, k, !0, 0), a.font.font.renderToImg(d, "YOUR TIME", 0, a.alpha, 0, 0,
a.font.fontScale, 0, !1), g = new vc, g.img = d, g.lifetime = 5, ca.drawnStringCache.h[e] = g, ca.drawnStringCacheKeys.push(e)));
null != d && (a.graphics.beginBitmapFill(d, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, d.width, d.height), a.graphics.endFill());
null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE));
a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + 255 * a.scaleX, c = a.y + 6 * a.scaleY) : (b = a.x + 255 * a.scaleX - h.cameraX, c = a.y + 6 * a.scaleY - h.cameraY) : (b = a.x + 255 * a.scaleX, c = a.y + 6 * a.scaleY);
a.mtx.identity();
a.mtx.translate(b, c);
d = null;
e = a.font;
e = "BEST:" + e.ID + ":" + a.alpha + ":" + h.SCALE + ":" + e.get_letterSpacing();
Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, e) ? (g = ca.drawnStringCache.h[e], g.lifetime = 5, d = g.img) : (l = a.font.font.getTextWidth("BEST", a.font.fontScale), k = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < l && 0 < k && (d = new ka(l, k, !0, 0), a.font.font.renderToImg(d, "BEST", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), g = new vc, g.img = d, g.lifetime = 5, ca.drawnStringCache.h[e] = g, ca.drawnStringCacheKeys.push(e)));
null != d && (a.graphics.beginBitmapFill(d, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, d.width, d.height), a.graphics.endFill());
1 <= h.engine.getGameAttribute("Speedrun_Timer") && (g = "" + Math.floor(h.engine.getGameAttribute("Speedrun_Timer") / 1E3 / 60) + ":" + ("" + h.engine.getGameAttribute("Speedrun_Best") / 1E3 % 60).substring(0, 4), null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE)), a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + 148 * a.scaleX, c = a.y + 15 * a.scaleY) : (b = a.x + 148 * a.scaleX -
h.cameraX, c = a.y + 15 * a.scaleY - h.cameraY) : (b = a.x + 148 * a.scaleX, c = a.y + 15 * a.scaleY), a.mtx.identity(), a.mtx.translate(b, c), d = null, e = a.font, e = g + ":" + e.ID + ":" + a.alpha + ":" + h.SCALE + ":" + e.get_letterSpacing(), Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, e) ? (g = ca.drawnStringCache.h[e], g.lifetime = 5, d = g.img) : (l = a.font.font.getTextWidth(g, a.font.fontScale), k = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < l && 0 < k && (d = new ka(l, k, !0, 0), a.font.font.renderToImg(d, g, 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), g =
new vc, g.img = d, g.lifetime = 5, ca.drawnStringCache.h[e] = g, ca.drawnStringCacheKeys.push(e))), null != d && (a.graphics.beginBitmapFill(d, a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, d.width, d.height), a.graphics.endFill()));
1 <= h.engine.getGameAttribute("Speedrun_Best") ? (g = "" + Math.floor(h.engine.getGameAttribute("Speedrun_Best") / 1E3 / 60) + ":" + ("" + h.engine.getGameAttribute("Speedrun_Best") / 1E3 % 60).substring(0, 4), null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE)), a.drawActor ?
null != a.actor && a.actor.isHUD ? (b = a.x + 250 * a.scaleX, c = a.y + 15 * a.scaleY) : (b = a.x + 250 * a.scaleX - h.cameraX, c = a.y + 15 * a.scaleY - h.cameraY) : (b = a.x + 250 * a.scaleX, c = a.y + 15 * a.scaleY), a.mtx.identity(), a.mtx.translate(b, c), d = null, e = a.font, e = g + ":" + e.ID + ":" + a.alpha + ":" + h.SCALE + ":" + e.get_letterSpacing(), Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, e) ? (g = ca.drawnStringCache.h[e], g.lifetime = 5, d = g.img) : (l = a.font.font.getTextWidth(g, a.font.fontScale), k = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < l && 0 < k &&
(d = new ka(l, k, !0, 0), a.font.font.renderToImg(d, g, 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), g = new vc, g.img = d, g.lifetime = 5, ca.drawnStringCache.h[e] = g, ca.drawnStringCacheKeys.push(e)))) : (null == a.font && (a.font = a.defaultFont, a.font.fontScale != h.SCALE && (a.font.fontScale = h.SCALE)), a.drawActor ? null != a.actor && a.actor.isHUD ? (b = a.x + 148 * a.scaleX, c = a.y + 16 * a.scaleY) : (b = a.x + 148 * a.scaleX - h.cameraX, c = a.y + 16 * a.scaleY - h.cameraY) : (b = a.x + 148 * a.scaleX, c = a.y + 16 * a.scaleY), a.mtx.identity(), a.mtx.translate(b, c), d = null, e = a.font,
e = "- - - -:" + e.ID + ":" + a.alpha + ":" + h.SCALE + ":" + e.get_letterSpacing(), Object.prototype.hasOwnProperty.call(ca.drawnStringCache.h, e) ? (g = ca.drawnStringCache.h[e], g.lifetime = 5, d = g.img) : (l = a.font.font.getTextWidth("- - - -", a.font.fontScale), k = a.font.font.getFontHeight() * a.font.fontScale | 0, 0 < l && 0 < k && (d = new ka(l, k, !0, 0), a.font.font.renderToImg(d, "- - - -", 0, a.alpha, 0, 0, a.font.fontScale, 0, !1), g = new vc, g.img = d, g.lifetime = 5, ca.drawnStringCache.h[e] = g, ca.drawnStringCacheKeys.push(e))));
null != d && (a.graphics.beginBitmapFill(d,
a.mtx, !1, aa.antialias), a.graphics.drawRect(b, c, d.width, d.height), a.graphics.endFill())
}
}, _event_Msound: function (a, b) {
this.wrapper.enabled && a && (50 == h.engine.getGameAttribute("Volume") ? h.engine.gameAttributes.h.Volume = 0 : h.engine.gameAttributes.h.Volume = 50, f.setVolumeForAllSounds(h.engine.getGameAttribute("Volume") / 100), f.setVolumeForChannel(h.engine.getGameAttribute("Volume") / 2 / 100, 0))
}, init: function () {
ya.sendHappyTime(1);
h.engine.gameAttributes.h.Score = 25;
this._ClonePhrases = [];
this._ClonePhrases.push("So...now what?");
this._ClonePhrases.push("You look familiar.");
this._ClonePhrases.push("We did it! ... Right?");
this._ClonePhrases.push("Did you bring food?");
this._ClonePhrases.push("This wasn~x2019t the ending I hoped for.");
this._ClonePhrases.push("Did we take a wrong turn?");
this._ClonePhrases.push("Did you bring a ladder?");
this._ClonePhrases.push("I wish I had a jetpack.");
this._ClonePhrases.push("I expected something different.");
this._ClonePhrases.push("I guess it was all in the title.");
this._ClonePhrases.push("I~x2019m hungry.");
this._ClonePhrases.push("Isn~x2019t it beautiful here?");
this._ClonePhrases.push("Gray my favorite color!");
this._ClonePhrases.push("Look at all this gorgeous metal!");
this._ClonePhrases.push("They should decorate.");
this._ClonePhrases.push("Honestly, I~x2019m tired of pits.");
this._ClonePhrases.push("I feel like they were trying to kill me.");
this._ClonePhrases.push("Is there a trophy?");
this._ClonePhrases.push("Who wants to go again?");
this._ClonePhrases.push("Tag! You~x2019re it!");
this._ClonePhrases.push("Want to play hide and seek?");
this._ClonePhrases.push("How did they build this with no hands?");
this.addListener(f.engine.whenDrawing, q(this, this._event_Drawing));
this.addListener(f.engine.whenKeyPressedEvents.getOrCreateEvent("M"), q(this, this._event_Msound))
}, forwardMessage: function (a) {
}, __class__: dr
});
var er = function () {
};
k["scripts.SplashBox"] = er;
er.__name__ = "scripts.SplashBox";
er.prototype = {__class__: er};
var qk = function () {
this.onComplete = new Rd;
var a = this;
Ca.call(this);
Oa.get_current().addChild(this);
this.locked = !1;
var b = h.SCALE,
c = "";
this.background = new Ca;
this.background.get_graphics().beginFill(-15592942, 1);
this.background.get_graphics().drawRect(0, 0, this.getWidth(), this.getHeight());
this.addChild(this.background);
X.getConfigBitmap("config/preloader-bg.png").onComplete(function (b) {
a.addChildAt(b, a.getChildIndex(a.background) + 1)
});
var d = 2 * b;
this.barWidth = b * h.screenScaleX * 192 | 0;
this.barHeight = b * h.screenScaleY * 13 | 0;
var e = 0 * b;
b *= 126;
c = this.getWidth() / 2 - this.barWidth / 2;
var f = this.getHeight() / 2 - this.barHeight / 2;
this.barBorder =
new Ca;
this.barBorder.get_graphics().beginFill(-12303292, 1);
this.barBorder.get_graphics().drawRect(-d, -d, this.barWidth + 2 * d, this.barHeight + 2 * d);
this.barBorder.set_x(c + e);
this.barBorder.set_y(f + b);
this.addChild(this.barBorder);
this.barBackground = new Ca;
this.barBackground.get_graphics().beginFill(-12303292, 1);
this.barBackground.get_graphics().drawRect(0, 0, this.barWidth, this.barHeight);
this.barBackground.set_x(c + e);
this.barBackground.set_y(f + b);
this.barBackground.set_scaleX(1);
this.addChild(this.barBackground);
this.bar = new Ca;
this.bar.get_graphics().beginFill(-7829368, 1);
this.bar.get_graphics().drawRect(0, 0, this.barWidth, this.barHeight);
d = new ba(0, 0, 0, this.barHeight);
this.bar.set_scrollRect(d);
this.bar.set_x(c + e);
this.bar.set_y(f + b);
this.addChild(this.bar);
"" != this.getURL() && this.addEventListener("mouseDown", q(this, this.onMouseDown), !1, 2);
c = this.getLockURL();
if (this.isSiteLocked() && null != c && "" != c) {
d = !1;
e = Oa.get_current().get_loaderInfo().url;
if (null == e) d = !0; else if (0 > e.indexOf("http://") && 0 > e.indexOf("https://")) d =
!0; else if (0 < e.indexOf("stencyl.com") || 0 < e.indexOf("localhost")) d = !0;
if (!d) {
b = c.split(",");
for (c = 0; c < b.length;) d = b[c], ++c, d = T.trim(d), 0 <= d.indexOf("*") || T.startsWith(d, "^") && T.endsWith(d, "$") ? (d = new fb(d, ""), d = d.match(e)) : d = 0 <= e.indexOf(d);
d || this.showLockScreen(b[0])
}
}
};
k["scripts.StencylPreloader"] = qk;
qk.__name__ = "scripts.StencylPreloader";
qk.__super__ = Ca;
qk.prototype = u(Ca.prototype, {
barBorder: null,
bar: null,
barBackground: null,
background: null,
barWidth: null,
barHeight: null,
locked: null,
onComplete: null,
adPlaying: null,
ready: null,
getLockURL: function () {
return ""
},
isSiteLocked: function () {
return !1
},
showLockScreen: function (a) {
this.locked = !0;
X.removeAllChildren(this);
var b = new dd(new ka(this.getWidth() | 0, this.getHeight() | 0, !1, 5658198));
this.addChild(b);
var c = new cf;
c.set_width(this.getWidth() - 16);
c.set_height(this.getHeight() - 16);
c.set_x(8);
c.set_y(8);
c.set_textColor(16777215);
c.set_multiline(!0);
c.set_wordWrap(!0);
c.set_text("Hi there! It looks like somebody copied this game without my permission. Just click anywhere, or copy-paste this URL into your browser.\n\n" +
a + "\n\nThanks, and have fun!");
a = new Sg(null, 25);
c.setTextFormat(a);
this.addChild(c);
this.removeEventListener("mouseDown", q(this, this.onMouseDown));
c.addEventListener("click", q(this, this.goToLockURL));
b.addEventListener("click", q(this, this.goToLockURL))
},
getURL: function () {
return ""
},
goToLockURL: function (a) {
Oa.getURL(new Vg(this.getLockURL().split(",")[0]), "_parent")
},
onMouseDown: function (a) {
this.removeEventListener("mouseDown", q(this, this.onMouseDown));
Oa.getURL(new Vg(this.getURL()), "_blank")
},
getBackgroundColor: function () {
return 3368601
},
getWidth: function () {
return ua.windowWidth
},
getHeight: function () {
return ua.windowHeight
},
onUpdate: function (a, b) {
Oa.get_current().get_loaderInfo().__update(a, b);
null != this.bar && (a = new ba(0, 0, a / b * this.barWidth, this.barHeight), this.bar.set_scrollRect(a))
},
onLoaded: function () {
Oa.get_current().get_loaderInfo().__complete();
this.ready = !0;
this.adPlaying || this.unload()
},
adFinished: function () {
this.adPlaying = !1;
this.ready && this.unload()
},
unload: function () {
new er;
this.isSiteLocked() && this.locked || (this.parent ==
Oa.get_current() && Oa.get_current().removeChild(this), Oa.get_current().stage.set_focus(null), this.onComplete.dispatch())
},
__class__: qk
});
var Nb = function () {
};
k["tweenxcore.Easing"] = Nb;
Nb.__name__ = "tweenxcore.Easing";
Nb.linear = function (a) {
return a
};
Nb.sineIn = function (a) {
return 0 == a ? 0 : 1 == a ? 1 : 1 - Math.cos(1.5707963267948966 * a)
};
Nb.sineOut = function (a) {
return 0 == a ? 0 : 1 == a ? 1 : Math.sin(1.5707963267948966 * a)
};
Nb.sineInOut = function (a) {
return 0 == a ? 0 : 1 == a ? 1 : -.5 * (Math.cos(3.141592653589793 * a) - 1)
};
Nb.sineOutIn = function (a) {
return 0 ==
a ? 0 : 1 == a ? 1 : .5 > a ? .5 * Math.sin(3.141592653589793 * a) : -.5 * Math.cos(1.5707963267948966 * (2 * a - 1)) + 1
};
Nb.quadIn = function (a) {
return a * a
};
Nb.quadOut = function (a) {
return -a * (a - 2)
};
Nb.quadInOut = function (a) {
return .5 > a ? 2 * a * a : -2 * --a * a + 1
};
Nb.quadOutIn = function (a) {
if (.5 > a) return -.5 * (a *= 2) * (a - 2);
a = 2 * a - 1;
return .5 * a * a + .5
};
Nb.cubicIn = function (a) {
return a * a * a
};
Nb.cubicOut = function (a) {
return --a * a * a + 1
};
Nb.cubicInOut = function (a) {
return 1 > (a *= 2) ? .5 * a * a * a : .5 * ((a -= 2) * a * a + 2)
};
Nb.cubicOutIn = function (a) {
a = 2 * a - 1;
return .5 * (a * a * a + 1)
};
Nb.quartIn = function (a) {
return (a *= a) * a
};
Nb.quartOut = function (a) {
a *= --a;
return 1 - a * a
};
Nb.quartInOut = function (a) {
if (1 > (a *= 2)) return .5 * (a *= a) * a;
a *= a -= 2;
return -.5 * (a * a - 2)
};
Nb.quartOutIn = function (a) {
if (.5 > a) return a = 2 * a - 1, -.5 * (a *= a) * a + .5;
a = 2 * a - 1;
return .5 * (a *= a) * a + .5
};
Nb.quintIn = function (a) {
return a * (a *= a) * a
};
Nb.quintOut = function (a) {
return --a * (a *= a) * a + 1
};
Nb.quintInOut = function (a) {
return 1 > (a *= 2) ? .5 * a * (a *= a) * a : .5 * (a -= 2) * (a *= a) * a + 1
};
Nb.quintOutIn = function (a) {
a = 2 * a - 1;
return .5 * (a * (a *= a) * a + 1)
};
Nb.expoIn = function (a) {
return 0 ==
a ? 0 : Math.exp(6.931471805599453 * (a - 1))
};
Nb.expoOut = function (a) {
return 1 == a ? 1 : 1 - Math.exp(-6.931471805599453 * a)
};
Nb.expoInOut = function (a) {
return 0 == a ? 0 : 1 == a ? 1 : 1 > (a *= 2) ? .5 * Math.exp(6.931471805599453 * (a - 1)) : .5 * (2 - Math.exp(-6.931471805599453 * (a - 1)))
};
Nb.expoOutIn = function (a) {
return .5 > a ? .5 * (1 - Math.exp(-13.862943611198906 * a)) : .5 == a ? .5 : .5 * (Math.exp(13.862943611198906 * (a - 1)) + 1)
};
Nb.circIn = function (a) {
return -1 > a || 1 < a ? 0 : 1 - Math.sqrt(1 - a * a)
};
Nb.circOut = function (a) {
return 0 > a || 2 < a ? 0 : Math.sqrt(a * (2 - a))
};
Nb.circInOut =
function (a) {
return -.5 > a || 1.5 < a ? .5 : 1 > (a *= 2) ? -.5 * (Math.sqrt(1 - a * a) - 1) : .5 * (Math.sqrt(1 - (a -= 2) * a) + 1)
};
Nb.circOutIn = function (a) {
if (0 > a) return 0;
if (1 < a) return 1;
if (.5 > a) return a = 2 * a - 1, .5 * Math.sqrt(1 - a * a);
a = 2 * a - 1;
return -.5 * (Math.sqrt(1 - a * a) - 1 - 1)
};
Nb.bounceIn = function (a) {
a = 1 - a;
return .36363636363636365 > a ? 1 - 7.5625 * a * a : .7272727272727273 > a ? 1 - (7.5625 * (a -= .5454545454545454) * a + .75) : .9090909090909091 > a ? 1 - (7.5625 * (a -= .8181818181818182) * a + .9375) : 1 - (7.5625 * (a -= .9545454545454546) * a + .984375)
};
Nb.bounceOut = function (a) {
return .36363636363636365 >
a ? 7.5625 * a * a : .7272727272727273 > a ? 7.5625 * (a -= .5454545454545454) * a + .75 : .9090909090909091 > a ? 7.5625 * (a -= .8181818181818182) * a + .9375 : 7.5625 * (a -= .9545454545454546) * a + .984375
};
Nb.bounceInOut = function (a) {
if (.5 > a) return a = 1 - 2 * a, .36363636363636365 > a ? .5 * (1 - 7.5625 * a * a) : .7272727272727273 > a ? .5 * (1 - (7.5625 * (a -= .5454545454545454) * a + .75)) : .9090909090909091 > a ? .5 * (1 - (7.5625 * (a -= .8181818181818182) * a + .9375)) : .5 * (1 - (7.5625 * (a -= .9545454545454546) * a + .984375));
a = 2 * a - 1;
return .36363636363636365 > a ? 7.5625 * a * a * .5 + .5 : .7272727272727273 >
a ? .5 * (7.5625 * (a -= .5454545454545454) * a + .75) + .5 : .9090909090909091 > a ? .5 * (7.5625 * (a -= .8181818181818182) * a + .9375) + .5 : .5 * (7.5625 * (a -= .9545454545454546) * a + .984375) + .5
};
Nb.bounceOutIn = function (a) {
if (.5 > a) return .36363636363636365 > (a *= 2) ? 3.78125 * a * a : .7272727272727273 > a ? .5 * (7.5625 * (a -= .5454545454545454) * a + .75) : .9090909090909091 > a ? .5 * (7.5625 * (a -= .8181818181818182) * a + .9375) : .5 * (7.5625 * (a -= .9545454545454546) * a + .984375);
a = 1 - (2 * a - 1);
return .36363636363636365 > a ? .5 - 3.78125 * a * a + .5 : .7272727272727273 > a ? .5 - .5 * (7.5625 * (a -=
.5454545454545454) * a + .75) + .5 : .9090909090909091 > a ? .5 - .5 * (7.5625 * (a -= .8181818181818182) * a + .9375) + .5 : .5 - .5 * (7.5625 * (a -= .9545454545454546) * a + .984375) + .5
};
Nb.backIn = function (a) {
return 0 == a ? 0 : 1 == a ? 1 : a * a * (2.70158 * a - 1.70158)
};
Nb.backOut = function (a) {
return 0 == a ? 0 : 1 == a ? 1 : --a * a * (2.70158 * a + 1.70158) + 1
};
Nb.backInOut = function (a) {
return 0 == a ? 0 : 1 == a ? 1 : 1 > (a *= 2) ? .5 * a * a * (3.5949095 * a - 2.5949095) : .5 * ((a -= 2) * a * (3.5949095 * a + 2.5949095) + 2)
};
Nb.backOutIn = function (a) {
if (0 == a) return 0;
if (1 == a) return 1;
if (.5 > a) return a = 2 * a - 1, .5 *
(a * a * (2.70158 * a + 1.70158) + 1);
a = 2 * a - 1;
return .5 * a * a * (2.70158 * a - 1.70158) + .5
};
Nb.elasticIn = function (a) {
return 0 == a ? 0 : 1 == a ? 1 : -(Math.exp(6.931471805599453 * --a) * Math.sin(6.283185307179586 * (.001 * a - 7.5E-5) / 3E-4))
};
Nb.elasticOut = function (a) {
return 0 == a ? 0 : 1 == a ? 1 : Math.exp(-6.931471805599453 * a) * Math.sin(6.283185307179586 * (.001 * a - 7.5E-5) / 3E-4) + 1
};
Nb.elasticInOut = function (a) {
return 0 == a ? 0 : 1 == a ? 1 : 1 > (a *= 2) ? -.5 * Math.exp(6.931471805599453 * --a) * Math.sin(6.283185307179586 * (.001 * a - 7.5E-5) / 3E-4) : Math.exp(-6.931471805599453 *
--a) * Math.sin(6.283185307179586 * (.001 * a - 7.5E-5) / 3E-4) * .5 + 1
};
Nb.elasticOutIn = function (a) {
if (.5 > a) return 0 == (a *= 2) ? 0 : .5 * Math.exp(-6.931471805599453 * a) * Math.sin(6.283185307179586 * (.001 * a - 7.5E-5) / 3E-4) + .5;
if (.5 == a) return .5;
if (1 == a) return 1;
a = 2 * a - 1;
return -(.5 * Math.exp(6.931471805599453 * --a) * Math.sin(6.283185307179586 * (.001 * a - 7.5E-5) / 3E-4)) + .5
};
Nb.warpOut = function (a) {
return 0 >= a ? 0 : 1
};
Nb.warpIn = function (a) {
return 1 > a ? 0 : 1
};
Nb.warpInOut = function (a) {
return .5 > a ? 0 : 1
};
Nb.warpOutIn = function (a) {
return 0 >= a ? 0 : 1 >
a ? .5 : 1
};
var Hc = function () {
};
k["tweenxcore.FloatTools"] = Hc;
Hc.__name__ = "tweenxcore.FloatTools";
Hc.revert = function (a) {
return 1 - a
};
Hc.clamp = function (a, b, c) {
null == c && (c = 1);
null == b && (b = 0);
return a <= b ? b : c <= a ? c : a
};
Hc.lerp = function (a, b, c) {
return b * (1 - a) + c * a
};
Hc.inverseLerp = function (a, b, c) {
return (a - b) / (c - b)
};
Hc.repeat = function (a, b, c) {
null == c && (c = 1);
null == b && (b = 0);
a = (a - b) / (c - b);
return a - Math.floor(a)
};
Hc.shake = function (a, b, c) {
null == b && (b = 0);
null == c && (c = Math.random);
c = c();
return b + (-a * (1 - c) + a * c)
};
Hc.spread =
function (a, b) {
return -b * (1 - a) + b * a
};
Hc.sinByRate = function (a) {
return Math.sin(2 * a * Math.PI)
};
Hc.cosByRate = function (a) {
return Math.cos(2 * a * Math.PI)
};
Hc.yoyo = function (a, b) {
return b(2 * (.5 > a ? a : 1 - a))
};
Hc.zigzag = function (a, b) {
return .5 > a ? b(2 * a) : 1 - b(2 * (a - .5))
};
Hc.mixEasing = function (a, b, c, d) {
null == d && (d = .5);
return b(a) * (1 - d) + c(a) * d
};
Hc.crossfadeEasing = function (a, b, c, d, e, f) {
null == f && (f = 1);
null == e && (e = 0);
d = d(a);
e = e * (1 - d) + f * d;
return b(a) * (1 - e) + c(a) * e
};
Hc.connectEasing = function (a, b, c, d, e) {
null == e && (e = .5);
null == d &&
(d = .5);
if (a < d) return a = b(a / d), 0 * (1 - a) + e * a;
a = c((a - d) / (1 - d));
return e * (1 - a) + a
};
Hc.oneTwoEasing = function (a, b, c, d) {
null == d && (d = .5);
return a < d ? b(a / d) : c((a - d) / (1 - d))
};
Hc.binarySearch = function (a, b, c) {
null == c && (c = 0);
var d = 0, e = a.length;
if (0 == c) for (; ;) {
c = ((e - d) / 2 | 0) + d;
var f = a[c];
f <= b ? d = c + 1 : e = c;
if (d == e) break
} else for (; c = ((e - d) / 2 | 0) + d, f = a[c], f < b ? d = c + 1 : e = c, d != e;) ;
return d
};
Hc.polyline = function (a, b) {
if (2 > b.length) throw I.thrown("points length must be more than 2");
var c = b.length - 1;
a *= c;
var d = 0;
--c;
null == c && (c =
1);
null == d && (d = 0);
c = Math.floor(a <= d ? d : c <= a ? c : a);
a -= c;
return b[c] * (1 - a) + b[c + 1] * a
};
Hc.bezier2 = function (a, b, c, d) {
return (b * (1 - a) + c * a) * (1 - a) + (c * (1 - a) + d * a) * a
};
Hc.bezier3 = function (a, b, c, d, e) {
var f = c * (1 - a) + d * a;
return ((b * (1 - a) + c * a) * (1 - a) + f * a) * (1 - a) + (f * (1 - a) + (d * (1 - a) + e * a) * a) * a
};
Hc.bezier = function (a, b) {
if (2 > b.length) throw I.thrown("points length must be more than 2");
if (2 == b.length) return b[0] * (1 - a) + b[1] * a;
if (3 == b.length) {
var c = b[1];
return (b[0] * (1 - a) + c * a) * (1 - a) + (c * (1 - a) + b[2] * a) * a
}
return Hc._bezier(a, b)
};
Hc._bezier =
function (a, b) {
if (4 == b.length) {
var c = b[1], d = b[2], e = c * (1 - a) + d * a;
return ((b[0] * (1 - a) + c * a) * (1 - a) + e * a) * (1 - a) + (e * (1 - a) + (d * (1 - a) + b[3] * a) * a) * a
}
c = [];
d = 0;
for (e = b.length - 1; d < e;) {
var f = d++;
c.push(b[f] * (1 - a) + b[f + 1] * a)
}
return Hc._bezier(a, c)
};
Hc.uniformQuadraticBSpline = function (a, b) {
if (2 > b.length) throw I.thrown("points length must be more than 2");
if (2 == b.length) return b[0] * (1 - a) + b[1] * a;
var c = b.length - 2;
a *= c;
var d = 0;
--c;
null == c && (c = 1);
null == d && (d = 0);
c = Math.floor(a <= d ? d : c <= a ? c : a);
a -= c;
d = b[c];
var e = b[c + 1];
return a *
a * (d / 2 - e + b[c + 2] / 2) + a * (-d + e) + d / 2 + e / 2
};
Hc.frameToSecond = function (a, b) {
return a / b
};
Hc.secondToFrame = function (a, b) {
return a * b
};
Hc.degreeToRate = function (a) {
return a / 360
};
Hc.rateToDegree = function (a) {
return 360 * a
};
Hc.radianToRate = function (a) {
return a / (2 * Math.PI)
};
Hc.rateToRadian = function (a) {
return 2 * a * Math.PI
};
Hc.millisecondToBeat = function (a, b) {
return a * b / 6E4
};
Hc.beatToMillisecond = function (a, b) {
return 6E4 * a / b
};
var ok = function () {
};
k["tweenxcore.PointTools"] = ok;
ok.__name__ = "tweenxcore.PointTools";
ok.polyline =
function (a, b, c) {
var d = [], e = [];
for (c = H(c); c.hasNext();) {
var f = c.next();
d.push(f.x);
e.push(f.y)
}
if (2 > d.length) throw I.thrown("points length must be more than 2");
var h = d.length - 1;
c = b * h;
f = 0;
--h;
null == h && (h = 1);
null == f && (f = 0);
f = Math.floor(c <= f ? f : h <= c ? h : c);
c -= f;
d = d[f] * (1 - c) + d[f + 1] * c;
a.x = d;
if (2 > e.length) throw I.thrown("points length must be more than 2");
h = e.length - 1;
c = b * h;
f = 0;
--h;
null == h && (h = 1);
null == f && (f = 0);
f = Math.floor(c <= f ? f : h <= c ? h : c);
c -= f;
d = e[f] * (1 - c) + e[f + 1] * c;
a.y = d
};
ok.bezier2 = function (a, b, c, d, e) {
e =
d.x;
a.x = (c.x * (1 - b) + e * b) * (1 - b) + (e * (1 - b) + c.x * b) * b;
e = d.y;
a.y = (c.y * (1 - b) + e * b) * (1 - b) + (e * (1 - b) + c.y * b) * b
};
ok.bezier3 = function (a, b, c, d, e, f) {
f = d.x;
var g = e.x, h = f * (1 - b) + g * b;
a.x = ((c.x * (1 - b) + f * b) * (1 - b) + h * b) * (1 - b) + (h * (1 - b) + (g * (1 - b) + c.x * b) * b) * b;
f = d.y;
g = e.y;
h = f * (1 - b) + g * b;
a.y = ((c.y * (1 - b) + f * b) * (1 - b) + h * b) * (1 - b) + (h * (1 - b) + (g * (1 - b) + c.y * b) * b) * b
};
ok.bezier = function (a, b, c) {
var d = [], e = [];
for (c = H(c); c.hasNext();) {
var f = c.next();
d.push(f.x);
e.push(f.y)
}
if (2 > d.length) throw I.thrown("points length must be more than 2");
2 == d.length ?
d = d[0] * (1 - b) + d[1] * b : 3 == d.length ? (c = d[1], d = (d[0] * (1 - b) + c * b) * (1 - b) + (c * (1 - b) + d[2] * b) * b) : d = Hc._bezier(b, d);
a.x = d;
if (2 > e.length) throw I.thrown("points length must be more than 2");
2 == e.length ? d = e[0] * (1 - b) + e[1] * b : 3 == e.length ? (c = e[1], d = (e[0] * (1 - b) + c * b) * (1 - b) + (c * (1 - b) + e[2] * b) * b) : d = Hc._bezier(b, e);
a.y = d
};
ok.uniformQuadraticBSpline = function (a, b, c) {
for (var d = [], e = [], f = H(c); f.hasNext();) c = f.next(), d.push(c.x), e.push(c.y);
if (2 > d.length) throw I.thrown("points length must be more than 2");
if (2 == d.length) d = d[0] *
(1 - b) + d[1] * b; else {
var h = d.length - 2;
c = b * h;
f = 0;
--h;
null == h && (h = 1);
null == f && (f = 0);
f = Math.floor(c <= f ? f : h <= c ? h : c);
h = c - f;
var l = d[f];
c = d[f + 1];
d = d[f + 2];
d = h * h * (l / 2 - c + d / 2) + h * (-l + c) + l / 2 + c / 2
}
a.x = d;
if (2 > e.length) throw I.thrown("points length must be more than 2");
2 == e.length ? d = e[0] * (1 - b) + e[1] * b : (h = e.length - 2, c = b * h, f = 0, --h, null == h && (h = 1), null == f && (f = 0), f = Math.floor(c <= f ? f : h <= c ? h : c), h = c - f, l = e[f], c = e[f + 1], d = e[f + 2], d = h * h * (l / 2 - c + d / 2) + h * (-l + c) + l / 2 + c / 2);
a.y = d
};
var Yr = function () {
};
k["tweenxcore.MatrixTools"] = Yr;
Yr.__name__ =
"tweenxcore.MatrixTools";
Yr.createSimilarityTransform = function (a, b, c, d, e) {
d -= b;
var f = e - c;
e = Math.atan2(f, d);
d = Math.sqrt(d * d + f * f);
a.a = d * Math.cos(e);
a.b = d * Math.sin(e);
a.c = -d * Math.sin(e);
a.d = d * Math.cos(e);
a.tx = b;
a.ty = c
};
R.$haxeUID |= 0;
"undefined" != typeof performance && "function" == typeof performance.now && (K.now = performance.now.bind(performance));
k.Math = Math;
null == String.fromCodePoint && (String.fromCodePoint = function (a) {
return 65536 > a ? String.fromCharCode(a) : String.fromCharCode((a >> 10) + 55232) + String.fromCharCode((a &
1023) + 56320)
});
String.prototype.__class__ = k.String = String;
String.__name__ = "String";
k.Array = Array;
Array.__name__ = "Array";
Date.prototype.__class__ = k.Date = Date;
Date.__name__ = "Date";
var Ia = {}, os = {}, Ka = Number, La = Boolean, jr = {}, fs = {};
Oc.count = 0;
zh.content = [{
name: "config_game_config_json",
data: "ewoJImFudGlhbGlhcyI6IGZhbHNlLAoJImJ1aWxkQ29uZmlnIjogeyJkZWJ1ZyI6dHJ1ZSwiZXh0cmEiOltdLCJwbGF0Zm9ybSI6Imh0bWw1In0sCgkiZGVidWdEcmF3IjogZmFsc2UsCgkiZGlzcG9zZUltYWdlcyI6IGZhbHNlLAoJImZvcmNlSGlSZXNBc3NldHMiOiB0cnVlLAoJImluaXRTY2VuZUlEIjogMTYsCgkia2V5cyI6IHsKCQkidXAiOiBbIlVQIl0sCgkJImRvd24iOiBbIkRPV04iXSwKCQkibGVmdCI6IFsiTEVGVCJdLAoJCSJyaWdodCI6IFsiUklHSFQiXSwKCQkiYWN0aW9uMSI6IFsiWiJdLAoJCSJhY3Rpb24yIjogWyJYIl0sCgkJImVudGVyIjogWyJFTlRFUiIsIlNQQUNFIl0sCgkJInIiOiBbIlIiXSwKCQkiZXNjIjogWyJFU0NBUEUiXSwKCQkiVyI6IFsiVyJdLAoJCSJBIjogWyJBIl0sCgkJIlMiOiBbIlMiXSwKCQkiRCI6IFsiRCJdLAoJCSJNIjogWyJNIl0KCQkKCX0sCgkicGl4ZWxzbmFwIjogZmFsc2UsCgkicGh5c2ljc01vZGUiOiAiTk9STUFMX1BIWVNJQ1MiLAoJInJlbGVhc2VNb2RlIjogdHJ1ZSwKCSJzaG93Q29uc29sZSI6IGZhbHNlLAoJInN0YWdlV2lkdGgiOiA0MzIsCgkic3RhZ2VIZWlnaHQiOiAyNDMsCgkidG9vbHNldEludGVyZmFjZUhvc3QiOiAibG9jYWxob3N0IiwKCSJ0b29sc2V0SW50ZXJmYWNlUG9ydCI6IC0xLAoJInByb2plY3ROYW1lIjogIkludG9fVGhlX1BpdF9FYXN5TW9kZSIsCgkidXNlR2NpTG9nZ2luZyI6IGZhbHNlLAoJCgkiY29uZmlnLW1vYmlsZSI6IHsKCQkiYWRQb3NpdGlvbkJvdHRvbSI6IHRydWUsCgkJImF1dG9yb3RhdGUiOiBmYWxzZSwKCQkiZ2FtZVNjYWxlIjogMSwKCQkibGFuZHNjYXBlIjogZmFsc2UsCgkJInRlc3RBZHMiOiBmYWxzZSwKCQkidG9vbHNldEludGVyZmFjZUhvc3QiOiAiMTkyLjE2OC4xLjEwMyIsCgoJCSJjb25maWctYW5kcm9pZCI6IHsKCQkJImRpc2FibGVCYWNrQnV0dG9uIjogZmFsc2UsCgkJCSJzY2FsZU1vZGUiOiAiTk9fU0NBTElORyIsCgkJCSJzY2FsZXMiOiBbIjF4IiwiMS41eCIsIjJ4IiwiM3giLCI0eCJdCgkJfSwKCQkKCQkiY29uZmlnLWlvcyI6IHsKCQkJInNjYWxlTW9kZSI6ICJOT19TQ0FMSU5HIiwKCQkJInNjYWxlcyI6IFsiMXgiLCIxLjV4IiwiMngiLCIzeCIsIjR4Il0KCQl9Cgl9LAoJCgkiY29uZmlnLWRlc2t0b3AiOiB7CgkJImdhbWVTY2FsZSI6IDEuMCwKCQkic2NhbGVNb2RlIjogIk5PX1NDQUxJTkciLAoJCSJzY2FsZXMiOiBbIjF4IiwiMS41eCIsIjJ4IiwiM3giLCI0eCJdLAoJCSJzdGFydEluRnVsbFNjcmVlbiI6IGZhbHNlCgl9LAoJCgkiY29uZmlnLXdlYiI6IHsKCQkiZ2FtZVNjYWxlIjogMi4wLAoJCSJzdGFydEluRnVsbFNjcmVlbiI6IGZhbHNlLAoJCSJzY2FsZXMiOiBbIjF4Il0sCgoJCSJjb25maWctZmxhc2giOiB7CgkJCSJzY2FsZU1vZGUiOiAiU0NBTEVfVE9fRklUX0xFVFRFUkJPWCIKCQl9LAoJCQoJCSJjb25maWctaHRtbDUiOiB7CgkJCSJ0b29sc2V0SW50ZXJmYWNlSG9zdCI6ICIxOTIuMTY4LjEuMTAzIgoJCX0KCX0KfQ"
},
{
name: "config_preloadpaths_txt",
data: "YXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yNTctMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yNTktMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3RpbGVzZXQtNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yNjEtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yNjMtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yNjUtMC5wbmcKYXNzZXRzL3NmeC9zb3VuZC0yNjYub2dnCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjY4LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9mb250LTE3LmZudAphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0UvZm9udC0xNy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xOS0yMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xOS0yMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xOS0yNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xOS0yNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xOS0yNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xOS0yNy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xOS0yOC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xOS0yOS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL2ZvbnQtMjAuZm50CmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9mb250LTIwLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTI0LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjgtMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0zNi0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTM4LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDItMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00Mi0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQyLTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDItMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00Mi00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTQ2LTUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNDYtNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS00OC0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTU0LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTQtMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01NC01LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTU0LTYucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTQtNy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS01NC04LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTU0LTkucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTQtMTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNTgtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS02MC0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0UvZm9udC02NS5mbnQKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL2ZvbnQtNjUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9iYWNrZ3JvdW5kLTY2LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNjgtMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS02OC00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTY4LTUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNjgtNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS02OC03LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTY4LTgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNzAtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03MC0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTcwLTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNzAtMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03MC00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTcwLTUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNzAtNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03MC03LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTcwLTgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNzAtOS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03MC0xMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03MC0xMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03NC0xMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03NC0xMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03NC0xNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03NC0xNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03NC0xNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03NC0xNy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03NC0xOC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03NC0xOS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03NC0yMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03NC0yMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03NC0yMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03NC0yMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03NC0yNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03NC0yNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03NC0yNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03NC0yNy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL2JhY2tncm91bmQtNzUtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL2ZvbnQtNzYuZm50CmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9mb250LTc2LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTc4LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtNzgtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS03OC0yLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTgyLTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtODYtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS04Ni0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTg2LTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtODYtMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS04Ni00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTg2LTUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtODYtNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS04Ni03LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTg2LTgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtODYtOS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS04Ni0xMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS04OC0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTg4LTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtODgtMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS04OC00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTkwLTUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtOTAtNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS05MC03LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTkyLTE2LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTkyLTExLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTkyLTEyLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTkyLTEzLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTkyLTE0LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTkyLTE1LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTk2LTUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtOTYtNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS05Ni03LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTk2LTgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtOTYtOS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS05OC0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTk4LTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtOTgtMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDAtMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDAtMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDAtNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDItMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDItMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDQtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDQtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDQtMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDQtMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDQtNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDQtNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDQtNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDQtNy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDYtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDgtOC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDgtOS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDgtMTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTA4LTExLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTEwOC0xMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDgtMTMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTA4LTE0LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTEwOC0xNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDgtMTYucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTA4LTE3LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTEwOC0xOC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDgtMTkucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTA4LTIwLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTEwOC0yMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xMDgtMjIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9iYWNrZ3JvdW5kLTEwOS0wLnBuZwphc3NldHMvc2Z4L3NvdW5kLTExMC5vZ2cKYXNzZXRzL3NmeC9zb3VuZC0xMTIub2dnCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS8xMTMuU09VTkRfRVhUCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTI5LTMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTI5LTQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTI5LTEwLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTEzMy0wLnBuZwphc3NldHMvc2Z4L3NvdW5kLTEzNC5vZ2cKYXNzZXRzL3NmeC9zb3VuZC0xMzUub2dnCmFzc2V0cy9zZngvc291bmQtMTM2Lm9nZwphc3NldHMvc2Z4L3NvdW5kLTEzNy5vZ2cKYXNzZXRzL3NmeC9zb3VuZC0xMzgub2dnCmFzc2V0cy9zZngvc291bmQtMTM5Lm9nZwphc3NldHMvc2Z4L3NvdW5kLTE0MC5vZ2cKYXNzZXRzL3NmeC9zb3VuZC0xNDEub2dnCmFzc2V0cy9zZngvc291bmQtMTQyLm9nZwphc3NldHMvc2Z4L3NvdW5kLTE0My5vZ2cKYXNzZXRzL3NmeC9zb3VuZC0xNDQub2dnCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9mb250LTE0NS5mbnQKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL2ZvbnQtMTQ1LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE0Ny0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE0Ny0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1MS0xNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNTEtMTcucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTUxLTEyLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1MS0xMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNTEtMTQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTUxLTE1LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1My0xNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNTMtMTcucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTUzLTE4LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1My0xOS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNTMtMjAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTUzLTIxLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1My0yMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNTMtMjMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTUzLTI0LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1My0yNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xNTMtMTQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTUzLTE1LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1NS0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1NS0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1NS0yLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1NS0zLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1NS00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1Ny0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1Ny0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1Ny0yLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1Ny0zLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1Ny00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1Ny01LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1Ny02LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1OS0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1OS0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1OS0yLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1OS0zLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1OS00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1OS01LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1OS02LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1OS03LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1OS04LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE1OS05LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0UvdGlsZXNldC0xNjAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTYyLTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTYyLTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTY0LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTY0LTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTY0LTMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTY0LTQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTY0LTUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTY0LTYucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTY2LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTY4LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTY4LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9mb250LTE2OS5mbnQKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL2ZvbnQtMTY5LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE3MS0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE3MS0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0UvZm9udC0xNzIuZm50CmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9mb250LTE3Mi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL2ZvbnQtMTczLmZudAphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0UvZm9udC0xNzMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTc1LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTc1LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTc1LTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTc3LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTc3LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTc3LTIucG5nCmFzc2V0cy9zZngvc291bmQtMTc4Lm9nZwphc3NldHMvc2Z4L3NvdW5kLTE3OS5vZ2cKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODEtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODMtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODMtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODMtMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODMtMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODMtNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODMtNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODMtNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODMtNy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODMtOC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODMtOS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODMtMTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTgzLTExLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE4My0xMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODUtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODUtMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODctMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODktMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODktNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xODktNS5wbmcKYXNzZXRzL3NmeC9zb3VuZC0xOTAub2dnCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTkyLTgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTkyLTkucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTkyLTEwLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE5Mi0xMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0xOTItMTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMTkyLTEzLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE5NC0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE5Ni0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE5Ni0yLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE5OC0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE5OC0xLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE5OC0yLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE5OC0zLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE5OC00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE5OC01LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE5OC02LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE5OC03LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE5OC04LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTE5OC05LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwMC05LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwMC0xMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMDAtMTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjAwLTEyLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwMC0xMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMDAtMTQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjAyLTQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjAyLTUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjAyLTYucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjAyLTcucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjAyLTgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjAyLTkucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA0LTE3LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwNC0xOC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMDQtMTkucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA0LTIwLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwNC0yMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMDQtMjIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA0LTIzLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwNC0yNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMDQtMjUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA0LTI2LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwNC0yNy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMDQtMjgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA2LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA2LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA2LTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTYucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTcucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTkucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTEwLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwOC0xMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMDgtMTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTEzLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwOC0xNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMDgtMTUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTE2LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwOC0xNy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMDgtMTgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTE5LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwOC0yMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMDgtMjEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTIyLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwOC0yMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMDgtMjQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTI1LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwOC0yNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMDgtMjcucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTI4LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwOC0yOS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMDgtMzAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTMxLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwOC0zMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMDgtMzMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjA4LTM0LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIwOC0zNS5wbmcKYXNzZXRzL3NmeC9zb3VuZC0yMDkub2dnCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjExLTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjExLTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjExLTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjExLTMucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjExLTQucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjExLTUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjExLTYucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjExLTcucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjExLTgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjExLTkucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjExLTEwLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIxMS0xMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMTEtMTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjExLTEzLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIxMS0xNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMTEtMTUucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjExLTE2LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIxMS0xNy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMTEtMTgucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjExLTE5LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIxMS0yMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL2ZvbnQtMjEyLmZudAphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0UvZm9udC0yMTIucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjE2LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9mb250LTIxNy5mbnQKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL2ZvbnQtMjE3LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIxOS00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIxOS01LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIxOS02LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIxOS03LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTIyMS0xMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMjctMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMjktMS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMjktMi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMjktMy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMjktNC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMjktNS5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMjktNi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMjktNy5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMjktOC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMzEtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMzMtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yMzUtMC5wbmcKYXNzZXRzL3NmeC9zb3VuZC0yNDAub2dnCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQyLTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQyLTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ2LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ4LTAucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9zcHJpdGUtMjQ4LTEucG5nCmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9iYWNrZ3JvdW5kLTI0OS0wLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTI1MS0zLnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTI1MS00LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0Uvc3ByaXRlLTI1MS01LnBuZwphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0UvZm9udC0yNTIuZm50CmFzc2V0cy9ncmFwaGljcy9JTUdfQkFTRS9mb250LTI1Mi5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL3Nwcml0ZS0yNTQtMC5wbmcKYXNzZXRzL2dyYXBoaWNzL0lNR19CQVNFL2ZvbnQtMjU1LmZudAphc3NldHMvZ3JhcGhpY3MvSU1HX0JBU0UvZm9udC0yNTUucG5nCg"
},
{
name: "config_preloader_bg_txt",
data: "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQTJBQUFBSG1DQU1BQUFBaU9oMTZBQUFEQUZCTVZFVUFBQUJTYW5XUHBMR09vN0NEbWFYKwpONU1BQUFCUFpuTmxaV1dRcGJLTm9xK0xvSzJNb2E2S242eUJsNlFtSEIxNVBpYUlucXFFbXFlR25LaVJwck9IbmFsblptVUdCQWZwCmhUK0puNnQ4a1oyUW9xK0JscU1YRngzamdUMExDQXFEUkNsK1FDZlBwSTVKTml3ZEhpSnVUVk10SVNBUkVoWnBTMVoxT2lRVERRc2IKRXhBdEtUZENNU2s3TENkeE5pTWhHaW8xSlNMS240eDJTazJSVFN4MlB5M2NmVHlqckttS1NDb3hLaWllVlM3N2tTR1lVUzFPT1MxLwpsS0ZzWjJPa1dqSk5ZM0EvSFJOcVJWQ0VUMENVcWJiRG1vbDlUVVYzVUZPSW1hSlJaM1NzWFRKcU1oOUtZVzdNY2ppOWxZWi9TVFp2ClVscXFnWGQzVlZyVmVEcTNqNExFYmppOGFEVnpSamR4ZUgxbmFHbXpZelNLYTJ4c2IzRnZjM2R5YkdWS0pCZDhRekZwYTIyWnA2NDcKUEVWK2paV0VrNXVFWVdPTG9LK0lUVFltRkF0OFcxNTFpcGFZcmJxamVXK1hkWEdXYldoM2ZZSjZiVjk5aDQyVVZEbFVQaTlUS3htTQpuYWR1VGtSNGdvbGNSVEl5R3hDMGgzclZuNGMwTXpxdHJLSldabkNFVlZGdGdvNkhnWUZoWm1pc2lJQkdYV3J6aWl6djViQ05kWFplCmRJQkdSMHBhWld4ZE5CeG1lNGp4aWtKVWEzanIycUNFZVdpUm5KMlVvYWRRVUZLL2pIdXVhMFdSWVVQT21ZUmFWMW1RWWw2bWZWR2UKZjN1NlhDajdrVVNpWkVUSGtuL2JxNUZrU3pTUGtJMm9sblJnWG1CRk5qZGZKUlpiYm5rdkdUZXhiRmo3OXBPZG5aZGRQMGFxb1pWaApTVkdxVVNadlhXUHJmQ2VYUXlQTGFDeStja044ZEhVK0hrV1RmMmVKUGlMYmRTMVNQRDZIYlZmUGR6enAwRnFYaUlXWmluQzdxb2o5CithMzM3M24rL01yRXZhSGt0cG55N0wveDRXai8vL3g3Wkdxc2kxKzVuV3ltbFlySnM0YmV6cCsyYUQ1eVozQjBXVFRWd283R3JYSEoKbVV0bWFIeXpoVXJrem8yWGRVN2F3RjRtVDJ0TElGai8vdVZXSzBoa09Tc1dMRHZldFZCZ0syZk5xbGtoUUZYTFZpQzlrRkJPV1dHKwpmR2ZVdkg1L283YlRwVXNwWW9KM2xxNStTU09hdjlLNTF0eUdqckJhYWF5SXA4bUNSMldRdkx3NWxNSnpOWU1xZDUvVTdmSmppSnRRClNJSFJmRTJkUUk1Z3E4T3NkTWdxQUFBQUFuUlNUbE1BRUdzazNWd0FBSUFBU1VSQlZIaGU3RjBKWUJUbDJYNW5kblpucjJ4dWNoQUMKNUlBRVFnZzNoSnNRUU1CU2cyakZHMjJ0MXRhL2h5MjJ0TlJXcTlhcnJiVnF2YTNpQ2RSV0JZRWdSN2lQUUVJdVFnNGdDYm1QdldldgorYi8zbTcyeUJBZ1ViTjNzayt3eHM3T2JuZXc4Kzd6djg3M2ZPNHdTUWdnaGhHc0ZObkJGQ0NHRWNQVVFJbGdJSVZ4RGhBZ1dRZ2pYCkVDR0NoUkRDTlVTSVlDR0VjQTBSSWxnSUlWeERoQWdXUWdqWEVDR0NoUkRDTlVTSVlDR0VjQTBSSWxnSUlWeERoQWdXUWdqWEVDR0MKaFJEQ05VU0lZQ0dFY0EwUklsZ0lJVnhEaEFnV1FnalhFQ0dDaFJEQ05VU0lZQ0dFY0EwUklsZ0lJVnhEaEFnV1FnalhFRnpnaWhDKwpHVmdEbm00cVJuTFJndlV4LzBkRCtGOUJpR0RmUUt4UkdzRnhFQW9oRDJBQjdOd0w4TlNXd2tlMGF3SzNDK0cvRHliVVZlcWJoaldPCmc0UmFoWUdyQVI0UHFkai9Ia0lFKzRhQjB1c0N5THZ6enNCVklmeVhFU0xZTnd1ckwwd3Z4RHNoaHYyUFFSWkt3cjVCV0pNTDd3U3UKODBmdTRFR2xnZXRDK0s4aXBHQ1hnd0xPVHE2NWp3UFhmMDFZbzkxeVVmMGl5SXZZRUxncWhQOG1RZ0xXYitnV0RlNkkvQ3U1bzd4ZAoyS3dQZlBScndCckhMd0pYblFmTG5GRWhwK04vQ1NHQzlSTUZZdGkvV3hpUjE1aWdhK005M3hhMVBlc0NON25HS0hBOEVianFmT3hkClpndGNGY0ovRTZFUXNWOG9FTHNQZGZLZUpRR2lUTnlNSk92WEd5cSsvZkxld0ZWOUlXVFcvMDhoWkhMMEJ5dlV1ZzEyMzMrS0k2bVkKcGV0WTdKSWhGWDRiWFdNODlzT3pnYXY2eEJUMTlzQlZJZnozRUZLd1M2Tmc2R3RZamhRSWpVbjRjZHRIZ1d1dkZkWm9MNTJBVWVUTgo2MHZDVmpBZ092MzhqeFdNUGI0WnVDLy9HN25rZ0VKSXdDNkptMklQaTRIckVDYU43Vyt5bTc0bWhoVW9QdzFjZFFFVUxqanZPMU9YCnAyMDR2S3BreU8weDFnNTh2eXN0aWVYWjczWnF6TE9YQ1YvVCt4K3dDQ25ZcGJCaW85bWJmQVZDWXhGV2ZqMUg2SnJDZmlWZ0ZJOEgKRkNXdWxFVTlyYlR5R3VpTTRyT1RyUEs0amczUUZXa2lqOWpnWit6ei9wdXVVWmFQNmtzQVE3aFNoQlRzRXZqeHk2NG9QQmI3aEVuagoyclRpYTdFNmxLckFOUmVHWHp5ckl5SGd5c2lYUkY3a29ST2dDN3FZV2ZDMkFrQkI5MGtodkJENVl4L0QxamdjMnhkc3Nhem1RaFM3CmFnZ1I3S0xRL2ZEbGlZVjlCb2dTVE5DcFd2azErUFZydGhmbUZVS3VaM0V2NU1HRmg1ejlQbE5Nc1NKZmxuYUFGeGllRmNVdmVZWDMKWVp1YTZYN2FvOEZySEw4bjErUmxWWmJIUW9YNVZ3c2hGN0UzMXN3aTJPVmR2T245YzAwWC93ODU2a2ZWQzRFcnJ6cnVPWjdPcHFiTwpibFZJU0wydGtZMDdtMWNYdUprRVI0UC8wb29Qc2ZvRTRXVGtBS3hENW50TUlXZmxNRTU2L3dXNVAzV3ZyUnVTbCtYN0Y0VHdIK0hpClI4L0F3aHBRR2gxUFBBS3dtZ01hSkJVTS9mVWJGOHkvM09CTkcvTTM5bDVGdnY2dmRvejFyZ3ljZHpZYUo3VnVnQUtBUVZxSDA2SmQKdSsvOFNTdDVRRFhJRDdwQkJWNkY1WUYxZ1o4ZTJ3YlpRTlJWTGNVTjFxVGY0VjIvZDFrb003OWFDSmtjYnVBa3hnaDNxVjllNFNPWQpocXhVYit3TTJLb1BDSGxjakY4YVZqQ2V2RTYzOXVoVkxRbGNvM1U5STFqVTR5QURseW9CaWlMUzV5dC92WGJmRmpmRjNEY0w4TW80CiswblA4d2gwZHg4dGN0KzFxUmpPNGJSNnZ6STBabzBUR0RGcndrdGtYN043alFJOFBpUlVsbjkxRUZJd2lqWEs3WDdmL0lYd1JPNXEKN1ZHdVNoQXVKV0JFRmdyNTI0SEtGdXJXbXZTMzZldjgvaXFXQks1SStwdCsydWlNU2lnRzVJb0dZTnlNREdoN1grTndydDFLcVlYQwpCUXVtN2R2eUZNQVc3VTcvSnk5NnhwZHlpV0ZXVHVTOSsyUWllZ1k5NGFjbWtmc0xmZnFGMkRtaDEySUlWNHlRZ2lIT244V1lKNE9oCnIyc3VhQi8yZ2dZV1p4dmhJRXdHTFJoeEFqOUE3akpIZjMyQ044Qm9OMWNsYm9VT0Z4WmhxY2txTXdubWdJM09oNmFSNnNqTmZOUlIKUXE0aUFWZDZRQlkwNHpMZzNWOWI5em5kNGpXdGFIN3R5eXJRMm01SlB1WW5uejkrNTV6bmVUWTF4emxzRnJ5THF6U2Q0UXk2SVBFMwp2M2orTkRNcTRTSDg1d2dSak1yWGVibU1KYitKZWI5Ly9BSzRkLzFJVUJWaW9PWXo5eTU5aEw1aDdDRzhhaFBDVE5hdXdNZThTRkNxCnZ0VTA4dlozenF6dkRueEk0SW1PclIrWi95aCtIVXdybXZwQ1RnWkdqNUR4Zm9HQjhWTHNwblBGbnQyd3FaVXUxc3hZZUFGRXdqQk4KVjVRVFhVYjFkOCtOWXZjWjkvWks2SjR5WHVydGg5QXZoQWhHNU91OEtuWENMMlZkWmVHbDQwTUpNeURmOFdqQXVvc1M3STJ1NHNSMQpBbnNSWWdVaVFYNGZ3Lzd6aUt2WFNxVFkyOExhSXBpeGI5SlRxNkJTb3BKbUhNQXdwOGZaV0xFSmZBUlRBTXZwR1JmckVrUmUwNmxSCjlCREJOT3ZVaXhYSk8yYUFONkZENU0zcnJ3S0hjRkVNZUlLdGNVU2NWK1NYVjdpVzI1cnhZbi81aFJJMndSaFlhZkhydmduMkYzdHgKV1p1aTQzeHFSWUpTQXd3QWV1eHhHb2tWTFhEclR0RjB6ck9GNHU2NG1HM3YrcDVDb0xsbFk3cDIycVBSeThGZmJ6V20yeDBlaHMwOQo1SGtBaDhGQVpoVkJaTUFGTENQWFkwQnExakcycVhENDF1Uk4rZjRVZXdSQUc2cnArTTh4MEFsVzBCMFlIU0xXcW45NXo0ditPYzhsCk1LUG8wVUFKZTJwMTcyWEVYM29NNjg3alZxUlNDdzF4R3Fkb2hzU3BBUExlanhMWU4yaGt0VWxHU2U2SWtzblcrSTk4YTI0UkV4OTEKM2g4b3Q4S1B6MkdVdUFhVVZjclhRY0NRVUZETEdiMk9VUmpRcVdlMU5wSEVoNVJnZkk4MUx3UGVWLzdra2JYN3R2aS95RVZWT0lSKwpZYUM3aU10NnUyY1VlVE8ySHIvbnRiNzUxYmZ2VVh5dk5lQWZtZXZvdlV6SjliaEhpeVFrYUppR09LVm9qb0xGdnBYdVVXRzUzY3UwCjdHeHlWUUc3dXptYjJIRU9mcFh3Nk9uWFBZOEJkRllXL3pKNitmdSt5V29TK0plVzQ4akQzc0sxUTlvRXBSSkVnVmN6bkJOQUpBckcKa3MvZGh1RWhJTDlrQnBFdktpVFI1aWFuY3N2YXJYNUsvTVFqYXlTR0ZTaXBIcTYwREFOck15Zi9Ha3BYZ2dZRFhNRldabjhhR05xaApJZGZFbkhmRVhoejNIcGRCcnhmcWJSSThXN3hEY2NwdkdTS2pHVHVoVmlKZGFDSVhlbStxNTJFNUlMOThISU5NOTIzRnBzNXpNUHplClI1M2VSMENJR2dkZUg4T0hlN2xvV2grOHdMbmwvamNVU2lOb3dVRkhtVVdrdnRJbDB2aVFCb2dtdXF1WTBGVlcvR2ozTkQrS25kNUoKaDhOdTRrSG5hdjk0SmZjK2I0cnFmckJrU0hUTFo2RjVMdjNEd0M2VldoTzJxNCthb051VTNaWGxsOFV2VUI5OG9MSEd0NWo3L2NPdgplTzYvTVN2bjVQWURQZDRoNjhqSVdDRXBnckVrZE5yQlFBRnVma0ZERXIyUnUyU1VXNzZhcGt5b2FHK1BKWGRlRExmR2RqTE5TY2hKCk56aDdjbkhuK1ovaStJODNEOEVabWpWMzNQdUV3czZDd3VVZzdHSXdabEVyRkRaR1Q2TlJ3aStGUmZvN0hGU1hKTTg4bUJxWHpOTTkKeWF1RDNDK2k2ZVROa1RIdmxPeHVYYVg2VU8yMFc2d3ExNFpEVGVPV0RDdjMvYkVRTG9pQlRiQlorOC9Qd1BMdVNIMWt6SWVYeHk5SQpIakpzc04vNDdsMi85VXgxZmpibjZlM2JURmIzRXBKckJDdVRpM2E3MmlxM2c5cFRKaGhHTGxPVEtMOEl2U1IrVVdTMms1L1lpbGdDCmdKSy9DMEtzb2NmcVdsSGtlUnh4eG0reXRSZmpTMzRuVVg2bnFmTE9ZeW9BbDRqMGtnSER1bHcya0NrRXNOdnRtSkpaUE0rbUZJdDkKZFhiOWJUdno2bktWcWFtenEzNzNKM3lnSW4xTXFkMTBvQUtNTm8yZE8zTkdCaE5jNnl0dXl3cTFpTHMwK3Zob2doQllaZGpYR1JLVQpDODRqV0o1czZ6TzN2bmFaL0FMSTRQeVNyanlNdXd0a2NOMzJIWC8wcFYyUkVVNVdLY2EwVW1zQlI1UFZaclAwU0svNEVNbmw0VmRtClJVVW1ob2MwUWl3cGFvT2sxaG1iMDA2eEk5MlBYeGdDZEcyUmxDblB1WGFmcml2Q0FZd0xpM3Baam43azFPL1hNYXhWOEovdHhrTmgKOFMyYnl2TFd3b3g5eG1VMjd2cWRLK2ljNTg4V2FjbGIxZXZVMWs1cDdrNGhMMFM5KzZNYkFvb3dRemdmQXlFSEk4aytMVlRJZzhrQgp6dk5qWEtCRkw0MHdYMTRDQnRUTE8rMDE0UElza01BTmJwKy9kYmUzM0QxU3FXd2VaU1Nra3NnRlpqWHlTM3BNQ2cvZC9QSkx1eXJJCkQ3bWxWNVJlYlVQRHA4TCtxZHZLNE14dzcyWVhBSnFMVzNId094Y2dmOThSbTBVSGVyZjV5TEFjSzVYOE1xeFp4TkpFSko1dmoyZGsKclB2RnIzOS81bVVGZWF1bUgzVktyWDF1cXFlWldiak42V2RoenNucE5Wc3poRDRRL0NIaW1nVzc2dDZoUjNwZFhkSENvYjBtWXN4agp0L2t0QVk2QXJlSU90bDltQWthZ0dMTWhNYzdkbENaUE5udWtnWHZrRCtzUHVJc3ZJcFBrcGhSbmVMZGRUZ0JtVEgzVVpyWGRIUjVLCjhpVmxYK2h1U0xxVDJSN2JIa3RDUXdCTXZhQmsvWkhUc1VQbk5EUTBFQkZ6R2Ztdkx2V3gyY2R2bUp5YVBHY09id000Ti93NEdFMG0KR2JBTVFtUmNMS1BuUWMvTHVCNzYrVHVCWVp3T3owdWVxUnIvbW5iZm1FbnFoSVNFNUk5clppZGpzbFgyclhxVUxrSE5Pd1J2Ym5pUwpuNENsSXlGY0JFR3ZZSUYxR3IzR2RoNzdsZTgrUmQ2TW91SWJYd3RZMlE5b2Jsay8wbU1qTG9CSnJabFB0cmdmU1ZDYTlhTk12ZVpzCm10VlV3U1JJL05wUEJjem5ISHBjUXdtL0hkVEc4aEhleGZxV3VPR0gvQjd1RXhyNFRqSndKREJ1TFRtU0MwVkVwUmplZDdwRlVkbWoKWTF3MnExUUlMREJFd09oWW1Sc3pNaW85dFkrMmVlUGJxQzEvUXlQdUgzbmZrU1pmUVg3VXdwQmxmM0VFdTRLdDJSdlF6SjJmNTZkaAo4d0k2bk9WWlVyblI3M3VjaDh1QVlreEZERkFGeTBzM3JqSi84b0hrbTBjbThEM0pzbkMvWHFDb1gzS3ozQzFmaVdHU3V3RW9ZR2dlCnlsQWRNdHN6QWJWTFFzbmIyMEVqeHZpK0NLZldkSnVlK0tkMzhRS3dUK21vWFc5VUgvMVVualZ1YXcyMm1uTTRPVkZrcEVkRmw0cVYKK0NVNFhVNjFYQ1lRRmZNVHNYMTFuSlNyZ2F4Nm5Qb3czcW1jM0c0aUFhNWNidEN4VnJlSTJlUXpCbitObmV1K2lRaHlmb0VqME1VbwpMSHdIVHc0cDlhMEk3TVpXdUZiSlZGNTJBa1pSY0pxK1dKNWxzZUhuYm1NalFla1VJeU42L3cxSnZId0ptRC9rVWdhR3FaZVVlSDIrCnBPTERRUjJnTkhFUjBDU2xhZ2hsd3JtdDNvVUxva2d6Ymh4VUZrT3haNUNNQnlzcUZWVXgxaVd3WUVWZFpWUXFIRlRqYlNMUk9POU0KbGw3R2h4RTdld0JzdkdtYmtZZ3ZxTHQwZzNwRU91S3U2RFQzMHVZUXprT1FoNGhyOWdZU0RITDM1aTJBWCtUMWVRNjd0WThxN3JxTQpFa1FmTkxmRWNsZ3JsZmZHRElOVUNrVkNRMVcwRkJxU3JDY2dSSlRZMWN2ZDhOUnVTTTRHUmNYdUhrMUh0TkdjU0VlaXZReWJ1dGxXCk56enVrakVpRGgzamI2ODFnQlNqc0VyendraFNaZGVSVzcwNTNHckY5OGw3K2grNHQ5TjA2VFR6UG9JQ3BWMysyZEs0ZjBqankrWkkKcTBqZFJ5SGhrWis1dHcraFR3UjVpSmg3L3RsK3prTGR0bTFRQi9nYmdOelVFZVBlNzEydzNrOU1pWWx6Y0hXd3R1akZSaHp6aW96VQpLSmg0a1lhRzdxRE1BN1BjN0M2SDZ1MXV1TWUrZlB3cWVidGFBSnN0dkJOd0pCb01aUE1tRENnaDZaU05QUmNRSXdwOWZZemNlUUVLCng4a2NEb2VUWEJ5ODlKaExyWmNqMDNpdHZDY0taRTdHd1NoSmRNZzVHYWZUNFhRNlhhQnh5cWNjZ2pHSzVzaEpYY2FaOW1aOGx0emcKQ0NOS3lNamtsc1BYbC9YK0d5SDBRbDhmVFBEZ3NjdmJ2WHl1Q3E0c1FJVDNmdzZ5dGRhM0tXa2pvdzF5VmlrYUpXNkpmZ3FHN21HdgpzYS85MGdMS0YvS0xqbnNSVk5nM2E3RmxGVWgxVkxoNUUxRXdTY1AybTBuWWNVWmE3VUhnbS9ZcUY5N1IrTzlUd0pZOHF3WlVNSUo0CjZJcGtMWXhLSkFFazYrNFNKeW9Na2MxWXJpbCswVWxlNmpZWVdVczFUQTFkT3NaRkltMlpiZDNERFY5TDQ3cHZLSUk2UkF4MEVDK08KUEpseDkvMVg0Q0FpWmh6THlwZS9Rbzk2UWk4KzFvUlRRc2hoU2JqbDMyVkdHbDRHYjNRb21ZZCtsYjEwNE11K21kR1lSRFBtYTcxeQpOVytVMk1MVWphcTIrSEVGYWRRckdxUXJBc25rZzhCNExFT2J6cEE3RXFxZ1ZsbzA4d1pndEE0WHNBNXlZRmc1cHdOMGV1MmR6d1BjCnNJM2tiQzVaT0FrbXBhRThNT3VBWVIwT2VBQnM3NFVxRXkrRTRDWllmL3U1UzFqcmFPdjNKT2Jld0dGZDY5dm44RzRhcFpjUHlMQmUKRW9ZM3ZjZVc3WjcwQ3pEdjZnWXZKMzFtUG1XWE53dHpOTFFNbi9XNlQ0MEVldGZITVBlOTNqZTk0Q1dmb0FtZnFRSjdqSDJEWk9FMwpoN3VVRGlkMkV0Q1I5NnlQeDNXbVJWaXhjZis3THBmRHlhaTdQSVBsRXNWY05vdFNWUkRxd0gwaFhGNE05UTNEWlgxNTVNMVEvL1NCCksrUVh2UC9pcjZoOEpiaHNLdCtNRmplNUNGOGt4dUFBR041SzRhRm5LN3ZrSG1aU2RuRW1wZWlSUFA5eUR4SXFrbURSUXpFK3N1NGUKSExyeTBDU1FRcjJvNWV0eTQ0TjNEZThhQXppVXRmSm1ZOVV4RWl2R04rc0VCdlNFUXFoZGxGOHBQSTBYWDdxaCs2RFM2cktFTVhvVQpWNFNhU0pqQ1R2YXhmdnpYMWFQL0d3ZnYwR05RNHJ3K0ZoZUJEUDc0d1B0WDFFSlUweW1jK0RueUszSzRYQldyOUUwbFlmQ1hvVVcyCkZKNXZmZ3AzK2tYWVpTZnN5b1NLdi85eGs1Rno4c0I0TncrSUVMM0taeUpmSFhjZ3ZYcnh5MGVqQzlDdUwyakU3T2dWNUhiZFM4N0IKV0c4SWFyMitCL2tGV0h0SXIydVBwTkRGalRFRm9GQ0lEbEhuZlZ1T0h0QmJlREFWdlZ0NGs3UW1oQUFFdFlzNGIydi9UcWxGY1J0bgp1SUlhS1VBak8vNkd1M0MwSzRIbFlrVENGbzBkZnlWUUJYTXpCZzFFd05GbDhKYk9BN2pra05WdS83U3c5cmhKNlJRcEdUMmp3V0R2Ck5WcUdQaUpGVW8xZDBkMVJERTZuOU9FSlhLQ0o2RjUwcnovdllUL1loZUtLc1NQUkNDeXR2R0cyc1N1bFdXNVhTeG1oemkyRHJydnIKcE1IazhyUjV3MHBaaGNqeFJqVU9tT1BURlNKRDl0Vm1aOGNjcHl0Q0NFQndFK3p0d0RVWFJGNTY1WnZYL2ZPSy9obW10ZVZZR3hLWgp3Q1FndmNoUnA3RjdLWWJzOGlSZ2xGOXVldTEzVC8yU3ljRCtVbjI5alFXRlRKUkpHM3BIemVSbXRkMDdvNFZrWWRTbFI1L2V3WFpiCjJvQjNFOHpKY1gzNzlPRGRJR0M5SHpoQmR2TE05MU53NWtucC91a1pCMGJWcW5XU2poTis2UVZCQUZtTzBWMnRVYkYveEh6RktZV0wKNFkwNDF3VXJ1d1NOMHhCdVVvR2plbW1vTExFdkJEZkIrbjJ1eDd6QzIwYW5WVlpmL2o5RG8zQTg5dlpwUVBtS0k4bVhSbUhYS0JRbQpldkdKbUZ2Q3pFZ1dhU2lMMm9lRVhmYTlKYldscklPV0JMS3NKN2owS3A1M3pBeGhJTStsSENNRXM1bzBySVdqeEJHY2ZReDR1ZEVQCmdvSE1Dc0x4MFJsME5Lc3NiV2lpdXBubmVRRjBoRnNDb1pwWks1U05uWmN3cG9HeXJuei91SXk4NGJVS0dZNUgyN0hnUzlDR216azIKakRmbGo1ZytJalJCN0R3RXRZdjQySG45RGkrRVBObVdLNnZoMEpqZnBKVlJhWTJqVE9oMm1EUW1qVlZKYjB4ZXQ4TmpDdUlWeG5sdQpmMk4vTjRkYmFLUWx3Z01aVUlyNXJIMi9jVE9FSjBac2F0ZEpOaUkxT3J5R1lCOXZ2NjkxNTBFZ2hQNFoyeUtWN2E1STZ2aUNKRi9vCnU1dEJ4N2pzRmdWNUZXN0drTEFtVGhydktwQXgvSnZoUGQ2bms0MEFsRWFuRUorZDhiV2ZHZjUvSGlHQ1VlVG1YNWxGcitsYVIvazEKSE9jaElyMXdKYmttSExNcVBReHpXNGp1cHlRaXYvWTNxVGxwSU5sTEx5Ky92SVRzWmRQVFVURHZRSmpGcHJ6bnR5QVJERjFDU3FRKwpCcjc2UlRDRXB2TmVnelI5VXBjWGpWVWloR0htU0pOSXZ6TElZaFFJNWg4Nm1qd05UVmNrL2QyRlhRY2toTE1PcFI0cmgyVS9PQk9hCmc5a2JRVTJ3L2c4MHIxWC85SUVyR0dQV2REN3paK1JYWEpJSm1XS1NGQXpwSldrWTNjZ2pTRWdYSkFqaGxxbUZQRWQ2QmZKRWlaYkkKTUUrTTZCazM2eld4QmFpRVVZNjF1QXp3aTRkRnQxTlBMMzZtL1pWQmM0K2pTOUtmbFhGN3BISG5abDdsN1ZxS1h5YWk2bGFOUjZNSwpocjVscEYyNENYUXloOUlnell5V2ZUYzA2TndMUVoyRDdackIwOXFsU3lJMzlmVGtLNW1sWXIvdkxhek5TMFBmMEtTZy9BSVhCNXhKCkFRcGttQjBUTVlsZlpqdEpwOVNDbzZzMlNuU2VpOU5xOGZuVURRRnBVaFpKd3B4QWJRNnZpd2h5OEUvQ0NMK2E2UHdXVUpyWnR2bGIKQ1NXZDBvVVRTSjVGY3pFdituWTlMZ0w3Z1pvTWFpZEM2ZjdKbzArbG5PWkJhK2M2d3hXZU4yQ1hjZUxoNDAxM0psZXNXVERQTXRzMQpiNzhsU21vMndyTXVxNFduZG1iTW1FR2grU3YrQ081eE1PM2t3RFdBblFOODEyN2twNzVlZVFVQklpaWpjRjVsT29kS1JLVkxJNDF1Cmszdms0cGVGbWMxcWpVN1c3bkxhNU5CZ3QwdnFSYXNOTlNhVFd5VUl2YVFZMGV2clV3bnpESjZoZXZuTldZbWt0SFdQaExrMXpDL2UKOUZYRjkxcDdVWFJ1YVB0eEFiMjMwWG56cVJ4QXB6N1M3UGQwUVZDb212NmhMUzc4Zkx2cVYwZXNmNDJ6cUVCSElKTjZmSkJjanJtago2NnFldCttYmo2QldNTWgxRlFXdWdnWFQ1L0NwcWJjbDIzMWpaTG1wWlJNdU5JUFJhd2FlRDQycGRqbTVTZU5BZytxbE1DazRzS0o2CldhbUlXVG5KU2hRWmhuTzBoWWxPbWE1QnIzSkoya1dmajJhK1hhTndTeGhMWWtRcE12VHpIY0hUV1FCcjZoUERtc0tvaitneW0ySEcKRnBEa2k1Q0ppQmYrY243dlZZUG5hcEhzd3d2dlFRQ01EVmt5dDRnTm1iTGJrTm1sNStVOW90eXJZVTV3dWpoajVLYlo5WFBmekJQZgp6Tzc1L2c1V3pvaEtscldDVE9BNEIrZk1pRTBNS1pnL2dwdGdzM1FCUFRkZ3dXMXZ6RmZFeWtlb2gvNWxMVDlNQ2lEejVuSUgyeTlrCjBWL2s2TFRmK1dpM3BGODBPbFFvQUNsR2lJWHNVaE9PMlVHaE1EVDJlTG5sMHBvb3RDMlVaSFpweUl3UVUzbzlrb01odzZ5Y0wwUTAKeTMwRFlZa0dneUZSc3ZsZFhVNWwxazV2eVFjR2lqelgyOURBWjExd2ZPd0M0R0JmMmZ6eEoxSDdLZzR2bmY5aE5rbi90SGF3ZUw1awo2Q3hucmpwRmZTNTcrcHNwZFRzekUvSjMybVFPcTkwR0lpdXpPWGlRbFhDRFJwYjNldEVCanVBT0VaWDRMZStIM0xWR0pmL0h1amFtCmJkTVBlS1Z4QmcwVTh5ejcvcFJSZlBrR2djYVdRd2lhSnBQaVEvUVFRWU01aVpKRWlpWnl6RnV0cDUzNkhtNXdVa01EalFwYkNDQU8KZjFyY0lTSkdrWGpsZmtFWmVGd09iM1dWMnE5WXFnbWRSTy84RlFKdjBTS0pGS00wd1BjVkNsN21idkh3OUZ2TFZ0QzdINS8rWVFhYQppVHFuMnR6cmxmbWl5ckdQY21zdGVlRGNhbjFVcHRmU1kwaGtWV3JHQnJCbjQvcjcvYmNlNkFodUJadDh5cjlXS2k4aG4zc3pMVWZlCjNyNVZEZ256dS9kOEovdk52RHBJbVR2YzBGNSsrZjhIKzlUUFRCQVo2V0lBaDVWUndZaDJFZjJ4Y2oyV3hoNWVjTEFhRmhvTkJwV1cKWkZrbVV4ejl3WVRMRk5kaWNrc1ltaU1lQ1hPeVRoWXA0K0I4TGdlWWZlMUpFdzFnU0pSY0RwZmVxWTAvekhna2pCZmtMcWRDS2RkNworejFkT1RqK1NNdkNKa25FUm1hNHpIcWVsNHRXc1Zla1hGMXo2NU1MaGxlZHJUdHJINXAvdkZYbG90VW5PdDdCc1lKTU1mblQrMmdUCmp4QVFRVTJ3TmE3My9aYnlaTE1kWDExWCtjL3F1aWI3bWVxNkd2bk0zK1ROZXBNSVdPdkdXVnN2Zng2enh2akF2d0c3MVRDWUp5SEYKZ091d1dCcDRoOEJhb25YQU5CcU1lcFVKQ0xrZ2p2eTJJTFhvUFpQVzVQYm9NVUwweThHa1VnNEg1MmR5MERoU3VtL0FJRkdxbDNMcAoyL2x5QjUxNGpDUlRoTXRrSmh2Ym93TGJSU2hHT05LZmdORU8zZlUzU21GZVdWYW1zVmtRU0NKR3BObVBZcHo5NkgydnpCeE9zbGpDCnNPbkZGcUt6TnBGMU9jSkdkZDVlNmp6ajBvNExsVTE1RU5RRVcxRGs1OUxuV1dZNzJtSmVPNE9aQ2FZVDlqTkg3MzFsNXF5ZGRhdXUKVE1BVTFtVmZrc2hJWmVOWmk4TmhjZFMzQ1NCaldaa2NHS2JWWUZEaitKaG5GQW1seTYxZ2tvaEpXVmh2QlNNU1Jxc1JIWnpQUnJSRApZaGp0R0VCaG9MUENDTVBhRk4xRG0wVWNSMGFPaFhNaVJvbEduUU00bTdjejFIbXdveWR5d1VmOXdLbjJUa21oSWxhNmYvSTVKYS9uCnRWWUY2TVA5UmV6b25VOHNHTDR6ajJqWThKbkZKcm5vRUVXTmM2RjJPbDhqVG0rcG4wOTdLWVlBd1U2d3YvdnU1eFd1VWpaV2Z1aS8KdTBMSm5YL2ZzaUNPQ05pVlZQa3FtSmpqSk5IcTdHNXpZTm1ld0drRmx4eTVwVDZIUTYzK3JqK1N5cTFnVk1SUXc5empZQ1I5VXhBRgpsSW9ScGF6S255TDJ4S2xKUFNoZDdtV0ROT3ZTeEhSZlZ3SlNrU0VYN1pKaVJVRlFPMEhodUtDR0VRbmluUDJpbU4xWmRuS0ZKR0tWClM5bkc3Tk1rVE95T01tdThkaUxCMGUvLythN3NONEZvMlBEWlg3bFlsUUIyUmZvbmg2dnk1ejc3WFBqeGxCREIzQWhtZ3ExUitIbUkKS1hlb2Z6WCtvMTQ1UHlmVTNESitWT3J3WGZJTFdZZ1hnNTFkdmgwZ2NraDBsQnFoVVZ0TlZvTmUzNXRhRW5BTlhVc0RSSGNhSmttWQpBc25WWUlxazJ6bGxtSVE1ZUs5NUFiRk5qZHZrWERPb1k2bVFlV0pFcGFYN3JrS3lGY2VLQWcrc05LR1RGMVFPRnVTQzR3SWNrbnhGCnp1M2RYeFFjcUk5T1NLRnhYbm51dkxNa0VRT3RXV0VUL0NsV2Rmc1Q4NmZ2UklZMTNiUmJCazRSN00zM3BSd3UyLzlzd2ZDaDY3MmIKRFhRRU04RnlkL2tpeER4Wnd5ZTN2aFp3N0hIR3lXOHh5WCs1NlhMUHBTS0JmZjE1b21EUjluTUdEQWoxK290UDFrVGRRdm1pSFg4eApWS1FNbzVWU2lxNVkrZ2FjTXRyNDNhRVFhVUc5V1E1Y3BUbHM1WU8yY1M3RFNUN1dJTVdJWUFnRGc4RlV3ZHF3TzQzQUsyU2Uya1dCCmQ1S255VWlnNkJrQjZ3VkJraS91WXRQRHZMQkR6ZGw3MHJFNnZyeDg3R2kwaW5pTEpicEQ1V09ZdldybGp2Y1cxQUNNWU4rSzZsUngKVHJEYUQrWXMyWTNQQ0EyRmVSSE1CRnZrVjExWWQ5dndUZXF6am9DWkcxelY3V04zblpIN25PL0xnTVlXZThSS2pyc09YRGhmdFFMaApydGZBS3lsaXBENEg1bUFhNk5MUUNTc3MwQ1NNRW94UTdGeFBHS3djWGZaTCtaaXNPWnRmLzlTVWdCcUc0V0lZV0VWMTQ1b2RJbzQrCk1ieTNPRmdRb213aUkrSk9PdnY0eWtBSGhlNSsvejV5dS9Wd0RoVXhvWEprRHQ3eVJuT0V4VGZxREVaZDF2aWUxR0YxZFRVTGJpL1YKSzhpYnNjb2FFdWVXNHlTWEVEd0lab0w1VHdmTGJXVTBlM0JlUm0rRzJjZjNSSTY1VUJISHhhRXdib3ZySVlkWmRMOE9KeUpmVW9CSQpibG9lUEVndVgxRUZzOXRSd1RTTTI2akhKTXhOc0RORHIvL1JWejhaay8yakRRU3I0K3Vhek1nd0VpUVNDZXVVeWJzSG44RHpPSWd5CmNMRTRiTWFBWGlmSWlZUXhEdDVKK09XUktid1ZjTUFaZDc0dm02TXZzWFBqOEltZjBabVk1UmtUOXhIR3V1eUNob1NKSG9aeDFiclkKOUtGNEVyS2E2ZE9LRFVxbGpRTzI1b095U2w0b0dEUGlDVmxvY2hnaWlBbTJ4bHJrVzhqTWV5bStVWVloVk84ZHJqcHl0TXJmSGVzLwo3REw1Yjc0a3QxUllMZ21haGxIcElwZURaUEVnalJGUndiRFJoVVF3SW1HRUxJMlJJbFpMS1RMdlB6UDFSeHQyMEtmdjJQRE1tSy9xCmJxc0FReUw1Q1FzalNWaFhPNGZEdXd6cUhoMlo1dlVncUZ3aXlBUk1MNUZLMkVzQUdVWHU4WUxTU2EyUTN0SkcyRFVucGNONGdZTkEKNWlxZk1UNjVBaXVuOHBPcVU4d3V1ZEVSYmZCbjJKbk1CUHVJT3JBUG43RGJLV3BzWUdNYm82djBLOVBlK1NMeHdRY3BPUWM2Z3BoZwpzL2I3VWpCSVRkcGFMUmM1d3JEZU8yeWMxZEhIK1ZmN0JZMXhIc2FJWXFSLzQ0eUxRcUtYNU5lRGV5d015K250WXF2YjVjQ0NlbzZhCkhHZWVXN2ZoMkdhSWtPclZBYmJmZnJLK0s1cklGLzZFR1F3SzI2UGJzVCtPUkRCcTdQTzhZSk1UbXFJZnoyT052Uk4vc0Y3UnlRdHEKaFl3TitINFJuT0c1aThlMzd6SDBFVTlLa0NrS0QwekY2c1NLL1NuMWxWcWVkOGw3d3J0MFhvYWRXZkJNM25CcUpiYmZ2STJHcXJaRApVNHNnN1NYK0Q2L2Q5TmpXM05DQWMxQVQ3QzIvaGRzVW01UjRlRG1aM2dORlhKL25YKzBYN0xLak1TUUJzeXI5WThUWUM3Rk5pZzlOCjhPQkI2aUlpMWR4V3ZVbGhGODBTd2ZERWVLd05DY2FvTk44NUJsYnc4QXVzRzU2WFYzY2xZZzVHSk13cXNtM3pkb2w0d2tweThUYXUKRWtEdGt1eENGNjJuNTl6RndCd1R6U3cvNjJJY0RPT1VTY0dqUmpGbDhXUjVVZVhKVytjVVR3N29FK3lEblhPV0hmc1pOc0Nxdkw2RgowUk1LeXczK2Z2Mis3Ly9wN215MEVsT0h6dG9ta3hNTjR5WWNoc3h5QVlSVFJ0dGFRK3FBdCt1RG1XQysweFFCek9HMnlsbVJZZVV5CjMwbDYvbU5ZZjRJenBudkZpQmZpRjhhSWxHSUhVYjRlUEcxQ3F0SGhaclRxUFFSemtoQ1JFa3c4ODh5NnpVcFFXcjBLQnJEaE4rS3UKT0VuQ3BDU3NETWUvV0tRbHpzK2s4Uit2ZDZnSXFhaWdZUWt3ZlNJdktNS0YrMTVaTXZhUUx0SUlEaDQwZDQ0ZlAwWmVWTUxNelhjTQpIcnluWlZidktMbFhWc2FCb2lBY2FWSzJkSXFyaTd5VzNhcjFXUjNPbWpzZWtkOUJHRGFzc1NtLzBpWlQyVFNEeTJCTUs5bGJvZXpvCjgyTzJMS3lFZ2UxNURCU0M4Y04zTVdGMjdCUHZ2SGdQbU12Q2xuaHlKRVVwQTFoMUlSWHpwR0NFWlhpSGtFeUtFcEZnQ2lrSmM3S2kKUmVTd3RDK3NvSUc4akxMYmoySFpYem9jYU5iamFCaEp3dXdtbFUyTEpWNnNDd2ttRlRDU0tGRWprOHNkYm1NUjFjdkpxK1d5RzlvcQp5bE5Ianp2Q09sWFc4SzRhNTU3TVVmbjVUVVAzc01aYXhhMHZqZXNsWVZJekhUZVkvNXZTWnFDMmUvbVFkQ3RobU1zdTZNd2VobkgyCnFydS82c2tjVmxjM2pHMmNWeW00eEp2WnJOTHlIeCthVXd1Q1ZqeDlydjBudXdjMHY0S1pZTHVlOGh0blRoMnlHMFMxblJGWkI5T0gKbFhhRmtLM2VUZ2ptOUNkVUxKNzlxMjlJNDgxU3JFZ0xPNlN4TUVvd3JhY2VVWFMwUmdDY1h2ZjZmalVXMGx0OS9JSWRMNVNVeFVtagpZVGdTcGwxV3JBWUhhZ3p0TUNBRmlkaWhneFhEWFBZb0MzS0xZUlF5SGN2b3RSUGVJWWxVWmVyWWpMblRKOFpOek85Y0huYmdUQjFVCjdoZ20zNVdhZW5CbWJ3bnovbmMwQ29Wenl2T0hQVjNiRGsrdVQrMGlERk5vakRiUEprYmRyTmdlRnMzNlRHUlkyT0hUU1pVUVArVWoKZ1BnT2pURzJhNTNoMUlEMjdZTjV1a3FDLzRMQ1l1R3NXaTJJS3A0RVZsZnJFMDhtbHc3cE5NcHV0UG5kN3cyVUszSnBJYjl4ZUkxWApkTmdaclh2dlZyVFN5VHJxRlJnaUxmdk9IQXRRN1VycFNhU2RBMERrSSt1U1NZYW1SRGF3dEZUWkkxb01LR3g4cEZ5dGxMR2FxQ2hlCjdnVEhvQUk4YVZuQkN0RUNIWTN0S3V1WmFXVFI2SFR1aFVMSTIxTDRreGZIZWYrR1B6U216aTdYT3ovd3JkZzRmeVNBVHExM2hNczgKTTFqNHdzcXFTZE93TzRkVCsrcDNWQVpvSmUvd1kzbHJmbjV6L21SRmQxVG02emNWU0MyQ0J5YUNXTUZnSXVPekVlT3E3am9vZHprNApPMGxQWkdoMU9QdFhsbmNKTk1xN3dSb2xYa2l6ZXNFdFlKRjZLVlNrWXViV01CTGVlUnB6T0cxaG5LeGg2c0YwSWs0QkNrWWtyQ3U1CkZYTXdUTUlZNC9XN1dKZkx4WUtMb1NHaWV5T2VTcG5lckpZclpIUmNEUnk2NzNSOUFDdlRFc3NOKzZzYmFrNVhqeDRrVTBPZGt0MlcKVndmcGJDclVHQnY5eXd6ZEVGeDQxakN3RnYxb2lMY3lvMnprbE1NanpVWUZxTHludHVUT0pIODZkeWhKdytwcTFqNTNwK29rVTNGRApHWXc0K1dGeUtteWRmZjF1elEzckp3MDc1bm4rd0VNd0V5dzMweHNqNXUxYVZSWGJ4TEl1cGNzSkxDTlRPSER0ZjA2eHBxWEhpV1R3Cm1uNHhqTUtrVDNMUkFURXBIWk1ZNWtjdzFzWnc5ZmZ2VDhlekw1QVkwZW96NmdteUR4eDB4dEppampDbHZidXVRZVVpMGFISXVqeG4KbHlEUVU4K2Q0WGs5bmVHc0Z3U1pkbkhQeDdyRnl2ZEthODhLZ3RGa05CMHJMZHBiRkRIejdCMVZJOUszZk8rVWVXNU9VczdSM3MwUgpiSnlNVTNNR3EwM2pzdStiNHB1a1hIN28zbTJXYUF1MksvYk1FUk9hN255T1dvbXdjeTJ2MW5WMzZYTExTK01iUzFNaEZlSW1sNXhhCnlneVBIYmkxVThGTXNGbStZdCtVTzdhbUZkcEVZRnlzaWljcUJuSVp4emt2ZDc1dkgxaGFhajFQd2k1a2NyZ1JkazdLeEtRckdoeTIKbXR3NUdDR2dxSzEvZWE5TTR3UTVTcGlmVVUrdzQvbVNicFY3Sk16WnJaRytKb2lDU2Z6Q1J0ZWU4MEdnb3doNm1Vc3VsK2ZrV3o2OAphZG9IaHp6enlnaHNEbDdXdmIwN3QzbjY4Skl2dTJmeEoxbFhxY1lFRE1zQ3c5akk5dzRqRDVmSnNUZWkycWhtZEpYWlV1RXZZczF6CjN4NTNYTnVoWU5WMnZYVHNjRUxKUFkvc1dvczlUcmpoMFpFamEwNjIzbEJhZmhlSGU5UVNsMTF5cW5SSWZQblZpc20vY1FobWd1MmEKNDRrUjgyWnNyUnJKMVBIa3E1NnhPZFFLT3lPU1JLeXZncjNMUmRHUGlsQXZlbEhxNHZ5Q2NKMktGaVpLTWtZbk41dEFLODFZSVhyUQoxalcwMlJDTzNRTW93ZndGakVoWW9jeUNSaUtFV1EwbTlmZjJBM0xMMDhzZUQySlBZdzRrbXd4UDBLQ1Q1NzkzK1A2S1R3SkNRSUcxCksyUTdsbXMvclEyemxKNFlaYkV2SERxMndhNlNzeHdYTHVNNVR1NTBWdjc5QnhQcXUrTXRDcXV0cE5VOUJYTk43bGVyQnJkTU84cHEKTzNoR1p2VXdyT1p1Ym1IbGJYeE4zZUpIbHBwR2g1M0lQU1djL002SG1LQWl3NXpsS1lrRGRnWm1NQk1NY2hPSzZDM2hsM1B1K3pVYQpFQlF1a1pXNVhLRG03UzVyMVBsNXgrVmpOcFV3MVlWSnBkUDFmaXhPWnV5ZzQ4NXVCWE1UekIwam1rUXVibTRYT2dodWd2WGlGK3g0Ci9mRFlWa3F3VG81dG03SFYyK2lHQklSNmF0WUpaUGVNVkxubytVOXl1dTU0UVZqeDd6UG43YXJkTHJNckRtN3JNSU5va3BkTnRyMWUKbnpZMDU2aE1aSmtKMHplK3l0bXIvbHFkWnVsSm0xaGlGSnpoZHJhdStJSDBVbmhNcVh4ekp6ZnA3S3hqSGZIdEtwWjFSNGxrNi9tLwo2WnAxWXRVY2NjdjBhS2Z1Vk1iNHcwSmlRNDJiWWVWTE4xWVhsQVg4L1lHQ29DYllya1cwM0RkUDFsQTZ0N0lHN0FyTzVDVHNjcm1VClJzR3NjNTEzMEYwSmltNGtXVmgzdUpkRUFmR2hMblhOVjV6Z3JvNmlNT21WTVNwUERvWjJ2WWRnZEY1ekEvZENnMmtVVm9pNENkYnIKMVlpRTFmK1RUbHdKQzFOWmpJc0tVYkV3MmRLamZnbHFTaXVkNERraExlVFVadHoyT01CQ1Uzc2ZJWnJkVHBMUkh1eDN3R3FMRmJuRgpwZVgxM3hwVHB4aC83R1BaMXJuWi8wN1pXSjZ1L0NCdHp3dEt3YXBSTk0vZVBEcGxWUFN1VndCcXJKT1lpRTZMek1XeExvUDc4TEZYClRabTEzNTdoMmxPei9yWVlIZnVKUExlODdIcmx6bFJBZzNSM3c5S1RaUVhlTkc1Z0lhZ0pCcmxMdHRGZUFiSlJsYWhsMkVlWDR5d08KaDlXbHhtNFpWd1dUbTR5RVZ0N0JaaCsvZER5dkcvYm5pb3FINXg2d0NsckpPVVRFcWRwN3BKRXdxbUJvY3VBRVoybW8yYW1TbVVhaQo5ZDgzd1NJMjN6ZGsrN0lLd0NTTTZXN2dqQ0FRNnVCRkxiZTdXNVQ2Y2FrNU11TkZnSlhXanRZK0NFYitIL2hFdkRVS1BaT0dOZ2xDCldjbDFLWm9VM1lMYW8wZkx5QitwS0lXS0o1WnVma1VRekJIMVFrMXQ5a1FOWDVOWGQzWm5Yc2x0aDUwbUdhZGdMUjZHbmFsS3lEckkKTnc3OTFjazdrdU1pUjBaV0xkbXkwSjJHVFY3eWx0TjY3cnFLQVRrY0Z0d0UyM1Y3eTFuc0ZiQy92ZEJ6SUdDWEdRTFRWWkV2UlBHSgo1d0U2ZXhVa0VuSkZHa2ZKZnJkeTF1ZW5SYkcwOC81U3dTSEVhZW1nRjBwWW5LeUR5cGMzQndNa0dIMU04YmR6TWFCeVNBUnJQKzhVCm5WYjQ3dEE5SFZJUzV1em12bjBZcEo1VGFqeVZrRmU0M05ESnJZdHhhbkZtellsTDlvdVhWYzRaalhYekZlVmw1Ui8zMnBmS290S0gKbmlicVNPSnIxWXZUM2xxTDgxTjJacDc1ZVhnTm8xZjRHRVlvZGpRNWR0dmFsRnRYL1hOS3g3Ynl0eXFtdFk5ZUx3V0oraEtPdlNGKwpQNTRWYWNBaHVBa0diTjYydXJXcER5WHY4WnZMYkVmNGIvUWY0c1ZVUW9kQnZiSXduZTQzS3o0YlVYYW9KTFk4RmtSREc3T2FVS3dUCjRyUmFLbUlHMEhiUWdnNmMyVXdId2p3RUU2emRMVVBrSUEvdlFJS2RKMkFFMlM5MVFqUWRDUk43ZE5mdElTRWg3b3NjdTdzRmJLbXoKckk3OEdPL00ybnBKZm9IZFdtZE5weTFIL1NCSlR1T0wydFFHSTJHWXZ1ZDI4NG41SjFiWnowSk5qYW54NXYzcUhzSXdxODQ3aGxaZApzL0twK2JjOGNldnIwMnViTys0SmZ5VjI1am9NRXRIb1dMcngwTWZ2REVTR0JUbkJHbStheWxhK3YvSWpKM01WS3hBRDRQcCtxVFhBClNJejV5enZIMmdsaUsyaVZoNEZwVFhod2JpMVlPNlU0TWE2bks1WnFHTGt2OVpmU2FxaUxhR0lmdHc4NWNpNFJISDBSakJxS08xNWcKSytaV1lCSm1adG9tN3dNa2w5eHVkM3NhL3NoY2N2SVR2TlZOUG9ZeldDNEY0OWt6ZHdYTTRITFRRU2hNL2VxaHB3V0h6bnBVUFo5awpXc1BuMk0vbWJjdHN1ck13d2lseUNxdTM5SmV6NzhzOXBabHpkTjY3OXh6WjlkYXhMTmtTRmFWMlM5eVN0NVlXSzBZZkhvQU1DM0tDCkNkdG54ZzlOZm8zREF2TnJ4akQwT1hvWmlVbU8rdkoydk5NT21YU0ZhTktlckI5OC85eGFHWWZTWllxTFBZME1RN1pocTNvTlZ0UWoKd2ZSMlcwc2p3TGxJa29RNUxZRXBtTFNRM2JYdE5QWWdEVk4yV2Q5N1d6cGd6MmVYcm12T29IOUtCUlRMRlVmeEROS1hobkh2dWJ0UwpSbGJvOEF5WGI5eXFlK1JMTHgzS3E3Wk0vK0pwcFZ3OHV6Y2w2NVdoY2NtOCtld3c4OUE3dnpUSmUxUXlxdzNOUkRvTEJ2dHE5K1E4CjlkMi9zMCtPL25DRXZFSkxHTGE0R3VMMFM5NjY0WW5TL1VLSVlNRUdZYXI4MTJGbjhXTU5uR3A1RmRFUTF3MHFtWTlnWVg4OWhQeksKYk04a0lvWXJXRERxV01meDZ1R25IdC9saU5CcVcxU3hwOE42U0hTb3BaUENGRzZDMVVZK2N3eG5tSXpDSk16Wmg4ZUIyTEc4a1ZFWQpFdk9US3B6R21LMkJqMUxreEp2aE41YVBoWUk1bUZhTnNSOEkzQUNoamo2ZmRxYURwWlB6MHF2TXA5NlUvenZxM0thMkZWSDBYNmZqCmo1VmxISWNtbzVyajYvZmx4ajQzN2V4YzNxeDZNOXMyNzJoWXQ0cDNvSmtvL1hlNTZwb3hQY1BmL202ZFlWTDZ4eG5EejZaOGtKeGUKalduWWt1WWZwcXo5Y09CSldMQVRESFlsMWRkTGgybkFWTXVyQ091eDUwSHVxNWZTdGU5MjY1ZFh3UmpRQXNzcERFbWRtaTdHSXRlQwpTekE0Qk1JdEltRFlHQkU5UktjbGpHL0l4R0xoWkF0MDJQb3lFU20rTy8yenVSVk1hYjFaMGQwZ25uZTg2bmlueXpodFd2UUxwVkF3CjFJV25MMCtQa2ZrM0VIZGowSGZIVGpwOVBzWFVWVWYzY094ZnhORmZiWnd4OUpQc1JaYUNkTFlSemNiUy9kUDNQTzlpR2JtaWZ1LzMKekZzbVpUYXljZSttTjk1Nk1LeFR3Yk1XYjFkU3psNDFoazF2aW03NXRQaFEyZTd5NDM5NUdkOGlZZGpJOEhjVnFjY0dITU9Dbm1BMwpyTGVKN2xNcVhEc0ppeWtFcTVKekV5eE85WFFySlppZmd0MTVYSXV6akJWMlMwTFVEM2R5c25QYU9JMnFLNUxXL3hIdHNyZm9XS2VWCmNlYWJXbkh6YzhtT2p2TmNlc3pBSXJDd0kvc2xZVnZZbjFXMWpLdGJZL05PRzBIbytJbm43TEtiSnNiSVhpM0hjMUNxbWo4aWF4dG4KS1lyOXR3STBIZU52YXVnMnpCN1puRDNFM290bDZOd0xnbUE5S2p6N3JQRDBpMzlkbC9QQXpWbXBkSlM0ckdybW1HS2pZTk9HSHpoeQpoL201T1JNYlU3Y01hYi85MDFpbnFHQU5NbThwbzcxcUhNc1d5Zi9DVHhsMXc2eklrLzlIOHJyRjFTMXg0UW14Ynp6MUlUMnA5RUJDCnNCTk1ON1pVeEpObklhNmRoTTByQkVqd1RBc3poUytYSXNRS240S1Y0SER5cXFNbWNteFBYVCtoS3BKblhhN3dpRTdtWEp5Q0JJZk8KUm9nUUNiK21Vbm9CVENBS2RoN0I4SzQxb2p2Q3V1TUZZOFBpc0ppcFp3eWRVVXRyVHJUazU4L2FCYnJNOXV6NHBwR1p1VEhwcG45VQpvbGR4VTRTeENma0ZRdnlYMkFmSEgzYTR2d05ZM2lRbVIycTRuZ3NmOG5iWlcydGw3ODcrYXJxTVpJWlFjVGoxK2tNcVFUQnJaQ1dIClZqSFByOGljM21wc1d0WFJ5SWx5dWM3cE5WS01OYXEwN0VQYTAzTTZiUzlPRUtZMTZSZC9BZGtRRHMxbk5pMDZsbU80OEo4TFJnUTcKd1padFhIbWNTSmRFc1d2R3NEbmJDWW04UHFKdTVuRWtXRHRxR0JVd1RBQUp3UTZUQXpzR1dtWWVYanhMOXYwdkJZdXR6ZWpRMm1SOAplK3ZRd2ExV1JkVGMxc25uNk5adUJXdjMrQnEvM1NHOVNvVFZHZ0ZLNWJwYjVpVCtkc2ZjQW5hdmFrSEpiNDhYYlM5K2NFS1JjVmxNClJueUU4OVZLSENFbThyV29OcVBGM1Y4M1kzeDU3MUJUSFhGSDgwZmw1YVVab3ZPVHBwT3lpMWlNMGMwUVdmVG9odG5GcWJSWGZmbnUKNVJPL2VEcS8zR1p6MXV5YWVlYkR5Vzlsd3VEc3cwWVp5QmlqdHh5ZnMzZnNuVHh0MS9mdGhwYTJQWXZEVGcvVFZTL1c2UmhvemloYQpzVHNwZG1BeExOZ0p0Z0Mrb0tXd2JoRzdSazdpTkN4STlJdzFKelVjb0JFaTFUQXZ3WXdrN3lJRVU1RVFjc1JPWFhoYlF2cjljMi80Cnpxb3ZCSmN0NFdWOWNyTXlNN3hodkZ3aW1GdkI2R3dWeEE0M3c2elNDV3FWbTNmc2dGczcwNGU4Wjl6ZVE5Y1gxZjVaa0ltdmxwVzUKYmZhQ0RPMkxzODlKL0ZxeDBQR1orLzE0RUcxUC9nUmc1ZnlOYkVMcThaL3V2RWlGQlFrZmpiWEdZei85L05YcGo5b3JRQ2VVRGZ1OAp2Y2FlWHd0V3BxdE9mc0R5dlpways1d2pIZUV1bDFyd2hhdDJLSm94N3JtcHhwUzlkNWhmbmpLRVVlbkRHWUJtT0QyNHJqMjJmVUNsCllVRk9zSlhIRDJCWE0zRDNmN2xXVHVLd2xtNEFyZnU0MGFsR3VROW9jdE1lVzRFY295NEhFa3hOQ1BZNUpNS1I5TEJ0RmNmM0g1MTQKMTJaKytwdTJ5cml3SnUxNEZaeURKZFdTZ3NtY2N0ODQyQTZQaUVWMEU0YmRWN2E4OUZheThBOERPZjRqNCsrRVJqQWR1T1haVWlnWQpsNUUxS2ljamE5Ym5oL0l5bkRRK2hCdk9icXFrellkOVVMdHUrRnlBQXY0ZjF1YVRSMi9zbVZ4NkVRbWpxTFUvZlhiTGd3bVBidEtECjdsamx0NVorZkQ4UWlnbnp6dkdUVDFteWZqMTkwNkJ1bG5WSnN6dmQ0QTdsWnJ6M3UvM0hUMmVrbVpzVHdzTnhYVE5rZkxEdW5hVFkKdmdvamd4WkJUckFaWHhCVzBla2MxelJJNU50SWRqVkljZ3ZpWks1QlhvK0R4SWcrbHdNSnBpSFpTUFVFblBaL0RHd2doOUtUTTZQMApYZWFZZG5XMG9pUGMwUWJWdURtT2c4bWNSTUtVQkZhTUVkMGlac1VPQWhOUEgxOE83MlZIanl3MHdiQnZmeWRmODVQM1NONnpKbnoyCjU3WDFkZlZpVDFHSlkxYUNZUjE5TnplZDNlc3VPUFFoZWp4L0ZHRE1acWZSTHVobXZwT1dYeGE0UlcvRUcvTnI4eCt0T1BsTXp5ODMKNlhYODBkMW5wMy94MHptcHRhbUpjWHZiNXI4MExtT1dzOHVvZHJHTVdXZjNXaDJpTW5GM096OXZCellqYUc1dVRnQW9oaE9EU3ViLwpLd2tHVkpBWTNBVFRwZUJKZmlRTnU1WkdSN2VXaEdxUkVzRk11bk9TN3FCTDM1NTVZaEJLR0hVNUpBV0xnK3BFZ0dObmpJS0RRTjFlCmNzLzdTb2dPbDRNTVlyRGlQR2xtTmJRbGh4T0dzWElGOXIwaERDTUs5bHNxWWxUQlRzTjMxZnBzaUxhV3RxY3RtSmp1U052MWs4M1cKenBOem5oYUZMcVB4N0ZtQlovSWFKZjBxVUIwNno0clhqWS9GQjJjZEkrOVpsL1VKbTZrdXZ0Z0JyMWFkK05tTkR5Ky8vK0UvUFAzdgpSWGVuWURWRzJiQWoxVFhKV0FXVjNGYnBUSG9udlRQY1pHQllWalJ3Q20vZFZIMUdlbHpVdXl2ZkcwT1hFcEJmV1ZBN0pXcGY3SUJpCldEQTN2UUZZeUVqN2g5ZFhZWGJsQmRHMUVqeUdCTVQ1Q3Y4eUFTcXlLdEJJbE5yUytIRE1obTFpc0pvS0l2NFVBVEVLcktVZlNWWXQKU1JwN25Od2N3UVVGeWRoaVltS3c3ODF2a1dCa2ZYZkVmWEFmM0VwVHNXclZjeEE5d1hncldCWVZmNVFBZFI4Tk1ydHRsaHVYdkxSQgp1aWQrTHQzNlF6K0Vobkx0ZkN6RU96UVBnOHh3a1ZKRm5TNUgrZVRMWC96aThjZXpjdFZ3NHVITkcvVjZuVzdEUzNsMzdLR0QzRG5XCmU4cWhhdmYxL3pmZVFmWXlRV015YVR6dGNONkwxN3k4NkFiYnAzU2h1UGpFaWF3VHNPeVJOUHJIQms0WG5PQldzSkdmU2QrbkRJYUoKMXpCSTVIRGlXWmpFTUZPc0hzL3lpbWhIRzVFYWlTSXdSaTNyOGlqWU1SczJCUEJaRCthb2tSMHk2R2lGcFBpV2xyRVdyNFk1NVhMcwp6S0cwN29BNUpFZ2tHcVk4QWhNcnNzRVVRWTdUNkFQN1JxWTBMV3pUNnpKM2ZHK3p0ZU5HV2hxbFZnbVprbndSNUZuNzZJYWhPbkxYCllZRHlwY2xMeGc0S2V4MXltTm9MQ2NxZ2U4Zkc2OUkyR041am14U1RmN253MC9YNUR5VE4yS1RuZWI1WS91ZkNVdFN3d1MzNVV3ckgKZlh3a2ttU2h0aTdzSyt6TjZMUndiTkxoS1Vja0NUdVIxZHFhQlZCeXg3K1NoblVQb0RTTXdlL0NvTVdQLzRvOXBOSGN3R0ZlOTRjcQpYblV0RTZBcG1ZU0lZZTZXYlVtUHZ5MGQxcGw0a3lsSjJKMXZ4NE1EVEJDZERjMllmb0VGQ2RZdGRXV0xVWTBwSFc3cGRDYVIrNmhnCkRVQ3R4Q3J3YklqVFZvaUlZUmUzKzliZmloTmR6Z0VzZm5mYmRXZGdWTHBWbFE0SE02NEgrTU5xZkxGQjg3MzhLdEM4NmJuYkM2czAKTFc2Slc1SFUrTkZOLy9RdlZFWWZKcWMyQlViR1dEdEVwM3N6Q2Jyckp2UzhkT0kzUzI0Z0NxU0hGZUh2VEtlcnMySElFNHMrVUlDeQpSeVE1SnA3eExLb1Qxd3NQZGFoVjdZbXZMME42d1FtNmJkYTRyaGYwVTRpeVgwUTFnd3BCcldDNnJDUHVka3VFWVl6b3R1cXZxcE1vCk9KMHVKOFBFYnZkclVxK2JXeUtKRXlxWTI2cjNKV0Z4WUd6R2hORGRsUTIvNExxbmEwOUJSTjV4MEkxdEJSeHMxdW4wY0k2SVdFeUgKREZWTW9YWlowVW9FdE9sUFEvWUdRbWVVc05hbVlXRTZYc2srdmh3R0h4OTJGRTdjZGhqVWM3TG9IQldLekxERDN2ditLRDR4Ym1aRwpYbklad093VGlzcXk1Zk5PdSt6eEx2dWdtOGFORzVlZlBUUXJLamtpVnV6NFIxbkFtZlNFc3EzSEYwYWV1RXVaZUZTWVlpaE9uL2tuCnlyK1dPSDMyeU1OeW81cUV2UW84SmE3Q1NUT3hjRDVjOS9Zb09mb2NneWkvc2xxelRyZytlRWIxNVFBeU9vS2FZTXZ0SjUzdWpqQ1UKWVZmYjV5RHNrazZQRENOd1d2TWdqWW11RHB0ZTVvbiswT2FRbkhxdlR4LzNlV0o4TTdhMHdXMm9LeGpUT1dJNjA1MDRzc3l1YThIegpwZUNiSlF3akZJdU5JWEVpcFpnTHpVUVVzQmlTZ1JGK05jVjFRblRqaVpHTVdKUHk2bXR3YVBEZzdFTnRwbzNQd2FSQmZxZHZyWmg5ClROWG5nV3cvVmxIeDFhU1VKbUdFVXF5QXNxcjVhYU9uRE0wYWFiSGI3ZXYzbEpXV2xwZVhsZ1lHbHpwZTBQSDZzZy9ySi8zNiszZmIKdC9FNVg3TFZwMmxYZ0pZNDBDK1pHWk5XYXdjN250U2RyQ0pKcGQxZU5idTVjbnIzM2E5a0VBa2o3SUpCSkVvOGtmdUhPeDk0TmdrRwpTcEFZMUFUTGtKZTdQRDJYa0dHeXE4a3dBYzljNHVsWGZTQWFiVVNjMzBXZ0tkRjYwNnZNOW5ZcFJoUkpFa1lKMWpKelp5SkttQVBqCk1ocWdxNk5NV1ljc3JhTVBNVGdjaTk4RXlEQ2tHR0VZcFppTVZaZ3B3WlRJTHhOOFZkOXhNZ2FpalhWTDIwUjk5UjlHRDVMRGJVTnUKZXcvV2o1b2Y1c2N2Z0dUbEtmOUZQd2dDRkE4ZVZWbEtSVW9vcjZ3OFhGWmVXa0Z3d1FOZkVIU1lmZkg2RCtVajdqZ3dyTGh4U3NXZQo2UWRYcGNMaTZnbEZMU3I5eU9hTU1ZMFdQT09aWWxuVnNpb2laYTZNVFhkK2xEejdpN0lNUUdYT0lpcEdHSmIzM0FUQ3NGZ3N2aG9BCkNHcUNqYTVwVVN0c1BvWmR4YXBmQVY5S09xTWR4M0VndTY4SVFPVWUwSTJvOFZVbXRYdktPVmlTOUx0OSttb2Z3UkF4b0RvN1ArTTQKTkJlVWhLTWQ0OVl3U3JFMnBCaHlqRlZnbEJnQjZsczNWS1I5QmZCSVVZNCtPcXJvbGtxMjUwN3RHdzl0cnJKK2IwdTVsVjNWNklzUApFV2V2NjZ1U0hvR3pWZHFtREF1VXFZdENvRjNoQ01WMjF5WWV2U3Z4eTV5a0xiWHovclNoZXZFWEpHWFU2MGUrbFpZMnB2R0dvMUZjCkdWU1pnSVNLRmYvNDNmTFkzenl6Zmd3Ukw2REJMekl0NzVYc3FIMnhob0ZSMEJIVUJNdmFROElWRXF0UWhxR0V5YkZUSjg4NW5VN2EKT3R1TksvZ1gwR09Ea2NoRnlNUEF1ODhEeUIxU1d4djk0TWViZkE0aFVxdzlGa1NSOGRpSU9xQUV3ekV1b1B3aW1VdDhoVHd5dTFsUwpSTW94dkpJb1JtVU1HYVpVa28ySklwMEYyeHFZK1VKU1ovUytWOGREMk1UNjFiR1RGLzUyNXg1cnAzWHdCOTYvU3lHa1orNlZ1bllFCkFvdm9KMFpjOW5sZUJZbGlSNDkvLzA4NXYzN1dRTUxFNFg4dmRTMnVobXJDc0NVSnpaQUd0WHJWMGlyVHlqSDEzTktxNUcxcHl1UnEKREJLUllSUlpyYTFSRzM5d3BpSnpZQVNKd1QwT2hpVzI1SXJ1SkdXWmlzZld0K1RpanUwb0JJVGY4aVZCdDJZWXFZc3V5MktOMEU2OAo2eTQ4REJqbUlTRWk5Ukc5SzQ3UWF4VmhDeUMvU01LaWlvWFluTE5HcTdmV1NPSVlRRkpTRWtCNWVia3paMHo0a0NFeE1Tb1Z6aHl6CnJUMTlHcXNhMHdkYnpycWc0eVFrUHFuWjhPMnpNaXdRQ2NDNmxvZFhhYzVyMStGR3RsWXE5N2dzNk5ILzArbC8vcDI0Sis2SEExTXEKYmxqOTBIdGZMRjZNNy9Vc1lOM0dNcnhvQUJZdFdnZG5DajV5aFg5VUo0WE9FdER0V1BhTDVYcklIQkNEWVVHdFlLTVBTN3NuYVJqRwppSEFIRHVOaVdZYy93K2lhL2l1WkpGODgzUnpQTGttdW1BbEhzTnhYTGgxSjRYdDlTUmcxT25Bc2pDZ1lTQW8yd2lpNUhLQTJ4NmlSCmFUSlpjODZyQ2ZwcUhHMGUzVFo2RUxYN0pZWmhwSWd3Q1dHUmtiR3g0UkVSUGVQajc0V2VvYURCWG9pSDJXRU5wejc2NGRMVG9ENWQKK2J2MzRNeDU3bmZwL3RFekx1QW8zRzNhMk9mNlMwRVNzYUxqWTJGczZwYWNwTGVHZk43eDJxTHFkUEpXR1NBYUJtUFNZUE5TZ0U4egp4bFNOWWt0VEUrTnQ4OTcza3pDQzFyWWJXaXBpQjRTVEdOd0VpMisyK1RFTVVTSXhESnQwK09CK3JMOGNvM1kvdFNkWTdGeE5ya0M3CkQ3azF5TzF5UUlQLzlCRG42UGJNaWxpaVlGb0hlVmdETFhIb2NtQXhMMVVXb2tTeVI0d1Z3em1kU3ErRzBlUkZZQkNCUkRJQ2tXRUkKZ1RzVXA0WndYT2xJZFZwNnZTbFZpSU5IeWZPaUkwKzFwV2RPZWQ4NUJmdDZKSDlRRFZIUFM0VVQvaWd0djY2MDkzUVZOOFk1QWlkaQo5aE5TbktpdnpMejFoNU5mYmM4NWVQeWg0ZzAvcEk5SUREc3hLSTNjenlDL2plcXlzZ1RIeC9NMzUwQXZoczJLelB3c0NRYUMwUkhjCkJET2ZjZnNaNkhSSVZmV2w5SnFWY2U0NVlnaC9qdlhuLzBHZUtmR0w2QktsbDhzQjMvVnpPWVFrVE1LZWRKOTZna1d2bm15WjRNRG0KRzJZTCtvamozUXdEbFp6US94R0lLK2ZhTmFKbTlDRFBuNkFrb3l3amIyNTBrNmJnVDUzZHErcS9wVzNhSHBGL1V0N1YvT2NKa0tUdgpqQXZmc2ZyTEZ4dzNxNVZnaCt1R3ZRZXFxWnU4citDRk1PenNlUVdKaUdPVDZxOVVRdHlaMkwvVU8yZEViL3UyOXExdlRYeHlrZnNoCndqRHZYbXkrVzZqS2lYU09XWWNsaVNleUNNTVdTYTVtNjFoUlA2d2JCb0NFQlhVT0poSjZlYjY3V2ZlZWlneEptbGlwT3RHdnBNUEwKc1g1OTVOSTV1Rmg4TVd5cllTVi81d0d5d3VwTnd2QlZhRm1GQkN6cFNFU0RSYXJUSzFseUpJZVdHcEtVQ2hScnlYMFlDeG9MQzJXKwpwMUNNSGswdWtjcVR1NzU4V0tjei91UkRIVDYvOXZyb3p6NmNndVVlU2VsMldLMGVISGtNbGJOOTE3OFR3TnFYbndFZnJ3aGM0OGI4CndCWDlobFJScVA5NW1EcGp4WWR3ODRlMmgzN3NlV2djbkpDcU5nQTZ4MERtc0hvT0ZwNFZQb1VzWExOWjRtRld3cEZoTUd5WU5OODcKcUJIVUJBT1RwOFpXaTkxbDZMNnlrcERocVhwWUZvZDFxTzFCMTBnVTY1ZmhvUkFvWXlWNk9UZ1dYT3NTQUxwa2NlN0gxNUxMay9TWApndktMNCtCZVpGaUh4TEFjSEl3bHlObDBIWlNUTkEyMTlpeEFFelExNGJWYlhrY3JoMy95NWFmdWQ2UzU3L2s5NXVuYU5VOGxua0x6CkF4cStDRlAxRkhURVRNTUhZOENsaGE2K2c3NzNmdWlUUmg5MDJsNkZVSmNIeWV2US9XMWJ4SWlORlp0dTN0VHVZWmdvamdPa0dKSk0KMDdFRVlCZ3JqeW5oVFovaW1rV3dHWkJpSjg3ZFRUY09mcDhqdUVQRUkzY2ZBUWRSTVllRDVVQmhrL0l0bjFVblluWkRnUEVpaG95ZQpmS3dmeVpnTWt6dVNWaWtJdmNCRmZqck5QZVFnbDJZa2d6N3kvNXJhU1lUb1BUOVpaaUtTa1QzbXdsRURDOG5EWnU1TWpJK1BENCtKCkdRTFhrWU5WMzVGWDUzRGtqYXdQTXhnZ3Nja1ExeHplaENYRDYvL1Y4RThuTGJWM3NtQnBORWZuN2RpNm9vTnQvaTdxRnpuRUZ3L2EKY3F3cEljTXdtQ2lZK3ZiWHV1RzZQWjQvNlEvaDhOSzVvOGRYeVh2cFcveHQzWmRyMHZjQ1BiTkx6b0d0WTdyQ01qWmw3aHM4NzFGUApsRGkyaEk1M3RRN0srTlhkWDBXUS8vaXkrbm9JU3lOSjJDa1NJK0psMFlZRWRTZEFkL0Q3SEVGTnNKeU1kOG0xZzhQZ0RIbkFxbTFFCmN1eFlXby9NRXFtekNEUStSTmJScE13ZEtWNlNZVHFEUW1mVGdwVnpuMS95MUMrd0wwZGttTHRhYWxjVStvZ2tEWk15c2JIU2srNHEKWVZjZFZkaHBIcWJkZWU1Y2Nra3lRSnpRQUhXZHBZWDN2MXEwTlJ2YnpodXdtSmR3TEt4cDJCY095aTR3TmZRb2RNdVdQVjdicytMTApmSDF5ZHdyb2t4cUFjRXhPanRkbmVFTXMxdWdPZmI4ZExNM1NYd3BFK2VFc0lXMU9yN25MOTdkZmdVbnZEenpmWHp2UEY5a1dDRDhyCm1yVEp4N0RFNlh2Z2RpUlo2d0xteGs4am9MNGhxaVNxVXhwdHhoenMxS0xOaTA3bXRsc2dvanZvZlk2Z0RoR3RXSFBrbmFnbFFRb1cKcFdnUlRYYTNubUZlSmlWbC9jekZURkZPZzlacVJma2kvQ0lCa3hpSk1hTDcwVWJublpoZnJIWm5ZaVNWV2todUZyNEY4QlpOeERxZwpwR1RKRWpnQzhkT3hJcjI0cytOYnNZL0VQSnI5N2o3Y2ZEZTVKTFpBOUNlclRUUnBNOWtzRDFWOU91ZG50ei9qZlBhNFlyVWhmaVRRCkZBd2FxckZQUVd3VC9adjBaQkx1Z3Y0K3NPN2pqYjBtcFExcS9BLzVSVUYyWEZmeFdDZlp6ZXQ4VVNJMC9SeitRZStjZUpMOFI2S0gKYlpvRml6U1N2NGtjcEVIaUZ3c2hHb1lGZlpBWTFBVGJFT1BYTnBDZXlnNGJWWU5WcTBXYWFiVTZhbFFnY0FPUDc5RmZob0d5UjhtNQprRjgwSC9rTVF6cHJpL1JnSFB3R1BGbllrNUFaRC9BbE5EZS9EYzBMZ2FSaUdnMU54RXFTQ01jSWRoZTdtcmxoajBTMS9jS1ZwZHEzCmJ5L01CTmhiWTF5L1dxQ1RGMDN0Z203THo5U0RId0g0NEF6OGNhSExDcXIxZ1BRQ2tvbXRnTFQ3S2JVa0NHOTQ3dlVCN3ptV0VHbjgKVFg1TFZ3aENMOXo1RDUvOG9MNyt1Zy9iSC9vVlhkdUVEQ00wSWtSS09yRjhVOGVFekU0WkxGc0duMllCYkg1cXRUc1BJOWtaL1ExdQpCRFhCb0I2L3M5M0JIdDQ0SEZZa210VnFwVVJET2RQUi93RGxHTlUxWkpqSDdaQ2VlRUdZMU4xbUR6dlY4YlZGNU9aY0xMVTU0aG14CjV3ZVpIZ0VqQ1JpMnBRQnMrMEk0UmlrR0hSME1NQ1VranRxOUcxek4zMDQ1QVYxL2hBcTRXNlZoL2xWaGZLZDF3OSt0U0svYWRyUFEKa3JnWkkwZUE1Ymtad0l5SXZSZmliMjJRNkFXUUNvMnArM3luWDc1QXpZWUVXNzdmd3JFUHZKN25md2dVc1UyRUtqZHZhdjh1MWJCRQo4dlB6UlpKbFdEejROa0tqSXkralhDNkRMTWpTblgwSk5tL2VuTFc0YWdKdUcrejFITUZOTVBrRTNEL0tNTHpDQytvWU9jSUp4NUJvCldpeWtvdUVoZUNoMk9XR2lSdFVqMHp2MG9GYnJJT1d4NFdRVnhvaEpnMjkra1V2VVY3ajFhelh5S3g3aXBlYzBFNjRCRmJGMlFySEUKOWdNQW5jM2pRQWxWVDc0SFQ0NXB2dHYxUFZ2VnA3SmFTTkdBcWRhc2JLbExIREc2ZzM1T3kySGo3d0dlR1AwVzBXWWlZSmlFUVhVcApESWJsaVQ0SnV4aWEvTGN5eXc5ZHlMMi9IT2gxT2lwaUNCSWxya1dHTldIRlZuWU9qUVpQZlBFdGdBbWJPcVBjMjU5NGNVYlJIMTlhCnZmb0htSHhOd0NBeHVCSFVKZ2VNamEwUTBlMmpGTUtMaXhFNWN1dGlaTGlPWlYwMmg0TjFhYW0vU0QwUGNvTWowSlJoVWpIVXhXQzMKNjB5OEpWNHJFSDVCeS9qajVCVjY0aUxoTDU4ZGl0SitDTlJGM0FhWlljMUdNTjY1Qi8rNmk4RVR4Um9KcVYwS05EdGFXL01URXcvSwpCa1hvSDVxVWZyaGxhL1BXWWRPZXNOZzFpa2dGbVBTdXJtN3lmWkE0ZnNlT1B6eHNWVERmdWRFRmpPckh0ZDBKVUJWSFpJTjg5eXZWClF1c3B4WGQyeEx1VUFJZjM2U0ZtZkI4anpSNk0vOHgvU2RZKzQ1RC84aFZDNExHK25tK1hSd0NrYjRvdWVHUlJZaGgxUU1XV1UybHAKa0xZM1ljNld4RmxIZnI5NnpJbldRVGdsN1BTa2syZjAralA0M0NOcUM4aUQyK1lJYm9LVjVoMlJiQWVYcEVrdUtqRXVFZldLb1FlOApqSFhoV1JrVU5uVHRBU2ttU29WVTBMOUpMWFlOWjJhdE9aR1I1UDdNTWlOWW96dkQvdkpTT1hhemVYS2JaQ0tPYllaNEkyQ0ZGZ05tCk95R2xBb3h1aWluc2tQMStLU3lOZ1BDSm40MHBiMG45dnkxN2k3QzNHNWdhMUJhaExWS2xVa1VhVHUzODlxOFpPYzZCSnE4Z0Y1cFAKREk4dW5kNko5b0FTaExEamJZcFhPdmxFcXhMTXh6c2dxcTlTRGc5S2YzakFyN0xlUGt0MzFPL0JLd1k5UlRTdk44aTdJeUM5M2xXdwpQZDRBdEN0SjNNeTMwa2l1dDJHU0ZwZ1ZoKzZxYmdYQ01ITFZYWGg3eTBpY2hBT0pFVFpMeEZuaElwMVB2L0VJN2hBUjZsWFVPY09CCktqejdPU0dXaTlvU2hFVjRCOWV5SEdkRjkwUHlGa1hKNjhCRDJhL080eUl3bWFKa3h1cTljQ3A3ZmkybU9HSHgzRXRsTkRoY0xlVmcKNkNaUzc5eGt3dFBHU25la09CSGdvWWNHaS9LbEpIZUQyOW9xSUxYdDVUL3lGcGVydHRabVdaRjdyaXRTR1JFUjRaSVhnUmI1VHZtbApBamc3dDlsU2lpWUh2bFJUa3dPNDBmVWsyT3RHN3hHY2RQN0FoZENWNzNjaU1iVkVnLzhjR0NIcWRUaWFUckt0K2xPNVgzaUwrcW1YCnNlaUxzVWNTcDg4b0g1ZEZKemJqMWMvSFZpbWxMWVpoNzYzektwU0RDRUZPTU5WaXp3NjY2QzlxbC9UcmEwUHJBZzRUTXB6YTRtVVkKU0xsWXYyQ0NxQ3psdkhzM3Y3ZjVNTkd4VTl6dmtOT3JwZnlMWExHVVhlQW1WMXNiL21MS2hHWUhCL3lmNUE4anYyQzlrQW5UdmpYdAp2WmRWZ3FBYmRkZU01M0pHZ0pLb2tybW9FRGgvZmkySWFUNm0rdDF2OGNYSVFWb09qd0pNam53SXNNektuVHBlR09zU0p2c1c1RnN4CmliczZ3Q1k0VUZFUGJvWko0d2FzS3dlcndDQ3BmWUoyNWZWU3FaUzdpQXFwUFJJSEcwZ2FOaXlvYlk3Z0RoR2hkTVlSY3RqMUd2ODUKRDFqUTRjS0JhQklua2pDUndTdk9pYmxiUDJHMzUzZi9zNmludTZjTkhSUmRFN29iMjZUOGkyUmcwbEdQOUJMYjFlMHhaclVaekJvOApaNUhSdUR6TkdERjFmL2UzaG1VOWwxTjNjb1VOOXNaODJyTnkrWFVmM2JmbEh6QzJ4bkJhWll2ZVNrSlZySE55OCt0WWZFYVhzVGxuCjlVOFR5QXJPMU1UWFdQZkZqV3c5YVJYaGJNcmhkb2ljYzM0NXZSOUtKN2R3U3ZmWkhxdy9mejNnMFNzSGlmSklwTmgraWlSaUVYQjAKOXZaNG1vU3hidTErKzRIaWhRVTlMWWtsZ0QwRFdtSFJLZWMwcTVKellKUjRaSlJ0Y0RBSGlVRk9NTjJDaE9uRnREaUtqamw3VlV2ZgpXNTlFR1dHWWcvTmptTE5mR1pnYmthZHJmUXV4T0N0am16c0JlM0piTENXWUNhWTFpTGtkSkN4RGpwRWtDd2U0NGttRzBtQmtxN1p2CjN6NnIvWlc0b3pIL0tydjN4aThYYksxMkpmMFpNdjY2OFI3MTg2dHVBZTYrbStHUndqbkFNQ281SElNalRjM1F2R2lka0VFSTVoQU4KZ3E2c2pyK3hxKzA2bTVoMHVMRWIrUGQ5NzZRdmxDMWRQRGlDVGc5VDM5NTJXZjBDTGc1QktwMUNpa1h6Ui9NcjFjZ3d4c1hFeHhPSwpwZjM1OWpkd05pZ3Q0eUlNU3p1VkpsZHpRQmdXRTZPbzc0aTJOd1l0djRLOEx5SkIxTmlEZUVNTkRKRkcrenB2TGJqN3ZvNXdpcVVhCm9RUWp5aDNSUE5IZElhby9ZSDcycFAvaUZ5K1NBM2R3STVFeE9naUdnU2ZWcjl5OW5pM2FBU0orUVA1c0d6eWh3YjV0K1UzN3JmREgKUXFIczRiOFRrYkpvVHNwYUs1ZCs1aUNTU2c1VGcrSVIrRDFHZjBTK0lPZnpUdFNFQlFVM1RMVGcyLzAwaVkzOFc5ZThFVHNzWTVhawphMjg3QmNtWER2dFdXaUJlYVZQVXE2NUdKWWNQT3IwVTZtVU9pKzZvWHg3VmhYa1lSdHUwRzJxT3VncGd4djEwQSt4OUE2dlJ0cmNxCnJWQUY5ZEN4U1k4ZlJsQWkyQW1tVzdTZEhJbGU2ZkorakdyQXRvUnVrQ01ENTUwNE1La3hVb0pac0FDd3YzanI5bDZMR2FrVnlDOUMKcjhHTlQ2N09SSnVTRUd3YXBWY2tQUG5pQmpVakE1Tzc1QVBpTk9TUHRza2dxajJyWWpRT3JaSGZXMWN2ZU5LRkJaUk9rbk1CYTVPQwpRM0tZSHJiVjBKaHJ6QThvd2NDNUxZbTE3RDcxRXpNckRyck9Xdmg3Y3VEKzBmMjZGNGR1L3JhcmYwVDdLQWFFWWUvZEMrNFVIeW1XClkwNTZZOEo3bmkwWGJYNkpEcDFicTBnZVZuVUU2Zy9Rcjd0Z1JKQ2JIS0RmZkoxZkthSS92L3lLSHZUVVhaUW1qMkVERHhFVXRBYXcKZjRoNFFycE5TRUN2WGhySy9pRU1YZzFQNGdqUDNhNjc3M2FSVi90WCs3aFhUcDJyT2pyMjcrMW5UdGRPay9nVkZ3Y3R0VzBOUGJCegpac05UN0RDVENXc1BOZkZmL20zb2FvZlRxVkNvU09EcXNHRmxpUVZHT2hyM2ZyaG5NM25XOU92ZTlKYndNZmc3ZFd6c29PcytIWDBTCkpQZWdIOUJ2dUFiSHMxNmF3NEpteDRUNmhOdGV3L3VZL3VhUnk3R1RuYXVPdk9RdWtZS2NQeG9hVUdxVlBwL2pHcnlmL3drRWVRNEcKOEhEajNUdkFZN0RSM01PdXRvT2NmTi95THUvMERRRzc0S0FaNHVCdzhqTnIwZlUvUUJRZXBXbFA1Q3YxdjE2NjZwakRpa25ZNEkxRQp2Q28yRGpac2c0YTdBY1lWVi8xeXBuenptMjA5aS9jQlBFaGlWdmM4RVpOYW8xQXEySHZmRlJ0S1pwYmp1NW5JcERoNXVmeFBOV3puCk9KeENvM2oyd0k3dFh5bk9mcjcvOE9ldGl1Sm11UHZVZE9DSGIxK2djTHd5RWJhTEVRQjFuU3N5MGhVN0Z3N3EvQklpUzNXNmlKUTcKRnQxK1VhdmpHb0xPWVdrL05YZ0Z0TjM2VEh3WXc3aEVScXJ3YjY0cnNNazIweG5OV2ZrdlowYnBkUTE2SGRsRFIweEh0MFVldE5OVwpncDVndXlxMTVaNTlwTitTY2puWTFZUmVTRGM1aFIzckRubTMxY0dSZ014NXNiT3FCb0xEODhjQ3ZGSjBkTnUyU3UzYXp4MzhzOXNNCmc4RkFybERCWXNlQjBUYXBvT2YzOVJZd1BmajZnd2NmL0N2RW1lSk1FS3ZSY0RGMXNYY3B2L1dYU1hiSStrY1JEZFo1U084NEc5YTYKL09UU1g4WVZ0WjV5dEdka2pNamFYbHJhR2hlanVqRWhlY3hTaUd2UXY1WjdZSHk5YnVJckUydkZjR2c2YlZ6UjNYTU1scFg5bndtcwpQVDA5M2VlS3RoKy83K2FMRERoZlMxQ0daZTVUamVoT21XbHEwOUV1cXFOVDZnQVcxb1IzZEtRdEcxTUVpL1pHTFNxTFZ6VFQwVFBnCkhCMFJOdjVVc0JxSlFVOHdnUEZqOTd1alFTcGc1SU9VUzZOY1BDLzF2cVFVNDlFRUlRempGSXB1bmZja1YvMkFyUkU3Y2FnNldzUEQKdzEydUtsT0NQRzhiaWVBTWd3MDZuYzVBQ0dZRVl4TUh1MW1GUXZFVkhJU0RTVHFIUnVRaVdadTVmZW1TOEp1bTViT2djTXJLc1laSwpNMUhUYzN6dUVKdlFlcXV1dmZXY3M3Mjg2a0RSVWEwc0ppWW1keGluN3dGWDl6bjlydW5hUC8zZTJ2bit4SW5ybFlNWktESlo3N1pCCjg4S2hkMWI2M2xSMzBja2xhSXIvRjRBTWk0MU5ITkU5d1ZFN3BVeUg5cTBhVWxMcWFoYnU2VmhZa3hIeE9hU2xiUmlYK0k0Q1B4UmsKbUtNRElzN0pEUkNjalVnSEFNRktSN2JZZlJHaVhHSVZFaXlseTFQT1N4aUd4d1ZoR091eW1YU215K0FYaEhNOUFHa2paZEpnbXhEegowMzgwR0pCZ2VBVUdhRzhZYmV5QlZNMkVYWmFHYjNmcFlkVEtLYyt1NjFJN2pWWkhGOXkxTlNJc3o0NWQ1RnhQYW1Va1FHelZPT2FBClFtbmpxeU5iZXhUTGg1ODZPZVlIYkhOYnExNy9oVEpNYk5JYk9PaXl0SGZWblVsVkh6bHlSRDAxclJXRUtxaWNmdXoveVhzVHdDYXEKN1gvOHpHU3lUSkttVGZkMG85QVdLRXN0Kzc3SUpnZ280b3FBRzZqSWU0bytSVVh4dWFDQ082SStsNmU0SzY0c3lpcGwzOWZTQWdYYQowcjFOMjdSWm1qVGJaUEsvNTA2U3RvaUN2Ni9nMzc1UDIyUXltWmxPSnZPNW4zUE9QZmZjRFErL3ZDMnN1Q3l4VC9kRTdiUXlPMERqCnNRN25xVEIxR2FDektjRmt5dXFjNVZjWHBzV2YwR0xJaUhBSkdaWU94YWU3OXR5VkRrWFdEa1BpYVZpRE1JeUxhQUFpWWRMWDArN3cKUDBBd3FMaXlCa055MUVKVUErYW00ckN2VG5yUTY1dHBUUTUzZ0dFTXBpaGEvb0QvaGRDb0xLVEpUbXlHOHVoU3F6Vzg5UG85V2tzeQpVQVhEY2M4UTA4L2lUV28rL0hXUit1Nk9QVWE4YlAzNEU3bi9vTmN2QzFQeFlic2QyNWRLVlF1K09oaFJyNEZrUjRaVHc3blVVYXFvCk14TXJoTHdZWnVqQmRSMjkrbit3WHFoVGN5cWVCM05lOGxiZDlidXpTZ3Z2UFJ5VmVMWkJmZVAzSUU2NDRtRjQ5a3p4cWs3ZE9uWHEKMWwvdVQyRWFpWXJ0WGZKWG1JbVkrUXVRMVRtY2t4V1dEOVJaMFAxVnd4MVRPblVXV0VHZVhSd24yNUNlcnZ2MEYxbVd5aVlsZkJHRwpSZFFRZ3JWTENmdGZJSmk3Mi9CRDlKbjh5WU1wVUozb28xbmFBSEJBRlgzRGI5SC9NWDdCRFdXRVlLK2ZkSlduM0hYVDhNMVdHTDcxCnNjM2hoRnBWaWZpdXJ1a1JaNm5uNi8wNzNQZG1tLzdWcDQ5dTJEK0pVS21PYkwvckV4ZGhjMFhjUExYQXk3MlBybjdtY0RNaG1LYTgKdXlDQUlLZ1ZlMUpIbnZRVVpaKzZvZGJzN0M1emJMdkY0YkpZTFBvZGRlNlM2cmpTU1lWcjRYQzBKcnZXcVY3ZVlOQU9IQW9mZkhHcgowZlZzRG1Kb3oyNjI4ZnNBSE1lWC9nVWE1bmJqbFNRRTh6bkxoNm85V2dzRFVRM3FLV0czVGhjM2R0SkI0dGtvRExZV1FkSGFNZUUyCmFpTzZJTHJCNHpXMVR3bjdYeUFZRkNTTVBzeWNRekFwcEM0UkxDaGhOcVZYenY5QmZrR0ZraERzdW9PbEtjYVB2dnplODNaZDFrLzcKQkVLd1lDQmROMEFXbnpCMDhBWnQ3Sk9qSnoyMzRkWkp0d3FzYXdDWENiZmY5YVhQbUhKU0NYS240bjVaNWZwSUpCaWM2U3BBSlRHYgpJSFZGaXNkdFBYazJ2OHRCV1hGNWJZeEpKdk9CNVF6VDJWTnRFQlBmeW5lcElLcVA5aVEwSHhRKzNPRG91T3JKMmROcTM1QktVZTNPCnlaa2ovL0pWQUdzRmpkOWRkcEFyMmE5emVGVlllWGxYalZBaEJ6VXhFVDB6d1ZWU0lyZnRhWWlLSWs1ck9rRXBaaDdiZEpXUkFrVDcKbk8xVXd2NG5DRVlZZHNWSkcvMzZ6aUdZUHNRd0RDV0d1L2lMRzduWUJpcmlnNTBLaTd4clhWSmNlTjN1UlEvNnVLUnl3ckNxQU1NTwpyTXJadkhIc1ZtRmM3MGxnTVM4K0pIQ0V6cjMxNy9VV2I3OHI2a055TnMyT2I2ZjA2bDZPR1lvVkF4UlJBaGFaVW5OQzV6ZDBkV09iCndzV2hUS202Uk9hMEt3aS9iRXhDMVdtK1Q4elJPcHdwVEJOLzFnazNyZGVuNlk1OHQzSzJTZjVHUzRHRW5LR2w1UjRYMUR5L05iVHEKY3NJTjdJaGprV0hsRUttUlIwYld1OVMwZzg3VHFaTU4raFkzUkdXWDRFWlhGV2RUTHd4MHhJQnY4Q1MyVDRhMTk0N21BSDUwM0l1agpqaVZJMXVFNXkrcDRuWkpSQjNMZS93aXNHRjUzQVN6bXJwL0NkNis1K3JsQWtoVzFFT2xDWXFMc0hkWTlBZUNzclpsTDlibXgyOWd4ClZ4R21EbitFQnljemRIL25YMmluTE0yaG9raXFkS2xxSGhnSkcyS3orditVb1VpTU54cWhzYmtabUlUZWhhRElCZWQwbkxodlFYd0MKOUJUTkNjSXRaOG9YVnc1NkkvZ1BFUzlaL3BGQjJwRDNXNis3akFoZWFqMVl3K05Tc1FKSlV4T0VFWklsRVRJbFYyRFhNMkVZbDB5ZgpLMDNrRXFiU2NUM3RELzhiQ2tZMDdPUzk5bXF2cEdCVXRTUUZDMnFZTzlzb1dIWC9EL0pGWFBTSHRnREVtQ0p0YjFmc0dkTzFybUZWCm8veFpkTUphUTFmT3N6dW1QZXJtUUhuOTFxM1QzanI0VGY0b0dhdVZnOVA5VlFuYlY3T21hL3Jua1pqRTRTY0tWb25KSEtWcVhVVzMKYmlzOVJWcE5mVlBrM01ad25wY2JmMXdodmcyOExCc09GNUtEUmptMSsrZUZ2VmlqZ0w1Zjl1NjVxdFNPazJHRy91WEJYb05QMXdMNwo0cWFXczdpTWNEZmQwTU1lbHByc1pMd3FtWWExT3RYdy9GaWlZVFlkVTNMVkw5bCtlYklSaXRPQnRVQXlxcGhPSUY1WWphazlTdGovCkNzSEF2ZThhOWRsNFVVYzdRcUdGWUtCSHhPOWhGZnhGUmVjMVVqMWVISXdjd0tnY2NtTjAxTjM3YXFlS2l1UnVDL1kzdWlhWG56TkEKNXY1ZjNscDNjOThISHZ6SC9mY1JtKzF3dUtIclN6NWdCQ0ZqMXU3ZHNmS3Fqa1ZOYnlYTEFJck5uWXVTV1hMSFJSenJVYXF6cmNzdwpuR2FycXFycTYzN3VMSGZYT2Jndkt4NXBqbEpBZkc2SnlxS0sxbVNiNnRLOW56RTNwdTIxeW5QNlc3VjJhRVV4MzhGZXd6M0ZydHkzCi80STRCNEh5QnAwOWpQSDdLNUxNR3ZPQnJsWTFEQ2NYWGhsVGJNdG0wOW55Skw1anVER2RHSTYyOEhEeWVXMlJBbnBobWFiMkYrZjQKSHpFUkNXNTA1UG5kbkUzWDJrQU1ZTS94UXZuRmVGOGFndERBWkh4QjBVeTRXck1BbEErUmxYdld2THJNQUhPS3o5bnhyVmYrYVh5LwpLNzMzRnkxYUZObXI2MHNlaHZFL3N2YTlUeU9Tc21EVW0xbEFjM1RUc0lBaVJxNzVyaDZvVEpweTV2TWlKd0hZSFdjNnFjTTh0c1UzCkF6R3FGa3l3NGx5WGtBMHdMMitOMlpCMXVKNTM5NGNVaU1lNk9xRXNaYzlMbGtORG9iWlY3L05mQWpQVTdRSk5DbmJHSTdwaFhCNlMKS3l0YjVWcEQ4cGtMandINHUrSi9Sc0d1YTF6RDh0RHNGK3NidEozMHRJYUdoRnh6aFVjdEtpNGtYNmhjalg1UkxtSnlGYTFBeGZqOAp5dVltSjM5RVMyNzR3NnB2RHpRTXJnQzE2WmpYbEVxakhFSGNmd0RLeDFYOWUwZlhXMzErR2FiMS8zUEdTQjlreW11cm1iUWtjQnRLClZNYTQyazdmSlhOeXdheHM3cVFXYk5Cb3lQWDJFRW9UNGdmbVJCTFByRmw5Nm5pU29yUmhYMFMwSEJZQ3JIQ3BJSnBQUEZ1YUh2ZEIKekxqYVlXZWYrS1pEV1hpNEZTUVJDNnJZd2VldjJkOW9mUGF2NkF5RDdCRjUvYnlNVGxmWHlRRVZ3M1ZockJlalMzS1pLRDhieGdJYgpack1seVE4UUd6RU02L0ZIRldkelFuUjFvaVhHMU81c3hQOEJmaTNFS0VUZU9oejFTQXQ1aW8xbVZvVTJuS2h5Z2VCektWU3FpMUF2CnMwckJzcEcva3IrelJ0RTE4VE5pa2FGbzdRRlROQXhhazE3MC9HT3RObm1MM1BUTzI5Y3ZMUEQ0NkszUEN3TDMrajBMdC9oN3B3RlUKOThvYjllYVZlUWtBOGRXZ0FSTnQ0QUVLK3lhK015V3BNcVZhaW51WXdQUVJSRmdpb3FWcEpUQ0VDSXA0YnZ5aHlKSnZHL0lBM2xWSApsc3o5VDBvNXhOTWh4RmpDaDhDellIRk1ZZEZmSlE1RHlaOVpLMDNNRE5ZRVdqTE9LNWQ3dTU3cVNGZFZKa3ZQeVJYSmNOWEd6dEdRCkNsQksxN1FydEhjRld6aXV2N2pyWkNyeittQmtnSmRBd2N2bEhKM2FqaFZadGw4RHNRMjlGMUF2MUMvVkZYR3hYakNYR1p2TklSQVoKMUNmSHhyMzdCb0IvYVltaVVRMWpqa1lmdmFhb1ByOURheWVzU3FmakkwcEwrMjBlNnNFSndaeTZHNzJkUHVZVHdkSmhwenpEVWFoaQoxYlZoTVRtZG10ajQ0dHFNYUlXQWJuOVUzZmlhNnFScXBpSjRFRmNFcUVETjMwRnN3MmZMY2FuUDJkS3M0NStxK0ZxSTA4cnlTcGN0CnZiL2ZHUlN4Z0lwUkx1YzhuTDZ2NnEvSW1OTEZqRWdXMVI3UmI5TnFQUlVkbWhtM3grdFJRcUlEWlA0b2hRQ2Fla2pPSVQ0WVQ2NUkKRXJsV3FjUUxheWd1aFpqeno4WDVOMGI3SnRqQ3dlSXZYKzhxdVl0NythNXZnaDhVU2RhQ2N1K0YyUVhvMmZqdFpVWTZzMUV3U2tJUQo0QmtVMnNGVm9CVmRhcWhRbTZETGpkOUhtbHFIRVhWUU5UTi8rTEc2TVQrTzlvYS9lL1NVOGJoTkxLK0w4d3h6K2piM2hLaTRwcnlHCnVqRXIxZjQ3aXZtNklNRWE0MnE2bE5xU2JCTUhicENHeE9Kak5OeU56dGNHa1JpSS9lTmxZdytsZnYxeEtVRGM5bUZGWlJaMjl6NmsKV0xpVlVndzhDc0l3eFpYSFRscjYvUVY5WWU1ck95ZklHM2IxS1ZJbmV5Tk9sU1h2THBlSEU0YnBOTWd3aFJ2VWlnUlZCd0NoT0J3aQpVZHJLTUpDb2NGcWczVTIzMHA2REhBdWZ6OW0rZUEreHF0VFBUQXQwTlAwdWZtK1FKYmtMbWdsdzBVYkxsTFVhSVBqQjdlVEI3UzJQCk1GR0RidThMaHNLWExBQ1c0UHM0K25MNGtYRGh1MjVMUDFxYSt0N0o3eldPVVREZDAzSG5Fdk5zMkpuNEpocUlFbHA5RzRYYTFSencKQm1iVE14YVFmb0JPTnd2d3VJbndTeEZQTE1QbWwvblREVGpiMk5wRkVlWGxvRnE2ZE83Y3VTa3BLZkh4OGFSSndOblNMVG56LzZLKwpzR1NjVWJkWkhZcGxuRzZvZ0tZcWlJMEZ1VWNIdGpBSERta09TdzZNSVVxR1Nxa2RhWGRvdndxMmNQQytraDNFd2hxZGNlcm5XejlzCnBUdS9DWlF5OS9tdmg4TGhFZkZ0b25lWTMrUEdLa3AwREJsRm41MUVjaGFWRXdrakFnWWFTeW5reDR1b09SWjYxeHdnTnVJM04yVGsKemYzV1pyRVV4c3daT0hDZ0tlc1FXQlF6aU1lVjIydTNzdzQwdlFmazNnbnAyWnVDQ2thTXhCSEZWM2pLbmo1MjdPbUJ1ZVJZZUtSbQp4UTBSbEYrZ3lkYktzblpvVGc1Z01GTzlOaVBpWTFkblJsQnh1L1lSR1RzWWxER1piL2ZpcjJ1dGYwVTZ4elBIdWtKZFJaclpiWTQwClYwQldJWGdiVWlLOHlpWmRIUjBzNUpaN1FDT0FvQ2xPRXRSeUw0ZzIwSEVSK1JFUjdXN0dzUFpLc0lYamRsVGxZRWJPYU9lSURpbGYKMnkvTUw3Y1BnWlB2bldkdU1BV2pDRGJGbEdGU2Z3MmhtQTNyMm1aVUVvSGI2QWwzWVUyMkdLK3RFWnBWTHBmS29xTDhxc0lhMTAxRgppbDhhWjJkbjU5NDFFTmMxUXpYUm1KTHlEanNyK3U3SDQvZXU2NXRnaDQwYVhZQmdHWTFSalhwL2ZQZElVL0djVDhxRHJYdnowZTBiCnNQSWIzeWZlbEo5VnVGcDJSVU1VcnRjY3JxMHY3dS9IcXZ1RVkwaXhZRVN4MTh4OWpVV3QxUFl5UVhmRGtBWkdVNWprRUNGU1V3aWQKQzRkdmppQ3lhMWZxaUkwb0UwRXBLajBld2pDNVNpUVgxSXMrbVUwbktHcUlVTGN6TDZ5ZG1vZ0w5MnpKeWFGTE9XUFRsa0hqaGZqVgpkdDdZODh5cklnOG0vNkNwS0QzaEF6VVdkWjg5UUJaVkwyRjFkb0lGUmQzVFZVL2lrbVFuSmtJVlZDWHFzdlYxQUovY0FUaWd3d1NKCmZZa0JCN0R6cFB4TnVoUFdQWDBON29nT3ZJRENERUl5NzFNMVY4OS81T3J5OUtDMUdWMVJZWW8yWVFUUmxEOTloOTcxRWM1a1FoQ3YKRW9kbWZwWHF3dGlOU3ZYZVVqUVVwZGttWGlxYkJVMnZCWTk2MlpDWkxOZTdyVU1yUVExdUt3dzFRMFVEbkhiNE5WQ0ZOUjdsZ2tETQp3N0Ftbm9jdzZicWl2YWlCTHRoYXRMT01xWFpKc0lXZjdnblFDMkR3M29lbVlVcnQ3K0hYaERwM2hZTmNKeDJDdnBLOHNRRFJrR1V5CkE0QVppN1NoRC9ZUVBLVTB1Mk1rZWxIT0paYjd5Z3MrWDJTc2dqdUFEb3RKakhaSFoyRXN2WEh5ZlQzcE1kNkVGZkJXS2s2ckp3SDUKQmViLzNMbmFxZWwrNHJGQU9hWm9pSTVHZnZIWkFOUEJVN3BvQy9IQUVnakY4aXFTdWlvWEx4VngzaGlHa1p3eGlXRUsrQW5Nd1FwVwpsdzk5eEdhbzNCV09aamNmTGhWK1BWeDZyTUV2QlZjMzhGaTRBY0thbXFScG1ZREhZQ250S2tsTkRlVXh0ZyswUTRJdFhDamNGcVFYCndOZ1o1bFBuMHVVY25PL3R0dXMwakRVdzhDTkFNVW5BNkI4K1BJTmhEdXM5NVpST1QramhLWGkrbnBLRXNxeThuQ3o0anIrNzZDVXMKMHFGRTd3MklpRFZDWStHN0dWdXcvczA4QjJHVzZaVlhXL2ZIWlFBL1l1T1dsU3ZTR3cxYk1mVVErUVdremNlK3NDR21MTmhVZHlJOQp0SEdmUmR2aTN4eTY2YXdYalVSVXNhVVFZSmdsT2dPK1dSN2E4UCtFWmVldStHMklXQkJBVGg3VU5pdkU2ckZUak1CQkdJWVN0Z0dMClVOSU1leWNXOTFMTGs3dlM5MVB4cjMxSldQc2oyRUpoeitMV3IwL1BQdnA3QWhZMER1bTRZa1J3ZmNzbUJMS1dCSEdKWWlFcGs1NGkKcUlUMW9JSVZFd1ZmOG9VdlhRT0YwV0NSck1hMHRCNXBrUGZ1L0plMkJRNnNySUpOeHBKKzQyL0Fnam56aUg3MVZDY0FNODEwSmZsSAowclFPR0RMY3dGdmcya1UxMHlZdURjUWtlWm9KUldPSm42azZMaUxrcFBwSE5Nek84QjV0dXRNQkZnc1FGYU1pUmhuMjBwQ0pVSUxFCi9oT0FsdkJGSXRZclQ0TjhMKzMzSG9yenc1ZVdOdEJCQi9WRTFNYkRkaERRbFkza1FHZ21EQlBDb0NzVmIrcFJ0aXUwTzRJdFZHMXYKa1MrMEVEZi9YcHFHeDRPRkJVbUx6NkJyUkdzSkJFbld5bTdVTkNvb293SUVwS1ppeUY2a0d2Ym9XTEpRK2cra1UvMWlSZ2Nmd3dOcgpvcW5tZ01XbVN5TXR0U2F0aDVpVDBPdjlvelZLOU1HK00yY09IWmhSMFRNL0g4MUR4QXJ3ZmczR3dKQ3VMMUgrdHZObEV6YmRjaWJqCkNBcVl4RlFGc3VzT1hFcVk5eFd4d0pCZjFRblZjSmc4RDcweXRuQ1VnRlNrSWdZU3d4UVJPM0MrdnN1TU9jM1FiQS9JRmxxS3NKYW8KVStscEltR3VlcFF3OGpFRUhOcUF0Y1R4cFp3bERGTkJGNGlLYW1uSzJnWGFIY0ZVVDRZcVZDTzBvdy8vZHJvcjVSQ2pJcXhpYVprTwpSUEFaM3c0dHFmMVlYbHNTdHhhUlF6RUwwa3lGZVQvejhzb2pJaUxLWmYvSyt5QzFxQWlpVFNFdkREUU9qUk9NOGQ4MVJKL2V1WFBuCjJZMlo2dlg5ZDFEemNMcDByQytpRW5PK05iZkVMd3RKSzErMkZoYjFnMlhQTGcyc0krVEtKaExXd2JZemF4UDg1MTdjUFY4S2MweDAKK2dHK3ZuM2NncklJQjRvZEo1VnNUaUYvbGc1NnFQeVRiTVNMeFFDeDJGcXNqMVlUQVNPdGo1ZHc2SEJCS1RUQWFWZURIK3V5amlkRwpJblhEV3Jpa2dxNlYwbnlYN2N0R2JHOEVXMGpEZHkwWTVLRUcxZm5nZGhPcUtIa2VaN3IwMDlRcGFTNVpWTEUyRzJwSVU4c0UrRVczCkNIQU14UXdDTlB0cU8xa3E1TE53L1RPdnB4UXZNVGlyQjBjVENiT1VRNHgwRUEwYkQxenN4dExObTVkdTNsZjAvY0F0Ukg3eWUwSWUKNmxEUGo4L09jQStaOEZ4eTM2MC9FbHZweTJlSStRU2oxdmc2bnFqdGNuZUFndEUwVlQ0YmFJVjNsUm1uQStxSkVvWnpCUmtYajNRUwpMdVhON20wQmgwTXlFMVZMNTBJS01STDlLdkJJQTdjdkcvcEVFelBYYXZhQ0FaSmloeFo3QVFxdzN1OWhvbUVOZm1sQzZlMVl0Rmh5CnhTZzhoR0ZBSkt5OW9aMFJiQ0VHRnRxQTYzWHVHZ2x1V3BGYXllSlVZY2d0a0FyWUJ5WkNiOHV3WmxiYWdMNHJMVkdPQmJVTWFYWVQKcWtYdGZVU3ZVaDY3RDFJK1h3SjF0OU9zZHFtUnpnTEtQUUloTm5aVWJEVE1HMFhFcHlkaFNENCtWT3Nqa212dVhEK2ptcmtydFdJLwpQSU1kWVphcjd3TFpXY1BvWnlJb3VhS0JWK0FRRllwTm5zeTRRL2xTQUJLbkhJODNweG5uR2lPZS9lckRreG9Qb0lnUkxVU0dFU09SCm5LVDVhR0MveTRRNXhYb1J3aHR4VVZrWER0Wnd0aVh6cGFGZWV0Nk92NmpZMnlXUGpEQU1VTUxhbVkzWXpnaVdjZHU1YTM0RFVxaUIKWndtOVdyaERKK1dUR05heUViSHVsTGlTNmh1MnVyaUU2NUZka3BiaDMvRVg5T1JHZm1BNnVUbFNDTmRzMzZhYUoycDkxQXZETkdPTQpOOFFEN2szaGdEY2x6NnVhdWxIUlF2VXpjcWZ6VXdVM3U5ZUN2bXpLSWJ0LzNYZWY1OTdiVkJUMVJza3pnTEg1YUdvZ1FuejhmUmpMCmo2eHVHcWFRK0lXSS9ibDJKVHp1K2I0Z3dVQU9MVEVzMUVqZ2h6b1IydlJ5WUlEZzlXcXhqcENSZkdiV25BYm05M0ExTVJJUGJ6eXQKY3NWaW1JTVFLeERwZ08wNGp3WFJNRGd0U1ZocThEanRBZTJMWUF0RHllZS9Ca2JIYVlTY0x1SHRwd3pSUzR0enlPclFWTVNCWG1TRgpzcldFeVZoV29Nd0NkQlhvQXQyclJjdlF3Snc3bWJ3b1dqZ3owUHdlWDZJdjdBN1N5Q3hrV0N6RXgyS0QzYmV2QS9ubG9OU3JyZ2I4CmlUWU9yWmx6dG16cVZJRC9ESEQzZS8rbExjYmlsZlAycTgycXJpOStrWTlPWEtnRE9vQ08zYUhWTUsvcStQejVrV0NjLzh1bjhZeEIKWUNuREFoS1dBaS9OMFdMczduTGkzN1ZlY3pIeHZ1UUdqR09RZjYvL2dqUTVCZEpvRkpjZnd4eklzQUMxbk1CdklISW1UMVJKc2ZyMgpGVWxzWDZsUzQreTd6bGt6a2lzNjZxVlpVRFFFU09Dak56M3h2aFFNK0Zra2tsWmg1NUJDck5wREZRbWJmSTV1aFJkSDA2aVdDYURpCk9BL082dXdTMVJ4TGxyQmNhRXRzbnh6SEQ3MHdZYW94OTVaeG1Qc0U0YWR0bGoyOHhxOXRWcnFKUDFXWlhCZGJSMXlPdnRzZGFxczMKV3ExVys5Vk5UVmx4Y1hIcU9MVXhkNVZKMkZoMDB5Y1A1RHpwZm1TNjlxSHBYUWJPVkt0aFNGaWFlVWRFdE5xRWtUWWVGTmt3eEF4ZApyV2JCb2xja1dpRXIySUhjTWVwRHdXcWN0K0RCUnJuYVE3d3Z2MCttY0tsRUJvU0JCNjNXbjI3ZUE2ckxXam5nQld0SGhUdWx1RjZkCllKTXhFVlZ4OWkwcnlWcWxLY1lTNFV4b2lHUTlwR1ZLTDhJdHkxSmhPNUV4UVo0aUI0ZlhmMXFOalpGVC9pZDFLL3ovQWUxS3dSWkMKbXg0d0NtRlhMM2ViMEo5RUM1NG5hb1dUZ21tMVdxRUpLVVhnNGtocnkrRE1wd0c0YWZpUDQxUXFPOUVEQklDMGhKSkdnWnNKMUlMOAo1bFVjSmwzMGNzVThlbjhjWDJLQVU3VW9QcEtteGRJdTF1M29UVVZUYTlSZkVkVGJYRTlXRjk1UTNuRnhOZmVLdkRrajI2NU9qSXhVClE3UGlHYzFPSEdTSitzVmpyWUFoa0dZcW83dFlZd0RESXhUUnBzY1dlMEQvc3ZxRXd1N0J2aWFXcGtWUUNRTlFQSFRzb21jMStuTXcKNEJTb2l6RUliNFRhWmxZT2RkQVJWOXVvaGgwbUV1YlN3NFlOVk1PYzIvRUJlRlF5dkR4RXZScmFseGZXcmhScytBNU03MjBEWmNiVwo1QkxxamloeE5xQVFHR20yYzYwQ2IwaWJvQkdCWTBWQ0ZiWENROTZnYzhqaVBxQUJuOXlqd0E0emZDVFBJdVBCWlM3b1RZbW9hd3BVCk4vSG5LZVJXQm50ZUduT0czQ0RoUDJoTjBEQ2xtbFUzWTgreE9RNnFSZWhiaG1Ma3A3K1YwTTNpdGhQc0l2K3MyOE1UN2p5b2ZtYmIKdGkwS2wrTzFleldNbzA0WW9uUlhOVWVEcWJsWnpjdmhqdHlSU1Bpb2sxRitvbUIyUXcwUk1JL01Jd1BvdVMyajhKVDZ4Sno0V3VvMApDaHkwU0pqTXF1MlpYd0dOSXk1amRha1BOREtWRytwazlqaGR6WURtWXE4MmR2bEIrb2E3aVdpWXg2ZFc4OTRpb0FvbUNGVkUxdVVqCmlxbzZnYVpKR1FGT253ZWdwdW04MlRWL1M3U25HUzZuZHY2MWdBM1dXcTk0aHdsR0xTQWcyU0tsSEt1bGsrV3hIcVZESzBxeWhaTmMKMnVtN0lyNmwxSUJMM2hKS3BudEtoOURpQktqU0pLaDBNQ1ErQVdzNGcwK0dSMGRoMUs3SHpvZUk5N0YvdGd4TUdLalhaR0ZJZ3crdwpDL01XdXAybWg4UytaYWVXT1pGNXA5MWNDMkVaMm44SlJTbmdUbm9nWm1WbFJiS3pLRDJjMkUzSnRGaUFqV3hwNlZMaUxPbG9qU3pIClFaWDRNMEJ6dTdwdTBQSENqRERXUTJSTHdQTWhuTmRFZ09CM0thQzhQS1h2aDlDVm50bmxRYTdKQytwbXVSRU00RTh6TjZhb20yZFMKcTVrSzB3U0l1c3FVSFdQZVFGY1E4UnF4M2NtRGt4OU5KS3plNVc4QWJpMU9LZHZxY0g5dnRDY0Jnd1BucmdEWTg3U3dNeEN4WUlQUwpJZlZnMlpFazVBS0lyRU9wY2JiS3B0S0NEV2RNUjJkTTQyQVZBWDZKbEZjMFdSVVh5ZDZFaWxwcG5KWmRTMjVyUE5vZ0VkdmxtcGVQCmRyb1g0UDNsb0ZmVWpoaGtra0U5TWl3dlM2cFBFWnpQdGh0STVNTGJERXJUUm85OWxHYVM3NEcwbVc1UXNvL3o3M0FWeVdDNlprdFYKNVh2N2RpWS9UVGZkQ2V2K25aZGhBVmcySmNBdkQvd2tUMDJ0andzN01qdFA1VExldEVPZzFBYzY2VFJDTVEybGVka0QwcXRMajdsVwpuSzVHWFJFSGhpcUZ0VlpOdUJiZ0Y5aDBtYVdwRGFldm9NMFIrZHc4NzBRajBZa0dzRmRlUld3RUxLdU5hRGN6eXJZbmd2VnZYV29tCmdORjdOMm1IN3BYWUVacXBtYnpTVWcwaUgxOEVSNlJEbzVLNzBTRURUbkRoUk9ob1AySjlvMllPVFVHcWJpeXhCUEVvYUZzR0tVYi8KMEN1ejAwZUFGWk44YUtUV2ZLYi90SmwxbWNIY0orbHdYcGFKeGdBZG1yeDQ2SHVDRWplWU5lOEJiTDF4S2Zwd09peDV2SUFzTFFGNApQTE1BbHJ6NCtNd2ZraUcvenliQzJkc05mVXZLT2toN05aa3hiMHBmbjNXSWNJdjhEQnQvS3JjOGR0ZDE0eHNYM0hvR29nOVpvOUFMCkM5WUVtZnNmc3ZWLzllYWk4elErbHdhNitSZzB4U25YRXF0WUVPWE5VQnc4R1JwS2hGUndWYkxxOFNoaGxHSEI5N0QvK1hRWGJCYWkKTW9PTS9QdWpIZmxnejdQTnY0clNqM2FPdUhxSG9id3R2M1JLajFRK1VFQitlWGp3ZWhWTldnSDhqTWl3b3NCNXdtaFlSRkRLbFdvWAppSDd3KzhsYjlBaUIwQ0V1VVg4TWZiTkEraURaa0lFelU4ZlNPS2JMNHJCak02MXRYcnJjRytGalRSb3NTS0FWRTJpOG5LSEdYZ3cwCitLU09OUUNUT3JLSVAvN3c1aVZqeGp3K0JzWmtqeGtqUGpGemU1VHoxS3pCeXovMXlrejJNemVadThKSm9uU1pzVEpIbEtVMHIyaDgKWitwd0RuTW1mbHZKN2F5ZG4zUG9sazk1cmJ6amhKTStRQzlNMURYVktHSGdRYXYyeDdBeFI4QnFEWnptcGNhUFRoRlUxZUhWY1lsUQpGT2FLdDNiMFJqN1lFaFYwSy90QlFrTUtIK2NxUW9rVjVKSUZqbUZFUTVPTUkwNFl4aEhia1JQV0VqSDcyOE8rcVUwV0ltSzBjeXozClpPK2pMdnlVZnBvS3hiS1lQS2dsM3BmTGhmenlLNVFZY1hObzhQNURxZUxBcGFVOVhDSWZyaERzd1Nza1VsN05EQVExeURJK00zNTgKRktWSEVVT0QvazhPbHNlMU9nSFRpNXAxRFpXeXdkSDFOT1dZTzRSbE94aGdyaUF2VHZKZEZNRHpOSldMYUZ4NlB2djVrc2NmUndWRApzUE8zOC9uaHIzOXdlNGNuajNGM3A4UEdhOHNvb1RDSENpd1FvNVFjT0lDem0zeXAyYmRla1pMeXJKVzRreHlzRFh5bG1xcXp3d0V3CmpWRlJyZzBZdDVjQk9vUFhLSzhnY3NTYXFrQk1xNUZEc1F1Rk9mZzJzWUlQdytsVHRLRnBsY1htM0M2dm93WnorK29GYTA4S3RsRDgKN054Vm8yVWpWRXR1KzhVUjNzUkpUaFhRNkFTRlFLMWowVzlYNEoydkFZVlZGUWlBcUtnMitjUDlnS1FKQ1I4ZUlkZnZaOUdQODJQZgpNcTZpeHd6Mmh0RVg1Y3NVQ3hNNWxUNWFHNmV3ZzJ2eWx3ZVgvTnlVbXRaZzBpakkveFlWVm1odTFrRHRzRUxTVHRmM3JwZkpaR3lnCkZZK3NpcW90Z2MxajRIRlVzYTNid05oNy9kZGhWOSsxN1pQeDJRbjVaUTVYSE5udVRMbld4RVFaRlZtd1kwdzUyV25ZOGwwcFpZcGMKZmFYV3VPa2V6OEVNZFVkZEdiWVNmdUMvTmNmVUNUQjNDOWdmMGVRQVZxaStISmlWYW95WDhRNTduQ0s2Q0J3dWNFZHEzbXZWT2FrMAp5UzBSTlFtZDJiZ2tTY0tDSVNSNUIySWl5c2dyWjlkQ3FHay9OYlRiRDhHR2krZDJNbytXRFJLcWVyN2o1THc2TzBlN2xDVit1WWhkClJud3JRaWVmMGk3TmhhSm9kdWdZYXZkUjQ5SERoRkY2VVlJeEVzTVlTUVdrRnpRS2dsc0hlUldBU0VUTXRUWGZLbzVsKy9jOVFWVHgKVk9UdC8zM2swTDR5elpoS0wzZkRzTjY5ajVQN3FObXByaDNXbVdCNzcvajQrSHFaVDA0NXBxNWlPbFlUaG8xNWZBbDhYM2VxNDRJbgpCUDdGaVpGVHhRWkg1NzZyS3Z2RlZic09BbU5MOEVRWncvU2ROb3hKSXd6cklMeXlzRmVCT24rUTFlN3J1L3FXVmE2ekhXc1ZBbzVyClZsbDQ2SEVLY3ExZzM1RytEL1NYeVVTOFBWcERmRU5ISENzN0ZSZG1qeFpGODlFTnJmcU4zYlM3dVlhTkJMWUlFK3FSWHlOTHlRT3gKRVVVRld0Vm45SVdnTEdvMzAwQzBJeFB4WENDLzZ1RWRISC9pMER2OVdtSVhhakd5UVVOWUx1Q0lWZWYxQnVZYUNzVHgwZEFqN0hPcApWSzBUdlNVRVBUaHBoQ1lWTjBuaEF2Wmg0SWx1WWExZGZuRGxtVVZrbVpoSHR6OGUvMDlUcFhzUWVmWEkyMi9Qbm9mbGhSc1M4Z2hnClluejhZY2pPVmlqUVZnUSsydGwwVlhjZ1ppSjgzNVQvNUxHcm9jdTRUSyt3c1VFVU55cFRKOUJqTS80d1F6YjBBamlJTmFlSkIvYjUKSEUvaXBMcWg1VWFBbDU3Tmhla3VrUEk3UlBQYXQycWo3b1Y3TVpwL0NPQVd1dmFTWTBDYXNkYkwxc2FCSVJvWUkxVElrNlJlNWhCcwpRQXpHMHNQZzBvOG5hb1VSanBIYllDU05wQ2JTa0d3eXRLc0t2KzFJd1Y0NFo0VmhoRkIvNmh1Sk9kNXdya0gwYW9sMjBhUmRtcmpMCitFTHo3V25NS21YQWhrUnR3bGFIY2tWTkF4Z2hHNUV1K01ndjFwM3lZOTZpM3o4emw3NUo4NFFwM0ZMK29WUFJYYitSdkFvamlwVDkKczFXNXVyUy80Nmd6QWc0Y21OUDcrTno5ZGM3MHNMRG1vdHJhWVZvdDZoaktHQWk4MHpSSWthbUtLYW83TlhiRldWaVh0MERJQ1kvMQpWemVwd3hLR3hrRVRISzdabjlxZE9EZ1dTN2ZqdWNSRzdGQ3l2OGh3VWxtWmFMV1RVKzNiUGZiOVdaNUtGYWJReWl2MXoxU2tzSWNICmJJRTVjNzV0aEFsYmd5ZDRTYkhMcWdsandLNWozRmE3WG1PUGQ5dVN2bHJWWmd1M3UwbWVDcG5sT2w4SkVBRWJXVm9xRVNvOXZzNUwKVFVTMmM2RlMzbTVzeFBaRHNIRk1JQWdnWWJSaHJDckhsQlBzMy9KNmRXNW5zOXZOK2xRczIrd1JCSSs5bVhoZUFmMVNzSTRnd1NRNwpNVUF3cWI4bWFDTksra1Q1STFWMmM1T25ZKzdXWmQ3Y1VxWWpQVXBhMmxFN2RGeE1uQ3JJM3B4eC9kNkdxRHV5Y2lKRS84SCt2V0hnCndQUzR1TGpOaEdVU3grd0Jpc25sUmR3d1YzaVo2Y1ZYcS9WeEorOXpPT05GNTVhNnVyaXdHb08vaG5teHJGclJPWTNoQkF2b2U2eWIKZFJyS0xTVU9WanlWYURYaWVlMmVkS3IyZERYdytBbkNSaVpvVG1heWZXVmJvT2ZieDBFLzVyS2tjcXkxR2JWTVFtRWNRMXFMTUYrQwpxUENxRDlSTGFSd3RJQXlMVUtnakVwSVN5d1JJTFEyc1RYZUNvVmxBRXhFSzFlM0hDV3MvSnFLcmY1dVhPV081Rjd2dWF0Vi83SUJJCnZWN3ZVMW9zRm9GWCtkVDZTRTFvUGt0SGFOS2Z0Z2hHUkNobXRINGg1ZVVIN01WZ29uNmd5b0FmeGMzdmhBZUlrdGdsVmk0cDZQdUkKKzVTNGNYOHBhZFBRYUZVbUprTGlvOU96SUtHaGdSaUx4QlhMeHNIS1dLMTlUWFVCdkh5VDJmRCt5L2NSbmgvb1pud29DdlNRSmI0TQpSMjFLems2amhNVHNxb1dOdzRhZFdjSE5tMmhPa2M0SndETCswUnFRcW5hYjVkOEJSa0VBakhBOVFBVG1TVjV5REVneEdoaGpUVnlpCkFhSnJqY3FhMm1hSTdJamxETm9DNHkzUjlubzlqQ0FMSXpHWU9KS09Ed05zNUxLVDE5S2xkcEtPMkg0VTdCd1Q4ZWxkSzI5K3ArMkgKdzFyMDRNVjVpQnhlNlVVQUd0R0JUbGdnV2lGSkdIYlZxZ0taRnBLQ1hZR1poZ0VGQ3kzUnQxcUhPVnA2c3lmZGVOQUM5cnRLc2dHNwp0dncvMzNaZzNaTyt2Wm1pYk50UTdzMnZyNGIzaDRCT3A2NnRBNkpqelVWeHhFZE1yQ2VIVk1pcy9Nd2JvZU9pR0Jma3hxNU9mZkxnCkovSFRiWVNydTBYUWJiNy9YMDJtZUw5QUdLYy85Y3RVM2RIdHJwL3JueVl1RmxxSUN0bU9NZHRxMVRJWk9SK3VzdWNzZFUyc0ZtUmIKR2huUEVVaDd2L1U1WGlvc3NNYjVGZWsyMXU0R3M4TWdFL1ZFd1BRdm43c1Y2UHFCeHhkL1JpVVhxNFJVS0pYTGhWSmkwM1p4Ti9tVQpSTUtxc1NNc3ByMUkyUCtkWDFNNXYrL0hjMWYrRlJpZDAycFp0dGQrdzlldDlLc0ZRZFZxZ1Fia2JMREc0UitCUDJSVjRnUFRpbHNVClVTL1hRR0FrMXVOMHhZc1ZqenhHckU0NUxDVzMwUDJKcWxkZ1BrRFdLRnIxcHFlcE9pdmVtSTBPblRYODlPMlE4bDFlUXg1a2xlUnQKTkVOY2w1M2RBS2ZvSzE4TkR0KzI4Ym5adkJPU0dqcGFiVi84TXFCUG40VWZsUTh0bDZLZmlnV0xCeXhZdk1VcWdtWkVWVU1TL3RQMwpVNlo5dHdhZysrVVkwenkzcTVIbFBGRGJHMHpSUjhqbnJJbFNHK3pQbmJzVlJVTXFKQ2xpcWtmUWxFUW5CanFjRzBiSDBvdFZNWEV0CjVrdGRwbTZGUzQzL0c4RjBrNXp4ckExMDk1azIvdlhYb3hXL3dEbFdxRDkxd1hxK1FUUkdOSU5ORi9TK3BOU29pd0Nqb0FOYUFtakwKTGxETy9TL2gxMnlZTStwVG9QbFA4UGlqTHovNndwTS9ZWUp3NGkxWVJVcnVmZFUvdjhya05jeERqaUhGc0NUQWdmRFRweUIxWmlHZgpCOUhHdDJwQWYyK1M5aURsRitDWUxtbUdDdDVaeVYrLzg0YU02MjVlZDJhNjVibkhKWDVobFp2OThGR0V3dlBZS3gzVzM3Z3NPZzdlClY1VHZ1dTBRR1BwL0VUeXhTNGo1dXcwMThjb3FBNWlnS2o3QmhLczJkVHhmMXRQNlRJanFvc3J0SmhkZzIwZ01JRzdEWG1lTXpVaFgKTWFyOXhCSC9HTUVXZ3NxdWRUMGZlS1ViSFlabCtKTDlObEROcXRvdzVrZmNBSUx2WG5ZTWJwWElNWmJiMmpVVTRMZ2cxT2RySFRqaApRZ01OOEdaUXR1WllLeWlqVmhOVm1aOWpUYnJwQlk5VFRTZ0VLdC9pcVErOE1GRHNCSEJ5OW9kd3l3cVYzTXU4T28zWVF3QUdXaHVSClNCWVlGVk52aHo2TEc1em1EVE9PZlVhOHJkbUpkcnMwOWd0SHVtaWtzY0JPSGs1NmE1TWZ5TXJMR2c3TC9sMGU5TUtNQ3hhcnYwcnIKNUdtSTBDK3RqVDU2STY3cS96TTVuVXVZNnJ1ODZuUXZPZFpNbkZzY0p5WUwwVlVHRTNnVkFubUlsNmZwN3o1M2M4Q2MzNExNdzNBVgpMdkxPYllHVlRwclhFUWdvdFIvOEFZSXR6S2pZUWxWaWRIOE9XWFNUU3Y5VytHMlFWNEZkRnlibExPVllIeXlDMGFPa2R5OC9Sb1FJCk5ucm9zOXBiTDFRdnV4WFFRa1NmT2loaExhQlRiUVh3V3hxZy9EWEZsTUNNSitTWS8yWDg3R1czNjZQQ21JbTRkdHZaSitQdS9QaUIKcTVaMG95YjFMYk1uRVlZUmNyMTRKK0ZZZ0dKWmNPL1Z5Szlxdlg3VSsyY0FVbC82ZEVJdzF2SVNQdHlmQk5raUZHWnMrOG0xWGcxNQpVM1ljN3ZOMjZTZHY0RnZ4UnBTd2VwaWEreGh4R05PaUVtL0F0WjdHSW9DN241SU9jUW53MnBZRkNzLzExd0FNdU8rWWdhdElxVW9rCjBsVVRUeFJWVk1DcWsrY1RNSXJEcVZkSUFTQmlIZ1llNmlRYk1YbmlXb0RNZ3ZPMWVuOC9YRHpCbnJmZkZsakt5Um45K0JKNEtIY1QKS0p2ZVpyVzNZZk9hREx1emFDQVlLZmk0ZG1ITGZwY0x6eisrWUxHME5Ob0pkek5mWDh5RVJSU2FScXg2Y1VFRW92U3RFUG9IdUJBaQptYlQydVNlSWZmZ1ZveTYrc3VmV1lxaW1WcEI1YURmN0VuZzFhZExQeTZWTlhhcjVyM3c5elFTUFpzS2RBWXBCOTZzaGRmRmpNd0JLCnRwMEIvVkxOeDdmWHdlWlJlZEx3S1pESy91YkJ3SHZZdVIzVmhmNUlJL1RaRVFFUkR3RzhBVWJDTU9NQ21QMUs3NFpGRSs3dU45cVEKaG1tUmlzRUhJRDB4dVB1ZmpXVUh4bDhUVXovU1UwMXMzbUx5NzNyWFlIMythQWN4RUVuallkQS9jZTRPRkNoaHhBcU02aVluVHRnMgo3R25lMW5hRDByWXYvOGE0NkNqaTg5elRMUzlLZGcwZS9tT0JUUEFKMFM3UGdVT040K0w0TDRzS2J6OGl2Vm15aTVtMXBXWGp5NFh4Cm5sM1NRc2xkM0FIVHlZdmxGeWdZaHpjWUZHN2RGU2JpcGFGaFJHcTNCSTJYVUJTeGJXZy9ORmFhdnBxeHBoRXk5cWg2alB1eDZHQjkKdlIxT25Ucmxja0hUaWFKWnc4cVdINXVZb0FDN0F0WThrVHQweU83ak5ROTlaNHJKemMxTCt5SDdlTmRUeSt4eGQyazdRcjR1OFYwdwpmTW9ndityQWp2emFTbys4RzdKeklmRzIxQWVHUnVWTnFvYUc0YXNHdnJ3bisrZlVIKy9ha1VnVURHVFAvK1BWbTdzWFRMVVZsVFJjClMzU2lLbjEvSTNTOFZESEUxOGJOY01aVWpURHkxMng5VzFYZHBSSGNRbUl6Z0VOT1doU0JrY2txUHo1M0R3bVlNYVZNNkN6bnhDcGgKSkpUaWI2azhYZFJnUjVpeGc2MlFXTTN0WkJxaml5WFk4MXMrYVAxeTNPaXZ1cFVESnhNY2doRGQ3RDE0OElBb1p3NTlpclZORUNYTQo5QjJ0Tjc4c2lJaFNsdENGY1pYdlR3aGtjRndFTk1CdzNxQWFCV3hFZkpLeWdVTngra0FlUnd2Qi9MOXo1VHpaV3lGZGJ2Q2R6UE5aCkNMRU1ZV0hVMUhUcDY0dVBSenlZKy8yQk1SZ2d1UWFPRDRVaGU2WTBsWnRNdGJIK1hFZVJXSG5rYlByYkVjNGZDOFByaXBxalhvbDUKYTRJREhoald1NVpZZWZEcEhlVGh5aHZpYzdPTVQvenJZY1AwVGxQSk5SNit3YjJnWHVzK2VUUi9kT1cwSGJKNE8xeTV1Q0g5ZzM1ZApSN2hNVTRscGViaElrUSt3djJISW9UWW4rQ2RoMFQ4amdGOHoycTZITWZPaTVCcFZFeWN5aEJmbGNrWUdYcENIeVI3NXJmSTFTb2l4CnFOM044V3hLVVNxVWt0OVNrS2ZMK1BaSHNOKzVTMkJxSERSNDVRSTZETTl6cldOME1IajBqNWxVTHREL0lKYUowcTMwZzl1L003UkIKVHM1VGw5MFIrM0hoT09ra0J3bXA1NC9Rbng4T25tZ0NOZmgxaEVTU2VORTRJZzRNYnVXRWhRWXgvaVpDVnVsZHhGcU9iNGJ3Vi9BRgpLdDI5ZXFJaDl4SlhpNjhadVZNemROZE4vQTkxMnRSU3ZQMGVlWFhhc3pjQkhJY2VvakZlNDlFdjRUYzNFYWZXMzNFS0dHb21BRHp3ClpEZHFJRklCOHp3T3VkeUR0ZWg5N2QyeEE0Yi9zRXIxN21ud0cwYy91ZnVXVytHeE40aUdMWGdzOHNQMHIvcHUrT0tlNFlDeCtldUkKaGRnYjUydi84N0hvSVNjdnJKbUJ4OWF4VUZGMFRVUHZJNzNCNUkxcVNFRTN6TERwdHowd0FHSWtRcEkwbStISWJTUFBlVE8xdE5VUQpsNzgxZmtmQjdtTyt6VHRUV0I0eGdUUit6dE50eGpKbVJ2OXNESFRUY3B6TWlUV1F2WUxQcCt6UXN0V09weTY3aHUwWVNiT2x4cFY5CjBYdkhiMytzYzZHd2E0eHFqNXlBcDVOclVYT1FvYm0rSVFtVGVDZEpXRURCL09kcG0wSTVVNnNYQVhoSGRLdXRTbG0rOHVNYndlTzcKK21xZnozZjFsQnMzQzhsMVRUMzhhMVY1SHgyUHNQVzRHamZlZlh5N1htbEZGNSt4Nis2ZWZLckU1VjU3cHJOT0pZdXcyaFdLbk91Ngo1ZEVhWjU4ZUpsdVBHUnFYODVWamR1L0Noa21FWGgxKzBIS3ZudVpYM3REY1kvM3BSNTV1SHJpTktKaHYwc2FhV2RNZ3lSU1REa1lZClhPNDdBdmVzRis0K04xL3BUOEJyLzNTQ3NKYnlDM0lmY05tbW5vMndPY0FkN2NLWkNMMTJwVXIyMExtN2hPQjJ1NXNTRXlKNFlpTVMKcnpJVk02Yms2ZDZRaVZnQTdiNmplV3FIVjhKWnJrbDBIZHcyVXdkeENqNm5KUXcrZU5oTFRPditXcW5oZGtlMlNTM0NPL1F5dzlYZgpTYzV4VUhYYUh4R3dSbWlJOU5MdEhXNWdsTUN3SEJkSWkvK2pDUDNYcjhoZnpZZDBRUi8rNEVnOTdPMTdzc0x6cGdlaW9HK04vbmphCmczRGxDZDhTZmFjN0IxYVJUZnp4bWU4Q3BKUWY3OEVhMXp1bWIxSXBJUjBtRThOdXdwTEhWMDloYzJtQW93ZE5mSG9jU3IvdThrOCsKVHpXZVdJZXdRWHRtcmUxZjNVNlpESVZYZ0M5REN4NmlZQXBMU3NuS3hRM2Jody9IM1dhbGtMM25IdXo2ZWZEVS9qd3NHMFhhMk4wUwp2OHptN204N1RNUkFOQUFjaVZMSUlmcElmQ1E3N2R4ZFdrRUh0dElvTUYwQkkxellGN1lOMTFFNUN5Q3puVWpZT1FUVGplRVNxNzZsCmIzeXVGeFJOVHIvU0FWOW9laDAxRzZLdW5IT2J4TEhCMXhiOUtwNU5vT3gxSWxDeGhPS3lGWUZvd2ZQUGo5Z3plbWphNjcwdXRvczUKMEVnMlN0VEFQbHcvV2NVb0dRWEhYcWlCK0wxLzhlVHRuZC8zMXRCRk05QUNaU2VJa1hhMzVyb2VQVDkwVHNCaEdhNjR2cnNiRHg5TwpmYVNnYzZHL1laZks1eXhIaHQwSlAzenRUVlZPWks3U0FReFluVm5ZR0NyeEx3QUFnQUJKUkVGVUl4Y25JaUg4NmpWdkZNQkxpazUzCmZIU0c5L3NJditvM3VIeGhQMGFSVzFwdUFCd2hYVGtSUjZaZ05MLzdMbG5TSVNrMzVhTzhBOUJ4eTFZcFFQTG5ZbUtrQUhYWEJHeFAKZy9pRUorNnhoQWFEb1lZYWlGWGdaZS8rdlVDN1RacVd4aXVYYnhnSmdUQjlDSzN2bzc4NTJwcUlVM3QrV1hReWR5NHhKNlp1Y2ZrRQp0eWpRMjhoYjdwV3hQczh5NFk1SmZtS0UvYlBvSXpvTXVEVTBYczJBby8vd3RUSWtPMGtSaDh1S3dWMXN6clJGTi8zaURINHFqUmMwCkNrdy9ET1VkQnFIeGVyRGFiK0FWTmU3c2dRTEE0Q01tTDhPSldMTWpZQ0xTN1ZxYmlPZXpFQW5jSFA0QzVHMllldjBaUzNDdDRaWWIKUGJQVGhjR2x1dy9tbU9QZUxUcXJCazV0OFVSc2NtNVpKNDVuR0tmWFlIVytkRHEyTGphM1Z4NGpxdnlxSzFtcjFkb2NFM2ZNdUlIUQpjMlpXVnZ5NnBxSi9YRFZxeFg5RzlXeU1ITjhOWUlOaWRmNG5lVy9jT0s3QkRkV2R5RDl4NUhlV0Q5M3RrNEhza2UzbWlXODJvM2xtCmFQVHNQd0p6SGcyZDM1K0lSVU5FNEx0TG8vN05CcjJhcVRFZDBBeHo2NXBVYUNBYWs5Tzh2OTlYNDFhYUVoTlNSRjVXbHBRS0dKaVgKRjZVSGd4eVZ5bll6R1hvYmd0MmtYc1dBQ3c3UDJ3YzlodVlxWEl3ek1uUmplcjNsR3BYbkU2UENGWk56NGxmOElwNk0zM0ZEMUdldAoxc3daZU5tZE1OaWh0bC9KN1pDM2hPaTlIczduWWV3dVVYTXV4YndlWHNiNVFubTZ5REJLSFlaV0tDVU04aWxFSkpFQ0dmWXJndmwvClE4QTQvSlhkbDdyV3ZHK3ZSUnJzQXJPN1drN3NyOTkvd2x3b2hQV2IzR1B6OTJPMHZRKzlVR0ZSOHo4M3JWVjl2OG9oNzFMUFJIVjYKVVh3cXY3Q3VlbVkrTjhYY213WlpHRXF2bVZtVnJycmE1YlVaZFRWREYzcGY2dVhVWEFQd3cwcnJaL1hXR2RkVjJwQmY5NWVCU2YzeAowV3YxeitKWU5ka2c4OWx0MStKb1R5Sno3Z1ZnaU02NEZPYldoeG9Sc21za2d1bjE0TFR3ZkgxeFRHS1I4bkF5UkJmR1IyeDUvcmNpCmlBRzQzVnAxZWdUbktjT3VQU1FZaEFoVzZMUkFURk83WUZocmdsMjM5WmdIUk1ZbERFb2M3LzNTNS9MN2hUYStDSEtzV1Rrbzl1eXYKK1VYSGlHY3FKMjF1V2JONXhPVW5HRnc3eXJ6c3BsV2h6OFJFeU9XY1hNbnphcnVuTGNVOEhFZjRJbFdncHdnUWpKR3NacFlCUHg4SwoxRXQxU3RzR09jNHJZQVF6Ymt3d0hkLzN4ckVHaVYvcHN5Wi9WZW94SjFlNUVQSzZodnRNL1Y3cGFSejF4dnlLQ0F2SHJiQ3VkYTZ0CjZXV0xkdm9lOUh6ajlmKzdMM1BxS3FneDRLNUx0QnVLWm1ZUk9jMVU2Y0pUTXVPMEM1OEtuNURpZDE4UEcyTCtVYjdXRkR0bGN0U3gKU1BKVlZEbThOdDcyOEZ2MS9Xa1UxVGUweGxmOUJKMUhFdXIvVXd3TDNya3krYzluMkl4clJWaS9IQTFFTXg4UlJ2aWw0b1JPaWhOeQoyWldwelhBcXZxdnpoZCtKSUZMb3NpRWh2VHhlTEN0S0JVcXc4Y0EzZXluQk9sZldRRHZKNUdoRk1OMFZlU3FQU0pwdS81NEI3eFQ3ClZSN3dvNDNVQmw1aUxwWkxNNmkxaGN6dHNKOTBKdDV0Q3htR296UCtnczdtSFd6Q0RubGg0S3pkU3JYWHBrUmlpRDZPODdnMXdmUFcKZUpuQUpwd3ZLR0VoZ3FFMHNiaVR4MGN2amljWVJHeEZNT1JtWUw4MjhINmVzZTZIWTlaZ2FEOTlWdi9UUnc0d2hHcU5PT0ZYUnBSYQo0LytXcmJuNVAwM21tMTZwTlVSRVJDVFlWN2pYcmxyVE9Mck9lLzJBeVNkR0hzNDZPcXlnTmhzZzEyZ3NJdXFWcDRqcld1L3VHdTJJCmtuKytmckJ1U2srL2cvQ3I5S25TUnY2bm5nUFhPV094dStuYlhmSlRWMng3ekRVb1ErcW0yRDJ0dXZ3R3lsR284dTdSUngvSTlKNEsKbk5HZmhtVlBDY0Qzb1E2WWl4ZWRqSVc0bFlwYkNzVENuNnlkd0IwWjQvaWc3VGptODBBWkEwcEZMMDRzRTFLQkVpeWRFSXhjWFdOWgpscTFRYVdsL0p1SzFSUTBlMGM4NHlWMVdvbVQ4M1BrSTl0dndLRGwveVlFZDA4Y0ZSYXhUeDcrQVlGQ1F4TzhLbkxTSDE0bWdZbVNBCnRMRjVOUDRtWFlCaGRqbldocUlJR1lrU3dTUUJvd1lhZ1IrN3NNNUhNR243WCtHVEk1L3NDamxlUkx2V0ZwN3dXWktKcFpRUkZSVVYKS0VpbTl0ZlhYbEZVT2I3bnNWckNnZWs3MWR3S3c4VFM3K3R2L1c3N2ZoWVNsQWxzZkR4aDE0WWk5TDN5dW5hcythR2hacytKem43UApzTnR1bTJLT2hHdCtLRkE5MHBoK3gyMU5oYzVZenVHOWZ1T25aNVNGNXZ4OTVuSERYYnVsZnoxcG85bU1reWtCVkQ3cjZyUXpiQ2ovCnAzY3o5K3pQQ3ovOVNBM0VKR2VZdkVRUHJnaDF3ZFFDYTMzWllEVzRFODcrZG9RK0NLeFVyMDRJVnlaU0JVdXNvQVJERXhGb25EN20KQWhibTN3U3RDRFp1RTRnQ2pwSlhjczBYSUZoSUMwSndZK281NTdmc092Uk1vUHhueVpDL3dFU0U2L3A5UktNTW9MSHpDa0gwKzVXcwpsL0NGVWFsQXB2RDQ2WWw3MUMwVk5FSkdJbkhDUWdSakFtVHlvNXA1c0hwQVc0TGh3bm11VE1tMVVyMFo0cFBNVU4rM3RyQmNzTGlTCkc0bHdCV3Y5cFpuVHpJUmlqSjFUZjlMbFNkVldBK1JIV0ZJVDdNVWRlKzNiYUx1NXl1dG1FZ1R1bUJGZ3czZ01QVloyNy9oZWd3SUcKMWJGRGRPL3VtcGxXbXU3d2xsL3p3SEpJSG45RmtWcW5BZ2VjZWZabjVaenNqbWZ6azRoSlJiT0JDY2FjckI0d0doZE9QRndOczNiTApyeTA2RVhqbm9yRWNoOGI4Tmw1N1dDN0l4aUcvVk5lNit2cHJGWUlRSVNmTlc1TkxiOXoxYUYxY1NlM3Y3MCtoTk1Va3BDc1lzYWcwCkZXdUN0eENzVEU4VXJLRGRLZGdaZ1dHOURQbUVQcmtHR0JuN093UnJ4UzkzckpYeitBSXBlTUM1SExsM3lvcnA4bzRYTHIrRVRZMksKL2tYaVY2T0dGMVVDVnUvbHZCenJVOHE4TWxFbUVrOU00ZUJiRDRyZ2doVGpNRUNQenlFQll4azZyd3J5aVJKTTJzc25FZTNYVjJiUgpKQmU2Ky9HUnMxTDFhNTBIZU1aQjFJelFLL0IyV21Ra2tCK0VtYmZFL2R4bm1HcGlQbGJCSmlybU10M1liZXRHMnh3em1HUHJmeXdxCm9uT1A5QkFHcVdvYUJpVXY5eXI2M0RDRG5aa01zUTdRZU80N2svRmxtQ3BTamFkd3pjWjFoY25UV2FaSDFLa2t0U3ZJTHhoVGYycEEKY3pwWmlGMWhncUVGdmVWWXNmcVA0UUw4T0R2N3Y3M1hmRVVJcGhMUE9NdzNESXd2QVAyVWdxbjdTRHNyOTYyOGF6ZTNZUDdXYy9mNQpGZHpLR0tVaU9hR3BhQ1I1a1ZvcVQ5ZURSRERRRnpyYm00bW9tOWlyeTJrUWZBenJBeVV0QWVNVi9ZRG0xWG5rcWhYY2pOY1h5SERGCkVqRGtmclZ0Tno4am1ZbGJndjdONWNPTFQ2NlIrT1ZROHFKZkFJNWxQWUtLdFJOano2WGlPS1duaVRlcm1DQlhKSzBMdUdHU0J3WjAKdWxqS0lYd21EUE5nb0lkdUlrVjhmSFRYWHdjUlozMk9ycGMrc284eXgzV1d0N2pJM2NlN0lBT0paYWJzU28xQW9Ba1oyVEQ4Vk56cQo2Um5ma2R0cGVuNitKVFU2NFlqcjZ1SHI5MDl1OWhncnh1TFlMNWlaVmRkZHRhM0l3L3pUMGpkTzg0RGlMUStvSEhEOTJYc2JCOXgxClBDbVdYR2lCODh4ZUgzWEhCSHU2c3F6WldEd3d4Qy9JNlNBY3Zwa20wSGY3QmdxdlZIL3lSL2wxQWYyQzE5NnJId3I5aUFjV0VhWlcKcytMeC9KSHh4ZXJUWXFHVjJER0NnZmttOWpuUHlVWHJ6OTNyVjFDYU1oSzJab3JVUlBSV3lJdVNBZ3JXM2dpbXV6cHpBcnU1cUlBUgppRTNsUmhuQ3VpbWN5dU4zaDN2YnlOVzVjTXM1RkM4Nmd5U2htUjREWno2TzNmaXNtNXFKQzNhZHMvMmxoaTdzaE1RQ3IwY3Q1UTR5CldLYk56b0FDcThpNzNLeThpZFpjQWdZcEp0V0RhZ2tsU2dJV01CQWxIZlBnZkdIbm1vaDBzM01RVVZlR3BtSG41RDJXc1JtN2VXS1MKTW1ET2lFcUxoR0tpV1dTRDFNQjJTTEZJVjg5UzU3YzNaNTh5bDc3VkRYQzBqQ0dhOVl1MXEwYjBPaXVyamgrYmxRWE94ZzVwcTUwagpPcS84ckxUZzVHYkw5VEtWMjZ1NVp1eHlRLyticTlNNWNDaGNKeHIvYlhrRStyS3hqdXI3L2I5MFdmVll3QU1EVUVTUHlKbG0ySkMrCkliM21HekRNV2h4Y2YzRWc3TG9BdjJCWXB3bjNiUHVhaHdnZU1OQXNpc2RHRGR3bmIyNGcvSElwRkt4N0hRK3V6cUhUK1Uwb1FkNXQKa0E0SjVtTmxwYUV3UFJLc29QMzBnK25tZHZpOGFGODkxNndSUlorZlVvUVdnQVN2Mzg4MXRTcEpkZzdjUGpFbWpMZkc4enl2OVhJKwpKUkV3SzBjMGdRT3Z5ejlpSjR4N2V1RHV5MzJScmxuZExMSEFIU2V5MUhkaTBFaFVLRHc0elk5SVdNV0Uwbkg4U0MxS3NkQmtlcFJnCkFRTXg4S1MxVTE1ZG1HQUZDOG5EMUtQSEtqdE4zYXZybWRFL1NsdnZuMUNIaGVRcHV5TG9tTE1mdXYzUVRhS1lLM1B5cXExRDhudGsKMUE2YzJoZ1JZWWpXdW0vdU42aGd6YjRPbldPaTkxZFUrT2ZKYTB4RjJvU3kwcHpQekZWcFV6SlZrbm5JMzl4SkYwdm9KYnJMMXE5UAp2cFdQMWFrYzFUYUFQVjJ2aCtBZHJlanZFL0x6WmhRVlJTVTJmQVdSd3k5RWwxWll2bnI1Nm92WWZGTGNEVVBDOTdnTWNsR0VxVlFlCml4L1VyOForUTFlRWptMXdvTzFZL3ZJRkQwUnNSR2RQMVE0aEZhOTI0bGw1SzRLMW55amkvQTVmSHVJMFhxOFk3bUdjSXYxUVNwK0gKeHFvWlRsUUlQZ0hsQ2U5RXlhQUtnZHhvRHJzOTNtalhHcldFWTd5WFF6ZUdic01WeVdaYy9jT253djdiazZvdjYyVWFjVkpLRU5JdwpNaEg4TWxhVVlRdExQRWtQVGtJSnRKWThWcmRHdnFDRUVmRkNoclVpbURJb1lKTGRxQVZKd2VoTGlXRFN4dWNTck4vYmhEWHBoVHFWCnJhN2N1M1dLVjdibGlnemZHd1Z5M0U1aUZ5RlhBWkNmQWtJeFpKZ3pjL3Z1Y1dPRWYxL3o4VjdQNlpLaVc5ZndQWktHUkovWVBkSE4KeFE3czZqdGgwaXFlczkzMW92QmxtYXZyaUc0K0wxeS9kbUZqMTZtNkpOTDZpZTY2NTNjNjN4d2NxNHZsQ0wrR0Fld3VHLzFzOEZ4awpNU3ByOGVzRlVlb0cxNm9qRUQ3eWdqZDZDeTRzWG9obDcyalRPMXk5Ulk0MURMQlE3OVNDcWNkV1pvODQ1U1FPYnhqWW5iaGFLMCs5CnNCZEdiTVNlbWxNNFhNWEhpaFd0Q2RaK1RNUzlKN3lnQVZIWlRKejdKbXlkbFJ3b3lRMktrNUdJTW8xUEZncXpnZFRlQnlFRnVJbmYKMFFSMnU4T3V0Y1pZZmNHMFgyWEZrVjk2VzR1VngvSnY3bnl5WlpkTERWMWFJQUhTSGlrdzFEd2t6VG54VllpWXFRR0pndnpDOXluSApxSkdJSnEwa1NuUUh5VUtFb0lCaDhuSUx3YWpqRnZqYXoxWDJPVCtRaDlzYVRva1dsNjhTOGs4Y3I3TkZkL3QzZW02c09aT3lxd0RKCkpTSElNUHVVZFl2M1AvQTZLT0xEZlJ5ekY0Nk1yOGhaNlhEbE9xTjJ2OTRWdHZlQWhKTDZINHU4RlpEY2JaQ1BmRWV6MTJYY2taa1cKUzFTQ0U5Ly9RVmlSb2lOZUpUZzJqK2xBbXJyMUVWSXZNMElXeitVMjhiMmhJZlpoNGd6L2JxS1VqbndjWGJBTS9JVThyeUJldS9xbQp3VUwzSlFQaSttY1dFRzdSWmdQOHhVOVpUOWZMV1RVNHNBa3lKemd6THNaR0pBU3JGa2FTYjZTOUVvelRPOGpYd3lsQUovT0phcDhiCjJVRStyY0RLQkZaUTJTSFVZU1RkWSs0Vzc1NStMWFFTQk5LMCs4RU1OUXp1VE1kRXVmMSt6UzVhSWUxejVyNTNRMGU0MUJpdmQ5TmgKeGhvUGZzZkJZS0JLd0NrbzZYZ3VjcnJra1RwblltaUFGL2xNTk9uaU4rcXRhREdqUUdJZGhQaDFMbWE4VFI3U1A5RHJ3VkJqcGhtKwpZTnZHZEc4ZXRvM3JsU3NGVmE5SENnYVJXa29lTnFYZjNPT3hOL0NPV3JKVUpUeFJWWEZmS1dSRU5VeXNsNVVSWHNBV2U3eitmWThaCmtoK1dxVndWd3V2UVpYVEhTdlJ5VHF5dGdLNmptakxJSVloOFRjUGp2Vll6c05YUkFlS3FFaitBaHFZaWdKU3ViZDVvQXgzWVlPcG0KOHZtaytTVHZPdmY5ODJQR0pDMzVnTTVubjA2QUgrbVBoSWZHM1pzR0toNmNlREhOSFo5NGFrM3JuYzRQL0xkTnRIU2JMR0RnU3Q5Qgpjc3NtZjNmSS9LQ3g2MWhHaHRuam5FRDBpcEY1MUFxWHlxTmlYUzYvQjd2R0FHOHdLUzlXMVdJb3VsV2NGRkFEUmlYZytDbTZBZW9jCmh4R3VVR2prMEcxcGZ6U0k5ZitLNGU5SS9RcGV1WXkwREhnK0lzT0NTM1JoaEVQMDQyY2dqMjQ1alhBRXZEQmNvSEZFQm5lZ01jU1EKaFNpTnZ2R0dYa3VTUjNGT0ZIRVdqa0RvNW1UQVRMTTRESWJHRExXL3ZxbTA2THI0VFE5c3pjTCtzUUxvTVV4V0IvUDNCSzFFVHYzNQpzOUdySHRsSC9zL21oWWRnN09vWEt1ZC9jbEIrWnJoeTRaclRCRXV1RTUrc2RjR0FlMnBza2VKLzE2ZG4zK3NnN3BlcnBQSDdxdlRzCjZTa09yOExocGVaaDV4SGFaeGIzWEJBNkdhSmcxcG9TZXpYT1o5dDk0Vy9UUmpjbVYvZmlqcHR2YnF4eW81SmRKRjY3Ry9uRnl5bS8KSkErTVBteFg3aHRWNUJRVnRGcWJmdkdMTnZFaWNwMTBHWW8wTmdtWHZDbXRGSXd0TElDejUyNzc5NFJNRHQ0SWtmQkg0SWlQNHZmNwpHSVdiSjd6eWlCN3NBQ0p2ZUtWWkhRR05SNHdJQkJ0ekg2ZlhDcHlnaXRJcU9WNG5obktPQU1NZXJTT1BlZU1TTHhQREJseEJJOXpnCmp2S3hkQkl2RVUwNWptWlUwdDVpa1RETERZS016dkpGRVNRTWZsSktHK2xqVVBVTGpHNVRJTU1DQkF2ZGgyMHR4SmZmSkRhZlh1YkcKVkdtRXZSRWFveFJSYWsxVmNWTENDc2U4K25pa1dGM0I3UVlaWmhCZHY2c3VBUm4yYzl3dVpzb21HUkhZTXl1Ry8yZXBmTTZLWElqTApINTJZSDZ2UlBHT0w2L0Y0SmNBajQ1U1JaVjk5WmhuUUlWc2Q2MVk0VnYrdzA5NTExSEMxQThPN201WElyMFdQdjVnK3l4cXlFQldlClZ3NjdWV1htcGtiUTM3VGxkOHcrWmU3VW1RL1Y3RnJuZXk3NllqTTlsbDg3L04yYmNINmE1N2NsL0ZoQW1JVi9rdkhMZ1R4L2NJblAKVFJ2a04yQ1Q3b1lMbTRqZzdwS1VRZ2NHK1RqSlJQUWh3WVpqcWxUN1NPUkFnckV5aHZYN3lCMG84QzdnRkt3YzcwUS9neTArTnVwQwpnRjZoUnR0RGU4ZklKY0VMclZRSUFrc01hSm5hNzBWamtXeXBOZHExMU04TjR2alFTekNjOWp5NHNXeWwxR2NuS3VtVXI0emc5OU1FCkU0K1d6anpGMERsUXlGY28rT1JCZ2dWaTlJR3A5RGk2RVgwTkxWVnRBdDRiME1GaUFiUWxtRFdmUE54LzBNSVRndWxKKzhLcmVGY1UKRkVaQmxLWk80WnI4MGJGWEttaVN4eDdaY1hMSk81MkphT3FBR2lhRWUydjVlN1o1WlBhcWtSTTJ6VFlmc1pSYVV2TnZCOCtpamZzbgpSZS83dGdZeXNvOE5PclJ1dStQSDhJbXBzWndEeWpLKzB6c24zQm1wSXJTSDZxcUpIY0MwcnN2cU00WUJVYTBFekZmTFJIUXBtVHArCkQ3anVvSlcrZmdQdUFkUG53SUNySGFVYkgxWmRYS3JIc3JQeGhuR045NlRmdjd6VWRJTFNpd1k1RUp6QWt1Wm55SEhLTDhPd2gzVU4KMDM2SDJ5RlVEVWVDYlV0bHZhQnNTdWNiQVhJQk16a0sya2tpQjhnaWZPUWU5SXVjcU9JOExzWkZwNEtrRS9NQVVvemNxTklkU05XTApwUzIvVHlKWXJJdGwvS3hTSm9Jb3c3QUJGOTRNZm9QWFIrTWViZTQvNzY2WmVBTmVjb3pZNHBTVWs1d3JHb0VNUzJmNzRzQ2pzRXVzCmtlSWFmam83Y3dBQkNaT0VpeElNMmdvWUlabzdTTENRM3JVbDJNdGJVTUJLQlplTFVBdVk5eWRQL29uaG02dlFTVXFMNUNKclhhbWYKT0xwcDBUR3JneDYzVjd0MURsMUZBbUVZWjE3eDF1QTFkeC8wK1BaL3RtSDJPamM1aW1weXpuWFBUYjV1dVB5WE0yNWoraDNNQ2RYWgpQT0U5K2VweERyL1hXOTBFaFQxbjJxL0M3OEloeVpkcDY5Mys1YTVPdDdUd2l4RE1HQzFMek9HYit1ZkRtVGQrK3k3WHZmTEx4OUJsCm1XdU95dnJSL0swWGRUOUhEVHNoV0U1L0ZIM3JyUU0zdTcyRlFLMUROQkQvdlJ1dnFNSW1UZlJnV1BLMFUzMzNnMjMzUFQrVXc2T1UKQXFTaWhYRk1ubTRYL0dnaGdyNndwcDJrSWhMbkVoUEtXTktLdUloSjZQZHhvZWxScFh3OVJycXBhTmplenhCZElHSkhDZWIya1ZkRQo3UlJZM293Mld6NjFrN0VIYnNHMkRUdzNabCtiMTVjSUE0NnpsR0FhWDRCZzVOUkVQQmRGcURQTEg1aTlxK1VFVzdxWmxUaDVPQnNTCnNGYmxEd0lFRTFzTXlqWWY4SlhNZDhqalZMc0Q1MXYrWVBKaytQZVZrd25IVk03K2RXbDAyMGpueXMrUGVhZ25CckZIRlFvSEtIcm0KcEJHRzhTdFV2OHpUYjFMc2RjNkFwaTUxUlBmNFU3NTl5b00vRHpLTUdyWFYvOUVTWTg4SDFvenVJVS9nVVltcklhR0tCMW1HVDRIUgpqYXFJb2NROC9HRFcyNHRjRHc0T3B2a2laREtQVENYazg4ZU5XcnVsMzlhV04xcEQ5K0t3NDE5YllNQ3lBLzNCR1ZIODlVMlNjZjM3CldQN1o1ck43K2MyZTBzSzkwNjY3cGRzYWNsSUZWTWE0clRpck5iWWZCT2J3WmJaVlVUeVdUYmd3bE1NL0hFdnZIcGxJRkF3ZC92UnkKUXJBVjBINFVqS2dTS3hEOVVuaEV4a1dzSnc3TlBJd0wwb212QWxZUnh6TFVpa0tLK1NqRGxDeWFrQXJ5RGtmb0tXT0ltb25xa0dYWQpsbUR1ekdOdFhsOGE2RHJ0bHdSTTRjWFRBVmIwKzlIN0VqZzdqVTh3YURjaVJiRDlDSWJaM2FGY1JLUmFNRWlQajBFREVjRGxsOUxwCkE0ME5SY3NINUphL3Zvdzh6Zi81OVorQmFCZFo5SXhCTTVwUXJIU0FYS0FaVXA3dlVnZFUvS3UyRm5yRVhsV013Vld2dFI4TFJ6TXQKYXZtWVZ6cE5lNzM2RnYvVU04Zm0rT3RWOFEzWEh2MmcvNVh5cDNKV1Z3eitKS0w3akJ5K0lhNnhFY0tBeUZlQzNKNFdvWFpySEVUTQpiT3dRTUszZFB2bjlyWERtbmFNOVd4TU1mRTdqTlRuK3ByZ21GL1EvcnlPMFBLem1sN1ZXNENjOFRmaFZtTlZ6UzRQeDdkK1d1aEM2CmZIM2I1R21EcG5lYmt4d2VtVE1rOC9ydnpTckpRcVFsSkNFUVFJejdyKzNGNTdkZVpPK01PK01oYWlJU2g5SkJDQmE3MDVoU0R1SDgKZTJmYkNiOW9xSnJGa1lWMnU4aUlPSGlLWENUUjZRYWM2MHJwRG5uMTJEM3J4M21MQThGdk45NXhyQXl6RmJGME9ySEVzSzh3Vm5KdApRdDVhWUcvbDJxbUJOWmNTazRJTERpa1FLTktUd2JnMkJJeStVSkFpVk9RUTZPY01MQVh5RUtXTld3VE1GY3hrbHJyaEpRUVg5U1ZwCk04OFFvK2pCalcvOSsvMDR1QWVrL0VVTVc4SUg4VnZOVXRBanRaZTUrcnA1OTQwRHVHcW5OTDJMNDVBMDNRbmZhUGpjMTNDeWNFTDAKOXRtdmJGS1B2SkhSbXAvNmxMd2gxcTQ3QTJscERYdWhKOTJReU5mSjhoK0lKZS9BQTJ5MkR4dGk2cnplVmZyYUxuM1dWbnNxM1VRQwpIV0x6MEYxd3FqZERqTkp2cEpITmJiSG9zYy9LemVuemZucHJPUFF2TElSQ3VBRThhTUJlQU10dkk1OFhEZkNjejVhTnlYdXY4QjgvCnFLM1N0WkV1VUlNRk95aSsyQVl2UHZId3hYN2hPbHBVUEdpcGgrUHNGOFNsWFJ0Ni8yOFBtUnI5TFBLdEtEeCtMRzFJVnZrRVRIQkEKaXdsL0pBU2FjOXFOeEtHNXpUbFp2MHRnbFJ5ZG1JcXNFdEUvODBtbFlueDBFQlo2QTRGYjAzdkZaWERDTW12T1NQOFdBc01wR1pDeApMRGs5bFVkTFUrSWg1SEdoS3ladDAycE1NOTRuNXhNd1FhUVJ5VFl1V0tBTldURHU0UE8wbkxwaFdHelpkZit0K2Znemp3ODdLdWliClB0K1lnM2F0VUdFMGtCZnVKdk9ZaGZlemFVY3hXUS9IVm11NkgwT1djcWFWcjV5NWJuWjhrbk5WMDFyVnJvTTVYR1dqNjRuUGp2M2oKRTk1UzA1UFJiQjhaRFNmclk2QXBvZWxzeXBnT1VXNFU2ZXI5S2QxVnBxM2IxWjFXTjZaM3Z3T09SbmZMQ1o0WXVzZ3kyWVQ3YTNmYwpiYjRqQnl4YmtwOCtOOUN4NkcwajZPYzY1aDdMYWliYUNGQ1lZZmlTSDNIdVZyL0dpWWNad2tPZU9BUmZDbUVGKzYzSlI1ZXVjY3JwCmRMd0l6T0F3ZDN5L1I2RnQ0dE9sVmIvai9MV0dlN3FLM0RPbHFlVG1Pek1lRk94T0lBbzJmR05SZXhFd0pCanRBYk1UQTVHYWcwcGsKbDU5Umtyc0VpMU1FYmtBNUcraUdwWEZ1dkRlUlpES04wNDJ4YjQ5SHpSSldZdkpINE1JRTd2U2dJVFg5aThEQ3BVVDNUVnJKUk5SZwoxSVhCTTViS0d3b2lIVFNKQ0ZBRTZSSTR0MVlNVTdvNUttMXRCTXlGUnhDUllBRVhUT0lnOG5OQmgrOVhCNG9uTk9iczI3ZXkyTnpCCjlaUDNnd21oSS9xRzc3Qm51TnkxaEdJUmJxNW0vS0o1bzNKWTFEU2M5ZHprWlRIalhyMGlQdThEKzh3cUlnemZWV2ZxNUZxSXJQNWUKY2MrRCttbmIwbFZKQlRodFoweDlmV09OWTNOVEZPY3Vhd29qL0xKRmRKZmIxZ3U1cG5Vd241KzBZTXlKaGo0dEJLTXRRNi9UMVVmMgpwVEEydmhHc2VmOW9heVkrK2hacEUxYjJ2TEtRMzk5SUFSbnI5bDRFd1JZdGt6dHdlak1CUnJ0MXJFSng0bkJmNXBIdm5GTGZQb0dqCm5vOTRlMzVVSWZTNHA0WlhYV1NDbHU2R1RxSkxJbGhOdUVaUll4d0s1ZERoODNhU3hrRWcwK0lJTUJWNktjUUQ4K045SjZDMzVhTXUKUDZCQlFPNFh6RUFQOCtJZFN5eEtYMHNucThLT2xTMUkrKzVSY0I3aXA0bWdrcHA1WDl1UlpKY2xUdC81ZE9CYlVYaFJpc2hYeGtyUgpGeFhXcmFGUkR6OFZacW1FRFpVd3Q1UW5oYTBLY28zNm4yMEZqR1lDcTdFZGFTdDMzS3h1MysrbXZjcnBVM3VQWmxOdUh0S3R0NjFoClQvayswOWJJa3JmSCtmeTBXUjgrL051TUtKTy8xbWdrRFgvOStKY0ZDNnRTU1daamhKWGo4U3FwZlp1MmRISmlFQ1BUVU5MZjFTSFcKYzMvSEExKzdvb3hKNFd5akpocUlnSFV6d20wdnpPaVk3cXNHYUdyYXIyUWgwZGxoaS9kRW8rSEpncjdQd2hqajEvdGFPRVRidGtGRgpGU3MzVjZ5YmIrdWREL1pkdlRFeUY4QnJKOWU2SU9PV1hvWDdxWG9seFNyakd3dlgxeHZHWDRnUXl5ZnJXQlF3NUJjVmNBVi9lSGVYCmx4SzNCZEtuemE3d3BmTVRpTDBKMTVmeU1QWjhwdWw1a0QzRXgzaUE0OG5YVTVQZzFkbU5QZDNsd0c1dko3M01CRElleXlnQjVqbjQKTWJ0UUtYbFgyTlpMQ2I4TUkxUGcvWXBwcjR5ZkNsaEFuZ2k4ZUVzeVNFNFVNUS9yNDZ3K29uc3hUUXdUQ09aTFNEelY2c1dsUXVicApnR1BsSmI0aGRzbXhxRG9jK1pVcVEySGFseTlJRWlVbklNTjhQbXhKQ05tUWVSd0dkVmpKRHdzUkRObkFvYUZKcmVmZ1dvQXZQdHB1Cng0SnNYUVY3VTBXeDIxZXl0N0NvUHFuM1pHNWM5Yy83ekllYnZoNHRjV3o0VjlVOUNjVTBncURuMTB6YzZBbGpRVVVCdXJRcW1ndk0KZjZlUmgyRW9oQnp1YVBpZzVFMStjMFQ1cDRlaWVmUndDY0hxWlRWSmg3ZGVseEhuSnZ5Q2swb2RERlVuZGs5KzR5VGN5bGpFcndENgpmbmVmUHozRU1IcmRkMXh4c3A5SkcvN3ozZThuRU9lcUpzU3c1ZVdyYWdFZXVYYkV1a1pJMHNVcXc2YW1kMHMvNEYxekVWUE1kaG5ICjJvRm9yamdhZk5KVUdZekNwRnIyWE9JbWlXR2NmSE5DWWFram8vRmVJM0hVWnE1dnZlOXZRaGN6ckR4YUFKdVc4Y3VMRk9FNmU3eU8KYVBHZUxlMUd3RUNtRW1Vc1lCaWJDQmg1NU53Qkc0anlDeXRKc3l3VDVoWERhRjR2RXN6WGltQzQ2SkxSMkxaZlNlNURnZVhsV283egpSUGlpN2I0V0ZYdmd4OHR4d2E3Y2hhUFhBRk1SNVlEc29xa2NJaDJ2SWhYVzhPTUFGV2xqb2x3TUpuVUYzRXpTTElBMExGdnFjbTZ4CkVQRkI1TnpTNUVVdEJIdjErUXFBMlRjZWRKb1VZVEtCcTNNNEdBdlB1K3RPdk5SMS9ORVp3dzd2TlFVNU5uSWtVaXpNVHB5WDBxWkIKbVkwdDgyZWUvdis0K3c3QUtLcnQ3ek96dldRM205NEprRkJDZ0FDaDl5NENJaWdXc0tEeWxHSkZpcWdQQ3o0VWZRcWlUOEdDaUFKUApFQUdsU0c5SjZCQklBNUpBZWpadDA3Yk03c3pPZnZmYzJVMEM0dFAzZjRnZi9nako3dXpNN016dS9kM1R6MlhjR29pdGl3MFBENWVLCldYSmNPOHVXcHJwbnBoeVBMeXVLSkI5dWV4UmdNcGoxb3VOUmRZaU44aXNLWUtEdS9xY2FIN1JPbjV3OSt1ZlhDTE5TMzFxNHYxK1QKam9nTFFJQTdwdUtod3BoNjY2RzV3eTBxQzJIWUVpcWdWcngxa1FQTms1TXNKNGpzY3BjV1dEcWN5YWxxZGZaZGlKdjVXNFI0ZjdvQwpMVENGTU1IbDlDNUY0MkUwQlNNSEJHMnFvVm4xUmFQMDVVNUQvSmtuQmFMNHR2bXE1YkcvRG1mVVFMcysxS1lsMzQyc0lFRHJiNDFFCkVWaVZjdjErdHk5a0d2UlowRklPVE5sbzBXWko2V0VaRkdHZ1YzSmFGNDl1RVBLUm9wYlZVdjF6b2swdkVJbkJPSG1zR2haWkVRTzgKQ2ljWmpJeWJTZ21BekJHM1FvTDFMUEltdjFFVjBSc0l3NXBtVVU2dkhaWEdKcUxMcVNpakRLUEFsQ3I4eTE2cklVcmFISmwySkJNVQpkNllQQWpOS0lTNjVNTnVQeUVXR2s1dnhLRTB0ZG1iYnRHLzhrRmJSRTZ2RHJZY0p4N3E3dkJTcnRPWVZGRERxMG94YW5VeWtZTUVRClg4bDFwT1dXQkh2YmJvYjM0ZzR2QlhoN1M1bmxnZUUxZUEwMVFZUmY3Vk5YZEhvb1dzZERJK1hYd0ZZNmVPZnlkcGh1dDI0L1hQbkQKM1lSWkk4eTF6UkpNV3NRb2lGTm9YQUZ1Ni9FOUx6YU9UNFB5WXR6Ni92SkNJcjRtRDBmeEZYSzF0RjFvSk44cmV2REUvVlo0ODFuZgo0YitHSzdOWksxVVF2L0R5UzFLMEw2NmRQWEVyWlpnQ1ZqMlVhSGx5WXkzaGwvLzgzMUk0dlNBU3pHN1NOeWpLZElTVURTYURUZERrCmpzMzkrUzhTWkViSU5PZ0Vjdms1UFdnOGVVQlVlMGVjaXVxRFpMenBpWm1QRFhCd2xKSVAxZU9tcldCOGtHT1NyOG9wOTNoWUQrL1MKYzc3cG1aWGorUmcxemF2aUM2Z3Q5QWNqK3B5M3VRSHYwdFdyMFRaRWsxRmtjU2xZR2dtajRsY0MzZ0krbGdTYWl1aUpPQld3VktuegpNUG9tQmRGNzNRTEdCYjJIMEhHMWVEUEV0YkVvM0xCZ1FOcExRd2JkZVZiL3dVK01odEtSMjNSdzE5M1FyZS9JMDJQaXY5NTFaYWhFCnNRTXNydE5pMExyNjF5cWtLWXh3ckg4bW9JZVJZRys2TXlmeDBid1ArcWJDZ3JkSGJwL1Q1VnNGYWdmdGtWOC9YbXIvbEw4YkhmV28KSGc3VWplZStYRS9NcC9McU9ickFWelpaWHR3UEl3cHFFMzBFVTFvQlJWaFliYTlhdVRQQXJUZE9USWdwTFlMeUJhbXdZdmxWZ0dGRApGU2krMU5zMGlXN1ZtdHpoaWZka2xVT1AzeFE0cTk4aUFvd3FpRDc1UmZQb3lFZFNObTdNR2lTWWNwaTdmOEhURERwdVlQN3M1aVAvCkk1d0RsRnBUaHpLMjRiektqMjFReU9YR3hxSjI0YTlldjl0dERKbWZIRFZFcEE3bXhxdmwxTDFCUmh3T1NPUVhOZklGTWxCVnFFZ3kKd0YzREx6VDhHWStBQW9BVFdJWm5sVmEzMmk0SWFwYVhtMUJWSVlJUWo1LzhPK09PL3dzNlhrWlRDeUhUU2luSkRERzVSQlJnNE5JcgplWnd3VUdEaEJhRzBhdGIzM09qS2tWT05HTkhpRHIwRWsvS0ZXeHd5ZmpmY1VRSnpCd3lvY1hSVGV6eWVnV2xIbHB5MWFuQXBNSVVHClBEK05sOGxrd3hQaUgrWXVyZk5TYk5DUkQwNnBSWmV4WnZUNE0zZ0YrRmIzNlMrYXc0bnNnczFPWE4zaEozWXlFV0RqTE4rMFQwOFAKcE9wM0VBVFhwRjJNZmhhTDhzcTg2dUhvQmNlL0pzZkdyWFR2TXpRMGxJNE9KZ1RiTDJ0U0VZbUdpRlIreDg0NUdMbFQvK0lMSVJIaAoybzVwa1AvUmhMK1hRT3lVMlpibDdaQmZNWjBVOGszLzdOQ29ldFlLTDdXc3BMa3hrdnVqQUVNRlVWcUYzU3ZBQUd5RjBURUoxQXc3CkxueS9KOUNLTHJNeC8ydzY3cmVRR05GdTM2RHZXamNFbEVhd1dsRUg2Z1BRTG4vOTlYdmR4cENqQ3h2MFZqUTkxSklDNVpUQ3FDd2EKL0hwSlNWTHpJRmFxVVY5MFhNY3ZGQVprYncvSDBFZ3RPWnRJTkJtbWdSeGFTeXZHL0pJT2tmSHQwenYvU0NnR1hVQy9HS0pCNWNHUQpYWXMxOHF4NnNlVTFZTldhYjRoSXdOdnltVWUwZkF6aDFSREpCMVR2ZTBTaFdRYXdkYlM4QmlCVTJsQXhIU29YeWtCNUg1VC9mVWZmClk4a3JzbGJSTmlBVDc3VXUvdHZRZTlIajh5cGRWaFlhTE8vTDBHV0k4OWVTTVV3VjJiSVoyUVV3WnNKTFI0aUN1RzlQL014L1JwUG4KUXcrU1h4a2R0N1dmeS9uNE5SQW13ZFJqNVdSN2gyR2w3VVNJSWw4TGtZRUx1VkYxdmt1VEVBYW1Xbkx6ZDl4Qm53V2VKcmRTKzIwRgptTzY0ZjZwL0hlRlhibFQvNmtpWURUOWRJdVpPajNldlBmaEd1QTlqeUVSQnRIclhRTU1QajB4WU5vRHFNejE3Mk8xa1FzRE9qelNYCjQ5SGZjYjVyb09FaE9pKzhIS0p3TENiOWxjTE1oR0IyTW5Fb0JIMERwbkZjejUwbVU1KzhDaW9QRFVOang2YW1IU1Nva0Z0S3lUdEMKekI2T2pCMk55Rm9sczZVQ3g0cnAyZ1ArR0FqUnZtQ0FqallPd0lpQ3JFa0lXZWtHcVV6MGw2QlpIS2hQNHBNbUw4U3Y0clgzSWE2MQpaemlFZmxYazljK0Z3VC9BQlI5MnFCOWdTZVpqRkRGZDE1OTdiOUdiWkdyUkxMVWVtVDl1RUhXcUxua1poRkIrMkxHbTgzVGp0dEp5ClRPVFhZeXNhRml4VnZyRHdDVmhSR3VjZ2l0WnVxcWlPMkRtRDhpc2JLTDkyYjhRQ3gvang4dWh0WTBxSVJOT0dFRTcrdkhMTjBxWnoKMHJYUUNRNjFobHBzR1pkcENkQ1FJZXRmY1lXOHg0U3BVQWM3bnJJUnNyYXFQT0ZuL1JLZzlmUy9OeC83YTNnL1RMUktIbnFxSUtMcgoyS3MxZzNyTGtmWHYvNTFNU21SYXFrR0d0T25ROHNqZnhCSDRZT0lXMnBXVmlNRmc5NkFHVnNvWS9vdEFEaHFyUytOeHFJaEdRdFVnCmFRQ3FuQ3BSMWp6RDAwZklJUEtaT20rMHVyZ0tmMXdlSjJob05vakhqcE0wRlc0TWttdUMxQ3JqajhVUHN4LzhSREtlYkU0ZEtuT3MKMTJIRHFlbENsZEo0K0MzUXZacEUySTJoVzE4TFliSkg0YXVUVkNsZHNIUUIrRU1tZVhUbW16V3A5ckdiekl4aGRORzR3NE9lK2toSgp4SmptemtGdmJtOVRCNHVvdm0xTEdWb2R4SEtnUmlHd1pJaE85TklMVm1qSExsVzYvTG4zb2t1WEJ3RXlETkg1azd1SVl1cFZEMkhTCk43bW9QclVmM2hGc0NXWEJaSlB3MDN5QWxVK1B3SDJWMkhra0RNemtCejdCcWtoUkJtZVB2UmV1RDBXNThsMHR4RzVNSVBKcjZnNTEKTHBRTWNzd2trckMxL2JHbzMvUnZFSHo2T0l0WjRjTzkwNU0zMVV5YWFXc21DajNzYmoxSS9GSS8rdTdqVFlmOUpnd0ZQWWljdFdzYwpVUmVxc1FWbGxjTUF4YmVvZXZEV1FLYmdRZWJSWW9Va2RieDVQMEZpT3dIMk9wTUVnSnByZmdVa0ErWkdrTWxsYm9XM3k1c2crZkxKCk9NZGF2aXQvekJMQjF5R3F5T3Q5MG1rSXRkQlJ6d29zaThsZFV2dFFyTFh4M2dVVnVzMFRDSTJxbzBOUXBJVUVUVjVFbjIvR2w2RkMKYlRBR0NvbXVGMVovOWVNaXlTWkxoZFRabXk5dkd2UEdLWGU3Z05RWWEwSTJPTE5xOCtJVW5VOHNuaUNUS2R5eThlbnBrMUxQRFlhRApvZ0N0Mi9qWE9xV0NHUVlLRXMwaFJBYXgwMkJGNE1DbFNuaHIzL253cVlGNStOYm81YWdoUmhnME5qWm1WMUYrRFpyNDgzWWl2cEllCmlyRVZOa0xtWTdrdkYyWUxTY2twczZlOElWMGRvWmhEcjhjSm9uNVlpcDUveTFVNzQrU3FJMHMyRUVXVUtRZlQzYTh0SWxwdmhycVAKSmJqcmtmdjhGSnpwMGZHdi9wWi9IckhpWFFWVG9SQ2FJbUEwK09scjZDY1VmdmZJMWtiMGN6QWMrTTk0cSttbzN3RlZ6NGpPUFJwZAowUjJWdWRGaUVJNldITzJ1djVDVDNxY08yY2hjeEltaU4vTVZDMVdhcEJTS0ltSlYwWkhaM0hINmhuQXhERGxNUzRVWDhwVmxmYWRSCjNaSVYxWHhKdVdSbWRUVTBZSUtUV3k1SVM2VFFsQXVxSXRLNVYrVnN6dkZGT0ZWZTFaSG1Qb04zLzJZVDdGcHM2QXJ3L0QzbUZGREcKeEVoYkZuelpQZTdodTN2QmdLNW5sQU1PTEd4dDhOVFY5Ym1jOWJlaUtSODh0d2lVR3BjcmJJdG40c3RQbXVYQTF2MmtjQ0IvcFpPSApSQkRweFlaQldjQmh3cThYWG91RkI4Y3VyOFpYZk9teTJRUWc4ZXU1akR3VVh3OUNiaG5abUpEWUgxWVZCZFV0L1hnVWVLY0VJc0pRCmZCR1kxMEtGM0xWb25ManEreTVudjNtT3RnbDVKSGsyZGhJR1dCY1JBV3ZuVEZobnF2MzZxL2U5Yi9NZlVhSm5pNG1DQ00wZVJJODAKYU1odGNGQnpGN3lEL0txcGd6YlAvZzU5c3dVNkJ2cjB3VHZncUFhQ3VlaUM5WDhwRFJFcm1yMUF4eHZtSCtLc3plQXpodXBKSEFvdwpMNy9vZnFwZkUyQk9EWlkyTThBcVpISkJUWHRpb05zT1JabW0zUzFJOW9Yc2dSbGVSNzJTMXpuVkdCdG1SYm1JUkNkVE95TjE0cUJDCmg2WnZ0SkJnNEtiNVh4NTA5VWp1WnpwZWZRTHNXZ24yMm9weW1GN1M1VkRmMTNvbW4wYm5oekl5TTMzZ2llK3JES2ZqVHJMUjVTVk0KNWgwZDg4ZGtoc2kzcXhadjYxbS82ZGhRMmVCRDlXMi9lckRDb1JmbDd0QzQxbW40MFVvaWJIQy95dnhBZDhCbkY5QXBNdTc4dGs1bgpmMUNEM2E2RkRDTDVhQ0lIRWMwR3lxOWxxem1JODN1bWxZMW9qSkFRL015UlFVZFd4azNnWmo5K1BsVXBBeGtSWUc0bG9Lb0dWcXZMCnpmbTlOYThxTE9sOFJrakMxVWtxaXdYQzFmK09WOXJKRjhvRkZMYlBLUjJ4ZGUrNHVzTHlDN09mK08yWVZlSHM0aTBaUDN6cVZMUTAKVC9HanBwbWFVUFJBd09mWXlsdis3SWpmNjUvM0lpckNrVmlqTFQ3WlVibXJXM1NqWE5kd0xyL2dyMUlKSnFHWllKaVhoNTA0OFNGRApxNzJ3TXpzT01vY0hoNVpQZXYwYXY3QmxKelYrVVhRcDhYaEtTYnA3NzhPMzVFTnI2M1BVSzExcVRvMkZvNHpJTWdMMTArTm1qOU9YCnlJRUxXVEpVTmZSQmptRXd5YkhvSTFpekFCUHRVaE1QdVZKdmVtVjFJY1RwNzl6eGFvUnQ5NzRpdXFzK0pxYjR6RHMvbXU5bmwyOEgKaGJFbVo5TFBkeDZMSkI4bm9WaHQ4c1d1SDU4YXVqSE1NZnp6b3hYcFdya1FlRHpVdzdxYmxFUis4bWxQejArS0NFV0lnbmc0UE9IOQpBK1NjUWZma0FPcUlFc0VrZnEzOHhncWRobzhEdml5YmJIdXo5eEZvdFNrclBoZys0MmFlQXBmYnJaUzVsSzVJZXIxV21GdnM2UEN6ClM5blowL0RVbE1JUjBDNS8yVG9URncrQzFrNm1TL0V4b1NZaElwQWJIbExVWUUwNXR2QmcwNDNlR0t2ZjBSdldqZ2w4NU1FZnFtbGYKWlB5WWJKUmYwdXVsK3g3NVVnczFjKzU4L3JlNWVpMmlWS0JxVXh4bFZPbjhPSTBnT3ZtdEJYK1ZiamRldENDWW5ISDZhTVFRVzZySgpCc09XRkQ1KzBNNEJ2d2FzWC9GNGcwbm9GRWRwd0ZGYnJHSG9yVWpsZ0xMSjNycGNYcWV3NHh4QkRERUJremw4QkVNK1lWVFpKNzFhClpPKzZjWDZRSmdVY1AyUnlhYWtndW9uMGUyblUwQ0dGQ3ZkUDlXQ0t2ZmZUNXl0Q054MnRWNkt4Q3ZwNjQ2eUNpM2x6UDdUbUZGbjAKT25QVVphVTVZZkYyT2NRR0JWazJQVzh0SGZsT1dJWERHci9FWm1CZE1pWXNwN3JPSzhMSUIxV25DRDk1OVpJTVhMSVgzaDZjOXVUagpVMUhGdHAvUk5oT002SWZ3OER1bTE2dkN2eWlPUEtGdXhKamlwM0NFVU82OXlHbHZESGhuUzU5REx1UTV1V2FaNUoyeFF0L0dXbFBNCnhTUlBUc3hlLzhHT25HZi95VzI0eDZWekt3akRPRkRuZHorcE8xbVZ1R3Zva0lqR0d0dUI3aS8vWjBOc2VDL1AyLzZ5SkszZlBaL3kKb2hJMVJLLzk1Ulh4M04xOWY3UzZYM3p4djZVWEdJTDl4Y2l3Y042bXFXZU5OUW9idS82SFlQZ0xwWEhBTlFRRDM3b0diZ1pVdElDWgpFa3p0b2hsR0V2UCtBNzNBYXdRNUZYcVJWU29VRFByd0hOSVJqdk1QWmwyMzd4OEJad2VmQTBwWlkyeFEwa0E1eHBrbGdvbU1Cd2tsCm9QZ2lONGZ4ZEx3dm42TG94akpvNllra3dwb1VSS0lrT3huMjlWWGI5aCtvcVNlR1IzaXJ4MTlMT0hueHk2dGtwMGlqWHA5ZzFMalQKNWZLby9uY20vRGp4bUY0dDJocFYrcTBOU1Zmay9wdGRpVFhNdnY3YngvS3N6WjVrNmUrZmFlQjVQMGd1ZVBYNDg4ZXhYUWpoVW02dQp1b2pZZkRMWHVGUGJPNXpya2s3Zk1RaTkxa2d3eWY2cU8zQm1KYWU1bXk5WEdmS3JvaHJnMHlPRk1Pakl4NVBPSmFlZStxNVY4SEVaCjlnbEFrallSN09qWXF3YytPNS9qN3Y1NnJHUHFJZi8xRTA0a1c0a2VJb0NkOHdkdGwraHowVVlubDd0clFZZW9xcnJ5bktmdS8wOFUKQ3h6VCtrVlpoMEJCMExZdEVXd0txbXJ6UkQzMGZVSmM0NVR2R29mOXMrVWh2dytxNm5oNVdGdmdheG82dW5LVUhzYjFkMENDL2Q0TwpxTGNEWktLeGVXbFYyc1ZYUmI0R1JvbFJaa2xQY2tKVGh0R3ZtbDh0WWNBUXJ5aXlyRUxqRXFYVzFJUjZoVS9jQ2o5aThlUlQwdnNwClJUV25RajhpalI1TEJFUGZNc291NmloVW9RSkg3NHZ4NlltWTdpVTlRcDdSUGxSZXlGMGl2UFlLT2o1TUdrM1VIVkdUWCt0VmxGZmsKaGdWamh2NWdqTkc0M1dxa2lpSWp2VjlBOEhzdkQ4c3hjSzc2eU5OeHBvcWdoUHJhWGdkRzd0VzIzaGRaRjJZZS9ZbGdBbEVSVUZFUgplZklaNk5PSFVJd01VbVZwUFhXcXZQVnpUdFRkOXl5SE9oUmhEL3RVeENwVUVPdHFEMXlHcjRmSktvd01hL1FySWZ3Q3dxL3BsYTFtCnZEMFh0R2VPSUxYby96RHBndlhXSXpOeWQvejRaVFowdmpEaHdyUCthb2gvMThRbjFNamNTREF1U2hOVHBtSnJkRVk5ZTJMWC9PK1QKNWZrcE9VLzlCMU9zeTZTd3hpU3RBSnFHVmdGRFR0YlFDQUxmWWdMU2FIYS9tZFFpRXZmYjJHanRNMzBYaG55S1Q0L1UvcjEzb0s0eQpQTE1tck9SZ1NoS2NnUG5WazhhTitVK0V2NTBnQzNNSUh0L3l4VG9IY2dqOTF6S2FWRTRJWmlXNkhoWmlVdC9idFlmK0Ntd3FwVjBVCkJUZWhtUUxIalVSSy92U3R5Slp5dHMrVFZySGtkWnpnVkxHb3FiS1VZeTdVV1Rtc3BjSC9jamwyeEVJWERLYUlFYVZSeXZ3bHpLSisKZW1TWVM5czhnRmlYbUQ4ZUlHNWVZL2MyYmZSOUVsNEx1MlJCVnFieVIzWm10UTRORFEwVXVuL0ZPQTNzMFo3UkordU9jK1dCb3RNVgpzS09QNlZMUTRXRER0SmZ2ejJtY2NGWXg4blJTcGMxcU5iQzI4SVN6RFNQSThYMG9UaGtwd1Z6SjV5NnY2N1FJNm1qMnIwOUZ6SWF4CkZTVlJ3ZytGY1gwMWgvRmJxYlpyRFVzcHYxNnA3akxsTlJoejZIdk5LWnBYUldTZ1Y0Q1JyMDAyWnFOZjhRVTI4dTdIaEdmOWd3S1YKY2RYakc0SnFnT2lJZHZVa2l6SmZ4VmJyQktFaDNJK3R5MWlSSFVNb2RuNzhyMWxRcTJmWXJpVGhaS3ZROHEyaUpuN0dlNVRFQW11cApRV3ZyeHRiL2ZrYXN2dC8rK0NmNWw2aGU2b1RuM3pyeEhYL2UvTVRlZ0k3RlM0aTRMbjNvKytKWDJyeHc1Nk43cmovdXRnVDV6dnlBCjl5NWZyR1RjU2c5aEdlRGFPeDVVRVJ1b0x4Q0g0Uy9GbDFNaHczSnhaOHZDTDBKU2o5UWt4dVBXaU1Ed3pWcmxrRnRSZEpuOWZMVGsKcjFRMitHTVBjSElYQWhHbkFxZFhFWW9KT0VYSWFUd01KeER5QjF2WXE3QXFES1Q1bzRVTWE4RXdVZmhxQWdmVFRkOWE3b3VJYUwzMApLRkI2RFlodnY4OVNhd28rWHBIUVlMUFcxQWtlc2VaYzJpalY0NW9UajJlNzVhSncxTlA1MHFDYWlVZnE5ODQ0VnNOTitvcmYvMGdXCkEzb1hHRFltMkVaOGNzcUxvbnJxV1g5cjNiSGVkMDdsMUdvcXdVQWlXSFQ1V0lEdWtRdXNQVHAxRFd0WENUVjIwQ2tHRkJKK3ZiMnEKb0VKOEc2RGJlMlA3SC9KZXAwK0FvWTQ0TkZ2clZ3MEdUK2ZjOUNDTlVxMHNDbkZFRzJ2Y29DZ2FkVUViN3M4SlNubWxYZEM2UUI2LwpOMzNGN2dkUDFKMy9OVzlIOHNBUCs2SWJYdFBnWXVCQThkMW5HM0M2YmFGQmd6eEVHZkVyN1B3RlZrL3QwZjNlcEhxMUkzM2g2SUdSCmt4OTViMmJXbmNtOW9wT0d4Wi80MkFtbHBlOS9EVXl2OEc0SnZkditKUmpHNklnS3dvRVRPOFdTNzY0S2pFNjd5cVhDUVloVFA0NUUKRVpYRVg4b3ZwdzdsQTY0U0pKbG5UWkJKaWJHc2gxV0R4ZU03empuNnh0L2VUWVpCN3BMeUMzUk9Cd1p0MEZldjVqRGFMUElpQnJ6WQpwb3hEY25kTnZodjZBSzhVWDhQN1liR013UHVxWEppNjl5cG9QbHpVcXdpcDRQVlV3dnFmdCs5YzBNY2ZXOUVtQXJzK3RZMjVSdjFRCndFZUxLcUQyNnpHWmNqTUR0ZDFYUDkvaDBtTmZYOHg5ZmlQalNiU1AvWWl3T2t4UVJwZE83UGFKOXl4UVJKdEZ3eHNMSngxV1BmKzYKRktpaU5waEdDVW1BbFBud0l1eVVwNGJCaFFnZ3M4ZGczR0hRajh0eks5WXNJNDljcGk1OThDOUZXRXdSL3NNenVub1Z1RHJtUkJydgpYazc0MVI2cWpnNDFaU2Rjd290M3RpdUpjY2pCVEIxQ2lXd1FhTVR5OFJBNXlRR21Oby9kS0sxanZsK1VLbEhyQUkxc3g2QUQwQjltCkZYbGpOMUtVRk5UVGpUYzY3TVpZRWRTMU5iVGoxWGI4dk5WUVR6NW90V0xTVTZQckFSb1NPdlhTbDY1UU9iWDJROHJ4bTkvKzl2cGoKYjBmSVZHVFFFV3VFeDF3T3BkdHBBRnVBSUxocC8xRzlTM0tyMGREWTlmeDZ1SHNCSnFnem9vZmxycFZ0VG5LOElBTk96aWpBMFNUQgo1QTJLVytHcWQwNTg0RXdkdmlVUllRMnFCaFhSQkJrM2NvWkJmZ0cyRkpRY0dSanpZbVMwaFFEV011TW1QQXhsTmU2QUpkeStkY05ZCkdMd2Q0aGQvOHZHcGVqSndjVmNsV3FzVkRWZGk0OTUySHR4K3BpSTE5UWdUWWxXcSt4N1lLeS9aLzFTdCszQTBiNjNqVEtMeUdCc1gKWGZmc3V1b3FUVjFEN2NrNllyN29SWTArZ04wK2FNT0RNWnNqaStycnZmeXE2L2ZlL1F0d25ISlVoR2xCUXdSWUdBYTF2c2hvL1VXbwprNGRxUCtSWFVEdXl6NkF0SzNManVsY1VXTUUxd0NEYlFIV0lNQ3ZaM1dnc2ducUlxZGRiWlVXekxnUldOOTZ4TEVvRENkbFZ1aUpOClRIbFZ4NkE2dCt5aUpwb2o5MlN0QUlOS1ZWemhaOWZ5QVNmYU40Nnh5VXZMejkwb0tsWXhlZjE4dzViQ2pvUmZjTFUvd05qTlRqV2EKc042VlRjVVhYL3I5NnVHS29KN0JpdTQxZXJ0V29XQjFJaTRUb3RFOFhGQitYc2FEeVZGMTdPZ0pvazN3Mmw0aHJXMFRPdnorMC83LwpDNW1jQlNldkZPU2NsZ2VyQzJjVmoxenJwMVo1WkxqaUQrT2I1Ni9uMXhEV013akc5VHJwUVFKZTg0ck9vVEppNUFtTk9ZVW9KVklnCjdyMTRLd2dHR2FZQ0JlcTd2TkVwT0VFbGs5eWZqRXpod25ZSEtpKzdxSXFJeWkrT0U2ZlhYVSt2dE1tUjZGTDZHQ1krK3phRWh4NFAKNjdPWlVFRW1jMlBJaWh3d00rNWlldXQyNndlTUx3c3dXc29xSzdYUkVjVWViV1MrSTJCdncxTmJJMVhWd0xFblN4bDJqZkpNY2VYawpBcXpHTkhuQzFFcDFxRWYwdjl5Z2VIZGhwNk80bENnS3hiZTJaSDQxN09tcCtHNythSVNoRTFFU1lHMmozK3J4ZGtRRFpEWEtvRXNHCkJKRUJEb09tN29NNzRoUG1HSzB3dCt4S0RwcEhZVlpybUI1aWdGQ3NIdi9yOVROK3VQRGgxWXIyb0pQSm9tVUd4VkdyTzZxaHFzcVQKcU1ycndRcEVnRUVGU25pVnM2SkM0OUJxcWsvRWRrOUtxQzY4VVZSc2VuaUc0OThoSy8zeW9kVUJmSHZZNEdwUmN4dnh5bjhSWEY0OQp1STlDcytjYmZ6dXFuRzRXTUkrWmY2QUFhc3dOS2puSEt5ZmxDUGhWS1BwSE56UkVwUC9pU201RHlFUnNHcXFVZXhUb0dHQU1rbzN2CkVWMUVmTlA2TDY4UDhUb0R6SFdQamE5VGkxOHh3SEp1NVRVaWpKZjdGcDBWaUNYTU5CMDVJS1ZwbHo4VVdlT21uQ0dDRTVSeWhjdmcKaSt1SnlnYk03dkgyWlh1STJta29xNmhWUnN2QlVJNUorOUlmYW9GNjdReE5UajNrZDh4NytwTjZhOWpIWlc2alhtOEY5OXNqZG13Vgp1Tmk1RjQvZTJkMFVNZm1lQ1VWNmhjelFLSGR3SS9hWDlEc3djVzlmTTRkNVJCWm03R0g5aERTSEVDdmdzcklsZmcrMGwrZkZmRko2CnNmU2Y1ZDJML3JaUFQvajF3b0IxcGVsem5zbzloTyttUnJXTENqRENyN1lCY0lBZjNYWmZFVkg3WkYwZ1ErTFhVMmM4UGJvZlc2bTAKQXZROTg3UCtPS0dYSGxNUXBjU3RldktIeU1WOUhZV045U00xZGUyRG9zOFltT0lGOTUweUdnMEdRNzZ4aThBSXJCbkVTanBwcWxUTwp5b3A4UDYybTdrUjhSUDh1eGFYbm5tdHVvRU94b3VIRG56TkNwbXlaczkrdjlkVVlXQ2VhUTRzY3ZtOVZQV1A5TDBYZXJ5TjVqRVBqCkdrM2tsMTBCZG45UjNraHUxZUJIV0pvRzZOTlZkL1FTYkZpMGYzbEV6bCtDWUdxM1cyQUZwUXRxNWJ4Z3BBT1F4ZllCeUMrRUtDVUkKWFVld0Y4cVFSSzZRQWlJYjVONW0ycitBWE01aGphUDB4QmwzS3lKaGlDeVRYd0g1d3lzZHhubzZoaGpHWlJVNG9yaTY1VTVCNFdFOApGM3hTeWtNdkhHTUoyS3lqaVdEU0h5VmFYL2d3NDNWNGUzazZkN1lvSnRxVUlpTVNBdlNXdDF0ZDNUUDBrd3Z0Q3VJbTYxVXJqMjVJCjJXV3huSy9pZVpiVlY5ZU5PR2dmYnRnMTV3STFVenh5djM3SFJ1NTc0dUlFeDUxWDZodXI5KzgvM2xqNVJPeVVFYkx4MngvZU8yMWYKbU9XdDl1bWJWWnM2NTc1TzN4ajVGYVJSZ0RJSm9Dc2NMWUxoZFlSZGxvRVJvYkF1Q0F4dXBjNzBMTmRseEpmT3A0bUdHTmI1ekthRQpBaXV5aS9CclZzOVRNT3RVdlhFVzRaTHhIOThuSGY4ME42aTBxcW84aW1IOHVsYzFZQWNqTW9YMk8ydlhtc0YyaVJiRkFWS01pTEY4CjFoRmNkeUkyZUdCOHlZL1hkVkljRTNuNHFjNmQ3L3BDZkNNd01TYmRIQUk1SFZQdDNtODFZdjd2NmtEdlErOUZCZ1ZzK1Vra1V6Q1oKMEVYMVhkVUdYcnczb2diMnluaTNXOHRQZ1J4cVFST0N1V2MrK05jZ21FSW1JL0tlMTdwWlhCV01qaTdVQ3ltLzBMVXRkU085WGtPTQpkMU5QUm9lVE5LcC9iWSsyRmhBQjAzOHBScWh1V1JWQ1ZxOGVKUTUwMVZ2OEc0aFNLUE80aUVsSXUyOEk2dXY2eWVHWTQ0and3aTZRClhnbEdyVENHOFhoNHBWV0pESHRobG5YNmZjZmc2WjU1eWtZRk93dXJmeDlNL1hpeXdYSW1OaTd1L2FPMTlmL2lYV3FlNTVXRyt5cmkKNGF5Z1YxZVdULys4MDlXc0twTkdyVmJYYlIzL2QyZSs1WGoxOGFJMHp6M2FtY2M2UjdlSjJubVZQY0lWUHY1bWNlWDhudnN2YmR2Wgo0KzVPVXcvUnQwY1hSaEJJL09vUFI4bXpPb3ZENFlEODFLNlJxZHBPNEVyNmFlcDA5dkdVek5CT21YcTkrY2lKblcweUpYb1pad0djCm1nV255TitlcDJiMWhIMVhhc2RuRlVVUnFZWDZjT1RpTnRWMlJoRHE3YjJ2T3RWV0cyYi9PbFhCZHZKdWR1U1l1ZUtxSmp3ODNjYmUKY2YvWHU1dlhVeWVZekh3QWNOY1hjSG5VTjlGbXlLbXVodXBNYVpVNHhkeXYveHZ4QlliWmZRVUYzS1BtVVVTYi9mWHUrRHYxQ1ozdQpqN3VhYkNnSUtsRXBERms1a3Q5SmNYZkl4VkdCZnhHQ1lSeFZ3U2g1ajl6bUpnU1QrbElvMFZtRy9FSUJoczNjcnNNQXV3eWRoWFVqClQySVArK3ZsR3pIRWFHVE4xV3lnT2U5YWU4ME9meWl5MmlXY2txTVpadGVwR1ZZVUc0MVdiNUtsRzVSMEFSbHZIMVhxVHlScUltcUkKVGwrelgxeTV5WU1VNDJrNng5VE5wZUYxbVF5Y1BtOXVET0NlZVFsaTZoOU1IVGsvWmM3Y29TSC9zRzJ2emtpeldLd0tRYWl5V05LSwpNdktEeGhyWndxajh0c1lNTVlEWHpLenVXL1QyUnpWVmxyZ25ldFZIRElyT3poczRaSy9HZmpGSkxPR2RCV1hQNzJkenowN2FvaHFhCjl4SzF2OENmeWkraUgwcjhnaUlnN0NLYnpGYW43QTVJWlNLRWZzcytoN2FURithRVJtMGtCcHpldUtqamVpT3lhMkhQbnJEOHVQdDQKSC9JWGxzdDZ3c3FYVXN2VDJ3WFFwRXVtV25lMExJclhrZTlhTGU4VW5hMjI4blFWVG1lTmt2ZnIxYURWVW80VlFZNS9CMzl3UFpMNgo4MXN0eHZhMjlzdnVKL3k2Qkdubjl3M0o0Y1cwb2xZVnRYTFF3ZHp2LzB0SHVuTldCMEZSK2hrdXpxaHd4Mm9kazh4eG1iWW9QOXRsCmk2eGRheWNqSjFxOEhPOVdhMzlSbHEreXJCeUJ3ZWpiSERSVmlrenJQQ3Z3L2lveThMQ1FTeEJwUjJ5cHp5aE9LYjhnVUErSDVJNFgKTCtEU1l2ajZOVXVrTTFhaXBEdEZsYnRKUTV4anZnVng1aVprdHgzWk41TW5pb2dkM1lnT21hVHRJaGczdVVuTTlFZUdzVlJlb1pybwp4c1p0WG9KUnU4MkRhUjBlbFZXcnFNbURWeHl2SEhsbGM0MDd4bDN5clQ2bTZNRmw3Yk5pM1VOZnU3ejk4dFZuZWhuUzlrVEhtdEoyClJaM2RNcjk3cGNWNk5pTS9MSERTanR4dUx2ZW9vcVBsbGFPME05ZW5KUzk2OVk0aHZkb0VkMDQ5VmFBMzY3dWRVYmpMNVdvRm0yRXQKVTk3ZlJ2dGlGOG5QVGNVWHNiK1VNb2xmUnpIWmpMRExDb3NHRGhRaFBWa2hmTEJqWGtLbk54YzBqdHlEVVdWendwWDNUc1VZalVSZwpFVnFSL3pQSVBTdy9Ecy9BU2tnK1dLYUtWeURCbUdxd0s3aXNLQzNMbXEzYVZ2cmNTcUFFUzZ4Y2ZHVFpoa0pacnpZMVduU2IyKzNaCjVwd2lhKzcwclZrdDE0TG9YN0JoZHZnbG1KdXo2SGdBM3oyOFo4L0VnN1h5aUNuYi9rdDZBYXhPMG5vVU5WOFRnbW50ZXRjNFl5TmMKQmFqSnpPUnNSck94OWNUZENzYXZBdmRUR0I1MnpaeGRzUFBxWmFuYjNPME1PcWFVdUZJc0srZmtMTnBldmhBaThrZmkxeThFR0d2MgpMblJKeHFLcG5KYXphR21Sa3dTWFdrT2tINDJSZU1Hd20xbzgrK1B4QTB6c2VWaHJZZFI0Zit3MTlkUk9sVU9Ma291dTBDeGw5amEvClJIK2tKeW9SMkFiMm5rUFpwakVIbHJ4cit5WVpjdmpqMEF1S2lwWkdWNzk2SG42TzY5RDJwMFZURm5UY2lsNjByWCtEcmZQcnZsei8KL3Jjdm5Nekx6VTJKRzNKeHRIVUhFNm5VMWJ3NkplQlJLRnl3bE9vRlNqQzdZclJuMVlYKy9vbGQzOHVKbnpCNFlXd3NTT0lMK1lYeApMMEQvSVhvempnSTJHVEZqTFRUbUpqa2pGSTVOS2ZNdWxYMVJzYVlpNElVTnVKVzlPanBtbG5UMFNqV25ub1lQYUlocUdxRVkvWHFyCmc2cUpSZ0dhc2JDREJnU3F2NzZ2TW9JOGFBdjVtWWtwam9ZN2pscDJqNEIra0VaUFVrWGVMK3dMRSt0YkM0S3UzdnpGOUc2RVg3RG8KVGZqdUxkdzR4OTdtSWRQajNqMytDMWpsVlJDWkM2Z2dCdDVWVnRiaWxiS0lzb2djaldmU1h1bnBPNUQ3VDNnUlZDVzNmK0t2Vnl2Qwo0S3NhaTN2VVZ2QW9mQVdIUHZ5aVNjQ2cvUTJHY1lLQ2gxMU9sWm5CUWNtSUtxNXBMNCtvczJIN0xxZVBtN3BKZEdhNmxkZ3llZVpxCjBHand4aGdHbDlEendxTUNwYWpFT1lReWpLNkpUaDlKL2FDYitJVTNMY3ErbUZzeHIreXE3bVZic3UyVVB2UVlKTTE2eWJ4Z1cwSDQKTk5lQ0NtSDdHNDlTM2pSalFlRzlXN3MrOHVvOStWL2s1VUVLZENtNVFzaHlHQlo2WDNaaHlqc01NRmNBNS85TS9oZDc0aGR2R0EvUAo1OExyOUZWS0x3MXlNQWw3ZktENHNsQjZlZldrZ3QyZEhTZFM1dVdtUU1lazlNODNJQ2xqaWtvZXhwZVdQNzk4eGtvMW5kS1FYR3F5CkFTS25MU0ZIay9OVkUzcVIzNHMwZllGT21Xenc3QzNVbGRCV0ErWlJoaU55NTZ5QWZXdDdRcjgweXUrcUtoc0U1dm5tSk9SWDJhVXYKSkg0dGVsTUhTNWpDNXg2T2ZQeWM5L1gvQ3RTN0hJKy9OSGUxcEJkRWxKVkYwQWVvSUlKMmNTZlgzRzFuVUtoZWFyblhiUWtwbTE3dQpGT1FNNTlIS09ZNFJHVkdtZHRIOERGU2ozSFJNWGd2bnZZZkJtZEZWRk1GWUF0aGoyMFVrUlFzV29xUGVpT3FoQU5NeVBUcWwzd1JoCmZZdkRidzJ5VDQydmRSTXRVTzVpdVJabEtYaVZyRXBxVjQ4YUlxMnZvV24yM3V0djJ0VXQ5NS85b20zS01Udnd2RFVZTE9ISG9JK3cKMWV3cVpqcTd3TGl2WWw2M040NGV3angyaEhSVTZ2Nzkrd2RVOUhmdUdYandBbU5waSt2UitTclF2T2QwUTYvaStuSTUwK2FyczZHYgpPaXo2Wis2elErRDExdzhCOGl0SXExRW9aVEtKWHdGTi9KS0c1T0tvM1ozVnVaOVBMejMremFteXFmY0dkRmpYbVdpR3A5U2pIejZWCmVoelNwME1tUEhwK0duMlRkUElOcENRYkdnK1dpN0ZLWWc1VDFVTFp1amkzcmRWMnFiSXllTzNlUzlGMHJCUHJVNTg1WjBmK29PY1cKUGJLaElhYWlYM1NCaDlWcXdlSzJUUDFKdW1CY0hYM3lzbTZFWHpBNDlXaXQ1NkNwMnpQekQvNGZGYmZSN1lOUFJUczNpZ3AzUHl5UwpiMFpqaEI5cUhaTitZQW5EdEpyNU1HNGJURkh3YmhoMFhjamc5b05NUWRNUTVZTEFLend1Rnk1bDVPRndvVWprbDFkRFpLNzNFb1lFCm9rR1YwVWtNMitJeFdVRXVrem5kbUNQUkVqeExxMXg2eEE5SjZoSW9mbmZ0aTdjR0NYM09zMUllZmJNQVF4WTVGWXdnWWs0ZzZIazYKaVhoWWp6Y3JBVDAyVFhnMWV3Y01DR3NYVWVCMjlDeS8yRGJmMmdlZTNtZDFkM1VZWk9wWHkrQjBwbEZQZ2VMZXl6Q0NVOGNQSFptUgpjREUxOCsza0FTMkhCNWFPa1owR3oxaWxpSFdQM0JyL2lTVm8wMGU1TUtjY25wbUYzZzJrRnlxUlNXRVFwb2UyemZKTDR0Y0RoRjgxCi81aGVjMnpOSjBaejljTm5BcXNpVDVadVRaaTdiR3VJV3kyZkJtc1k1dndyMHJBbEJBT0JFT3pIMnFnUUUrLzdYbXl6N3Ntc2dvQmEKcU96ODZyalRsR0RZWUVDOHFuVDlFSjBvNjk5cGUxWHUyenM4QXdvOEE4UXIxdDZTbDhPQTMrSER6azJIRzJ5eWZjSTlnd2JkMlh2eAovNUZkNUdSRGhObnVpUDF6OXNHOTEvS0xNTXdQZnBpVWt6UHBrb1B3NnlmSUdoVitNZ1dGYUxmYm4yQmFseFkvYlBSaHl6eTBGUmNICkxFdnpDekgxZ2U1MG5RVFQzZVdrTHZkT012R2t2SjZ3RTJQUjEvR0xqR0xjcWhyU3VPYlU2WXUzMHNIUmpBNDdVZlhEeGFmbHZxd24KNmlsMEsxU3MycVhFTllSb1MyMlExbzExWW8vVTVnVXZZZFRCSXBpbk8xVVFXOW9sc2p5OGdjbnJ3M0JuNjYzdVZqWUR5NTUydm5yWgpTRkZQVzFiNUJCOW1lWUNzb09lK2ZmTStIckRNZHk2bFcrbkdIMUF1SGdMN1B0b3Q3dE9vS3lIM1BrS2g4czZWeUM5MGJlREI3YU9wCmVsaUdvUy9DcjBXREpmbTFZekRoMTVDN2tWOXdDaUl6T3NkeWJxT00xVVFjZnpuaXRaWCtST2lkeC9kRkp3bmd3Mm1aU1puK01mdkQKQWh3Sy9HSndKVjFsWWNkZGZZbkNvWEpXN09pZEprVXVlWmNhNnNQaTV4L2VkQ0xLTkxEejhUZmtycEl3WjhIVmd2Q1JrbDVLVzVkcwp1MkJla2pSMDFOQzFxUWYzYlBzLzA0dWM3SUZGQXgvYTBDT0ZqYmllWC9mV0FlVGtFQWxtVnlrV3o0ZXN1UzlrelVldml6djA5NnhzCisvODFaTDBqS2dRaXhPZ3lDQmlKZFpPaGFNVEtaQ3JFcEJGeVhSeloybTRML1pzZzdIRnp1SktZM0huTlBpZ1RuWXdDcTF6a1I4Y2MKYjM3aDFtSlN4R2thTm5keFJBdHN5djBtQkpPekNrSFFja1F1VzBXY1NsaFVGTWxteVhYZlJMRG5Oa0tjMFJnY21kYXRYTUZkaVNpSgowN2lmUG5VSjNKN1lPclhNSXovdGRDdUk0SDdtY2ozbU92bjRoYi9DOUE4ZXZCQWdQTFFNWkpFT3FWTUdMb3BISkdaTTYxRkVVVnBaClZCVGJKVExqMGZRZkRnMGg5RG9FL2xGRWVoSHRzSDFRdE9KTWVYZGlIUlZCY2lhWXJUQllPdTFpeXE5MmxGL1FzK2NwcUs2dWdvMWwKZTRmNkxYL0pjcjd5eFVUNEdrYm5EMmxWNkY5SU9IYWVDRE5JcXU5ME9tMXRxWlVTVEpSanR2TmxWMmhKRlFhV28zcDNQVjlsdCt1cQo3SW9nMGNqQTBlNERVdzRkeSszUkp5ajdhcW1aYjh5RlRsOUtiK3pEdGoyNy9oZHFlVEVodmYwK1crWU5HaUJsRXduV01RZHl3S1pZCjNCZU9PVjl5UFltcWhOdzkrYi8yVlA3L0Jsa3JDSEZXWVJFVkhTSlNUYk9JQVZoYzZFSGFlRjJ5SWN5eFNSS3BVMWlLazVHUytacjMKMGZFdWhwT0RxSkc2Mk11T3o3NFZaU28zUXVmdE5CaE9GeGdVbXdRVFhpZWpZSEc1YlRtbkZRQUx3RER2bDJxS1RiZE04Tm8vT1hoRQpZOE9WdlUyUUYrUitOV3YrMGVUTlZuRFBPQnhacDI3UXlXUUtSaTQ4LzlJbEM0MnhvZnFIL0FyVDYyTXVGZlRjM21QNEJzeSt0Y3B3CkVTS1h6SVg4NmpXblB6dzFldVdwcWs0ZDVKbWp6cFZ4Y0dqak00VEdrdTNWUGtoRDZBVmppZnd5dTVNaDFRcUxLTDkyeDBueXExMmMKS1hVTnZiU2VsNVBZcXRnMTJVR3lqL3BuaGwrNForZVl4dk5RK0ZKeFBmalgreGQySXRybHkwZkhzdThjcy93d2ExTUVqK3RvVTgrdwphTkJGMTZEaVpiODRNdkdpSGNoRHV6UElwV0NNbnF1RERKNk1uWm1qUi9XdlovTXNFUHVISkFXc1hqTHVHdGRHRXlMOGlJWkkzbkpTCmp0N3dZOTlaQitmRDNZS2FXR1B5OE1IL082di9aQkNDZ1lrWVlFUnNpZDZocFpMckdnMENWWjNRTkpHN0dlOGlLVjdvdXF5aGZ3M3gKNHZuZ1JqVnRKTk1VNzlLQlFDd2NBeS96T0ZFbWtxM1pZeTgySDNzck1jam42UktRT3pLdkRDTlh4T2dBdFdDeW5XaU9HSXlneTZPRAo1UFZvNnROeHoxWXcxY2J5Y003Y0VYTGt3VSt2WWcvRHlYcXJDMUpuSEE1bDVhS05MYng0cFhSelBkMmRLSGNvckdTWWNHc3Nzbzc3Cm9LSmhBeENxMVZ0eEpRWVVZSVM0Z3g0SDJWT2gyYWRxTzdVUk03dVlyTFc0RnQ4ZWRSVFNpK2lHRjZyS0NiM2FBVlRMb0J1c0JjV3IKMG9YRUxSNThybzM2NTFuaFVSWC9sQVBOKyt4NXRiRXFPTUFlcGRsV2NWZEo5TkdhK2dGSE1jMnlWWDA5MUxjeUVJSU5UQm5ZV0xFLwpQSEIxME1JU2hZRDE1YXhvVTRwK1VHd1BzbVByNCtVaUpuRklEQlBxSGVHZTF1M2JjZmtIemlUMDZ6OXkwUGcvSktheWVza2t2eHBDCnByMGxFc3hGSmF2ZXBZOXlPcUlGUnJSRXVQdThJcFZ6SitVZkpGTThyM0pPKzY4U3NmNi9CUG02cmhBTng2a0NHNXBha3EvYXBxSzkKdjRnZ3crSXBsZE83dUt6M2tDZXFwTDhqK0hDbkdmMEhWT3A1WVhOcXdXRkNMN0RTS1hrZmJYVXRYcjZWWUwyRlgyU3VZRmhSS3U1QwpRYVZ6MUJySmF6aFFPYXl1UjFlOXgrdXJKNCs5RGhIVnB3RFRMVGJZQlVQSktVSWRLeFZrZDdNWnZZOUxGeXdERnl5QS9rMHUrcGdZCmtGbWhDTFd4bUZrd1RiZjgrYTY5M3ZrRS9TdE5KWkF1K0pLODkzMGRnaWkvY3JyY3Njc2QxT1NYYnc4YTdBWTRGbmVzQnVnQ3NGYmgKZGU3dkhwMzd3TGxROWM4SElYei9idUJXcW1FYXFGOGFFbW1mL3dJSGRkREdWQUhKcC9PK2VSbmpXSVVBclFvTEk0a0FBMGhyRlFjUAo3UitRY21mc1VCb1hFK0Q4eTFZb3cvTUhWVmRwNEpXTUgrbjV5WmZaMWlnNGtyUEVybDJ6OWhhOEU2NTRLdkwvRU9MNkhTamx5b2k1CjhNLzJqMGxxQklFZy9IUnBMallZZjJJczlTR2lKeEVhd2U4TnI0MFdGZGw4OU8wSytSWDZ4NStWeWhTOUpITHFCUUgwV0xpS0svQnAKY05DaHcwTjYxZWR5VjV0V1NFRmFITFZTanpkeXBKYnNTcy9sMngxT1RmRWVjR3N4cVZIaWx4UTM5eFpQa3JzSXNKaWNIbDhiZXZLQwp4RENRVnJaRWtrblZsNC92QlFodzVnSHlLMGZwejcveXNqOG9NVkFMQTJDWmE4RlNhQkVBVThiTSt2SVNwc1dIeFlCcnVUbnE5THlNClhpNXdQYldxQ1A3eGlyY1RLUFJTN0J2eFpBZEhCdVdYT3l4TDVzWmFGWUwybWpORTVZNGlueUd4NkRFY1JQaTF3Y2N2T05ubTZ5NmgKNnEzbmFydW03b2FWTTJiZ051N1l3RHIvbXVUUWt6YlFIVk1tNXlYVzJzN1JDQkp5cko4MGZQdWxXYUIwd0ZtQWdoVFhuWGozQndyZgpIdFlKK3YwWVZFMG9ESk5maXd5V0pzcXE0SHpRaGFVTHlWbEZFM3FkMDI3TGZhWDEvTkFYcGJQZFJLeXUvVlQvQ2t5SFYyYTR2NWQxCkkvWkZWbXpGa2JyZ3pTZWdMN2lvUnZyRUQ5NWRrVjZUZmlRQ2R0SWZ3L1JiQ2hrNFZRMU9FT3U5cTBOUzZEZ2xNREtYeDQvSGxEeUcKNkZkeTdNUUVkQkd0WjJ1OFRVUTdpS2RvR3lhdkFNT1Z4NTBpSS9ONHpiR21ERVUrTHFGbjE2dk5udkpiaEc0YktXVUVKYTR1NlBCMQp0bUZBRExJWUFCY0o5QkRGVUU0VVJhMUxtaUl3OTVLaGEzd2l0cjBHOFFxUE5aM3dDOHdhTGJNTE9FV2hGU0kvclZZNndIR2s2VzBRCmtRdS96R2NqUzJTUUFDNzEwL25GSG9jZkt6K3Q2SnBSSDVNOGZQZ0JWQkpkM3lTbGlFdkQ2c1dpZVEzeUhIZmJZV2ZZaE9nd1kzU3AKeDFNbE14aU1SdHFMQjhOQlhVSWg4ck9GQXdmaWlYZmszdi9HdWRCUTlZbXpSWmRmM0EyUTdIM0QvRkdxSHVHZmFmT2lSZWlaMmFETwpiNjhMYWZMaUZFZW5RdjkzeFlHSC9tM2RQTjlsQWJDd3MwdGRiT1B6bXo0dURHbUVTMVF6dk5UWU9GZDVDUjhGanlpcHNpdHFhd1ZyCkY1ZloydFk2ZmxiNjVaVHIxMDMvbjdHaVgxbk15TUUvZHJnajdNaUpVODdDakl6OEkyZVBucldXOE45K3RtSlBUTVh5N3grNkwvbksKWVhSMmVwRkRKdlZIM21weGh0c1ZNamR2VllCZG84SDJHVDd3Q3N6aGs0SEFzbG9scm4zT01sNkt5U0VnNlhQdlhwMFVaOUVwNEpWaQpETklQbzBsU1hVaXpBQU1Zc2kwbGE5WXRkeVoyMEZRaXdaVFkxNUhobTN5REFXS0Q5OHFvV3dQWHYwUUtBcjBGWDI0WUVXT0tGTGhEClV3NGRBVEt6QXRnbHgycDQ1YlBmUWxqc1R0dkVpMVpyMCtrb2pJV1hLdjBWUmJJd28wc05LWWJEZzE0aW53d3pXcDgrL3d5aHhQQUoKUkJtVDNiR3oxM2RXbXpKdit1R2dIR2pUdDZqZW83TFpuRFpDTFNQTE1EVU9oNE90ZDFSV1ZqNW9NaGhnTUM4NVpiOGJiUGVFbWlNeQo5K1ZkenM1ditZN0RlM3kvSzZ5ejhrSlVZYVpCcm01VkZkQk1NTmlBM2ZKWlp1cmJjWjhubmdKb1BTTnJ6WnRYWGZ6K291SUlKQmphCllFUy8vOXNoaVdBdnJLKy82NUxkYnE5ekZtbGRDZGxjUkdQU3MxUDMveGk5L0thNkYvcXR1ejk5V1ZyRzExdU91TjJOZUFFOGpRMnAKQkR2TDJ2YnZhZHo0K1lENFZ2ZDFIN1duaVdOeVIrQ0VtM29KZnhKa1pCRHlHakxpNmxyNjJWazVpK09Oa2JHaVM2dFVZV3NBbXV3QQpibmx2S1FaR2tGaCtwVVVtSHo0SXJuZTczUUhvc1VPdStWN1JSZWJQUG5GNTRxMW9udDBTN1kvaEVyaUNITmVmOWpRTlA1VlY3MnV3ClRvQjdpSUtjbzMySThRNmFGcGtOeXEyRHphbTRzSEptSXNleUdYVThoQnd2RFF0ejJtUmRMMXIxUm9jdmVZTkEyYmtZckFGUDd3NkwKY2FrWjdzalplZGJUQ2hGRzd6NExYWHJUSFFqQlB2cDVrSDdqWis1OWNjNndiSEFIOUs3eU05RHlMT1FXSXdnMEtEZXJUNTgrZy9GagpVL0FLNEdYdkhZaElQSGM1d0pMNFdlQytqbDNKNXNoRytoODk4ZmtsVmFlREx2WFFoZ2VHZUxxcUJFNVZGK203eFg2UzhJbDV1eWhCCnhoWUJ6SHZyemN2L2V1T0t6blhaUDVZUXJBWVZSQ0xXRWxmWTdWaXFjdmlpLytXN0xPaFFySFBXdTBTKytrVGkyY0k3Y3EvU05XZHYKR2lZZVdYZEo1WFlRWGttT000Uy82Qy9LNVI0UHg3dkpUUDc5dnplMjhTVGQxNzFQcW1RTWkvQThWWWR2ZDhqOFZTb1ZkcWRnc0NtSApGOG9HbmxET2cwc2NNNnhMRUVRR201elJHS3k2aXhRREkwaUlTMjJtRjMxa3hZTlVBbnJ1ZlM5Z0h1S08wWDVIcklOdlJWL0VsaGg2CkFRdHZSSTdhVmI3UnB3SzF0WmxmYUhrUkEwekFKbGpTSFZCdkR1TDEvWnpwYjZsV0UwQmxTTFZMS2RwY01rMmhQc3l2SE9ZNkJsODEKR2lNajNWNk9MVGpWdDFRd1Evc3VPL1VMMHhtUFJlYXBNaWxnWkJ6MFB6bWRTSFdjdHlhTUhyTjdrUDZac0JOYnc5L056WEt6bnJIYQowT3JFRUlvaXBWS096YmtJMHBNazg1L3dpNWZKM3VNZStOclRHSlkyWkZXUHpZRWZRS1RCa0ZaZlgxOWNYdzhZN0ZLdnZETkhXWHZCCmxxYURRb0VMTDFkRitXNXhReDJIT1lsOHVtVW1jOVlLTWR0Z3orS2NmNzE1aVhjSkVSR05VSXdwZmdCYXNRQnYxUTcxLzFxamVWQ0oKREFPNzNWbGJieHlZbmgrc2EyeTgvTUhOREVFRkZyR0VYTmd3cjNtYnk5cytDQjNWUktBcDNZZlcvYnp6YitIM2R6K0FGSk0vTnI5NQoxOXNZTWkzMlhtUGNTbVdMNkxvWVpIVWlVSlh5TURLUjFicklDTVRDRkdiMjJxYTlPdm1kOVUzaVBxSjVBdFNyUEVQMEJkNm5GSHlYClU0TS9VTWtIM0dvZHNiV3BqQUZzUG9zMm9tLzB5UVBFYXpPWHFWcUlDN2RUWlZkc2lvS05TdVUwZjB0VlFHWUlJVmlQYWlWUERGRnIKbUtiY28yZ0g2NGljbnA1dURHNGRWRXI0dGV6MUl3Sll3K1krRlJhVEttZVk0TU16R0VXZHVnMkFIaTBtNnZyaFJPUlg2S0NOc0hIMQpCUXhzZDlGN1Fzc2FLZno4cmxvUmV2TTljZVFQNW1MSVJKbTRKS0pEYVdNWDgzRnp6TDZxZHNJN2hmWEZ4Y1crYTY1dkZXbFl2ckMrCmZXMnB5VCthNnhqaE1lbFUwRVN3QytUOU9HNTh6aUZUY2ZBeE1sTVFudXhhZk9henVUQmh0UitqZ1FJV3E3OUFtOW1vUmtkOThCeTUKemZ5RlJUWEtTekc3TTBjZjVLb3ltS3VyYjZZSXMzRFlYS2lwcGtudndrUTFINXgwNnVaNTNzUTczOTNWdSszOWNhbnMzWmU2SEd6ZQo0emFHVEMyS1NwYVZXMTFTRjNrS0Q4aDQwUEsrdGZZSXhjZ3oxQmdIVHlodkRrRW11VTVTeTl3cnZnaVU4djdKSDZXZkxyZ210cXlMClR0akFnalBxVmtmRGtreFpMSWdpSlZpVGg4Vm9wOUVJTDJTNElCaE5xQ2ZHSnRHRFJTZjJTYVNJcnJad01wY0FxUmNEUStSKzFjcXUKZWExaDRYbXJnNFB1b2NrRTBLM2JTWmU2Q1BtMW1tUE40RC9rUjcxUndjQ0puSWR5ZGFYS3NRQ2hhNGxhMTYycVV4VndWVWZ0U2MrRQpCdTNrT2x6QjFCK1ByRkVSNFBtNTFkRldhY1hSUDFwNG1pN1l3SnpyUnY3NEYvZ1RtbCtwUzl6ZDJNYTh2ZGhmMlc5ZGttSjJaYk9GCmhhaVBob0hMeXVRL2QrTFU4NGQzRmRPdEFYd3p3UzdqTDF2U3RJOGVLaXV3UUNoVk9IWjluTDQ1cCtpcVg2d0dpb2hjSnhUVDlxL3oKenlkemFFQnZaM2FuRno1ckxKMWphdS9sR08vUWRxMStacDBDRStsdkV0NC94YUxUeXplMzZhMlM4UEt5ekUxZW9CTWJ6OHYwN3RXNwplaWZjSC9lRmRiaTNpT0EyQnlzSUFrNmdvdGh5WW1mdC9iVGthOUJDUTBNRHRzQVJXVTVQSm5qbnNkQ0U1cDIyVTVrbmNZd2dUQWtQClR6YXR4NitsRWVzamZMQXB3c2tvbjA3N0xkOUtyQTlrdlgzN21xR3lLN0FUdFFSR0puQnlXcmlDODZwVkJOSHBhVm9DYlYwL3VuUmcKSmtBdVByV0JXcGkxeWxyYkdSYVFaeFZyWVczRkovYzgzeDhXYkhqOUMwNXVCc2JJQWE1RVBlWE8ybi9vYVJIVDdyV2pLN3JCdVU1Wgp3UFhJdDkvN2pPZk5LN1dhZUhTMWtwL3E5THp2NFNnV3BLUkJWWlcwVXFSazNSZUVGeFFVck5xOSsxeEk0OXEwQmRPZmRDeWNFandmCnMvSXhZS1lCRFMxK1FEQ09yTHI1UzZhV2xwYUd4SmxBaCsxaTZSN2I2YXZKOEFsY0hKb0g0SjNxSG4rOVRXRVJaTzJJa0hMYXFvRVoKOFJwOUlYK0JwdTdBb1ZaYzFnTWZXS3Z1dWdzM1ZSWGtiM1o0WTUwM0NlZm9IT2RVT2FXcER0MnEyT1pBS29vaW01c1c5aVYyWVpqcgo0Q2kyeDh2QnozbzMzZWFRS1dtRlBPRUpKeldkcHVCbGRWM3M1SzRWQ2dWUHhGaURDb1dZS0xvWC8xMXh0V2tuWi9lUnFXcWZTdVZoCmV0MDl3TEpKa205ZFc5cGJRNHhYTDdubjFQMjd4YVpiZzVqVEdtQmRWSUkxYVlqNmVoKy9HSm1iU0M2T2M3c0ZVUzNucUIzV2xCTE0KZ0h2K0ZsQ0ZBam9NT25KK1piTExyQ0ZGVStPSUxCdnNzTmtnemhZWGVLUlV2UlFlNzdqV0EyYWlYNzd1MlpsQUJGamMzNmRzTDNmTgpqU1VqZHpSQVhIajRPYmRNbkZmeXhEUHcyZUh0Y1pyUWJEZGVEOHU3NituN2VMQTZ4RzdYRWZXSU1DZjl3dm56NS9OU3o1OXZvOU9GCm10Tmd1aU5xeDlZcGpwZko4Q1JmQk9DUFE2VVFORUsvZC92RFVjWHJ1V2RpMGU4QnJhOFU5WXdVUU9NZ1A1cHNldUxna0YxRkF3NVoKSU9aTjd4MXRNejk4RVBPNE5LMVEwN1NEdmZjSE1xbW9jbSs5N01xd3hKZDJPRTRZTGkwOU1LSjlEWG5SbnZ4bDFZcWI2TU9UMVVodAp1K1MrMEEwdGNtZ1NZQzFMZXNnbmthMzhyazNQVmdQMGYwaSsxcTJHVEVrVDhRaWtOalkrS0F2cnU0VFpWU3FuZ3RkYWlWYmxZWlYxCnh2bkg4cTh1VEduYUo2UFY2Q01NYmV2dVVibW5SMVY4S1gyNUFBRUZUZnVBYS96cW5pTUdsKzYrNVhFd2FEOXZGK01sbU5mbHAySnMKVGZ4QzVSR1FWcUtIY1RxeGg0RFlURVRDc0JYTFFHWEx3Z2d0SVZqYmlBS05UbEV1aEtVRWRNQ1hBN1hhcGFIOWx5by9xOWhzYzFZeQpVQnQ3c2NkWkl3dFBQQmxsWTJ3d2dJaVRPTEpiWGh5WWxmRHZoUHVlWmo3NmJwWHBnMHBpZ01uSWo5dmo5T2haajR3R0NvaW1VRTFzCkh5VlJKWGcrK1VxSDBORFFvNzNNbHJRRkhRTjNMeno3ZGlIeXk0dCt4WU9MQlpVRE5rQnE2a3NEbitQRmlXRDRlS3loY1Z0TlAwb3UKaFVQanVHeFQycFFkNHlJOGFWd3VoTTl0OWxSY1lOcGFsSEh4alNYVjZENkVIZlcxaVpYWWVwUXU3aUhXZGZEVFZwVjhXNUNyNUxRagoycmZQeWJVTzNvTzFZRGNGcTNkZ2ExZTMxd1lqdkpLb1JYODU1ZDYycndSYUhpczdlTjdKQnZrbjFJZjlKWFJFbVZ2bW9XcVI4OXFVClhoNE14VmU3bUdwVktqM2hHRkdlV1Z2dy9OZnlBVktHVDIyS3NtYTE3WkhqMFhGaHJqbDlZemVjOXRFTFlFeHFzNDkra0NjNysxVDAKcHB2MVhmMFh5RkVyS3pIRkZxUEkwdHZMOVZMVk5XM3BDMFJ1ZVVRcEdrWVRmajNnYlBLS0FoTnlBTUs3dFViRHNhTkdyb1FDazlKbQo2NklnSmhqU0M1WWVDeHkwVlBtcDhLM05BOWlnS1d6K1UzcU5ZdlM1L2NsaDVRRFpQa1U2TDg0c3F5bTdZeWJ6MGNyRFhHenBCVlRRClBMUVhxdE50MTlNbStUaTNhUWhFVVdUNlJVTTBIQzBLQ0xNY0x6TDFXUGY5NFhDalo2amtWa2QyOVV1RFltQkJzUlVWMy80djg4Q1AKd1pYNVlPVmI2LzBETkxoc09wRngyVHl2cTYyNVEzMzJySVhNTVY5N0Q2WjQ5V1NWWGQ5WXF6TkhtV2taU2tnbDJxTklzWHBWclg5awo2NktRVXFHQno1R1ZoZnp0eGRyWVRjMlc2LytLNFFld2NnbE5MWHptOGxKTGdyeFpQd1Rzb3FMRkgwWDI2cU54eHBzb1F2ODh5TEUzCnFPUnB1dzQybmZxc1VqQmdXd1l0R1JpcSs3T2tJdGY5KzV1SDRYcVk0b2psYXFDc09UdlVNSTRQYWFicWdKeWdUVk1jK2k5SGQvaTAKYWRzdHc4YlpPcXc5eEhJVVdvbWk4aGFWTUpoY2puM3BwSzc2VGlJVDBNUFYvRVVqTGdHTXZVeXRLWUR5Y1BMcmxabjk4a3l3b0NhUQpQRjdLUnZaWkNwOVdCTnBjcm1yTXRTUW1XQXc3K3IzODZZV2x3TTdEZ2d5eUcvbnpjL1NITVhjdnF0c0lNWHMwRVZSRmNDTzNXMFlLCnNPQ0wybmtEcVZHV2xBUndYRFJCOXU0OU1POWcxRkFOTnRPR2ZtbGNHcVNoSGdua284YmV2Ky9hcHEyWjl1NTg4Z0RxUUovWEZpMHcKMkRSdXV3MTB0ZHA3WnF3OFRKNkdQM1pOWmYrTGkxKzU2QmlyRXhPSlpabVlTWDdqQThDcmFTaUtPVEJNTTVibkM2QW1UTGg4K1VPSQplZjBtcGlueG1IL20rM1QxVnIxVktxRkRPTDJaYVlDOXBQQ2ZuZndsS3F6L3BKdWZyZlduUUU1ckxHOEk4bFdCc2t5cjBvREN4ZHdmCnQ4M2JGb1hNaEMxU1dLNVBNNXlvMzZLeWVCMTFPcHN1T2RnOWNZTkxxVHAwNkpHdE45RXI5VHRSU1RNTm02R2hJNXRCVlpEMmZhU3kKelJOZ29aV2x2a1dhSk16Y0M5TVBKbm9KWmlKU3lmL2xmb2M2a3dNRE1RbVJOUjdyQTE5V0JINEdMTzMrWTlMUEptZjdnb1ZkQ1FKTAp5UFhaazNoWUlOU0VlcTdrMzFsaFdxUk5DWS9UWmFIQ1FPWnkya2dtQ1BmQUhIdklqYzlOd29rQStVWFpCU2JJYWxQNkJUeGY4Q3E1CkF6WDVCd2RBemNuY2FveHdUWllZVmtyNHRVWW44ZXZkeE14KzUyRFRaSmpjTGNVRzlWMTdQL3prNGNHRXRDT3ZjeFQ4UGJaQTZRaXEKUnFKblFtWWkrZE1nVWQwQWhHR2pGTEk3ZXo5YTZ6ZGRXd0YrTnpQaDEyQ25LZ1Q2TWxUbzJiQmlockVQelI0TzVCWFNpMUlzNGkrUQo1MHNobDdpQWlVMi9hRzJEM3EwQU1vSHl2YzhzK0h1THpiVFA1UTB4cWRYbk50OXBuQkZqOU9abFU4b3ZTQzdGTDZZMlM3bGJoVTJUCkgxK0o2VktNcU1GMXB1VVBmQ2RIZnVFbUdoVEh4Q2lsbE9HTVgzS0xtV2JXejBWeDg5K1FKbmlpQVpxZ0JHeTJLQnlUU3pFcldOUzgKc0pUd2E1bE9FbURoUmdlRXVlNCtzbjZBcHBaRmQrQ1RzQlM5amVTVXo3ZVo4UXlFVGw0SWNuK3FJRktRVVIxVVRSbEcrQldmbTB1TAovSlBTaytBNFlaZFNWNXZhM1pFQzhiWWhoWlVjdG9paXYzaEtORmlERlVFd2VTOVNmdzFNaG5mcjhHdXFSSjFyTWpqeTE1NGRXOWhuCjJJeEZMaVd4QWNON2ZTdTlYeE9lZXpQWDBEYW8waXU4TWhNVE14c01VczZ2b1E0dStrZUx4d2JtRmExNDZkM3JEdnNmMFlDTVFVMUIKbW5pcmdwc0dFTzNoSmZGTGtsODBSSWVGYWcvZFJJTC9xYUNERFJYeHBrejZhMkVqLzlpc2w0UitMYmI5YXYySlFiZThPY3dVTU95YgpUN2RNM25QQllpTWpRdWVjdC91YVhXOE5ObFU1dkYrbVJzMW9uM1RqRXc4VllJUmYxTTBCZEJyQkQwRFZnbDloUHhlQnlzc3ZXcktmCkNYVXVLSVdEYXNvdmlPcS90RmNGZkFhMUxxbDluZndaaUxrN1pKZkpibVBSTFlLcDlqVFpQbVRuT01JdlQ4V1hvSW1ueGUrb295SzkKa0dIZXAxUTlKUHdDZTlycGVVWVRjTU9HMmxOcVRWT0NQNmxrT0c4WkFLR1ltNU9SMzJ0UUx5RDNOVEo1MmhxWVZ2c0YrUzVzNUN2YQpoSkcwTmRBdlBNWGUvZVVqNm9GdGhvZWRKWnJ0VjlLcG0vSGlVM0JtckMwQ0VqSCtRSlJFOHR1ZkNsc0NRMUhkRGlmMHZTTys0b1Z1CnE2ODU2aWJCNTZRUGJ1NVpwbXJPV1BYeXk2c2xQdllYVVJEaDJqV2Fid1MzeGdQcVl5Y2ZkallsRXNEQVprZml0WmpRc3JmTlRDNEQKWU9nUmgzTk82NjRCWXpyVy9wOGFmZjJ2S0g0R0xKSWpFUlF6eWpkT082cENDMHdFdVhkank2N2ZMVnBQdmIwUjRsVWhsWFR3RHliRApXMU1KK3U2TmxZa0ZTZ1VuQ0lLNmF0OW4wYkRaUms1aHh0bkdHdC9ueDFkdHF5NVBzZ29jVWJwVEZ5eGxHU1l0WlFDY1NIL2dHVUxYCmtQVHdUeTlXVUFWUnNyL0lFRUlKNW4zRCtKaXdzRENBVXVmcmN3T0NvODl1SmFyNGdJSFBHRjJFVzJxZlg1TzJTMEYrRVlObWFxZE8KbWFmVHA2WG45cjA2ZnI4TlhNU3NPOWhxWGZ2RVhrL3RpRTcrcWUzVnFtK0xzLzNHSThNZXBxeHVnU2ZPMW05OUw5UGhJZmZXdHJZUwpFaXVoMVErTFREVENEQ291MU1KclRGR09xdkpqNzl4VUQ5NndzelMxVjFyRFcxK3FxNUtVR2ljV0x0RFBBTjJIbUNCRy95bDQ0TWZmCjFQZi9NL0dmQ2VhU3MwcVpSK3hvZ2VNWVJ2SGkxd2cyV2VOWDFQUkVGMFJVd3NuZmVNRGQ4OHZ6QlNjSy9oUitnVFA3enROcXptTncKR2ZxTS9qWWRQc21vQk96UGdRS01NdXdhdGJpNTRVMlBsRGhkWkQ3Mm5ZbTNkS1FFazNzaUhKVWhuQ2pJS3czSzhIbGpLbUF6OEM1bgpKV01pcHpLMS90ZVhaVkdyTkc3UmlZdURlbzQ1Q1c5ZlN1Mi94VDE5SmdPaFFRY2hzdXdDWUU4aGtONHl5SzdWZ3BzMlBpR3dDUDY3CnM3ckkwL2wxWmZrWlo2MFFmcGZpWTFjMU5rZHBqaHQ0b0VLdnppeEFIWFBhbXZUMGlES2lWdkxseFEvK1NQdVRkNHhKNHpWVFoxMnUKTmYydE1PWDgyZW5kR3oyeHd3bFB6N2RzZ1kzWTlsWk8zYzduSWk4SXRkajlCaW9OVWMrdFBXNVdqR2gvQ1YvbE9EZzkxaUc4c3RXVwplVk9UNmNlZFFEY0hlVU0zZ1VQbE5rZ3BVNFJmM2lvaVFxbG1BYWJndGNOYUZOdmQ1dmlQQkhNeWNsWW5lc1F3QzB5cUQ4cjNiaDNlCi9zQTFlelZoOUVkbHZvZE85MVEraDh6K3A4akhlR1pXNjZ5YjUvTDlMK0U4UG5aSVhKZDJuYnNydmlLWDhQbGRtU0xEU0FLTXVoQ3YKV3hmR1I3RkJLUUhLVnBWSXNNREJxS0JwS2xtNVVhZ01xUmJsSFZ0WG05emRDTDlzdklzRkd6cEx3dm1YZDR5eGZYSTUyZTJTNDhwbwpxTmtKd3FHRmVkdlRKbitqOGRpU3o4YXJESldTeERRNERRMHFsR0JVS0NGa24zOTg4WkQvc0hYN0xSWlVCK09lMEtzV0IwcjBRdVFGCjVCM0lKa2d3V3lyVDZQV21UNU5IbkU0bUg3VnJZRVp4b3d2NmxXWU9QcVQ4Zk41S2NlcjR3b21yV3FseS91MElDWG5rNTdzSXc3QWgKenpYWXRTaS83RXhvNjNQVUpsQ3Bndk4zMWdkZjVDOHpBN3dVQzgxVUJ6VDB2bGpSQVVQc053dmo5cE5mYmkyTGVRdjRYS1ZnV1piRAo4TEwwY1dzSnA0QUtMN3NXRkhZSWJZN2UzZmI0andSek0yNEZML2RZb3kyUWszTy9iekpzRTk0VUNMc1c3Wm9YS0hKUFg0dHgrSjQwCnBTTTcvVllzZ1A1cnVIaThMZXY0N3JSVUxSTXo0SnhFTU14ZVFSZmlOY0UvOE9tSmNlZFZPdzlURFpId2l4S3NVaDhxaEVBMVd4RUwKNXJBbktqYmpNanNld1Z6bmgxNHhkYzBiYnRNcWpjMkl4UytDbkpQYXBIMmYwVWI3YncyRUpYOE4zK1psMHhBek9sT2NLTVBRdzBFRAp6YktrYmN2cUhwcWNOdS93aDVyT25lZWRiRzJhTzN6c09SKzlDTHZnZ0RuSkRQZG1KMWlJd2t2MlR5NmJsa2xiVFNmWE53VFd5bmszCmxBb3p2d2kxclpwME1yUTR4MzM0NDZ5b2JUTlRuajdaTStRbnNydEt5aGhwZ1QydjVsK3B6citMTnFNbmhxQXpKc0hVUnZYYzkra3oKOTkyRkZPTzRza2krYU1tNjBtVTNVWVJOUHVvbVdtQk5pR1BSczdHaitvN3ExM2R1Ty84Q1JxYVMrRWEwUThJclNpM0NNTUl2MWROLwpHUVh4UHhKTXg4c0ZSdUhSaUU2K0xZb3d0V1NGRGUrMTVMb2RmZWphclBHN2d3Y1dFSW5ScGhBL1FkNDEvTktFVHUzL3RNeVhuSXltCnQ4NXBmVVpOQ2VhVkh0Znp5eXZFSHQvdDl4Z2hHQm5USFVFaW1GMkpCVmVaVnFiZ2FvZytiRE9nNmVOa2JTWW9KenZFeWlOdDIwOGwKNndTYVVZaUxlb3B5cFhOSVNGRkZyY2JqTHJQRUZtRUtoOWRMS2ZNWTBGT0d3bWpBK1g3SGR3dlRKNjg3eVh3ano1eVJrS0FzREYyUwpWbTJXK2hzUWR0bFMvTExqTFdaSU9wQmt3YnpGZmhYSnA1RmZRRVRZYVdWbDZ5cVJZOWhGLzI1Vk9tZkE4QTJoQXVNQlU3L1VXU25wCjh0UE80MnM3dUMxU1JPQmE3SG4xY3I3eDNXMERrR0prTVB2eEYvV3l2T2VPN1hCVThyUXVERW9pR3lyeWRJTnVJc0cydFJWWXpkMGYKVG96dnpmU01hdGM2UGo3QTJDT28zenl1b05SRU9NWUQ4a29COUQrUlpOb241MTkvZ3RzWU55U1lEdXYvbEJZc25nUkd4YXRycUFpTAp2b3F2RGU4bC94VUJCc09hSzFMa0JSY2VKOUtyK081OG5weHRxaCtiZHJsTGgyWUI5K2VoM1poMFFnSk9wREV3cm1XZmhDYkk1ZkpWCnl4Ui8yOW9JZ1Jib1dLdXBWUXRjbzEzTGFnQUtvQzdhWUJ4UCtRVXM3ZnlPMXB5ZzZoYnlMMFdKb1ZKUEtDWm5XZHJoUXh2L2s2MFcKTkdFQjZhYmxHZFc0cHJ3a3hQelFCZ1BjcGZyeGxTbDEweWV2UDFGSGpCK3Urb2VENnpNS0ZHSHJrdUJpZ0pkZEVBaUJ1ZkVXTUNlUgpBOUpZVDNSQlJUTFJYRTlIUUVTYVd6UEFwYWx5cUV1M2gvYUNWWGN1OGJqMHJRekdaNWRET3M0YUFzZ3lwcVNCOFpjRXcvS3cvSStZCjk3Y053TFJEc050Vk91QXZkdVJlL0ZLUlB2d0tsckE0VzVjVXliKzUvckQvQlkvc2YyekNhRWpsVzN0cy9rUlBWRlN5VUtDNU92NGUKVFg2cFh0Rk1MMHhGc1dzSGZuajk0YmN6YmtRd3A0TmplRkVoNjFYQ0tjQXA2a1JuRFNvb0R6bUtZZmdEclpiOEdyL2crRXhma3EvTwpxcHpxSUVxWjg4S0VVZDI3UkVGOTRGSHh3cWcydDdxbytRWVl1b3FJRjdTL01MaXN1aEcvRU4yMmNDZmJscUVONW00RnVDWkdTTHhGCmp3Ump1TUYxN2p5Slgxd2xVUkNSWUNaUTlqeXo3NW5hYXRDTHZteFcrVVRaRnFZV1FCMmJ6blVxdU9EQnluR1dkVXRPUk1LdmFydjkKdFMzckc2bjA4b1U5dUhqb0hiZHpHbkFCZVJZb3pnN0VuQkVnREVNZlB2bDArMFlWUjFjazQ2WUlTSXN1QnRGb243dko5ZWF1VmYyRAprckwrRmFRT3FzMk9tTGtjazNQSXFaNC9IdkNnZWo4RTNFalQyN1c0b3J6dW8wcWJzM3Q3YW5uWmRWV0tXb05GOTQ4akY1aTVSNE5ICnlDNFZsRTY0M3YvNFAySFMvbDdCNXJCaWFPMmhDMUZVbXB3SG1kNHg2ZWJxTm9WQlYvV29HeUsxY0NqYXRmZi9DVGsvZnlCK1NUQ24KbTFFckdUOVdaTXNDdTlqVitub1pyMk90YlFNc1lWWEZ3NGU5K2F2MElqZzl0SUQ4ZGhvRjdaTnRmMEt5R2U0UkxZNHRaelBhL1VERwpWeS9MbjZZa05tUGdXUlpFak5oNnJuSFJYNGZBTXF0eVpWb2pJWmlsWTYySlV3dCtrSW5LSWlHWTJjQVNwUWI1SlNjS0l0VVFOUkF3CitsK1c4WmtPMEtQMEFyTlZMeThOVE9YcWtIc2o5NGVIS212SVpqZUxYVjFwNW9UZGJ2ZC9ZK1dQWmk3ZWtsM0NlUnRleFZ2aUNaRzEKWlVtWkZvc3Rtd2l2Y3I5eVF1QmNNclhSNW05UmFkSFJ0T2tVSWhxaUt3b3VWMTdwVmpEOFRqZDh1bFBoNkZxUnAwOXdIZmRXNk1oVApRTlpsYlRrd3ZXL2tMOWhsdjYraFRpaXR5NjRNVDhRcU1QSlB4OWZxU2hSekRxVllIZG1wbHRLWXgyOUF6UDg3anJmUDdBOWh4VU9OClhJaWQ1eFUyRjFRSU1XQys4SDJod3VVdk9GQjRTVkxNcmczQUZVVC9RdkFHbWx0QVJjYWVLRm9Gak5aZ1R2aU1xZDFZbVRuOVN0d1AKNEExNy9qcE1EdzNSRFprK2NjS1lmOUc2c0NrUEIyK3VOdmVZQ0pwWmhIZnZYVmVjOVdmQWdPUFB4NnNiUnRZcHZud2FybzR0bGJKMQpUTFdZRENpQnlLUXdjQkdRejAxdWxzbzlFUE5XNXNWOTdEdXRtZENCbTZKWG9HRHlKSDRCUnY4YzlKYzFCY0VJWHBsN2Vxb2pjRXI0CllQUEZjTzlSdm9CemNpYlkwaUcrSEJNZ3c2RWNDWXdDN0JBY2J4bnJQMDcrTVVNRFMwTURQM0M3bDJRTkwrK1ZHOU9MdmlKZEtnZlAKejRKV0pxaXRhSEZRTXhwK2ZMRUhNUjhMVHZ5NDlWRVBWb0VGazQyMmZOamZMdUNUd2tzT2lIbno1aVpTTkV4eVFsS3FtcTZxNlVWLwpTTTg1am5uWG9JNUNWNmNXL3hOK1BkTzh5MThDdjVSZ0lIZTc1YXpIUTdSRHZRa0NMRGs1UXhMekdGa05YMUVLRC95YWY4T0xuQXZkCk8vbDllK0VpNm9LR3NjT3Viam9CUmJrbDV4LzRMckxiZ0g2dGJuMnUxQy9nN0hzQ2RUVWFOS0E5Y244RkorYWtXQXhjRlpsUGlIVmkKNGdSTnByMDEyVnpBd2NnaUJUb3JHSTYxY1pLR1NDVFltSlNpQkJVWnkxYXJIc3hnRFpNUGtxV2dxd0lGV0p3UVZJM3ZTZm5Wb0dwdwpPdDg4c1ArSFJ0TmRweW84dlRNNVgxWURGV0FRNHVHSmZBeEVkbG1KQUN1bjUwK0NRN0VGc1ZGMHQzUVVaZ0FsVWYrUHZUY0JiS0pNCi84ZWZPVEk1bXpSdDZVRnBLVWM1QzNLREJRU3NJZ3FLNE9MQnNxeGZ3ZnYrZVN1NktxNHNycnNxdTdxcmk2am80cldMcUtDQ0ZBb0MKRmdzVUtGQW9MUzA5YUZwbzA0WWNNOGxrNXY4Kzd5UnRXZ3BGUlNuNzc0ZlNKSlBKSk0zTTUvMDh6L00rNy9OVUt0WVRqRng0bCtlegpMZXlVejlOWkc1VERFN25oMFlPWHg4RFJiczV5S0ZuVVprUk8rdHJ4NGdrekVlamoveWsrTExDbXpKUktzalhnVEwyc1lVOUR3b1BuCm9BNTlTOHpJem5LVU9QYnREUlMvTVVweXE0cENwSGhqNEFjVFE3c3JkZkZxK2VQRVB2enZ1WDduODQwMkx6SVZTd1RLdk5YaHN2WUUKMnJocGI3N05ZWHo2NmVqV2U1NENsRGxpYy9PZ1ovNUw4d09JVGlUSjFpUnd1WnVxNVp4WFpCVHdJTElLVGE4L1BieC9lL3hQaDlOdApOQ3ZNN3JUN2FQMVJ6QzhpVnFGb3dKV2F2S09oU1h6QTZJQ3BvZUVEUjJPNTBmMVZIRjJrUUFTTVQ5L0xoZlhMQlM1WS9PelRSS3dlCmVUMm5YOXk2NzhPZkl2M3dZZVNYQnRTdWF2eXBwdXdic252SVNKaEluOW1OdWZZZWM4NUVURkFFZytKL2VOY3VudVdQMmwxSGlINmwKdnRxOGhQdUJWeDk0NVRteVR6VVNwMDA4QkV0K3lBa1FpYXpReTNwcGJaZUwwYmZiOGMxdnl1QytwMXZ2KzdOeDM2UDNKSmllQkd0ZgpHSWNMRlZ3TGFoSU10akhBVUpjTXhOZzYvTGE4cHZIbk9BdXlBNkFOQmFNU2hpeGo5VzZMczFkTVREMFUxZytzTUFXemZQM1d0OTYzCkxjeWFCQlhmN00xcnVvUkhHOVBmeWkrSkNPS2ZSd3o5V3NBNkNkaFBSVzR6aGhpQ3ZPbUpMZlhSSmthRVlMeElwS28ybm15TUx4TU4KNmNlQVY1RmZETmtxQkRIRzRVd3J5RXNxYUtDRjM1QVNpZXpVNUdPWVEwVTlzQlNoRGkxeGJSSU1GdWQrVzFUZmUxNXBMRlRLRTNQSApsV0VpQ0VGOWVqME5hZWlJS0VJVVZFZTVDYi9jZmc3bnlxSmlBMmJ3WUxiaDdpSGtGdmxGL2lHL25NTStkVENNemE3WW1Qajg1RVpiClVCc3d5Y2NRMFlaTVgzM1BOampEaE5iWGUxMkxMaDg2N3JCY3FSU3lZdVgwQkZQaXU0NWw5Z2RlYUwzak9jQU4yeGRQMVErT203LzgKbml2WDNSTG5IbnROYm4xRGlRbEx2MEtkTCtDTExiV1FQMzcrLzFUOFVFTmJCQ01HQnBZYlV4bFdIL0I1aVpsSUFMVUJabnp4TzM4OApUUkpIQ3d4L2UyOTVoRFpLMXl5dm5GMXc4cEkrZ3pwQUZMSG5NWW1sSzVuSnJ4Wkx1RnVETzdCZ1EzMDB6NHYxL1lsY0dDbkI5bFhaCmdSQk0xb25BdW9tQUNYNGtsTkhlTURIM3hvUE5xK1FNRTdsVjRFR0pzVzBXdXlVWHNFRXMrWUw0eDZaVlIrcDdENWlvN09jcVJJT3YKZkhZZXJ4RXNQU1JnVmtLd2FqZXU2SEFJYm81Rnd6TGRIREI3aUIyMTI1R1l1RHVSOHN0enJBeHIvMDg0V1dFT010Rm1ZQlI5b09kMgpTOGhDeEErQ3hRL2NYeTM2ckFvYXpwaVQ4Zlc2clZ2L1B2d1NoeWdlOFdaditmTE40L1dwOS8wUy9JS3Y3NG5INmZVdkRCOGFsaElKCmsyRDhGVHRkSXNPYjZuelk3b3Exbmd3eUR6emUrbFgvQXpnMXlJSFFxeUNwaWl4dzRIWHNQa0w3UTFnTmFQRnRlR0ZCNjMxUHdheC8KdDNob2Z0QUpydVhYemFuanV0elo0b256QXBWV1BtL1RNRzZGaHNYbFNjV1RHcUpobjczRjlwRVlRaUFDQnJnd0YyTVFUbUIwY0ZDbApEanh1VFN4MnZ3NWFCQ1RXYVg4ZTY5eG8vRnBzbWJlL3V2ZTRhU09nbGdhTCt0bVhhNGZFTldIaGU4UkF4T2lHMitMaklKTzhMaDBYCk5KZzludDFEeUwwaEhuSVhQSGt3MG1Ed1dHSFkyNzE5M2NqUUwvcEx6WjR4RHMxQ0RCUDlBZklubEQ4QzhONlNwa08zalZzZWVqcS8KOHFrLzN2NTdteTd0OFQ5V25udjdrQ0tCdXU5M0F5Qy9YQUF2dmtoY1RlWW8yb2llV0xOQnRIWjk5SDhtZ3o0U2JTb1lqb0JNVUdabAo0UFY2dDd2T0lUbU91S1ZvZVRPVWJoZzdwVDBSRzNJa3d2U1M5TFBxUHdIckxSYS84UGJPL0J2UHU0WWR1QjNuQ29nd3FLM3pFRTlCCjRMWEhkMjFMNC9sai9ZMUV3WWlFN1lQNks2T2pJUGtZUU8ya01neHhhQXN2b3VSdXU4YVZZZGQzYWlVYTBrdzhGVEM3MFZPZjZDQUMKUnF5QmpQaUhkbjk5eU4xN25qVzkxdU9KUHpSNXY1R3BNbFdLVVZGNGlIUnR5Z3N5N01UdElnTG1DR0pUTTZnQVZTTmV3SHdBb2c1SAprZHZBdHVSangwWWVxNWY3akNqc3ZxUCtQM2FzTXlYRGdyOWF0M2EzaEFXTXdVMjVNZVZiWC9pd0J0ejcycGhzUGdWZmI5eTYxZUZxCjNMcXg5UlBuQ3V0dXNlbmpJT21McFFCMStJRytBOHhCTk5TWmhJQ1piNVM1bTFlMEdZMjU0TkcyZ2hFTkU0aUlCV1ZlNFd4VzN1djEKV3EzV2dmU0NYUFRVNCsySTJJcGJ1YWJVM3Z2bTMvbyt4ajA4Ny9IeWczUHVYUkd4MjNsQ21SZlZ4SUpWZjl0TlFINzZUdnRoeGhiOQpHWEdtY1BtdmhueWd0WkdjVFNHT3BHckRKaGlFU2thUm1OZ3ZSNlk1dHVyVnhmQW5ySG9TN0QvWVZiSmdaM0hTSTZNQ1VFdUxZUkJZClBUUHNvWU1jSnNEYkhCcWJKL0tsYllZZzVaY1pEdThPbDQvTEl3TEtGeGlpczZCK3dnNXg5ZSs3WWxUakFRSEdIZW1lam00YUlkZVQKMm1zZkFBRWFLb21FbFM4TUhlMjh3cXBKMkZKYWpDR0VPakNhL0JEck9hQ3ozdjhMQ2VkNXgya1VqSURuNUNEckR4b0RMR013a05QSQpIYjFWQzNGczJkeU9KNVo3WTk4cFkzcFBUTS9zTnFqaEk1cmNJUTFNOVgrYXR6ZTM5WjduQVFOR0hDQVhvVi9GTUZ5N2x1TFdOM2NmCklYNllCOVVybmxBak5sNk1TZ0tId283TW9RSkdGU3pLSFJ1czU0alZad1Fua1RITHhYeE5MWVlmN1V6M1hRa25DdFNNaElTNS8zRVYKMVNmZEdXdjAwTldkWms5WjFnOXcyNnEwbzN5NE9DQmQxNW1SSnFMN0JZSlAyMGI1ZFRqMlFEMk40dE13U0hKZXJTSlV4bzI0ZFo4QQpoeFd6V2c4NlVIWXlmMDh1N2JMaWRRdndEUEMwdUR0Uk1LNHF1Qlc5TUNnOWZaemoxNE5FSkN5WkRFOUpoRllTdklnQ0JxWTZrNHVyCllIWEdlZitqOGdWbkloaU5kWENzcEFhTktzT3dpaUR2R0JwYWRMbmhpWWxuU3VpQWdvTzV1WHUzNzkxeGNIODRkNlBnNEVHWTBmOWcKaTczT0R3cjd4QnlYR2RZZ2NVR21IUnVSWU5XakJSVnh4eFZQYlVadExjb09JUmprRDYxMTlOQXNSSTFndXQ1NWRzVlBDRVkwVEV5TAowNit5dW5IRmlpSGpVM2pEYVU1b2ZQQlAzMVRXOTU0WHBoY2hXS0hUZXh6U2NnZUZDWmF1cFVYRk95SEo3UmJjd1pkcC9vV21YNWdxCmhVbGJkSjRNOG9lZmtDL3BicEtKcENWbGxEMHg5V0Mxam5VTWkyMDRFRXhjRXhzMEFJT0RCazZ5a0ZOYkZZUVJYOTZ6RFJxc0hTS0EKZThNTG8rSlFuOUZDSEU4SVZtZXFpd1dUeThpTy83OEhXdS83djRQVG1ZZ1Vla0ZTR0ZWMWlhTEl5eTZMMnpJNWxFMndhR0U3Wm1KYgpTRndkeW1NNHYvaTBTenJHRWEyTXZxblR3eG53MUsycGgyYzNuRGk4ano1cU5oUTEwRHdMbkNPTHhhSVltbzE0a1NYUm9kMzFRdStYClMrNHNxTDdLQi9QSGphcEM0ekNFaTgwbFdEaDRVRVJtQTBFdndDT1NyeGtlSnZkZXhrMkhRYk1kQ1FjMWZnMHRPSG1GYml2NU5EbnMKeGczSnlmY25LdzZmOCtHMWc4ZEF3aVEySE9HZ3lrd3Yyc1dMMEtuNjdoY3BBZkJqY2Q4bDFCbEVDL0ZGWWk0U2RzVkNuVTkvK2FNZgpuTnUwa1k2Rk15a1lBU2R4dEdTZ0txa1E4TTFPTnMrWXdwYmdFNXVmUHFPR3RZVWQwL2UwM25SZXNIL1VSUWNVVUlNTXRwQnBEOUZyCmJ2S3RmV0N2cUVVaGF1TkZkMVJTUHJpSmdybERlUndRSlkvS2pxazJhbGxrMFduNmQyVzY1TkxPK090alZlZmZHb2g0U1NlZ3NiSFIKRmo2bzJaVjJFSmlMUzBzYVk0UDBHUFRvdmJCVkJkRXZpMllncmtNQm83bjBGUFYrOG43NTQ3NFkxb3R2VEtrOWtUdnRTenVJV1Y5RQpPNDdkeEQ5NHAzK3g1WENwQ1JpR2J5Q2pvUUg3VCs4Q29tQXdZdlh3OG80aVlYdkxNdUtvZ0ZGdnpBVGdrL2xicHkvOG43VU9LZG9oCkdCa01LY1ZVN0tBbHJOOVVzdTJMeXg3d0pGVDhKSWFkTnd1eFZZbmFnd05IQjQ4ekVEeDlzbTh6UkQ0ZlluUGptR09VQXhuRWN5UEUKS3A2RVNWTWhnaVdCM0QxM1ptVW9UZE5nTVVHbFFiTVE4NkQrUkgzU2pWa05XalpGcW5iRWVBK1kvZmE5akxQdXFwSW9MZ2dZUnFRSApqMEhQU1FDL0g2MktseW0vRHRmam1qVGFqYVE3ZWJ1ODRkM2pTa3BMOTdwbDM4VnIrbm9Dd2s1dkY0ZnA2TEovNWRaWHJMYW9kYnZVCkxnMmVRRUF3c0FvdmM1UmdXeGZ0SmlmTDgxeUh1SW9mZVc3T0lmVEFxQU5XeDhneHQxNzVRQWR3RDM4bVptWmtuR0d0WTNzRVF4R1QKWlRrWUNBWURVYXd1R05SOXY5STFEMVZzN0piV2UzWll0RFlGQzNhTW5kUzkwT3dKOG1ZaEVHNnBjMXI0SGxrenVVeWtJUWFpWUVudQpMWW1PSGhFRWl3SjVZTzZ3WXMzYXN4dEhWaDhSRFRTUmFVQ0JmYzZ3TE04SmpWNEFtb1JoQk5Ic3J5OWpSdVJsYllpRklERUthZmlpCmx4TUpoZ0pHNTh6V0JhRyt2bDRyTTgyWjNTQzRDYkdYRkI1NzlIMitOaEZ1U056ZWcvaHpBYXMxcVlnUjNqMEpROFRvRTBPcTVuMlYKNnZRSGc0cGlVSUVRakJiQUg5RlBMSWY2d1Z0REgrSzhZbDNQVkQzT2dSRVBySTRKek1sNmI5MEZUeS9yTlJPc1FUNXVSTXF3bzYydgpNZzJ0cmk2elZzU3NCYlRDa0NvWmMxaWE4Z3kxRHo4RDYyRFJIMytDSC9acll0a3R5OXhZdzdFdEMvOFRtSDFGMTVNVmc1ZkNmVTZvCldHY1BGVzlyRzZtd01aN21tNk9iVlExWGhqeXZTTmhEZVdIcTFicXZHc2dEY2tEVkJOZTEwR3lxWVBHMTVCOXN1aVZISGJBT3B3c0YKZjJpV3VRUTlNSFRBTkFPUnNpejlzTnZpOXVGOUN5U1o2NDVPbmJyck55Y2dzWEgweG5xTFU4Q3pGYWdLMUR3Q2Z4NTNDSmN1WTdJSgoxajMxUTBUTzZPSkZPQlh3M3BMN21qZWRQL3pmUTM4aGZ2aUw0UE4ybTNrdVM1dis2aUNYL2d0RXU5WlBTVDVCQmxubUFCbG5yejJaCkhaNXdYR0J3VzBUY2dZREJpc3RoU0NaRkVrNnRQeHFTQUwxWndkbFBCRytvSTcrZjFnN1I4YkFNbk41RHovbG84NTVDV0RsbXFMM04Ka3prN1FMT0t3TmQxZVIyUmo5Tnl6R0lybjUrWGJNYzRSd1lLMWU0aGRzaHhvbkdJVkVzQ2NkYXJqL3diMDRLSkMvYmJ3Q2VNMWU4agpibXREMStKSHZzZHRGMzkvTWIybERFTjZRYTFwcTB2OTdaOG5sd2hhTWdpTlgvUkNpaEhsYzJOczgrVUg2U3ZvSk5vckR5SzlQRkZyCkVrNnFoRjZPNitHVHJsaDZUakJIeTdmbjEzelViVWdqWEYyd3FhN1hEb0RoTlZqOVY3RmJWRkdBOG5JOHhHTlEvU3A1SWw4NzRIbUIKRldXTDNybm11NFV2a2hGamRzS0ZuTFd4UVA0QnNpRUx1T0hFdDJab3FaVEJzTHp4WHFmNGlmWnNOdTZWZFduSzRSZGFtWWg2bGVHQgpiOE5td3BhNndhQ1JMcmxBS01xdzdoVWQxRWhjZGtuOERSa1pRNmZiWTFKUERQendQL0NYZjc2cFBQZEVXK3NPQ3c3c0p5Z29PSmcrCmFuaXhTemMwdFU1b00vM1gvN2VjYmRaZSthbmRheUVlUGExRXlPMlJSc1RKVGJNd3FJazR0b0M2WUhaYmw0MSt1Q1pZUzc3MkVYa3cKdGhJdXJpVHNva1ppcWczOUwvUDRQZVpoeGJvS2tTbU9RU3B4UVhjRXY0aU5HS1J4M1pETDlNbzY0dnh1RmR6ZG9idlQvSmVEWGZjbQpXdUlHSEQxc1lkR2lzRWFEc2lXdnQxbm9XblNZNVkvTzJYWGJWc0hpbDBIbVZhTkpZZUgyRmZSMGJaMjJRNjRIOGNXMnZvRmZDUkkyCm1LQjM5dDYra0I4L09XdkJlZnd3UHhjdmpNcXR5aTRGS0MwdDZiK2pDMVBoY2cxT1dMdDF1MS85TGo5cFJpNDhucnVjbHRhQTBnMmYKWWRaVEJNSE10SkFacTU3RzkrZDVBV3ROYTFEcUxvMHIyZkxqNHh5L05KWkZmWll3NlVxclR2K1BzWThlZjNUVWl6UCtQZ051dittVwpvUytHWW5GdG82Qm93cmd4K1JWSCthR3BoR1Nuc216Vm05dktDNko3N1UvdURscXdNTkZJSXpaYUVER0NZSWJwZXgyTXdiNE96WUliCnN1M2txcXJVMkVXQUhwaG5TblcxR1pJMjdBdkt0cUo1KzFDcmdsRnU2dDQ1ZTBGSkRNaGFoSVB5aTFOaFBhaXMyZTFQZjZ6d1dLK3EKcldLQnhUY29iWTBnMHNVT2RtSUhLbnhjOUo0bk44V001aS81WkZUamg1Q3NNaXlyeUp4aTlYSzN3eGRJc1B1M1o5K3gxUW5pT2UwSQorMk9CRmJJMXpKc3lZdkhHRGhGeCtZbDRZY1B5VW8xQmNPdUh4VWZHSmxCMlFYUkRVTldYRmMyd2ZCaDZFckhsaW9rYklnaEdEU1pnCjFOUGw2Sm1kRXU3c3BUMCtsQU56dVpLT0ptRkxZbSs0d1doVldVK2c1cFBDQWYwVHVHL1Vta0ZEdmxwNnlMWHJ6SmVYRkN5dWVXem8KeUI1YmpoNDBEazA2bFdXcjlIL2NXMTRRMWV2WlRXZ2kya1c3MDlnMGEwNElkbWwybUdDK0VmdVpPMnJwTXVLMFhDTTZSVTBnQnVJVQpWMUkxREt0TzhxUVZ3dlRjdEtvMFlqa0ZxMmtRTWFQV0dVUE1WTjZMQkZ1SEk5MHJYeE41WTltZ0g1WVdadk9TVkY1OG9uRkkwdllxCms0eG1yV0xIeEY2RnViWElmWEdlWEI1WVUzNjRTSGpZaGJVSldFWEhtdVM3NENrM0Vtdzd3R1VOUVRLK3RMM3k4dGVCSklVRHVaOS8KZmg0L3hqbkFnczNVL2tNc2Y1YmpndHZ6OHZ5S3ZVRjJxM295NmczZlBrZEhaN0ZDV00vTWl6UVJzZVlSY1I1T0Y3NFdUSGp5dldCMQpVNFp0blp2ZHNTUnM0ZExCTTZKWWhyQkxaSmllWEQrclhEbHJ4cUJyUHIzbUVFaTVaeVlZVktUSU80cHFSbzZZbE5samMxMVZLVTlaCkZzRXhjZDE5YVE1MzNnY0NPcWdpMFRFamhCbEdDRFlxZTBBeEpaaVkxSEJjVFRQdmJ6QTZEUU56N2VqWWhZQUc0aFJJMmtYb2xmVE4KZS8zS1lFaWgzWU0xbjRpQ0ljRnFrV0ZrUHhNNWpwR3VwbG1QM2RKVkZaYldQQlBGNndLQnFFTkR1cDBvNTNsTWhPSVZRU0FFSTFRYgo4ZTZZYjFWR1lDRnFEbnY5NGpSY0trQjBMVXFRUjBQV0Y4SFVRYWt6eG16UHZwTkltTHVtbmEvZ2wwVnppTzJjdGZVN0gxaXdzRm1nCjRuWUZDVnRFVHV6aVVBSHBCVkErdkhDcU41VHVSRkY2UlFUQkpBR1grVEtNM0hZS2tkbnJJZnQ2clhyUVU0WloxZ2ZnaWpNbkpmNksKV0pJNThoR0RIangrdjVQUjZlU3MyU214TWxqTm0wdHZPMVQzOExxdFE5cWJhYTEwQSt3c0FBQmVTa2xFUVZRZ1NEcFVYTFRDUHZlNgpnVm5KbXl2S2pvNUdpalU1cEZzS0dwL3JXbFNVa09ZbUNtWTBPcHNZRmdYSGxaS1R0WGJDREh1Q2Fic1J1cGozaXlJUWdpV0djM1lKCmJDaGZHQkZKMnBWOW9ueDJ1YWZreWwwY0pSaFFna0dVc3hjeEVTSE44Zkk2MlloNUlTcW5xcjg1TU5UNllwUzVXeUFBTyt6S3VNMnUKV2l1eXlxQUlabHlhb29DNnc5SW5lYXRCcDVnc3oveHAvYUtqZExKQTRRMUlNUGdpT2RWZjFSL0diS2NTWnY1THg0aUpYOWo4YXI2Zgo2U2dMeWdIaThrS0FvMFgzRVhYSGg1eUlsRER3UmhBc0tHQXNuc0hJVmNRZVRSQVV3YXVEZ0lFWWtubzNNUk1seisxeGNSM0dSang4CjNYUVRza3NVamJLaVpIR1h4Y2pZTWZ6elhuWHc4RE9iMktudGVOVlA2RXMxa2tIU29SM0Y3KzU2OXVMTFJoL2VQaXExTG1KUkpyZWgKNEptaVNxZE93QVdZNkdWcERJc0NONkgwU1hUT2pMMlRpSFhJRHYyQjNDY0VpMmtpR05HditDUU1seE1reWJ2MEJRMDJsK0pPdytBYQp6alRUTE41YU5CRWgyckVPWHY2S1ZWOVp6d1ovYzJqWGdQV1ZHUTZoWHZmVWVuSGN1cU1PTDFoQU1iQTZEZ1FNeGVPSHUvTmpZMEUzCmxWR1lMNE5iWHowYVlBRmJUdDgwTnBQSTZYWEZ3QjBhK2RxWU1YKzg4ODh2US8xQmpQeDI0dWNnTStKNjd5KzVmWHFNL2tYYWV3RWgKZDNaem01VE1pcXlwTkdhbElTYWNtZGl5MVdNWUhoM1c5N0toeGpGV2JBZHYrbmhPNjMzT0c1WTk0d0czMCtrRW8xR0dyQ3dKSGdaagpnT1BjcWM4OURQRDhNOGFXYXliYndPVHduVzBFa1BuNTExL20zdjNDL3ExRHg1bTFUaUJBT3pRK05kY3cxa0lMYzFDcG1JRy9pQS9sCk45ZHA3S21JcUp1VTBIUVB3L05UaGpVOTFCVlBGV0d1T0VMQStHNFQ5dlhTUnI2aEFBOFBIVHJpNGN6TXVOY3I2K3lENGtXTGZmelIKV3dhVi9nME9NcEFJTWhub2dId29iYXFMWWQ2RU1tRlVyUXBxMmJ3Ny9ubXNXSmJCOEloVzZBTGdkcmo5VHJnZkgxdzBueEQ3by9CNwpkZUluNG9lSSsrdUtoN1l4b1FWTStYUXRZVGNUbGsrSzNmdFFpeUFIOWluR2x1aHRlV0ZtTjA5OEVqSjJBa3NzU2NMQmdPN2tGdmZOCkhjSUpXemJpNzFmdkhFWDhENk5PVnJLV1MwRXJXOU85NjliRGg5TjZYTFZ5dzRKTkUwNUdTSHVibUxJK0l2Z1RNaGgzRk0yYnhQMUgKMGJreGFLZTEzb0V0ZHkwaFJxTG1oQkVReXlzcENxS3FyVldKV041UWJJd3JGdzEyMjM2alVUU016bFpEUVE0YnNRK2JEZzN3VnpkeAp3ZEtxU2xQbzdCQkhiRVNhS2VYc1JjYUdOQ2pybitSd1ZCMGJMc0ZYMHZYSFpWRXc5Q3c4UE5YL01UazVSalZSRmxpQncxWEFoRjhOCm9va2wwSE14dThEaXF5elB2dkgzbzJmbnhQQXdOaTBCT0pBTnhFTVRsL1VoaHg3enh4ZStPbWFPbjlJQmx1TmQyT2dSY1pWa3p2cDgKZEYzQTNDcmtIQkMycDJXdUI4aTZvMnZPbDFBbEs1RkJEaGFURGpITXdiZEJNSUhGRklPQXdERWlyekxJTUoxT1NSelFFWnl3WlMrKwo5RHY3MFg0SzBtdjZVc21NblVPVWdsbHAzVXRLdThKMTY3Y3AzN1ZuSWNLY1YxcHZRWko1ajlYUEcvTWRHMmt4WDVsZFBrRncyMmxICjVKeTArQnE2YWtVM2E5c3dXZ1hBWGt0c1IzdlgvUTJFZ2dkMXg3WHN3OVR5RzRwN054M2dnOXdEZHJjRVE1eU5NYlN3TmM0MGE1bkUKemlqc0RkdFE2Z2l5SS9jV0ZpWFdySHRmU1Q0MEl1NkhaYnMvUHNyZ3pCZmhsMHJraTVpSEJtaW9Dd1JPbmp4WjE5RFE0T0xNdWtvSAp4K1g2YjN3K1FjY280M3dXSkJpZXc5MUZSY2l3N1JrWGlRNDE5OFdPNFlWZHNGalFYMXNSU1ZFeE9XV0xTeksybnRNSm1QZmxXTjFSCmxXdlZCcUdFK000UkppSm9TVHJZZG9RNTFVaXN4L1d5Sml0Zzd4Q1dzSkF1UFpuVWFxZnpndzJyRERBZmcyOXlWbGFkWGxzVFkyN00KZ1Exang4THUzZVBIUFdac04yL2dXRmJyTFlodDYzemY1VDQ3UXFzdHBuMGxaVW53WGxTU2sxcUNobDI1WUJjSkVxcGdBSDNXU1hpUQptS290UzNGTmhZdnBIVWo5SmlKZVA4Y0I4eHNodzJrS1dZaDBHYklHa2RpNCtVNzc4TnBlbjE4bERqNldNQitXK2liWDNtcDlqcTVuClVCUGpXRUVRcUh3MU5GUTF1aEdpZ21WUS9aWXlCMWIvRlJhanBmcFk4MUZwYUpQZ2ZvaE9jcFllQ2M4c2RPSW5Bci9hTUJhTG9CZ1QKbWwyQ01EemdHemlKOVptMmFLdi9JaFhNR2xBWmxEQ0dPVFhPSVJteEhXSEE1QmRCRFJoVTFEQzNUdGsyb1ZuQlprM3E4ZXQzZDFnUworL3gzZDk1dGQrcW1KMmZkUEgwcFNPRWxaNHgvZFc5MGZoeUZnNUlnZVdPTEY3V0J6TWl4S1FJVkpVbnYzcE03RENQMkNqV2M4Ky9hCkl1WmVaaCtnbWdzSEhBb3lsNDhhTkdoUXpLVGFBdDVKcDZBSjIrSUdST09rbUdnSWxnOHdOV29DTnI3cGdCL2s3Z1pMTFZ4dTNKWUcKTnNxd1lKUmJUL25RcTBkcDRQaUpFVDhrRmgwZVdtMzJDdFlKK3o1UHp4YTJHeUdIakhtSkJtb2RVckxYK1JxVlkxNkUyMDEreFhRcgpkY0FvV3hYQXhkUHpqT3E0dXJVWGNWcGhjSGtaUUI5WVRVVE1QWGhzdHJqbGxJNlhuZmd4eU1SUW1JYXM1NDZ0LzhZcHlhMTVBdGhOCnNMdzhBR0ZsYTJFTENqSk9VNm9ZSjhUbTRKRXdtb0pXY0ZsRmhWRllsZHlpSTlieTFZWi9uV3BYL3JKWTBuam95cm5IZDZ5d096SEgKbGMyU3dOcnNkcHJGTjVjRHRvRWsrOTBiOGFLMjhjSjdXVTBUaUMyeExYUDlUVzlnZkUrZ2piMW9CL2cvMDJjd29sU3M3WlFFL1VveAo5RUhnZEJ4SWJiRGp3RFoxeTVwZXVDWDFHMjJuRHpBbU5PZDVlT1RmY08vYno2d21EMUkwRFV1cVRzS2pHblByQVM3YmNsVkZENkk4CmxsZWZUVjZ6N0xtaWpIMTcwREZPbEhsV3dmUmVNaXhpNC9XazZ1YXdUVkxYVXRRdmRNRDFOVDdjUGhjMDhhSUN0bm9hcklacHNQVFoKM3NYd2JjZkkrYjFRMFR6dHNsaDVxTUduTjBCcm1weUtTQVg3L2FCci9KWFVEV1BVVmhtSm5BRWIvaGlZZ01oaGVxT2s2bFJHMGdFMwp0a2tiWm1RN2JWZWVmbG5NdWNlUzJLZUhUTEhYK0kwRnlXQzgramM1dGdPbVVPSXlHU0hJajZsMjdYVkV3SWFRMGJ1OUVBZkJpUFMyCkpZeXdRQjZ4WXhpbXpmSThSanR5anE3Uzhub2o0WVpxbTRRRk9RaE5tT1BwMTI3SG1QM2E3dVUzc0kyWXdLRjVZSU9CQ3BpZHE0VzQKb2N0U2lEelM1a0ljQk4xUmVKNmloT1IzQ281RjFZaEduZUhsVDJwUFByVHhHNk14eDR1K0YxRXZsWnA5QWIvcWR4eXp1OTJvbFNMeAp4RVREd0FYL3dTUjhZMW9sSko0d3krcGpidzJ3Q0xpMFRKYnBJRENOMElzNFlrVTVmMW9CN2dPNGdxVVRQeEdaNzRadTczbnBHeWZ0CkxkZEc0bTZyc0VlRUQyWStPUDdySzdWeTEyUXpnNU9kWVhCR1lEaVc1MERRUytERDZSZGV3U1dwQVpxdlRiSEpBV3k0YnZPdmdHVUwKci91YkQzVGtHcHJvQmVNZllPZnZMQ2J0YjhVd0RlMytaYWdaZHhmQXJpNUx0SzRJWjhhQzBDelZxZGdHM1EzNVdxeWU2bU9QeTh2bgo5dWxoYnhYNHI3NkN2Q1BPRXdBa1dPb3g2Y3dablFpcmlKVmFIcThwMkFmNGYwNEp6TitYZUcvT0lOeVNVcEdDTjM1SXFxYUZBUXh3Ck81RGpHbC90VTN2TDFIVU56NUg3T1lDK0Z3WUV5WDUrMlMwZXF6cUlTMllRMGRFWjk5b3pSaHZmd0ZoS3VmRk5TRXdQeElmbjdYQW0KVHJ1M0duOVF3M1krUWx6SS8rSHFGNzgwckMrRUJ1ckpWeSt1OFlWc0pRUGo5elArbUlpWVJhczFHUkhMVmVhclI3SXpyM3llb1VWVApGQkNielMxL3ZNeTdXTjdnVmt6MWRDN2F5RmhFaGx6YzNqdVdobmF4OHJWZ25ZYnArcjhHbGxYTndHa200OHBIcXNGKysrMS95SVhBCm50ZVhoQlVjalZjQ0xFMFl4ejBCMlhocHQ0c1gxbXhydlNtRXpPbkZiMlNoUGRnTTFuYUh4WFhIKzRmNm1zQjdxTy92WUZ3NWhCZXMKNEN6WmhId1hZVnEwemVFY2x4b1JvZjlnemdlcFMzdXJ0b1BKQ1hWSXJRck5SUFRqWEZxU2hacVRUckNuSEM4ZmNkZHpUdnUrREtRWApNUTVCNHdxdGR0cmtVOXRWeUxqSVdXNExpQS9BRzFEdWVIREhtajVwUnhLSmxwcXZTeUJpcDRVMy9oVGVuZUxSV1FEcGNkdGJiT3ZFCjJTTjBYUzEreWVtbjNKREMvWGtrdmFTMk5TZUdhRFlSemZ1dUtxem9VMWdWVkltQnBlRDUxTGI3WloxT2RIdWkvS3BJbUNVSFVTQjAKYW9CbXd3Ykt0Y2dqZVkrckMwQTZQdVhYc1JHWGJGbEF5R1Q4Y3RweW5kRVluZkZsMTBKUXJxbi9keXhhaDFoMUhyQ1V1NGZZZExMWAprN1BwK3JOS0w4MU1WZWpsZmlwU3l2dHU2dEVzMVFoVjNMSmg2MnNiQ3phdVcwZCt2ZlQ2WTJYMWhYRllKNEFtQW9zMXRBbXN5Tnk4ClRUK3Z1RGdVby85ZzhPQVB2S3RnYm8xalhzSWhLbDIyaWhRMEVtblpBSGNzVFVWODdaTUsyNkJkZ2UxZ2hBTmx4S05PdElCV2hFMVIKYW4xTnJjUWcydEF3dDN0K3d4RWlXUHlXTVhuUTZNNjFWUXgwTFB6UHRVVWdES0JCZW0yL290QUxpS1ZZQkZ1dno0WDZHNzl2MnRTSgpId1ByZzNTUXpienRHVmFtTTZQMkFBOVNrSURuSVdoZ1RqVVdLWm9KTnZyNjV5cWdOS1UrQUNhZEJHWUY5eWN2a21JVTgwbnpDMVBHCjVWeGNMbkYrSnFBUGtsZXhSaWUrVU9kL0lqelR2UC9HNDI3MzhTbS9SaVI0U2VNQ2dOcVJUNjdVRWZtTjF2V1BXa21zdDk3VGxSM28KcFdqOGdrQUEyeE5oSHN2dkZyUitmWnZZUERHMXBVbzFJVVhYTFRlMUpjRmFncGUrM2Z1SytIL0hUd0RxREVZUXRlMEd0YVQrK0EyOQpRL3lhODhHYVhtdGczQmJMaUUvdTJHS2oyMXloT0NJNmNiRVFVeElENzczL1djTEhvMHUyMXBTbGxlRWZncUxNMW5xOUhrOHp1K3dHClE0YUYrWDVBWVI4N1F3WTdPZmZldkViTGdPTjlUd1ltclVtdU1rTUV3WmFGWGtLQVZKdThWWVRTODVsVmZ5RkR6OTQyMTFNQ2N6Y1cKcWFnOUV0L0lTMEY5VU05M01ScU5sc1l1VWNaR2pYZ3RFU2JZdUxxWU9zelZTWWxyeEE1VldwUnhYTS9VdWx0MjZQVlBaMzF4Nk4xRgpId2M0UDhmb1dFNW1kQ2E2Y2dWZ2lOU2tXZnV2blZoYWUrQnVXbWowRjhXeUxYL1VNZCtOODlqUnVvM1d6VnpabjN3R1pmMWR0UnNFCkRJQ0NaZ2FMdVBLUTNDbzNuZVhzNnU2NU5XMUxXTXJtUzdhMFNLMC9CVHozY3ZmR1FrTVh4UkNxTGFWQmROMnhUWmdRZWpENGc0clkKTlRBL0wzSFdxeU5XcDJuYk5INXBFbFlmNjRRWVNOaDBJTi9lY0pnSUdPVVh1TjF1andjTFJZbEpia2lLaW5MYkRVYnJ4UVBXSC8vdApaZGtYS1RxRm1CTzhQQ2F2TVpVN1lhbXZ2ZnI3N2lYeHBwNkVZS0dQMFdySXlCZE9nSHNqWFliWmlSOEg2MVhqdm5ELytlUXpZNzdiCm9QbTJ3YUNlak45Mmk5RUlEb3ZEbmVod3U5WFdGVGdrUWtHTllOTEVEWS9WMGp6N1BwZjRtd2JyY1R1Y3Y3ODRObmpUTjlJN0ZSWEEKampPWGswdVdFUXdHdlRmYVNWZUZRV0o4L3dGRENyVGRDL0o4RDIwckM5dU12eHhHM0daUnZwaEY2UVhSUnFVUWtHRGdUcnR4ZFkyZQp5bGVBMGl2azVkOTd0bTY5bERGQWJKTmhLUldYck8vWklrWDZWSEIvKzB5TWpyMjhVakpFY294S1dDR05IdTVkYzNmMFJ6Qi9SYmY0ClQrY2NTZ3Z2NEVyQlhJNmdFTXI0ZFRwcmljWU1xVUZsbm5pVUlTRGNzdk5SQ0NBL29teTBUdStlbCtmcXllWGx1YmxvTkI4WmxMQWkKcmtZeGllNnJOMjYvYW0vVVdPS0NhUUxXbW1Ed2pIVVh5TytlNVlqVGlXYk1HdlRKQWFiRU52ajluVWRDZ1VPZTJJWmRHZ20xVHJyQgp6ZEMxdDB3TGdoSHJFVzBUU2pDenNkQncyZHYwNnJyanlRYTN0cGRaS0JjZi9icjQzVksrRkovSnpIb2x0UndOVG96U1NXNnJ0bWJGCk1lanp3dkpiUnFRTTAwaVd2dHR6YjE3b0RjS3dYdGQ3VU9XcG1TRS9HVXVtSmgvUFhJWkJQQ2NaUCtTWmhVQkYxTEp1eHVmMStKRm8KRklkZVlQaDNkRjNSOU1MMnNIbkRIVXhwNjQwRUtTazk5aWFkeVVSRXJEcjZTbjE1cnU2cTRKeTEwVTBjUXdrN2VWSHUzcjE3SzJ5OQpWcXdtL09vbmxmTUdsMllnUW9XTlNoZ1hSRTJoNjVwcFErYVR4MFdqMDFqbURIR0xiQkdJeGxYclpMN3ZnQUY1T2RVM1g3M0dKelhZCjQyeTQ0cEk4U3lSc1Y0MC9VT1ptdm5SM094cTc4VG9CdDlGM2FFMndMYmQ4RExDOTAwajhzYmp6L1Qzb2RBVEtUUjRwcUJtSWVFV2YKWkFMNFBhT2hqaE5Ea1UySnBTQ09qL2dreTlpZGRpeFJOQzgxQitkYWlhVmlIcG9kQTU1eDBzenNkUkhUcjR0S2w1TFhHVGd3S0NwTwozb1FHU2ZDYXNIWGpEVzVtSmN6OGhneklON1hzRkR2RHNrWlNyNVBPWFh4eDRZMzdiOWVtV1ozcDE2NmhuMkltY2NLQXJ6djgraEl3ClUvTlEyNU5jZ0xwSGY4ek02c3dHWHh1aHhNeHRUeTBaMnZwU1BSWHY3dGRpZHIwVHB5Nk14bTdPZ0FMTEZOc0gzZ2J3VmoveTVZMHIKVGFneEhWNytYSzl3L0RBMDFheE5pR2l4OXhEb3BJSGdSNmNTZzR4MmNIYS9Zb2VqR0pLbVdyNzBhUWZQc0dIS3I0d1JGNFBIeVlKNApncmlmaWJHV2YyYStUTHU4UStzZ0lvV2UvQ0dwbGEyM2R1Sk1tR2w1di9tQlpBaG56UUdOS3pLcVFkTENpNHkrT2ZKTzl0SjJVcmxZCk1iUEJ3NUc3K1RrM2ZVZHUvdDhXQ0J6V0MvVzJrbEpHRFZjZlFQeSsvSHNlZ2p3VHBhaU1xb0FySEIxQlcxRUMzWGVtYTRwMjM3Z2IKckpuTlhwaFZndXMzYnZWSTB1NlM2ODVWR3RXQ0c3ZlBjbXVUVUVuZS9vZUlnTTBzcEJMRytnWmZ6MjVIVnlsc28vR2dQUEpnNlA1WgpvYkIwVGh0RUlpYmk5bllWakdqWWdhdEc3aUczOWVYWmFTbkp4Nm10S1BKM0hEaGVudlBOaCtXN29QZmNMWWtIWis2ODR5M0JoWjFrCk5kQmIybDRXQzVBbXVaT29PUmdielNIOHhOQ3ZaR1daSHpMUk55a3ZwenhtM3FqU3d2M0JCZ3gzSlBFeEFnNGhkSDJ6cnByd2k3YnkKTXpEUkg2dGZYQkV3MElFbklvZ1l4czNFQm0xOGJHdnJ6WjA0UFdhbS9DdmlFUjlqTkZwb01SWkE3VExHQ0RxVDFSS1VEWHdYb3hoTwprc2NPQVZnbml0empWSzQ4N0w5Ly8rNW5BQWQ5ZUdVRytBRHd0MFllR0FhL09iYk9EVUdkM3E4R0ZOYUZKUklwTktJNXdKRnZtT0hmCkIxTElDNXZadjMrL3dWbXBYYlJreGNDVTNQRCtQeE0zT3g3UitHWG80bEl2MjdjZkM3TVJqaEdDbWI3c2YvMytnK1J2REdtckFReDMKUGg3NTByUEF4Q3RPdFJJcjRKSU5aNHdpaGlBZUxIbW1td3RudytyTDY2OUp0aURIR3ZZT21sbm9KSVJJbjVMbnNjd3EzditYdHdUdwpHeWwvZkdSWW8zRjZaSmpBY2RFbVFTTVdobjRyNDQ4UWFoRnUzV0FjZTZnNHA3ejB1bjZ6MXh3T3NZdndTK3pHQmdLQ2lBeGpkRlZrCkNKVnBpckZKc0hMQ3ZNZW5hcWMwSW9nWVJqNHVPOXUvWUdQcjdaMDRMUzU5cDBXQXkraHdJOEV3WFFpTVZnNG5odnd5VHp3bmNtWkMKQlBPSGVFWVoxanpSVE16RCsvaVhIYzEycEs2bDU3VDRKYkdSMkJnTVpuOElqWlJnb2J3UFdtaWNDRmJQTkRXNzFqcUZHR3d6RXdJcgpybnNuL0N6QnJNOGlIdndzek5rUHg0OGJuRW5FYkRMYzlsNDRjNEY2WEw3WHh0LzlROU82WFlOaC90Tk56NTQxWHVEWE5adkZHakt2CmZ1YmlOcFR0VlBqMWNNdUNLYzZRc1RmLzROU2xvcG9Jdml0cVlkRENmbkJ3MkpiMEhtZ2NodlBYM09FN0lhQ3BhQW5WWGdUN3JwUUIKdGNtclRwQUhTVlBwa1VKbUowVjBOOHhNQkczZFpRTXhFQUZia2lXQ2JFa0dlYjVmRjZEZlN4c21JanorV0RGQWp6L2MwbnA3SjA2RAoyZSsybkVPV2FLUmFiNjltSU41UFU2SElnTTRya3NLQ1l0ZUtsK0U4Tkt1Z2NkRXlGeEY4T2Q4RUl1SWd5dk10QmpydlRhTis0QVNWClpTQktEUWxZd0dyUVN0NEZxS0hvMkRWbzU0MUZZNG1OT0doTmpyUzc2WlVtMDJ3dUZHcjgrU2c3NnBnelo0OHRxazRTcTRmdE1JVVkKeHBPL0QzUmZUci9jMlh1Yk5tYjhOSDdCanFIcHpCM3JXMnhLNmJXMnh4bkQ5R0VFYjltVC81cjdyaW5Kemk3a205NVZuaDE3ZWZLawpuWTExSi9hVngvbHMzdXA3SmVwOFlRTnNjaFk0RUlMa0h4VXRnb3VTdXBuajRsaERITHpzTVpUMjJPYmFrMXV3VFkyYmw1YmtQdWo4CkllZ1VteWJDd0o0V3JkQUduUUlRRFlNNkltQWlhN0ZZWkVFV0ZJT1NJUVIwdU9qb2xCZ0hZc3Z6SHhOS1ZqaGFiKy9FYVhCWnE0bW4KSUNWWTBNMUFESnBLYXBCbEZaNlhXVlZoaUloUitnUjVWbFZad0lZT0xSV3NOWXd0OHFvbXo1bnZNVnBGZzBpN1R5RzhHQTVqTWJkRApSVXVIa0c1STd4V3pqS3RjOEtDV2NCNUM0bmdHd3hEbkNLTi8xNnZibFJaZkF4QlhmdVNBcjNEVE04K0h4Z1hmd292bDUvSk9PSWtSCkdmMlQrSVZZSVA4d2FsSEU0OHpweFIrMVRqRnJBMmFQbGtGRFlKZzkva1ROT3l5Vk1udmN0YmRPdE1YdU44d1o5QUhRTXJEZ0R5ZDEKWmV6TGdIRGJJN2NGN0grQVo1T2RPY1gwWmJFVEQ0NDRVT0hDYzlTc1hCVFJjVnI4VUZzYnBna1lUcXZMV0FmSEhpMzc3aFZaU3JDMgpGRXlMYzhBcjdTNlI2NFNHdVV2YlVqQ0NHS0pScUY5ME5raGlmQXdXRlVWMzJnLzY1aHpmTXhJTTdFT2F6YVVzYnRLTFhneVZ1RXhlCld5TXhSMXhlRzB1c1RobURDU3E2NjZocTFrcy9lYkRxRTh4TWpFU3J5T0xQd2VoL21hb3FFdTkwNGRDdEE5WWZqV1J2bHQwNnlCRU8KZldES3FUUGM4MVA1QlVneGlIN3NDVm9DT1FzbXJ4dkZMamtiZ2psYm5vbVkyL3BPZU9NZFA3WHgxc0NjUFNWQ0N1V1haaGoyS3NudwpsZlF5WWoxdUlOL083M3JCbnF0V3FjUytqWjFvL3o0MS9rREZVYlQrbUlnaUh5SFlWZVJYRThFQVBES1FFeTBTcjFxODZUTWV6SmFLCk5aL1ZKTVN5cHlQWXZDZklNZE9mNmpRU3p3b3pOMmxtSDZHUWR1SWtBL1djMUFRL0cyVFFmakpnQndSWjhaTlR3b0pIVHdsR3pFT1UKTDNUVnprZ3d5ZmFnQVY2dGZma3hRSUx0SExpVlZhMW9kNUtYTzhHbWtFR1RIaDF6NVFqRk5FZHNrczcyRC9oZHBQOUY3Tmh6RmFXMwpibUZxSEFtN1pqUU90NFBCZnMwWE1EbmhmV1I0TTl4UzdIK0JuZHNnblVWWTRneFlRTDQzaTdzL0ZKSS9UNFQ5bTBQZjh1a2hNZFR3CmJyMDUrdUhaVXc1QTBxUVRGWkNDajFIQUJQQ0hmajZGLzlaQWJUSVJYQ2ZZZ2ZBcVlXT0ZYNlJucGcxcUlleVkva3ZIVEZxZG50eDQKL1BpdXlEQ0RiZUNYUFowOVNvY0FYTHR6d01pZHB5RVl6SHlDL0hyOHBkYWJPOUVXWm44YU10ZkNQUnRDcTB5TStGQUJucHdNakNsYQpaQThtL05LZE1KTFBham14N1NrWWFNZWRwNFVUQTNySndJQkpZV1dXREk4OG9aWWJCMUtHNFhrczBhY3h6SHJWOGp2LzdacTlMdExJCnY3Zm1IRm1Jby84aU9wSyt1ODd1OUErMUM3YVpBQ3NDOTcyTERnMUJYVlJWRCswT3hENXBUVitFOXRqUHhZSlFpNHhaSjNKYVB0RUcKR0U3MVJjdzBOc053ejUrU2J2aXlWK2hSUlRpeWdRelRTSWUwODFlSEdyU2NobGdVOW5CMlBVMVNvUXN3Q2Ivb1UrU0VpQVpiblVtRQpIbHV2R3JHMHNlcDlScjlqOVRSYzFua0tucjBmamRCT0kvSHNNRGRpRWd3UklwaU5VNXJvaGZHTkNIOEt4MXBOdjhocGFSSGthQXVvCkRnVVRNWGE5ZkdNZ0dKUjFqQ3BBVVBBTDVNQ2lTbmhLbkRrT0IyNkdDaU5JQjJjMTlxenEwYjg1eEFFd29hV2UvVlNNZnV1MmZWRlIKMVJjVlNSNDVydnJHL3JBeVZ4VzMvdVlJUGxjbk9XeDk2d2pGM1lMSjVNN3hlRjV1L2VxZmdzMmJ0ZHQrUGJkRXFtU2JNQWNrRzBlRwpMWnBnM1F4WlZ2c2ZxejdhcndMOVZRSlhNT2lqSENQakFzZDVkcGVYbDU4OExqbTBGWlFVa1FlTmhOMUk2R1hSeGxPTTRLc2NCcGNnClNNK2xpbjA3Z3NrRFJqcnFUSW1yRmx6NlF4WW52VE9OcHZpZWdoeU1jOEI1TFZaL0FXRmNpOVFrU2JOUkJHSzJzU3hMK1lVdEhWUVEKbTh2ZjRNSmNRZ3RnbVNoLyt3UkRLRm03eU84eHlidjRvRjVWZ3Jpc1ZwYXcyQ1ZEZkdsVjVWRFE2R29aMXEwRFpkSTdoZE0zYWdFcwo2K3dKbDR6a2JxdzhFSG0wbndqcnl0dmNUbXUxM2FUMmNUbGNtVi8wWFprYmtIaGUzalB1aUE1OG51UDJOd2R0LzAydWlWeTg3aTYzCmFsM0V6eGtLUjF5eVhWdVowUHFaWmdnNnZVRS9VQXlZak5ZZ3I2T1R4eXJvT1o2WENxN2Q0MDVxeE5Vb2dEWGNYSFNpaThNd3ZkdVAKODhvOGY3ekZrZG9FMG92SVY1TU5hZ0FrR0E2b0lWdEVKU2ZDY2lCaGoyQVZNbm9ZaXJhTVVTOS9xMC9SdExZb0ZpMFQrL204OWx1NQpnTkR0WU1RRFB3TnFVb0RuL1g1VGtKVUYzbzJlRndiNW1PWXpnMkZpSG5BMnl3S0MvNndJQnJrdkVYL2ZXMThYa0RtUU9Bdy9ZdUYwClhKWXA4Ukp2VW1oQlJVM0UzTHE4R3dvbTUycFRhTkt3cFFmaXJlK0UwNEYvRGtabnV3NmFheXlXWUxMckpGaWpaUEhmU0M5Uk52QkgKZXJocVJSQjczbG45Z0xLT1dLbStDZXZPK2FYVFE5NUx3N01oV1dwanBUZ0VoR0dWMXlmMHUyalFZY1pnMEdla0V2Z3R4dDhPbXpMdAprZ2ZmRllWZVlRbERpZ0U5RXVjVGtJWUVoR1hoNUlBMllUZFNlb1hraTRLbkJQTUh5WG5VQ0FZb2lySHA1YXF3bzN0UHg3akc2RGl2CkhZcmFwRmdSNW5PYzMzNHJGdzZPM1JGZW9pb3BRVExFeGZvRXZZa3pFd3VkeDZRaGxReHdxc2lqUWRJRVRGZkUxdWJFQ3hET2ptRDgKaGhlekllVjdQeHFNbkQvSTRVbGxHS0tOa2tvT0p1QzB0a3ZQRVZPUnhXSlRQUTRPM3gyYW96YU9IckIrWU4rWVBqK1hZZFo1TDM5dgp0dFJBVkZlUHU2dlZLaW5WMC81R0JuSFJZSWt5K2hySUJldnM4WmQ2ZmYwZmxKUE1DZDB0NXo1ZHZISnNIaHRNOG1BQ0o2WndCaW5UCldwRXNVRGZzV3l3RjBIL0NpSW1aM1hyMkhOeHYxSmdiaEIzditZclhIdmZVajk2ZXF1MUdpRWFUNkFHL1Nwd0owemFmbm1LRVhlaDcKV1N6aDJSR2VHUDhLK2NVaHZSZ1VTbm9RZ1FQQlhEM0lDVjBjMWQwbkZMd2YwNFg5ZUJyMHdaSWNMWTVIa0QrZkRKalZMMnhzdmIwVApwK0txLzFEYlR3b1NHUUc5cWxmSVYwNnVjMTRVd0MyaXNvaVlOaDlaU1ZSaXNMSWhJWmdGMnltZUZjRUFOandweUpYYXVDMHpnb0t1Cmx5K29KZnpLV0puVFpRMEVBbTVKVVZtak1qR3ZSQTRSTEdWOStzSHRSM3JKa3pPNlJ5cnRqNFIxM3QrN0hnWlBsTG12MjlWVjhucE4KQiswNk9hSEl6Yk14T3FoamlkZmk3UDFxZWowODd2TkxZdlFEZDdkKy9jK0hsRHAwYnpCQSt4QmlWSWZtU1NQSlduQ01NR3pMSlI3bwp5ZmJ5TUhxOW5tR3kzLzVzZlNsVVZKVGNzd1Y4TVM0YjRWYUZ6VWFYTW9jWWhsblQ5RjYxMXMzdkZHamFoVWthUUkwUW5sait4UG9ICmhWZnBLMm5DTnAxOXdabm53RWxUZnI4aWkzZFF0NU92L2FXNnUyRmNMVUNmUHF0Yk1Zdzh2T0dIZW9EeWp0RWF2WVBqS0UzOTh4dncKTzlZYm00VEtiM0w3RmFveCtpRDZBazM3azNNa016dzVMd3pobHhoYUQzWVcySEp5em5iTkZnbUNUTTZsS21JZ2t0R1RLNDdWcTRSZgpRWlZjNkx3cWM5ekJHWDNEcWhxWXR1N3kwY01Ed3Z0YkR6eVUyM3l3SDRmUi8rODN4NDhuV3R4UjZrbW02d2x5VUZIbmlPWjZkeTAwCkM0VG1IaG4xNjlWMHFMLy9CQzREdS95Y2hEZGFvMkpzWG9CMm42SGwvZ25QTkMzVERNYndUb0hVTHNhZVVmeVRuNjFmN3oxMDZOQTcKR0JxaVdQR3VXRCs1S041VzRRSVhrc3hGclVRTkdzSGNXamUvRmlEa1F1MENXam1BeG9UUjJaVlo3TU5NRzNVUS9SSmxHVDFxNm9kUgp4eTUrVUxrLzZsQjlDVHNzWlFkamZLY1AyWTRNYStJWXVic2FJSWV0QWFqdnJESFZQbWJ0eGQrY2pLY3BVVlVGMWl2TEJxL2ZLSXVxCklwSHZYbEpsZEkxYXZJYVhnNFJXRExFUWZXY1g1S0R3eWM0UmRHNEpCM0Z5V2RFemo2MEw5WkpSNENWRjRyQ3VHUzZYMFdjNnd5YWgKZStSWXo0Y1hyeXF1QTlqMis3NC9MZFl4K2lPdXhHSnhSRVVwYk5lb0V4QUk2dndwT2k3dVlQcTgxYTdnQ1JwMHM3MlJmcmorL2xLYwpjdWg1NDdrM0VJRksySDRxWFF6V1pxVTg2Mkp4YTFMVzdKR1ZULzd3cHZ0b25oWHQxTktFSDhSR09CR2lsY3VWQXZTZW4vUGplRWdKClJuTSttb0hVb2cxY3RDRXRrZjZtb1NTY0lXRWRGbVNWTnZsRk51RndHUnI3dUFDVWpuUjZIdXJmTzgzQ3haalp5NDVsb0lpRk9JYi8KaXFBSXB2VXB1aGJqSEEyZGFmWHRJbU0zT1VrVG5SaUQxNHNXMFMrUzArL0hXTEVpSWcrb0RhYzFCNHNBTDhzNjRrSkpqUnh6bGdRegpCMkRjdHNlWGF3L0l4U1VEbHVaQTRtTEZENFh6NGhJeDlMeURla25pQjczNyszQ1VQbjliUWR5T2VqbzY3ejR4N1Nlc1diR3V2SzBVCjdOeXhCSWVaVFRyaGpUdW9OOGlDbHhoRCtoNytGZldVWG9ZdVM2Qk11cS9DVHU3T20vb0xaU2pzenp6Z29SSVdvbG0wS0lwb01DWjUKMENNTGY4T213aEV0V2h5R1VERjlEN2o3SFV3bHRCSjhuTXRHYlVSaXVtT1lndTdRNUlIWlJhcGJHa0xSQzF5T2pxVUQ4TGZYZ2lzWApMT2lDRVY5QUMrbGp6RDdFZk1LdytKMzlTblBIdlRYQVkrTjNNNi8yaVkrblNUV0VZVGdycHJGc2RaOGlHdWVBa3VmUGVUam9mdzBECks0a0xOdjQ3T3BBeUFWQVlYeUFnYytqNlVzc3dTTmpWbWw2RUxVRWdIbE9RdzBqVTJSQk1Vc2paSzRvZm05dlVXSlhuaVhJRjZiUTEKVDJnVldnU05UNkRBamMwdHU3R29hVnJBRTA3S2R4KzlwK2RaUlR1c2VzbXE5VkN5enJzeFZwUVVYUVY0RWdpL2lIVm8waE9YTDg0SgpxWUx5M25lNGk5UDR5bFNYQkkvZ0lzeW91MTc0UmZRTDBlZml2ZXJkQndOaERaUG9MYytMeEZvRVJnNFppcWsxRThyYklCZ2tLZzBnCnhLQnNDUUxIT1YzWTk0SGpqRnpRM3lxUUtOTDVNT3p2QjVUSytFc3J5a0cza3djZU4wNDI4L2dVdGduUW9zT2FqMDBaZGpKNVVEbTcKK1g2VHovakdEUDJtQ2FYeGhHSkV4dnJndno1VXkvQmVFVjIzNGk1c05sVTcwU2I2RENLWDdNVHZxVXlSNzF5aEhobXhBTVdnU3Z5agpVTk9kVnFDOWU5R0J3SmhndXdRenUvVUMwVHNtcHZGck1TTFd6eU94OEJaL3RYRDJlZGczYjNEOTVMNjdiWVFrTFJxR1N0dk1tZTJaCmlWWUo2MS9qRDNuMTZGWGpUSUVFbDA2eHVCTlluVGZPNlRBTERBVGs0cGdlMzZ5RmYrQUFiakMvQ244WVQva2xQRGo5YkF0dy9BUVUKcEEwcDJERi9KRUdoRU5Ec1JJMXFta3NHQ2lHWkxhbExSbWxiQkN1NWZRdlVUOTRlRFJ6T01uT2NqMDc3QjMwYzU3Y0lnbkEwaWxpSgpPQ1VXMHJFd3pTaXJzSEFBM1U3TGtEaU5EQkV3K3JYVHlucll3WWpBVHltR0RBdHlwYkk1dUhtY3p6TGlqV1V2VFliZDhSQy9EdzFGCmd0VjlWdmZCV3ZYa2Q5SGpwbDNRdWZheVhVejZoQ2pGOWlDOTBCbFZDYVVCNkVBVytNaklmQXZRTVpQTzZ2RHRwMHBCUkVOWjVaUlUKdTJiUXRmb2hZRmE1N2NhNjNxK3h1dDZ0MXVBblh0cDJXcUlWczRXdEFKajloLy9KTDRJM3F5RmRJZjVKd0pHUUROVktUVUx5Q1lpcgpxa2tNbEJ6WXVSM21mQ3RHYXg5ZlBpa2FEREgvOTJQS0EveDRXSzh3Zm5qWFhpeGhnMWlPaSs1b0ZXR3RNZ1lPSkdvTTNQaXZ6RGFxCkRnRDhnZndwdlhWYURRQXRsNzVwTlJneEVpMXUvTmUwY3l0VUoya3VtbGFIQkNCQnBybFNXSW0wZWFkRW1reFBQMHVQUTFka3N6Qi8KN1Z4NGMvZmZGbDczRDNqOTd0Y0I5bVhzYTk2YllMV0U3bnZTbzUwWlUyZkU5ZG1ZaGhwT2tOY0labURwOTN6YXd2UWhVY0ZyUTk4dQp3VGg2Q1lVaFIvTG85TUNhcCtZYmowSlc5cHdIL0FIZWxkaXo3eG94WkkzYys0K1cremFUQ3lpdDBtTEovL1RETzJQdjJEelZiYSsxCmxJQXBvTEk2d2l0STBrRmNkWFZpSUlHL2xZWXBsN3hUU1g3cnU4eE1yam8wMVA0TE9WOFJ1TjVncHpHbHdVdm4wOGZMM1FxcllDdzEKVExGTHQvM2g2emI1QlpCZUJEQjdWWGU4cTUwWGNyMkhPZWJIK2h0TmU3YUJpQmlJSGRSRVhDS0JJVnNIelNIQXJWcXNrV1lCSThQMgp4WXBnajVibmd2RFUycytlVEVVZXZnNzc4QzJic1hyYXQxdklUY0xpWC81N3U1QXhleTBsbUo2bWU2cU1nb3ZJeVNuSHBTcHF1SDcyCnFkQW9SdWRRMmlGWVMzNEIzeGpUaW1GYWtuRUwzcGs5dEtqd3VJMlR1V0QyVTlBSXRhQmJZYzFhMGsrTEN0OS80dU1JVHJuQVNuNmcKZjFwWkdwU2xsUTFQSS91UC93NHVFZU1Td0dXRnc0RDhJdkpWbmFnbW53Z29STDBTdHZXNEtldzZMSHhUc3QzNTY0M0JNeXpJYU1UMgowYlNaQThBYnlDMEdFejRWRUxQMkQybXJiQTdpNkdoVTQ2WXhEKzlFWHUrYWZKMUNzMWJSeFJDL0NNRkMvRUpCUTJqaGtMaVFoZ25KCnVrRWJQR2JLTVA5dlA1MlhDSCtjUnloMjY3OWFxTmpxSjIvQnZPTGgrYzJiT25FS3JNTnpRS01LRWl5MHpndm5uQlUyTk1QU0ZzS08KRWRNZXdmd21PamlId1VZOThHMmI2MlJiZ0JBc3hMcEYyZXYrOE8wUXQ1c3hyQ0FmOWIzUnZaRVkxdUtDUFk5cWU0NU8rL2dHN1Y0Wgp3SFhROTNncDFBOEhLSVZMS3ZzbEdFUWZHSDMxeER4a1FVSDVpcXNpbDJYU3VoN1BoMmZaRUw5dVE1N3I5ZHFBRXk0TGhTUmJEbTRzClQwaStxTEU3bmppZGdCRnhKdDduQXh1YkdDUzRMWkJCRExmdzQ1Q0JHRW14VTlnRjJuS1ZDSDVwWmlOTnN3Y2tXQ2pQM3Q0NDRkOEQKYjN2cnVyWHE3NS9qMTF5RVlYNUtNZGozMnYzTngwcjhMNDBoenYyZ2VWTW5XbU9HdGxKSlFyTVEwNklvd3hUaUhEUlZwajhOS01lWQo5b0ljUVM0VUt0YWdQdkR0MVovTndjemZNeUVRV3FBVkFHa1MyL1Uvd3VxRFpZZWlOdjFMK25pMGJVSy90VnVQdmZqeTRPUFRCazhlCi9PUndzMkZrc29QNGVHWFJXYjRSRy92VUdlMTJxY0hlTGExN1pUK1B2VTRLV3BUanlDL0ZZZkVrTURLeHFMeTlEdjN0cGFySU4vdDEKa3hIMjk5TWszUVkybWxKWVUxUHpaVERJY0dhTUxtWnVlL2EwSFNRSXVUWUFqTi9lNU5FR3VhQ3ZvYmFXTU1zUFByOC96S3ZRb0ZnZApWZTF1eXlmVCtFV3JRQkM3ajZIQmtLYXdmaUtPaFRLdnFLd3YrcjhEM0htQllwTzYyK0Q2M2VxeVFZMnd3ZkxhRjE5OXRlT2Z0ZjhZCitkb1liZitQVGs3RFUxbjcrTWJ3NFR2Ukd0ZC9xRVhEZ3pJU1JkRHJlR0JOZnF4WDFHYjhNQUxhbVdUYVVUQXRKNmdaQzUrQXpFbEwKYnZyUWc3YWgxTnBjUEFYUzNaL1ZqVVBGWTdnamYzMEZ0MWl2N0ZyMlJOV09FUi9lQkI4RmRHWGJjUXNNOXlYZkRKZGYxUlY4ME8wNwo2REhnWkpRYm9peHVRYWdQZFBsc1lyQzZDb2FESThWcmlyR2MvT2NicmQ3aTE4YjFYYWg1R3Y1ZWlKQjlTK2pHeXVBM0JwL0dsWXluCnd4L2VLNFdrUVRVYWs3UjZpQ2hYWVRkTW9JL2FsaTBOZGlkZEQwYUxyR2o4Q3E4Y3MxTWJNZlNNZ2ZjVHhlK1JEUHZKL3RHeUtzTFIKZnQrUEFzQWtBY2ZyZDhQcisrQzErelVoUy93WHJUZlJHZWc0TGU1OFg3dkVKV0QwYkpSTXYyRWVaSzY5QzU4Q05hdzlna25hMCtITApTZjIvZndGa0dzY3NHZHJ2WVA3UWZHVjRhM014dk95ekNVM09HV09iL1hyelppdGVwYVBUaGpkQ2cydkM1bVdVZTRBRUkvYmhWQ2hNCjZWZDEwbXpvZ3VzQzJZQVFaVDFzd2dKV0Nmdy9kMFphaCtjSHM3cWRDTi9WdnBhdmV1NzJnczBmSERIdDZhYWQya0pLZVZPWUk0d1EKd1NJOXIyb0l4UXhQZ1dZSG9vQ0Y0aHVSS3pNMWppSEpjQW9hb0h1RHI3UzdIeGtHUWYyKzdwVEc1VGhIamUvV2JDWWVXb0cvZTkvZAp5YkEyTWVzL29UdUVZQkNEVS9wWWhjTWl1azRYUDJ3SnlyQXpFMHlUc0dZWmk5WldMbVZlaVdVdXJkazBLNGlDRUluOG5NS3ZDRERtCmU4dFdYOEVHMUxRVFZ1SGttSHhwNVZUbUkrL2wrTlJWZElldTFlOVBTUWZqM2lGOW9pVGpwdjUwOHRvRTdnVGloeEY2cGJ2WXR6b0EKdlFobSs3cmlUU2pPUXI2YjFiMTNlMjNHMi9yT1BWMGJXZzB2TFBWQ1hOL1dXMzhFdERtWUpQeFZyVGxiclVIM1NNSnpBUm1yU3E0ZwpENGliNSt2K0Z0eld0RXVMbDkzOHhPTVlhVExkMEs4emxOZ1c3ZzdiUzRSZ0pnUHdMZ3pia2tFL2FHb3BZWDdLSWlXaXBWNElVcnNFCkl4SVdvaGNOZGhoSGE5ZFFKbGpRTFovMFhVakN4dTBZa1U4cGRnWndZbnp2VmIyTHI5MW13NktOZUgwaXUyZ3NMZ1VnUCtUdVA1NXEKdFRXNm1LT3hQSmcyd1JUV0NGV0VYaWhlUHpycjRQUkJuazUwTUp4Mnp2YjhZdExhRUdVSVVXSUFHNVRUUjJ5cks0dGhNYWFvYWlWdgpXcUI5Z21uaGs2WlFJdnYyM09hbnNzQlhvRlZiTWp2L0FpdHBPYkF6Z1JQQXoxaHE3VVBKL1ExQ2pPUzFWMmZsNjZjTVhSVHVBcmt2CjQ1MzNKeHhPcnluZi9jMmZZMEJYa0poQVB0M2hidnFTcE50L05MdWdrMkFYRURvbXdhdzZHa0dFRU1GOEtGRVN6bnUydEJBbEUxcmwKS211QnErSDlGczhBWmhLMkF6M1dSMnZPZDRxTTRHVm5iVnY4a0IwWk5uUi90cHNiMzE0QTM2QWJraElML21ORGViZGw2dWRYdXczZApxOXpqRGVWL2JGUXhnWEE2d043RmQ2WkJ2dzFMTWlDRGZLNUFiS3JiNkt2c0JhYVNaenVFYmRpSi83OWhhak5mOU9EekNYcThOWHVrCmxxYWFRY0dac1h0Zzc1Q3F3TVNjeUdmSTd1MkU2UWw0S2JRMGhlek15WnZmKzZ6NXFWSllQNjZoY1dKZDBQWG9teFVWbCtxYkUzemIKZ01RSFpuRWY1ZWJtSFJTTHlvcXEvTWVPTFIzRDZQeC9QeUFIVlFHbUh6clVENm9lTXptL3Jmd2Q4UjMyVFpGWTNtSlFaTDNnejFuNQp5cEhXQnpzcnRKaGg2RVJIaGpaLzI5RWdOUlc4Q1RJeStKcG1uL2dXMTdra2lFRUIyTHplYklPaTY3TzVsUmkzVHpEYWEwcVBHYTE0Ckg5WmVVaHI1Wk1YNHJsUEgvNjdtcmF5a0NuNzRONUlTeEx6eUNGMDBDd0g2Nkw0ODdqNmpUZG1QMjI1T1RVc2IwTE03bzNzN2Qvc08KdDkvdnN3RWNJai85M3ZBMzVLVWYzVENJOEd1S0pSZ2pLbnJSTEM5NmMwdGt3dkNQUUNmQkxoaDBUSUpCai96UWxSd0VKbkRLcXE4UQpGSTduR1ZESFUxZktjMFVyWTZ0ZEh3elJJamdZV2UyWElDdVVHN1J3dFg2MzE5cUlGZUswSkVqSnlDckRkd2R0TTFmT3JFc1RHeUVRClhFbXMybWtpSi9OeGJtRCtBNXdDUXFPRWNXcE5jV05lNnVzUlQ1aHVuYjRQaUZOMlRWY25wcjlXTjJWRi9YaDArbUFYRERxbUR3WXoKblRtaGU4MHpscWNnVkdmMDNqTEFMSHY5QnkyZlBTdUN0WUEwYmlZVytnMGpDeWpmRmk5a25BYVQ0ZzhTSGl1VVlmYmZHdzA1MlRSeQpuWFhwQXJDNnJGZm9BdDNxRHNJUkw3aXNuQ3dISmNFTW5pWno5czlKc1ZCcHZIMjZsajAwNVJ2NHI4dSs1c0FIUDUxZm5RUzdjTkJCCkNRWjN2eElPSXpJYXc4eW4xbENYc0dJQWN3OU81Qk56c0V1clRJalR5TjRab00vYnVZaHRvbGg0NnFlWThRaUt4eXhnQlJxajJhTkMKOU5UWXB4WmpJT1QzOE41RTlzWGpKL1RTeDBOZ0k0RExDM2E5S05rNU5PRzB4WmhTalA2SkpJaVY5STlOUWZsQ2ZBTi81clo1LzlzWgozT2pFK1VUdEkwdEM5MVJHajdXeDZ4bmFCenlNc0czSEtqanJqKzVXNnhWZFAxN0JFSUdYdEtTZ3hYNGhteWFNWnVWaDVwdy9Kc2dSCmp5MElBUmxNZ1NHRFY4Sk1nTDBBUjdEcUZKMmF4ZUFnS3BjMkRKZzk1cUd3eFF6ellKQ3h4NEZ1QmJ1YmsxOHpYbWlzV3Y3MXo1QXYKNkZTd0N3Z2RWY0hnd2RjMFBtR3VGR1lWcUt3cU50dUtmcU5YVDB4RU1hbFIrYTJiRWt5VnYyaEpzYk1JY3JRQjd1djRKOW5TeFZtZgpyZXJhV0lJYmVoN0J3d29jSTRsb0pBb25lVmtNSEdRWS8vYy9PTHhISmNscDlBWTlQbFlKNkwxR25RSVloVEVMb3d2SDFCeTlyR3pZCjVRcXJkMjgycnNVOEhscEJJaU8rOWxsNDg2UHZmeDYvT29NY0Z3NDZhSkNEWE5oRFNtaklrQTh5dUR6Wng1bTB0ZU1Va2tFTnlqenYKWjl5YzVPaE8rTVYvbFgvczRyS21GeU4rR3NHQUY5YzU5ZXUrS3MvOGNqNkxEQ3NkY1F3VFZuVStoVkU1bDZSblZRaktTb0E3RnVSWQpINEEzaXVOWm5kR1A0WXdBL2NEajZvWldUZnAvc2QrT0dUS3NNdW52L2JyMEVSSXVEeVE1aHE1SGVrMjdmTUtuYjFadi80bkJ3eVowCkV1eUNRWWNsV01IQWdaV3NFR0IvbTQ5SlpteFVJTHhVQk1IN2VVSXZqZzhDejQ4eUFNZXZrRUNhc2FtRjIvWFRUTVF3Sk1nYW4wZHQKeEVXUENPQTNLWXJFcUViSjVPM1NnTFd0Q0JpVGpsYTJVdlVSenFGNWFML1hYNVp6T0tLcWx3dlYwUlgyUVNtVlpKZC9YOFZBUGx3bAo5bTE4Zmp0ZGtma3owV2tpWGpEb3NDWWl3Q3c1a1lWYTQxSzBFVnZuU0dGd1VjOHFFaVE2MlZzZE9sb05ZOWFHY1BvSFJXdUNVZFZvCm5WRjFldmd2M1RWYWk5TS90ZGpvTkdwOVEwd0JyejI4bUVreU1LYWdDVnplS0gvWWRoMEgvZFNlOG5mcklOT3k3bGFKS2QzMnB6NFYKUm5Vekx1QVluSkovVmZkR2VCN09TWEFqOHRzNDB4VDRMd0ZNNE94VTBETWkwbmJxd0FTam1OVjFDVzFLNUcxTkRTeldnYVRSaS9NawpvQVNiYWY0c010RFltbUJOV1ZHdGo5UTJKSWg1Y2lPVk1GaCthTEcrQVY4bDJSdkIxdFR0RWRNZGpYcm9PYTM3MFdwMzVYZmVCSkR2Ck5Yd0hic0xLaGErS0RlYTdMTFlwcmtPYk5Ib3Rnc2NITEMvN0tYbUhiZUY4RXF3VDdlSkNJdGlETHdrWWpXZDlxcjVWZlNmQ0ZLeTkKcXhwc0UzbXRqK3VNanlPNWN3ckJtdFltdGF5M2ZScElockY5anlMQkp1T2pMT1ZGRCtiMHVteENEV1RobG40SCt5MGxlMFdicmowQwpvLzZFUWNWaC9HT1RVZDZNWS83WlFDenY4VmNPNUN2ZjNEMFcwK3BURmptLzN2TW9YU3AyVHRCSnNBNk5DNGhnZE5rS2tUQVdpSTBtCm1YemhNRGlkQkF0cjJKMjFHc0dJMmpXOXNJMGdoMnhvcXI3ZW9tVkUyd2dLSndxNkpsWEE1RGw2WFhTZlRWMjN1WGxnZVNtejRHWDIKeWtUamdMNng2VytQS0FjK3FHYTlWenJWT2l6QTYxK2JLRjdacngvdjhLOEZtYmhzYnczMVB2MjNmcW1ERTc3ZG01ZjkxNHkzMzQxSQpMUDY1aURUUldrOVBkT0s4STVKVUhUYklRVEZqWllDYVlyekljbUFXZFR6b3dpVjRnMEFiRk9qbEpGKy9ZQVc5ZGcrTU9CQXhuSjlDCm9WRDlONnA4VEh1RlBVQ3ZlcVdKMzhIa2tUZlBQd1RNM3A3ZUdKdzZObVRyNVd5ZnhiMGZ3TkozNDUwZk91MzM1UzU4OVErQzRBZGoKVlBYQTV3SkdEOE5hWE95ZEp5OHBUdnl0QTM2UU5rbTNIaDF3Mll6V2grOUVKem9BR2xDdjlDRFJEQ1dQM1dsazZwdDVvYUxETFRFTwoxVjUrMlVxNnhUa3ZMR0ZTR3dvR2Z1UWN3ekNzamlNcTFvNkkrV05reTRTeVhwT3lVMWVWbCs4YVhsZnU0VGxlVlhtNFBMdWlCQnNnCmxQVHBPbkM3OUdodTlwUkI2ZnU0b0Jwb0xOenFsMFd6V1pUWW0vcWt5WmRVanZrSEZQcXQ4NmFXdnZOeDY2UC9USFFxV0lmR0JhTmcKc3pkcWlzVEx0SUoxUU5hQlR0UjQ0VzllOE0vc3VGVFdDc01Yak5DUzhDWGlvN1RSL0lGanJLRUM3SVJqY2p0MklnOENKQStvM0pPeApDaCtWMTdrTjVIdGovSnkwUHZTVkxYNHJ4YnpqdlcrOEZSTU05bTVGZFp3UzBKS2o5QUV4a0Q4b1p3bWZIclhzK0NGZTJmb3hUYlEvCnArZ2tXSWZHQlVFdzZ3MFg5UXFFR3lwZzUwb0NuYXFxUWNvTGJTcUtVa3hsNUF3cFZCYysvZEx0SVhveHA1cUlZSFppYjB3czN1QlcKd0FpS2RLWkNHOEFyMHNlUEJQZUhkaUdXSDVhYU5ZaU11b2dtVXoyMThOYVYyOGRXclZzNDhBVXZtTWcvL09FNW1aY1o0aTErTU9DaApRV3QrVGpwdkp6cnh5MkxlcTFMY2I4TVA5TWdGS2hBR0dpNm51VlAwbVZBTjlSQldQQmlEYzJFMC9uRktGSkV3eklmVk5Wa3NVV1Z3Ckt3eWgyT2tEaW94WllldGpkQzREamFyNDlTd1daclM0VlVXeS9XTnU1blJsQWI3L3VQMmhDdlcwUzNHalZkOEFyTFZSaGZ1U29leVgKckdQVEdVWHMwTGdRb29pejE5YmY5ODRWWDBmRTVURmVTRVFJc0tzVU5GdEp4TjZEeVYzQ2ZSZG1Pbk1vKy9UQW5xcGdBRDZEaW1zNApnV1dKREJyY2pGRUJUQ1J1RTRxcW1EeHE4OHdBSzRBaUdyeWc5OTkxS3p3czBQZmZBbm9kR0FLSzVNWFBad3dFR0pQblNYc3B3RTZzCmk5aUpUblJZMktvQnJsZzdjMlV6d3lnUEZMVFRrRjhSRWdicTRHUGhuVmJPNExYc1lGWnRnMkNlR0pHVy83SzZyRVRIWko1UWpPemIKdG95aDdjeURHbnAvVlRTd3JOUEtLRllYQTlJeUNVSjFyTXo1QUNQeTZVZlJTOHFmdk1sUXY2TnNPUHlTNnRXSlR2eDhXSWtwK09mNwpYZUhyTzRTSi9XcXV1cCtwRHhtRnRKRVZJcklnM21kM3Y2b2l2VlNXaXhhYXV1cUZFVERwWWhTZFR0RXBibUp6a2dPWUE4RHF1S0FXClJJbUVoSFVFV0VZVmFhR0FJTVB3cW14eDZUbS9tUkJZeFNSSTdZRGtIY3FGZW41Y1hRRGlINnllR0xVNXUySDR6bFdSQlhSK0NYUUcKT1RvMExvQWdoNVMwaCtmenIvVlhSRkxrcms5MkZPWmNZNjNrUWk2SVZqcVVBWGtBMDl4ZU11Vnk4ekdXVU1QQ3E2SXY1cFJWbWlJego1RWpQSXloaUxyQUdXZEVDTG9ZMUtoSTFRSnRoOWd1cXk4cXlCcFVZa1g2YzZBWk1CWEhaZVpsVjZTVWRFU0I1VnJYWFgwSkV0d3pXCjdDUVB6M2NKN0U1MG9uMFk1NzhQU3RMeFNINllUNUpmcmhVelp4bmVGbUtvbVJnT2NKd01MVDVHREJDK2w3QlZvc2pGR2oyNkJsdEwKRlF1WW5mVzZHRHVCMTZJb2JqMmpCRlRpeFRHWUdCK3BZZ0xMdVlEUXlxOENvOU54cklwcXBsb2tQUU1HaVFoa3NIbDM2Wldrd2NlMwo3TEtMRGJDVDJMWGJmMm4xUW5RcVdJZkdCYUJnVU5EM3NzMnl6UlpYMXJ3cGNORWV2Q25jMytmS1VYS3AxcDZOUUM4LzRxZVYvalh3CmJ6K1h6YkU4c0p4WGllMVh5ZkFSREpPQ1FWK01hMGh4RExsUEtLWW5EQ01XSXFqa1dDMFpaaFpGdllRbGJqaURIcHM5cW13VXl3ZFYKMXE4SGxUQVNHQmxDOHdCUy9JdEp4eXA5eDNvQnBkZTVTWlp2RjUwRTY5QzRFQWdHRlFsWGpWSS9ucm8xNHNQR2xHbTNCM0pUMHpKMgo2V1dNeHZOQitaSHFqNXIzZVh3NTZHYm51MnhLa09GTkFFTmduMmdLMjRsWTV4NzdWQ1hSYTdJM0x2aDNlYTNZZ3hqN2p2blVKaXZSCjdOVVNnNjFFM0JTWkVNemk1bG1XZHdrbndjYUNxQURqSXhjNTdoenpoTnIxR0FQUnUzWkNvZXZjSmZPMmg4NHdmWWZHaFJDbUo1ajEKS2ZsL0lxL0pTcFR1ajJ6Uk9xdWJzaVRHWWZld3M0TXJtall1MkVhTnhVVi9iVEFTZ3VIVXI3WG5FWThZaXJXSDhvTkZ4a3g3Q1ljWgpCa3d6d3lqRnpQWFJzcGUrd2hwUVZNQ0VmWkZYQ0E4dHgwMWVHNHVGOGhVSkNTWXRVYlZ3cHYxZjUyb2h5dG1oazJBZEdoY0V3ZTQ4CnVIYWUyN2hpMXNiK1cwSmJwRWZrV3QzcTVndDVGZ094aGpKak03MmFUS2RNR0xoS1ltSmNoR0ZXNkFuYkRBWk54QmhOcjMzQXhPTXQKWVJnY2FkWXcyZ2FhRW96UlV4ZlB4QWZ3U2haeGVwdDRZWnpJbnlTVTFRbHVVRlJDTUVoNmd0cXA1RTE3LzhySnZKMEU2OUM0QUFobQp2Zlo5d0ZJWTF6TFEvVi9ORlFaanBCbnVpQUxYcmJGZ1llaE9Ka3d2Wm1MQVJmaEFLVmJvcG9mQWRDY1dxMjByWnQxTXpBOUdFVU9HCnNiSk1Oa3FhaEpsRkZudDJnY2xycE1ZZ2Rrd3hDUzZ3Q2JMVGhGVTRrSTArU0tRWlU1aXFCWHZ3dy82YTZDUlloOFlGUUxCWi82YnUKa0ZrL09HbkZqRVQzMThkQzNwR2tOOTk2VkV1ZGJ3Ti9pcXdieXBsQTd3N295RXVjOWk3T0JpdGVpR0pBbGxrUU9JdkhYNmJPTElUNgpHTEI3Y1VxTU13UlVsb2IvZWJQSFlKRjBCRjQ3MmNoZzRROWdaQ01YTUFUb3Q2VWpHOGptdjQ0UHZROERpNFpHQkZsK0ZYUUdPVG8wCkxvQWdSK1hkbTIwQk1IdDhyaU5ULzd0ajc3VEswRGpOUXlCM1JObnBWaTZPQ0Z1VEJKazhNQ29XbURHNXJFY2c0MGc5YWhqUzFPU1IKOUg0ajc5U3ZKQ0pXM0J1VmlseXdJckFLalZ1WXdXQ2lacWpYRnVvTFI3TWdoWUFKcDVjUktwYTB2eGV3WC9paUp4WkJkY3lBbXZDYgpkcUlURndaY3grYkY3RTBCKzUvckFkMGx2bW1oRjhHL2Z4UE9QRHdETXE5a1dXMmF6QXN1UWhoSEV5azlZQklGcDJUUSsvNUpIaFVUCkE1S3dVQUVMMmR2RStjSEpoT3d2S3lpOGhRVnlHTkRyOVZnTFFOSDhQeGZ3MXJzQkZrSEtJbGhVWHc4dzhyU1Myb2xPZEZCOCt2bHIKRzVjdngyajVQMmNCckNnM056ODExakNyK2NIcGNPV3JuSjRqN3BGZVFvdFk3L1JibStlc0EyYUZVZDA4UzN5cWkrcnJZN3hLUU0rbwp2RjhuZUdTYklFVmpWZ2ZocFo2NFhoaEVCSmF1SWZQcDJKRDBCOHpzemZEMzljOHQybEx0ZHZPZ3UzNXAwNUYvTFhTYWlCMGFGNENKClNKUG5yNS80VC9KUjFVdUloelBnb3J5bWFlRHl2S3R5Vyt6YWhDbE1hZWplWktZL2J4QjVoUUdyeTB2VXlOZWk5YXdIek15UUl3NncKUmhXd2piVVlDV0VGdHhBd0I4QUV4bENZRWp2OEFtK2d5a1dldC9qUTJxVFAzRkx4dzF2RVNIeE1CUU9tL042Sjg4dWQ2TVFGaDFtZgptcHRHNnBVd3Yxa245SFZOZDF0Qzg1a1E0MThGTGtwV09FWmw5RVRFTEg2MlpiQk44RWc5VXdJK2owSGxPRlhWbWVxc0ExeUNPdUFJClRVcEVZSms0ek5qUUFXc0tNRkVDZUhVNkdoeXkzdEFZTlZZLzdRY3FhNXovd1l2ZjNSMTU0RjhIblFyV29YRUJLTmpNUVFNck1yZlMKYThmY2JUKzVySyt2TEdsT0ZkUnlwazdGNWh2MG1vUmw2dnNYOG02TEtBTVJNZFhxY3BsYkJiTTlaazh4OUlZakxsNVEvRXdVRjY4VQprNjNGbWRzMGtkS2dNZ3EyZ0piNUNPWmFvWEVsMWtUOWJVV3VBWVowc3h6VENscDFvaE1YRXE3WHIrS0hDL05Xb2pFM0E5c2MvL2FmCmtjbnVzYzEzVzRJZnBmWDBNcTdFSmNrc1dFRGtnZmhSTHB1V21kRU1zemNhL3IvMnpnVXVxakp2L0w5em1UbHo0NHlBQXFPb3FMaUcKcWFrVUZDOG1pckcxYnExU3VmdXltdi9LdHR6Szh0UEZhTTN1MmZWZmYvdTcxWGJiM05MYVd0TFNNaE52bVdscW1qY2tGUkVrUUlWaApocm1jTStmMlBzODVNekNnb0ZtdkRmaDgwWms1Wjg0QjhjT1gzKys1L1I0OERyWXp3SHR6c0Z3RzZTMkdCZlFjMFpoUGpIOEw2WkdOCkIrL3RMeHJuaXlRSzJPaEI3bk1KR1FlTGFXSitIS3dvK1NVUVp3aXNuRWliaitvaG9vaFpIRXlJTktOdWk1NHkxWTY1OHJlbGtIUDEKOCtnNzR6Uk5DdGxDTkVVak9aVjJNY3pjN05ESHdWTDZldTFSRmJmenpCWGgveDJwdFdJSHBXbWFHbDZqTXVsNGpjaGoyWGJ2Mjd1MwpkWkhNT1lha2lERk56S2VJZy9rdHdPNUwvM0R2RDY1R2V1UVI5UE84dTdKdzNEN1I3c05wWWw1bldkbUdqVGRUaC91YXl0SVRXSlRkCm9UOFcxRFJqMVpQckFsZ0FkNjYzeGk2RGtrSUl4ekQwS0FlTXJnNzg0Nnp2OHdEOFFLRkUzdzJNUU9qQ1dKNURNZWV2eDJGeVV4MTgKZmVjMDkySzhEZ3lLZ2c2cWV1c2xxZTNYVUxZRHQ1ZEswaXU4Rk1QUnlBMGpUMVExMGRybXZ0eHRKOWZFUWFRajQzeUIxb1lZeml5UgpaUHFjS3dUNzIwNG1hcDFEU0lvWTA4UjhpZ2lUZTZzZW9lVDY5emc5VGNzYldyczZIRFdLQUllUXpubGdQaWdwZFR6RjROSTNobUlDCkxzS21SSlcydC9zdmFSKzhXcUhyd2gzeUdIMVdvdkhLeVUwNGd5SHVjd0VSTEthSmZjSDRmQWNQLzhyZkVHa2QyYTdWUkpCUHE1YkIKMDNNZWZ6em9EREc0dExiTTRKWElrbXFqTlpQcWRlcGpYVWd2YzZNMXNndlJLZERzRnpVd3Z2RC9FcDZWaUo4RE51N3VubEVMejM1VgpTQnNzcG9uNU5oaUlsM3k4YWVOa3pWa1pQcGEyN3R1WGtKeWJGcTR2MmprVEFobHJyZUpvbGhQeGFoSVZmWXNxK0J5c1lHR0RRYzZQCnA0UTBKdWQySEw4Z0hYNXZudkFxL2pYa01ZSVhhb3BSWUx1cjhxbjJWeElJWFpJaWNEUmFaaXoxM3Y1RnBHOENQVy9jQ0ZQYlhIVnEKK1B2bjVNZ2dzc0RpdlkxQUJFNmxLVkJSd0xLd1FGc3lkZ2JBbG52dzFIN2hGaGp5YTlLbkRoaVp4MWFVNUd6aWNlbGdzRmtLQis0aAplaEc2Q1RQTmpRMVR0VVVBN3RudnRPbVplQTh2Y3U2Y3VaWTE2REhRdzZaWDl0V0xrR0k3Y1ZzTWh6SkdYOHZjR2RndjJBUTVEdkJaCkMwSjY0UTI1ZnhuN1JQdnJmbFZJR3l5bWlmRTJXTkcvRlhHR0hLKys1NFZDKzVMb3JTM3QxNXh1WlBjSjMzejBtTDhGSlhkNjZXekQKTUVNeGhKWjU2dENGTWNKWGhYcjNWOGErbG5qWnBxNmpiNklRVzNvUndXS2NHQmNNWnAvZzNXeEo0VkxjY3pqVEg5K3lKWkh0enZBcwppbzZZSzJPOUFBbzhlOEtDNlJNd2RNVkV2SWxmUXZTM0R2cUs1amJHMFFNbjhLVmh2L0x4bkpCaUFFZk02VVVFaTNGaVhURE1aSWdVCjJ5aGtwUlJmUW1OUGFGdCs0eFE4OGJmd2kyY2V0Q3N0bXovb2M1eU1HbS9jeFcxMFNwOWdFWTZWNE1vY2NERDlZRHBVREJ6UjczTXcKZG5NQWVOS1lnQmg3ZGdFUkxNYUplY0VtdzFtTTUwYkNGMHJ0eXBzZEFpNTlyY05ody9SK2JZNXJseUJhNUxXYkZ0WDRqa0VKQ21RSApDeWRZMWgySjZBVVFnNEdMUVBnbDRKZlBhSC9xOUxRV3ZIR0F6K0dsTFMyVDc3bHdGT1BFdG9QTDlJaUgwTlh2NHM2TSsxMUgrdGV1CjJ1c0l0dnBGSUhSWHZKTTdtYzNiQVdHL0N2SkRWVW53dVFhcXQ5MytZQ0puYjlLTHRVV2cxZnVYR1Q3bG9ML0l5cGJrVUQ5bnpZbmgKQ0VaU3hKam1URlBFYzFlcDltZWorNVhqbVByVnEvSGdCcHVxbnJRL0dKZTdzNjFmazlKTHcwYWRLbXh0S281aHZ3amRnNjdqbHo3Wgp2U0QvMmMvQkpvSU51QVlLMnU4UGx2dk42TllldzNTQUVlbVI3c0pUYzlvQk13TGg1L01Xb05USmNkTmJON1YvSTdiQS9ZY0ZsOXdiCm1aWHJ3NTBhYlZQRTNPMFBzQlZHanlIdW1pL3M5MURPcVFKWEMvbXhuQ0dTRkRHMk9jTVU4UzMzanMyRmtBRndDWUQxNFNHMmVJaFYKemZRRU1WRXcxbXdCc0xSZnhDVVVvN0NYelF0OGJuM3hpSDVTN2w4N3A2Qnp2eUFybHYwaWRBZGVlUGJwMzEwMTU0Wi9aMHg3L0NNZgp2QndBY0U4ZEZSK1RqaUd6Y3BROUViK0EwVVJvdHdsNjdwQWp2azA1RGowZW8wTmY1M2JGZWdCckU4RUlNVTNIRVN6OStTRXpQZ0ZZCkRPOC9RNVh0ZVByRnUzRDFzbXJydytOanpqRVV3QXI2TDJsTmxVd1Vuc0hZSm9KdEJORnhtcGdWVFl6N1JlZ094SG5MMzdpbWFpZnMKWloxV29KNytvVG9lSEdvZmVMbG1hdGFzOXRmK3VzaFFNTzVKM2ErQTNncnphUEgrOW0wdyszOXJSenJ0MUdqRGszUGJuNGt0U0FUcgpNblFjd1ViTjVtRUlvQ0JXWFpzSzN2MnBhV3dRa0dPZzBqNWg4VVB0ci80VlFRRnNmdGd2M2lnT3l1SE4wNWsyOHc2bDBVdmpxcU5QCmRFTCtqQmozcTgyQ1MwSk0wL0dDeXdrZnJGeVYyWERUcG9NRDBNOXNqM2pxbW1tY1NXNW1RcExaYkxsVXZYTHk1KzF2K0xVb1dBUGYKMlBCY2pRQVBISWRYSWplcmRxbmRkMmFIdjNUYzhaN2Y1cWc0SjliOUluUUhScUcvOTBLNVpSdFlyUkEwZTVoOFdaYXRicmZiNXd2QQpyWU9pZG1QNGxmRVYzTkxzUlhyaFNvWVVudFVic09HNEhOMEdDMm16NkxWUng5SGtqeGNzV1pGcGpFZ3ZCOUdMY0M2SXR6YlBld3p1CmpadnVjNExFQis4Rk1SOUtaZVNhRzcvcm55ZkhUR2ZIMUR0c3VEWU5YbjBNNEpRQ0tKUzFhNFBkWFNNUHBSOXRQWTZtR0MrbW5Hc0IKdlVoSExLNU5PUVdrRGRabDZMZ05CbE1MSHB2M2xMS1lndzBBdWVzZTdnbGU0S0FVUllZZ2dIWGg1ZmRPN3hNVGlzMHRMVDltdzM3aApEU3hWMU5wQ3IyMitCSCswWUpNK0Juam5IYjNvYjN0YU93em5kZ20zZEloZ1hZWk9CSHZoZGJDeWZ3ZjRHc2FET3NXak4yRzhuR01aClZzejBVYUVaZnZ0Z0xCajJ4SXJ2WlZ5WEJpaWdCUXZJemZpa2xmTkhkWElrcE8vRmsrYzN0cHlJWXNZamtWY2JXay9HT3FTVG84dlEKY1NjSHJPcDdqMm1BVXBmU3I5K0dBV3RYMi9VRWpHT2IzbHMwVGVYVWZTOU10a3o2MTY3Mjkvd0tqRS9kcktJY0Z2dkZobVNMYkdFawpBTHVialJMc3huK2loN0s4L3pyWnNOanZNRHdsUkxBdVF5ZUN3ZTI4SzNsdnJ4U0E2c056TEMzMW5RTHNvcEkvNXM3N0U5VWNmN0dqCjhsL3NqSFBmblRnbEw2cUEyL2o1S3U0L3hINzVWQkExTXc1aEZrcGd4aldZeldiY2ZmL1gyako4NFlha1NlME55eC9mSmYwaWduVWQKT2hOczJzdlpVSk5jbHdMOTVnYWR4cUo3d0VFc0VIeFBLN0lvcWhCZitYS1A2M3U3cnovWFhmYUh0NDFzalozanYwWUJqS05BTlh1QgpVbWxOc1lrOGgxcUx6SEV4MitYcTkrT2ZCeTdTL2RKaldIaDdvekJkMVM4aVdOZWhNOEdXVFJnSUxoekMvbHlYcUZlMXdJVThFUndqCi9ENlVObm02TEJ3YTdoTmQrUmRuVlozVE1GWjR0S251dC9zalIzbFlNQXZRSVFIOUd6Vk5aRXljUm9ObVloOFBzUUJiSnkxcXZmRUoKbUpzMTM2aG1nK3pLY2doZDFLOXdpUkZDVnlkcndlTmZtT0N2dXl3V1F5NHFyQmhyYzB4YkFROC9HZ3prbFlCc2tvSXZCenpuc0V2UgpRa1BkK3BhaktnblgzMVhONktVcWNpSm4xanR1VktERzRXNlpMMXV1Q3pOWDN4WDIyeXpveXVOZHBGeDJsNkd6Q0FZd05SL21LeWZRCmozUjREL0xJYjA3ZnJOc3ZNc0dsajc3Mm1odGN6eFVHMGFuNmo4K1pZbE9XZXlGSmppd0huZkdxRFNtdldYeGFVRjhHbGhDZ0hZS3MKOGhTSG85VFRiZTRNTXpkR2kwV2RNVVN3TGtQbmdpMTRWaEx3VmxwNHFwRmUxWjB5UXRpQk4zTitaNExDSDN0LzBBVGdEaXMyK3h4TgpBaTdjVUllcmswWU9FL1JkekRsQnBZSTR6bkpPTDJxSnFUYTNMbGhYYldTZEJpSllsNkZ6d2ZqYjN0R2ZCZXdZR0lhaE1PYWIrdUNLCnAyVDBvdzRsRWpJTTNKQzhMZ25nVmVlNU1HenkrbU9RTXI3RnI3blA2aytCK0tBcUFwaEZLMmlpT2ZlYngyajhuWFZUdndqZEJlOEYKK3U5S0FRUmNoUk92c3RLd1luQUI4NUMrdkxHazBJVFZpNCt2ei9qYVpKMzk3VnRSOS80dk1mUERZMGwzRmJUdTA3VnZwUDVrRTYybwpoY2d4dWwvdzNSUEZ5eGcyNWxlZG5EV2tGN0hMY0pyK3FHWEYzNkpIRnRra3l5eElFdTVLb0h5RG52OTRCUktyc0FUS3dNNWk5NnpXCnR5OGNyRjcwYlVjemFuODVLdnozcmQwYTJSeTU2SUpoNXNZNi9Db2c5ZkE0clJ5bGFDQ3p1WGs3RGxVekQ0MTdwUFcyN2dVUnJNdHcKR3NGZzdXL3d1SzBlcnZEMGROMHdLVEgvUmg2Rk5qeThWTGlYWStHNEZTbTIrUDNyVWxJditBVzc2L2xyaG96Ryt6TzM0ZlkxTU1RWQpBeXRLSDVlOWRQZkJDL1ZPOXdEUE5RRFNTOVpFQmRoK24wd1hxeWs5cmUyZWtEWllsNkh6TmhqaWhSY2xZOTlqQ1BkMitHSFc3WU1UCmRlVndEQU4yNHRJRDhmakE3WHJ0d3ZkL3VaV1lVN2ovVU54RVg5c2kydGN2UWVKZFdRS0ZtdU1EWExheFpUdGxsZ0VGS0ZvQVJlQUEKWmd3b1B2MTNSaURFQVBmTWJ2MTFhVFRFWnQyK1RqOHFSRzB3OUNoTHZnSDZjWHp0TmQ5YzEzTHR6MlhLMHJlOW5tTnZyNStpNzBJZQpvU2Q2ZlcwSlAvUG9pdksyWlJ1OXFvdzdPQjE2OGlSQ0h3Q21UVkdPN2dWSkVic01wMHNSQVZZVjc1SnhJd3pEZ2lCZjhkaTZ1M2ljCnBCZ1RrRElPNUh3akpjbjRBcXZ3ellWWEwydTk4MmRSWUF3bCs4Y1BLT2czYUdoR2h2SFZLaHJSVnh4WnNhVU85SlpYYXdVNms0K1QKRlVwbFF5aUdPWE8reUZoUEJDUEVBcWNYRE5iZXUwdjNCM0JQUjJMZXdnMTNXU090Z01JeXBObklYWXJWS2grM0N2SHBjYzJSTFJoKwpOcTd3ZE40dHV6ZnQzSmYxYVZaMlA2Ulk0WDR4NlJxcW9rbHZtUVdrTUxwbGtsVUJWUlkxaGFJNDk0TnpTUVFqeEFSbklCZzJ6T2ptCkFQZlVDNHM5MC9CS1JwWEZpcFZCNFFIUDRCVW1PWkRnc0QrUzhHbmRMN1orWmE1djlHRzg3c1JncDdpdGF0QmVnTHp2cjkxMjRaSUcKdlFDSC9pYlBXVGhSRjh6a3M5bEVpdExNalBtZVN6K3JKb0lSWW9JekVRd2JocHBmYm12UEt4Kzg3SnNaK2twaEd0UjVPSWtyODErNAozR29SRk5ZYS9KdnJzb2FhZG5lZU5SdDJwdytxMTFmeGgvRmR1Um40UVFNK0xEcmNvQWN2NEMwV2ptUFFkMkRCZFc2UVlhckcwSGF3Cmg0SmIvOC8rUS9oODFOM2RETktMMkdVNHc3NjJ4Lysva0pnWG1Eb2tsQWVKTFNkeFZHT2J6Q291ank1WStGZnErdllKM0xLbDlhYWYKQ2U0eGpDSko5azdwOCtLVU5iaHZJMUloUUFaV1prSDEySGpVSm5ONmJBRWVSQTFzRDY1VlNra0VJOFFDWnhUQlVBeExkQ1k4ZjNuOApwRmU0SHEwbmFSWFlhV2xWNXV1cUJBR09yMHIrTnFtY0twcjVYdnVocTdObFdHUTQyV0RLVnJpODRZSzFldCtoeEhNVVE3RTBLOGkyCkVFMloyQVpmUEFjMjJrSnhJcTFsTGV1dEhTYUNFV0tCTXhRTXJsNTQ0ZUU3WHdrbTRvRm1PR3h2MHNlZmFGb1orWlp5SFF5cGtCVmgKSm1TeFgvYy9TRTNmK3d2bGlVUEc0MWtrRVZJRzd1Wkh2SDN4Z1hBQlJBcDloQVJSMDBSTlJoa3Ewb3ZTRkVhamZhQUpQM29xRDNmdgpGSkhRL1hoaHgxZUtVYnF6d1pwYWM5aWw0bFNSdXVJZHNLak9Rb0JQSmw0alEyM2ZhaGZVWGxyKzJDK1RKODUrTHVyZ1J1R0xDV0JaCnFxZWx4dThGRlVJVXFMU201N2tPd1NLd3JBQlNFRFRPdnZDRzd0M0pRZWgrck5vMTcxQVRqbDhOTnh5WlBXbmxjVE5yZ3NBbEg0RUYKUkhYSDRZenlCNDc0N0VPOERsT055ODNlL052bHYwU2UyUGNxS0x6OGtxRVYrdWZhZWVLS2o4b21JSE1EZWljTGhTZjJhNnFHc2lXYQowaWhWVkNRMUpNbUt4aW9jVERldFB1UFdKWUVRSTl5ekl3OHYrNEtMUG9MQkxvQ21XaW0xMUdJUkJBdUVtdDhlTDdoY1VLUDJEcVZvCjlkcG03dnZzOW5lZkJhWVhVMnZmWEVpRloyd0Ura0RSUWdpd09EMUVyUkRjREVGeW93OFZLQlhKcHFtVW9nbm9HZXo3OFdnM2lXQ0UKcnNiZGF4cFlMN2RsTk5jNFlYT3RGUUxOV29LVkJaeWErVjgvR0dkSzRmbGFxcmZQNTArR3Nydms4cDhieElxY0EyeGYvbTV3UlhqUApCbTdFMXZRRHVQV2xNZWpEeTFFYVRVbUtvaW1zaG10d0FJWERtQmtua0ZKMWFqWE1KNElSdWhyTEh2NitTYUZoL1FRWW5MWDFSeXZJCnBvRE5aQTFSUW8vYmVwdTRhdGVKQUpOY1EvMUdwZXJoNk1oWjlNOVJiSEx1V0kvMDhWWW1yYVJQUkxEOXdmenZiSm9VQ2dSQlVXMWUKRGloUmo2aXlvc2dtbkNiU3NyRXhzOGlrL3Fib1VTSVlvY3V4NnVvZlFCWjg2NjVLVEx3RXh6QlpRUzB4czkweU00K2lhaElsbVlGQQppczhMdEMvRmNaek9Tei83Y2VmWnIyL2JNMEs5ZUhpLzBqOThGeDV1RnFjTVc2cWlIQkJra0JsTlE0WXhnZ0ljbmxGQ2FlZ3JhNktzCkdUcytzTlliUDFsRlVrUkNGK1R1QTNqcmg5ck5XWTJEczliZ0N1bUNqNVdjNy9NMWcwUm43eWFUcERLQlpONnY4bFJkQ2h4Sys4dm0Kc3pQcytzeUZTS2phQXlQZkdERlcraXB5ZHFocmQwZ1FGVmJoV0FqUmlwMVRmSnlpc0l4ZXFGMUJ5U0tLY3ZxRnVlN21jdElHSTNSRgoxajZjdGxjR2ErMjZzYlhjTlZ2ME9jQkN5SHhkVHlHQTFHSmxrMUEzNkVRZzJhL1dKZGZITzFYMzJYVW5UbG03RVQvNS9HVnhtemZ0CmlKeTljVW5tdGlhRlUxZ3NEZ3BZTXVOSHI5RUJpdzNqWkJUTXdrcFZGYi83WDFWRU1FSVhSRnoyOVFPN1EyQTkvazJCS0U0Yys3a2IKOTVuN21XRzJYaDQ1SmNCUXJFMlFVUkR6Mit2QjZ4UlZRUjZkWnJURWVFNUVmOXA5dGxOU05HRkpRL2lsaUt1QUdOaW1MaE56TjhwYwoxTFpmUGl5VXFCdUdJaG5YOG9iZGxMZHpsNWtpQTgyRUxnbi9VczJDRUs3VkJrODlDUGZRZUJGbWo0ZTNEWjFZVloxTW13Q2sydVErCkowQlM2MVBRNjlTak5wZHd5NWJXSlpOZXZBeTVVNjQvMG5hdmNuUURUM2x1N0ZtWkF1OUdULzVGYmtYSzViY25CQmJlUjJaeUVMb3MKQzk1dUZBUkxuQkV6Z2syV0s5NkY3TXloZzB4MTJLMmVOZlhKdEF0cTZsT1FiaTc2QUxodXhaZVZBV1NnQi93WHIwWG0yeTVJYm1ISwpHbU1sWlFzNUJ5WDFyb09KNzN1UVVmbzhMUU43YTNBN0NiMWlHeEdNMElWNXk3MWpTSitha3VNNDZVdTlVUytIbVAyNlhHK3FjN2xRCitLb0ZaSnFrVXFZQURQSWx1UjByTG4rMUlYUHdnVXFBaHNySVN1aFRTemJ6WmVPWnQwd3NyNmpqWlpQNXBYZnpTNkgvKzM0UXcxMFkKcDhIdUQrZUtSREJDbCtlRlZ6emNyWkU2Ti95U3d6bElNWlFvOXF5aDZ2REVEbXdZREVaNUlkU2ZzR3lBTVYrQkV5cTNwMVdtUVdWYQpaUm5TQytkLytOYXdiWC9zK2YvMHorVGNQNnZVV3lSQkVycit5WHhHV1RWdUl5NjB3YlVKVzhaQit6elIzdWdNcjc0bWdoRzZBUXVpCmkvbG16enRjVUl2YVFDaDhvU0JHQTJxSW1SS3NRYkJhaFByOXFSdGdBTUQyQkJqUXF4eitBNUJtM1BQQkh5dkRVNE9mdldoNE9nNXAKL01FdDA5RnprYUE1SER1dmVMUWd2emppVW1kNW9VRXVYUEZTczdFY2tRaEc2SDVrenh1NjN3YVNScXYxeWFncGhnMXowYWo1NUt5dwo3MDhGN2VoaExKa2JQc3M1bUxrZEJUSUlEVzBFdXYvZzFUMmFlbFEvRFVtMmtVc2ZTQlRHVFFINDlrcEJFeUIzODMyYjg3N1VPKzNQCmlCa2Z6VmsyN2huak5lbW1KM1EvYWhaTDQ1T1lrTWo5bUVLVjExSjhqdzJqYXYwT0pVUlRQbWRjaUQvZUJNTzlrQkNYc21icEYvZWsKOUt1RlZhdTNiYU9ETzhTQ2dldXZYNmJkVnovaW8rWHJ0MzBJTUx2Z09RbWxlbFU1aTV0N2YzQTZVK3crRnZmVzI2ZVhqL2U5WGYyNwpjSFZoRXNFSTNaTHN6TnZrZXJ4bFYyQ3d0emxrd3ZsYStuSEJIOWRuZjNVR3JFQUJES3p3bzM3bDdKc3VYOC8zQU9kMlBVbU03c0MvCmZiRW5zbWozcExTd2Zhc0xjcmZUbzNhTXVtRC9qbG1iZzVzQWJ2bW5jWm9JUnVpbVpHZitSZVVQSU1WUSs2dmVnUXRvZ093b0d4dmsKbW4vWU9Samd3TXBwTHNPd3ovRERsN1kvYVNzS3VWR2I0MExlbnBXVVNmM2k5Mmt2K3p0WkZJOE1ROVpGaVRjaEg3bnBrRDgzQnRCNgo0ZjFlZ0FoRzZNYndHWG9ZczBFZkNLb3JZV3dBNUliK0d1LzBlS3VlTnE0WU5ncEFueWFQQzczaGJTaDV2SDJtSjJkcCtzRkpCNDlaCjlQbUZIWUgxR3JYdDRuRFRMSGNNeWdrZDRBUERyL3d0K2hSN21naEc2TmJ3R2EvVkRoS1Bvb2dWcks4YkxrSGpmVmVPN0pkOFlQRDYKYVRlMlhMT3llTWRLY1ZTcHkyM2pHa1BqMFlrZDdpU2Zab1pRcDM0aGNzVkN1Q2RlajJGMkdHNEZZOWRsblVVM2gydWFFY0VJM1p2cwphWk1DY0NqVjZuVWM2Z1hnZlJOZ3o2enhKcWowWFZVRWdOY2MreW5udGYwRWNQUTVJamcrL1lQcWM4ZzdlcHVob1hxbjFMN2QxUTRjCnRCemJMOFFoek81K1lVNTRWM09EK2ZlRlg1QmVSRUwzcG1hang1dnNzQW1NMlFSSW1YOGxRZEs4VVhzUzRoUGZTMGQrL2FFY0pJWXAKMzNLeGcvWTlhSzBNMWV5cC9PSGdsMXMzYi81KzlQQnQraHplRHJIbk9kK3RQdlRJMHBBdCs0QXo4MjA0SFBYZW9ydGtqbUh3V0RPSgpZSVJ1RDMvVjMrTGNEbEdLZC9QbWhTdUh3ZUxuaGg4WWFkUCtyNzVEaE4vZWFLVlI2MG4wNW96b0IrWW1BUFlKZkg2S3BYckVBdnFPCkJhQ1BMZXY3YWhxSWVEbyszc2Z5eWRXbE9kYlMvT2sxOEtsalZjdmJtUHpOZWdzTVF3UWpuQWZ3UzF3QURsLzhqNS9BU29CaHkxNFAKOUxUWXkrOXZ4Ty9oanNBUWNNNFEwQXBjcDRIamhNd3FsdVZlZ0VMR0JFNUxaV0pKWVltSEdibWRWb042MzN5SXd5VzduVjdiU1BIMwp4Z1F0NUZuVUY0UDhuWGc5cUFFUmpIQSt3RThkT3RITlh3dFhyc1JIdzJEWmE4RlVhS2lOdEpUc2ZoU2pRaHpEc29xWEI5dEF1Q0R4CnFFbjZBaTlyZVdJTmxpZS9ORDlQQ0w2RHhRbHhOSURLbU9tQUVLODlOQWZmbmgvZHZ3SFBsR3h0UFNDQ0VjNFBzcSsxVFR3UUVRb3AKdHZJOWtXdUEydmxpSXc1TCtneERPNENibzJ4dXNQRUFBMkhuSHpteFp5K1ExMDJIZDBvaHYyRE9rK1hMbTRDeXF5RUFpMHJqUVRMNwpuMTQzUGw5ckQ4Y3o2a1BSbXlJUXdRam5DZnhWTi9SeHp0MFRQaG9HTUhMNDBhR0hnN3ZoVGZEbndnNS9lTXpZamlPWlNkOVRnc2RMCk03RnFNQUp2bzFtNGE2Y3BBS3dKR0dCbGhXbkU2OEljbCtobUZlU0h6SG9zZy9uM3QrekdwME42RVFubkNXTDF2dG9SRjYwWWxuUU0KSHlVQjFPMkszOEFLWG5tazJUTm1PVDNxaDdFTlpnbEFBc2JPQnJpQXBnWmxOV2hxVU1XNndKSHZENGVhcVAxdXR3WWlqd0tYS0NpcwpSdUZwSG1wL3ZmTndrUHJhaVRzS1Z1ZmZ0S3NrYWprbWhnaEdPRjhRYStoUFQ5eVptOXlFRkJzMnFtNVV5cldxZlVCRDlSdVgxVTkyCkNoVXpidkYvbjltUVhZVXVsQ1NRN0NIZ1RUUkxtZndtRUZsR3JtZUNrbDltZ0dPOElpZURxcGdWZ1FISTFLdE5GZVMva0xYK3k2OGMKUHk2WDJ2dEVCQ09jUDlRMDczcHpUMEV1UDlZRExwZjJtVXMyQlFiM0dPQWU1dW1SSmxWc0MvYkpIL3ZhYmJZR2ZkTktITXNreVN4cQpPT09qcFdiQkw0b3l4WUN6MFNaQlVKRVptWklZQ00zU004UkJQYlZTNExSUWlHbno1VEJFTU1KNWhDaEM2dnBMSGNsSkIxelZHMkgzCkxuZi9abUVrKzRoWmRidVdaZmcyckdWdVRtU0cyL3JoTUlZSW1XaS9pZWNVazZES0hJdEEvckNDeVJaaWtUWWlLL1BLM3g3RzErVXcKLzNGVnRwOWRINFowY2hET04vaU10QnYyUFEzRjFYaUdiOSt4US9pVkh0L2YvVDBzZHorRVhISEFHT0ZsRnVwdFkxSWRydjVIbGxlQQpHQXhxTFlVNHhIZ1BPTjE2djJNUGNjNlFHL1NUQmVPZWF1eW9WQWNSakhEK3dYdWZ2ZWlxK09KcVBJbis2NUczcHNwN1AwZHRLYlhICmJmb01ETWVxWitUdmNMZmhBOS9Dd0tXQkpxVE9qUDBYN01jM2xrSnl5TVBqV2NEMkIyazlPOFJUT0FyNmwzOHRkQ0FZeVJBSjV4OWUKdUQrN2VNQ2REQWRUMGRIMG5NZXZITEhLVERIYUs0TmhSRHFBVDU1YkpNbEZRYjRVTGcxZ2MzTC9jeS8wRlk0bDhhWUo5K2F2eGZzVwppVFpoNDZYSElHa0lNaXhIV1VKMXVBMFlpV0NFODVXUFYrL3IvenBIY3g1SVdiM1JzaUh1SHlydlV6VjcwUFJuYmhFWEJITW9GSGYzCnVrc1h1T1AvKzVVeERseHQxT0hiOVBqRG9nMEN1TExVelVzbjc0Y0wzaWpldXFwZ1RERkhSUTh1UjBNNk9Ram5LeDlzemI2dTV5SEoKY1d2SkFHM0VvVDcyNUwyQ3hsTWVPYlN0ekVNRHhTaFR4OXIrWWI1MmcyVzhhbDFkalRoVURRVnJXRTFqV2NySDJIc3RyYXI2THJmcQpDZ1lHYlZQanZDZDNJT29Rd1Fqbkwzcy8yR1ppRmRmMjBmRCtRNkp0b1NTempBZWZGNEZSZmZ6MUE4M1NXdGVKUjBzR0g5L3d6R3JqCmpsVXlHMkpSTXNtS25rUDR1S3BndmVXeXFqMm1VT3NuYlFzUmpIQmVJNHJpM3EzTHJhTUgxWlEyY3d4TjJVMTJNMk15QVpqRTd6LzcKOHB1YkxuNGpTL2pFUDNYaGZmcUk4dnhWbEdLaEtLQXBPWndUMm5iMUh2Z1BnV0gwd2JOVFFOcGdCQUt1a0pNR05RdUFjbnBWNkNGNgpuZmljSHN3ZzU2QytacGw2Z2w2MmFkRk1EMGRUdUQybVVxcFJvOTR1OEZKamdqSDE5MVFRd1FnRVRIWmFPc0FBOS8zMkFBTnFFQTlyCmhUamFKRUF1MWd0QmhXNkRKYUlLbEUwR0drSmFXREN3K3luR3JGSEJVd3NtRXNFSUJJUHNUTmllbHBrQU5iYjdqYXFIZGhpMUVTS0wKbVVVSzhFSXdqUStCNW8wUHFrSmthSm1oV0ZxanhGTlV5QkdCNGtnYmpFQXdxTmxLdzZCU2FuVHZid3ZLZzJEUHJ2SlpEK2t6ZjNVVQppZ05LQTE1Z1ZLOFR4U3VGa2hWV1ZCVFZqUHdDU2hiYW15UXFsSVZzd0VjZ1JNRm5vSWRNZ0RSY3lEN0JUYlVzME5TakVRQ05mWEdEClZjOEhWUkZ2eDB6SHlhQjRlUlRWb290UTRiSWRlc0FqRVl4QWFFR3NxVW1GMnRyZVRZTHdkWEJRcG56WjhyQWZXQmdjcWVKVTVKVlQKUXFacFFPTkNWUlN0MHFDSm9vVmhvem9TOGVWV0NqU2FJb0lSQ05FZ3c3QmkwRHVZY0xTNTk1anRUYm9oQ2dXVUdkc0VtaWFhRmRyQwpXaVdOQnNwa040T3FlbEVvODRPdHhURGRMeFMrYU5aTVVrUUNvUjI4bC9kbVErYm9KdEI2LzBqTng3V25SQXB3WWtoYlFQVkFYSWlYClZWVjIrRFE5ckZHYXNXR0UyUlpPRWcyL2tIOHNUUWFhQ1lUMmlPaWpwbG5LREFMbEE4Z3RRSGtpaW1BY2NpeE9WVDAyeVNtcGdBdHoKQklNeXJTZ2FiZmhsTTd1ZE9JYmgvc1NJWDBqSnRwK2FRQ0RvZUxja29pUVBLSXJTRmlUZ1RhQ1JNalNva2cxQUFGYlRWUEFJNkgzUQpGSW0zNGJjRHRzU1dtN2x3L0FJdmlXQUV3cW41SUNXRjBsRFllbnJNbUt0MitnQTF3VUQxbWdBa3UwWDJpcHdVcENoUUZETnFsUVgxCjVwZXFTT2dadTBpeHFNbkdJZ3U5TnRJR0l4QTZZT2EvaTFzUDdxZFJVTUpscHdCTUt1MnhtZlFOd0RoQXB4MnlXNDloZkNCbzl4c2QKOVBpa2l0cG1LU1NDRVFnZDBJLzlzR1RueGpIengxUTdvVHA3S3dwS29FL3hwVm1WQWFzZjZZWHNRYkZLcFRrZnJvMGpPalRhckxLcwp6T0xhMnJRS29vM001Q0FRT3FKczB2ZEJLYmdkTms2RStSTzlXZnRWYU5hcml2bzRKRnFJWmxrODhneTBBeDF4dW5tY3dMcVprTm1rCjBaUkR4Z3VuVFJra1JTUVFPbVRhZXhwdVZMbWdlQTdjQVcrQmtRb0NDM0xBbU0yaDRYaUdaMng0alhmNE9pZEtESjJxN0JCb2RJNGYKU0FRakVEcWswUFYzbFBsWmNDS0lSY3JxKzc1K09nQzJRQytmaXJlSXhkc3lxMWcwdkJrWUdPVzJnZmVhUWc1WlFkSUZpR0FFUXNmdwpONnZQNHptRlNLRTdkZzA5TGljc0NyOFI2SVZTUlhBSXdPTEdGZ3BrNFJDRzM4bzVDSkJlVWRlcldTUHJ3UWlFenJtK3ArL29UaEF1CjdSdDM3RU4wdEJhTVllVkFISDVralhYTk9GdHNFVXozQzBNcnpScVpLa1Vnbkk0aUdUVFRZdVAxN0lXOG9SaGVEWWIxQ2krMFBOa3YKUlBvbW5naEdJSndwdkplZllQL2NDR0VzTG84WVdjYU1Ub1VGQytTTUtBbWYxQ0hkOUFUQ21TS0NXRGFFRHVnVHA5U1dXWVpla1RIaApNam1ZOW42Uk5oaUI4Tk9ZL0VXNHd6Q2c5eGkyeEM1OHh1Wm9lUjJHQ0VZZy9EU21yQlk5aGxRQmFLTVhwSnhjMzVla2lBVENUMlB2CjVDdDNNUHJjS0ZOTGFvaUNGNU1wbnFLeUZJbGdCTUpQcGlqdGVSTm9YajE4b1REbUJQQWszY2FIbGtOckQySVlJaGlCOE5PWld6R3MKb3NRWDRDazhTeXJuWU9GQWVSMER2cXVYbm1RWUVZeEFPQ3ZteWhsSGNBTkxCdk9xb0FOOG15QUhUamFNQ0VZZ25DVnpMU3YwWGtNZgpiQXFmS1JqekV0MjJvK04vQUNWZGNTMmhVaEtKQUFBQUFFbEZUa1N1UW1DQw"
}];
w.__toStr = {}.toString;
null == ArrayBuffer.prototype.slice && (ArrayBuffer.prototype.slice = lr.sliceImpl);
var Zr = new Uint32Array(256);
D.__alpha16 = Zr;
for (var jj = 0; 256 > jj;) {
var pk = jj++;
D.__alpha16[pk] = Math.ceil(257.00392156862745 * pk)
}
Zr = new Uint8Array(511);
D.__clamp = Zr;
for (jj = 0; 255 > jj;) pk = jj++, D.__clamp[pk] = pk;
for (jj = 255; 511 > jj;) pk = jj++, D.__clamp[pk] = 255;
bh.available = !1;
bh.enabled = !1;
Qa.level = 0;
"undefined" == typeof console && (console = {});
null == console.log && (console.log = function () {
});
B.hitTestCanvas = Zg.get_supported() ?
window.document.createElement("canvas") : null;
B.hitTestContext = Zg.get_supported() ? B.hitTestCanvas.getContext("2d") : null;
Ce.maxTouchPoints = 2;
Ce.supportedGestures = null;
Ce.supportsGestureEvents = !1;
Ce.inputMode = 2;
Aa.reloadListeners = [];
Eb.__meta__ = {statics: {toNullVector: {SuppressWarnings: ["checkstyle:Dynamic"]}}};
Ga.__meta__ = {
fields: {
__cairo: {SuppressWarnings: ["checkstyle:Dynamic"]},
addEventListener: {SuppressWarnings: ["checkstyle:Dynamic"]},
removeEventListener: {SuppressWarnings: ["checkstyle:Dynamic"]}
}
};
Ga.__broadcastEvents = new xa;
Ga.__instanceCount = 0;
Ga.__tempStack = new yd(function () {
return Eb.toObjectVector(null)
}, function (a) {
a.set_length(0)
});
ua.logicalWidth = 0;
ua.logicalHeight = 0;
ua.windowWidth = 0;
ua.windowHeight = 0;
ua.leftInset = 0;
ua.topInset = 0;
ua.rightInset = 0;
ua.bottomInset = 0;
S.Element = 0;
S.PCData = 1;
S.CData = 2;
S.Comment = 3;
S.DocType = 4;
S.ProcessingInstruction = 5;
S.Document = 6;
M.pool = [];
M.pooli = 0;
Xb.VERTEX = 0;
Xb.FACE = 1;
N.b2_nullFeature = 255;
N.s_incidentEdge = N.makeClipPointVector();
N.s_clipPoints1 = N.makeClipPointVector();
N.s_clipPoints2 = N.makeClipPointVector();
N.s_edgeAO = [];
N.s_edgeBO = [];
N.s_localTangent = new M;
N.s_localNormal = new M;
N.s_planePoint = new M;
N.s_normal = new M;
N.s_tangent = new M;
N.s_tangent2 = new M;
N.s_v11 = new M;
N.s_v12 = new M;
N.b2CollidePolyTempVec = new M;
Te.s_simplex = new ma;
Te.s_saveA = [];
Te.s_saveB = [];
qj.currentID = 0;
nh.e_circles = 1;
nh.e_faceA = 2;
nh.e_faceB = 4;
mf.e_points = 1;
mf.e_faceA = 2;
mf.e_faceB = 4;
Ob.b2_toiCalls = 0;
Ob.b2_toiIters = 0;
Ob.b2_toiMaxIters = 0;
Ob.b2_toiRootIters = 0;
Ob.b2_toiMaxRootIters = 0;
Ob.s_cache = function (a) {
a =
new wk;
a.useCache = !0;
return a
}(this);
Ob.s_distanceInput = new ye;
Ob.s_xfA = new af;
Ob.s_xfB = new af;
Ob.s_fcn = new mf;
Ob.s_distanceOutput = new ze;
$b.initialized = !1;
$b.distanceInput = new ye;
$b.proxyA = new Pg;
$b.proxyB = new Pg;
$b.simplexCache = new wk;
$b.distanceOutput = new ze;
$b.e_unknownShape = -1;
$b.e_circleShape = 0;
$b.e_polygonShape = 1;
$b.e_edgeShape = 2;
$b.e_shapeTypeCount = 3;
$b.e_hitCollide = 1;
$b.e_missCollide = 0;
$b.e_startsInsideCollide = -1;
Jb.s_mat = new Ec;
Y.VERSION = "2.1alpha";
Y.USHRT_MAX = 65535;
Y.b2_pi = Math.PI;
Y.b2_maxManifoldPoints =
2;
Y.b2_aabbExtension = .1;
Y.b2_aabbMultiplier = 2;
Y.b2_linearSlop = .005;
Y.b2_polygonRadius = 2 * Y.b2_linearSlop;
Y.b2_angularSlop = .011111111111111112 * Y.b2_pi;
Y.b2_toiSlop = 8 * Y.b2_linearSlop;
Y.b2_maxTOIContactsPerIsland = 32;
Y.b2_maxTOIJointsPerIsland = 32;
Y.b2_velocityThreshold = 1;
Y.b2_maxLinearCorrection = .2;
Y.b2_maxAngularCorrection = .044444444444444446 * Y.b2_pi;
Y.b2_maxTranslation = 2;
Y.b2_maxTranslationSquared = Y.b2_maxTranslation * Y.b2_maxTranslation;
Y.b2_maxRotation = .5 * Y.b2_pi;
Y.b2_maxRotationSquared = Y.b2_maxRotation *
Y.b2_maxRotation;
Y.b2_contactBaumgarte = .2;
Y.b2_timeToSleep = .5;
Y.b2_linearSleepTolerance = .01;
Y.b2_angularSleepTolerance = .011111111111111112 * Y.b2_pi;
O.b2Vec2_zero = new M(0, 0);
O.b2Mat22_identity = Ec.fromVV(new M(1, 0), new M(0, 1));
O.b2Transform_identity = new af(O.b2Vec2_zero, O.b2Mat22_identity);
pa.s_xf1 = new af;
pa.e_islandFlag = 1;
pa.e_awakeFlag = 2;
pa.e_allowSleepFlag = 4;
pa.e_bulletFlag = 8;
pa.e_fixedRotationFlag = 16;
pa.e_activeFlag = 32;
pa.e_ignoreGravityFlag = 128;
pa.e_alwaysActiveFlag = 256;
pa.e_pausedFlag = 512;
pa.b2_staticBody =
0;
pa.b2_kinematicBody = 1;
pa.b2_dynamicBody = 2;
tj.b2_defaultFilter = new tj;
Qg.KEY_LOCK = 0;
Qg.b2_defaultListener = new Qg;
yk.s_evalCP = new vf;
Le.e_shapeBit = 1;
Le.e_jointBit = 2;
Le.e_aabbBit = 4;
Le.e_pairBit = 8;
Le.e_centerOfMassBit = 16;
Le.e_controllerBit = 32;
Kf.tempAABB1 = new fa;
Kf.tempAABB2 = new fa;
Lh.s_impulse = new En;
ic.s_timestep2 = new vj;
ic.s_xf = new af;
ic.s_backupA = new oh;
ic.s_backupB = new oh;
ic.s_timestep = new vj;
ic.s_queue = [];
ic.s_jointColor = new xk(.5, .8, .8);
ic.m_warmStarting = !0;
ic.m_continuousPhysics = !1;
ic.e_newFixture =
1;
ic.e_locked = 2;
cb.e_sensorFlag = 1;
cb.e_continuousFlag = 2;
cb.e_islandFlag = 4;
cb.e_toiFlag = 8;
cb.e_touchingFlag = 16;
cb.e_enabledFlag = 32;
cb.e_filterFlag = 64;
cb.s_input = new Dn;
wj.circlePointA = new M;
wj.circlePointB = new M;
Me.staticFix = Y.b2_maxManifoldPoints;
Me.s_worldManifold = new rj;
Me.s_psm = new wj;
Ta.m_xf = new af;
Ta.q = new M;
Ta.p = new M;
Ta.e = new M;
Ta.temp1 = new M;
Ta.temp2 = new M;
Ta.m_centroidB = new M;
Ta.mat = new Ec;
F.m_xf = new af;
F.temp = new M;
F.m_centroidB = new M;
F.m_lowerLimit = new M;
F.m_upperLimit = new M;
F.m_polygonB =
new In;
F.edgeAxis = new Dk;
F.polygonAxis = new Dk;
F.perp = new M;
F.n = new M;
F.rf = new Jn;
F.mat = new Ec;
F.temp1 = new M;
F.temp2 = new M;
F.ie = [new sh, new sh];
F.clipPoints1 = [new sh, new sh];
F.clipPoints2 = [new sh, new sh];
F.edge0 = new M;
F.edge1 = new M;
F.edge2 = new M;
F.m_normal = new M;
F.m_normal0 = new M;
F.m_normal1 = new M;
F.m_normal2 = new M;
Yb.e_unknownJoint = 0;
Yb.e_revoluteJoint = 1;
Yb.e_prismaticJoint = 2;
Yb.e_distanceJoint = 3;
Yb.e_pulleyJoint = 4;
Yb.e_mouseJoint = 5;
Yb.e_gearJoint = 6;
Yb.e_lineJoint = 7;
Yb.e_weldJoint = 8;
Yb.e_frictionJoint =
9;
Yb.e_inactiveLimit = 0;
Yb.e_atLowerLimit = 1;
Yb.e_atUpperLimit = 2;
Yb.e_equalLimits = 3;
$c.CENTER = "center";
yg.b2_minPulleyLength = 2;
eg.tImpulse = new M;
Tg.FPS_ONLY = !1;
Tg.GRAPH_WIDTH = 70;
Tg.XPOS = 69;
Tg.GRAPH_HEIGHT = 50;
Tg.TEXT_HEIGHT = 50;
zg.bg = 51;
zg.fps = 16776960;
zg.ms = 65280;
zg.mem = 65535;
zg.memmax = 16711792;
zg.bgCSS = "#000033";
zg.msCSS = "#00ff00";
zg.fpsCSS = "#ffff00";
zg.memCSS = "#00ffff";
zg.memmaxCSS = "#ff0070";
Ag.androidAdmobAppID = "";
Ag.whirlID = "";
Ag.whirlID1 = "";
Ag.iosAdmobAppID = "";
Ag.ioswhirlID = "";
Ag.ioswhirlID1 = "";
Ag.cpmstarID = "";
Ag.newgroundsID = "";
Ag.newgroundsKey = "";
Ag.androidPublicKey = "";
aa.defines = function (a) {
a = new xa;
a.h.web = "1";
a.h.verbose = "1";
a.h.utf16 = "1";
a.h.usingPoki = "1";
a.h.use_tilemap = "1";
a.h.tweenxcore = "1.0.4";
a.h["true"] = "1";
a.h.tools = "7.9.1";
a.h["target.utf16"] = "true";
a.h["target.unicode"] = "true";
a.h["target.name"] = "js";
a.h.stencyl = "4.1.0";
a.h["source-header"] = "Generated by Haxe 4.2.1+bf9ff69";
a.h.polygonal_ds = "2.1.1";
a.h["polygonal-ds"] = "2.1.1";
a.h.openfl_html5 = "1";
a.h.openfl_enable_handle_error =
"1";
a.h["openfl-html5"] = "1";
a.h["openfl-enable-handle-error"] = "1";
a.h.openfl = "9.1.0";
a.h.no_traces = "1";
a.h.no_compilation = "1";
a.h["no-compilation"] = "1";
a.h.mbs = "0.2.1";
a.h.lime_webgl = "1";
a.h.lime_html5 = "1";
a.h.lime_howlerjs = "1";
a.h.lime_dom = "1";
a.h.lime_canvas = "1";
a.h["lime-webgl"] = "1";
a.h["lime-html5"] = "1";
a.h["lime-howlerjs"] = "1";
a.h["lime-dom"] = "1";
a.h["lime-canvas"] = "1";
a.h.lime = "7.9.1";
a.h.js_es5 = "1";
a.h.js_es = "5";
a.h["js-es5"] = "1";
a.h.js = "1";
a.h.html5 = "1";
a.h.hscript = "2.4.0";
a.h.howlerjs = "1";
a.h.haxe_ver = "4.201";
a.h.haxe4 = "1";
a.h.haxe3 = "1";
a.h.haxe = "4.2.1";
a.h.debug_console = "0.0.0";
a.h["debug-console"] = "0.0.0";
a.h.debug = "1";
a.h.dce = "std";
a.h.cloner = "1.0.0";
a.h.box2d = "0.0.0";
a.h.actuate_manual_update = "1";
a.h.actuate_manual_time = "1";
return a
}(this);
kd.TYPE_ADS = 1;
kd.TYPE_PURCHASES = 2;
kd.TYPE_GAMECENTER = 3;
kd.TYPE_KEYBOARD = 4;
h.__meta__ = {fields: {getLayer: {deprecated: ["Use getLayerById or getLayerByName"]}}};
h.DOODAD = "";
h.INTERNAL_SHIFT = "iSHIFT";
h.INTERNAL_CTRL = "iCTRL";
h.INTERNAL_COMMAND = "iCOMMAND";
h.NO_PHYSICS = !1;
h.DEBUG_DRAW = !1;
h.IMG_BASE = "";
h.SCALE = 1;
h.checkedWideScreen = !1;
h.isStandardIOS = !1;
h.isExtendedIOS = !1;
h.isIPhone6 = !1;
h.isIPhone6Plus = !1;
h.isIPhoneX = !1;
h.isIPhoneXMax = !1;
h.isIPhoneXR = !1;
h.isTabletIOS = !1;
h.landscape = !1;
h.limitCameraToScene = !0;
h.paused = !1;
h.started = !1;
h.inFocus = !0;
h.events = new kd;
h.ITERATIONS = 3;
h.physicsScale = 10;
h.preservePadding = !1;
h.paddingLeft = 0;
h.paddingRight = 0;
h.paddingTop = 0;
h.paddingBottom = 0;
h.STEP_SIZE = 10;
h.MS_PER_SEC = 1E3;
h.elapsedTime = 0;
h.timeScale = 1;
h.totalElapsedTime =
0;
h.debug = !1;
L.mouseX = 0;
L.mouseY = 0;
L.mouseWheelDelta = 0;
L.multipleGamepadsEnabled = !1;
L._enabled = !1;
L._key = [];
L._controlsToReset = [];
L._controlMap = new xa;
L._keyInput = new Rn(new eb, function (a) {
return a.keys
});
Ma.ANY = -1;
Ma.LEFT = 37;
Ma.UP = 38;
Ma.RIGHT = 39;
Ma.DOWN = 40;
Ma.ENTER = 13;
Ma.CONTROL = 17;
Ma.COMMAND = 15;
Ma.SPACE = 32;
Ma.SHIFT = 16;
Ma.BACKSPACE = 8;
Ma.CAPS_LOCK = 20;
Ma.DELETE = 46;
Ma.END = 35;
Ma.ESCAPE = 27;
Ma.HOME = 36;
Ma.INSERT = 45;
Ma.TAB = 9;
Ma.PAGE_DOWN = 34;
Ma.PAGE_UP = 33;
Ma.LEFT_SQUARE_BRACKET = 219;
Ma.RIGHT_SQUARE_BRACKET =
221;
Ma.A = 97;
Ma.B = 98;
Ma.C = 99;
Ma.D = 100;
Ma.E = 101;
Ma.F = 102;
Ma.G = 103;
Ma.H = 104;
Ma.I = 105;
Ma.J = 106;
Ma.K = 107;
Ma.L = 108;
Ma.M = 109;
Ma.N = 110;
Ma.O = 111;
Ma.P = 112;
Ma.Q = 113;
Ma.R = 114;
Ma.S = 115;
Ma.T = 116;
Ma.U = 117;
Ma.V = 118;
Ma.W = 119;
Ma.X = 120;
Ma.Y = 121;
Ma.Z = 122;
Ma.F1 = 112;
Ma.F2 = 113;
Ma.F3 = 114;
Ma.F4 = 115;
Ma.F5 = 116;
Ma.F6 = 117;
Ma.F7 = 118;
Ma.F8 = 119;
Ma.F9 = 120;
Ma.F10 = 121;
Ma.F11 = 122;
Ma.F12 = 123;
Ma.F13 = 124;
Ma.F14 = 125;
Ma.F15 = 126;
Ma.DIGIT_0 = 48;
Ma.DIGIT_1 = 49;
Ma.DIGIT_2 = 50;
Ma.DIGIT_3 = 51;
Ma.DIGIT_4 = 52;
Ma.DIGIT_5 = 53;
Ma.DIGIT_6 = 54;
Ma.DIGIT_7 = 55;
Ma.DIGIT_8 = 56;
Ma.DIGIT_9 = 57;
Ma.NUMPAD_0 = 96;
Ma.NUMPAD_1 = 97;
Ma.NUMPAD_2 = 98;
Ma.NUMPAD_3 = 99;
Ma.NUMPAD_4 = 100;
Ma.NUMPAD_5 = 101;
Ma.NUMPAD_6 = 102;
Ma.NUMPAD_7 = 103;
Ma.NUMPAD_8 = 104;
Ma.NUMPAD_9 = 105;
Ma.NUMPAD_ADD = 107;
Ma.NUMPAD_DECIMAL = 110;
Ma.NUMPAD_DIVIDE = 111;
Ma.NUMPAD_ENTER = 108;
Ma.NUMPAD_MULTIPLY = 106;
Ma.NUMPAD_SUBTRACT = 109;
Ma.keyboardNameMap = function (a) {
a = new xa;
a.h.NUMBER_0 = 48;
a.h.NUMBER_1 = 49;
a.h.NUMBER_2 = 50;
a.h.NUMBER_3 = 51;
a.h.NUMBER_4 = 52;
a.h.NUMBER_5 = 53;
a.h.NUMBER_6 = 54;
a.h.NUMBER_7 = 55;
a.h.NUMBER_8 = 56;
a.h.NUMBER_9 =
57;
a.h.A = 65;
a.h.B = 66;
a.h.C = 67;
a.h.D = 68;
a.h.E = 69;
a.h.F = 70;
a.h.G = 71;
a.h.H = 72;
a.h.I = 73;
a.h.J = 74;
a.h.K = 75;
a.h.L = 76;
a.h.M = 77;
a.h.N = 78;
a.h.O = 79;
a.h.P = 80;
a.h.Q = 81;
a.h.R = 82;
a.h.S = 83;
a.h.T = 84;
a.h.U = 85;
a.h.V = 86;
a.h.W = 87;
a.h.X = 88;
a.h.Y = 89;
a.h.Z = 90;
a.h.NUMPAD_0 = 96;
a.h.NUMPAD_1 = 97;
a.h.NUMPAD_2 = 98;
a.h.NUMPAD_3 = 99;
a.h.NUMPAD_4 = 100;
a.h.NUMPAD_5 = 101;
a.h.NUMPAD_6 = 102;
a.h.NUMPAD_7 = 103;
a.h.NUMPAD_8 = 104;
a.h.NUMPAD_9 = 105;
a.h.NUMPAD_MULTIPLY = 106;
a.h.NUMPAD_ADD = 107;
a.h.NUMPAD_ENTER = 108;
a.h.NUMPAD_SUBTRACT = 109;
a.h.NUMPAD_DECIMAL =
110;
a.h.NUMPAD_DIVIDE = 111;
a.h.F1 = 112;
a.h.F2 = 113;
a.h.F3 = 114;
a.h.F4 = 115;
a.h.F5 = 116;
a.h.F6 = 117;
a.h.F7 = 118;
a.h.F8 = 119;
a.h.F9 = 120;
a.h.F10 = 121;
a.h.F11 = 122;
a.h.F12 = 123;
a.h.F13 = 124;
a.h.F14 = 125;
a.h.F15 = 126;
a.h.BACKSPACE = 8;
a.h.TAB = 9;
a.h.ALTERNATE = 18;
a.h.ENTER = 13;
a.h.COMMAND = 15;
a.h.SHIFT = 16;
a.h.CONTROL = 17;
a.h.BREAK = 19;
a.h.CAPS_LOCK = 20;
a.h.NUMPAD = 21;
a.h.ESCAPE = 27;
a.h.SPACE = 32;
a.h.PAGE_UP = 33;
a.h.PAGE_DOWN = 34;
a.h.END = 35;
a.h.HOME = 36;
a.h.LEFT = 37;
a.h.RIGHT = 39;
a.h.UP = 38;
a.h.DOWN = 40;
a.h.INSERT = 45;
a.h.DELETE = 46;
a.h.NUMLOCK =
144;
a.h.SEMICOLON = 186;
a.h.EQUAL = 187;
a.h.COMMA = 188;
a.h.MINUS = 189;
a.h.PERIOD = 190;
a.h.SLASH = 191;
a.h.BACKQUOTE = 192;
a.h.LEFTBRACKET = 219;
a.h.BACKSLASH = 220;
a.h.RIGHTBRACKET = 221;
a.h.QUOTE = 222;
return a
}(this);
na.__pool = new yd(function () {
return new na
}, function (a) {
a.setTo(0, 0)
});
ba.__pool = new yd(function () {
return new ba
}, function (a) {
a.setTo(0, 0, 0, 0)
});
f.FRONT = 0;
f.MIDDLE = 1;
f.BACK = 2;
f.CHANNELS = 32;
f.mpx = 0;
f.mpy = 0;
f.mrx = 0;
f.mry = 0;
f.dummyVec = new M;
f.imageApiAutoscale = !0;
f.dummyRect = new ba(0, 0, 1, 1);
f.dummyPoint =
new na(0, 0);
f.BASE_64_ENCODINGS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
f.BASE_64_PADDING = "=";
vh.fieldMaps = new xa;
Xc.AD_USER_OPEN = 100;
Xc.AD_USER_CLOSE = 101;
Xc.AD_LOADED = 102;
Xc.AD_FAILED = 103;
Xc.AD_CLICKED = 104;
Xc.FULL_AD_USER_OPEN = 105;
Xc.FULL_AD_USER_CLOSE = 106;
Xc.FULL_AD_LOADED = 107;
Xc.FULL_AD_FAILED = 108;
Xc.FULL_AD_CLICKED = 109;
Xc.PURCHASE_READY = 200;
Xc.PURCHASE_SUCCESS = 201;
Xc.PURCHASE_FAIL = 202;
Xc.PURCHASE_RESTORE = 203;
Xc.PURCHASE_CANCEL = 204;
Xc.PURCHASE_PRODUCTS_VERIFIED = 205;
Xc.PURCHASE_PRODUCT_VALIDATED =
206;
Xc.GAME_CENTER_READY = 300;
Xc.GAME_CENTER_SCORE = 301;
Xc.GAME_CENTER_ACHIEVEMENT = 302;
Xc.GAME_CENTER_ACHIEVEMENT_RESET = 303;
Xc.GAME_CENTER_READY_FAIL = 304;
Xc.GAME_CENTER_SCORE_FAIL = 305;
Xc.GAME_CENTER_ACHIEVEMENT_FAIL = 306;
Xc.GAME_CENTER_ACHIEVEMENT_RESET_FAIL = 307;
Xc.KEYBOARD_EVENT = 400;
Xc.KEYBOARD_DONE = 401;
Xc.KEYBOARD_SHOW = 402;
Xc.KEYBOARD_HIDE = 403;
vb.TOUCH_POINT = 1;
vb.GESTURE = 2;
vb.GESTURE_CAPTURE = 3;
vb.PAN_X = 1;
vb.PAN_Y = 2;
vb.PAN_XY = 3;
vb.READY = 0;
vb.BEGIN = 1;
vb.TWO_FINGER_MOVE = 2;
vb.MOVE = 4;
vb.R2D = 180 / Math.PI;
vb.SWIPE_SCROLL_TIME = 2;
vb.SWIPE_SAMPLE_TIME = .2;
vb.VELOCITY_RATIO = .25;
vb.touchEvents = "touchBegin touchEnd touchMove touchOver touchOut touchRollOver touchRollOut touchTap".split(" ");
vb.mouseEvents = "mouseDown mouseUp mouseMove mouseOver mouseOut rollOver rollOut click".split(" ");
vb.geTouchEvents = ["touchBegin", "touchEnd", "touchMove", "touchOut"];
vb.geMouseEvents = ["mouseDown", "mouseUp", "mouseMove", "mouseOut"];
vb.initialized = !1;
vb.moveToleSqr = 1;
vb.MAP = "mouseDown rox_touch_begin mouseUp rox_touch_end mouseMove rox_touch_move mouseOver rox_touch_over mouseOut rox_touch_out rollOver rox_touch_roll_over rollOut rox_touch_roll_in click rox_touch_tap touchBegin rox_touch_begin touchEnd rox_touch_end touchMove rox_touch_move touchOver rox_touch_over touchOut rox_touch_out touchRollOver rox_touch_roll_over touchRollOut rox_touch_roll_in touchTap rox_touch_tap".split(" ");
vb.typeMap = function (a) {
a = new xa;
for (var b = 0, c = vb.MAP.length >> 1; b < c;) {
var d = b++;
a.h[vb.MAP[d << 1]] = vb.MAP[(d << 1) + 1]
}
return a
}(this);
oa.ACTIVATE = "activate";
oa.ADDED = "added";
oa.ADDED_TO_STAGE = "addedToStage";
oa.CANCEL = "cancel";
oa.CHANGE = "change";
oa.CLEAR = "clear";
oa.CLOSE = "close";
oa.COMPLETE = "complete";
oa.CONNECT = "connect";
oa.CONTEXT3D_CREATE = "context3DCreate";
oa.COPY = "copy";
oa.CUT = "cut";
oa.DEACTIVATE = "deactivate";
oa.ENTER_FRAME = "enterFrame";
oa.EXIT_FRAME = "exitFrame";
oa.FRAME_CONSTRUCTED = "frameConstructed";
oa.FRAME_LABEL = "frameLabel";
oa.FULLSCREEN = "fullScreen";
oa.ID3 = "id3";
oa.INIT = "init";
oa.MOUSE_LEAVE = "mouseLeave";
oa.OPEN = "open";
oa.PASTE = "paste";
oa.REMOVED = "removed";
oa.REMOVED_FROM_STAGE = "removedFromStage";
oa.RENDER = "render";
oa.RESIZE = "resize";
oa.SCROLL = "scroll";
oa.SELECT = "select";
oa.SELECT_ALL = "selectAll";
oa.SOUND_COMPLETE = "soundComplete";
oa.TAB_CHILDREN_CHANGE = "tabChildrenChange";
oa.TAB_ENABLED_CHANGE = "tabEnabledChange";
oa.TAB_INDEX_CHANGE = "tabIndexChange";
oa.TEXTURE_READY = "textureReady";
oa.UNLOAD =
"unload";
ad.TOUCH_BEGIN = "rox_touch_begin";
ad.TOUCH_END = "rox_touch_end";
ad.TOUCH_MOVE = "rox_touch_move";
ad.TOUCH_OVER = "rox_touch_over";
ad.TOUCH_OUT = "rox_touch_out";
ad.TOUCH_ROLL_OVER = "rox_touch_roll_over";
ad.TOUCH_ROLL_OUT = "rox_touch_roll_in";
ad.TOUCH_TAP = "rox_touch_tap";
ad.GESTURE_TAP = "rox_gesture_tap";
ad.GESTURE_LONG_PRESS = "rox_gesture_long_press";
ad.GESTURE_PAN = "rox_gesture_pan";
ad.GESTURE_SWIPE = "rox_gesture_swipe";
ad.GESTURE_BEGIN = "rox_gesture_begin";
ad.GESTURE_PINCH = "rox_gesture_pinch";
ad.GESTURE_ROTATION =
"rox_gesture_rotation";
ad.GESTURE_END = "rox_gesture_end";
fl.stringBlendMap = function (a) {
a = new xa;
a.h.add = 0;
a.h.alpha = 1;
a.h.darken = 2;
a.h.difference = 3;
a.h.erase = 4;
a.h.hardlight = 5;
a.h.invert = 6;
a.h.lighten = 8;
a.h.multiply = 9;
a.h.normal = 10;
a.h.overlay = 11;
a.h.screen = 12;
a.h.subtract = 14;
return a
}(this);
ca.drawnStringCache = new xa;
ca.drawnStringCacheKeys = [];
ld.MAX_TEXTURE_CAP = 4096;
Ld._1X = new Ld(1);
Ld._1_5X = new Ld(1.5);
Ld._2X = new Ld(2);
Ld._3X = new Ld(3);
Ld._4X = new Ld(4);
yj.NO_SCALING = 0;
yj.FULLSCREEN = 1;
yj.STRETCH_TO_FIT =
2;
yj.SCALE_TO_FIT_LETTERBOX = 3;
yj.SCALE_TO_FIT_FILL = 4;
yj.SCALE_TO_FIT_FULLSCREEN = 5;
Cg._storedFonts = new xa;
Cg.ZERO_POINT = new na;
Vn.LEFT = 1;
Vn.RIGHT = 2;
Vn.CENTER = 3;
vd.CONTEXT_LOST = "glcontextlost";
vd.CONTEXT_RESTORED = "glcontextrestored";
vd.vertexShader = "\n#ifdef GL_ES\n\tprecision mediump float;\n#endif\n\nattribute vec4 aVertex;\n\nattribute vec2 aTexCoord;\nvarying vec2 vTexCoord;\n\nvoid main() {\n\tvTexCoord = aTexCoord;\n\tgl_Position = vec4(aVertex.x, aVertex.y, 0.0, 1.0);\n}";
sb.IN = "in";
sb.OUT = "out";
sb.THROUGH = "through";
Ue.SLIDE_UP = "up";
Ue.SLIDE_DOWN = "down";
Ue.SLIDE_LEFT = "left";
Ue.SLIDE_RIGHT = "right";
G.BOOLEAN = new xf("boolean", 1);
G.INTEGER = new xf("integer", 4);
G.FLOAT = new xf("float", 4);
G.STRING = new xf("string", 4);
G.LIST = new xf("list", 4);
G.DYNAMIC = new xf("dynamic", 8);
G.NULL = new xf("null", 0);
Rh.basicTypes = function (a) {
a = [];
a.push(G.BOOLEAN);
a.push(G.INTEGER);
a.push(G.FLOAT);
a.push(G.STRING);
a.push(G.LIST);
a.push(G.DYNAMIC);
a.push(G.NULL);
Bc.initializeType();
Sc.initializeType();
ed.initializeType();
a.push(Bc.MBS_HEADER);
a.push(Sc.MBS_TYPE_INFO);
a.push(ed.MBS_FIELD_INFO);
return a
}(this);
wb.GROUP_OFFSET = 1E6;
wb.manifold = new rj;
zb.INHERIT_ID = -1E3;
zb.REGION_ID = -2;
zb.PLAYER_ID = 0;
zb.TERRAIN_ID = 1;
zb.DOODAD_ID = 2;
zb.ACTOR_ID = 3;
Na.fixedCenter = 0;
Na.showWherePressed = 1;
Na.viewOffsetX = 0;
Na.viewOffsetY = 0;
Na.initialized = !1;
Nn.NORMAL_PHYSICS = 0;
Nn.SIMPLE_PHYSICS = 1;
Nn.MINIMAL_PHYSICS = 2;
ud.UNSET_ID = -1;
il.MAX_VERTICES = 200;
ac.muted = !1;
ac.masterVolume = 1;
Rg.UNSET_ID = -1;
xe.allAnimations = [];
Ac.recycledCollisions = [];
Ac.collisionResponses =
new eb;
Ud.freedCollisionPoints = [];
Nf.WHITE = -1;
Nf.TRANSPARENT = -2;
Ff.infoArray = [];
Ne.NO_AUTOTILE_DATA = 0;
Ne.CORNER_TL = 1;
Ne.CORNER_TR = 2;
Ne.CORNER_BR = 4;
Ne.CORNER_BL = 8;
Ne.SIDE_L = 16;
Ne.SIDE_T = 32;
Ne.SIDE_R = 64;
Ne.SIDE_B = 128;
Rc.dummyRect = new ba;
re.TILESET_CACHE_MULTIPLIER = 1E6;
re.cacheSource = new eb;
re.autotileFlagPointMap = function (a) {
a = new eb;
var b = Ne.CORNER_TL, c = new na(-1, -1);
a.h[b] = c;
b = Ne.CORNER_TR;
c = new na(1, -1);
a.h[b] = c;
b = Ne.CORNER_BL;
c = new na(-1, 1);
a.h[b] = c;
b = Ne.CORNER_BR;
c = new na(1, 1);
a.h[b] = c;
b = Ne.SIDE_T;
c = new na(0, -1);
a.h[b] = c;
b = Ne.SIDE_B;
c = new na(0, 1);
a.h[b] = c;
b = Ne.SIDE_L;
c = new na(-1, 0);
a.h[b] = c;
b = Ne.SIDE_R;
c = new na(1, 0);
a.h[b] = c;
return a
}(this);
wf.temp = new ba;
Tc.BLACK = -16777216;
Tc.WHITE = -1;
Tc.RED = -65536;
Tc.GREEN = -16711936;
Tc.BLUE = -16776961;
Tc.CYAN = -16711681;
Tc.MAGENTA = -65281;
Tc.YELLOW = -256;
bb.LUMA_R = .212671;
bb.LUMA_G = .71516;
bb.LUMA_B = .072169;
bb.LUMA_R2 = .3086;
bb.LUMA_G2 = .6094;
bb.LUMA_B2 = .082;
bb.INV3 = .3333333333333333;
Od.BLACK = 0;
Od.WHITE = 16777215;
Od.RED = 16711680;
Od.GREEN = 65280;
Od.BLUE = 255;
Od.CYAN =
65535;
Od.MAGENTA = 16711935;
Od.YELLOW = 16776960;
of.__meta__ = {fields: {clone: {SuppressWarnings: ["checkstyle:FieldDocComment"]}}};
Uh.__identity = new Uh;
Ja.__meta__ = {
fields: {
equals: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
to3DString: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
toMozString: {SuppressWarnings: ["checkstyle:FieldDocComment"]}
}
};
Ja.__identity = new Ja;
Ja.__pool = new yd(function () {
return new Ja
}, function (a) {
a.identity()
});
Ja.__matrix3 = new Uh;
Pc.__pool = new yd(function () {
return new Pc
},
function (a) {
a.__identity()
});
X.INTEGER_MAX = 1E8;
X.NUMBER_MAX_VALUE = 1.79769313486231E308;
X.blackColor = -16777216;
X.rate = 1;
X.camera = new na;
X.cloner = new Mn;
X._bitmap = new xa;
X._seed = 0;
X._volume = 1;
X._pan = 0;
X._soundTransform = new of;
X.DEG = 57.29577951308402;
X.RAD = .01745329251994278;
X.point = new na;
X.point2 = new na;
X.zero = new na;
X.rect = new ba;
X.matrix = new Ja;
X.sprite = new Ca;
X.collision = new Ac;
Wa.linear = new Il;
Wa.sineIn = new Vl;
Wa.sineOut = new Xl;
Wa.sineInOut = new Wl;
Wa.sineOutIn = new Yl;
Wa.quadIn = new Jl;
Wa.quadOut =
new Ll;
Wa.quadInOut = new Kl;
Wa.quadOutIn = new Ml;
Wa.cubicIn = new wl;
Wa.cubicOut = new yl;
Wa.cubicInOut = new xl;
Wa.cubicOutIn = new zl;
Wa.quartIn = new Nl;
Wa.quartOut = new Pl;
Wa.quartInOut = new Ol;
Wa.quartOutIn = new Ql;
Wa.quintIn = new Rl;
Wa.quintOut = new Tl;
Wa.quintInOut = new Sl;
Wa.quintOutIn = new Ul;
Wa.expoIn = new El;
Wa.expoOut = new Gl;
Wa.expoInOut = new Fl;
Wa.expoOutIn = new Hl;
Wa.circIn = new sl;
Wa.circOut = new ul;
Wa.circInOut = new tl;
Wa.circOutIn = new vl;
Wa.bounceIn = new ol;
Wa.bounceOut = new ql;
Wa.bounceInOut = new pl;
Wa.bounceOutIn =
new rl;
Wa.backIn = new kl;
Wa.backOut = new ml;
Wa.backInOut = new ll;
Wa.backOutIn = new nl;
Wa.elasticIn = new Al;
Wa.elasticOut = new Cl;
Wa.elasticInOut = new Bl;
Wa.elasticOutIn = new Dl;
Wa.warpOut = new am;
Wa.warpIn = new Zl;
Wa.warpInOut = new $l;
Wa.warpOutIn = new bm;
Vh.PI = 3.141592653589793;
Vh.PI_H = 1.5707963267948966;
Vh.LN_2 = .6931471805599453;
Vh.LN_2_10 = 6.931471805599453;
Vh.overshoot = 1.70158;
Vh.amplitude = 1;
Vh.period = 3E-4;
nb.activeObjects = [];
nb.finishedObjects = [];
Ge.USE_CACHE = !1;
Ge.USE_ENUM_INDEX = !1;
Ge.BASE64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789%:";
Oe.DEFAULT_RESOLVER = new dm;
Oe.BASE64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789%:";
Ah.CHARS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
Ah.BYTES = lb.ofString(Ah.CHARS);
ee.i64tmp = new db(0, 0);
ee.helper = new DataView(new ArrayBuffer(8));
mh.escapes = function (a) {
a = new xa;
a.h.lt = "<";
a.h.gt = ">";
a.h.amp = "&";
a.h.quot = '"';
a.h.apos = "'";
return a
}(this);
He.LEN_EXTRA_BITS_TBL = [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, -1, -1];
He.LEN_BASE_VAL_TBL = [3, 4, 5, 6,
7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258];
He.DIST_EXTRA_BITS_TBL = [0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13, -1, -1];
He.DIST_BASE_VAL_TBL = [1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577];
He.CODE_LENGTHS_POS = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15];
Ua.OPTION_REVOKE_URL = 1;
Ua.activeRequests = 0;
Ua.requestLimit = 17;
Ua.requestQueue = new E;
rb.dummyCharacter = "\u007f";
rb.windowID =
0;
Tf.DICTIONARY = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");
Tf.EXTENDED_DICTIONARY = function (a) {
a = [];
for (var b = 0, c = Tf.DICTIONARY; b < c.length;) {
var d = c[b];
++b;
for (var e = 0, f = Tf.DICTIONARY; e < f.length;) {
var h = f[e];
++e;
a.push(d + h)
}
}
return a
}(this);
ff.MUL_TABLE = [1, 171, 205, 293, 57, 373, 79, 137, 241, 27, 391, 357, 41, 19, 283, 265, 497, 469, 443, 421, 25, 191, 365, 349, 335, 161, 155, 149, 9, 278, 269, 261, 505, 245, 475, 231, 449, 437, 213, 415, 405, 395, 193, 377, 369, 361, 353, 345, 169, 331, 325, 319, 313, 307, 301, 37,
145, 285, 281, 69, 271, 267, 263, 259, 509, 501, 493, 243, 479, 118, 465, 459, 113, 446, 55, 435, 429, 423, 209, 413, 51, 403, 199, 393, 97, 3, 379, 375, 371, 367, 363, 359, 355, 351, 347, 43, 85, 337, 333, 165, 327, 323, 5, 317, 157, 311, 77, 305, 303, 75, 297, 294, 73, 289, 287, 71, 141, 279, 277, 275, 68, 135, 67, 133, 33, 262, 260, 129, 511, 507, 503, 499, 495, 491, 61, 121, 481, 477, 237, 235, 467, 232, 115, 457, 227, 451, 7, 445, 221, 439, 218, 433, 215, 427, 425, 211, 419, 417, 207, 411, 409, 203, 202, 401, 399, 396, 197, 49, 389, 387, 385, 383, 95, 189, 47, 187, 93, 185, 23, 183, 91, 181, 45, 179, 89, 177, 11, 175, 87,
173, 345, 343, 341, 339, 337, 21, 167, 83, 331, 329, 327, 163, 81, 323, 321, 319, 159, 79, 315, 313, 39, 155, 309, 307, 153, 305, 303, 151, 75, 299, 149, 37, 295, 147, 73, 291, 145, 289, 287, 143, 285, 71, 141, 281, 35, 279, 139, 69, 275, 137, 273, 17, 271, 135, 269, 267, 133, 265, 33, 263, 131, 261, 130, 259, 129, 257, 1];
ff.SHG_TABLE = [0, 9, 10, 11, 9, 12, 10, 11, 12, 9, 13, 13, 10, 9, 13, 13, 14, 14, 14, 14, 10, 13, 14, 14, 14, 13, 13, 13, 9, 14, 14, 14, 15, 14, 15, 14, 15, 15, 14, 15, 15, 15, 14, 15, 15, 15, 15, 15, 14, 15, 15, 15, 15, 15, 15, 12, 14, 15, 15, 13, 15, 15, 15, 15, 16, 16, 16, 15, 16, 14, 16, 16, 14, 16, 13, 16, 16, 16, 15,
16, 13, 16, 15, 16, 14, 9, 16, 16, 16, 16, 16, 16, 16, 16, 16, 13, 14, 16, 16, 15, 16, 16, 10, 16, 15, 16, 14, 16, 16, 14, 16, 16, 14, 16, 16, 14, 15, 16, 16, 16, 14, 15, 14, 15, 13, 16, 16, 15, 17, 17, 17, 17, 17, 17, 14, 15, 17, 17, 16, 16, 17, 16, 15, 17, 16, 17, 11, 17, 16, 17, 16, 17, 16, 17, 17, 16, 17, 17, 16, 17, 17, 16, 16, 17, 17, 17, 16, 14, 17, 17, 17, 17, 15, 16, 14, 16, 15, 16, 13, 16, 15, 16, 14, 16, 15, 16, 12, 16, 15, 16, 17, 17, 17, 17, 17, 13, 16, 15, 17, 17, 17, 16, 15, 17, 17, 17, 16, 15, 17, 17, 14, 16, 17, 17, 16, 17, 17, 16, 15, 17, 16, 14, 17, 16, 15, 17, 16, 17, 17, 16, 17, 15, 16, 17, 14, 17, 16, 15, 17, 16, 17, 13, 17, 16, 17, 17, 16,
17, 14, 17, 16, 17, 16, 17, 16, 17, 9];
Vf.minCodePoint = 0;
Vf.maxCodePoint = 1114111;
Vf.minHighSurrogate = 55296;
Vf.maxHighSurrogate = 56319;
Vf.minLowSurrogate = 56320;
Vf.maxLowSurrogate = 57343;
l.DEPTH_BUFFER_BIT = 256;
l.STENCIL_BUFFER_BIT = 1024;
l.COLOR_BUFFER_BIT = 16384;
l.POINTS = 0;
l.LINES = 1;
l.LINE_LOOP = 2;
l.LINE_STRIP = 3;
l.TRIANGLES = 4;
l.TRIANGLE_STRIP = 5;
l.TRIANGLE_FAN = 6;
l.ZERO = 0;
l.ONE = 1;
l.SRC_COLOR = 768;
l.ONE_MINUS_SRC_COLOR = 769;
l.SRC_ALPHA = 770;
l.ONE_MINUS_SRC_ALPHA = 771;
l.DST_ALPHA = 772;
l.ONE_MINUS_DST_ALPHA = 773;
l.DST_COLOR =
774;
l.ONE_MINUS_DST_COLOR = 775;
l.SRC_ALPHA_SATURATE = 776;
l.FUNC_ADD = 32774;
l.BLEND_EQUATION = 32777;
l.BLEND_EQUATION_RGB = 32777;
l.BLEND_EQUATION_ALPHA = 34877;
l.FUNC_SUBTRACT = 32778;
l.FUNC_REVERSE_SUBTRACT = 32779;
l.BLEND_DST_RGB = 32968;
l.BLEND_SRC_RGB = 32969;
l.BLEND_DST_ALPHA = 32970;
l.BLEND_SRC_ALPHA = 32971;
l.CONSTANT_COLOR = 32769;
l.ONE_MINUS_CONSTANT_COLOR = 32770;
l.CONSTANT_ALPHA = 32771;
l.ONE_MINUS_CONSTANT_ALPHA = 32772;
l.BLEND_COLOR = 32773;
l.ARRAY_BUFFER = 34962;
l.ELEMENT_ARRAY_BUFFER = 34963;
l.ARRAY_BUFFER_BINDING = 34964;
l.ELEMENT_ARRAY_BUFFER_BINDING = 34965;
l.STREAM_DRAW = 35040;
l.STATIC_DRAW = 35044;
l.DYNAMIC_DRAW = 35048;
l.BUFFER_SIZE = 34660;
l.BUFFER_USAGE = 34661;
l.CURRENT_VERTEX_ATTRIB = 34342;
l.FRONT = 1028;
l.BACK = 1029;
l.FRONT_AND_BACK = 1032;
l.CULL_FACE = 2884;
l.BLEND = 3042;
l.DITHER = 3024;
l.STENCIL_TEST = 2960;
l.DEPTH_TEST = 2929;
l.SCISSOR_TEST = 3089;
l.POLYGON_OFFSET_FILL = 32823;
l.SAMPLE_ALPHA_TO_COVERAGE = 32926;
l.SAMPLE_COVERAGE = 32928;
l.NO_ERROR = 0;
l.INVALID_ENUM = 1280;
l.INVALID_VALUE = 1281;
l.INVALID_OPERATION = 1282;
l.OUT_OF_MEMORY = 1285;
l.CW = 2304;
l.CCW = 2305;
l.LINE_WIDTH = 2849;
l.ALIASED_POINT_SIZE_RANGE = 33901;
l.ALIASED_LINE_WIDTH_RANGE = 33902;
l.CULL_FACE_MODE = 2885;
l.FRONT_FACE = 2886;
l.DEPTH_RANGE = 2928;
l.DEPTH_WRITEMASK = 2930;
l.DEPTH_CLEAR_VALUE = 2931;
l.DEPTH_FUNC = 2932;
l.STENCIL_CLEAR_VALUE = 2961;
l.STENCIL_FUNC = 2962;
l.STENCIL_FAIL = 2964;
l.STENCIL_PASS_DEPTH_FAIL = 2965;
l.STENCIL_PASS_DEPTH_PASS = 2966;
l.STENCIL_REF = 2967;
l.STENCIL_VALUE_MASK = 2963;
l.STENCIL_WRITEMASK = 2968;
l.STENCIL_BACK_FUNC = 34816;
l.STENCIL_BACK_FAIL = 34817;
l.STENCIL_BACK_PASS_DEPTH_FAIL =
34818;
l.STENCIL_BACK_PASS_DEPTH_PASS = 34819;
l.STENCIL_BACK_REF = 36003;
l.STENCIL_BACK_VALUE_MASK = 36004;
l.STENCIL_BACK_WRITEMASK = 36005;
l.VIEWPORT = 2978;
l.SCISSOR_BOX = 3088;
l.COLOR_CLEAR_VALUE = 3106;
l.COLOR_WRITEMASK = 3107;
l.UNPACK_ALIGNMENT = 3317;
l.PACK_ALIGNMENT = 3333;
l.MAX_TEXTURE_SIZE = 3379;
l.MAX_VIEWPORT_DIMS = 3386;
l.SUBPIXEL_BITS = 3408;
l.RED_BITS = 3410;
l.GREEN_BITS = 3411;
l.BLUE_BITS = 3412;
l.ALPHA_BITS = 3413;
l.DEPTH_BITS = 3414;
l.STENCIL_BITS = 3415;
l.POLYGON_OFFSET_UNITS = 10752;
l.POLYGON_OFFSET_FACTOR = 32824;
l.TEXTURE_BINDING_2D =
32873;
l.SAMPLE_BUFFERS = 32936;
l.SAMPLES = 32937;
l.SAMPLE_COVERAGE_VALUE = 32938;
l.SAMPLE_COVERAGE_INVERT = 32939;
l.NUM_COMPRESSED_TEXTURE_FORMATS = 34466;
l.COMPRESSED_TEXTURE_FORMATS = 34467;
l.DONT_CARE = 4352;
l.FASTEST = 4353;
l.NICEST = 4354;
l.GENERATE_MIPMAP_HINT = 33170;
l.BYTE = 5120;
l.UNSIGNED_BYTE = 5121;
l.SHORT = 5122;
l.UNSIGNED_SHORT = 5123;
l.INT = 5124;
l.UNSIGNED_INT = 5125;
l.FLOAT = 5126;
l.DEPTH_COMPONENT = 6402;
l.ALPHA = 6406;
l.RGB = 6407;
l.RGBA = 6408;
l.LUMINANCE = 6409;
l.LUMINANCE_ALPHA = 6410;
l.UNSIGNED_SHORT_4_4_4_4 = 32819;
l.UNSIGNED_SHORT_5_5_5_1 =
32820;
l.UNSIGNED_SHORT_5_6_5 = 33635;
l.FRAGMENT_SHADER = 35632;
l.VERTEX_SHADER = 35633;
l.MAX_VERTEX_ATTRIBS = 34921;
l.MAX_VERTEX_UNIFORM_VECTORS = 36347;
l.MAX_VARYING_VECTORS = 36348;
l.MAX_COMBINED_TEXTURE_IMAGE_UNITS = 35661;
l.MAX_VERTEX_TEXTURE_IMAGE_UNITS = 35660;
l.MAX_TEXTURE_IMAGE_UNITS = 34930;
l.MAX_FRAGMENT_UNIFORM_VECTORS = 36349;
l.SHADER_TYPE = 35663;
l.DELETE_STATUS = 35712;
l.LINK_STATUS = 35714;
l.VALIDATE_STATUS = 35715;
l.ATTACHED_SHADERS = 35717;
l.ACTIVE_UNIFORMS = 35718;
l.ACTIVE_ATTRIBUTES = 35721;
l.SHADING_LANGUAGE_VERSION =
35724;
l.CURRENT_PROGRAM = 35725;
l.NEVER = 512;
l.LESS = 513;
l.EQUAL = 514;
l.LEQUAL = 515;
l.GREATER = 516;
l.NOTEQUAL = 517;
l.GEQUAL = 518;
l.ALWAYS = 519;
l.KEEP = 7680;
l.REPLACE = 7681;
l.INCR = 7682;
l.DECR = 7683;
l.INVERT = 5386;
l.INCR_WRAP = 34055;
l.DECR_WRAP = 34056;
l.VENDOR = 7936;
l.RENDERER = 7937;
l.VERSION = 7938;
l.EXTENSIONS = 7939;
l.NEAREST = 9728;
l.LINEAR = 9729;
l.NEAREST_MIPMAP_NEAREST = 9984;
l.LINEAR_MIPMAP_NEAREST = 9985;
l.NEAREST_MIPMAP_LINEAR = 9986;
l.LINEAR_MIPMAP_LINEAR = 9987;
l.TEXTURE_MAG_FILTER = 10240;
l.TEXTURE_MIN_FILTER = 10241;
l.TEXTURE_WRAP_S =
10242;
l.TEXTURE_WRAP_T = 10243;
l.TEXTURE_2D = 3553;
l.TEXTURE = 5890;
l.TEXTURE_CUBE_MAP = 34067;
l.TEXTURE_BINDING_CUBE_MAP = 34068;
l.TEXTURE_CUBE_MAP_POSITIVE_X = 34069;
l.TEXTURE_CUBE_MAP_NEGATIVE_X = 34070;
l.TEXTURE_CUBE_MAP_POSITIVE_Y = 34071;
l.TEXTURE_CUBE_MAP_NEGATIVE_Y = 34072;
l.TEXTURE_CUBE_MAP_POSITIVE_Z = 34073;
l.TEXTURE_CUBE_MAP_NEGATIVE_Z = 34074;
l.MAX_CUBE_MAP_TEXTURE_SIZE = 34076;
l.TEXTURE0 = 33984;
l.TEXTURE1 = 33985;
l.TEXTURE2 = 33986;
l.TEXTURE3 = 33987;
l.TEXTURE4 = 33988;
l.TEXTURE5 = 33989;
l.TEXTURE6 = 33990;
l.TEXTURE7 = 33991;
l.TEXTURE8 = 33992;
l.TEXTURE9 = 33993;
l.TEXTURE10 = 33994;
l.TEXTURE11 = 33995;
l.TEXTURE12 = 33996;
l.TEXTURE13 = 33997;
l.TEXTURE14 = 33998;
l.TEXTURE15 = 33999;
l.TEXTURE16 = 34E3;
l.TEXTURE17 = 34001;
l.TEXTURE18 = 34002;
l.TEXTURE19 = 34003;
l.TEXTURE20 = 34004;
l.TEXTURE21 = 34005;
l.TEXTURE22 = 34006;
l.TEXTURE23 = 34007;
l.TEXTURE24 = 34008;
l.TEXTURE25 = 34009;
l.TEXTURE26 = 34010;
l.TEXTURE27 = 34011;
l.TEXTURE28 = 34012;
l.TEXTURE29 = 34013;
l.TEXTURE30 = 34014;
l.TEXTURE31 = 34015;
l.ACTIVE_TEXTURE = 34016;
l.REPEAT = 10497;
l.CLAMP_TO_EDGE = 33071;
l.MIRRORED_REPEAT =
33648;
l.FLOAT_VEC2 = 35664;
l.FLOAT_VEC3 = 35665;
l.FLOAT_VEC4 = 35666;
l.INT_VEC2 = 35667;
l.INT_VEC3 = 35668;
l.INT_VEC4 = 35669;
l.BOOL = 35670;
l.BOOL_VEC2 = 35671;
l.BOOL_VEC3 = 35672;
l.BOOL_VEC4 = 35673;
l.FLOAT_MAT2 = 35674;
l.FLOAT_MAT3 = 35675;
l.FLOAT_MAT4 = 35676;
l.SAMPLER_2D = 35678;
l.SAMPLER_CUBE = 35680;
l.VERTEX_ATTRIB_ARRAY_ENABLED = 34338;
l.VERTEX_ATTRIB_ARRAY_SIZE = 34339;
l.VERTEX_ATTRIB_ARRAY_STRIDE = 34340;
l.VERTEX_ATTRIB_ARRAY_TYPE = 34341;
l.VERTEX_ATTRIB_ARRAY_NORMALIZED = 34922;
l.VERTEX_ATTRIB_ARRAY_POINTER = 34373;
l.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING =
34975;
l.IMPLEMENTATION_COLOR_READ_TYPE = 35738;
l.IMPLEMENTATION_COLOR_READ_FORMAT = 35739;
l.VERTEX_PROGRAM_POINT_SIZE = 34370;
l.POINT_SPRITE = 34913;
l.COMPILE_STATUS = 35713;
l.LOW_FLOAT = 36336;
l.MEDIUM_FLOAT = 36337;
l.HIGH_FLOAT = 36338;
l.LOW_INT = 36339;
l.MEDIUM_INT = 36340;
l.HIGH_INT = 36341;
l.FRAMEBUFFER = 36160;
l.RENDERBUFFER = 36161;
l.RGBA4 = 32854;
l.RGB5_A1 = 32855;
l.RGB565 = 36194;
l.DEPTH_COMPONENT16 = 33189;
l.STENCIL_INDEX = 6401;
l.STENCIL_INDEX8 = 36168;
l.DEPTH_STENCIL = 34041;
l.RENDERBUFFER_WIDTH = 36162;
l.RENDERBUFFER_HEIGHT =
36163;
l.RENDERBUFFER_INTERNAL_FORMAT = 36164;
l.RENDERBUFFER_RED_SIZE = 36176;
l.RENDERBUFFER_GREEN_SIZE = 36177;
l.RENDERBUFFER_BLUE_SIZE = 36178;
l.RENDERBUFFER_ALPHA_SIZE = 36179;
l.RENDERBUFFER_DEPTH_SIZE = 36180;
l.RENDERBUFFER_STENCIL_SIZE = 36181;
l.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 36048;
l.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 36049;
l.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 36050;
l.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 36051;
l.COLOR_ATTACHMENT0 = 36064;
l.DEPTH_ATTACHMENT = 36096;
l.STENCIL_ATTACHMENT = 36128;
l.DEPTH_STENCIL_ATTACHMENT =
33306;
l.NONE = 0;
l.FRAMEBUFFER_COMPLETE = 36053;
l.FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 36054;
l.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 36055;
l.FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 36057;
l.FRAMEBUFFER_UNSUPPORTED = 36061;
l.FRAMEBUFFER_BINDING = 36006;
l.RENDERBUFFER_BINDING = 36007;
l.MAX_RENDERBUFFER_SIZE = 34024;
l.INVALID_FRAMEBUFFER_OPERATION = 1286;
l.UNPACK_FLIP_Y_WEBGL = 37440;
l.UNPACK_PREMULTIPLY_ALPHA_WEBGL = 37441;
l.CONTEXT_LOST_WEBGL = 37442;
l.UNPACK_COLORSPACE_CONVERSION_WEBGL = 37443;
l.BROWSER_DEFAULT_WEBGL = 37444;
l.READ_BUFFER = 3074;
l.UNPACK_ROW_LENGTH = 3314;
l.UNPACK_SKIP_ROWS = 3315;
l.UNPACK_SKIP_PIXELS = 3316;
l.PACK_ROW_LENGTH = 3330;
l.PACK_SKIP_ROWS = 3331;
l.PACK_SKIP_PIXELS = 3332;
l.TEXTURE_BINDING_3D = 32874;
l.UNPACK_SKIP_IMAGES = 32877;
l.UNPACK_IMAGE_HEIGHT = 32878;
l.MAX_3D_TEXTURE_SIZE = 32883;
l.MAX_ELEMENTS_VERTICES = 33E3;
l.MAX_ELEMENTS_INDICES = 33001;
l.MAX_TEXTURE_LOD_BIAS = 34045;
l.MAX_FRAGMENT_UNIFORM_COMPONENTS = 35657;
l.MAX_VERTEX_UNIFORM_COMPONENTS = 35658;
l.MAX_ARRAY_TEXTURE_LAYERS = 35071;
l.MIN_PROGRAM_TEXEL_OFFSET = 35076;
l.MAX_PROGRAM_TEXEL_OFFSET = 35077;
l.MAX_VARYING_COMPONENTS = 35659;
l.FRAGMENT_SHADER_DERIVATIVE_HINT = 35723;
l.RASTERIZER_DISCARD = 35977;
l.VERTEX_ARRAY_BINDING = 34229;
l.MAX_VERTEX_OUTPUT_COMPONENTS = 37154;
l.MAX_FRAGMENT_INPUT_COMPONENTS = 37157;
l.MAX_SERVER_WAIT_TIMEOUT = 37137;
l.MAX_ELEMENT_INDEX = 36203;
l.RED = 6403;
l.RGB8 = 32849;
l.RGBA8 = 32856;
l.RGB10_A2 = 32857;
l.TEXTURE_3D = 32879;
l.TEXTURE_WRAP_R = 32882;
l.TEXTURE_MIN_LOD = 33082;
l.TEXTURE_MAX_LOD = 33083;
l.TEXTURE_BASE_LEVEL = 33084;
l.TEXTURE_MAX_LEVEL = 33085;
l.TEXTURE_COMPARE_MODE =
34892;
l.TEXTURE_COMPARE_FUNC = 34893;
l.SRGB = 35904;
l.SRGB8 = 35905;
l.SRGB8_ALPHA8 = 35907;
l.COMPARE_REF_TO_TEXTURE = 34894;
l.RGBA32F = 34836;
l.RGB32F = 34837;
l.RGBA16F = 34842;
l.RGB16F = 34843;
l.TEXTURE_2D_ARRAY = 35866;
l.TEXTURE_BINDING_2D_ARRAY = 35869;
l.R11F_G11F_B10F = 35898;
l.RGB9_E5 = 35901;
l.RGBA32UI = 36208;
l.RGB32UI = 36209;
l.RGBA16UI = 36214;
l.RGB16UI = 36215;
l.RGBA8UI = 36220;
l.RGB8UI = 36221;
l.RGBA32I = 36226;
l.RGB32I = 36227;
l.RGBA16I = 36232;
l.RGB16I = 36233;
l.RGBA8I = 36238;
l.RGB8I = 36239;
l.RED_INTEGER = 36244;
l.RGB_INTEGER = 36248;
l.RGBA_INTEGER = 36249;
l.R8 = 33321;
l.RG8 = 33323;
l.R16F = 33325;
l.R32F = 33326;
l.RG16F = 33327;
l.RG32F = 33328;
l.R8I = 33329;
l.R8UI = 33330;
l.R16I = 33331;
l.R16UI = 33332;
l.R32I = 33333;
l.R32UI = 33334;
l.RG8I = 33335;
l.RG8UI = 33336;
l.RG16I = 33337;
l.RG16UI = 33338;
l.RG32I = 33339;
l.RG32UI = 33340;
l.R8_SNORM = 36756;
l.RG8_SNORM = 36757;
l.RGB8_SNORM = 36758;
l.RGBA8_SNORM = 36759;
l.RGB10_A2UI = 36975;
l.TEXTURE_IMMUTABLE_FORMAT = 37167;
l.TEXTURE_IMMUTABLE_LEVELS = 33503;
l.UNSIGNED_INT_2_10_10_10_REV = 33640;
l.UNSIGNED_INT_10F_11F_11F_REV = 35899;
l.UNSIGNED_INT_5_9_9_9_REV =
35902;
l.FLOAT_32_UNSIGNED_INT_24_8_REV = 36269;
l.UNSIGNED_INT_24_8 = 34042;
l.HALF_FLOAT = 5131;
l.RG = 33319;
l.RG_INTEGER = 33320;
l.INT_2_10_10_10_REV = 36255;
l.CURRENT_QUERY = 34917;
l.QUERY_RESULT = 34918;
l.QUERY_RESULT_AVAILABLE = 34919;
l.ANY_SAMPLES_PASSED = 35887;
l.ANY_SAMPLES_PASSED_CONSERVATIVE = 36202;
l.MAX_DRAW_BUFFERS = 34852;
l.DRAW_BUFFER0 = 34853;
l.DRAW_BUFFER1 = 34854;
l.DRAW_BUFFER2 = 34855;
l.DRAW_BUFFER3 = 34856;
l.DRAW_BUFFER4 = 34857;
l.DRAW_BUFFER5 = 34858;
l.DRAW_BUFFER6 = 34859;
l.DRAW_BUFFER7 = 34860;
l.DRAW_BUFFER8 = 34861;
l.DRAW_BUFFER9 = 34862;
l.DRAW_BUFFER10 = 34863;
l.DRAW_BUFFER11 = 34864;
l.DRAW_BUFFER12 = 34865;
l.DRAW_BUFFER13 = 34866;
l.DRAW_BUFFER14 = 34867;
l.DRAW_BUFFER15 = 34868;
l.MAX_COLOR_ATTACHMENTS = 36063;
l.COLOR_ATTACHMENT1 = 36065;
l.COLOR_ATTACHMENT2 = 36066;
l.COLOR_ATTACHMENT3 = 36067;
l.COLOR_ATTACHMENT4 = 36068;
l.COLOR_ATTACHMENT5 = 36069;
l.COLOR_ATTACHMENT6 = 36070;
l.COLOR_ATTACHMENT7 = 36071;
l.COLOR_ATTACHMENT8 = 36072;
l.COLOR_ATTACHMENT9 = 36073;
l.COLOR_ATTACHMENT10 = 36074;
l.COLOR_ATTACHMENT11 = 36075;
l.COLOR_ATTACHMENT12 = 36076;
l.COLOR_ATTACHMENT13 =
36077;
l.COLOR_ATTACHMENT14 = 36078;
l.COLOR_ATTACHMENT15 = 36079;
l.SAMPLER_3D = 35679;
l.SAMPLER_2D_SHADOW = 35682;
l.SAMPLER_2D_ARRAY = 36289;
l.SAMPLER_2D_ARRAY_SHADOW = 36292;
l.SAMPLER_CUBE_SHADOW = 36293;
l.INT_SAMPLER_2D = 36298;
l.INT_SAMPLER_3D = 36299;
l.INT_SAMPLER_CUBE = 36300;
l.INT_SAMPLER_2D_ARRAY = 36303;
l.UNSIGNED_INT_SAMPLER_2D = 36306;
l.UNSIGNED_INT_SAMPLER_3D = 36307;
l.UNSIGNED_INT_SAMPLER_CUBE = 36308;
l.UNSIGNED_INT_SAMPLER_2D_ARRAY = 36311;
l.MAX_SAMPLES = 36183;
l.SAMPLER_BINDING = 35097;
l.PIXEL_PACK_BUFFER = 35051;
l.PIXEL_UNPACK_BUFFER =
35052;
l.PIXEL_PACK_BUFFER_BINDING = 35053;
l.PIXEL_UNPACK_BUFFER_BINDING = 35055;
l.COPY_READ_BUFFER = 36662;
l.COPY_WRITE_BUFFER = 36663;
l.COPY_READ_BUFFER_BINDING = 36662;
l.COPY_WRITE_BUFFER_BINDING = 36663;
l.FLOAT_MAT2x3 = 35685;
l.FLOAT_MAT2x4 = 35686;
l.FLOAT_MAT3x2 = 35687;
l.FLOAT_MAT3x4 = 35688;
l.FLOAT_MAT4x2 = 35689;
l.FLOAT_MAT4x3 = 35690;
l.UNSIGNED_INT_VEC2 = 36294;
l.UNSIGNED_INT_VEC3 = 36295;
l.UNSIGNED_INT_VEC4 = 36296;
l.UNSIGNED_NORMALIZED = 35863;
l.SIGNED_NORMALIZED = 36764;
l.VERTEX_ATTRIB_ARRAY_INTEGER = 35069;
l.VERTEX_ATTRIB_ARRAY_DIVISOR =
35070;
l.TRANSFORM_FEEDBACK_BUFFER_MODE = 35967;
l.MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 35968;
l.TRANSFORM_FEEDBACK_VARYINGS = 35971;
l.TRANSFORM_FEEDBACK_BUFFER_START = 35972;
l.TRANSFORM_FEEDBACK_BUFFER_SIZE = 35973;
l.TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 35976;
l.MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 35978;
l.MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 35979;
l.INTERLEAVED_ATTRIBS = 35980;
l.SEPARATE_ATTRIBS = 35981;
l.TRANSFORM_FEEDBACK_BUFFER = 35982;
l.TRANSFORM_FEEDBACK_BUFFER_BINDING = 35983;
l.TRANSFORM_FEEDBACK =
36386;
l.TRANSFORM_FEEDBACK_PAUSED = 36387;
l.TRANSFORM_FEEDBACK_ACTIVE = 36388;
l.TRANSFORM_FEEDBACK_BINDING = 36389;
l.FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = 33296;
l.FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = 33297;
l.FRAMEBUFFER_ATTACHMENT_RED_SIZE = 33298;
l.FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = 33299;
l.FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = 33300;
l.FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = 33301;
l.FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = 33302;
l.FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = 33303;
l.FRAMEBUFFER_DEFAULT = 33304;
l.DEPTH24_STENCIL8 = 35056;
l.DRAW_FRAMEBUFFER_BINDING = 36006;
l.READ_FRAMEBUFFER = 36008;
l.DRAW_FRAMEBUFFER = 36009;
l.READ_FRAMEBUFFER_BINDING = 36010;
l.RENDERBUFFER_SAMPLES = 36011;
l.FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 36052;
l.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 36182;
l.UNIFORM_BUFFER = 35345;
l.UNIFORM_BUFFER_BINDING = 35368;
l.UNIFORM_BUFFER_START = 35369;
l.UNIFORM_BUFFER_SIZE = 35370;
l.MAX_VERTEX_UNIFORM_BLOCKS = 35371;
l.MAX_FRAGMENT_UNIFORM_BLOCKS = 35373;
l.MAX_COMBINED_UNIFORM_BLOCKS = 35374;
l.MAX_UNIFORM_BUFFER_BINDINGS = 35375;
l.MAX_UNIFORM_BLOCK_SIZE =
35376;
l.MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 35377;
l.MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 35379;
l.UNIFORM_BUFFER_OFFSET_ALIGNMENT = 35380;
l.ACTIVE_UNIFORM_BLOCKS = 35382;
l.UNIFORM_TYPE = 35383;
l.UNIFORM_SIZE = 35384;
l.UNIFORM_BLOCK_INDEX = 35386;
l.UNIFORM_OFFSET = 35387;
l.UNIFORM_ARRAY_STRIDE = 35388;
l.UNIFORM_MATRIX_STRIDE = 35389;
l.UNIFORM_IS_ROW_MAJOR = 35390;
l.UNIFORM_BLOCK_BINDING = 35391;
l.UNIFORM_BLOCK_DATA_SIZE = 35392;
l.UNIFORM_BLOCK_ACTIVE_UNIFORMS = 35394;
l.UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 35395;
l.UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER =
35396;
l.UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 35398;
l.OBJECT_TYPE = 37138;
l.SYNC_CONDITION = 37139;
l.SYNC_STATUS = 37140;
l.SYNC_FLAGS = 37141;
l.SYNC_FENCE = 37142;
l.SYNC_GPU_COMMANDS_COMPLETE = 37143;
l.UNSIGNALED = 37144;
l.SIGNALED = 37145;
l.ALREADY_SIGNALED = 37146;
l.TIMEOUT_EXPIRED = 37147;
l.CONDITION_SATISFIED = 37148;
l.WAIT_FAILED = 37149;
l.SYNC_FLUSH_COMMANDS_BIT = 1;
l.COLOR = 6144;
l.DEPTH = 6145;
l.STENCIL = 6146;
l.MIN = 32775;
l.MAX = 32776;
l.DEPTH_COMPONENT24 = 33190;
l.STREAM_READ = 35041;
l.STREAM_COPY = 35042;
l.STATIC_READ = 35045;
l.STATIC_COPY = 35046;
l.DYNAMIC_READ = 35049;
l.DYNAMIC_COPY = 35050;
l.DEPTH_COMPONENT32F = 36012;
l.DEPTH32F_STENCIL8 = 36013;
l.INVALID_INDEX = -1;
l.TIMEOUT_IGNORED = -1;
l.MAX_CLIENT_WAIT_TIMEOUT_WEBGL = 37447;
Qd.__identity = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0];
wa.__identity = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];
Dc.audioSources = [];
Dc.sourcesToRemove = [];
Tj.ID = 0;
C.NONE = 0;
C.FALSE = 0;
C.TRUE = 1;
C.SOURCE_RELATIVE = 514;
C.CONE_INNER_ANGLE = 4097;
C.CONE_OUTER_ANGLE = 4098;
C.PITCH = 4099;
C.POSITION = 4100;
C.DIRECTION = 4101;
C.VELOCITY =
4102;
C.LOOPING = 4103;
C.BUFFER = 4105;
C.GAIN = 4106;
C.MIN_GAIN = 4109;
C.MAX_GAIN = 4110;
C.ORIENTATION = 4111;
C.SOURCE_STATE = 4112;
C.INITIAL = 4113;
C.PLAYING = 4114;
C.PAUSED = 4115;
C.STOPPED = 4116;
C.BUFFERS_QUEUED = 4117;
C.BUFFERS_PROCESSED = 4118;
C.REFERENCE_DISTANCE = 4128;
C.ROLLOFF_FACTOR = 4129;
C.CONE_OUTER_GAIN = 4130;
C.MAX_DISTANCE = 4131;
C.SEC_OFFSET = 4132;
C.SAMPLE_OFFSET = 4133;
C.BYTE_OFFSET = 4134;
C.SOURCE_TYPE = 4135;
C.STATIC = 4136;
C.STREAMING = 4137;
C.UNDETERMINED = 4144;
C.FORMAT_MONO8 = 4352;
C.FORMAT_MONO16 = 4353;
C.FORMAT_STEREO8 = 4354;
C.FORMAT_STEREO16 = 4355;
C.FREQUENCY = 8193;
C.BITS = 8194;
C.CHANNELS = 8195;
C.SIZE = 8196;
C.NO_ERROR = 0;
C.INVALID_NAME = 40961;
C.INVALID_ENUM = 40962;
C.INVALID_VALUE = 40963;
C.INVALID_OPERATION = 40964;
C.OUT_OF_MEMORY = 40965;
C.VENDOR = 45057;
C.VERSION = 45058;
C.RENDERER = 45059;
C.EXTENSIONS = 45060;
C.DOPPLER_FACTOR = 49152;
C.SPEED_OF_SOUND = 49155;
C.DOPPLER_VELOCITY = 49153;
C.DISTANCE_MODEL = 53248;
C.INVERSE_DISTANCE = 53249;
C.INVERSE_DISTANCE_CLAMPED = 53250;
C.LINEAR_DISTANCE = 53251;
C.LINEAR_DISTANCE_CLAMPED = 53252;
C.EXPONENT_DISTANCE = 53253;
C.EXPONENT_DISTANCE_CLAMPED = 53254;
C.METERS_PER_UNIT = 131076;
C.DIRECT_FILTER = 131077;
C.AUXILIARY_SEND_FILTER = 131078;
C.AIR_ABSORPTION_FACTOR = 131079;
C.ROOM_ROLLOFF_FACTOR = 131080;
C.CONE_OUTER_GAINHF = 131081;
C.DIRECT_FILTER_GAINHF_AUTO = 131082;
C.AUXILIARY_SEND_FILTER_GAIN_AUTO = 131083;
C.AUXILIARY_SEND_FILTER_GAINHF_AUTO = 131084;
C.REVERB_DENSITY = 1;
C.REVERB_DIFFUSION = 2;
C.REVERB_GAIN = 3;
C.REVERB_GAINHF = 4;
C.REVERB_DECAY_TIME = 5;
C.REVERB_DECAY_HFRATIO = 6;
C.REVERB_REFLECTIONS_GAIN = 7;
C.REVERB_REFLECTIONS_DELAY = 8;
C.REVERB_LATE_REVERB_GAIN =
9;
C.REVERB_LATE_REVERB_DELAY = 10;
C.REVERB_AIR_ABSORPTION_GAINHF = 11;
C.REVERB_ROOM_ROLLOFF_FACTOR = 12;
C.REVERB_DECAY_HFLIMIT = 13;
C.EAXREVERB_DENSITY = 1;
C.EAXREVERB_DIFFUSION = 2;
C.EAXREVERB_GAIN = 3;
C.EAXREVERB_GAINHF = 4;
C.EAXREVERB_GAINLF = 5;
C.EAXREVERB_DECAY_TIME = 6;
C.EAXREVERB_DECAY_HFRATIO = 7;
C.EAXREVERB_DECAY_LFRATIO = 8;
C.EAXREVERB_REFLECTIONS_GAIN = 9;
C.EAXREVERB_REFLECTIONS_DELAY = 10;
C.EAXREVERB_REFLECTIONS_PAN = 11;
C.EAXREVERB_LATE_REVERB_GAIN = 12;
C.EAXREVERB_LATE_REVERB_DELAY = 13;
C.EAXREVERB_LATE_REVERB_PAN = 14;
C.EAXREVERB_ECHO_TIME = 15;
C.EAXREVERB_ECHO_DEPTH = 16;
C.EAXREVERB_MODULATION_TIME = 17;
C.EAXREVERB_MODULATION_DEPTH = 18;
C.EAXREVERB_AIR_ABSORPTION_GAINHF = 19;
C.EAXREVERB_HFREFERENCE = 20;
C.EAXREVERB_LFREFERENCE = 21;
C.EAXREVERB_ROOM_ROLLOFF_FACTOR = 22;
C.EAXREVERB_DECAY_HFLIMIT = 23;
C.CHORUS_WAVEFORM = 1;
C.CHORUS_PHASE = 2;
C.CHORUS_RATE = 3;
C.CHORUS_DEPTH = 4;
C.CHORUS_FEEDBACK = 5;
C.CHORUS_DELAY = 6;
C.DISTORTION_EDGE = 1;
C.DISTORTION_GAIN = 2;
C.DISTORTION_LOWPASS_CUTOFF = 3;
C.DISTORTION_EQCENTER = 4;
C.DISTORTION_EQBANDWIDTH = 5;
C.ECHO_DELAY =
1;
C.ECHO_LRDELAY = 2;
C.ECHO_DAMPING = 3;
C.ECHO_FEEDBACK = 4;
C.ECHO_SPREAD = 5;
C.FLANGER_WAVEFORM = 1;
C.FLANGER_PHASE = 2;
C.FLANGER_RATE = 3;
C.FLANGER_DEPTH = 4;
C.FLANGER_FEEDBACK = 5;
C.FLANGER_DELAY = 6;
C.FREQUENCY_SHIFTER_FREQUENCY = 1;
C.FREQUENCY_SHIFTER_LEFT_DIRECTION = 2;
C.FREQUENCY_SHIFTER_RIGHT_DIRECTION = 3;
C.VOCAL_MORPHER_PHONEMEA = 1;
C.VOCAL_MORPHER_PHONEMEA_COARSE_TUNING = 2;
C.VOCAL_MORPHER_PHONEMEB = 3;
C.VOCAL_MORPHER_PHONEMEB_COARSE_TUNING = 4;
C.VOCAL_MORPHER_WAVEFORM = 5;
C.VOCAL_MORPHER_RATE = 6;
C.PITCH_SHIFTER_COARSE_TUNE =
1;
C.PITCH_SHIFTER_FINE_TUNE = 2;
C.RING_MODULATOR_FREQUENCY = 1;
C.RING_MODULATOR_HIGHPASS_CUTOFF = 2;
C.RING_MODULATOR_WAVEFORM = 3;
C.AUTOWAH_ATTACK_TIME = 1;
C.AUTOWAH_RELEASE_TIME = 2;
C.AUTOWAH_RESONANCE = 3;
C.AUTOWAH_PEAK_GAIN = 4;
C.COMPRESSOR_ONOFF = 1;
C.EQUALIZER_LOW_GAIN = 1;
C.EQUALIZER_LOW_CUTOFF = 2;
C.EQUALIZER_MID1_GAIN = 3;
C.EQUALIZER_MID1_CENTER = 4;
C.EQUALIZER_MID1_WIDTH = 5;
C.EQUALIZER_MID2_GAIN = 6;
C.EQUALIZER_MID2_CENTER = 7;
C.EQUALIZER_MID2_WIDTH = 8;
C.EQUALIZER_HIGH_GAIN = 9;
C.EQUALIZER_HIGH_CUTOFF = 10;
C.EFFECT_FIRST_PARAMETER =
0;
C.EFFECT_LAST_PARAMETER = 32768;
C.EFFECT_TYPE = 32769;
C.EFFECT_NULL = 0;
C.EFFECT_EAXREVERB = 32768;
C.EFFECT_REVERB = 1;
C.EFFECT_CHORUS = 2;
C.EFFECT_DISTORTION = 3;
C.EFFECT_ECHO = 4;
C.EFFECT_FLANGER = 5;
C.EFFECT_FREQUENCY_SHIFTER = 6;
C.EFFECT_VOCAL_MORPHER = 7;
C.EFFECT_PITCH_SHIFTER = 8;
C.EFFECT_RING_MODULATOR = 9;
C.FFECT_AUTOWAH = 10;
C.EFFECT_COMPRESSOR = 11;
C.EFFECT_EQUALIZER = 12;
C.EFFECTSLOT_EFFECT = 1;
C.EFFECTSLOT_GAIN = 2;
C.EFFECTSLOT_AUXILIARY_SEND_AUTO = 3;
C.LOWPASS_GAIN = 1;
C.LOWPASS_GAINHF = 2;
C.HIGHPASS_GAIN = 1;
C.HIGHPASS_GAINLF =
2;
C.BANDPASS_GAIN = 1;
C.BANDPASS_GAINLF = 2;
C.BANDPASS_GAINHF = 3;
C.FILTER_FIRST_PARAMETER = 0;
C.FILTER_LAST_PARAMETER = 32768;
C.FILTER_TYPE = 32769;
C.FILTER_NULL = 0;
C.FILTER_LOWPASS = 1;
C.FILTER_HIGHPASS = 2;
C.FILTER_BANDPASS = 3;
Mb.FALSE = 0;
Mb.TRUE = 1;
Mb.FREQUENCY = 4103;
Mb.REFRESH = 4104;
Mb.SYNC = 4105;
Mb.MONO_SOURCES = 4112;
Mb.STEREO_SOURCES = 4113;
Mb.NO_ERROR = 0;
Mb.INVALID_DEVICE = 40961;
Mb.INVALID_CONTEXT = 40962;
Mb.INVALID_ENUM = 40963;
Mb.INVALID_VALUE = 40964;
Mb.OUT_OF_MEMORY = 40965;
Mb.ATTRIBUTES_SIZE = 4098;
Mb.ALL_ATTRIBUTES = 4099;
Mb.DEFAULT_DEVICE_SPECIFIER = 4100;
Mb.DEVICE_SPECIFIER = 4101;
Mb.EXTENSIONS = 4102;
Mb.ENUMERATE_ALL_EXT = 1;
Mb.DEFAULT_ALL_DEVICES_SPECIFIER = 4114;
Mb.ALL_DEVICES_SPECIFIER = 4115;
oe.onUpdate = new Rd;
Ee.alreadyCreated = new xa;
Ee.initialized = !1;
Sf.sensorByID = new eb;
Sf.sensors = [];
$a.__directories = new eb;
Pd.devices = new eb;
Pd.onConnect = new Lo;
bd.devices = new eb;
bd.onConnect = new Mo;
Gb.NONE = 0;
Gb.LEFT_SHIFT = 1;
Gb.RIGHT_SHIFT = 2;
Gb.LEFT_CTRL = 64;
Gb.RIGHT_CTRL = 128;
Gb.LEFT_ALT = 256;
Gb.RIGHT_ALT = 512;
Gb.LEFT_META = 1024;
Gb.RIGHT_META =
2048;
Gb.NUM_LOCK = 4096;
Gb.CAPS_LOCK = 8192;
Gb.MODE = 16384;
Gb.CTRL = 192;
Gb.SHIFT = 3;
Gb.ALT = 768;
Gb.META = 3072;
sd.onCancel = new Mi;
sd.onEnd = new Mi;
sd.onMove = new Mi;
sd.onStart = new Mi;
ta.cache = new To;
ta.onChange = new Rd;
ta.bundlePaths = new xa;
ta.libraries = new xa;
ta.libraryPaths = new xa;
$g.BYTES_PER_ELEMENT = 4;
Qa.throwErrors = !0;
Wr.VERSION = 2;
Oa.__lastTimerID = 0;
Oa.__sentWarnings = new xa;
Oa.__timers = new eb;
ch.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Gf.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
fields: {toJSON: {SuppressWarnings: ["checkstyle:Dynamic"]}}
};
If.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
fields: {
toJSON: {SuppressWarnings: ["checkstyle:Dynamic"]},
_: {SuppressWarnings: ["checkstyle:Dynamic"]}
}
};
Jf.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
fields: {toJSON: {SuppressWarnings: ["checkstyle:Dynamic"]}}
};
Hf.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
fields: {toJSON: {SuppressWarnings: ["checkstyle:Dynamic"]}}
};
uf.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
fields: {
concat: {SuppressWarnings: ["checkstyle:Dynamic"]},
toJSON: {SuppressWarnings: ["checkstyle:Dynamic"]},
_: {SuppressWarnings: ["checkstyle:Dynamic"]}
}
};
kj.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
ka.__meta__ = {
fields: {
image: {SuppressWarnings: ["checkstyle:Dynamic"]},
__framebufferContext: {SuppressWarnings: ["checkstyle:Dynamic"]},
__indexBufferContext: {SuppressWarnings: ["checkstyle:Dynamic"]},
__surface: {SuppressWarnings: ["checkstyle:Dynamic"]},
__textureContext: {SuppressWarnings: ["checkstyle:Dynamic"]},
__vertexBufferContext: {SuppressWarnings: ["checkstyle:Dynamic"]},
compare: {SuppressWarnings: ["checkstyle:Dynamic"]},
getSurface: {SuppressWarnings: ["checkstyle:Dynamic"]},
__fromImage: {SuppressWarnings: ["checkstyle:Dynamic"]}
}
};
ka.VERTEX_BUFFER_STRIDE = 14;
ka.__tempVector = new be;
Ye.__meta__ = {
fields: {
__context: {SuppressWarnings: ["checkstyle:Dynamic"]},
__type: {SuppressWarnings: ["checkstyle:Dynamic"]}
}
};
Dm.__meta__ = {
fields: {
cairo: {SuppressWarnings: ["checkstyle:Dynamic"]},
__matrix3: {SuppressWarnings: ["checkstyle:Dynamic"]},
applyMatrix: {SuppressWarnings: ["checkstyle:Dynamic"]},
__setBlendModeCairo: {SuppressWarnings: ["checkstyle:Dynamic"]},
_: {SuppressWarnings: ["checkstyle:Dynamic"]}
}
};
Fg.__meta__ = {
fields: {
context: {SuppressWarnings: ["checkstyle:Dynamic"]},
applySmoothing: {SuppressWarnings: ["checkstyle:Dynamic"]},
setTransform: {SuppressWarnings: ["checkstyle:Dynamic"]},
__setBlendModeContext: {SuppressWarnings: ["checkstyle:Dynamic"]},
_: {SuppressWarnings: ["checkstyle:Dynamic"]}
}
};
Gr.NONE = 0;
Gr.ROUND = 1;
Gr.SQUARE = 2;
Hm.__meta__ = {
fields: {
__element: {SuppressWarnings: ["checkstyle:Dynamic"]},
_: {SuppressWarnings: ["checkstyle:Dynamic"]}
}
};
Pi.__meta__ = {
fields: {
element: {SuppressWarnings: ["checkstyle:Dynamic"]},
applyStyle: {SuppressWarnings: ["checkstyle:Dynamic"]},
clearStyle: {SuppressWarnings: ["checkstyle:Dynamic"]},
_: {SuppressWarnings: ["checkstyle:Dynamic"]}
}
};
jf.__meta__ = {fields: {glProgram: {SuppressWarnings: ["checkstyle:Dynamic"]}}};
$e.__meta__ = {fields: {overrideBlendMode: {SuppressWarnings: ["checkstyle:FieldDocComment"]}}};
Ri.SIN45 = .7071067811865476;
Ri.TAN22 = .41421356237309503;
Jr.BEVEL = 0;
Jr.MITER = 1;
Jr.ROUND = 2;
Fj.__meta__ = {fields: {BitmapData_onError: {SuppressWarnings: ["checkstyle:Dynamic"]}}};
hg.__meta__ = {
statics: {create: {SuppressWarnings: ["checkstyle:FieldDocComment"]}},
fields: {parameters: {SuppressWarnings: ["checkstyle:Dynamic"]}}
};
hg.__rootURL = Zg.get_supported() ? window.document.URL : "";
Ib.__meta__ = {
fields: {
gl: {SuppressWarnings: ["checkstyle:Dynamic"]},
__gl: {SuppressWarnings: ["checkstyle:Dynamic"]},
__matrix: {SuppressWarnings: ["checkstyle:Dynamic"]},
__projection: {SuppressWarnings: ["checkstyle:Dynamic"]},
__projectionFlipped: {SuppressWarnings: ["checkstyle:Dynamic"]},
getMatrix: {SuppressWarnings: ["checkstyle:Dynamic"]}
}
};
Ib.__alphaValue = [1];
Ib.__colorMultipliersValue = [0, 0, 0, 0];
Ib.__colorOffsetsValue = [0, 0, 0, 0];
Ib.__defaultColorMultipliersValue = [1, 1, 1, 1];
Ib.__emptyColorValue = [0, 0, 0, 0];
Ib.__emptyAlphaValue = [1];
Ib.__hasColorTransformValue = [!1];
Ib.__scissorRectangle = new ba;
Ib.__textureSizeValue = [0, 0];
$o.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
fields: {onComplete: {SuppressWarnings: ["checkstyle:Dynamic"]}}
};
Xm.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Km.__meta__ = {
fields: {
index: {SuppressWarnings: ["checkstyle:Dynamic"]},
name: {SuppressWarnings: ["checkstyle:FieldDocComment"]}
}
};
Qi.__meta__ = {
fields: {
index: {SuppressWarnings: ["checkstyle:Dynamic"]},
name: {SuppressWarnings: ["checkstyle:FieldDocComment"]}
}
};
Ui.__meta__ = {
fields: {
__broadcastEvent: {SuppressWarnings: ["checkstyle:Dynamic"]},
__dispatchEvent: {SuppressWarnings: [["checkstyle:Dynamic", "checkstyle:LeftCurly"]]},
__dispatchStack: {
SuppressWarnings: [["checkstyle:Dynamic",
"checkstyle:LeftCurly"]]
},
__dispatchTarget: {SuppressWarnings: ["checkstyle:Dynamic"]},
__handleError: {SuppressWarnings: ["checkstyle:Dynamic"]}
}
};
kg.__meta__ = {fields: {data: {SuppressWarnings: ["checkstyle:Dynamic"]}}};
Ym.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Yj.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
fields: {_: {SuppressWarnings: ["checkstyle:Dynamic"]}}
};
Xi.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Zm.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
$m.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
an.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
bn.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
cn.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
ei.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
statics: {renderTileContainer: {SuppressWarnings: ["checkstyle:Dynamic"]}}
};
Oi.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Eh.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Ie.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
fields: {o: {SuppressWarnings: ["checkstyle:Dynamic"]}}
};
Ie.empty = new Ie;
B.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
statics: {
windingRule: {SuppressWarnings: ["checkstyle:Dynamic"]},
createBitmapFill: {SuppressWarnings: ["checkstyle:Dynamic"]},
createGradientPattern: {SuppressWarnings: ["checkstyle:Dynamic"]}
}
};
B.SIN45 = .7071067811865476;
B.TAN22 = .41421356237309503;
B.fillCommands = new Ie;
B.strokeCommands = new Ie;
Or.__meta__ =
{obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
U.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Yf.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
statics: {renderTileContainer: {SuppressWarnings: ["checkstyle:Dynamic"]}}
};
$h.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
zf.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Gh.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Gh.MAX_INDEX_BUFFER_LENGTH = 65535;
Gh.MAX_QUADS_PER_INDEX_BUFFER =
10922;
Gh.MAX_QUAD_INDEX_BUFFER_LENGTH = 65532;
eh.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Uc.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Uc.blankBitmapData = new ka(1, 1, !1, 0);
Uc.tempColorTransform = new Pc(1, 1, 1, 1, 0, 0, 0, 0);
ai.opaqueBitmapData = new ka(1, 1, !1, 0);
cg.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
fh.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
ha.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Af.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Af.__textureSizeValue = [0, 0];
Vc.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Zf.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
sf.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
gc.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
gc.__regexColor = new fb("color=(\"#([^\"]+)\"|'#([^']+)')", "i");
gc.__regexFace = new fb("face=(\"([^\"]+)\"|'([^']+)')", "i");
gc.__regexFont =
new fb("]+)>", "gi");
gc.__regexCloseFont = new fb("", "gi");
gc.__regexSize = new fb("size=(\"([^\"]+)\"|'([^']+)')", "i");
Gg.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
dh.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
$f.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
fields: {obj: {SuppressWarnings: ["checkstyle:Dynamic"]}}
};
Hh.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
fi.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
fi.alphaColorTransform = new Pc;
fi.bitmap = new dd;
fi.destPoint = new na;
fi.sourceRect = new ba;
Zh.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
statics: {P: {SuppressWarnings: ["checkstyle:ConstantName"]}}
};
Zh.P = [151, 160, 137, 91, 90, 15, 131, 13, 201, 95, 96, 53, 194, 233, 7, 225, 140, 36, 103, 30, 69, 142, 8, 99, 37, 240, 21, 10, 23, 190, 6, 148, 247, 120, 234, 75, 0, 26, 197, 62, 94, 252, 219, 203, 117, 35, 11, 32, 57, 177, 33, 88, 237, 149, 56, 87, 174, 20, 125, 136, 171, 168, 68, 175, 74, 165, 71, 134, 139, 48, 27, 166, 77, 146, 158, 231, 83, 111, 229, 122, 60,
211, 133, 230, 220, 105, 92, 41, 55, 46, 245, 40, 244, 102, 143, 54, 65, 25, 63, 161, 1, 216, 80, 73, 209, 76, 132, 187, 208, 89, 18, 169, 200, 196, 135, 130, 116, 188, 159, 86, 164, 100, 109, 198, 173, 186, 3, 64, 52, 217, 226, 250, 124, 123, 5, 202, 38, 147, 118, 126, 255, 82, 85, 212, 207, 206, 59, 227, 47, 16, 58, 17, 182, 189, 28, 42, 223, 183, 170, 213, 119, 248, 152, 2, 44, 154, 163, 70, 221, 153, 101, 155, 167, 43, 172, 9, 129, 22, 39, 253, 19, 98, 108, 110, 79, 113, 224, 232, 178, 185, 112, 104, 218, 246, 97, 228, 251, 34, 242, 193, 238, 210, 144, 12, 191, 179, 162, 241, 81, 51, 145, 235, 249, 14, 239, 107, 49, 192, 214, 31,
181, 199, 106, 157, 184, 84, 204, 176, 115, 121, 50, 45, 127, 4, 150, 254, 138, 236, 205, 93, 222, 114, 67, 29, 24, 72, 243, 141, 128, 195, 78, 66, 215, 61, 156, 180, 151, 160, 137, 91, 90, 15, 131, 13, 201, 95, 96, 53, 194, 233, 7, 225, 140, 36, 103, 30, 69, 142, 8, 99, 37, 240, 21, 10, 23, 190, 6, 148, 247, 120, 234, 75, 0, 26, 197, 62, 94, 252, 219, 203, 117, 35, 11, 32, 57, 177, 33, 88, 237, 149, 56, 87, 174, 20, 125, 136, 171, 168, 68, 175, 74, 165, 71, 134, 139, 48, 27, 166, 77, 146, 158, 231, 83, 111, 229, 122, 60, 211, 133, 230, 220, 105, 92, 41, 55, 46, 245, 40, 244, 102, 143, 54, 65, 25, 63, 161, 1, 216, 80, 73, 209, 76, 132,
187, 208, 89, 18, 169, 200, 196, 135, 130, 116, 188, 159, 86, 164, 100, 109, 198, 173, 186, 3, 64, 52, 217, 226, 250, 124, 123, 5, 202, 38, 147, 118, 126, 255, 82, 85, 212, 207, 206, 59, 227, 47, 16, 58, 17, 182, 189, 28, 42, 223, 183, 170, 213, 119, 248, 152, 2, 44, 154, 163, 70, 221, 153, 101, 155, 167, 43, 172, 9, 129, 22, 39, 253, 19, 98, 108, 110, 79, 113, 224, 232, 178, 185, 112, 104, 218, 246, 97, 228, 251, 34, 242, 193, 238, 210, 144, 12, 191, 179, 162, 241, 81, 51, 145, 235, 249, 14, 239, 107, 49, 192, 214, 31, 181, 199, 106, 157, 184, 84, 204, 176, 115, 121, 50, 45, 127, 4, 150, 254, 138, 236, 205, 93, 222, 114, 67, 29,
24, 72, 243, 141, 128, 195, 78, 66, 215, 61, 156, 180];
Wg.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Mm.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
fields: {overrideIntValues: {SuppressWarnings: ["checkstyle:Dynamic"]}}
};
cc.supportsVideoTexture = !0;
cc.__glDepthStencil = -1;
cc.__glMaxTextureMaxAnisotropy = -1;
cc.__glMaxViewportDims = -1;
cc.__glMemoryCurrentAvailable = -1;
cc.__glMemoryTotalAvailable = -1;
cc.__glTextureMaxAnisotropy = -1;
Pr.DYNAMIC_DRAW = 0;
Pr.STATIC_DRAW = 1;
Qr.FRAGMENT =
0;
Qr.VERTEX = 1;
ck.BGR_PACKED = 0;
ck.BGRA = 1;
ck.BGRA_PACKED = 2;
ck.COMPRESSED = 3;
ck.COMPRESSED_ALPHA = 4;
ck.RGBA_HALF_FLOAT = 5;
fn.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
dk.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Je.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Je.limitedProfile = !0;
Zi.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
gn.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
$i.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
hi.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
ek.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
ak.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
hc.__meta__ = {
fields: {
__textureContext: {SuppressWarnings: ["checkstyle:Dynamic"]},
__getGLFramebuffer: {SuppressWarnings: ["checkstyle:Dynamic"]}
}
};
gi.__lowMemoryMode = !1;
id.DEFAULT_TO_STRING = "Error";
ih.ACTIVITY = "activity";
kf.LINK = "link";
kf.TEXT_INPUT = "textInput";
Ze.ERROR = "error";
mj.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
lj.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
bg.FOCUS_IN = "focusIn";
bg.FOCUS_OUT = "focusOut";
bg.KEY_FOCUS_CHANGE = "keyFocusChange";
bg.MOUSE_FOCUS_CHANGE = "mouseFocusChange";
gh.FULL_SCREEN = "fullScreen";
gh.FULL_SCREEN_INTERACTIVE_ACCEPTED = "fullScreenInteractiveAccepted";
Jg.DEVICE_ADDED = "deviceAdded";
Jg.DEVICE_REMOVED = "deviceRemoved";
Jg.DEVICE_UNUSABLE = "deviceUnusable";
ii.HTTP_RESPONSE_STATUS = "httpResponseStatus";
ii.HTTP_STATUS = "httpStatus";
sg.IO_ERROR = "ioError";
ci.KEY_DOWN = "keyDown";
ci.KEY_UP = "keyUp";
Qb.CLICK = "click";
Qb.DOUBLE_CLICK = "doubleClick";
Qb.MIDDLE_CLICK = "middleClick";
Qb.MIDDLE_MOUSE_DOWN = "middleMouseDown";
Qb.MIDDLE_MOUSE_UP = "middleMouseUp";
Qb.MOUSE_DOWN = "mouseDown";
Qb.MOUSE_MOVE = "mouseMove";
Qb.MOUSE_OUT = "mouseOut";
Qb.MOUSE_OVER = "mouseOver";
Qb.MOUSE_UP = "mouseUp";
Qb.MOUSE_WHEEL = "mouseWheel";
Qb.RELEASE_OUTSIDE = "releaseOutside";
Qb.RIGHT_CLICK = "rightClick";
Qb.RIGHT_MOUSE_DOWN = "rightMouseDown";
Qb.RIGHT_MOUSE_UP = "rightMouseUp";
Qb.ROLL_OUT = "rollOut";
Qb.ROLL_OVER = "rollOver";
ji.NET_STATUS = "netStatus";
Hg.PROGRESS = "progress";
Hg.SOCKET_DATA = "socketData";
wg.CLEAR_DOM = "clearDOM";
wg.RENDER_CAIRO = "renderCairo";
wg.RENDER_CANVAS = "renderCanvas";
wg.RENDER_DOM = "renderDOM";
wg.RENDER_OPENGL = "renderOpenGL";
bj.SECURITY_ERROR = "securityError";
$d.__meta__ = {fields: {delta: {SuppressWarnings: ["checkstyle:FieldDocComment"]}}};
$d.TOUCH_BEGIN = "touchBegin";
$d.TOUCH_END = "touchEnd";
$d.TOUCH_MOVE = "touchMove";
$d.TOUCH_OUT = "touchOut";
$d.TOUCH_OVER = "touchOver";
$d.TOUCH_ROLL_OUT = "touchRollOut";
$d.TOUCH_ROLL_OVER =
"touchRollOver";
$d.TOUCH_TAP = "touchTap";
Vi.UNCAUGHT_ERROR = "uncaughtError";
fk.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
jg.__colorMatrixShader = new fk;
he.__meta__ = {
statics: {
create2D: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
createABCD: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
createOrtho: {SuppressWarnings: ["checkstyle:FieldDocComment"]}
}
};
xd.MAX_ACTIVE_CHANNELS = 32;
xd.__soundChannels = [];
xd.__soundTransform = new of;
jn.VERTEX_BUFFER_STRIDE = 5;
gk.__meta__ = {statics: {CONNECT_SUCCESS: {SuppressWarnings: ["checkstyle:FieldDocComment"]}}};
gk.CONNECT_SUCCESS = "NetConnection.Connect.Success";
kn.__meta__ = {
fields: {
audioCodec: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
decodedFrames: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
speed: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
requestVideoStatus: {SuppressWarnings: ["checkstyle:FieldDocComment"]}
}
};
qd.defaultObjectEncoding = 10;
Ih.followRedirects = !0;
Ih.idleTimeout = 0;
Ih.manageCookies = !1;
Si.currentDomain = new Si(null);
Cc.avHardwareDisable = !0;
Cc.hasAccessibility = !1;
Cc.hasAudio = !0;
Cc.hasAudioEncoder = !1;
Cc.hasEmbeddedVideo = !1;
Cc.hasIME = !1;
Cc.hasMP3 = !1;
Cc.hasPrinting = !0;
Cc.hasScreenBroadcast = !1;
Cc.hasScreenPlayback = !1;
Cc.hasStreamingAudio = !1;
Cc.hasStreamingVideo = !1;
Cc.hasTLS = !0;
Cc.hasVideoEncoder = !0;
Cc.isDebugger = !0;
Cc.isEmbeddedInAcrobat = !1;
Cc.localFileReadDisable = !0;
Cc.maxLevelIDC = 0;
Cc.playerType = "PlugIn";
Cc.screenColor = "color";
Cc.serverString = "";
Cc.supports32BitProcesses = !1;
Cc.supports64BitProcesses = !1;
Cc.touchscreenType = 0;
Cc.__standardDensities = [120, 160, 240, 320, 480, 640, 800,
960];
hk.__meta__ = {obj: {SuppressWarnings: ["checkstyle:UnnecessaryConstructor"]}};
hk.currentDomain = new hk;
fg.useCodePage = !1;
Wc.__fontByName = new xa;
Wc.__registeredFonts = [];
cf.__missingFontWarning = new xa;
Sg.__meta__ = {fields: {clone: {SuppressWarnings: ["checkstyle:FieldDocComment"]}}};
ik.CENTER = 0;
ik.END = 1;
ik.JUSTIFY = 2;
ik.LEFT = 3;
ik.RIGHT = 4;
ik.START = 5;
jp.__meta__ = {obj: {SuppressWarnings: [["checkstyle:FieldDocComment", "checkstyle:Dynamic"]]}};
Db.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Db.__regexAlign = new fb("align\\s?=\\s?(\"([^\"]+)\"|'([^']+)')", "i");
Db.__regexBreakTag = new fb("
", "gi");
Db.__regexBlockIndent = new fb("blockindent\\s?=\\s?(\"([^\"]+)\"|'([^']+)')", "i");
Db.__regexColor = new fb("color\\s?=\\s?(\"#([^\"]+)\"|'#([^']+)')", "i");
Db.__regexEntities = [new fb(""", "g"), new fb("'", "g"), new fb("&", "g"), new fb("<", "g"), new fb(">", "g"), new fb(" ", "g")];
Db.__regexFace = new fb("face\\s?=\\s?(\"([^\"]+)\"|'([^']+)')", "i");
Db.__regexHTMLTag = new fb("<.*?>",
"g");
Db.__regexHref = new fb("href\\s?=\\s?(\"([^\"]+)\"|'([^']+)')", "i");
Db.__regexIndent = new fb(" indent\\s?=\\s?(\"([^\"]+)\"|'([^']+)')", "i");
Db.__regexLeading = new fb("leading\\s?=\\s?(\"([^\"]+)\"|'([^']+)')", "i");
Db.__regexLeftMargin = new fb("leftmargin\\s?=\\s?(\"([^\"]+)\"|'([^']+)')", "i");
Db.__regexRightMargin = new fb("rightmargin\\s?=\\s?(\"([^\"]+)\"|'([^']+)')", "i");
Db.__regexSize = new fb("size\\s?=\\s?(\"([^\"]+)\"|'([^']+)')", "i");
Db.__regexTabStops = new fb("tabstops\\s?=\\s?(\"([^\"]+)\"|'([^']+)')",
"i");
Wb.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
fields: {__cairoFont: {SuppressWarnings: ["checkstyle:Dynamic"]}}
};
Wb.GUTTER = 2;
Wb.UTF8_TAB = 9;
Wb.UTF8_ENDLINE = 10;
Wb.UTF8_SPACE = 32;
Wb.UTF8_HYPHEN = 45;
Wb.__defaultFonts = new xa;
Yd.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}, fields: {
glyphs: {SuppressWarnings: ["checkstyle:Dynamic"]},
__handle: {SuppressWarnings: ["checkstyle:Dynamic"]},
__hbBuffer: {SuppressWarnings: ["checkstyle:Dynamic"]},
__hbFont: {SuppressWarnings: ["checkstyle:Dynamic"]},
get_glyphs: {SuppressWarnings: ["checkstyle:Dynamic"]}
}
};
Yd.FT_LOAD_DEFAULT = 0;
Yd.FT_LOAD_NO_SCALE = 1;
Yd.FT_LOAD_NO_HINTING = 2;
Yd.FT_LOAD_RENDER = 4;
Yd.FT_LOAD_NO_BITMAP = 8;
Yd.FT_LOAD_VERTICAL_LAYOUT = 16;
Yd.FT_LOAD_FORCE_AUTOHINT = 32;
Yd.FT_LOAD_CROP_BITMAP = 64;
Yd.FT_LOAD_PEDANTIC = 128;
Yd.FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH = 256;
Yd.FT_LOAD_NO_RECURSE = 512;
Yd.FT_LOAD_IGNORE_TRANSFORM = 1024;
Yd.FT_LOAD_MONOCHROME = 2048;
Yd.FT_LOAD_LINEAR_DESIGN = 4096;
Yd.FT_LOAD_NO_AUTOHINT = 8192;
Yd.FT_LOAD_COLOR = 16384;
Yd.FT_LOAD_COMPUTE_METRICS =
32768;
Yd.FT_LOAD_BITMAP_METRICS_ONLY = 65536;
Yd.FT_LOAD_TARGET_NORMAL = 0;
Yd.FT_LOAD_TARGET_LIGHT = 0;
ln.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
dc.__meta__ = {fields: {addEventListener: {SuppressWarnings: ["checkstyle:Dynamic"]}}};
dc.isSupported = !0;
dc.numDevices = 0;
dc.__deviceList = [];
dc.__instances = [];
dc.__devices = new Oc;
mn.MAX_BUFFER_SIZE = 32E3;
Fa.__meta__ = {
statics: {
BREAK: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
NUMLOCK: {SuppressWarnings: ["checkstyle:FieldDocComment"]}
}
};
Fa.NUMBER_0 =
48;
Fa.NUMBER_1 = 49;
Fa.NUMBER_2 = 50;
Fa.NUMBER_3 = 51;
Fa.NUMBER_4 = 52;
Fa.NUMBER_5 = 53;
Fa.NUMBER_6 = 54;
Fa.NUMBER_7 = 55;
Fa.NUMBER_8 = 56;
Fa.NUMBER_9 = 57;
Fa.A = 65;
Fa.B = 66;
Fa.C = 67;
Fa.D = 68;
Fa.E = 69;
Fa.F = 70;
Fa.G = 71;
Fa.H = 72;
Fa.I = 73;
Fa.J = 74;
Fa.K = 75;
Fa.L = 76;
Fa.M = 77;
Fa.N = 78;
Fa.O = 79;
Fa.P = 80;
Fa.Q = 81;
Fa.R = 82;
Fa.S = 83;
Fa.T = 84;
Fa.U = 85;
Fa.V = 86;
Fa.W = 87;
Fa.X = 88;
Fa.Y = 89;
Fa.Z = 90;
Fa.NUMPAD_0 = 96;
Fa.NUMPAD_1 = 97;
Fa.NUMPAD_2 = 98;
Fa.NUMPAD_3 = 99;
Fa.NUMPAD_4 = 100;
Fa.NUMPAD_5 = 101;
Fa.NUMPAD_6 = 102;
Fa.NUMPAD_7 = 103;
Fa.NUMPAD_8 = 104;
Fa.NUMPAD_9 = 105;
Fa.NUMPAD_MULTIPLY = 106;
Fa.NUMPAD_ADD = 107;
Fa.NUMPAD_ENTER = 108;
Fa.NUMPAD_SUBTRACT = 109;
Fa.NUMPAD_DECIMAL = 110;
Fa.NUMPAD_DIVIDE = 111;
Fa.F1 = 112;
Fa.F2 = 113;
Fa.F3 = 114;
Fa.F4 = 115;
Fa.F5 = 116;
Fa.F6 = 117;
Fa.F7 = 118;
Fa.F8 = 119;
Fa.F9 = 120;
Fa.F10 = 121;
Fa.F11 = 122;
Fa.F12 = 123;
Fa.F13 = 124;
Fa.F14 = 125;
Fa.F15 = 126;
Fa.BACKSPACE = 8;
Fa.TAB = 9;
Fa.ALTERNATE = 18;
Fa.ENTER = 13;
Fa.COMMAND = 15;
Fa.SHIFT = 16;
Fa.CONTROL = 17;
Fa.BREAK = 19;
Fa.CAPS_LOCK = 20;
Fa.NUMPAD = 21;
Fa.ESCAPE = 27;
Fa.SPACE = 32;
Fa.PAGE_UP = 33;
Fa.PAGE_DOWN = 34;
Fa.END = 35;
Fa.HOME = 36;
Fa.LEFT = 37;
Fa.RIGHT = 39;
Fa.UP = 38;
Fa.DOWN = 40;
Fa.INSERT = 45;
Fa.DELETE = 46;
Fa.NUMLOCK = 144;
Fa.SEMICOLON = 186;
Fa.EQUAL = 187;
Fa.COMMA = 188;
Fa.MINUS = 189;
Fa.PERIOD = 190;
Fa.SLASH = 191;
Fa.BACKQUOTE = 192;
Fa.LEFTBRACKET = 219;
Fa.BACKSLASH = 220;
Fa.RIGHTBRACKET = 221;
Fa.QUOTE = 222;
ve.supportsCursor = !0;
ve.supportsNativeCursor = !0;
ve.__cursor = "auto";
Bf.ARROW = "arrow";
Bf.AUTO = "auto";
Bf.BUTTON = "button";
Bf.HAND = "hand";
Bf.IBEAM = "ibeam";
Bf.__CROSSHAIR = "crosshair";
Bf.__CUSTOM = "custom";
Bf.__MOVE = "move";
Bf.__RESIZE_NESW = "resize_nesw";
Bf.__RESIZE_NS =
"resize_ns";
Bf.__RESIZE_NWSE = "resize_nwse";
Bf.__RESIZE_WE = "resize_we";
Bf.__WAIT = "wait";
Bf.__WAIT_ARROW = "waitarrow";
W.__meta__ = {obj: {SuppressWarnings: [["checkstyle:ConstantName", "checkstyle:FieldDocComment"]]}};
W.OPMAP = new xa;
W.REGMAP = new xa;
W.SAMPLEMAP = new xa;
W.MAX_NESTING = 4;
W.MAX_OPCODES = 4096;
W.FRAGMENT = "fragment";
W.VERTEX = "vertex";
W.SAMPLER_TYPE_SHIFT = 8;
W.SAMPLER_DIM_SHIFT = 12;
W.SAMPLER_SPECIAL_SHIFT = 16;
W.SAMPLER_REPEAT_SHIFT = 20;
W.SAMPLER_MIPMAP_SHIFT = 24;
W.SAMPLER_FILTER_SHIFT = 28;
W.REG_WRITE = 1;
W.REG_READ =
2;
W.REG_FRAG = 32;
W.REG_VERT = 64;
W.OP_SCALAR = 1;
W.OP_SPECIAL_TEX = 8;
W.OP_SPECIAL_MATRIX = 16;
W.OP_FRAG_ONLY = 32;
W.OP_VERT_ONLY = 64;
W.OP_NO_DEST = 128;
W.OP_VERSION2 = 256;
W.OP_INCNEST = 512;
W.OP_DECNEST = 1024;
W.MOV = "mov";
W.ADD = "add";
W.SUB = "sub";
W.MUL = "mul";
W.DIV = "div";
W.RCP = "rcp";
W.MIN = "min";
W.MAX = "max";
W.FRC = "frc";
W.SQT = "sqt";
W.RSQ = "rsq";
W.POW = "pow";
W.LOG = "log";
W.EXP = "exp";
W.NRM = "nrm";
W.SIN = "sin";
W.COS = "cos";
W.CRS = "crs";
W.DP3 = "dp3";
W.DP4 = "dp4";
W.ABS = "abs";
W.NEG = "neg";
W.SAT = "sat";
W.M33 = "m33";
W.M44 = "m44";
W.M34 = "m34";
W.DDX = "ddx";
W.DDY = "ddy";
W.IFE = "ife";
W.INE = "ine";
W.IFG = "ifg";
W.IFL = "ifl";
W.IEG = "ieg";
W.IEL = "iel";
W.ELS = "els";
W.EIF = "eif";
W.TED = "ted";
W.KIL = "kil";
W.TEX = "tex";
W.SGE = "sge";
W.SLT = "slt";
W.SGN = "sgn";
W.SEQ = "seq";
W.SNE = "sne";
W.VA = "va";
W.VC = "vc";
W.VT = "vt";
W.VO = "vo";
W.VI = "vi";
W.FC = "fc";
W.FT = "ft";
W.FS = "fs";
W.FO = "fo";
W.FD = "fd";
W.IID = "iid";
W.D2 = "2d";
W.D3 = "3d";
W.CUBE = "cube";
W.MIPNEAREST = "mipnearest";
W.MIPLINEAR = "miplinear";
W.MIPNONE = "mipnone";
W.NOMIP = "nomip";
W.NEAREST = "nearest";
W.LINEAR = "linear";
W.ANISOTROPIC2X =
"anisotropic2x";
W.ANISOTROPIC4X = "anisotropic4x";
W.ANISOTROPIC8X = "anisotropic8x";
W.ANISOTROPIC16X = "anisotropic16x";
W.CENTROID = "centroid";
W.SINGLE = "single";
W.IGNORESAMPLER = "ignoresampler";
W.REPEAT = "repeat";
W.WRAP = "wrap";
W.CLAMP = "clamp";
W.REPEAT_U_CLAMP_V = "repeat_u_clamp_v";
W.CLAMP_U_REPEAT_V = "clamp_u_repeat_v";
W.RGBA = "rgba";
W.COMPRESSED = "compressed";
W.COMPRESSEDALPHA = "compressedalpha";
W.DXT1 = "dxt1";
W.DXT5 = "dxt5";
W.VIDEO = "video";
W.initialized = !1;
ec.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
tf.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
cd.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Da.cache = new on;
Da.dispatcher = new jb;
Fb.__bytePointer = new Xf(null, 0);
uc.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
uc.defaultObjectEncoding = 10;
gj.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
ej.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
fj.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Xr.BIG_ENDIAN = 0;
Xr.LITTLE_ENDIAN = 1;
rn.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
sn.__meta__ = {obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]}};
Ic.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
statics: {notImplemented: {SuppressWarnings: ["checkstyle:NullableParameter"]}}
};
Ic.__sentWarnings = new xa;
di.__meta__ = {
obj: {SuppressWarnings: ["checkstyle:FieldDocComment"]},
fields: {touch: {SuppressWarnings: ["checkstyle:Dynamic"]}}
};
di.__pool = new yd(function () {
return new di
},
function (a) {
a.reset()
});
Mg.VAL_ABSENT = -2147483648;
Mg.EMPTY_SLOT = -1;
Mg.NULL_POINTER = -1;
vg.KEY_ABSENT = -2147483648;
vg.VAL_ABSENT = -2147483648;
vg.EMPTY_SLOT = -1;
vg.NULL_POINTER = -1;
gb.DEFAULT_PRECISION = 6;
gb.DEFAULT_NUM_EXP_DIGITS = 2;
gb._initialized = !1;
gb.PAD_0 = 0;
gb.PAD_SPACE = 20;
Kg.FIXED = 0;
Kg.MILD = -1;
Kg.NORMAL = -2;
Kg.DOUBLE = -3;
Nb.PI = 3.141592653589793;
Nb.PI_H = 1.5707963267948966;
Nb.LN_2 = .6931471805599453;
Nb.LN_2_10 = 6.931471805599453;
Nb.overshoot = 1.70158;
Nb.amplitude = 1;
Nb.period = 3E-4;
Aa.main()
})("undefined" !=
typeof y ? y : "undefined" != typeof window ? window : "undefined" != typeof self ? self : this, "undefined" != typeof window ? window : "undefined" != typeof H ? H : "undefined" != typeof self ? self : this)
};
la.lime.embed = function (R) {
var H = {}, Q = la.lime.$scripts[R];
if (!Q) throw Error('Cannot find project name "' + R + '"');
Q(H, y);
for (var ia in H) la[ia] = la[ia] || H[ia];
(Q = H.lime || window.lime) && Q.embed && this != Q.embed && Q.embed.apply(Q, arguments);
return H
};
"function" == typeof define && define.amd && (define([], function () {
return la.lime
}), define.__amd =
define.amd, define.amd = null)
})("undefined" != typeof exports ? exports : "function" == typeof define && define.amd ? {} : "undefined" != typeof window ? window : "undefined" != typeof self ? self : this, "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : this);
!function () {
var la = function () {
this.init()
};
la.prototype = {
init: function () {
var k = this || y;
return k._counter = 1E3, k._html5AudioPool = [], k.html5PoolSize = 10, k._codecs = {}, k._howls = [], k._muted = !1, k._volume = 1, k._canPlayEvent = "canplaythrough", k._navigator = "undefined" != typeof window && window.navigator ? window.navigator : null, k.masterGain = null, k.noAudio = !1, k.usingWebAudio = !0, k.autoSuspend = !0, k.ctx = null, k.autoUnlock = !0, k._setup(), k
}, volume: function (t) {
var q = this || y;
if (t = parseFloat(t), q.ctx || k(), void 0 !== t && 0 <= t && 1 >=
t) {
if (q._volume = t, q._muted) return q;
q.usingWebAudio && q.masterGain.gain.setValueAtTime(t, y.ctx.currentTime);
for (var u = 0; u < q._howls.length; u++) if (!q._howls[u]._webAudio) for (var Aa = q._howls[u]._getSoundIds(), fb = 0; fb < Aa.length; fb++) {
var za = q._howls[u]._soundById(Aa[fb]);
za && za._node && (za._node.volume = za._volume * t)
}
return q
}
return q._volume
}, mute: function (t) {
var q = this || y;
q.ctx || k();
q._muted = t;
q.usingWebAudio && q.masterGain.gain.setValueAtTime(t ? 0 : q._volume, y.ctx.currentTime);
for (var u = 0; u < q._howls.length; u++) if (!q._howls[u]._webAudio) for (var Aa =
q._howls[u]._getSoundIds(), fb = 0; fb < Aa.length; fb++) {
var za = q._howls[u]._soundById(Aa[fb]);
za && za._node && (za._node.muted = !!t || za._muted)
}
return q
}, unload: function () {
for (var t = this || y, q = t._howls.length - 1; 0 <= q; q--) t._howls[q].unload();
return t.usingWebAudio && t.ctx && void 0 !== t.ctx.close && (t.ctx.close(), t.ctx = null, k()), t
}, codecs: function (k) {
return (this || y)._codecs[k.replace(/^x-/, "")]
}, _setup: function () {
var k = this || y;
if (k.state = k.ctx ? k.ctx.state || "suspended" : "suspended", k._autoSuspend(), !k.usingWebAudio) if ("undefined" !=
typeof Audio) try {
var q = new Audio;
void 0 === q.oncanplaythrough && (k._canPlayEvent = "canplay")
} catch (x) {
k.noAudio = !0
} else k.noAudio = !0;
try {
q = new Audio, q.muted && (k.noAudio = !0)
} catch (x) {
}
return k.noAudio || k._setupCodecs(), k
}, _setupCodecs: function () {
var k = this || y, q = null;
try {
q = "undefined" != typeof Audio ? new Audio : null
} catch (fb) {
return k
}
if (!q || "function" != typeof q.canPlayType) return k;
var u = q.canPlayType("audio/mpeg;").replace(/^no$/, ""),
Aa = k._navigator && k._navigator.userAgent.match(/OPR\/([0-6].)/g);
Aa = Aa &&
33 > parseInt(Aa[0].split("/")[1], 10);
return k._codecs = {
mp3: !(Aa || !u && !q.canPlayType("audio/mp3;").replace(/^no$/, "")),
mpeg: !!u,
opus: !!q.canPlayType('audio/ogg; codecs="opus"').replace(/^no$/, ""),
ogg: !!q.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/, ""),
oga: !!q.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/, ""),
wav: !!q.canPlayType('audio/wav; codecs="1"').replace(/^no$/, ""),
aac: !!q.canPlayType("audio/aac;").replace(/^no$/, ""),
caf: !!q.canPlayType("audio/x-caf;").replace(/^no$/, ""),
m4a: !!(q.canPlayType("audio/x-m4a;") || q.canPlayType("audio/m4a;") || q.canPlayType("audio/aac;")).replace(/^no$/, ""),
mp4: !!(q.canPlayType("audio/x-mp4;") || q.canPlayType("audio/mp4;") || q.canPlayType("audio/aac;")).replace(/^no$/, ""),
weba: !!q.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/, ""),
webm: !!q.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/, ""),
dolby: !!q.canPlayType('audio/mp4; codecs="ec-3"').replace(/^no$/, ""),
flac: !!(q.canPlayType("audio/x-flac;") || q.canPlayType("audio/flac;")).replace(/^no$/,
"")
}, k
}, _unlockAudio: function () {
var k = this || y,
q = /iPhone|iPad|iPod|Android|BlackBerry|BB10|Silk|Mobi|Chrome|Safari/i.test(k._navigator && k._navigator.userAgent);
if (!k._audioUnlocked && k.ctx && q) {
k._audioUnlocked = !1;
k.autoUnlock = !1;
k._mobileUnloaded || 44100 === k.ctx.sampleRate || (k._mobileUnloaded = !0, k.unload());
k._scratchBuffer = k.ctx.createBuffer(1, 1, 22050);
var u = function (t) {
for (t = 0; t < k.html5PoolSize; t++) {
var q = new Audio;
q._unlocked = !0;
k._releaseHtml5Audio(q)
}
for (t = 0; t < k._howls.length; t++) if (!k._howls[t]._webAudio) {
q =
k._howls[t]._getSoundIds();
for (var x = 0; x < q.length; x++) {
var A = k._howls[t]._soundById(q[x]);
A && A._node && !A._node._unlocked && (A._node._unlocked = !0, A._node.load())
}
}
k._autoResume();
var y = k.ctx.createBufferSource();
y.buffer = k._scratchBuffer;
y.connect(k.ctx.destination);
void 0 === y.start ? y.noteOn(0) : y.start(0);
"function" == typeof k.ctx.resume && k.ctx.resume();
y.onended = function () {
y.disconnect(0);
k._audioUnlocked = !0;
document.removeEventListener("touchstart", u, !0);
document.removeEventListener("touchend", u, !0);
document.removeEventListener("click", u, !0);
for (var t = 0; t < k._howls.length; t++) k._howls[t]._emit("unlock")
}
};
return document.addEventListener("touchstart", u, !0), document.addEventListener("touchend", u, !0), document.addEventListener("click", u, !0), k
}
}, _obtainHtml5Audio: function () {
var k = this || y;
if (k._html5AudioPool.length) return k._html5AudioPool.pop();
k = (new Audio).play();
return k && "undefined" != typeof Promise && (k instanceof Promise || "function" == typeof k.then) && k.catch(function () {
console.warn("HTML5 Audio pool exhausted, returning potentially locked audio object.")
}),
new Audio
}, _releaseHtml5Audio: function (k) {
var t = this || y;
return k._unlocked && t._html5AudioPool.push(k), t
}, _autoSuspend: function () {
var k = this;
if (k.autoSuspend && k.ctx && void 0 !== k.ctx.suspend && y.usingWebAudio) {
for (var q = 0; q < k._howls.length; q++) if (k._howls[q]._webAudio) for (var u = 0; u < k._howls[q]._sounds.length; u++) if (!k._howls[q]._sounds[u]._paused) return k;
return k._suspendTimer && clearTimeout(k._suspendTimer), k._suspendTimer = setTimeout(function () {
k.autoSuspend && (k._suspendTimer = null, k.state = "suspending",
k.ctx.suspend().then(function () {
k.state = "suspended";
k._resumeAfterSuspend && (delete k._resumeAfterSuspend, k._autoResume())
}))
}, 3E4), k
}
}, _autoResume: function () {
var k = this;
if (k.ctx && void 0 !== k.ctx.resume && y.usingWebAudio) return "running" === k.state && k._suspendTimer ? (clearTimeout(k._suspendTimer), k._suspendTimer = null) : "suspended" === k.state ? (k.ctx.resume().then(function () {
k.state = "running";
for (var t = 0; t < k._howls.length; t++) k._howls[t]._emit("resume")
}), k._suspendTimer && (clearTimeout(k._suspendTimer), k._suspendTimer =
null)) : "suspending" === k.state && (k._resumeAfterSuspend = !0), k
}
};
var y = new la, R = function (k) {
if (!k.src || 0 === k.src.length) return void console.error("An array of source files must be passed with any new Howl.");
this.init(k)
};
R.prototype = {
init: function (t) {
var q = this;
return y.ctx || k(), q._autoplay = t.autoplay || !1, q._format = "string" != typeof t.format ? t.format : [t.format], q._html5 = t.html5 || !1, q._muted = t.mute || !1, q._loop = t.loop || !1, q._pool = t.pool || 5, q._preload = "boolean" != typeof t.preload || t.preload, q._rate = t.rate ||
1, q._sprite = t.sprite || {}, q._src = "string" != typeof t.src ? t.src : [t.src], q._volume = void 0 !== t.volume ? t.volume : 1, q._xhrWithCredentials = t.xhrWithCredentials || !1, q._duration = 0, q._state = "unloaded", q._sounds = [], q._endTimers = {}, q._queue = [], q._playLock = !1, q._onend = t.onend ? [{fn: t.onend}] : [], q._onfade = t.onfade ? [{fn: t.onfade}] : [], q._onload = t.onload ? [{fn: t.onload}] : [], q._onloaderror = t.onloaderror ? [{fn: t.onloaderror}] : [], q._onplayerror = t.onplayerror ? [{fn: t.onplayerror}] : [], q._onpause = t.onpause ? [{fn: t.onpause}] : [],
q._onplay = t.onplay ? [{fn: t.onplay}] : [], q._onstop = t.onstop ? [{fn: t.onstop}] : [], q._onmute = t.onmute ? [{fn: t.onmute}] : [], q._onvolume = t.onvolume ? [{fn: t.onvolume}] : [], q._onrate = t.onrate ? [{fn: t.onrate}] : [], q._onseek = t.onseek ? [{fn: t.onseek}] : [], q._onunlock = t.onunlock ? [{fn: t.onunlock}] : [], q._onresume = [], q._webAudio = y.usingWebAudio && !q._html5, void 0 !== y.ctx && y.ctx && y.autoUnlock && y._unlockAudio(), y._howls.push(q), q._autoplay && q._queue.push({
event: "play",
action: function () {
q.play()
}
}), q._preload && q.load(), q
}, load: function () {
var k =
null;
if (y.noAudio) return void this._emit("loaderror", null, "No audio support.");
"string" == typeof this._src && (this._src = [this._src]);
for (var q = 0; q < this._src.length; q++) {
var u;
if (this._format && this._format[q]) var Aa = this._format[q]; else {
if ("string" != typeof (u = this._src[q])) {
this._emit("loaderror", null, "Non-string found in selected audio sources - ignoring.");
continue
}
(Aa = /^data:audio\/([^;,]+);/i.exec(u)) || (Aa = /\.([^.]+)$/.exec(u.split("?", 1)[0]));
Aa && (Aa = Aa[1].toLowerCase())
}
if (Aa || console.warn('No file extension was found. Consider using the "format" property or specify an extension.'),
Aa && y.codecs(Aa)) {
k = this._src[q];
break
}
}
return k ? (this._src = k, this._state = "loading", "https:" === window.location.protocol && "http:" === k.slice(0, 5) && (this._html5 = !0, this._webAudio = !1), new H(this), this._webAudio && ia(this), this) : void this._emit("loaderror", null, "No codec support for selected audio sources.")
}, play: function (k, q) {
var t = this, u = null;
if ("number" == typeof k) u = k, k = null; else {
if ("string" == typeof k && "loaded" === t._state && !t._sprite[k]) return null;
if (void 0 === k && (k = "__default", !t._playLock)) {
for (var A =
0, za = 0; za < t._sounds.length; za++) t._sounds[za]._paused && !t._sounds[za]._ended && (A++, u = t._sounds[za]._id);
1 === A ? k = null : u = null
}
}
var K = u ? t._soundById(u) : t._inactiveSound();
if (!K) return null;
if (u && !k && (k = K._sprite || "__default"), "loaded" !== t._state) {
K._sprite = k;
K._ended = !1;
var H = K._id;
return t._queue.push({
event: "play", action: function () {
t.play(H)
}
}), H
}
if (u && !K._paused) return q || t._loadQueue("play"), K._id;
t._webAudio && y._autoResume();
var Q = Math.max(0, 0 < K._seek ? K._seek : t._sprite[k][0] / 1E3), R = Math.max(0, (t._sprite[k][0] +
t._sprite[k][1]) / 1E3 - Q), la = 1E3 * R / Math.abs(K._rate), V = t._sprite[k][0] / 1E3,
z = (t._sprite[k][0] + t._sprite[k][1]) / 1E3, ia = !(!K._loop && !t._sprite[k][2]);
K._sprite = k;
K._ended = !1;
var Sa = function () {
K._paused = !1;
K._seek = Q;
K._start = V;
K._stop = z;
K._loop = ia
};
if (Q >= z) return void t._ended(K);
var T = K._node;
if (t._webAudio) u = function () {
t._playLock = !1;
Sa();
t._refreshBuffer(K);
T.gain.setValueAtTime(K._muted || t._muted ? 0 : K._volume, y.ctx.currentTime);
K._playStart = y.ctx.currentTime;
void 0 === T.bufferSource.start ? K._loop ? T.bufferSource.noteGrainOn(0,
Q, 86400) : T.bufferSource.noteGrainOn(0, Q, R) : K._loop ? T.bufferSource.start(0, Q, 86400) : T.bufferSource.start(0, Q, R);
la !== 1 / 0 && (t._endTimers[K._id] = setTimeout(t._ended.bind(t, K), la));
q || setTimeout(function () {
t._emit("play", K._id);
t._loadQueue()
}, 0)
}, "running" === y.state ? u() : (t._playLock = !0, t.once("resume", u), t._clearTimer(K._id)); else {
var xb = function () {
T.currentTime = Q;
T.muted = K._muted || t._muted || y._muted || T.muted;
T.volume = K._volume * y.volume();
T.playbackRate = K._rate;
try {
var u = T.play();
if (u && "undefined" !=
typeof Promise && (u instanceof Promise || "function" == typeof u.then) ? (t._playLock = !0, Sa(), u.then(function () {
t._playLock = !1;
T._unlocked = !0;
q || (t._emit("play", K._id), t._loadQueue())
}).catch(function () {
t._playLock = !1;
t._emit("playerror", K._id, "Playback was unable to start. This is most commonly an issue on mobile devices and Chrome where playback was not within a user interaction.");
K._ended = !0;
K._paused = !0
})) : q || (t._playLock = !1, Sa(), t._emit("play", K._id), t._loadQueue()), T.playbackRate = K._rate, T.paused) return void t._emit("playerror",
K._id, "Playback was unable to start. This is most commonly an issue on mobile devices and Chrome where playback was not within a user interaction.");
"__default" !== k || K._loop ? t._endTimers[K._id] = setTimeout(t._ended.bind(t, K), la) : (t._endTimers[K._id] = function () {
t._ended(K);
T.removeEventListener("ended", t._endTimers[K._id], !1)
}, T.addEventListener("ended", t._endTimers[K._id], !1))
} catch (te) {
t._emit("playerror", K._id, te)
}
};
u = window && window.ejecta || !T.readyState && y._navigator.isCocoonJS;
if (3 <= T.readyState ||
u) xb(); else {
t._playLock = !0;
var Ha = function () {
xb();
T.removeEventListener(y._canPlayEvent, Ha, !1)
};
T.addEventListener(y._canPlayEvent, Ha, !1);
t._clearTimer(K._id)
}
}
return K._id
}, pause: function (k, q) {
var t = this;
if ("loaded" !== t._state || t._playLock) return t._queue.push({
event: "pause", action: function () {
t.pause(k)
}
}), t;
for (var u = t._getSoundIds(k), A = 0; A < u.length; A++) {
t._clearTimer(u[A]);
var y = t._soundById(u[A]);
if (y && !y._paused && (y._seek = t.seek(u[A]), y._rateSeek = 0, y._paused = !0, t._stopFade(u[A]), y._node)) if (t._webAudio) {
if (!y._node.bufferSource) continue;
void 0 === y._node.bufferSource.stop ? y._node.bufferSource.noteOff(0) : y._node.bufferSource.stop(0);
t._cleanBuffer(y._node)
} else isNaN(y._node.duration) && y._node.duration !== 1 / 0 || y._node.pause();
q || t._emit("pause", y ? y._id : null)
}
return t
}, stop: function (k, q) {
var t = this;
if ("loaded" !== t._state || t._playLock) return t._queue.push({
event: "stop", action: function () {
t.stop(k)
}
}), t;
for (var u = t._getSoundIds(k), A = 0; A < u.length; A++) {
t._clearTimer(u[A]);
var y = t._soundById(u[A]);
y && (y._seek = y._start || 0, y._rateSeek = 0, y._paused =
!0, y._ended = !0, t._stopFade(u[A]), y._node && (t._webAudio ? y._node.bufferSource && (void 0 === y._node.bufferSource.stop ? y._node.bufferSource.noteOff(0) : y._node.bufferSource.stop(0), t._cleanBuffer(y._node)) : isNaN(y._node.duration) && y._node.duration !== 1 / 0 || (y._node.currentTime = y._start || 0, y._node.pause())), q || t._emit("stop", y._id))
}
return t
}, mute: function (k, q) {
var t = this;
if ("loaded" !== t._state || t._playLock) return t._queue.push({
event: "mute", action: function () {
t.mute(k, q)
}
}), t;
if (void 0 === q) {
if ("boolean" != typeof k) return t._muted;
t._muted = k
}
for (var u = t._getSoundIds(q), A = 0; A < u.length; A++) {
var H = t._soundById(u[A]);
H && (H._muted = k, H._interval && t._stopFade(H._id), t._webAudio && H._node ? H._node.gain.setValueAtTime(k ? 0 : H._volume, y.ctx.currentTime) : H._node && (H._node.muted = !!y._muted || k), t._emit("mute", H._id))
}
return t
}, volume: function () {
var k, q, u = this, H = arguments;
if (0 === H.length) return u._volume;
1 === H.length || 2 === H.length && void 0 === H[1] ? 0 <= u._getSoundIds().indexOf(H[0]) ? q = parseInt(H[0], 10) : k = parseFloat(H[0]) : 2 <= H.length && (k = parseFloat(H[0]),
q = parseInt(H[1], 10));
var Q;
if (!(void 0 !== k && 0 <= k && 1 >= k)) return Q = q ? u._soundById(q) : u._sounds[0], Q ? Q._volume : 0;
if ("loaded" !== u._state || u._playLock) return u._queue.push({
event: "volume", action: function () {
u.volume.apply(u, H)
}
}), u;
void 0 === q && (u._volume = k);
q = u._getSoundIds(q);
for (var za = 0; za < q.length; za++) (Q = u._soundById(q[za])) && (Q._volume = k, H[2] || u._stopFade(q[za]), u._webAudio && Q._node && !Q._muted ? Q._node.gain.setValueAtTime(k, y.ctx.currentTime) : Q._node && !Q._muted && (Q._node.volume = k * y.volume()), u._emit("volume",
Q._id));
return u
}, fade: function (k, q, u, H) {
var t = this;
if ("loaded" !== t._state || t._playLock) return t._queue.push({
event: "fade", action: function () {
t.fade(k, q, u, H)
}
}), t;
k = parseFloat(k);
q = parseFloat(q);
u = parseFloat(u);
t.volume(k, H);
for (var x = t._getSoundIds(H), A = 0; A < x.length; A++) {
var Q = t._soundById(x[A]);
if (Q) {
if (H || t._stopFade(x[A]), t._webAudio && !Q._muted) {
var Aa = y.ctx.currentTime, R = Aa + u / 1E3;
Q._volume = k;
Q._node.gain.setValueAtTime(k, Aa);
Q._node.gain.linearRampToValueAtTime(q, R)
}
t._startFadeInterval(Q, k, q,
u, x[A], void 0 === H)
}
}
return t
}, _startFadeInterval: function (k, q, u, y, H, Q) {
var t = this, x = q, A = u - q;
H = Math.abs(A / .01);
H = Math.max(4, 0 < H ? y / H : y);
var Aa = Date.now();
k._fadeTo = u;
k._interval = setInterval(function () {
var K = (Date.now() - Aa) / y;
Aa = Date.now();
x += A * K;
x = Math.max(0, x);
x = Math.min(1, x);
x = Math.round(100 * x) / 100;
t._webAudio ? k._volume = x : t.volume(x, k._id, !0);
Q && (t._volume = x);
(u < q && x <= u || u > q && x >= u) && (clearInterval(k._interval), k._interval = null, k._fadeTo = null, t.volume(u, k._id), t._emit("fade", k._id))
}, H)
}, _stopFade: function (k) {
var t =
this._soundById(k);
return t && t._interval && (this._webAudio && t._node.gain.cancelScheduledValues(y.ctx.currentTime), clearInterval(t._interval), t._interval = null, this.volume(t._fadeTo, k), t._fadeTo = null, this._emit("fade", k)), this
}, loop: function () {
var k, q, u, y = arguments;
if (0 === y.length) return this._loop;
if (1 === y.length) {
if ("boolean" != typeof y[0]) return !!(u = this._soundById(parseInt(y[0], 10))) && u._loop;
this._loop = k = y[0]
} else 2 === y.length && (k = y[0], q = parseInt(y[1], 10));
q = this._getSoundIds(q);
for (y = 0; y < q.length; y++) (u =
this._soundById(q[y])) && (u._loop = k, this._webAudio && u._node && u._node.bufferSource && (u._node.bufferSource.loop = k, k && (u._node.bufferSource.loopStart = u._start || 0, u._node.bufferSource.loopEnd = u._stop)));
return this
}, rate: function () {
var k, q, u = this, H = arguments;
0 === H.length ? q = u._sounds[0]._id : 1 === H.length ? 0 <= u._getSoundIds().indexOf(H[0]) ? q = parseInt(H[0], 10) : k = parseFloat(H[0]) : 2 === H.length && (k = parseFloat(H[0]), q = parseInt(H[1], 10));
var Q;
if ("number" != typeof k) return Q = u._soundById(q), Q ? Q._rate : u._rate;
if ("loaded" !==
u._state || u._playLock) return u._queue.push({
event: "rate", action: function () {
u.rate.apply(u, H)
}
}), u;
void 0 === q && (u._rate = k);
q = u._getSoundIds(q);
for (var R = 0; R < q.length; R++) if (Q = u._soundById(q[R])) {
u.playing(q[R]) && (Q._rateSeek = u.seek(q[R]), Q._playStart = u._webAudio ? y.ctx.currentTime : Q._playStart);
Q._rate = k;
u._webAudio && Q._node && Q._node.bufferSource ? Q._node.bufferSource.playbackRate.setValueAtTime(k, y.ctx.currentTime) : Q._node && (Q._node.playbackRate = k);
var K = u.seek(q[R]);
K = 1E3 * ((u._sprite[Q._sprite][0] +
u._sprite[Q._sprite][1]) / 1E3 - K) / Math.abs(Q._rate);
!u._endTimers[q[R]] && Q._paused || (u._clearTimer(q[R]), u._endTimers[q[R]] = setTimeout(u._ended.bind(u, Q), K));
u._emit("rate", Q._id)
}
return u
}, seek: function () {
var k, q, u = this, H = arguments;
0 === H.length ? q = u._sounds[0]._id : 1 === H.length ? 0 <= u._getSoundIds().indexOf(H[0]) ? q = parseInt(H[0], 10) : u._sounds.length && (q = u._sounds[0]._id, k = parseFloat(H[0])) : 2 === H.length && (k = parseFloat(H[0]), q = parseInt(H[1], 10));
if (void 0 === q) return u;
if ("loaded" !== u._state || u._playLock) return u._queue.push({
event: "seek",
action: function () {
u.seek.apply(u, H)
}
}), u;
var Q = u._soundById(q);
if (Q) {
if (!("number" == typeof k && 0 <= k)) return u._webAudio ? (k = u.playing(q) ? y.ctx.currentTime - Q._playStart : 0, Q._seek + ((Q._rateSeek ? Q._rateSeek - Q._seek : 0) + k * Math.abs(Q._rate))) : Q._node.currentTime;
var R = u.playing(q);
R && u.pause(q, !0);
Q._seek = k;
Q._ended = !1;
u._clearTimer(q);
u._webAudio || !Q._node || isNaN(Q._node.duration) || (Q._node.currentTime = k);
var K = function () {
u._emit("seek", q);
R && u.play(q, !0)
};
if (R && !u._webAudio) {
var la = function () {
u._playLock ?
setTimeout(la, 0) : K()
};
setTimeout(la, 0)
} else K()
}
return u
}, playing: function (k) {
if ("number" == typeof k) return k = this._soundById(k), !!k && !k._paused;
for (k = 0; k < this._sounds.length; k++) if (!this._sounds[k]._paused) return !0;
return !1
}, duration: function (k) {
var q = this._duration;
k = this._soundById(k);
return k && (q = this._sprite[k._sprite][1] / 1E3), q
}, state: function () {
return this._state
}, unload: function () {
for (var k = this._sounds, q = 0; q < k.length; q++) (k[q]._paused || this.stop(k[q]._id), this._webAudio) || (/MSIE |Trident\//.test(y._navigator &&
y._navigator.userAgent) || (k[q]._node.src = "data:audio/wav;base64,UklGRigAAABXQVZFZm10IBIAAAABAAEARKwAAIhYAQACABAAAABkYXRhAgAAAAEA"), k[q]._node.removeEventListener("error", k[q]._errorFn, !1), k[q]._node.removeEventListener(y._canPlayEvent, k[q]._loadFn, !1), y._releaseHtml5Audio(k[q]._node)), delete k[q]._node, this._clearTimer(k[q]._id);
q = y._howls.indexOf(this);
0 <= q && y._howls.splice(q, 1);
k = !0;
for (q = 0; q < y._howls.length; q++) if (y._howls[q]._src === this._src || 0 <= this._src.indexOf(y._howls[q]._src)) {
k = !1;
break
}
return Q &&
k && delete Q[this._src], y.noAudio = !1, this._state = "unloaded", this._sounds = [], null
}, on: function (k, q, u, y) {
k = this["_on" + k];
return "function" == typeof q && k.push(y ? {id: u, fn: q, once: y} : {id: u, fn: q}), this
}, off: function (k, q, u) {
var t = this["_on" + k];
if ("number" == typeof q && (u = q, q = null), q || u) for (k = 0; k < t.length; k++) {
var x = u === t[k].id;
if (q === t[k].fn && x || !q && x) {
t.splice(k, 1);
break
}
} else if (k) this["_on" + k] = []; else for (q = Object.keys(this), k = 0; k < q.length; k++) 0 === q[k].indexOf("_on") && Array.isArray(this[q[k]]) && (this[q[k]] =
[]);
return this
}, once: function (k, q, u) {
return this.on(k, q, u, 1), this
}, _emit: function (k, q, u) {
for (var t = this["_on" + k], x = t.length - 1; 0 <= x; x--) t[x].id && t[x].id !== q && "load" !== k || (setTimeout(function (k) {
k.call(this, q, u)
}.bind(this, t[x].fn), 0), t[x].once && this.off(k, t[x].fn, t[x].id));
return this._loadQueue(k), this
}, _loadQueue: function (k) {
if (0 < this._queue.length) {
var q = this._queue[0];
q.event === k && (this._queue.shift(), this._loadQueue());
k || q.action()
}
return this
}, _ended: function (k) {
var q = k._sprite;
if (!this._webAudio &&
k._node && !k._node.paused && !k._node.ended && k._node.currentTime < k._stop) return setTimeout(this._ended.bind(this, k), 100), this;
q = !(!k._loop && !this._sprite[q][2]);
if (this._emit("end", k._id), !this._webAudio && q && this.stop(k._id, !0).play(k._id), this._webAudio && q) {
this._emit("play", k._id);
k._seek = k._start || 0;
k._rateSeek = 0;
k._playStart = y.ctx.currentTime;
var t = 1E3 * (k._stop - k._start) / Math.abs(k._rate);
this._endTimers[k._id] = setTimeout(this._ended.bind(this, k), t)
}
return this._webAudio && !q && (k._paused = !0, k._ended =
!0, k._seek = k._start || 0, k._rateSeek = 0, this._clearTimer(k._id), this._cleanBuffer(k._node), y._autoSuspend()), this._webAudio || q || this.stop(k._id, !0), this
}, _clearTimer: function (k) {
if (this._endTimers[k]) {
if ("function" != typeof this._endTimers[k]) clearTimeout(this._endTimers[k]); else {
var q = this._soundById(k);
q && q._node && q._node.removeEventListener("ended", this._endTimers[k], !1)
}
delete this._endTimers[k]
}
return this
}, _soundById: function (k) {
for (var q = 0; q < this._sounds.length; q++) if (k === this._sounds[q]._id) return this._sounds[q];
return null
}, _inactiveSound: function () {
this._drain();
for (var k = 0; k < this._sounds.length; k++) if (this._sounds[k]._ended) return this._sounds[k].reset();
return new H(this)
}, _drain: function () {
var k = this._pool, q = 0, u;
if (!(this._sounds.length < k)) {
for (u = 0; u < this._sounds.length; u++) this._sounds[u]._ended && q++;
for (u = this._sounds.length - 1; 0 <= u && !(q <= k); u--) this._sounds[u]._ended && (this._webAudio && this._sounds[u]._node && this._sounds[u]._node.disconnect(0), this._sounds.splice(u, 1), q--)
}
}, _getSoundIds: function (k) {
if (void 0 ===
k) {
k = [];
for (var q = 0; q < this._sounds.length; q++) k.push(this._sounds[q]._id);
return k
}
return [k]
}, _refreshBuffer: function (k) {
return k._node.bufferSource = y.ctx.createBufferSource(), k._node.bufferSource.buffer = Q[this._src], k._panner ? k._node.bufferSource.connect(k._panner) : k._node.bufferSource.connect(k._node), k._node.bufferSource.loop = k._loop, k._loop && (k._node.bufferSource.loopStart = k._start || 0, k._node.bufferSource.loopEnd = k._stop || 0), k._node.bufferSource.playbackRate.setValueAtTime(k._rate, y.ctx.currentTime),
this
}, _cleanBuffer: function (k) {
var q = y._navigator && 0 <= y._navigator.vendor.indexOf("Apple");
if (y._scratchBuffer && k.bufferSource && (k.bufferSource.onended = null, k.bufferSource.disconnect(0), q)) try {
k.bufferSource.buffer = y._scratchBuffer
} catch (x) {
}
return k.bufferSource = null, this
}
};
var H = function (k) {
this._parent = k;
this.init()
};
H.prototype = {
init: function () {
var k = this._parent;
return this._muted = k._muted, this._loop = k._loop, this._volume = k._volume, this._rate = k._rate, this._seek = 0, this._paused = !0, this._ended = !0,
this._sprite = "__default", this._id = ++y._counter, k._sounds.push(this), this.create(), this
}, create: function () {
var k = this._parent, q = y._muted || this._muted || this._parent._muted ? 0 : this._volume;
return k._webAudio ? (this._node = void 0 === y.ctx.createGain ? y.ctx.createGainNode() : y.ctx.createGain(), this._node.gain.setValueAtTime(q, y.ctx.currentTime), this._node.paused = !0, this._node.connect(y.masterGain)) : (this._node = y._obtainHtml5Audio(), this._errorFn = this._errorListener.bind(this), this._node.addEventListener("error",
this._errorFn, !1), this._loadFn = this._loadListener.bind(this), this._node.addEventListener(y._canPlayEvent, this._loadFn, !1), this._node.src = k._src, this._node.preload = "auto", this._node.volume = q * y.volume(), this._node.load()), this
}, reset: function () {
var k = this._parent;
return this._muted = k._muted, this._loop = k._loop, this._volume = k._volume, this._rate = k._rate, this._seek = 0, this._rateSeek = 0, this._paused = !0, this._ended = !0, this._sprite = "__default", this._id = ++y._counter, this
}, _errorListener: function () {
this._parent._emit("loaderror",
this._id, this._node.error ? this._node.error.code : 0);
this._node.removeEventListener("error", this._errorFn, !1)
}, _loadListener: function () {
var k = this._parent;
k._duration = Math.ceil(10 * this._node.duration) / 10;
0 === Object.keys(k._sprite).length && (k._sprite = {__default: [0, 1E3 * k._duration]});
"loaded" !== k._state && (k._state = "loaded", k._emit("load"), k._loadQueue());
this._node.removeEventListener(y._canPlayEvent, this._loadFn, !1)
}
};
var Q = {}, ia = function (k) {
var t = k._src;
if (Q[t]) return k._duration = Q[t].duration, void q(k);
if (/^data:[^;]+;base64,/.test(t)) {
for (var x = atob(t.split(",")[1]), y = new Uint8Array(x.length), H = 0; H < x.length; ++H) y[H] = x.charCodeAt(H);
hb(y.buffer, k)
} else {
var R = new XMLHttpRequest;
R.open("GET", t, !0);
R.withCredentials = k._xhrWithCredentials;
R.responseType = "arraybuffer";
R.onload = function () {
var q = (R.status + "")[0];
if ("0" !== q && "2" !== q && "3" !== q) return void k._emit("loaderror", null, "Failed loading audio file with status: " + R.status + ".");
hb(R.response, k)
};
R.onerror = function () {
k._webAudio && (k._html5 = !0, k._webAudio =
!1, k._sounds = [], delete Q[t], k.load())
};
u(R)
}
}, u = function (k) {
try {
k.send()
} catch (A) {
k.onerror()
}
}, hb = function (k, u) {
var t = function () {
u._emit("loaderror", null, "Decoding audio data failed.")
}, A = function (k) {
k && 0 < u._sounds.length ? (Q[u._src] = k, q(u, k)) : t()
};
"undefined" != typeof Promise && 1 === y.ctx.decodeAudioData.length ? y.ctx.decodeAudioData(k).then(A).catch(t) : y.ctx.decodeAudioData(k, A, t)
}, q = function (k, q) {
q && !k._duration && (k._duration = q.duration);
0 === Object.keys(k._sprite).length && (k._sprite = {
__default: [0,
1E3 * k._duration]
});
"loaded" !== k._state && (k._state = "loaded", k._emit("load"), k._loadQueue())
}, k = function () {
if (y.usingWebAudio) {
try {
"undefined" != typeof AudioContext ? y.ctx = new AudioContext : "undefined" != typeof webkitAudioContext ? y.ctx = new webkitAudioContext : y.usingWebAudio = !1
} catch (x) {
y.usingWebAudio = !1
}
y.ctx || (y.usingWebAudio = !1);
var k = /iP(hone|od|ad)/.test(y._navigator && y._navigator.platform),
q = y._navigator && y._navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/);
q = q ? parseInt(q[1], 10) : null;
k && q && 9 > q &&
(k = /safari/.test(y._navigator && y._navigator.userAgent.toLowerCase()), (y._navigator && y._navigator.standalone && !k || y._navigator && !y._navigator.standalone && !k) && (y.usingWebAudio = !1));
y.usingWebAudio && (y.masterGain = void 0 === y.ctx.createGain ? y.ctx.createGainNode() : y.ctx.createGain(), y.masterGain.gain.setValueAtTime(y._muted ? 0 : 1, y.ctx.currentTime), y.masterGain.connect(y.ctx.destination));
y._setup()
}
};
"function" == typeof define && define.amd && define([], function () {
return {Howler: y, Howl: R}
});
"undefined" != typeof exports &&
(exports.Howler = y, exports.Howl = R);
"undefined" != typeof window ? (window.HowlerGlobal = la, window.Howler = y, window.Howl = R, window.Sound = H) : "undefined" != typeof global && (global.HowlerGlobal = la, global.Howler = y, global.Howl = R, global.Sound = H)
}();
!function () {
HowlerGlobal.prototype._pos = [0, 0, 0];
HowlerGlobal.prototype._orientation = [0, 0, -1, 0, 1, 0];
HowlerGlobal.prototype.stereo = function (y) {
if (!this.ctx || !this.ctx.listener) return this;
for (var R = this._howls.length - 1; 0 <= R; R--) this._howls[R].stereo(y);
return this
};
HowlerGlobal.prototype.pos = function (y, R, H) {
return this.ctx && this.ctx.listener ? (R = "number" != typeof R ? this._pos[1] : R, H = "number" != typeof H ? this._pos[2] : H, "number" != typeof y ? this._pos : (this._pos = [y, R, H], void 0 !== this.ctx.listener.positionX ? (this.ctx.listener.positionX.setTargetAtTime(this._pos[0],
Howler.ctx.currentTime, .1), this.ctx.listener.positionY.setTargetAtTime(this._pos[1], Howler.ctx.currentTime, .1), this.ctx.listener.positionZ.setTargetAtTime(this._pos[2], Howler.ctx.currentTime, .1)) : this.ctx.listener.setPosition(this._pos[0], this._pos[1], this._pos[2]), this)) : this
};
HowlerGlobal.prototype.orientation = function (y, R, H, Q, la, u) {
if (!this.ctx || !this.ctx.listener) return this;
var ia = this._orientation;
return R = "number" != typeof R ? ia[1] : R, H = "number" != typeof H ? ia[2] : H, Q = "number" != typeof Q ? ia[3] : Q,
la = "number" != typeof la ? ia[4] : la, u = "number" != typeof u ? ia[5] : u, "number" != typeof y ? ia : (this._orientation = [y, R, H, Q, la, u], void 0 !== this.ctx.listener.forwardX ? (this.ctx.listener.forwardX.setTargetAtTime(y, Howler.ctx.currentTime, .1), this.ctx.listener.forwardY.setTargetAtTime(R, Howler.ctx.currentTime, .1), this.ctx.listener.forwardZ.setTargetAtTime(H, Howler.ctx.currentTime, .1), this.ctx.listener.upX.setTargetAtTime(y, Howler.ctx.currentTime, .1), this.ctx.listener.upY.setTargetAtTime(R, Howler.ctx.currentTime, .1),
this.ctx.listener.upZ.setTargetAtTime(H, Howler.ctx.currentTime, .1)) : this.ctx.listener.setOrientation(y, R, H, Q, la, u), this)
};
Howl.prototype.init = function (y) {
return function (R) {
return this._orientation = R.orientation || [1, 0, 0], this._stereo = R.stereo || null, this._pos = R.pos || null, this._pannerAttr = {
coneInnerAngle: void 0 !== R.coneInnerAngle ? R.coneInnerAngle : 360,
coneOuterAngle: void 0 !== R.coneOuterAngle ? R.coneOuterAngle : 360,
coneOuterGain: void 0 !== R.coneOuterGain ? R.coneOuterGain : 0,
distanceModel: void 0 !== R.distanceModel ?
R.distanceModel : "inverse",
maxDistance: void 0 !== R.maxDistance ? R.maxDistance : 1E4,
panningModel: void 0 !== R.panningModel ? R.panningModel : "HRTF",
refDistance: void 0 !== R.refDistance ? R.refDistance : 1,
rolloffFactor: void 0 !== R.rolloffFactor ? R.rolloffFactor : 1
}, this._onstereo = R.onstereo ? [{fn: R.onstereo}] : [], this._onpos = R.onpos ? [{fn: R.onpos}] : [], this._onorientation = R.onorientation ? [{fn: R.onorientation}] : [], y.call(this, R)
}
}(Howl.prototype.init);
Howl.prototype.stereo = function (y, R) {
var H = this;
if (!H._webAudio) return H;
if ("loaded" !== H._state) return H._queue.push({
event: "stereo", action: function () {
H.stereo(y, R)
}
}), H;
var Q = void 0 === Howler.ctx.createStereoPanner ? "spatial" : "stereo";
if (void 0 === R) {
if ("number" != typeof y) return H._stereo;
H._stereo = y;
H._pos = [y, 0, 0]
}
for (var ia = H._getSoundIds(R), u = 0; u < ia.length; u++) {
var hb = H._soundById(ia[u]);
if (hb) {
if ("number" != typeof y) return hb._stereo;
hb._stereo = y;
hb._pos = [y, 0, 0];
hb._node && (hb._pannerAttr.panningModel = "equalpower", hb._panner && hb._panner.pan || la(hb, Q), "spatial" === Q ? void 0 !==
hb._panner.positionX ? (hb._panner.positionX.setValueAtTime(y, Howler.ctx.currentTime), hb._panner.positionY.setValueAtTime(0, Howler.ctx.currentTime), hb._panner.positionZ.setValueAtTime(0, Howler.ctx.currentTime)) : hb._panner.setPosition(y, 0, 0) : hb._panner.pan.setValueAtTime(y, Howler.ctx.currentTime));
H._emit("stereo", hb._id)
}
}
return H
};
Howl.prototype.pos = function (y, R, H, Q) {
var ia = this;
if (!ia._webAudio) return ia;
if ("loaded" !== ia._state) return ia._queue.push({
event: "pos", action: function () {
ia.pos(y, R, H, Q)
}
}),
ia;
if (R = "number" != typeof R ? 0 : R, H = "number" != typeof H ? -.5 : H, void 0 === Q) {
if ("number" != typeof y) return ia._pos;
ia._pos = [y, R, H]
}
for (var u = ia._getSoundIds(Q), hb = 0; hb < u.length; hb++) {
var q = ia._soundById(u[hb]);
if (q) {
if ("number" != typeof y) return q._pos;
q._pos = [y, R, H];
q._node && (q._panner && !q._panner.pan || la(q, "spatial"), void 0 !== q._panner.positionX ? (q._panner.positionX.setValueAtTime(y, Howler.ctx.currentTime), q._panner.positionY.setValueAtTime(R, Howler.ctx.currentTime), q._panner.positionZ.setValueAtTime(H,
Howler.ctx.currentTime)) : q._panner.setPosition(y, R, H));
ia._emit("pos", q._id)
}
}
return ia
};
Howl.prototype.orientation = function (y, R, H, Q) {
var ia = this;
if (!ia._webAudio) return ia;
if ("loaded" !== ia._state) return ia._queue.push({
event: "orientation", action: function () {
ia.orientation(y, R, H, Q)
}
}), ia;
if (R = "number" != typeof R ? ia._orientation[1] : R, H = "number" != typeof H ? ia._orientation[2] : H, void 0 === Q) {
if ("number" != typeof y) return ia._orientation;
ia._orientation = [y, R, H]
}
for (var u = ia._getSoundIds(Q), hb = 0; hb < u.length; hb++) {
var q =
ia._soundById(u[hb]);
if (q) {
if ("number" != typeof y) return q._orientation;
q._orientation = [y, R, H];
q._node && (q._panner || (q._pos || (q._pos = ia._pos || [0, 0, -.5]), la(q, "spatial")), void 0 !== q._panner.orientationX ? (q._panner.orientationX.setValueAtTime(y, Howler.ctx.currentTime), q._panner.orientationY.setValueAtTime(R, Howler.ctx.currentTime), q._panner.orientationZ.setValueAtTime(H, Howler.ctx.currentTime)) : q._panner.setOrientation(y, R, H));
ia._emit("orientation", q._id)
}
}
return ia
};
Howl.prototype.pannerAttr = function () {
var y,
R, H = arguments;
if (!this._webAudio) return this;
if (0 === H.length) return this._pannerAttr;
if (1 === H.length) {
if ("object" != typeof H[0]) return R = this._soundById(parseInt(H[0], 10)), R ? R._pannerAttr : this._pannerAttr;
var Q = H[0];
void 0 === y && (Q.pannerAttr || (Q.pannerAttr = {
coneInnerAngle: Q.coneInnerAngle,
coneOuterAngle: Q.coneOuterAngle,
coneOuterGain: Q.coneOuterGain,
distanceModel: Q.distanceModel,
maxDistance: Q.maxDistance,
refDistance: Q.refDistance,
rolloffFactor: Q.rolloffFactor,
panningModel: Q.panningModel
}), this._pannerAttr =
{
coneInnerAngle: void 0 !== Q.pannerAttr.coneInnerAngle ? Q.pannerAttr.coneInnerAngle : this._coneInnerAngle,
coneOuterAngle: void 0 !== Q.pannerAttr.coneOuterAngle ? Q.pannerAttr.coneOuterAngle : this._coneOuterAngle,
coneOuterGain: void 0 !== Q.pannerAttr.coneOuterGain ? Q.pannerAttr.coneOuterGain : this._coneOuterGain,
distanceModel: void 0 !== Q.pannerAttr.distanceModel ? Q.pannerAttr.distanceModel : this._distanceModel,
maxDistance: void 0 !== Q.pannerAttr.maxDistance ? Q.pannerAttr.maxDistance : this._maxDistance,
refDistance: void 0 !==
Q.pannerAttr.refDistance ? Q.pannerAttr.refDistance : this._refDistance,
rolloffFactor: void 0 !== Q.pannerAttr.rolloffFactor ? Q.pannerAttr.rolloffFactor : this._rolloffFactor,
panningModel: void 0 !== Q.pannerAttr.panningModel ? Q.pannerAttr.panningModel : this._panningModel
})
} else 2 === H.length && (Q = H[0], y = parseInt(H[1], 10));
y = this._getSoundIds(y);
for (H = 0; H < y.length; H++) if (R = this._soundById(y[H])) {
var ia = R._pannerAttr;
ia = {
coneInnerAngle: void 0 !== Q.coneInnerAngle ? Q.coneInnerAngle : ia.coneInnerAngle,
coneOuterAngle: void 0 !==
Q.coneOuterAngle ? Q.coneOuterAngle : ia.coneOuterAngle,
coneOuterGain: void 0 !== Q.coneOuterGain ? Q.coneOuterGain : ia.coneOuterGain,
distanceModel: void 0 !== Q.distanceModel ? Q.distanceModel : ia.distanceModel,
maxDistance: void 0 !== Q.maxDistance ? Q.maxDistance : ia.maxDistance,
refDistance: void 0 !== Q.refDistance ? Q.refDistance : ia.refDistance,
rolloffFactor: void 0 !== Q.rolloffFactor ? Q.rolloffFactor : ia.rolloffFactor,
panningModel: void 0 !== Q.panningModel ? Q.panningModel : ia.panningModel
};
var u = R._panner;
u ? (u.coneInnerAngle =
ia.coneInnerAngle, u.coneOuterAngle = ia.coneOuterAngle, u.coneOuterGain = ia.coneOuterGain, u.distanceModel = ia.distanceModel, u.maxDistance = ia.maxDistance, u.refDistance = ia.refDistance, u.rolloffFactor = ia.rolloffFactor, u.panningModel = ia.panningModel) : (R._pos || (R._pos = this._pos || [0, 0, -.5]), la(R, "spatial"))
}
return this
};
Sound.prototype.init = function (y) {
return function () {
var R = this._parent;
this._orientation = R._orientation;
this._stereo = R._stereo;
this._pos = R._pos;
this._pannerAttr = R._pannerAttr;
y.call(this);
this._stereo ?
R.stereo(this._stereo) : this._pos && R.pos(this._pos[0], this._pos[1], this._pos[2], this._id)
}
}(Sound.prototype.init);
Sound.prototype.reset = function (y) {
return function () {
var R = this._parent;
return this._orientation = R._orientation, this._stereo = R._stereo, this._pos = R._pos, this._pannerAttr = R._pannerAttr, this._stereo ? R.stereo(this._stereo) : this._pos ? R.pos(this._pos[0], this._pos[1], this._pos[2], this._id) : this._panner && (this._panner.disconnect(0), this._panner = void 0, R._refreshBuffer(this)), y.call(this)
}
}(Sound.prototype.reset);
var la = function (y, R) {
"spatial" === (R || "spatial") ? (y._panner = Howler.ctx.createPanner(), y._panner.coneInnerAngle = y._pannerAttr.coneInnerAngle, y._panner.coneOuterAngle = y._pannerAttr.coneOuterAngle, y._panner.coneOuterGain = y._pannerAttr.coneOuterGain, y._panner.distanceModel = y._pannerAttr.distanceModel, y._panner.maxDistance = y._pannerAttr.maxDistance, y._panner.refDistance = y._pannerAttr.refDistance, y._panner.rolloffFactor = y._pannerAttr.rolloffFactor, y._panner.panningModel = y._pannerAttr.panningModel, void 0 !==
y._panner.positionX ? (y._panner.positionX.setValueAtTime(y._pos[0], Howler.ctx.currentTime), y._panner.positionY.setValueAtTime(y._pos[1], Howler.ctx.currentTime), y._panner.positionZ.setValueAtTime(y._pos[2], Howler.ctx.currentTime)) : y._panner.setPosition(y._pos[0], y._pos[1], y._pos[2]), void 0 !== y._panner.orientationX ? (y._panner.orientationX.setValueAtTime(y._orientation[0], Howler.ctx.currentTime), y._panner.orientationY.setValueAtTime(y._orientation[1], Howler.ctx.currentTime), y._panner.orientationZ.setValueAtTime(y._orientation[2],
Howler.ctx.currentTime)) : y._panner.setOrientation(y._orientation[0], y._orientation[1], y._orientation[2])) : (y._panner = Howler.ctx.createStereoPanner(), y._panner.pan.setValueAtTime(y._stereo, Howler.ctx.currentTime));
y._panner.connect(y._node);
y._paused || y._parent.pause(y._id, !0).play(y._id, !0)
}
}();
!function (la) {
"object" == typeof exports && "undefined" != typeof module ? module.exports = la() : "function" == typeof define && define.amd ? define([], la) : ("undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : this).pako = la()
}(function () {
return function Q(y, R, H) {
function ia(q, k) {
if (!R[q]) {
if (!y[q]) {
var t = "function" == typeof require && require;
if (!k && t) return t(q, !0);
if (u) return u(q, !0);
k = Error("Cannot find module '" + q + "'");
throw k.code = "MODULE_NOT_FOUND", k;
}
k = R[q] = {exports: {}};
y[q][0].call(k.exports, function (k) {
var t = y[q][1][k];
return ia(t ? t : k)
}, k, k.exports, Q, y, R, H)
}
return R[q].exports
}
for (var u = "function" == typeof require && require, hb = 0; hb < H.length; hb++) ia(H[hb]);
return ia
}({
1: [function (y, R, H) {
function Q(y) {
if (!(this instanceof Q)) return new Q(y);
y = this.options = hb.assign({
level: Aa,
method: za,
chunkSize: 16384,
windowBits: 15,
memLevel: 8,
strategy: fb,
to: ""
}, y || {});
y.raw && 0 < y.windowBits ? y.windowBits = -y.windowBits : y.gzip && 0 < y.windowBits && 16 > y.windowBits && (y.windowBits += 16);
this.err =
0;
this.msg = "";
this.ended = !1;
this.chunks = [];
this.strm = new t;
this.strm.avail_out = 0;
var K = u.deflateInit2(this.strm, y.level, y.method, y.windowBits, y.memLevel, y.strategy);
if (K !== x) throw Error(k[K]);
if (y.header && u.deflateSetHeader(this.strm, y.header), y.dictionary) {
var H;
if (H = "string" == typeof y.dictionary ? q.string2buf(y.dictionary) : "[object ArrayBuffer]" === A.call(y.dictionary) ? new Uint8Array(y.dictionary) : y.dictionary, K = u.deflateSetDictionary(this.strm, H), K !== x) throw Error(k[K]);
this._dict_set = !0
}
}
function ia(k,
q) {
q = new Q(q);
if (q.push(k, !0), q.err) throw q.msg;
return q.result
}
var u = y("./zlib/deflate"), hb = y("./utils/common"), q = y("./utils/strings"), k = y("./zlib/messages"),
t = y("./zlib/zstream"), A = Object.prototype.toString, x = 0, Aa = -1, fb = 0, za = 8;
Q.prototype.push = function (k, t) {
var y, K = this.strm, H = this.options.chunkSize;
if (this.ended) return !1;
t = t === ~~t ? t : !0 === t ? 4 : 0;
"string" == typeof k ? K.input = q.string2buf(k) : "[object ArrayBuffer]" === A.call(k) ? K.input = new Uint8Array(k) : K.input = k;
K.next_in = 0;
K.avail_in = K.input.length;
do {
if (0 === K.avail_out && (K.output = new hb.Buf8(H), K.next_out = 0, K.avail_out = H), y = u.deflate(K, t), 1 !== y && y !== x) return this.onEnd(y), this.ended = !0, !1;
0 !== K.avail_out && (0 !== K.avail_in || 4 !== t && 2 !== t) || ("string" === this.options.to ? this.onData(q.buf2binstring(hb.shrinkBuf(K.output, K.next_out))) : this.onData(hb.shrinkBuf(K.output, K.next_out)))
} while ((0 < K.avail_in || 0 === K.avail_out) && 1 !== y);
return 4 === t ? (y = u.deflateEnd(this.strm), this.onEnd(y), this.ended = !0, y === x) : 2 !== t || (this.onEnd(x), K.avail_out = 0, !0)
};
Q.prototype.onData =
function (k) {
this.chunks.push(k)
};
Q.prototype.onEnd = function (k) {
k === x && ("string" === this.options.to ? this.result = this.chunks.join("") : this.result = hb.flattenChunks(this.chunks));
this.chunks = [];
this.err = k;
this.msg = this.strm.msg
};
H.Deflate = Q;
H.deflate = ia;
H.deflateRaw = function (k, q) {
return q = q || {}, q.raw = !0, ia(k, q)
};
H.gzip = function (k, q) {
return q = q || {}, q.gzip = !0, ia(k, q)
}
}, {
"./utils/common": 3,
"./utils/strings": 4,
"./zlib/deflate": 8,
"./zlib/messages": 13,
"./zlib/zstream": 15
}],
2: [function (y, R, H) {
function Q(q) {
if (!(this instanceof
Q)) return new Q(q);
var y = this.options = hb.assign({chunkSize: 16384, windowBits: 0, to: ""}, q || {});
y.raw && 0 <= y.windowBits && 16 > y.windowBits && (y.windowBits = -y.windowBits, 0 === y.windowBits && (y.windowBits = -15));
!(0 <= y.windowBits && 16 > y.windowBits) || q && q.windowBits || (y.windowBits += 32);
15 < y.windowBits && 48 > y.windowBits && 0 === (15 & y.windowBits) && (y.windowBits |= 15);
this.err = 0;
this.msg = "";
this.ended = !1;
this.chunks = [];
this.strm = new A;
this.strm.avail_out = 0;
q = u.inflateInit2(this.strm, y.windowBits);
if (q !== k.Z_OK) throw Error(t[q]);
this.header = new x;
u.inflateGetHeader(this.strm, this.header)
}
function ia(k, q) {
q = new Q(q);
if (q.push(k, !0), q.err) throw q.msg;
return q.result
}
var u = y("./zlib/inflate"), hb = y("./utils/common"), q = y("./utils/strings"), k = y("./zlib/constants"),
t = y("./zlib/messages"), A = y("./zlib/zstream"), x = y("./zlib/gzheader"),
Aa = Object.prototype.toString;
Q.prototype.push = function (t, x) {
var A, y, H, Q, R, V = this.strm, z = this.options.chunkSize, za = this.options.dictionary, Sa = !1;
if (this.ended) return !1;
x = x === ~~x ? x : !0 === x ? k.Z_FINISH : k.Z_NO_FLUSH;
"string" == typeof t ? V.input = q.binstring2buf(t) : "[object ArrayBuffer]" === Aa.call(t) ? V.input = new Uint8Array(t) : V.input = t;
V.next_in = 0;
V.avail_in = V.input.length;
do {
if (0 === V.avail_out && (V.output = new hb.Buf8(z), V.next_out = 0, V.avail_out = z), A = u.inflate(V, k.Z_NO_FLUSH), A === k.Z_NEED_DICT && za && (R = "string" == typeof za ? q.string2buf(za) : "[object ArrayBuffer]" === Aa.call(za) ? new Uint8Array(za) : za, A = u.inflateSetDictionary(this.strm, R)), A === k.Z_BUF_ERROR && !0 === Sa && (A = k.Z_OK, Sa = !1), A !== k.Z_STREAM_END && A !== k.Z_OK) return this.onEnd(A),
this.ended = !0, !1;
V.next_out && (0 !== V.avail_out && A !== k.Z_STREAM_END && (0 !== V.avail_in || x !== k.Z_FINISH && x !== k.Z_SYNC_FLUSH) || ("string" === this.options.to ? (y = q.utf8border(V.output, V.next_out), H = V.next_out - y, Q = q.buf2string(V.output, y), V.next_out = H, V.avail_out = z - H, H && hb.arraySet(V.output, V.output, y, H, 0), this.onData(Q)) : this.onData(hb.shrinkBuf(V.output, V.next_out))));
0 === V.avail_in && 0 === V.avail_out && (Sa = !0)
} while ((0 < V.avail_in || 0 === V.avail_out) && A !== k.Z_STREAM_END);
return A === k.Z_STREAM_END && (x = k.Z_FINISH),
x === k.Z_FINISH ? (A = u.inflateEnd(this.strm), this.onEnd(A), this.ended = !0, A === k.Z_OK) : x !== k.Z_SYNC_FLUSH || (this.onEnd(k.Z_OK), V.avail_out = 0, !0)
};
Q.prototype.onData = function (k) {
this.chunks.push(k)
};
Q.prototype.onEnd = function (q) {
q === k.Z_OK && ("string" === this.options.to ? this.result = this.chunks.join("") : this.result = hb.flattenChunks(this.chunks));
this.chunks = [];
this.err = q;
this.msg = this.strm.msg
};
H.Inflate = Q;
H.inflate = ia;
H.inflateRaw = function (k, q) {
return q = q || {}, q.raw = !0, ia(k, q)
};
H.ungzip = ia
}, {
"./utils/common": 3,
"./utils/strings": 4,
"./zlib/constants": 6,
"./zlib/gzheader": 9,
"./zlib/inflate": 11,
"./zlib/messages": 13,
"./zlib/zstream": 15
}],
3: [function (y, R, H) {
y = "undefined" != typeof Uint8Array && "undefined" != typeof Uint16Array && "undefined" != typeof Int32Array;
H.assign = function (u) {
for (var y = Array.prototype.slice.call(arguments, 1); y.length;) {
var q = y.shift();
if (q) {
if ("object" != typeof q) throw new TypeError(q + "must be non-object");
for (var k in q) q.hasOwnProperty(k) && (u[k] = q[k])
}
}
return u
};
H.shrinkBuf = function (u, y) {
return u.length ===
y ? u : u.subarray ? u.subarray(0, y) : (u.length = y, u)
};
var Q = {
arraySet: function (u, y, q, k, t) {
if (y.subarray && u.subarray) return void u.set(y.subarray(q, q + k), t);
for (var A = 0; A < k; A++) u[t + A] = y[q + A]
}, flattenChunks: function (u) {
var y, q;
var k = q = 0;
for (y = u.length; k < y; k++) q += u[k].length;
var t = new Uint8Array(q);
k = q = 0;
for (y = u.length; k < y; k++) {
var A = u[k];
t.set(A, q);
q += A.length
}
return t
}
}, ia = {
arraySet: function (u, y, q, k, t) {
for (var A = 0; A < k; A++) u[t + A] = y[q + A]
}, flattenChunks: function (u) {
return [].concat.apply([], u)
}
};
H.setTyped = function (u) {
u ?
(H.Buf8 = Uint8Array, H.Buf16 = Uint16Array, H.Buf32 = Int32Array, H.assign(H, Q)) : (H.Buf8 = Array, H.Buf16 = Array, H.Buf32 = Array, H.assign(H, ia))
};
H.setTyped(y)
}, {}],
4: [function (y, R, H) {
function Q(k, q) {
if (65537 > q && (k.subarray && hb || !k.subarray && u)) return String.fromCharCode.apply(null, ia.shrinkBuf(k, q));
for (var t = "", x = 0; x < q; x++) t += String.fromCharCode(k[x]);
return t
}
var ia = y("./common"), u = !0, hb = !0;
try {
String.fromCharCode.apply(null, [0])
} catch (k) {
u = !1
}
try {
String.fromCharCode.apply(null, new Uint8Array(1))
} catch (k) {
hb =
!1
}
var q = new ia.Buf8(256);
for (y = 0; 256 > y; y++) q[y] = 252 <= y ? 6 : 248 <= y ? 5 : 240 <= y ? 4 : 224 <= y ? 3 : 192 <= y ? 2 : 1;
q[254] = q[254] = 1;
H.string2buf = function (k) {
var q, u, x, y = k.length, H = 0;
for (u = 0; u < y; u++) {
var Q = k.charCodeAt(u);
55296 === (64512 & Q) && u + 1 < y && (q = k.charCodeAt(u + 1), 56320 === (64512 & q) && (Q = 65536 + (Q - 55296 << 10) + (q - 56320), u++));
H += 128 > Q ? 1 : 2048 > Q ? 2 : 65536 > Q ? 3 : 4
}
var K = new ia.Buf8(H);
for (u = x = 0; x < H; u++) Q = k.charCodeAt(u), 55296 === (64512 & Q) && u + 1 < y && (q = k.charCodeAt(u + 1), 56320 === (64512 & q) && (Q = 65536 + (Q - 55296 << 10) + (q - 56320), u++)), 128 >
Q ? K[x++] = Q : 2048 > Q ? (K[x++] = 192 | Q >>> 6, K[x++] = 128 | 63 & Q) : 65536 > Q ? (K[x++] = 224 | Q >>> 12, K[x++] = 128 | Q >>> 6 & 63, K[x++] = 128 | 63 & Q) : (K[x++] = 240 | Q >>> 18, K[x++] = 128 | Q >>> 12 & 63, K[x++] = 128 | Q >>> 6 & 63, K[x++] = 128 | 63 & Q);
return K
};
H.buf2binstring = function (k) {
return Q(k, k.length)
};
H.binstring2buf = function (k) {
for (var q = new ia.Buf8(k.length), u = 0, x = q.length; u < x; u++) q[u] = k.charCodeAt(u);
return q
};
H.buf2string = function (k, t) {
var u, x, y, H = t || k.length, R = Array(2 * H);
for (t = u = 0; t < H;) if (x = k[t++], 128 > x) R[u++] = x; else if (y = q[x], 4 < y) R[u++] = 65533,
t += y - 1; else {
for (x &= 2 === y ? 31 : 3 === y ? 15 : 7; 1 < y && t < H;) x = x << 6 | 63 & k[t++], y--;
1 < y ? R[u++] = 65533 : 65536 > x ? R[u++] = x : (x -= 65536, R[u++] = 55296 | x >> 10 & 1023, R[u++] = 56320 | 1023 & x)
}
return Q(R, u)
};
H.utf8border = function (k, t) {
var u;
t = t || k.length;
t > k.length && (t = k.length);
for (u = t - 1; 0 <= u && 128 === (192 & k[u]);) u--;
return 0 > u ? t : 0 === u ? t : u + q[k[u]] > t ? u : t
}
}, {"./common": 3}],
5: [function (y, R, H) {
R.exports = function (y, H, u, R) {
var q = 65535 & y | 0;
y = y >>> 16 & 65535 | 0;
for (var k; 0 !== u;) {
k = 2E3 < u ? 2E3 : u;
u -= k;
do q = q + H[R++] | 0, y = y + q | 0; while (--k);
q %= 65521;
y %=
65521
}
return q | y << 16 | 0
}
}, {}],
6: [function (y, R, H) {
R.exports = {
Z_NO_FLUSH: 0,
Z_PARTIAL_FLUSH: 1,
Z_SYNC_FLUSH: 2,
Z_FULL_FLUSH: 3,
Z_FINISH: 4,
Z_BLOCK: 5,
Z_TREES: 6,
Z_OK: 0,
Z_STREAM_END: 1,
Z_NEED_DICT: 2,
Z_ERRNO: -1,
Z_STREAM_ERROR: -2,
Z_DATA_ERROR: -3,
Z_BUF_ERROR: -5,
Z_NO_COMPRESSION: 0,
Z_BEST_SPEED: 1,
Z_BEST_COMPRESSION: 9,
Z_DEFAULT_COMPRESSION: -1,
Z_FILTERED: 1,
Z_HUFFMAN_ONLY: 2,
Z_RLE: 3,
Z_FIXED: 4,
Z_DEFAULT_STRATEGY: 0,
Z_BINARY: 0,
Z_TEXT: 1,
Z_UNKNOWN: 2,
Z_DEFLATED: 8
}
}, {}],
7: [function (y, R, H) {
var Q = function () {
for (var y, u = [], H = 0; 256 >
H; H++) {
y = H;
for (var q = 0; 8 > q; q++) y = 1 & y ? 3988292384 ^ y >>> 1 : y >>> 1;
u[H] = y
}
return u
}();
R.exports = function (y, u, H, q) {
H = q + H;
for (y ^= -1; q < H; q++) y = y >>> 8 ^ Q[255 & (y ^ u[q])];
return y ^ -1
}
}, {}],
8: [function (y, R, H) {
function Q(k, q) {
return k.msg = Kd[q], q
}
function ia(k) {
for (var q = k.length; 0 <= --q;) k[q] = 0
}
function u(k) {
var q = k.state, t = q.pending;
t > k.avail_out && (t = k.avail_out);
0 !== t && (Rb.arraySet(k.output, q.pending_buf, q.pending_out, t, k.next_out), k.next_out += t, q.pending_out += t, k.total_out += t, k.avail_out -= t, q.pending -= t, 0 === q.pending &&
(q.pending_out = 0))
}
function hb(k, q) {
ya._tr_flush_block(k, 0 <= k.block_start ? k.block_start : -1, k.strstart - k.block_start, q);
k.block_start = k.strstart;
u(k.strm)
}
function q(k, q) {
k.pending_buf[k.pending++] = q
}
function k(k, q) {
k.pending_buf[k.pending++] = q >>> 8 & 255;
k.pending_buf[k.pending++] = 255 & q
}
function t(k, q) {
var t, u, x = k.max_chain_length, N = k.strstart, A = k.prev_length, y = k.nice_match,
z = k.strstart > k.w_size - ua ? k.strstart - (k.w_size - ua) : 0, E = k.window, K = k.w_mask,
H = k.prev, M = k.strstart + Ca, Q = E[N + A - 1], T = E[N + A];
k.prev_length >=
k.good_match && (x >>= 2);
y > k.lookahead && (y = k.lookahead);
do if (t = q, E[t + A] === T && E[t + A - 1] === Q && E[t] === E[N] && E[++t] === E[N + 1]) {
N += 2;
for (t++; E[++N] === E[++t] && E[++N] === E[++t] && E[++N] === E[++t] && E[++N] === E[++t] && E[++N] === E[++t] && E[++N] === E[++t] && E[++N] === E[++t] && E[++N] === E[++t] && N < M;) ;
if (u = Ca - (M - N), N = M - Ca, u > A) {
if (k.match_start = q, A = u, u >= y) break;
Q = E[N + A - 1];
T = E[N + A]
}
} while ((q = H[q & K]) > z && 0 !== --x);
return A <= k.lookahead ? A : k.lookahead
}
function A(k) {
var q, t, u = k.w_size;
do {
if (t = k.window_size - k.lookahead - k.strstart, k.strstart >=
u + (u - ua)) {
Rb.arraySet(k.window, k.window, u, u, 0);
k.match_start -= u;
k.strstart -= u;
k.block_start -= u;
var x = q = k.hash_size;
do {
var N = k.head[--x];
k.head[x] = N >= u ? N - u : 0
} while (--q);
x = q = u;
do N = k.prev[--x], k.prev[x] = N >= u ? N - u : 0; while (--q);
t += u
}
if (0 === k.strm.avail_in) break;
x = k.strm;
N = k.window;
var A = k.strstart + k.lookahead, y = x.avail_in;
if (q = (y > t && (y = t), 0 === y ? 0 : (x.avail_in -= y, Rb.arraySet(N, x.input, x.next_in, y, A), 1 === x.state.wrap ? x.adler = V(x.adler, N, y, A) : 2 === x.state.wrap && (x.adler = z(x.adler, N, y, A)), x.next_in += y, x.total_in +=
y, y)), k.lookahead += q, k.lookahead + k.insert >= ab) for (t = k.strstart - k.insert, k.ins_h = k.window[t], k.ins_h = (k.ins_h << k.hash_shift ^ k.window[t + 1]) & k.hash_mask; k.insert && (k.ins_h = (k.ins_h << k.hash_shift ^ k.window[t + ab - 1]) & k.hash_mask, k.prev[t & k.w_mask] = k.head[k.ins_h], k.head[k.ins_h] = t, t++, k.insert--, !(k.lookahead + k.insert < ab));) ;
} while (k.lookahead < ua && 0 !== k.strm.avail_in)
}
function x(k, q) {
for (var u, x; ;) {
if (k.lookahead < ua) {
if (A(k), k.lookahead < ua && q === Sa) return fa;
if (0 === k.lookahead) break
}
if (u = 0, k.lookahead >= ab &&
(k.ins_h = (k.ins_h << k.hash_shift ^ k.window[k.strstart + ab - 1]) & k.hash_mask, u = k.prev[k.strstart & k.w_mask] = k.head[k.ins_h], k.head[k.ins_h] = k.strstart), 0 !== u && k.strstart - u <= k.w_size - ua && (k.match_length = t(k, u)), k.match_length >= ab) if (x = ya._tr_tally(k, k.strstart - k.match_start, k.match_length - ab), k.lookahead -= k.match_length, k.match_length <= k.max_lazy_match && k.lookahead >= ab) {
k.match_length--;
do k.strstart++, k.ins_h = (k.ins_h << k.hash_shift ^ k.window[k.strstart + ab - 1]) & k.hash_mask, u = k.prev[k.strstart & k.w_mask] = k.head[k.ins_h],
k.head[k.ins_h] = k.strstart; while (0 !== --k.match_length);
k.strstart++
} else k.strstart += k.match_length, k.match_length = 0, k.ins_h = k.window[k.strstart], k.ins_h = (k.ins_h << k.hash_shift ^ k.window[k.strstart + 1]) & k.hash_mask; else x = ya._tr_tally(k, 0, k.window[k.strstart]), k.lookahead--, k.strstart++;
if (x && (hb(k, !1), 0 === k.strm.avail_out)) return fa
}
return k.insert = k.strstart < ab - 1 ? k.strstart : ab - 1, q === T ? (hb(k, !0), 0 === k.strm.avail_out ? qc : Xb) : k.last_lit && (hb(k, !1), 0 === k.strm.avail_out) ? fa : M
}
function Aa(k, q) {
for (var u,
x, y; ;) {
if (k.lookahead < ua) {
if (A(k), k.lookahead < ua && q === Sa) return fa;
if (0 === k.lookahead) break
}
if (u = 0, k.lookahead >= ab && (k.ins_h = (k.ins_h << k.hash_shift ^ k.window[k.strstart + ab - 1]) & k.hash_mask, u = k.prev[k.strstart & k.w_mask] = k.head[k.ins_h], k.head[k.ins_h] = k.strstart), k.prev_length = k.match_length, k.prev_match = k.match_start, k.match_length = ab - 1, 0 !== u && k.prev_length < k.max_lazy_match && k.strstart - u <= k.w_size - ua && (k.match_length = t(k, u), 5 >= k.match_length && (k.strategy === te || k.match_length === ab && 4096 < k.strstart - k.match_start) &&
(k.match_length = ab - 1)), k.prev_length >= ab && k.match_length <= k.prev_length) {
y = k.strstart + k.lookahead - ab;
x = ya._tr_tally(k, k.strstart - 1 - k.prev_match, k.prev_length - ab);
k.lookahead -= k.prev_length - 1;
k.prev_length -= 2;
do ++k.strstart <= y && (k.ins_h = (k.ins_h << k.hash_shift ^ k.window[k.strstart + ab - 1]) & k.hash_mask, u = k.prev[k.strstart & k.w_mask] = k.head[k.ins_h], k.head[k.ins_h] = k.strstart); while (0 !== --k.prev_length);
if (k.match_available = 0, k.match_length = ab - 1, k.strstart++, x && (hb(k, !1), 0 === k.strm.avail_out)) return fa
} else if (k.match_available) {
if (x =
ya._tr_tally(k, 0, k.window[k.strstart - 1]), x && hb(k, !1), k.strstart++, k.lookahead--, 0 === k.strm.avail_out) return fa
} else k.match_available = 1, k.strstart++, k.lookahead--
}
return k.match_available && (ya._tr_tally(k, 0, k.window[k.strstart - 1]), k.match_available = 0), k.insert = k.strstart < ab - 1 ? k.strstart : ab - 1, q === T ? (hb(k, !0), 0 === k.strm.avail_out ? qc : Xb) : k.last_lit && (hb(k, !1), 0 === k.strm.avail_out) ? fa : M
}
function fb(k, q, t, u, x) {
this.good_length = k;
this.max_lazy = q;
this.nice_length = t;
this.max_chain = u;
this.func = x
}
function za() {
this.strm =
null;
this.status = 0;
this.pending_buf = null;
this.wrap = this.pending = this.pending_out = this.pending_buf_size = 0;
this.gzhead = null;
this.gzindex = 0;
this.method = Eb;
this.last_flush = -1;
this.w_mask = this.w_bits = this.w_size = 0;
this.window = null;
this.window_size = 0;
this.head = this.prev = null;
this.nice_match = this.good_match = this.strategy = this.level = this.max_lazy_match = this.max_chain_length = this.prev_length = this.lookahead = this.match_start = this.strstart = this.match_available = this.prev_match = this.match_length = this.block_start =
this.hash_shift = this.hash_mask = this.hash_bits = this.hash_size = this.ins_h = 0;
this.dyn_ltree = new Rb.Buf16(2 * Ga);
this.dyn_dtree = new Rb.Buf16(2 * (2 * Oc + 1));
this.bl_tree = new Rb.Buf16(2 * (2 * E + 1));
ia(this.dyn_ltree);
ia(this.dyn_dtree);
ia(this.bl_tree);
this.bl_desc = this.d_desc = this.l_desc = null;
this.bl_count = new Rb.Buf16(Bb + 1);
this.heap = new Rb.Buf16(2 * jd + 1);
ia(this.heap);
this.heap_max = this.heap_len = 0;
this.depth = new Rb.Buf16(2 * jd + 1);
ia(this.depth);
this.bi_valid = this.bi_buf = this.insert = this.matches = this.static_len =
this.opt_len = this.d_buf = this.last_lit = this.lit_bufsize = this.l_buf = 0
}
function K(k) {
var q;
return k && k.state ? (k.total_in = k.total_out = 0, k.data_type = ue, q = k.state, q.pending = 0, q.pending_out = 0, 0 > q.wrap && (q.wrap = -q.wrap), q.status = q.wrap ? sa : S, k.adler = 2 === q.wrap ? 0 : 1, q.last_flush = Sa, ya._tr_init(q), xb) : Q(k, Ha)
}
function Jd(k) {
var q = K(k);
q === xb && (k = k.state, k.window_size = 2 * k.w_size, ia(k.head), k.max_lazy_match = sc[k.level].max_lazy, k.good_match = sc[k.level].good_length, k.nice_match = sc[k.level].nice_length, k.max_chain_length =
sc[k.level].max_chain, k.strstart = 0, k.block_start = 0, k.lookahead = 0, k.insert = 0, k.match_length = k.prev_length = ab - 1, k.match_available = 0, k.ins_h = 0);
return q
}
function se(k, q, t, u, x, A) {
if (!k) return Ha;
var y = 1;
if (q === Ba && (q = 6), 0 > u ? (y = 0, u = -u) : 15 < u && (y = 2, u -= 16), 1 > x || x > yd || t !== Eb || 8 > u || 15 < u || 0 > q || 9 < q || 0 > A || A > jb) return Q(k, Ha);
8 === u && (u = 9);
var z = new za;
return k.state = z, z.strm = k, z.wrap = y, z.gzhead = null, z.w_bits = u, z.w_size = 1 << z.w_bits, z.w_mask = z.w_size - 1, z.hash_bits = x + 7, z.hash_size = 1 << z.hash_bits, z.hash_mask = z.hash_size -
1, z.hash_shift = ~~((z.hash_bits + ab - 1) / ab), z.window = new Rb.Buf8(2 * z.w_size), z.head = new Rb.Buf16(z.hash_size), z.prev = new Rb.Buf16(z.w_size), z.lit_bufsize = 1 << x + 6, z.pending_buf_size = 4 * z.lit_bufsize, z.pending_buf = new Rb.Buf8(z.pending_buf_size), z.d_buf = 1 * z.lit_bufsize, z.l_buf = 3 * z.lit_bufsize, z.level = q, z.strategy = A, z.method = t, Jd(k)
}
var Rb = y("../utils/common"), ya = y("./trees"), V = y("./adler32"), z = y("./crc32"),
Kd = y("./messages"), Sa = 0, T = 4, xb = 0, Ha = -2, Ba = -1, te = 1, jb = 4, ue = 2, Eb = 8, yd = 9,
jd = 286, Oc = 30, E = 19, Ga = 2 * jd + 1,
Bb = 15, ab = 3, Ca = 258, ua = Ca + ab + 1, sa = 42, S = 113, fa = 1, M = 2, qc = 3, Xb = 4;
var sc = [new fb(0, 0, 0, 0, function (k, q) {
var t = 65535;
for (t > k.pending_buf_size - 5 && (t = k.pending_buf_size - 5); ;) {
if (1 >= k.lookahead) {
if (A(k), 0 === k.lookahead && q === Sa) return fa;
if (0 === k.lookahead) break
}
k.strstart += k.lookahead;
k.lookahead = 0;
var u = k.block_start + t;
if ((0 === k.strstart || k.strstart >= u) && (k.lookahead = k.strstart - u, k.strstart = u, hb(k, !1), 0 === k.strm.avail_out) || k.strstart - k.block_start >= k.w_size - ua && (hb(k, !1), 0 === k.strm.avail_out)) return fa
}
return k.insert =
0, q === T ? (hb(k, !0), 0 === k.strm.avail_out ? qc : Xb) : (k.strstart > k.block_start && hb(k, !1), fa)
}), new fb(4, 4, 8, 4, x), new fb(4, 5, 16, 8, x), new fb(4, 6, 32, 32, x), new fb(4, 4, 16, 16, Aa), new fb(8, 16, 32, 32, Aa), new fb(8, 16, 128, 128, Aa), new fb(8, 32, 128, 256, Aa), new fb(32, 128, 258, 1024, Aa), new fb(32, 258, 258, 4096, Aa)];
H.deflateInit = function (k, q) {
return se(k, q, Eb, 15, 8, 0)
};
H.deflateInit2 = se;
H.deflateReset = Jd;
H.deflateResetKeep = K;
H.deflateSetHeader = function (k, q) {
return k && k.state ? 2 !== k.state.wrap ? Ha : (k.state.gzhead = q, xb) : Ha
};
H.deflate =
function (t, x) {
var y, J;
if (!t || !t.state || 5 < x || 0 > x) return t ? Q(t, Ha) : Ha;
if (J = t.state, !t.output || !t.input && 0 !== t.avail_in || 666 === J.status && x !== T) return Q(t, 0 === t.avail_out ? -5 : Ha);
if (J.strm = t, y = J.last_flush, J.last_flush = x, J.status === sa) if (2 === J.wrap) t.adler = 0, q(J, 31), q(J, 139), q(J, 8), J.gzhead ? (q(J, (J.gzhead.text ? 1 : 0) + (J.gzhead.hcrc ? 2 : 0) + (J.gzhead.extra ? 4 : 0) + (J.gzhead.name ? 8 : 0) + (J.gzhead.comment ? 16 : 0)), q(J, 255 & J.gzhead.time), q(J, J.gzhead.time >> 8 & 255), q(J, J.gzhead.time >> 16 & 255), q(J, J.gzhead.time >> 24 & 255),
q(J, 9 === J.level ? 2 : 2 <= J.strategy || 2 > J.level ? 4 : 0), q(J, 255 & J.gzhead.os), J.gzhead.extra && J.gzhead.extra.length && (q(J, 255 & J.gzhead.extra.length), q(J, J.gzhead.extra.length >> 8 & 255)), J.gzhead.hcrc && (t.adler = z(t.adler, J.pending_buf, J.pending, 0)), J.gzindex = 0, J.status = 69) : (q(J, 0), q(J, 0), q(J, 0), q(J, 0), q(J, 0), q(J, 9 === J.level ? 2 : 2 <= J.strategy || 2 > J.level ? 4 : 0), q(J, 3), J.status = S); else {
var E = Eb + (J.w_bits - 8 << 4) << 8;
E |= (2 <= J.strategy || 2 > J.level ? 0 : 6 > J.level ? 1 : 6 === J.level ? 2 : 3) << 6;
0 !== J.strstart && (E |= 32);
J.status = S;
k(J, E +
(31 - E % 31));
0 !== J.strstart && (k(J, t.adler >>> 16), k(J, 65535 & t.adler));
t.adler = 1
}
if (69 === J.status) if (J.gzhead.extra) {
for (E = J.pending; J.gzindex < (65535 & J.gzhead.extra.length) && (J.pending !== J.pending_buf_size || (J.gzhead.hcrc && J.pending > E && (t.adler = z(t.adler, J.pending_buf, J.pending - E, E)), u(t), E = J.pending, J.pending !== J.pending_buf_size));) q(J, 255 & J.gzhead.extra[J.gzindex]), J.gzindex++;
J.gzhead.hcrc && J.pending > E && (t.adler = z(t.adler, J.pending_buf, J.pending - E, E));
J.gzindex === J.gzhead.extra.length && (J.gzindex =
0, J.status = 73)
} else J.status = 73;
if (73 === J.status) if (J.gzhead.name) {
E = J.pending;
do {
if (J.pending === J.pending_buf_size && (J.gzhead.hcrc && J.pending > E && (t.adler = z(t.adler, J.pending_buf, J.pending - E, E)), u(t), E = J.pending, J.pending === J.pending_buf_size)) {
var K = 1;
break
}
K = J.gzindex < J.gzhead.name.length ? 255 & J.gzhead.name.charCodeAt(J.gzindex++) : 0;
q(J, K)
} while (0 !== K);
J.gzhead.hcrc && J.pending > E && (t.adler = z(t.adler, J.pending_buf, J.pending - E, E));
0 === K && (J.gzindex = 0, J.status = 91)
} else J.status = 91;
if (91 === J.status) if (J.gzhead.comment) {
E =
J.pending;
do {
if (J.pending === J.pending_buf_size && (J.gzhead.hcrc && J.pending > E && (t.adler = z(t.adler, J.pending_buf, J.pending - E, E)), u(t), E = J.pending, J.pending === J.pending_buf_size)) {
K = 1;
break
}
K = J.gzindex < J.gzhead.comment.length ? 255 & J.gzhead.comment.charCodeAt(J.gzindex++) : 0;
q(J, K)
} while (0 !== K);
J.gzhead.hcrc && J.pending > E && (t.adler = z(t.adler, J.pending_buf, J.pending - E, E));
0 === K && (J.status = 103)
} else J.status = 103;
if (103 === J.status && (J.gzhead.hcrc ? (J.pending + 2 > J.pending_buf_size && u(t), J.pending + 2 <= J.pending_buf_size &&
(q(J, 255 & t.adler), q(J, t.adler >> 8 & 255), t.adler = 0, J.status = S)) : J.status = S), 0 !== J.pending) {
if (u(t), 0 === t.avail_out) return J.last_flush = -1, xb
} else if (0 === t.avail_in && (x << 1) - (4 < x ? 9 : 0) <= (y << 1) - (4 < y ? 9 : 0) && x !== T) return Q(t, -5);
if (666 === J.status && 0 !== t.avail_in) return Q(t, -5);
if (0 !== t.avail_in || 0 !== J.lookahead || x !== Sa && 666 !== J.status) {
if (2 === J.strategy) a:{
for (var H; ;) {
if (0 === J.lookahead && (A(J), 0 === J.lookahead)) {
if (x === Sa) {
var N = fa;
break a
}
break
}
if (J.match_length = 0, H = ya._tr_tally(J, 0, J.window[J.strstart]),
J.lookahead--, J.strstart++, H && (hb(J, !1), 0 === J.strm.avail_out)) {
N = fa;
break a
}
}
N = (J.insert = 0, x === T ? (hb(J, !0), 0 === J.strm.avail_out ? qc : Xb) : J.last_lit && (hb(J, !1), 0 === J.strm.avail_out) ? fa : M)
} else if (3 === J.strategy) a:{
var R, V;
for (H = J.window; ;) {
if (J.lookahead <= Ca) {
if (A(J), J.lookahead <= Ca && x === Sa) {
N = fa;
break a
}
if (0 === J.lookahead) break
}
if (J.match_length = 0, J.lookahead >= ab && 0 < J.strstart && (V = J.strstart - 1, R = H[V], R === H[++V] && R === H[++V] && R === H[++V])) {
for (y = J.strstart + Ca; R === H[++V] && R === H[++V] && R === H[++V] && R === H[++V] &&
R === H[++V] && R === H[++V] && R === H[++V] && R === H[++V] && V < y;) ;
J.match_length = Ca - (y - V);
J.match_length > J.lookahead && (J.match_length = J.lookahead)
}
if (J.match_length >= ab ? (N = ya._tr_tally(J, 1, J.match_length - ab), J.lookahead -= J.match_length, J.strstart += J.match_length, J.match_length = 0) : (N = ya._tr_tally(J, 0, J.window[J.strstart]), J.lookahead--, J.strstart++), N && (hb(J, !1), 0 === J.strm.avail_out)) {
N = fa;
break a
}
}
N = (J.insert = 0, x === T ? (hb(J, !0), 0 === J.strm.avail_out ? qc : Xb) : J.last_lit && (hb(J, !1), 0 === J.strm.avail_out) ? fa : M)
} else N =
sc[J.level].func(J, x);
if (N !== qc && N !== Xb || (J.status = 666), N === fa || N === qc) return 0 === t.avail_out && (J.last_flush = -1), xb;
if (N === M && (1 === x ? ya._tr_align(J) : 5 !== x && (ya._tr_stored_block(J, 0, 0, !1), 3 === x && (ia(J.head), 0 === J.lookahead && (J.strstart = 0, J.block_start = 0, J.insert = 0))), u(t), 0 === t.avail_out)) return J.last_flush = -1, xb
}
return x !== T ? xb : 0 >= J.wrap ? 1 : (2 === J.wrap ? (q(J, 255 & t.adler), q(J, t.adler >> 8 & 255), q(J, t.adler >> 16 & 255), q(J, t.adler >> 24 & 255), q(J, 255 & t.total_in), q(J, t.total_in >> 8 & 255), q(J, t.total_in >> 16 & 255),
q(J, t.total_in >> 24 & 255)) : (k(J, t.adler >>> 16), k(J, 65535 & t.adler)), u(t), 0 < J.wrap && (J.wrap = -J.wrap), 0 !== J.pending ? xb : 1)
};
H.deflateEnd = function (k) {
var q;
return k && k.state ? (q = k.state.status, q !== sa && 69 !== q && 73 !== q && 91 !== q && 103 !== q && q !== S && 666 !== q ? Q(k, Ha) : (k.state = null, q === S ? Q(k, -3) : xb)) : Ha
};
H.deflateSetDictionary = function (k, q) {
var t, u, x;
var y = q.length;
if (!k || !k.state || (t = k.state, u = t.wrap, 2 === u || 1 === u && t.status !== sa || t.lookahead)) return Ha;
1 === u && (k.adler = V(k.adler, q, y, 0));
t.wrap = 0;
y >= t.w_size && (0 === u && (ia(t.head),
t.strstart = 0, t.block_start = 0, t.insert = 0), x = new Rb.Buf8(t.w_size), Rb.arraySet(x, q, y - t.w_size, t.w_size, 0), q = x, y = t.w_size);
x = k.avail_in;
var z = k.next_in;
var E = k.input;
k.avail_in = y;
k.next_in = 0;
k.input = q;
for (A(t); t.lookahead >= ab;) {
q = t.strstart;
y = t.lookahead - (ab - 1);
do t.ins_h = (t.ins_h << t.hash_shift ^ t.window[q + ab - 1]) & t.hash_mask, t.prev[q & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = q, q++; while (--y);
t.strstart = q;
t.lookahead = ab - 1;
A(t)
}
return t.strstart += t.lookahead, t.block_start = t.strstart, t.insert = t.lookahead,
t.lookahead = 0, t.match_length = t.prev_length = ab - 1, t.match_available = 0, k.next_in = z, k.input = E, k.avail_in = x, t.wrap = u, xb
};
H.deflateInfo = "pako deflate (from Nodeca project)"
}, {"../utils/common": 3, "./adler32": 5, "./crc32": 7, "./messages": 13, "./trees": 14}],
9: [function (y, R, H) {
R.exports = function () {
this.os = this.xflags = this.time = this.text = 0;
this.extra = null;
this.extra_len = 0;
this.comment = this.name = "";
this.hcrc = 0;
this.done = !1
}
}, {}],
10: [function (y, R, H) {
R.exports = function (y, H) {
var u, Q, q;
var k = y.state;
var t = y.next_in;
var A = y.input;
var x = t + (y.avail_in - 5);
var R = y.next_out;
var ia = y.output;
H = R - (H - y.avail_out);
var za = R + (y.avail_out - 257);
var K = k.dmax;
var Jd = k.wsize;
var se = k.whave;
var Rb = k.wnext;
var ya = k.window;
var V = k.hold;
var z = k.bits;
var Kd = k.lencode;
var Sa = k.distcode;
var T = (1 << k.lenbits) - 1;
var xb = (1 << k.distbits) - 1;
a:do {
15 > z && (V += A[t++] << z, z += 8, V += A[t++] << z, z += 8);
var Ha = Kd[V & T];
b:for (; ;) {
if (u = Ha >>> 24, V >>>= u, z -= u, u = Ha >>> 16 & 255, 0 === u) ia[R++] = 65535 & Ha; else {
if (!(16 & u)) {
if (0 === (64 & u)) {
Ha = Kd[(65535 & Ha) + (V & (1 << u) - 1)];
continue b
}
if (32 &
u) {
k.mode = 12;
break a
}
y.msg = "invalid literal/length code";
k.mode = 30;
break a
}
var Ba = 65535 & Ha;
(u &= 15) && (z < u && (V += A[t++] << z, z += 8), Ba += V & (1 << u) - 1, V >>>= u, z -= u);
15 > z && (V += A[t++] << z, z += 8, V += A[t++] << z, z += 8);
Ha = Sa[V & xb];
c:for (; ;) {
if (u = Ha >>> 24, V >>>= u, z -= u, u = Ha >>> 16 & 255, !(16 & u)) {
if (0 === (64 & u)) {
Ha = Sa[(65535 & Ha) + (V & (1 << u) - 1)];
continue c
}
y.msg = "invalid distance code";
k.mode = 30;
break a
}
if (Q = 65535 & Ha, u &= 15, z < u && (V += A[t++] << z, z += 8, z < u && (V += A[t++] << z, z += 8)), Q += V & (1 << u) - 1, Q > K) {
y.msg = "invalid distance too far back";
k.mode =
30;
break a
}
if (V >>>= u, z -= u, u = R - H, Q > u) {
if (u = Q - u, u > se && k.sane) {
y.msg = "invalid distance too far back";
k.mode = 30;
break a
}
if (Ha = 0, q = ya, 0 === Rb) {
if (Ha += Jd - u, u < Ba) {
Ba -= u;
do ia[R++] = ya[Ha++]; while (--u);
Ha = R - Q;
q = ia
}
} else if (Rb < u) {
if (Ha += Jd + Rb - u, u -= Rb, u < Ba) {
Ba -= u;
do ia[R++] = ya[Ha++]; while (--u);
if (Ha = 0, Rb < Ba) {
u = Rb;
Ba -= u;
do ia[R++] = ya[Ha++]; while (--u);
Ha = R - Q;
q = ia
}
}
} else if (Ha += Rb - u, u < Ba) {
Ba -= u;
do ia[R++] = ya[Ha++]; while (--u);
Ha = R - Q;
q = ia
}
for (; 2 < Ba;) ia[R++] = q[Ha++], ia[R++] = q[Ha++], ia[R++] = q[Ha++], Ba -= 3;
Ba && (ia[R++] =
q[Ha++], 1 < Ba && (ia[R++] = q[Ha++]))
} else {
Ha = R - Q;
do ia[R++] = ia[Ha++], ia[R++] = ia[Ha++], ia[R++] = ia[Ha++], Ba -= 3; while (2 < Ba);
Ba && (ia[R++] = ia[Ha++], 1 < Ba && (ia[R++] = ia[Ha++]))
}
break
}
}
break
}
} while (t < x && R < za);
Ba = z >> 3;
t -= Ba;
z -= Ba << 3;
y.next_in = t;
y.next_out = R;
y.avail_in = t < x ? 5 + (x - t) : 5 - (t - x);
y.avail_out = R < za ? 257 + (za - R) : 257 - (R - za);
k.hold = V & (1 << z) - 1;
k.bits = z
}
}, {}],
11: [function (y, R, H) {
function Q(k) {
return (k >>> 24 & 255) + (k >>> 8 & 65280) + ((65280 & k) << 8) + ((255 & k) << 24)
}
function ia() {
this.mode = 0;
this.last = !1;
this.wrap = 0;
this.havedict =
!1;
this.total = this.check = this.dmax = this.flags = 0;
this.head = null;
this.wnext = this.whave = this.wsize = this.wbits = 0;
this.window = null;
this.extra = this.offset = this.length = this.bits = this.hold = 0;
this.distcode = this.lencode = null;
this.have = this.ndist = this.nlen = this.ncode = this.distbits = this.lenbits = 0;
this.next = null;
this.lens = new Aa.Buf16(320);
this.work = new Aa.Buf16(288);
this.distdyn = this.lendyn = null;
this.was = this.back = this.sane = 0
}
function u(k) {
var q;
return k && k.state ? (q = k.state, k.total_in = k.total_out = q.total = 0, k.msg =
"", q.wrap && (k.adler = 1 & q.wrap), q.mode = ya, q.last = 0, q.havedict = 0, q.dmax = 32768, q.head = null, q.hold = 0, q.bits = 0, q.lencode = q.lendyn = new Aa.Buf32(V), q.distcode = q.distdyn = new Aa.Buf32(z), q.sane = 1, q.back = -1, se) : Rb
}
function hb(k) {
var q;
return k && k.state ? (q = k.state, q.wsize = 0, q.whave = 0, q.wnext = 0, u(k)) : Rb
}
function q(k, q) {
var t, u;
return k && k.state ? (u = k.state, 0 > q ? (t = 0, q = -q) : (t = (q >> 4) + 1, 48 > q && (q &= 15)), q && (8 > q || 15 < q) ? Rb : (null !== u.window && u.wbits !== q && (u.window = null), u.wrap = t, u.wbits = q, hb(k))) : Rb
}
function k(k, t) {
var u,
x;
return k ? (x = new ia, k.state = x, x.window = null, u = q(k, t), u !== se && (k.state = null), u) : Rb
}
function t(k, q, t, u) {
var x;
k = k.state;
return null === k.window && (k.wsize = 1 << k.wbits, k.wnext = 0, k.whave = 0, k.window = new Aa.Buf8(k.wsize)), u >= k.wsize ? (Aa.arraySet(k.window, q, t - k.wsize, k.wsize, 0), k.wnext = 0, k.whave = k.wsize) : (x = k.wsize - k.wnext, x > u && (x = u), Aa.arraySet(k.window, q, t - u, x, k.wnext), u -= x, u ? (Aa.arraySet(k.window, q, t - u, u, 0), k.wnext = u, k.whave = k.wsize) : (k.wnext += x, k.wnext === k.wsize && (k.wnext = 0), k.whave < k.wsize && (k.whave +=
x))), 0
}
var A, x, Aa = y("../utils/common"), fb = y("./adler32"), za = y("./crc32"), K = y("./inffast"),
Jd = y("./inftrees"), se = 0, Rb = -2, ya = 1, V = 852, z = 592, Kd = !0;
H.inflateReset = hb;
H.inflateReset2 = q;
H.inflateResetKeep = u;
H.inflateInit = function (q) {
return k(q, 15)
};
H.inflateInit2 = k;
H.inflate = function (k, q) {
var u, y, z, H, R, T, V, ia = 0, Sa = new Aa.Buf8(4),
hb = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15];
if (!k || !k.state || !k.output || !k.input && 0 !== k.avail_in) return Rb;
var E = k.state;
12 === E.mode && (E.mode = 13);
var Ga = k.next_out;
var Bb =
k.output;
var ab = k.avail_out;
var Ca = k.next_in;
var ua = k.input;
var sa = k.avail_in;
var S = E.hold;
var fa = E.bits;
var M = sa;
var qc = ab;
var Xb = se;
a:for (; ;) switch (E.mode) {
case ya:
if (0 === E.wrap) {
E.mode = 13;
break
}
for (; 16 > fa;) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
if (2 & E.wrap && 35615 === S) {
E.check = 0;
Sa[0] = 255 & S;
Sa[1] = S >>> 8 & 255;
E.check = za(E.check, Sa, 2, 0);
fa = S = 0;
E.mode = 2;
break
}
if (E.flags = 0, E.head && (E.head.done = !1), !(1 & E.wrap) || (((255 & S) << 8) + (S >> 8)) % 31) {
k.msg = "incorrect header check";
E.mode = 30;
break
}
if (8 !== (15 &
S)) {
k.msg = "unknown compression method";
E.mode = 30;
break
}
if (S >>>= 4, fa -= 4, T = (15 & S) + 8, 0 === E.wbits) E.wbits = T; else if (T > E.wbits) {
k.msg = "invalid window size";
E.mode = 30;
break
}
E.dmax = 1 << T;
k.adler = E.check = 1;
E.mode = 512 & S ? 10 : 12;
fa = S = 0;
break;
case 2:
for (; 16 > fa;) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
if (E.flags = S, 8 !== (255 & E.flags)) {
k.msg = "unknown compression method";
E.mode = 30;
break
}
if (57344 & E.flags) {
k.msg = "unknown header flags set";
E.mode = 30;
break
}
E.head && (E.head.text = S >> 8 & 1);
512 & E.flags && (Sa[0] = 255 & S, Sa[1] =
S >>> 8 & 255, E.check = za(E.check, Sa, 2, 0));
fa = S = 0;
E.mode = 3;
case 3:
for (; 32 > fa;) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
E.head && (E.head.time = S);
512 & E.flags && (Sa[0] = 255 & S, Sa[1] = S >>> 8 & 255, Sa[2] = S >>> 16 & 255, Sa[3] = S >>> 24 & 255, E.check = za(E.check, Sa, 4, 0));
fa = S = 0;
E.mode = 4;
case 4:
for (; 16 > fa;) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
E.head && (E.head.xflags = 255 & S, E.head.os = S >> 8);
512 & E.flags && (Sa[0] = 255 & S, Sa[1] = S >>> 8 & 255, E.check = za(E.check, Sa, 2, 0));
fa = S = 0;
E.mode = 5;
case 5:
if (1024 & E.flags) {
for (; 16 > fa;) {
if (0 ===
sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
E.length = S;
E.head && (E.head.extra_len = S);
512 & E.flags && (Sa[0] = 255 & S, Sa[1] = S >>> 8 & 255, E.check = za(E.check, Sa, 2, 0));
fa = S = 0
} else E.head && (E.head.extra = null);
E.mode = 6;
case 6:
if (1024 & E.flags && (u = E.length, u > sa && (u = sa), u && (E.head && (T = E.head.extra_len - E.length, E.head.extra || (E.head.extra = Array(E.head.extra_len)), Aa.arraySet(E.head.extra, ua, Ca, u, T)), 512 & E.flags && (E.check = za(E.check, ua, u, Ca)), sa -= u, Ca += u, E.length -= u), E.length)) break a;
E.length = 0;
E.mode = 7;
case 7:
if (2048 & E.flags) {
if (0 ===
sa) break a;
u = 0;
do T = ua[Ca + u++], E.head && T && 65536 > E.length && (E.head.name += String.fromCharCode(T)); while (T && u < sa);
if (512 & E.flags && (E.check = za(E.check, ua, u, Ca)), sa -= u, Ca += u, T) break a
} else E.head && (E.head.name = null);
E.length = 0;
E.mode = 8;
case 8:
if (4096 & E.flags) {
if (0 === sa) break a;
u = 0;
do T = ua[Ca + u++], E.head && T && 65536 > E.length && (E.head.comment += String.fromCharCode(T)); while (T && u < sa);
if (512 & E.flags && (E.check = za(E.check, ua, u, Ca)), sa -= u, Ca += u, T) break a
} else E.head && (E.head.comment = null);
E.mode = 9;
case 9:
if (512 &
E.flags) {
for (; 16 > fa;) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
if (S !== (65535 & E.check)) {
k.msg = "header crc mismatch";
E.mode = 30;
break
}
fa = S = 0
}
E.head && (E.head.hcrc = E.flags >> 9 & 1, E.head.done = !0);
k.adler = E.check = 0;
E.mode = 12;
break;
case 10:
for (; 32 > fa;) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
k.adler = E.check = Q(S);
fa = S = 0;
E.mode = 11;
case 11:
if (0 === E.havedict) return k.next_out = Ga, k.avail_out = ab, k.next_in = Ca, k.avail_in = sa, E.hold = S, E.bits = fa, 2;
k.adler = E.check = 1;
E.mode = 12;
case 12:
if (5 === q || 6 === q) break a;
case 13:
if (E.last) {
S >>>=
7 & fa;
fa -= 7 & fa;
E.mode = 27;
break
}
for (; 3 > fa;) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
switch (E.last = 1 & S, S >>>= 1, --fa, 3 & S) {
case 0:
E.mode = 14;
break;
case 1:
var sc = E;
if (Kd) {
A = new Aa.Buf32(512);
x = new Aa.Buf32(32);
for (z = 0; 144 > z;) sc.lens[z++] = 8;
for (; 256 > z;) sc.lens[z++] = 9;
for (; 280 > z;) sc.lens[z++] = 7;
for (; 288 > z;) sc.lens[z++] = 8;
Jd(1, sc.lens, 0, 288, A, 0, sc.work, {bits: 9});
for (z = 0; 32 > z;) sc.lens[z++] = 5;
Jd(2, sc.lens, 0, 32, x, 0, sc.work, {bits: 5});
Kd = !1
}
sc.lencode = A;
sc.lenbits = 9;
sc.distcode = x;
sc.distbits = 5;
if (E.mode = 20,
6 === q) {
S >>>= 2;
fa -= 2;
break a
}
break;
case 2:
E.mode = 17;
break;
case 3:
k.msg = "invalid block type", E.mode = 30
}
S >>>= 2;
fa -= 2;
break;
case 14:
S >>>= 7 & fa;
for (fa -= 7 & fa; 32 > fa;) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
if ((65535 & S) !== (S >>> 16 ^ 65535)) {
k.msg = "invalid stored block lengths";
E.mode = 30;
break
}
if (E.length = 65535 & S, S = 0, fa = 0, E.mode = 15, 6 === q) break a;
case 15:
E.mode = 16;
case 16:
if (u = E.length) {
if (u > sa && (u = sa), u > ab && (u = ab), 0 === u) break a;
Aa.arraySet(Bb, ua, Ca, u, Ga);
sa -= u;
Ca += u;
ab -= u;
Ga += u;
E.length -= u;
break
}
E.mode =
12;
break;
case 17:
for (; 14 > fa;) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
if (E.nlen = (31 & S) + 257, S >>>= 5, fa -= 5, E.ndist = (31 & S) + 1, S >>>= 5, fa -= 5, E.ncode = (15 & S) + 4, S >>>= 4, fa -= 4, 286 < E.nlen || 30 < E.ndist) {
k.msg = "too many length or distance symbols";
E.mode = 30;
break
}
E.have = 0;
E.mode = 18;
case 18:
for (; E.have < E.ncode;) {
for (; 3 > fa;) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
E.lens[hb[E.have++]] = 7 & S;
S >>>= 3;
fa -= 3
}
for (; 19 > E.have;) E.lens[hb[E.have++]] = 0;
if (E.lencode = E.lendyn, E.lenbits = 7, V = {bits: E.lenbits}, Xb = Jd(0, E.lens,
0, 19, E.lencode, 0, E.work, V), E.lenbits = V.bits, Xb) {
k.msg = "invalid code lengths set";
E.mode = 30;
break
}
E.have = 0;
E.mode = 19;
case 19:
for (; E.have < E.nlen + E.ndist;) {
for (; ia = E.lencode[S & (1 << E.lenbits) - 1], H = ia >>> 24, sc = 65535 & ia, !(H <= fa);) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
if (16 > sc) S >>>= H, fa -= H, E.lens[E.have++] = sc; else {
if (16 === sc) {
for (z = H + 2; fa < z;) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
if (S >>>= H, fa -= H, 0 === E.have) {
k.msg = "invalid bit length repeat";
E.mode = 30;
break
}
T = E.lens[E.have - 1];
u = 3 + (3 & S);
S >>>=
2;
fa -= 2
} else if (17 === sc) {
for (z = H + 3; fa < z;) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
S >>>= H;
fa -= H;
T = 0;
u = 3 + (7 & S);
S >>>= 3;
fa -= 3
} else {
for (z = H + 7; fa < z;) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
S >>>= H;
fa -= H;
T = 0;
u = 11 + (127 & S);
S >>>= 7;
fa -= 7
}
if (E.have + u > E.nlen + E.ndist) {
k.msg = "invalid bit length repeat";
E.mode = 30;
break
}
for (; u--;) E.lens[E.have++] = T
}
}
if (30 === E.mode) break;
if (0 === E.lens[256]) {
k.msg = "invalid code -- missing end-of-block";
E.mode = 30;
break
}
if (E.lenbits = 9, V = {bits: E.lenbits}, Xb = Jd(1, E.lens, 0, E.nlen,
E.lencode, 0, E.work, V), E.lenbits = V.bits, Xb) {
k.msg = "invalid literal/lengths set";
E.mode = 30;
break
}
if (E.distbits = 6, E.distcode = E.distdyn, V = {bits: E.distbits}, Xb = Jd(2, E.lens, E.nlen, E.ndist, E.distcode, 0, E.work, V), E.distbits = V.bits, Xb) {
k.msg = "invalid distances set";
E.mode = 30;
break
}
if (E.mode = 20, 6 === q) break a;
case 20:
E.mode = 21;
case 21:
if (6 <= sa && 258 <= ab) {
k.next_out = Ga;
k.avail_out = ab;
k.next_in = Ca;
k.avail_in = sa;
E.hold = S;
E.bits = fa;
K(k, qc);
Ga = k.next_out;
Bb = k.output;
ab = k.avail_out;
Ca = k.next_in;
ua = k.input;
sa = k.avail_in;
S = E.hold;
fa = E.bits;
12 === E.mode && (E.back = -1);
break
}
for (E.back = 0; ia = E.lencode[S & (1 << E.lenbits) - 1], H = ia >>> 24, z = ia >>> 16 & 255, sc = 65535 & ia, !(H <= fa);) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
if (z && 0 === (240 & z)) {
var N = H;
var vf = z;
for (R = sc; ia = E.lencode[R + ((S & (1 << N + vf) - 1) >> N)], H = ia >>> 24, z = ia >>> 16 & 255, sc = 65535 & ia, !(N + H <= fa);) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
S >>>= N;
fa -= N;
E.back += N
}
if (S >>>= H, fa -= H, E.back += H, E.length = sc, 0 === z) {
E.mode = 26;
break
}
if (32 & z) {
E.back = -1;
E.mode = 12;
break
}
if (64 & z) {
k.msg = "invalid literal/length code";
E.mode = 30;
break
}
E.extra = 15 & z;
E.mode = 22;
case 22:
if (E.extra) {
for (z = E.extra; fa < z;) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
E.length += S & (1 << E.extra) - 1;
S >>>= E.extra;
fa -= E.extra;
E.back += E.extra
}
E.was = E.length;
E.mode = 23;
case 23:
for (; ia = E.distcode[S & (1 << E.distbits) - 1], H = ia >>> 24, z = ia >>> 16 & 255, sc = 65535 & ia, !(H <= fa);) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
if (0 === (240 & z)) {
N = H;
vf = z;
for (R = sc; ia = E.distcode[R + ((S & (1 << N + vf) - 1) >> N)], H = ia >>> 24, z = ia >>> 16 & 255, sc = 65535 & ia, !(N + H <= fa);) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
S >>>= N;
fa -= N;
E.back += N
}
if (S >>>= H, fa -= H, E.back += H, 64 & z) {
k.msg = "invalid distance code";
E.mode = 30;
break
}
E.offset = sc;
E.extra = 15 & z;
E.mode = 24;
case 24:
if (E.extra) {
for (z = E.extra; fa < z;) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
E.offset += S & (1 << E.extra) - 1;
S >>>= E.extra;
fa -= E.extra;
E.back += E.extra
}
if (E.offset > E.dmax) {
k.msg = "invalid distance too far back";
E.mode = 30;
break
}
E.mode = 25;
case 25:
if (0 === ab) break a;
if (u = qc - ab, E.offset > u) {
if (u = E.offset - u, u > E.whave && E.sane) {
k.msg = "invalid distance too far back";
E.mode = 30;
break
}
u > E.wnext ? (u -= E.wnext, y = E.wsize - u) : y = E.wnext - u;
u > E.length && (u = E.length);
z = E.window
} else z = Bb, y = Ga - E.offset, u = E.length;
u > ab && (u = ab);
ab -= u;
E.length -= u;
do Bb[Ga++] = z[y++]; while (--u);
0 === E.length && (E.mode = 21);
break;
case 26:
if (0 === ab) break a;
Bb[Ga++] = E.length;
ab--;
E.mode = 21;
break;
case 27:
if (E.wrap) {
for (; 32 > fa;) {
if (0 === sa) break a;
sa--;
S |= ua[Ca++] << fa;
fa += 8
}
if (qc -= ab, k.total_out += qc, E.total += qc, qc && (k.adler = E.check = E.flags ? za(E.check, Bb, qc, Ga - qc) : fb(E.check, Bb, qc, Ga - qc)), qc = ab, (E.flags ? S :
Q(S)) !== E.check) {
k.msg = "incorrect data check";
E.mode = 30;
break
}
fa = S = 0
}
E.mode = 28;
case 28:
if (E.wrap && E.flags) {
for (; 32 > fa;) {
if (0 === sa) break a;
sa--;
S += ua[Ca++] << fa;
fa += 8
}
if (S !== (4294967295 & E.total)) {
k.msg = "incorrect length check";
E.mode = 30;
break
}
fa = S = 0
}
E.mode = 29;
case 29:
Xb = 1;
break a;
case 30:
Xb = -3;
break a;
case 31:
return -4;
default:
return Rb
}
return k.next_out = Ga, k.avail_out = ab, k.next_in = Ca, k.avail_in = sa, E.hold = S, E.bits = fa, (E.wsize || qc !== k.avail_out && 30 > E.mode && (27 > E.mode || 4 !== q)) && t(k, k.output, k.next_out,
qc - k.avail_out) ? (E.mode = 31, -4) : (M -= k.avail_in, qc -= k.avail_out, k.total_in += M, k.total_out += qc, E.total += qc, E.wrap && qc && (k.adler = E.check = E.flags ? za(E.check, Bb, qc, k.next_out - qc) : fb(E.check, Bb, qc, k.next_out - qc)), k.data_type = E.bits + (E.last ? 64 : 0) + (12 === E.mode ? 128 : 0) + (20 === E.mode || 15 === E.mode ? 256 : 0), (0 === M && 0 === qc || 4 === q) && Xb === se && (Xb = -5), Xb)
};
H.inflateEnd = function (k) {
if (!k || !k.state) return Rb;
var q = k.state;
return q.window && (q.window = null), k.state = null, se
};
H.inflateGetHeader = function (k, q) {
var t;
return k &&
k.state ? (t = k.state, 0 === (2 & t.wrap) ? Rb : (t.head = q, q.done = !1, se)) : Rb
};
H.inflateSetDictionary = function (k, q) {
var u, x, y = q.length;
return k && k.state ? (u = k.state, 0 !== u.wrap && 11 !== u.mode ? Rb : 11 === u.mode && (x = 1, x = fb(x, q, y, 0), x !== u.check) ? -3 : t(k, q, y, y) ? (u.mode = 31, -4) : (u.havedict = 1, se)) : Rb
};
H.inflateInfo = "pako inflate (from Nodeca project)"
}, {"../utils/common": 3, "./adler32": 5, "./crc32": 7, "./inffast": 10, "./inftrees": 12}],
12: [function (y, R, H) {
var Q = y("../utils/common"), ia = [3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35,
43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0],
u = [16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78],
hb = [1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 0, 0],
q = [16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64];
R.exports = function (k, t, y, x, H, R, za, K) {
var A, Aa, fb, ya, V, z, Kd = K.bits, Sa, T, xb, Ha, Ba, te = 0, jb, ue = null, Eb = 0,
yd = new Q.Buf16(16);
var jd = new Q.Buf16(16);
var Oc = null, E = 0;
for (Sa = 0; 15 >= Sa; Sa++) yd[Sa] = 0;
for (T = 0; T < x; T++) yd[t[y + T]]++;
var Ga = Kd;
for (xb = 15; 1 <= xb && 0 === yd[xb]; xb--) ;
if (Ga > xb && (Ga = xb), 0 === xb) return H[R++] = 20971520, H[R++] = 20971520, K.bits = 1, 0;
for (Kd = 1; Kd < xb && 0 === yd[Kd]; Kd++) ;
Ga < Kd && (Ga = Kd);
for (Sa = A = 1; 15 >= Sa; Sa++) if (A <<= 1, A -= yd[Sa], 0 > A) return -1;
if (0 < A && (0 === k || 1 !== xb)) return -1;
jd[1] = 0;
for (Sa = 1; 15 > Sa; Sa++) jd[Sa + 1] = jd[Sa] + yd[Sa];
for (T = 0; T < x; T++) 0 !== t[y + T] && (za[jd[t[y + T]]++] = T);
if (0 === k ? (ue = Oc = za, ya = 19) : 1 === k ? (ue = ia, Eb -= 257, Oc = u, E -= 257, ya = 256) : (ue =
hb, Oc = q, ya = -1), jb = 0, T = 0, Sa = Kd, jd = R, Ha = Ga, Ba = 0, fb = -1, te = 1 << Ga, x = te - 1, 1 === k && 852 < te || 2 === k && 592 < te) return 1;
for (var Bb = 0; ;) {
Bb++;
var ab = Sa - Ba;
za[T] < ya ? (V = 0, z = za[T]) : za[T] > ya ? (V = Oc[E + za[T]], z = ue[Eb + za[T]]) : (V = 96, z = 0);
A = 1 << Sa - Ba;
Kd = Aa = 1 << Ha;
do Aa -= A, H[jd + (jb >> Ba) + Aa] = ab << 24 | V << 16 | z | 0; while (0 !== Aa);
for (A = 1 << Sa - 1; jb & A;) A >>= 1;
if (0 !== A ? (jb &= A - 1, jb += A) : jb = 0, T++, 0 === --yd[Sa]) {
if (Sa === xb) break;
Sa = t[y + za[T]]
}
if (Sa > Ga && (jb & x) !== fb) {
0 === Ba && (Ba = Ga);
jd += Kd;
Ha = Sa - Ba;
for (A = 1 << Ha; Ha + Ba < xb && (A -= yd[Ha + Ba], !(0 >= A));) Ha++,
A <<= 1;
if (te += 1 << Ha, 1 === k && 852 < te || 2 === k && 592 < te) return 1;
fb = jb & x;
H[fb] = Ga << 24 | Ha << 16 | jd - R | 0
}
}
return 0 !== jb && (H[jd + jb] = Sa - Ba << 24 | 4194304), K.bits = Ga, 0
}
}, {"../utils/common": 3}],
13: [function (y, R, H) {
R.exports = {
2: "need dictionary",
1: "stream end",
0: "",
"-1": "file error",
"-2": "stream error",
"-3": "data error",
"-4": "insufficient memory",
"-5": "buffer error",
"-6": "incompatible version"
}
}, {}],
14: [function (y, R, H) {
function Q(k) {
for (var q = k.length; 0 <= --q;) k[q] = 0
}
function ia(k, q, t, u, x) {
this.static_tree = k;
this.extra_bits =
q;
this.extra_base = t;
this.elems = u;
this.max_length = x;
this.has_stree = k && k.length
}
function u(k, q) {
this.dyn_tree = k;
this.max_code = 0;
this.stat_desc = q
}
function hb(k, q) {
k.pending_buf[k.pending++] = 255 & q;
k.pending_buf[k.pending++] = q >>> 8 & 255
}
function q(k, q, t) {
k.bi_valid > Eb - t ? (k.bi_buf |= q << k.bi_valid & 65535, hb(k, k.bi_buf), k.bi_buf = q >> Eb - k.bi_valid, k.bi_valid += t - Eb) : (k.bi_buf |= q << k.bi_valid & 65535, k.bi_valid += t)
}
function k(k, t, u) {
q(k, u[2 * t], u[2 * t + 1])
}
function t(k, q) {
var t = 0;
do t |= 1 & k, k >>>= 1, t <<= 1; while (0 < --q);
return t >>>
1
}
function A(k, q, u) {
var x, y = Array(ue + 1), z = 0;
for (x = 1; x <= ue; x++) y[x] = z = z + u[x - 1] << 1;
for (u = 0; u <= q; u++) x = k[2 * u + 1], 0 !== x && (k[2 * u] = t(y[x]++, x))
}
function x(k) {
var q;
for (q = 0; q < Ha; q++) k.dyn_ltree[2 * q] = 0;
for (q = 0; q < Ba; q++) k.dyn_dtree[2 * q] = 0;
for (q = 0; q < te; q++) k.bl_tree[2 * q] = 0;
k.dyn_ltree[2 * yd] = 1;
k.opt_len = k.static_len = 0;
k.last_lit = k.matches = 0
}
function Aa(k) {
8 < k.bi_valid ? hb(k, k.bi_buf) : 0 < k.bi_valid && (k.pending_buf[k.pending++] = k.bi_buf);
k.bi_buf = 0;
k.bi_valid = 0
}
function fb(k, q, t, u) {
var x = 2 * q, y = 2 * t;
return k[x] < k[y] ||
k[x] === k[y] && u[q] <= u[t]
}
function za(k, q, t) {
for (var u = k.heap[t], x = t << 1; x <= k.heap_len && (x < k.heap_len && fb(q, k.heap[x + 1], k.heap[x], k.depth) && x++, !fb(q, u, k.heap[x], k.depth));) k.heap[t] = k.heap[x], t = x, x <<= 1;
k.heap[t] = u
}
function K(t, u, x) {
var y, z, A = 0;
if (0 !== t.last_lit) {
do {
var J = t.pending_buf[t.d_buf + 2 * A] << 8 | t.pending_buf[t.d_buf + 2 * A + 1];
var E = t.pending_buf[t.l_buf + A];
A++;
0 === J ? k(t, E, u) : (y = fa[E], k(t, y + xb + 1, u), z = Ga[y], 0 !== z && (E -= M[y], q(t, E, z)), J--, y = 256 > J ? S[J] : S[256 + (J >>> 7)], k(t, y, x), z = Bb[y], 0 !== z && (J -= qc[y],
q(t, J, z)))
} while (A < t.last_lit)
}
k(t, yd, u)
}
function Jd(k, q) {
var t, u = q.dyn_tree;
var x = q.stat_desc.static_tree;
var y = q.stat_desc.has_stree, z = q.stat_desc.elems, E = -1;
k.heap_len = 0;
k.heap_max = jb;
for (t = 0; t < z; t++) 0 !== u[2 * t] ? (k.heap[++k.heap_len] = E = t, k.depth[t] = 0) : u[2 * t + 1] = 0;
for (; 2 > k.heap_len;) {
var J = k.heap[++k.heap_len] = 2 > E ? ++E : 0;
u[2 * J] = 1;
k.depth[J] = 0;
k.opt_len--;
y && (k.static_len -= x[2 * J + 1])
}
q.max_code = E;
for (t = k.heap_len >> 1; 1 <= t; t--) za(k, u, t);
J = z;
do t = k.heap[1], k.heap[1] = k.heap[k.heap_len--], za(k, u, 1), x = k.heap[1],
k.heap[--k.heap_max] = t, k.heap[--k.heap_max] = x, u[2 * J] = u[2 * t] + u[2 * x], k.depth[J] = (k.depth[t] >= k.depth[x] ? k.depth[t] : k.depth[x]) + 1, u[2 * t + 1] = u[2 * x + 1] = J, k.heap[1] = J++, za(k, u, 1); while (2 <= k.heap_len);
k.heap[--k.heap_max] = k.heap[1];
var H, K;
t = q.dyn_tree;
J = q.max_code;
z = q.stat_desc.static_tree;
var M = q.stat_desc.has_stree, N = q.stat_desc.extra_bits, Q = q.stat_desc.extra_base,
R = q.stat_desc.max_length, S = 0;
for (y = 0; y <= ue; y++) k.bl_count[y] = 0;
t[2 * k.heap[k.heap_max] + 1] = 0;
for (q = k.heap_max + 1; q < jb; q++) x = k.heap[q], y = t[2 * t[2 *
x + 1] + 1] + 1, y > R && (y = R, S++), t[2 * x + 1] = y, x > J || (k.bl_count[y]++, H = 0, x >= Q && (H = N[x - Q]), K = t[2 * x], k.opt_len += K * (y + H), M && (k.static_len += K * (z[2 * x + 1] + H)));
if (0 !== S) {
do {
for (y = R - 1; 0 === k.bl_count[y];) y--;
k.bl_count[y]--;
k.bl_count[y + 1] += 2;
k.bl_count[R]--;
S -= 2
} while (0 < S);
for (y = R; 0 !== y; y--) for (x = k.bl_count[y]; 0 !== x;) H = k.heap[--q], H > J || (t[2 * H + 1] !== y && (k.opt_len += (y - t[2 * H + 1]) * t[2 * H], t[2 * H + 1] = y), x--)
}
A(u, E, k.bl_count)
}
function se(k, q, t) {
var u, x = -1, y = q[1], z = 0, A = 7, J = 4;
0 === y && (A = 138, J = 3);
q[2 * (t + 1) + 1] = 65535;
for (u = 0; u <= t; u++) {
var H =
y;
y = q[2 * (u + 1) + 1];
++z < A && H === y || (z < J ? k.bl_tree[2 * H] += z : 0 !== H ? (H !== x && k.bl_tree[2 * H]++, k.bl_tree[2 * jd]++) : 10 >= z ? k.bl_tree[2 * Oc]++ : k.bl_tree[2 * E]++, z = 0, x = H, 0 === y ? (A = 138, J = 3) : H === y ? (A = 6, J = 3) : (A = 7, J = 4))
}
}
function Rb(t, u, x) {
var y, z, A = -1, J = u[1], H = 0, K = 7, M = 4;
0 === J && (K = 138, M = 3);
for (y = 0; y <= x; y++) if (z = J, J = u[2 * (y + 1) + 1], !(++H < K && z === J)) {
if (H < M) {
do k(t, z, t.bl_tree); while (0 !== --H)
} else 0 !== z ? (z !== A && (k(t, z, t.bl_tree), H--), k(t, jd, t.bl_tree), q(t, H - 3, 2)) : 10 >= H ? (k(t, Oc, t.bl_tree), q(t, H - 3, 3)) : (k(t, E, t.bl_tree), q(t, H -
11, 7));
H = 0;
A = z;
0 === J ? (K = 138, M = 3) : z === J ? (K = 6, M = 3) : (K = 7, M = 4)
}
}
function ya(k) {
var q, t = 4093624447;
for (q = 0; 31 >= q; q++, t >>>= 1) if (1 & t && 0 !== k.dyn_ltree[2 * q]) return Kd;
if (0 !== k.dyn_ltree[18] || 0 !== k.dyn_ltree[20] || 0 !== k.dyn_ltree[26]) return Sa;
for (q = 32; q < xb; q++) if (0 !== k.dyn_ltree[2 * q]) return Sa;
return Kd
}
function V(k, t, u, x) {
q(k, (T << 1) + (x ? 1 : 0), 3);
Aa(k);
hb(k, u);
hb(k, ~u);
z.arraySet(k.pending_buf, k.window, t, u, k.pending);
k.pending += u
}
var z = y("../utils/common"), Kd = 0, Sa = 1, T = 0, xb = 256, Ha = xb + 1 + 29, Ba = 30, te = 19,
jb = 2 * Ha +
1, ue = 15, Eb = 16, yd = 256, jd = 16, Oc = 17, E = 18,
Ga = [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0],
Bb = [0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13],
ab = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7],
Ca = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15], ua = Array(2 * (Ha + 2));
Q(ua);
var sa = Array(2 * Ba);
Q(sa);
var S = Array(512);
Q(S);
var fa = Array(256);
Q(fa);
var M = Array(29);
Q(M);
var qc = Array(Ba);
Q(qc);
var Xb, sc, N, vf = !1;
H._tr_init = function (k) {
if (!vf) {
var q, y, z, E = Array(ue + 1);
for (z = y = 0; 28 > z; z++) for (M[z] =
y, q = 0; q < 1 << Ga[z]; q++) fa[y++] = z;
fa[y - 1] = z;
for (z = y = 0; 16 > z; z++) for (qc[z] = y, q = 0; q < 1 << Bb[z]; q++) S[y++] = z;
for (y >>= 7; z < Ba; z++) for (qc[z] = y << 7, q = 0; q < 1 << Bb[z] - 7; q++) S[256 + y++] = z;
for (q = 0; q <= ue; q++) E[q] = 0;
for (q = 0; 143 >= q;) ua[2 * q + 1] = 8, q++, E[8]++;
for (; 255 >= q;) ua[2 * q + 1] = 9, q++, E[9]++;
for (; 279 >= q;) ua[2 * q + 1] = 7, q++, E[7]++;
for (; 287 >= q;) ua[2 * q + 1] = 8, q++, E[8]++;
A(ua, Ha + 1, E);
for (q = 0; q < Ba; q++) sa[2 * q + 1] = 5, sa[2 * q] = t(q, 5);
Xb = new ia(ua, Ga, xb + 1, Ha, ue);
sc = new ia(sa, Bb, 0, Ba, ue);
N = new ia([], ab, 0, te, 7);
vf = !0
}
k.l_desc = new u(k.dyn_ltree,
Xb);
k.d_desc = new u(k.dyn_dtree, sc);
k.bl_desc = new u(k.bl_tree, N);
k.bi_buf = 0;
k.bi_valid = 0;
x(k)
};
H._tr_stored_block = V;
H._tr_flush_block = function (k, t, u, y) {
var z = 0;
if (0 < k.level) {
2 === k.strm.data_type && (k.strm.data_type = ya(k));
Jd(k, k.l_desc);
Jd(k, k.d_desc);
se(k, k.dyn_ltree, k.l_desc.max_code);
se(k, k.dyn_dtree, k.d_desc.max_code);
Jd(k, k.bl_desc);
for (z = te - 1; 3 <= z && 0 === k.bl_tree[2 * Ca[z] + 1]; z--) ;
z = (k.opt_len += 3 * (z + 1) + 14, z);
var A = k.opt_len + 3 + 7 >>> 3;
var E = k.static_len + 3 + 7 >>> 3;
E <= A && (A = E)
} else A = E = u + 5;
if (u + 4 <= A && -1 !==
t) V(k, t, u, y); else if (4 === k.strategy || E === A) q(k, 2 + (y ? 1 : 0), 3), K(k, ua, sa); else {
q(k, 4 + (y ? 1 : 0), 3);
t = k.l_desc.max_code + 1;
u = k.d_desc.max_code + 1;
z += 1;
q(k, t - 257, 5);
q(k, u - 1, 5);
q(k, z - 4, 4);
for (A = 0; A < z; A++) q(k, k.bl_tree[2 * Ca[A] + 1], 3);
Rb(k, k.dyn_ltree, t - 1);
Rb(k, k.dyn_dtree, u - 1);
K(k, k.dyn_ltree, k.dyn_dtree)
}
x(k);
y && Aa(k)
};
H._tr_tally = function (k, q, t) {
return k.pending_buf[k.d_buf + 2 * k.last_lit] = q >>> 8 & 255, k.pending_buf[k.d_buf + 2 * k.last_lit + 1] = 255 & q, k.pending_buf[k.l_buf + k.last_lit] = 255 & t, k.last_lit++, 0 === q ? k.dyn_ltree[2 *
t]++ : (k.matches++, q--, k.dyn_ltree[2 * (fa[t] + xb + 1)]++, k.dyn_dtree[2 * (256 > q ? S[q] : S[256 + (q >>> 7)])]++), k.last_lit === k.lit_bufsize - 1
};
H._tr_align = function (t) {
q(t, 2, 3);
k(t, yd, ua);
16 === t.bi_valid ? (hb(t, t.bi_buf), t.bi_buf = 0, t.bi_valid = 0) : 8 <= t.bi_valid && (t.pending_buf[t.pending++] = 255 & t.bi_buf, t.bi_buf >>= 8, t.bi_valid -= 8)
}
}, {"../utils/common": 3}],
15: [function (y, R, H) {
R.exports = function () {
this.input = null;
this.total_in = this.avail_in = this.next_in = 0;
this.output = null;
this.total_out = this.avail_out = this.next_out = 0;
this.msg = "";
this.state = null;
this.data_type = 2;
this.adler = 0
}
}, {}],
"/": [function (y, R, H) {
H = y("./lib/utils/common").assign;
var Q = y("./lib/deflate"), ia = y("./lib/inflate");
y = y("./lib/zlib/constants");
var u = {};
H(u, Q, ia, y);
R.exports = u
}, {"./lib/deflate": 1, "./lib/inflate": 2, "./lib/utils/common": 3, "./lib/zlib/constants": 6}]
}, {}, [])("/")
});
var saveAs = saveAs || function (la) {
if (!("undefined" === typeof la || "undefined" !== typeof navigator && /MSIE [1-9]\./.test(navigator.userAgent))) {
var y = la.document.createElementNS("http://www.w3.org/1999/xhtml", "a"), R = "download" in y,
H = /constructor/i.test(la.HTMLElement) || la.safari, Q = /CriOS\/[\d]+/.test(navigator.userAgent),
ia = function (k) {
(la.setImmediate || la.setTimeout)(function () {
throw k;
}, 0)
}, u = function (k) {
setTimeout(function () {
"string" === typeof k ? (la.URL || la.webkitURL || la).revokeObjectURL(k) : k.remove()
},
4E4)
}, hb = function (k) {
return /^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(k.type) ? new Blob([String.fromCharCode(65279), k], {type: k.type}) : k
}, q = function (k, q, x) {
x || (k = hb(k));
var t = this, A = "application/octet-stream" === k.type, za = function () {
var k = ["writestart", "progress", "write", "writeend"];
k = [].concat(k);
for (var q = k.length; q--;) {
var u = t["on" + k[q]];
if ("function" === typeof u) try {
u.call(t, t)
} catch (ya) {
ia(ya)
}
}
};
t.readyState = t.INIT;
if (R) {
var K = (la.URL || la.webkitURL || la).createObjectURL(k);
setTimeout(function () {
y.href = K;
y.download = q;
var k = new MouseEvent("click");
y.dispatchEvent(k);
za();
u(K);
t.readyState = t.DONE
})
} else (function () {
if ((Q || A && H) && la.FileReader) {
var q = new FileReader;
q.onloadend = function () {
var k = Q ? q.result : q.result.replace(/^data:[^;]*;/, "data:attachment/file;");
la.open(k, "_blank") || (la.location.href = k);
t.readyState = t.DONE;
za()
};
q.readAsDataURL(k);
t.readyState = t.INIT
} else K || (K = (la.URL || la.webkitURL || la).createObjectURL(k)), A ? la.location.href = K : la.open(K, "_blank") || (la.location.href =
K), t.readyState = t.DONE, za(), u(K)
})()
}, k = q.prototype;
if ("undefined" !== typeof navigator && navigator.msSaveOrOpenBlob) return function (k, q, u) {
q = q || k.name || "download";
u || (k = hb(k));
return navigator.msSaveOrOpenBlob(k, q)
};
k.abort = function () {
};
k.readyState = k.INIT = 0;
k.WRITING = 1;
k.DONE = 2;
k.error = k.onwritestart = k.onprogress = k.onwrite = k.onabort = k.onerror = k.onwriteend = null;
return function (k, u, x) {
return new q(k, u || k.name || "download", x)
}
}
}("undefined" !== typeof self && self || "undefined" !== typeof window && window || this.content);
"undefined" !== typeof module && module.exports ? module.exports.saveAs = saveAs : "undefined" !== typeof define && null !== define && null !== define.amd && define("FileSaver.js", function () {
return saveAs
});
"function" == typeof define && define.__amd && (define.amd = define.__amd, delete define.__amd);
//# sourceMappingURL=Into_The_Pit_EasyMode.js.map