From 379e248a30c4f457ecb820932601ab5153edfbc9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Mendes?= Date: Thu, 9 Apr 2020 20:18:14 -0300 Subject: [PATCH] diminui tamanho dos fundos pra ver se aparecem nos mobiles --- Bozorun.js | 119414 +--------------------- assets/images/backgrounds/bgnovo.png | Bin 38845 -> 65104 bytes assets/images/backgrounds/bgnovo02.png | Bin 5775 -> 5580 bytes assets/images/backgrounds/bgnovo04.png | Bin 7244 -> 6391 bytes assets/images/backgrounds/bgnovo06.png | Bin 7130 -> 6763 bytes assets/images/backgrounds/bgnovo08.png | Bin 35748 -> 33756 bytes assets/images/backgrounds/bgnovo10.png | Bin 15313 -> 11836 bytes manifest/default.json | 2 +- source/BozoRunGameState.hx | 44 +- 9 files changed, 2471 insertions(+), 116989 deletions(-) diff --git a/Bozorun.js b/Bozorun.js index f2f291d..5a9dcb4 100644 --- a/Bozorun.js +++ b/Bozorun.js @@ -1,116976 +1,2438 @@ -(function ($hx_exports, $global) { "use strict"; var $hx_script = (function (exports, global) { // Generated by Haxe 4.0.5 -(function ($hx_exports, $global) { "use strict"; -$hx_exports["lime"] = $hx_exports["lime"] || {}; -var $hxClasses = {},$estr = function() { return js_Boot.__string_rec(this,''); },$hxEnums = $hxEnums || {},$_; -function $extend(from, fields) { - var proto = Object.create(from); - for (var name in fields) proto[name] = fields[name]; - if( fields.toString !== Object.prototype.toString ) proto.toString = fields.toString; - return proto; -} -var lime_app_IModule = function() { }; -$hxClasses["lime.app.IModule"] = lime_app_IModule; -lime_app_IModule.__name__ = "lime.app.IModule"; -lime_app_IModule.__isInterface__ = true; -lime_app_IModule.prototype = { - __registerLimeModule: null - ,__unregisterLimeModule: null - ,__class__: lime_app_IModule -}; -var lime_app_Module = function() { - this.onExit = new lime_app__$Event_$Int_$Void(); -}; -$hxClasses["lime.app.Module"] = lime_app_Module; -lime_app_Module.__name__ = "lime.app.Module"; -lime_app_Module.__interfaces__ = [lime_app_IModule]; -lime_app_Module.prototype = { - onExit: null - ,__registerLimeModule: function(application) { - } - ,__unregisterLimeModule: function(application) { - } - ,__class__: lime_app_Module -}; -var lime__$internal_backend_html5_HTML5Application = function(parent) { - this.gameDeviceCache = new haxe_ds_IntMap(); - this.parent = parent; - this.currentUpdate = 0; - this.lastUpdate = 0; - this.nextUpdate = 0; - this.framePeriod = -1; - lime_media_AudioManager.init(); - this.accelerometer = lime_system_Sensor.registerSensor(lime_system_SensorType.ACCELEROMETER,0); -}; -$hxClasses["lime._internal.backend.html5.HTML5Application"] = lime__$internal_backend_html5_HTML5Application; -lime__$internal_backend_html5_HTML5Application.__name__ = "lime._internal.backend.html5.HTML5Application"; -lime__$internal_backend_html5_HTML5Application.prototype = { - gameDeviceCache: null - ,accelerometer: null - ,currentUpdate: null - ,deltaTime: null - ,framePeriod: null - ,lastUpdate: null - ,nextUpdate: null - ,parent: null - ,convertKeyCode: function(keyCode) { - if(keyCode >= 65 && keyCode <= 90) { - return keyCode + 32; - } - switch(keyCode) { - case 12: - return 1073741980; - case 16: - return 1073742049; - case 17: - return 1073742048; - case 18: - return 1073742050; - case 19: - return 1073741896; - case 20: - return 1073741881; - case 33: - return 1073741899; - case 34: - return 1073741902; - case 35: - return 1073741901; - case 36: - return 1073741898; - case 37: - return 1073741904; - case 38: - return 1073741906; - case 39: - return 1073741903; - case 40: - return 1073741905; - case 41: - return 1073741943; - case 43: - return 1073741940; - case 44: - return 1073741894; - case 45: - return 1073741897; - case 46: - return 127; - case 91: - return 1073742051; - case 92: - return 1073742055; - case 93: - return 1073742055; - case 95: - return 1073742106; - case 96: - return 1073741922; - case 97: - return 1073741913; - case 98: - return 1073741914; - case 99: - return 1073741915; - case 100: - return 1073741916; - case 101: - return 1073741917; - case 102: - return 1073741918; - case 103: - return 1073741919; - case 104: - return 1073741920; - case 105: - return 1073741921; - case 106: - return 1073741909; - case 107: - return 1073741911; - case 108: - return 1073741923; - case 109: - return 1073741910; - case 110: - return 1073741923; - case 111: - return 1073741908; - case 112: - return 1073741882; - case 113: - return 1073741883; - case 114: - return 1073741884; - case 115: - return 1073741885; - case 116: - return 1073741886; - case 117: - return 1073741887; - case 118: - return 1073741888; - case 119: - return 1073741889; - case 120: - return 1073741890; - case 121: - return 1073741891; - case 122: - return 1073741892; - case 123: - return 1073741893; - case 124: - return 1073741928; - case 125: - return 1073741929; - case 126: - return 1073741930; - case 127: - return 1073741931; - case 128: - return 1073741932; - case 129: - return 1073741933; - case 130: - return 1073741934; - case 131: - return 1073741935; - case 132: - return 1073741936; - case 133: - return 1073741937; - case 134: - return 1073741938; - case 135: - return 1073741939; - case 144: - return 1073741907; - case 145: - return 1073741895; - case 160: - return 94; - case 161: - return 33; - case 163: - return 35; - case 164: - return 36; - case 166: - return 1073742094; - case 167: - return 1073742095; - case 168: - return 1073742097; - case 169: - return 41; - case 170: - return 42; - case 171: - return 96; - case 172: - return 1073741898; - case 173: - return 45; - case 174: - return 1073741953; - case 175: - return 1073741952; - case 176: - return 1073742082; - case 177: - return 1073742083; - case 178: - return 1073742084; - case 179: - return 1073742085; - case 180: - return 1073742089; - case 181: - return 1073742086; - case 182: - return 1073741953; - case 183: - return 1073741952; - 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 193: - return 63; - case 194: - return 1073741923; - case 219: - return 91; - case 220: - return 92; - case 221: - return 93; - case 222: - return 39; - case 223: - return 96; - case 224: - return 1073742051; - case 226: - return 92; - } - return keyCode; - } - ,exec: function() { - window.addEventListener("keydown",$bind(this,this.handleKeyEvent),false); - window.addEventListener("keyup",$bind(this,this.handleKeyEvent),false); - window.addEventListener("focus",$bind(this,this.handleWindowEvent),false); - window.addEventListener("blur",$bind(this,this.handleWindowEvent),false); - window.addEventListener("resize",$bind(this,this.handleWindowEvent),false); - window.addEventListener("beforeunload",$bind(this,this.handleWindowEvent),false); - window.addEventListener("devicemotion",$bind(this,this.handleSensorEvent),false); - - if (!CanvasRenderingContext2D.prototype.isPointInStroke) { - CanvasRenderingContext2D.prototype.isPointInStroke = function (path, x, y) { - return false; - }; - } - if (!CanvasRenderingContext2D.prototype.isPointInPath) { - CanvasRenderingContext2D.prototype.isPointInPath = function (path, x, y) { - return false; - }; - } - - if ('performance' in window == false) { - window.performance = {}; - } - - if ('now' in window.performance == false) { - var offset = Date.now(); - if (performance.timing && performance.timing.navigationStart) { - offset = performance.timing.navigationStart - } - window.performance.now = function now() { - return Date.now() - offset; - } - } - - var lastTime = 0; - var vendors = ['ms', 'moz', 'webkit', 'o']; - for (var x = 0; x < vendors.length && !window.requestAnimationFrame; ++x) { - window.requestAnimationFrame = window[vendors[x]+'RequestAnimationFrame']; - window.cancelAnimationFrame = window[vendors[x]+'CancelAnimationFrame'] || window[vendors[x]+'CancelRequestAnimationFrame']; - } - - if (!window.requestAnimationFrame) - window.requestAnimationFrame = function(callback, element) { - var currTime = new Date().getTime(); - var timeToCall = Math.max(0, 16 - (currTime - lastTime)); - var id = window.setTimeout(function() { callback(currTime + timeToCall); }, - timeToCall); - lastTime = currTime + timeToCall; - return id; - }; - - if (!window.cancelAnimationFrame) - window.cancelAnimationFrame = function(id) { - clearTimeout(id); - }; - - window.requestAnimFrame = window.requestAnimationFrame; - ; - this.lastUpdate = new Date().getTime(); - this.handleApplicationEvent(); - return 0; - } - ,exit: function() { - } - ,handleApplicationEvent: function(__) { - var _g = 0; - var _g1 = this.parent.__windows; - while(_g < _g1.length) { - var $window = _g1[_g]; - ++_g; - $window.__backend.updateSize(); - } - this.updateGameDevices(); - this.currentUpdate = new Date().getTime(); - if(this.currentUpdate >= this.nextUpdate) { - this.deltaTime = this.currentUpdate - this.lastUpdate; - var _g2 = 0; - var _g3 = this.parent.__windows; - while(_g2 < _g3.length) { - var window1 = _g3[_g2]; - ++_g2; - this.parent.onUpdate.dispatch(this.deltaTime | 0); - if(window1.context != null) { - window1.onRender.dispatch(window1.context); - } - } - if(this.framePeriod < 0) { - this.nextUpdate = this.currentUpdate; - } else { - this.nextUpdate = this.currentUpdate - this.currentUpdate % this.framePeriod + this.framePeriod; - } - this.lastUpdate = this.currentUpdate; - } - window.requestAnimationFrame($bind(this,this.handleApplicationEvent)); - } - ,handleKeyEvent: function(event) { - if(this.parent.__window != null) { - var keyCode = this.convertKeyCode(event.keyCode != null ? event.keyCode : event.which); - var modifier = (event.shiftKey ? 3 : 0) | (event.ctrlKey ? 192 : 0) | (event.altKey ? 768 : 0) | (event.metaKey ? 3072 : 0); - if(event.type == "keydown") { - this.parent.__window.onKeyDown.dispatch(keyCode,modifier); - if(this.parent.__window.onKeyDown.canceled && event.cancelable) { - event.preventDefault(); - } - } else { - this.parent.__window.onKeyUp.dispatch(keyCode,modifier); - if(this.parent.__window.onKeyUp.canceled && event.cancelable) { - event.preventDefault(); - } - } - } - } - ,handleSensorEvent: function(event) { - this.accelerometer.onUpdate.dispatch(event.accelerationIncludingGravity.x,event.accelerationIncludingGravity.y,event.accelerationIncludingGravity.z); - } - ,handleWindowEvent: function(event) { - if(this.parent.__window != null) { - switch(event.type) { - case "beforeunload": - break; - case "blur": - this.parent.__window.onFocusOut.dispatch(); - this.parent.__window.onDeactivate.dispatch(); - break; - case "focus": - this.parent.__window.onFocusIn.dispatch(); - this.parent.__window.onActivate.dispatch(); - break; - case "resize": - this.parent.__window.__backend.handleResizeEvent(event); - break; - } - } - } - ,updateGameDevices: function() { - var devices = lime_ui_Joystick.__getDeviceData(); - if(devices == null) { - return; - } - var id; - var gamepad; - var joystick; - var data; - var cache; - var _g = 0; - var _g1 = devices.length; - while(_g < _g1) { - var i = _g++; - id = i; - data = devices[id]; - if(data == null) { - continue; - } - if(!this.gameDeviceCache.h.hasOwnProperty(id)) { - cache = new lime__$internal_backend_html5_GameDeviceData(); - cache.id = id; - cache.connected = data.connected; - var _g2 = 0; - var _g11 = data.buttons.length; - while(_g2 < _g11) { - var i1 = _g2++; - cache.buttons.push(data.buttons[i1].value); - } - var _g21 = 0; - var _g3 = data.axes.length; - while(_g21 < _g3) { - var i2 = _g21++; - cache.axes.push(data.axes[i2]); - } - if(data.mapping == "standard") { - cache.isGamepad = true; - } - this.gameDeviceCache.h[id] = cache; - if(data.connected) { - lime_ui_Joystick.__connect(id); - if(cache.isGamepad) { - lime_ui_Gamepad.__connect(id); - } - } - } - cache = this.gameDeviceCache.h[id]; - joystick = lime_ui_Joystick.devices.h[id]; - gamepad = lime_ui_Gamepad.devices.h[id]; - if(data.connected) { - var button; - var value; - var _g4 = 0; - var _g12 = data.buttons.length; - while(_g4 < _g12) { - var i3 = _g4++; - value = data.buttons[i3].value; - if(value != cache.buttons[i3]) { - if(i3 == 6) { - joystick.onAxisMove.dispatch(data.axes.length,value); - if(gamepad != null) { - gamepad.onAxisMove.dispatch(4,value); - } - } else if(i3 == 7) { - joystick.onAxisMove.dispatch(data.axes.length + 1,value); - if(gamepad != null) { - gamepad.onAxisMove.dispatch(5,value); - } - } else { - if(value > 0) { - joystick.onButtonDown.dispatch(i3); - } else { - joystick.onButtonUp.dispatch(i3); - } - if(gamepad != null) { - switch(i3) { - case 0: - button = 0; - break; - case 1: - button = 1; - break; - case 2: - button = 2; - break; - case 3: - button = 3; - break; - case 4: - button = 9; - break; - case 5: - button = 10; - break; - case 8: - button = 4; - break; - case 9: - button = 6; - break; - case 10: - button = 7; - break; - case 11: - button = 8; - break; - case 12: - button = 11; - break; - case 13: - button = 12; - break; - case 14: - button = 13; - break; - case 15: - button = 14; - break; - case 16: - button = 5; - break; - default: - continue; - } - if(value > 0) { - gamepad.onButtonDown.dispatch(button); - } else { - gamepad.onButtonUp.dispatch(button); - } - } - } - cache.buttons[i3] = value; - } - } - var _g22 = 0; - var _g31 = data.axes.length; - while(_g22 < _g31) { - var i4 = _g22++; - if(data.axes[i4] != cache.axes[i4]) { - joystick.onAxisMove.dispatch(i4,data.axes[i4]); - if(gamepad != null) { - gamepad.onAxisMove.dispatch(i4,data.axes[i4]); - } - cache.axes[i4] = data.axes[i4]; - } - } - } else if(cache.connected) { - cache.connected = false; - lime_ui_Joystick.__disconnect(id); - lime_ui_Gamepad.__disconnect(id); - } - } - } - ,__class__: lime__$internal_backend_html5_HTML5Application -}; -var lime_app_Application = function() { - this.onCreateWindow = new lime_app__$Event_$lime_$ui_$Window_$Void(); - this.onUpdate = new lime_app__$Event_$Int_$Void(); - lime_app_Module.call(this); - if(lime_app_Application.current == null) { - lime_app_Application.current = this; - } - this.meta = new haxe_ds_StringMap(); - this.modules = []; - this.__windowByID = new haxe_ds_IntMap(); - this.__windows = []; - this.__backend = new lime__$internal_backend_html5_HTML5Application(this); - this.__registerLimeModule(this); - this.__preloader = new lime_utils_Preloader(); - this.__preloader.onProgress.add($bind(this,this.onPreloadProgress)); - this.__preloader.onComplete.add($bind(this,this.onPreloadComplete)); -}; -$hxClasses["lime.app.Application"] = lime_app_Application; -lime_app_Application.__name__ = "lime.app.Application"; -lime_app_Application.current = null; -lime_app_Application.__super__ = lime_app_Module; -lime_app_Application.prototype = $extend(lime_app_Module.prototype,{ - meta: null - ,modules: null - ,onUpdate: null - ,onCreateWindow: null - ,preloader: null - ,window: null - ,windows: null - ,__backend: null - ,__preloader: null - ,__window: null - ,__windowByID: null - ,__windows: null - ,addModule: function(module) { - module.__registerLimeModule(this); - this.modules.push(module); - } - ,createWindow: function(attributes) { - var $window = this.__createWindow(attributes); - this.__addWindow($window); - return $window; - } - ,exec: function() { - lime_app_Application.current = this; - return this.__backend.exec(); - } - ,onGamepadAxisMove: function(gamepad,axis,value) { - } - ,onGamepadButtonDown: function(gamepad,button) { - } - ,onGamepadButtonUp: function(gamepad,button) { - } - ,onGamepadConnect: function(gamepad) { - } - ,onGamepadDisconnect: function(gamepad) { - } - ,onJoystickAxisMove: function(joystick,axis,value) { - } - ,onJoystickButtonDown: function(joystick,button) { - } - ,onJoystickButtonUp: function(joystick,button) { - } - ,onJoystickConnect: function(joystick) { - } - ,onJoystickDisconnect: function(joystick) { - } - ,onJoystickHatMove: function(joystick,hat,position) { - } - ,onJoystickTrackballMove: function(joystick,trackball,x,y) { - } - ,onKeyDown: function(keyCode,modifier) { - } - ,onKeyUp: function(keyCode,modifier) { - } - ,onModuleExit: function(code) { - } - ,onMouseDown: function(x,y,button) { - } - ,onMouseMove: function(x,y) { - } - ,onMouseMoveRelative: function(x,y) { - } - ,onMouseUp: function(x,y,button) { - } - ,onMouseWheel: function(deltaX,deltaY,deltaMode) { - } - ,onPreloadComplete: function() { - } - ,onPreloadProgress: function(loaded,total) { - } - ,onRenderContextLost: function() { - } - ,onRenderContextRestored: function(context) { - } - ,onTextEdit: function(text,start,length) { - } - ,onTextInput: function(text) { - } - ,onTouchCancel: function(touch) { - } - ,onTouchEnd: function(touch) { - } - ,onTouchMove: function(touch) { - } - ,onTouchStart: function(touch) { - } - ,onWindowActivate: function() { - } - ,onWindowClose: function() { - } - ,onWindowCreate: function() { - } - ,onWindowDeactivate: function() { - } - ,onWindowDropFile: function(file) { - } - ,onWindowEnter: function() { - } - ,onWindowExpose: function() { - } - ,onWindowFocusIn: function() { - } - ,onWindowFocusOut: function() { - } - ,onWindowFullscreen: function() { - } - ,onWindowLeave: function() { - } - ,onWindowMove: function(x,y) { - } - ,onWindowMinimize: function() { - } - ,onWindowResize: function(width,height) { - } - ,onWindowRestore: function() { - } - ,removeModule: function(module) { - if(module != null) { - module.__unregisterLimeModule(this); - HxOverrides.remove(this.modules,module); - } - } - ,render: function(context) { - } - ,update: function(deltaTime) { - } - ,__addWindow: function($window) { - if($window != null) { - this.__windows.push($window); - this.__windowByID.h[$window.id] = $window; - var f = $bind(this,this.__onWindowClose); - var window1 = $window; - var tmp = function() { - f(window1); - }; - $window.onClose.add(tmp,false,-10000); - if(this.__window == null) { - this.__window = $window; - $window.onActivate.add($bind(this,this.onWindowActivate)); - $window.onRenderContextLost.add($bind(this,this.onRenderContextLost)); - $window.onRenderContextRestored.add($bind(this,this.onRenderContextRestored)); - $window.onDeactivate.add($bind(this,this.onWindowDeactivate)); - $window.onDropFile.add($bind(this,this.onWindowDropFile)); - $window.onEnter.add($bind(this,this.onWindowEnter)); - $window.onExpose.add($bind(this,this.onWindowExpose)); - $window.onFocusIn.add($bind(this,this.onWindowFocusIn)); - $window.onFocusOut.add($bind(this,this.onWindowFocusOut)); - $window.onFullscreen.add($bind(this,this.onWindowFullscreen)); - $window.onKeyDown.add($bind(this,this.onKeyDown)); - $window.onKeyUp.add($bind(this,this.onKeyUp)); - $window.onLeave.add($bind(this,this.onWindowLeave)); - $window.onMinimize.add($bind(this,this.onWindowMinimize)); - $window.onMouseDown.add($bind(this,this.onMouseDown)); - $window.onMouseMove.add($bind(this,this.onMouseMove)); - $window.onMouseMoveRelative.add($bind(this,this.onMouseMoveRelative)); - $window.onMouseUp.add($bind(this,this.onMouseUp)); - $window.onMouseWheel.add($bind(this,this.onMouseWheel)); - $window.onMove.add($bind(this,this.onWindowMove)); - $window.onRender.add($bind(this,this.render)); - $window.onResize.add($bind(this,this.onWindowResize)); - $window.onRestore.add($bind(this,this.onWindowRestore)); - $window.onTextEdit.add($bind(this,this.onTextEdit)); - $window.onTextInput.add($bind(this,this.onTextInput)); - this.onWindowCreate(); - } - this.onCreateWindow.dispatch($window); - } - } - ,__createWindow: function(attributes) { - var $window = new lime_ui_Window(this,attributes); - if($window.id == -1) { - return null; - } - return $window; - } - ,__registerLimeModule: function(application) { - application.onUpdate.add($bind(this,this.update)); - application.onExit.add($bind(this,this.onModuleExit),false,0); - application.onExit.add($bind(this,this.__onModuleExit),false,0); - var gamepad = lime_ui_Gamepad.devices.iterator(); - while(gamepad.hasNext()) { - var gamepad1 = gamepad.next(); - this.__onGamepadConnect(gamepad1); - } - lime_ui_Gamepad.onConnect.add($bind(this,this.__onGamepadConnect)); - var joystick = lime_ui_Joystick.devices.iterator(); - while(joystick.hasNext()) { - var joystick1 = joystick.next(); - this.__onJoystickConnect(joystick1); - } - lime_ui_Joystick.onConnect.add($bind(this,this.__onJoystickConnect)); - lime_ui_Touch.onCancel.add($bind(this,this.onTouchCancel)); - lime_ui_Touch.onStart.add($bind(this,this.onTouchStart)); - lime_ui_Touch.onMove.add($bind(this,this.onTouchMove)); - lime_ui_Touch.onEnd.add($bind(this,this.onTouchEnd)); - } - ,__removeWindow: function($window) { - if($window != null && this.__windowByID.h.hasOwnProperty($window.id)) { - if(this.__window == $window) { - this.__window = null; - } - HxOverrides.remove(this.__windows,$window); - this.__windowByID.remove($window.id); - $window.close(); - if(this.__windows.length == 0) { - lime_system_System.exit(0); - } - } - } - ,__onGamepadConnect: function(gamepad) { - this.onGamepadConnect(gamepad); - var f = $bind(this,this.onGamepadAxisMove); - var gamepad1 = gamepad; - var tmp = function(axis,value) { - f(gamepad1,axis,value); - }; - gamepad.onAxisMove.add(tmp); - var f1 = $bind(this,this.onGamepadButtonDown); - var gamepad2 = gamepad; - var tmp1 = function(button) { - f1(gamepad2,button); - }; - gamepad.onButtonDown.add(tmp1); - var f2 = $bind(this,this.onGamepadButtonUp); - var gamepad3 = gamepad; - var tmp2 = function(button1) { - f2(gamepad3,button1); - }; - gamepad.onButtonUp.add(tmp2); - var f3 = $bind(this,this.onGamepadDisconnect); - var gamepad4 = gamepad; - var tmp3 = function() { - f3(gamepad4); - }; - gamepad.onDisconnect.add(tmp3); - } - ,__onJoystickConnect: function(joystick) { - this.onJoystickConnect(joystick); - var f = $bind(this,this.onJoystickAxisMove); - var joystick1 = joystick; - var tmp = function(axis,value) { - f(joystick1,axis,value); - }; - joystick.onAxisMove.add(tmp); - var f1 = $bind(this,this.onJoystickButtonDown); - var joystick2 = joystick; - var tmp1 = function(button) { - f1(joystick2,button); - }; - joystick.onButtonDown.add(tmp1); - var f2 = $bind(this,this.onJoystickButtonUp); - var joystick3 = joystick; - var tmp2 = function(button1) { - f2(joystick3,button1); - }; - joystick.onButtonUp.add(tmp2); - var f3 = $bind(this,this.onJoystickDisconnect); - var joystick4 = joystick; - var tmp3 = function() { - f3(joystick4); - }; - joystick.onDisconnect.add(tmp3); - var f4 = $bind(this,this.onJoystickHatMove); - var joystick5 = joystick; - var tmp4 = function(hat,position) { - f4(joystick5,hat,position); - }; - joystick.onHatMove.add(tmp4); - var f5 = $bind(this,this.onJoystickTrackballMove); - var joystick6 = joystick; - var tmp5 = function(trackball,x,y) { - f5(joystick6,trackball,x,y); - }; - joystick.onTrackballMove.add(tmp5); - } - ,__onModuleExit: function(code) { - this.__backend.exit(); - } - ,__onWindowClose: function($window) { - if(this.__window == $window) { - this.onWindowClose(); - } - this.__removeWindow($window); - } - ,__unregisterLimeModule: function(application) { - application.onUpdate.remove($bind(this,this.update)); - application.onExit.remove($bind(this,this.__onModuleExit)); - application.onExit.remove($bind(this,this.onModuleExit)); - lime_ui_Gamepad.onConnect.remove($bind(this,this.__onGamepadConnect)); - lime_ui_Joystick.onConnect.remove($bind(this,this.__onJoystickConnect)); - lime_ui_Touch.onCancel.remove($bind(this,this.onTouchCancel)); - lime_ui_Touch.onStart.remove($bind(this,this.onTouchStart)); - lime_ui_Touch.onMove.remove($bind(this,this.onTouchMove)); - lime_ui_Touch.onEnd.remove($bind(this,this.onTouchEnd)); - this.onModuleExit(0); - } - ,get_preloader: function() { - return this.__preloader; - } - ,get_window: function() { - return this.__window; - } - ,get_windows: function() { - return this.__windows; - } - ,__class__: lime_app_Application - ,__properties__: {get_windows:"get_windows",get_window:"get_window",get_preloader:"get_preloader"} -}); -var ApplicationMain = function() { }; -$hxClasses["ApplicationMain"] = ApplicationMain; -ApplicationMain.__name__ = "ApplicationMain"; -ApplicationMain.main = function() { - lime_system_System.__registerEntryPoint("Bozorun",ApplicationMain.create); -}; -ApplicationMain.create = function(config) { - var app = new openfl_display_Application(); - ManifestResources.init(config); - var _this = app.meta; - if(__map_reserved["build"] != null) { - _this.setReserved("build","129"); - } else { - _this.h["build"] = "129"; - } - var _this1 = app.meta; - if(__map_reserved["company"] != null) { - _this1.setReserved("company","HaxeFlixel"); - } else { - _this1.h["company"] = "HaxeFlixel"; - } - var _this2 = app.meta; - if(__map_reserved["file"] != null) { - _this2.setReserved("file","Bozorun"); - } else { - _this2.h["file"] = "Bozorun"; - } - var _this3 = app.meta; - if(__map_reserved["name"] != null) { - _this3.setReserved("name","Bozorun"); - } else { - _this3.h["name"] = "Bozorun"; - } - var _this4 = app.meta; - if(__map_reserved["packageName"] != null) { - _this4.setReserved("packageName","com.example.myapp"); - } else { - _this4.h["packageName"] = "com.example.myapp"; - } - var _this5 = app.meta; - if(__map_reserved["version"] != null) { - _this5.setReserved("version","0.0.1"); - } else { - _this5.h["version"] = "0.0.1"; - } - var attributes = { allowHighDPI : false, alwaysOnTop : false, borderless : false, element : null, frameRate : 60, height : 0, hidden : false, maximized : false, minimized : false, parameters : { }, resizable : true, title : "Bozorun", width : 0, x : null, y : null}; - attributes.context = { antialiasing : 0, background : 0, colorDepth : 32, depth : true, hardware : true, stencil : true, type : null, vsync : true}; - if(app.__window == null) { - if(config != null) { - var _g = 0; - var _g1 = Reflect.fields(config); - while(_g < _g1.length) { - var field = _g1[_g]; - ++_g; - if(Object.prototype.hasOwnProperty.call(attributes,field)) { - attributes[field] = Reflect.field(config,field); - } else if(Object.prototype.hasOwnProperty.call(attributes.context,field)) { - attributes.context[field] = Reflect.field(config,field); - } - } - } - } - app.createWindow(attributes); - var preloader = new openfl_display_Preloader(new flixel_system_FlxPreloader()); - app.__preloader.onProgress.add(function(loaded,total) { - preloader.update(loaded,total); - }); - app.__preloader.onComplete.add(function() { - preloader.start(); - }); - var stage = (js_Boot.__cast(app.__window , openfl_display_Window)).stage; - var tmp = function() { - ApplicationMain.start(stage); - }; - preloader.onComplete.add(tmp); - var _g2 = 0; - var _g11 = ManifestResources.preloadLibraries; - while(_g2 < _g11.length) { - var library = _g11[_g2]; - ++_g2; - app.__preloader.addLibrary(library); - } - var _g21 = 0; - var _g3 = ManifestResources.preloadLibraryNames; - while(_g21 < _g3.length) { - var name = _g3[_g21]; - ++_g21; - app.__preloader.addLibraryName(name); - } - app.__preloader.load(); - var result = app.exec(); -}; -ApplicationMain.start = function(stage) { - try { - Main.main(); - stage.dispatchEvent(new openfl_events_Event("resize",false,false)); - if(stage.window.__fullscreen) { - stage.dispatchEvent(new openfl_events_FullScreenEvent("fullScreen",false,false,true,true)); - } - } catch( e ) { - haxe_CallStack.lastException = e; - stage.__handleError(((e) instanceof js__$Boot_HaxeError) ? e.val : e); - } -}; -var openfl_events_IEventDispatcher = function() { }; -$hxClasses["openfl.events.IEventDispatcher"] = openfl_events_IEventDispatcher; -openfl_events_IEventDispatcher.__name__ = "openfl.events.IEventDispatcher"; -openfl_events_IEventDispatcher.__isInterface__ = true; -openfl_events_IEventDispatcher.prototype = { - addEventListener: null - ,dispatchEvent: null - ,hasEventListener: null - ,removeEventListener: null - ,willTrigger: null - ,__class__: openfl_events_IEventDispatcher -}; -var openfl_events_EventDispatcher = function(target) { - if(target != null) { - this.__targetDispatcher = target; - } -}; -$hxClasses["openfl.events.EventDispatcher"] = openfl_events_EventDispatcher; -openfl_events_EventDispatcher.__name__ = "openfl.events.EventDispatcher"; -openfl_events_EventDispatcher.__interfaces__ = [openfl_events_IEventDispatcher]; -openfl_events_EventDispatcher.prototype = { - __eventMap: null - ,__iterators: null - ,__targetDispatcher: null - ,addEventListener: function(type,listener,useCapture,priority,useWeakReference) { - if(useWeakReference == null) { - useWeakReference = false; - } - if(priority == null) { - priority = 0; - } - if(useCapture == null) { - useCapture = false; - } - if(listener == null) { - return; - } - if(this.__eventMap == null) { - this.__eventMap = new haxe_ds_StringMap(); - this.__iterators = new haxe_ds_StringMap(); - } - var _this = this.__eventMap; - if(!(__map_reserved[type] != null ? _this.existsReserved(type) : _this.h.hasOwnProperty(type))) { - var list = []; - list.push(new openfl_events__$EventDispatcher_Listener(listener,useCapture,priority)); - var iterator = new openfl_events__$EventDispatcher_DispatchIterator(list); - var _this1 = this.__eventMap; - if(__map_reserved[type] != null) { - _this1.setReserved(type,list); - } else { - _this1.h[type] = list; - } - var _this2 = this.__iterators; - var value = [iterator]; - if(__map_reserved[type] != null) { - _this2.setReserved(type,value); - } else { - _this2.h[type] = value; - } - } else { - var _this3 = this.__eventMap; - var list1 = __map_reserved[type] != null ? _this3.getReserved(type) : _this3.h[type]; - var _g = 0; - var _g1 = list1.length; - while(_g < _g1) { - var i = _g++; - if(list1[i].match(listener,useCapture)) { - return; - } - } - var _this4 = this.__iterators; - var iterators = __map_reserved[type] != null ? _this4.getReserved(type) : _this4.h[type]; - var _g2 = 0; - while(_g2 < iterators.length) { - var iterator1 = iterators[_g2]; - ++_g2; - if(iterator1.active) { - iterator1.copy(); - } - } - this.__addListenerByPriority(list1,new openfl_events__$EventDispatcher_Listener(listener,useCapture,priority)); - } - } - ,dispatchEvent: function(event) { - if(this.__targetDispatcher != null) { - event.target = this.__targetDispatcher; - } else { - event.target = this; - } - return this.__dispatchEvent(event); - } - ,hasEventListener: function(type) { - if(this.__eventMap == null) { - return false; - } - var _this = this.__eventMap; - if(__map_reserved[type] != null) { - return _this.existsReserved(type); - } else { - return _this.h.hasOwnProperty(type); - } - } - ,removeEventListener: function(type,listener,useCapture) { - if(useCapture == null) { - useCapture = false; - } - if(this.__eventMap == null || listener == null) { - return; - } - var _this = this.__eventMap; - var list = __map_reserved[type] != null ? _this.getReserved(type) : _this.h[type]; - if(list == null) { - return; - } - var _this1 = this.__iterators; - var iterators = __map_reserved[type] != null ? _this1.getReserved(type) : _this1.h[type]; - var _g = 0; - var _g1 = list.length; - while(_g < _g1) { - var i = _g++; - if(list[i].match(listener,useCapture)) { - var _g2 = 0; - while(_g2 < iterators.length) { - var iterator = iterators[_g2]; - ++_g2; - iterator.remove(list[i],i); - } - list.splice(i,1); - break; - } - } - if(list.length == 0) { - this.__eventMap.remove(type); - this.__iterators.remove(type); - } - var _this2 = this.__eventMap; - if(!new haxe_ds__$StringMap_StringMapIterator(_this2,_this2.arrayKeys()).hasNext()) { - this.__eventMap = null; - this.__iterators = null; - } - } - ,toString: function() { - var c = js_Boot.getClass(this); - var full = c.__name__; - var short = full.split(".").pop(); - return "[object " + short + "]"; - } - ,willTrigger: function(type) { - return this.hasEventListener(type); - } - ,__dispatchEvent: function(event) { - if(this.__eventMap == null || event == null) { - return true; - } - var type = event.type; - var _this = this.__eventMap; - var list = __map_reserved[type] != null ? _this.getReserved(type) : _this.h[type]; - if(list == null) { - return true; - } - if(event.target == null) { - if(this.__targetDispatcher != null) { - event.target = this.__targetDispatcher; - } else { - event.target = this; - } - } - event.currentTarget = this; - var capture = event.eventPhase == 1; - var _this1 = this.__iterators; - var iterators = __map_reserved[type] != null ? _this1.getReserved(type) : _this1.h[type]; - var iterator = iterators[0]; - if(iterator.active) { - iterator = new openfl_events__$EventDispatcher_DispatchIterator(list); - iterators.push(iterator); - } - iterator.start(); - var listener = iterator; - while(listener.hasNext()) { - var listener1 = listener.next(); - if(listener1 == null) { - continue; - } - if(listener1.useCapture == capture) { - listener1.callback(event); - if(event.__isCanceledNow) { - break; - } - } - } - iterator.stop(); - if(iterator != iterators[0]) { - HxOverrides.remove(iterators,iterator); - } else { - iterator.reset(list); - } - return !event.isDefaultPrevented(); - } - ,__removeAllListeners: function() { - this.__eventMap = null; - this.__iterators = null; - } - ,__addListenerByPriority: function(list,listener) { - var numElements = list.length; - var addAtPosition = numElements; - var _g = 0; - var _g1 = numElements; - while(_g < _g1) { - var i = _g++; - if(list[i].priority < listener.priority) { - addAtPosition = i; - break; - } - } - list.splice(addAtPosition,0,listener); - } - ,__class__: openfl_events_EventDispatcher -}; -var openfl_display_IBitmapDrawable = function() { }; -$hxClasses["openfl.display.IBitmapDrawable"] = openfl_display_IBitmapDrawable; -openfl_display_IBitmapDrawable.__name__ = "openfl.display.IBitmapDrawable"; -openfl_display_IBitmapDrawable.__isInterface__ = true; -openfl_display_IBitmapDrawable.prototype = { - __blendMode: null - ,__isMask: null - ,__renderable: null - ,__renderTransform: null - ,__transform: null - ,__worldAlpha: null - ,__worldColorTransform: null - ,__worldTransform: null - ,__getBounds: null - ,__renderCairo: null - ,__renderCairoMask: null - ,__renderCanvas: null - ,__renderCanvasMask: null - ,__renderDOM: null - ,__renderGL: null - ,__renderGLMask: null - ,__update: null - ,__updateTransforms: null - ,__mask: null - ,__scrollRect: null - ,__class__: openfl_display_IBitmapDrawable -}; -var haxe_IMap = function() { }; -$hxClasses["haxe.IMap"] = haxe_IMap; -haxe_IMap.__name__ = "haxe.IMap"; -haxe_IMap.__isInterface__ = true; -haxe_IMap.prototype = { - get: null - ,set: null - ,exists: null - ,remove: null - ,__class__: haxe_IMap -}; -var haxe_ds_StringMap = function() { - this.h = { }; -}; -$hxClasses["haxe.ds.StringMap"] = haxe_ds_StringMap; -haxe_ds_StringMap.__name__ = "haxe.ds.StringMap"; -haxe_ds_StringMap.__interfaces__ = [haxe_IMap]; -haxe_ds_StringMap.prototype = { - h: null - ,rh: null - ,set: function(key,value) { - if(__map_reserved[key] != null) { - this.setReserved(key,value); - } else { - this.h[key] = value; - } - } - ,get: function(key) { - if(__map_reserved[key] != null) { - return this.getReserved(key); - } - return this.h[key]; - } - ,exists: function(key) { - if(__map_reserved[key] != null) { - return this.existsReserved(key); - } - return this.h.hasOwnProperty(key); - } - ,setReserved: function(key,value) { - if(this.rh == null) { - this.rh = { }; - } - this.rh["$" + key] = value; - } - ,getReserved: function(key) { - if(this.rh == null) { - return null; - } else { - return this.rh["$" + key]; - } - } - ,existsReserved: function(key) { - if(this.rh == null) { - return false; - } - return this.rh.hasOwnProperty("$" + key); - } - ,remove: function(key) { - if(__map_reserved[key] != null) { - key = "$" + key; - if(this.rh == null || !this.rh.hasOwnProperty(key)) { - return false; - } - delete(this.rh[key]); - return true; - } else { - if(!this.h.hasOwnProperty(key)) { - return false; - } - delete(this.h[key]); - return true; - } - } - ,keys: function() { - return HxOverrides.iter(this.arrayKeys()); - } - ,arrayKeys: function() { - var out = []; - for( var key in this.h ) { - if(this.h.hasOwnProperty(key)) { - out.push(key); - } - } - if(this.rh != null) { - for( var key in this.rh ) { - if(key.charCodeAt(0) == 36) { - out.push(key.substr(1)); - } - } - } - return out; - } - ,__class__: haxe_ds_StringMap -}; -var openfl__$Vector_Vector_$Impl_$ = {}; -$hxClasses["openfl._Vector.Vector_Impl_"] = openfl__$Vector_Vector_$Impl_$; -openfl__$Vector_Vector_$Impl_$.__name__ = "openfl._Vector.Vector_Impl_"; -openfl__$Vector_Vector_$Impl_$.__properties__ = {set_length:"set_length",get_length:"get_length",set_fixed:"set_fixed",get_fixed:"get_fixed"}; -openfl__$Vector_Vector_$Impl_$.ofArray_Float = function(array) { - var vector = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - var _g = 0; - var _g1 = array.length; - while(_g < _g1) { - var i = _g++; - vector.set(i,array[i]); - } - return vector; -}; -openfl__$Vector_Vector_$Impl_$.ofArray_Int = function(array) { - var vector = openfl__$Vector_Vector_$Impl_$.toIntVector(null); - var _g = 0; - var _g1 = array.length; - while(_g < _g1) { - var i = _g++; - vector.set(i,array[i]); - } - return vector; -}; -openfl__$Vector_Vector_$Impl_$.concat = function(this1,vec) { - return this1.concat(vec); -}; -openfl__$Vector_Vector_$Impl_$.copy = function(this1) { - return this1.copy(); -}; -openfl__$Vector_Vector_$Impl_$.filter = function(this1,callback) { - return this1.filter(callback); -}; -openfl__$Vector_Vector_$Impl_$.get = function(this1,index) { - return this1.get(index); -}; -openfl__$Vector_Vector_$Impl_$.indexOf = function(this1,searchElement,fromIndex) { - if(fromIndex == null) { - fromIndex = 0; - } - return this1.indexOf(searchElement,fromIndex); -}; -openfl__$Vector_Vector_$Impl_$.insertAt = function(this1,index,element) { - this1.insertAt(index,element); -}; -openfl__$Vector_Vector_$Impl_$.iterator = function(this1) { - return this1.iterator(); -}; -openfl__$Vector_Vector_$Impl_$.join = function(this1,sep) { - if(sep == null) { - sep = ","; - } - return this1.join(sep); -}; -openfl__$Vector_Vector_$Impl_$.lastIndexOf = function(this1,searchElement,fromIndex) { - return this1.lastIndexOf(searchElement,fromIndex); -}; -openfl__$Vector_Vector_$Impl_$.pop = function(this1) { - return this1.pop(); -}; -openfl__$Vector_Vector_$Impl_$.push = function(this1,value) { - return this1.push(value); -}; -openfl__$Vector_Vector_$Impl_$.removeAt = function(this1,index) { - return this1.removeAt(index); -}; -openfl__$Vector_Vector_$Impl_$.reverse = function(this1) { - return this1.reverse(); -}; -openfl__$Vector_Vector_$Impl_$.set = function(this1,index,value) { - return this1.set(index,value); -}; -openfl__$Vector_Vector_$Impl_$.shift = function(this1) { - return this1.shift(); -}; -openfl__$Vector_Vector_$Impl_$.slice = function(this1,startIndex,endIndex) { - if(startIndex == null) { - startIndex = 0; - } - return this1.slice(startIndex,endIndex); -}; -openfl__$Vector_Vector_$Impl_$.sort = function(this1,sortBehavior) { - this1.sort(sortBehavior); -}; -openfl__$Vector_Vector_$Impl_$.splice = function(this1,startIndex,deleteCount) { - return this1.splice(startIndex,deleteCount); -}; -openfl__$Vector_Vector_$Impl_$.toString = function(this1) { - if(this1 != null) { - return this1.toString(); - } else { - return null; - } -}; -openfl__$Vector_Vector_$Impl_$.unshift = function(this1,value) { - this1.unshift(value); -}; -openfl__$Vector_Vector_$Impl_$.convert = function(vec) { - return vec; -}; -openfl__$Vector_Vector_$Impl_$.toBoolVector = function(t,length,fixed,array) { - return new openfl__$Vector_BoolVector(length,fixed,array); -}; -openfl__$Vector_Vector_$Impl_$.toIntVector = function(t,length,fixed,array) { - return new openfl__$Vector_IntVector(length,fixed,array); -}; -openfl__$Vector_Vector_$Impl_$.toFloatVector = function(t,length,fixed,array) { - return new openfl__$Vector_FloatVector(length,fixed,array,true); -}; -openfl__$Vector_Vector_$Impl_$.toFunctionVector = function(t,length,fixed,array) { - return new openfl__$Vector_FunctionVector(length,fixed,array); -}; -openfl__$Vector_Vector_$Impl_$.toObjectVector = function(t,length,fixed,array) { - return new openfl__$Vector_ObjectVector(length,fixed,array,true); -}; -openfl__$Vector_Vector_$Impl_$.toNullVector = function(t,length,fixed,array) { - return new openfl__$Vector_ObjectVector(length,fixed,array,true); -}; -openfl__$Vector_Vector_$Impl_$.fromBoolVector = function(vector) { - return vector; -}; -openfl__$Vector_Vector_$Impl_$.fromIntVector = function(vector) { - return vector; -}; -openfl__$Vector_Vector_$Impl_$.fromFloatVector = function(vector) { - return vector; -}; -openfl__$Vector_Vector_$Impl_$.fromFunctionVector = function(vector) { - return vector; -}; -openfl__$Vector_Vector_$Impl_$.fromObjectVector = function(vector) { - return vector; -}; -openfl__$Vector_Vector_$Impl_$.get_fixed = function(this1) { - return this1.fixed; -}; -openfl__$Vector_Vector_$Impl_$.set_fixed = function(this1,value) { - return this1.fixed = value; -}; -openfl__$Vector_Vector_$Impl_$.get_length = function(this1) { - return this1.get_length(); -}; -openfl__$Vector_Vector_$Impl_$.set_length = function(this1,value) { - return this1.set_length(value); -}; -var openfl__$Vector_IVector = function() { }; -$hxClasses["openfl._Vector.IVector"] = openfl__$Vector_IVector; -openfl__$Vector_IVector.__name__ = "openfl._Vector.IVector"; -openfl__$Vector_IVector.__isInterface__ = true; -openfl__$Vector_IVector.prototype = { - get_length: null - ,set_length: null - ,fixed: null - ,concat: null - ,copy: null - ,filter: null - ,get: null - ,indexOf: null - ,insertAt: null - ,iterator: null - ,join: null - ,lastIndexOf: null - ,pop: null - ,push: null - ,removeAt: null - ,reverse: null - ,set: null - ,shift: null - ,slice: null - ,sort: null - ,splice: null - ,toString: null - ,unshift: null - ,__class__: openfl__$Vector_IVector - ,__properties__: {set_length:"set_length",get_length:"get_length"} -}; -var openfl__$Vector_ObjectVector = function(length,fixed,array,forceCopy) { - if(forceCopy == null) { - forceCopy = false; - } - if(fixed == null) { - fixed = false; - } - if(length == null) { - length = 0; - } - if(forceCopy) { - this.__array = []; - if(array != null) { - var _g = 0; - var _g1 = array.length; - while(_g < _g1) { - var i = _g++; - this.__array[i] = array[i]; - } - } - } else { - if(array == null) { - array = []; - } - this.__array = array; - } - if(length > 0) { - this.set_length(length); - } - this.fixed = fixed; -}; -$hxClasses["openfl._Vector.ObjectVector"] = openfl__$Vector_ObjectVector; -openfl__$Vector_ObjectVector.__name__ = "openfl._Vector.ObjectVector"; -openfl__$Vector_ObjectVector.__interfaces__ = [openfl__$Vector_IVector]; -openfl__$Vector_ObjectVector.prototype = { - fixed: null - ,__array: null - ,concat: function(a) { - if(a == null) { - return new openfl__$Vector_ObjectVector(0,false,this.__array.slice()); - } else { - var other = a; - if(other.__array.length > 0) { - return new openfl__$Vector_ObjectVector(0,false,this.__array.concat(other.__array)); - } else { - return new openfl__$Vector_ObjectVector(0,false,this.__array.slice()); - } - } - } - ,copy: function() { - return new openfl__$Vector_ObjectVector(0,this.fixed,this.__array.slice()); - } - ,filter: function(callback) { - var tmp = this.fixed; - var _g = []; - var _g1 = 0; - var _g2 = this.__array; - while(_g1 < _g2.length) { - var v = _g2[_g1]; - ++_g1; - if(callback(v)) { - _g.push(v); - } - } - return new openfl__$Vector_ObjectVector(0,tmp,_g); - } - ,get: function(index) { - return this.__array[index]; - } - ,indexOf: function(x,from) { - if(from == null) { - from = 0; - } - var _g = from; - var _g1 = this.__array.length; - while(_g < _g1) { - var i = _g++; - if(this.__array[i] == x) { - return i; - } - } - return -1; - } - ,insertAt: function(index,element) { - if(!this.fixed || index < this.__array.length) { - this.__array.splice(index,0,element); - } - } - ,iterator: function() { - return HxOverrides.iter(this.__array); - } - ,join: function(sep) { - if(sep == null) { - sep = ","; - } - return this.__array.join(sep); - } - ,lastIndexOf: function(x,from) { - var i = from == null || from >= this.__array.length ? this.__array.length - 1 : from; - while(i >= 0) { - if(this.__array[i] == x) { - return i; - } - --i; - } - return -1; - } - ,pop: function() { - if(!this.fixed) { - return this.__array.pop(); - } else { - return null; - } - } - ,push: function(x) { - if(!this.fixed) { - return this.__array.push(x); - } else { - return this.__array.length; - } - } - ,removeAt: function(index) { - if(!this.fixed || index < this.__array.length) { - return this.__array.splice(index,1)[0]; - } - return null; - } - ,reverse: function() { - this.__array.reverse(); - return this; - } - ,set: function(index,value) { - if(!this.fixed || index < this.__array.length) { - return this.__array[index] = value; - } else { - return value; - } - } - ,shift: function() { - if(!this.fixed) { - return this.__array.shift(); - } else { - return null; - } - } - ,slice: function(startIndex,endIndex) { - if(startIndex == null) { - startIndex = 0; - } - if(endIndex == null) { - endIndex = 16777215; - } - return new openfl__$Vector_ObjectVector(0,false,this.__array.slice(startIndex,endIndex)); - } - ,sort: function(f) { - this.__array.sort(f); - } - ,splice: function(pos,len) { - return new openfl__$Vector_ObjectVector(0,false,this.__array.splice(pos,len)); - } - ,toJSON: function() { - return this.__array; - } - ,toString: function() { - if(this.__array != null) { - return this.__array.toString(); - } else { - return null; - } - } - ,unshift: function(x) { - if(!this.fixed) { - this.__array.unshift(x); - } - } - ,get_length: function() { - return this.__array.length; - } - ,set_length: function(value) { - if(!this.fixed) { - var currentLength = this.__array.length; - if(value < 0) { - value = 0; - } - if(value > currentLength) { - var _g = currentLength; - var _g1 = value; - while(_g < _g1) { - var i = _g++; - this.__array.push(null); - } - } else { - while(this.__array.length > value) this.__array.pop(); - } - } - return this.__array.length; - } - ,__class__: openfl__$Vector_ObjectVector - ,__properties__: {set_length:"set_length",get_length:"get_length"} -}; -var lime_utils_ObjectPool = function(create,clean,size) { - this.__pool = new haxe_ds_ObjectMap(); - this.activeObjects = 0; - this.inactiveObjects = 0; - this.__inactiveObject0 = null; - this.__inactiveObject1 = null; - this.__inactiveObjectList = new haxe_ds_List(); - if(create != null) { - this.create = create; - } - if(clean != null) { - this.clean = clean; - } - if(size != null) { - this.set_size(size); - } -}; -$hxClasses["lime.utils.ObjectPool"] = lime_utils_ObjectPool; -lime_utils_ObjectPool.__name__ = "lime.utils.ObjectPool"; -lime_utils_ObjectPool.prototype = { - activeObjects: null - ,inactiveObjects: null - ,__inactiveObject0: null - ,__inactiveObject1: null - ,__inactiveObjectList: null - ,__pool: null - ,__size: null - ,add: function(object) { - if(!this.__pool.exists(object)) { - this.__pool.set(object,false); - this.clean(object); - if(this.__inactiveObject0 == null) { - this.__inactiveObject0 = object; - } else if(this.__inactiveObject1 == null) { - this.__inactiveObject1 = object; - } else { - this.__inactiveObjectList.add(object); - } - this.inactiveObjects++; - } - } - ,clean: function(object) { - } - ,clear: function() { - this.__pool = new haxe_ds_ObjectMap(); - this.activeObjects = 0; - this.inactiveObjects = 0; - this.__inactiveObject0 = null; - this.__inactiveObject1 = null; - this.__inactiveObjectList.clear(); - } - ,create: function() { - return null; - } - ,get: function() { - var object = null; - if(this.inactiveObjects > 0) { - var object1 = null; - if(this.__inactiveObject0 != null) { - object1 = this.__inactiveObject0; - this.__inactiveObject0 = null; - } else if(this.__inactiveObject1 != null) { - object1 = this.__inactiveObject1; - this.__inactiveObject1 = null; - } else { - object1 = this.__inactiveObjectList.pop(); - if(this.__inactiveObjectList.length > 0) { - this.__inactiveObject0 = this.__inactiveObjectList.pop(); - } - if(this.__inactiveObjectList.length > 0) { - this.__inactiveObject1 = this.__inactiveObjectList.pop(); - } - } - this.inactiveObjects--; - this.activeObjects++; - object = object1; - } else if(this.__size == null || this.activeObjects < this.__size) { - object = this.create(); - if(object != null) { - this.__pool.set(object,true); - this.activeObjects++; - } - } - return object; - } - ,release: function(object) { - this.activeObjects--; - if(this.__size == null || this.activeObjects + this.inactiveObjects < this.__size) { - this.clean(object); - if(this.__inactiveObject0 == null) { - this.__inactiveObject0 = object; - } else if(this.__inactiveObject1 == null) { - this.__inactiveObject1 = object; - } else { - this.__inactiveObjectList.add(object); - } - this.inactiveObjects++; - } else { - this.__pool.remove(object); - } - } - ,remove: function(object) { - if(this.__pool.exists(object)) { - this.__pool.remove(object); - if(this.__inactiveObject0 == object) { - this.__inactiveObject0 = null; - this.inactiveObjects--; - } else if(this.__inactiveObject1 == object) { - this.__inactiveObject1 = null; - this.inactiveObjects--; - } else if(this.__inactiveObjectList.remove(object)) { - this.inactiveObjects--; - } else { - this.activeObjects--; - } - } - } - ,__addInactive: function(object) { - if(this.__inactiveObject0 == null) { - this.__inactiveObject0 = object; - } else if(this.__inactiveObject1 == null) { - this.__inactiveObject1 = object; - } else { - this.__inactiveObjectList.add(object); - } - this.inactiveObjects++; - } - ,__getInactive: function() { - var object = null; - if(this.__inactiveObject0 != null) { - object = this.__inactiveObject0; - this.__inactiveObject0 = null; - } else if(this.__inactiveObject1 != null) { - object = this.__inactiveObject1; - this.__inactiveObject1 = null; - } else { - object = this.__inactiveObjectList.pop(); - if(this.__inactiveObjectList.length > 0) { - this.__inactiveObject0 = this.__inactiveObjectList.pop(); - } - if(this.__inactiveObjectList.length > 0) { - this.__inactiveObject1 = this.__inactiveObjectList.pop(); - } - } - this.inactiveObjects--; - this.activeObjects++; - return object; - } - ,__removeInactive: function(count) { - if(count <= 0 || this.inactiveObjects == 0) { - return; - } - if(this.__inactiveObject0 != null) { - this.__pool.remove(this.__inactiveObject0); - this.__inactiveObject0 = null; - this.inactiveObjects--; - --count; - } - if(count == 0 || this.inactiveObjects == 0) { - return; - } - if(this.__inactiveObject1 != null) { - this.__pool.remove(this.__inactiveObject1); - this.__inactiveObject1 = null; - this.inactiveObjects--; - --count; - } - if(count == 0 || this.inactiveObjects == 0) { - return; - } - var _g_head = this.__inactiveObjectList.h; - while(_g_head != null) { - var val = _g_head.item; - _g_head = _g_head.next; - var object = val; - this.__pool.remove(object); - this.__inactiveObjectList.remove(object); - this.inactiveObjects--; - --count; - if(count == 0 || this.inactiveObjects == 0) { - return; - } - } - } - ,get_size: function() { - return this.__size; - } - ,set_size: function(value) { - if(value == null) { - this.__size = null; - } else { - var current = this.inactiveObjects + this.activeObjects; - this.__size = value; - if(current > value) { - this.__removeInactive(current - value); - } else if(value > current) { - var object; - var _g = 0; - var _g1 = value - current; - while(_g < _g1) { - var i = _g++; - object = this.create(); - if(object != null) { - this.__pool.set(object,false); - this.__inactiveObjectList.add(object); - this.inactiveObjects++; - } else { - break; - } - } - } - } - return value; - } - ,__class__: lime_utils_ObjectPool - ,__properties__: {set_size:"set_size",get_size:"get_size"} -}; -var haxe_ds_ObjectMap = function() { - this.h = { __keys__ : { }}; -}; -$hxClasses["haxe.ds.ObjectMap"] = haxe_ds_ObjectMap; -haxe_ds_ObjectMap.__name__ = "haxe.ds.ObjectMap"; -haxe_ds_ObjectMap.__interfaces__ = [haxe_IMap]; -haxe_ds_ObjectMap.count = null; -haxe_ds_ObjectMap.prototype = { - h: null - ,set: function(key,value) { - var id = key.__id__; - if(id == null) { - id = (key.__id__ = $global.$haxeUID++); - } - this.h[id] = value; - this.h.__keys__[id] = key; - } - ,get: function(key) { - return this.h[key.__id__]; - } - ,exists: function(key) { - return this.h.__keys__[key.__id__] != null; - } - ,remove: function(key) { - var id = key.__id__; - if(this.h.__keys__[id] == null) { - return false; - } - delete(this.h[id]); - delete(this.h.__keys__[id]); - return true; - } - ,keys: function() { - var a = []; - for( var key in this.h.__keys__ ) { - if(this.h.hasOwnProperty(key)) { - a.push(this.h.__keys__[key]); - } - } - return HxOverrides.iter(a); - } - ,__class__: haxe_ds_ObjectMap -}; -var haxe_ds_List = function() { - this.length = 0; -}; -$hxClasses["haxe.ds.List"] = haxe_ds_List; -haxe_ds_List.__name__ = "haxe.ds.List"; -haxe_ds_List.prototype = { - h: null - ,q: null - ,length: null - ,add: function(item) { - var x = new haxe_ds__$List_ListNode(item,null); - if(this.h == null) { - this.h = x; - } else { - this.q.next = x; - } - this.q = x; - this.length++; - } - ,push: function(item) { - var x = new haxe_ds__$List_ListNode(item,this.h); - this.h = x; - if(this.q == null) { - this.q = x; - } - this.length++; - } - ,pop: function() { - if(this.h == null) { - return null; - } - var x = this.h.item; - this.h = this.h.next; - if(this.h == null) { - this.q = null; - } - this.length--; - return x; - } - ,clear: function() { - this.h = null; - this.q = null; - this.length = 0; - } - ,remove: function(v) { - var prev = null; - var l = this.h; - while(l != null) { - if(l.item == v) { - if(prev == null) { - this.h = l.next; - } else { - prev.next = l.next; - } - if(this.q == l) { - this.q = prev; - } - this.length--; - return true; - } - prev = l; - l = l.next; - } - return false; - } - ,iterator: function() { - return new haxe_ds__$List_ListIterator(this.h); - } - ,__class__: haxe_ds_List -}; -var openfl_display_DisplayObject = function() { - openfl_events_EventDispatcher.call(this); - this.__alpha = 1; - this.__blendMode = 10; - this.__cacheAsBitmap = false; - this.__transform = new openfl_geom_Matrix(); - this.__visible = true; - this.__rotation = 0; - this.__rotationSine = 0; - this.__rotationCosine = 1; - this.__scaleX = 1; - this.__scaleY = 1; - this.__worldAlpha = 1; - this.__worldBlendMode = 10; - this.__worldTransform = new openfl_geom_Matrix(); - this.__worldColorTransform = new openfl_geom_ColorTransform(); - this.__renderTransform = new openfl_geom_Matrix(); - this.__worldVisible = true; - this.set_name("instance" + ++openfl_display_DisplayObject.__instanceCount); - if(openfl_display_DisplayObject.__initStage != null) { - this.stage = openfl_display_DisplayObject.__initStage; - openfl_display_DisplayObject.__initStage = null; - this.stage.addChild(this); - } -}; -$hxClasses["openfl.display.DisplayObject"] = openfl_display_DisplayObject; -openfl_display_DisplayObject.__name__ = "openfl.display.DisplayObject"; -openfl_display_DisplayObject.__interfaces__ = [openfl_display_IBitmapDrawable]; -openfl_display_DisplayObject.__initStage = null; -openfl_display_DisplayObject.__supportDOM = null; -openfl_display_DisplayObject.__calculateAbsoluteTransform = function(local,parentTransform,target) { - target.a = local.a * parentTransform.a + local.b * parentTransform.c; - target.b = local.a * parentTransform.b + local.b * parentTransform.d; - target.c = local.c * parentTransform.a + local.d * parentTransform.c; - target.d = local.c * parentTransform.b + local.d * parentTransform.d; - target.tx = local.tx * parentTransform.a + local.ty * parentTransform.c + parentTransform.tx; - target.ty = local.tx * parentTransform.b + local.ty * parentTransform.d + parentTransform.ty; -}; -openfl_display_DisplayObject.__super__ = openfl_events_EventDispatcher; -openfl_display_DisplayObject.prototype = $extend(openfl_events_EventDispatcher.prototype,{ - opaqueBackground: null - ,parent: null - ,stage: null - ,__alpha: null - ,__blendMode: null - ,__cacheAsBitmap: null - ,__cacheAsBitmapMatrix: null - ,__cacheBitmap: null - ,__cacheBitmapBackground: null - ,__cacheBitmapColorTransform: null - ,__cacheBitmapData: null - ,__cacheBitmapData2: null - ,__cacheBitmapData3: null - ,__cacheBitmapMatrix: null - ,__cacheBitmapRenderer: null - ,__cairo: null - ,__children: null - ,__customRenderClear: null - ,__customRenderEvent: null - ,__filters: null - ,__graphics: null - ,__interactive: null - ,__isCacheBitmapRender: null - ,__isMask: null - ,__loaderInfo: null - ,__mask: null - ,__maskTarget: null - ,__name: null - ,__objectTransform: null - ,__renderable: null - ,__renderDirty: null - ,__renderParent: null - ,__renderTransform: null - ,__renderTransformCache: null - ,__renderTransformChanged: null - ,__rotation: null - ,__rotationCosine: null - ,__rotationSine: null - ,__scale9Grid: null - ,__scaleX: null - ,__scaleY: null - ,__scrollRect: null - ,__shader: null - ,__tempPoint: null - ,__transform: null - ,__transformDirty: null - ,__visible: null - ,__worldAlpha: null - ,__worldAlphaChanged: null - ,__worldBlendMode: null - ,__worldClip: null - ,__worldClipChanged: null - ,__worldColorTransform: null - ,__worldShader: null - ,__worldScale9Grid: null - ,__worldTransform: null - ,__worldVisible: null - ,__worldVisibleChanged: null - ,__worldTransformInvalid: null - ,__worldZ: null - ,__canvas: null - ,__context: null - ,__style: null - ,addEventListener: function(type,listener,useCapture,priority,useWeakReference) { - if(useWeakReference == null) { - useWeakReference = false; - } - if(priority == null) { - priority = 0; - } - if(useCapture == null) { - useCapture = false; - } - switch(type) { - case "activate":case "deactivate":case "enterFrame":case "exitFrame":case "frameConstructed":case "render": - var _this = openfl_display_DisplayObject.__broadcastEvents; - if(!(__map_reserved[type] != null ? _this.existsReserved(type) : _this.h.hasOwnProperty(type))) { - var _this1 = openfl_display_DisplayObject.__broadcastEvents; - var value = []; - if(__map_reserved[type] != null) { - _this1.setReserved(type,value); - } else { - _this1.h[type] = value; - } - } - var _this2 = openfl_display_DisplayObject.__broadcastEvents; - var dispatchers = __map_reserved[type] != null ? _this2.getReserved(type) : _this2.h[type]; - if(dispatchers.indexOf(this) == -1) { - dispatchers.push(this); - } - break; - case "clearDOM":case "renderCairo":case "renderCanvas":case "renderDOM":case "renderOpenGL": - if(this.__customRenderEvent == null) { - this.__customRenderEvent = new openfl_events_RenderEvent(null); - this.__customRenderEvent.objectColorTransform = new openfl_geom_ColorTransform(); - this.__customRenderEvent.objectMatrix = new openfl_geom_Matrix(); - this.__customRenderClear = true; - } - break; - default: - } - openfl_events_EventDispatcher.prototype.addEventListener.call(this,type,listener,useCapture,priority,useWeakReference); - } - ,dispatchEvent: function(event) { - if(((event) instanceof openfl_events_MouseEvent)) { - var mouseEvent = event; - var _this = this.__getRenderTransform(); - mouseEvent.stageX = mouseEvent.localX * _this.a + mouseEvent.localY * _this.c + _this.tx; - var _this1 = this.__getRenderTransform(); - mouseEvent.stageY = mouseEvent.localX * _this1.b + mouseEvent.localY * _this1.d + _this1.ty; - } else if(((event) instanceof openfl_events_TouchEvent)) { - var touchEvent = event; - var _this2 = this.__getRenderTransform(); - touchEvent.stageX = touchEvent.localX * _this2.a + touchEvent.localY * _this2.c + _this2.tx; - var _this3 = this.__getRenderTransform(); - touchEvent.stageY = touchEvent.localX * _this3.b + touchEvent.localY * _this3.d + _this3.ty; - } - event.target = this; - return this.__dispatchWithCapture(event); - } - ,getBounds: function(targetCoordinateSpace) { - var matrix = openfl_geom_Matrix.__pool.get(); - if(targetCoordinateSpace != null && targetCoordinateSpace != this) { - matrix.copyFrom(this.__getWorldTransform()); - var targetMatrix = openfl_geom_Matrix.__pool.get(); - targetMatrix.copyFrom(targetCoordinateSpace.__getWorldTransform()); - targetMatrix.invert(); - matrix.concat(targetMatrix); - openfl_geom_Matrix.__pool.release(targetMatrix); - } else { - matrix.identity(); - } - var bounds = new openfl_geom_Rectangle(); - this.__getBounds(bounds,matrix); - openfl_geom_Matrix.__pool.release(matrix); - return bounds; - } - ,getRect: function(targetCoordinateSpace) { - return this.getBounds(targetCoordinateSpace); - } - ,globalToLocal: function(pos) { - return this.__globalToLocal(pos,new openfl_geom_Point()); - } - ,hitTestObject: function(obj) { - if(obj != null && obj.parent != null && this.parent != null) { - var currentBounds = this.getBounds(this); - var targetBounds = obj.getBounds(this); - return currentBounds.intersects(targetBounds); - } - return false; - } - ,hitTestPoint: function(x,y,shapeFlag) { - if(shapeFlag == null) { - shapeFlag = false; - } - if(this.stage != null) { - return this.__hitTest(x,y,shapeFlag,null,false,this); - } else { - return false; - } - } - ,invalidate: function() { - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - ,localToGlobal: function(point) { - return this.__getRenderTransform().transformPoint(point); - } - ,removeEventListener: function(type,listener,useCapture) { - if(useCapture == null) { - useCapture = false; - } - openfl_events_EventDispatcher.prototype.removeEventListener.call(this,type,listener,useCapture); - switch(type) { - case "activate":case "deactivate":case "enterFrame":case "exitFrame":case "frameConstructed":case "render": - if(!this.hasEventListener(type)) { - var _this = openfl_display_DisplayObject.__broadcastEvents; - if(__map_reserved[type] != null ? _this.existsReserved(type) : _this.h.hasOwnProperty(type)) { - var _this1 = openfl_display_DisplayObject.__broadcastEvents; - HxOverrides.remove(__map_reserved[type] != null ? _this1.getReserved(type) : _this1.h[type],this); - } - } - break; - case "clearDOM":case "renderCairo":case "renderCanvas":case "renderDOM":case "renderOpenGL": - if(!this.hasEventListener("clearDOM") && !this.hasEventListener("renderCairo") && !this.hasEventListener("renderCanvas") && !this.hasEventListener("renderDOM") && !this.hasEventListener("renderOpenGL")) { - this.__customRenderEvent = null; - } - break; - default: - } - } - ,__cleanup: function() { - this.__cairo = null; - this.__canvas = null; - this.__context = null; - if(this.__graphics != null) { - this.__graphics.__cleanup(); - } - if(this.__cacheBitmap != null) { - this.__cacheBitmap.__cleanup(); - this.__cacheBitmap = null; - } - if(this.__cacheBitmapData != null) { - this.__cacheBitmapData.dispose(); - this.__cacheBitmapData = null; - } - } - ,__dispatch: function(event) { - if(this.__eventMap != null && this.hasEventListener(event.type)) { - var result = openfl_events_EventDispatcher.prototype.__dispatchEvent.call(this,event); - if(event.__isCanceled) { - return true; - } - return result; - } - return true; - } - ,__dispatchChildren: function(event) { - } - ,__dispatchEvent: function(event) { - var parent = event.bubbles ? this.parent : null; - var result = openfl_events_EventDispatcher.prototype.__dispatchEvent.call(this,event); - if(event.__isCanceled) { - return true; - } - if(parent != null && parent != this) { - event.eventPhase = 3; - if(event.target == null) { - event.target = this; - } - parent.__dispatchEvent(event); - } - return result; - } - ,__dispatchWithCapture: function(event) { - if(event.target == null) { - event.target = this; - } - if(this.parent != null) { - event.eventPhase = 1; - if(this.parent == this.stage) { - this.parent.__dispatch(event); - } else { - var stack = openfl_display_DisplayObject.__tempStack.get(); - var parent = this.parent; - var i = 0; - while(parent != null) { - stack.set(i,parent); - parent = parent.parent; - ++i; - } - var _g = 0; - var _g1 = i; - while(_g < _g1) { - var j = _g++; - stack.get(i - j - 1).__dispatch(event); - } - openfl_display_DisplayObject.__tempStack.release(stack); - } - } - event.eventPhase = 2; - return this.__dispatchEvent(event); - } - ,__enterFrame: function(deltaTime) { - } - ,__getBounds: function(rect,matrix) { - if(this.__graphics != null) { - this.__graphics.__getBounds(rect,matrix); - } - } - ,__getCursor: function() { - return null; - } - ,__getFilterBounds: function(rect,matrix) { - this.__getRenderBounds(rect,matrix); - if(this.__filters != null) { - var extension = openfl_geom_Rectangle.__pool.get(); - var _g = 0; - var _g1 = this.__filters; - while(_g < _g1.length) { - var filter = _g1[_g]; - ++_g; - extension.__expand(-filter.__leftExtension,-filter.__topExtension,filter.__leftExtension + filter.__rightExtension,filter.__topExtension + filter.__bottomExtension); - } - rect.width += extension.width; - rect.height += extension.height; - rect.x += extension.x; - rect.y += extension.y; - openfl_geom_Rectangle.__pool.release(extension); - } - } - ,__getInteractive: function(stack) { - return false; - } - ,__getLocalBounds: function(rect) { - this.__getBounds(rect,this.__transform); - rect.x -= this.__transform.tx; - rect.y -= this.__transform.ty; - } - ,__getRenderBounds: function(rect,matrix) { - if(this.__scrollRect == null) { - this.__getBounds(rect,matrix); - } else { - var r = openfl_geom_Rectangle.__pool.get(); - r.copyFrom(this.__scrollRect); - r.__transform(r,matrix); - rect.__expand(r.x,r.y,r.width,r.height); - openfl_geom_Rectangle.__pool.release(r); - } - } - ,__getRenderTransform: function() { - this.__getWorldTransform(); - return this.__renderTransform; - } - ,__getWorldTransform: function() { - var transformDirty = this.__transformDirty || this.__worldTransformInvalid; - if(transformDirty) { - var list = []; - var current = this; - if(this.parent == null) { - this.__update(true,false); - } else { - while(current != this.stage) { - list.push(current); - current = current.parent; - if(current == null) { - break; - } - } - } - var i = list.length; - while(--i >= 0) { - current = list[i]; - current.__update(true,false); - } - } - return this.__worldTransform; - } - ,__globalToLocal: function(global,local) { - this.__getRenderTransform(); - if(global == local) { - var _this = this.__renderTransform; - var norm = _this.a * _this.d - _this.b * _this.c; - if(norm == 0) { - global.x = -_this.tx; - global.y = -_this.ty; - } else { - var px = 1.0 / norm * (_this.c * (_this.ty - global.y) + _this.d * (global.x - _this.tx)); - global.y = 1.0 / norm * (_this.a * (global.y - _this.ty) + _this.b * (_this.tx - global.x)); - global.x = px; - } - } else { - var _this1 = this.__renderTransform; - var norm1 = _this1.a * _this1.d - _this1.b * _this1.c; - local.x = norm1 == 0 ? -_this1.tx : 1.0 / norm1 * (_this1.c * (_this1.ty - global.y) + _this1.d * (global.x - _this1.tx)); - var _this2 = this.__renderTransform; - var norm2 = _this2.a * _this2.d - _this2.b * _this2.c; - local.y = norm2 == 0 ? -_this2.ty : 1.0 / norm2 * (_this2.a * (global.y - _this2.ty) + _this2.b * (_this2.tx - global.x)); - } - return local; - } - ,__hitTest: function(x,y,shapeFlag,stack,interactiveOnly,hitObject) { - if(this.__graphics != null) { - if(!hitObject.__visible || this.__isMask) { - return false; - } - if(this.get_mask() != null && !this.get_mask().__hitTestMask(x,y)) { - return false; - } - if(this.__graphics.__hitTest(x,y,shapeFlag,this.__getRenderTransform())) { - if(stack != null && !interactiveOnly) { - stack.push(hitObject); - } - return true; - } - } - return false; - } - ,__hitTestMask: function(x,y) { - if(this.__graphics != null) { - if(this.__graphics.__hitTest(x,y,true,this.__getRenderTransform())) { - return true; - } - } - return false; - } - ,__readGraphicsData: function(graphicsData,recurse) { - if(this.__graphics != null) { - this.__graphics.__readGraphicsData(graphicsData); - } - } - ,__renderCairo: function(renderer) { - } - ,__renderCairoMask: function(renderer) { - } - ,__renderCanvas: function(renderer) { - if(this.get_mask() == null || this.get_mask().get_width() > 0 && this.get_mask().get_height() > 0) { - this.__updateCacheBitmap(renderer,false); - if(this.__cacheBitmap != null && !this.__isCacheBitmapRender) { - var bitmap = this.__cacheBitmap; - if(!(!bitmap.__renderable)) { - var alpha = renderer.__getAlpha(bitmap.__worldAlpha); - if(alpha > 0 && bitmap.__bitmapData != null && bitmap.__bitmapData.__isValid && bitmap.__bitmapData.readable) { - var context = renderer.context; - renderer.__setBlendMode(bitmap.__worldBlendMode); - renderer.__pushMaskObject(bitmap,false); - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(bitmap.__bitmapData.image); - context.globalAlpha = alpha; - var scrollRect = bitmap.__scrollRect; - renderer.setTransform(bitmap.__renderTransform,context); - if(!renderer.__allowSmoothing || !bitmap.smoothing) { - context.imageSmoothingEnabled = false; - } - if(scrollRect == null) { - context.drawImage(bitmap.__bitmapData.image.get_src(),0,0,bitmap.__bitmapData.image.width,bitmap.__bitmapData.image.height); - } else { - context.drawImage(bitmap.__bitmapData.image.get_src(),scrollRect.x,scrollRect.y,scrollRect.width,scrollRect.height); - } - if(!renderer.__allowSmoothing || !bitmap.smoothing) { - context.imageSmoothingEnabled = true; - } - renderer.__popMaskObject(bitmap,false); - } - } - } else if(!(this.opaqueBackground == null && this.__graphics == null)) { - if(!(!this.__renderable)) { - var alpha1 = renderer.__getAlpha(this.__worldAlpha); - if(!(alpha1 <= 0)) { - if(this.opaqueBackground != null && !this.__isCacheBitmapRender && this.get_width() > 0 && this.get_height() > 0) { - renderer.__setBlendMode(this.__worldBlendMode); - renderer.__pushMaskObject(this); - var context1 = renderer.context; - renderer.setTransform(this.__renderTransform,context1); - var color = this.opaqueBackground; - context1.fillStyle = "rgb(" + (color >>> 16 & 255) + "," + (color >>> 8 & 255) + "," + (color & 255) + ")"; - context1.fillRect(0,0,this.get_width(),this.get_height()); - renderer.__popMaskObject(this); - } - if(this.__graphics != null) { - if(!(!this.__renderable)) { - var alpha2 = renderer.__getAlpha(this.__worldAlpha); - if(!(alpha2 <= 0)) { - var graphics = this.__graphics; - if(graphics != null) { - openfl__$internal_renderer_canvas_CanvasGraphics.render(graphics,renderer); - var width = graphics.__width; - var height = graphics.__height; - var canvas = graphics.__canvas; - if(canvas != null && graphics.__visible && width >= 1 && height >= 1) { - var transform = graphics.__worldTransform; - var context2 = renderer.context; - var scrollRect1 = this.__scrollRect; - var scale9Grid = this.__worldScale9Grid; - if(scrollRect1 == null || scrollRect1.width > 0 && scrollRect1.height > 0) { - renderer.__setBlendMode(this.__worldBlendMode); - renderer.__pushMaskObject(this); - context2.globalAlpha = alpha2; - if(scale9Grid != null && transform.b == 0 && transform.c == 0) { - context2.setTransform(1,0,0,1,transform.tx,transform.ty); - var bounds = graphics.__bounds; - var scaleX = graphics.__renderTransform.a; - var scaleY = graphics.__renderTransform.d; - var renderScaleX = transform.a; - var renderScaleY = transform.d; - var left = Math.max(1,Math.round(scale9Grid.x * scaleX)); - var top = Math.round(scale9Grid.y * scaleY); - var right = Math.max(1,Math.round((bounds.get_right() - scale9Grid.get_right()) * scaleX)); - var bottom = Math.round((bounds.get_bottom() - scale9Grid.get_bottom()) * scaleY); - var centerWidth = Math.round(scale9Grid.width * scaleX); - var centerHeight = Math.round(scale9Grid.height * scaleY); - var renderLeft = Math.round(scale9Grid.x * renderScaleX); - var renderTop = Math.round(scale9Grid.y * renderScaleY); - var renderRight = Math.round((bounds.get_right() - scale9Grid.get_right()) * renderScaleX); - var renderBottom = Math.round((bounds.get_bottom() - scale9Grid.get_bottom()) * renderScaleY); - var renderCenterWidth = Math.round(width * renderScaleX) - renderLeft - renderRight; - var renderCenterHeight = Math.round(height * renderScaleY) - renderTop - renderBottom; - renderer.applySmoothing(context2,false); - if(centerWidth != 0 && centerHeight != 0) { - context2.drawImage(canvas,0,0,left,top,0,0,renderLeft,renderTop); - context2.drawImage(canvas,left,0,centerWidth,top,renderLeft,0,renderCenterWidth,renderTop); - context2.drawImage(canvas,left + centerWidth,0,right,top,renderLeft + renderCenterWidth,0,renderRight,renderTop); - context2.drawImage(canvas,0,top,left,centerHeight,0,renderTop,renderLeft,renderCenterHeight); - context2.drawImage(canvas,left,top,centerWidth,centerHeight,renderLeft,renderTop,renderCenterWidth,renderCenterHeight); - context2.drawImage(canvas,left + centerWidth,top,right,centerHeight,renderLeft + renderCenterWidth,renderTop,renderRight,renderCenterHeight); - context2.drawImage(canvas,0,top + centerHeight,left,bottom,0,renderTop + renderCenterHeight,renderLeft,renderBottom); - context2.drawImage(canvas,left,top + centerHeight,centerWidth,bottom,renderLeft,renderTop + renderCenterHeight,renderCenterWidth,renderBottom); - context2.drawImage(canvas,left + centerWidth,top + centerHeight,right,bottom,renderLeft + renderCenterWidth,renderTop + renderCenterHeight,renderRight,renderBottom); - } else if(centerWidth == 0 && centerHeight != 0) { - var renderWidth = renderLeft + renderCenterWidth + renderRight; - context2.drawImage(canvas,0,0,width,top,0,0,renderWidth,renderTop); - context2.drawImage(canvas,0,top,width,centerHeight,0,renderTop,renderWidth,renderCenterHeight); - context2.drawImage(canvas,0,top + centerHeight,width,bottom,0,renderTop + renderCenterHeight,renderWidth,renderBottom); - } else if(centerHeight == 0 && centerWidth != 0) { - var renderHeight = renderTop + renderCenterHeight + renderBottom; - context2.drawImage(canvas,0,0,left,height,0,0,renderLeft,renderHeight); - context2.drawImage(canvas,left,0,centerWidth,height,renderLeft,0,renderCenterWidth,renderHeight); - context2.drawImage(canvas,left + centerWidth,0,right,height,renderLeft + renderCenterWidth,0,renderRight,renderHeight); - } - } else { - renderer.setTransform(transform,context2); - if(renderer.__isDOM) { - var reverseScale = 1 / renderer.pixelRatio; - context2.scale(reverseScale,reverseScale); - } - context2.drawImage(canvas,0,0,width,height); - } - renderer.__popMaskObject(this); - } - } - } - } - } - } - } - } - } - } - this.__renderEvent(renderer); - } - ,__renderCanvasMask: function(renderer) { - if(this.__graphics != null) { - openfl__$internal_renderer_canvas_CanvasGraphics.renderMask(this.__graphics,renderer); - } - } - ,__renderDOM: function(renderer) { - this.__updateCacheBitmap(renderer,false); - if(this.__cacheBitmap != null && !this.__isCacheBitmapRender) { - this.__renderDOMClear(renderer); - this.__cacheBitmap.stage = this.stage; - var bitmap = this.__cacheBitmap; - if(bitmap.stage != null && bitmap.__worldVisible && bitmap.__renderable && bitmap.__bitmapData != null && bitmap.__bitmapData.__isValid && bitmap.__bitmapData.readable) { - renderer.__pushMaskObject(bitmap); - if(bitmap.__bitmapData.image.buffer.__srcImage != null) { - openfl__$internal_renderer_dom_DOMBitmap.renderImage(bitmap,renderer); - } else { - openfl__$internal_renderer_dom_DOMBitmap.renderCanvas(bitmap,renderer); - } - renderer.__popMaskObject(bitmap); - } else { - openfl__$internal_renderer_dom_DOMBitmap.clear(bitmap,renderer); - } - } else { - var tmp = this.opaqueBackground != null && !this.__isCacheBitmapRender && this.get_width() > 0 && this.get_height() > 0; - var graphics = this.__graphics; - if(this.stage != null && this.__worldVisible && this.__renderable && graphics != null) { - openfl__$internal_renderer_canvas_CanvasGraphics.render(graphics,renderer.__canvasRenderer); - if(graphics.__softwareDirty || this.__worldAlphaChanged || this.__canvas != graphics.__canvas) { - if(graphics.__canvas != null) { - if(this.__canvas != graphics.__canvas) { - if(this.__canvas != null) { - renderer.element.removeChild(this.__canvas); - } - this.__canvas = graphics.__canvas; - this.__context = graphics.__context; - renderer.__initializeElement(this,this.__canvas); - } - } else { - openfl__$internal_renderer_dom_DOMShape.clear(this,renderer); - } - } - if(this.__canvas != null) { - renderer.__pushMaskObject(this); - var cacheTransform = this.__renderTransform; - this.__renderTransform = graphics.__worldTransform; - if(graphics.__transformDirty) { - graphics.__transformDirty = false; - this.__renderTransformChanged = true; - } - renderer.__updateClip(this); - renderer.__applyStyle(this,true,true,true); - this.__renderTransform = cacheTransform; - renderer.__popMaskObject(this); - } - } else { - openfl__$internal_renderer_dom_DOMShape.clear(this,renderer); - } - } - this.__renderEvent(renderer); - } - ,__renderDOMClear: function(renderer) { - openfl__$internal_renderer_dom_DOMDisplayObject.clear(this,renderer); - } - ,__renderEvent: function(renderer) { - if(this.__customRenderEvent != null && this.__renderable) { - this.__customRenderEvent.allowSmoothing = renderer.__allowSmoothing; - this.__customRenderEvent.objectMatrix.copyFrom(this.__renderTransform); - this.__customRenderEvent.objectColorTransform.__copyFrom(this.__worldColorTransform); - this.__customRenderEvent.renderer = renderer; - switch(renderer.__type) { - case "cairo": - this.__customRenderEvent.type = "renderCairo"; - break; - case "canvas": - this.__customRenderEvent.type = "renderCanvas"; - break; - case "dom": - if(this.stage != null && this.__worldVisible) { - this.__customRenderEvent.type = "renderDOM"; - } else { - this.__customRenderEvent.type = "clearDOM"; - } - break; - case "opengl": - if(!renderer.__cleared) { - renderer.__clear(); - } - var renderer1 = renderer; - renderer1.setShader(this.__worldShader); - renderer1.__context3D.__flushGL(); - this.__customRenderEvent.type = "renderOpenGL"; - break; - default: - return; - } - renderer.__setBlendMode(this.__worldBlendMode); - renderer.__pushMaskObject(this); - this.dispatchEvent(this.__customRenderEvent); - renderer.__popMaskObject(this); - if(renderer.__type == "opengl") { - var renderer2 = renderer; - renderer2.setViewport(); - } - } - } - ,__renderGL: function(renderer) { - this.__updateCacheBitmap(renderer,false); - if(this.__cacheBitmap != null && !this.__isCacheBitmapRender) { - openfl__$internal_renderer_context3D_Context3DBitmap.render(this.__cacheBitmap,renderer); - } else if(!(this.opaqueBackground == null && this.__graphics == null)) { - if(!(!this.__renderable || this.__worldAlpha <= 0)) { - if(this.opaqueBackground != null && !this.__isCacheBitmapRender && this.get_width() > 0 && this.get_height() > 0) { - renderer.__setBlendMode(this.__worldBlendMode); - renderer.__pushMaskObject(this); - var context = renderer.__context3D; - var rect = openfl_geom_Rectangle.__pool.get(); - rect.setTo(0,0,this.get_width(),this.get_height()); - renderer.__pushMaskRect(rect,this.__renderTransform); - var color = this.opaqueBackground; - context.clear((color >>> 16 & 255) / 255,(color >>> 8 & 255) / 255,(color & 255) / 255,1,0,0,1); - renderer.__popMaskRect(); - renderer.__popMaskObject(this); - openfl_geom_Rectangle.__pool.release(rect); - } - if(this.__graphics != null) { - openfl__$internal_renderer_context3D_Context3DShape.render(this,renderer); - } - } - } - this.__renderEvent(renderer); - } - ,__renderGLMask: function(renderer) { - if(this.__graphics != null) { - openfl__$internal_renderer_context3D_Context3DShape.renderMask(this,renderer); - } - } - ,__setParentRenderDirty: function() { - var renderParent = this.__renderParent != null ? this.__renderParent : this.parent; - if(renderParent != null && !renderParent.__renderDirty) { - renderParent.__renderDirty = true; - renderParent.__setParentRenderDirty(); - } - } - ,__setRenderDirty: function() { - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - ,__setStageReference: function(stage) { - this.stage = stage; - } - ,__setTransformDirty: function() { - if(!this.__transformDirty) { - this.__transformDirty = true; - this.__setWorldTransformInvalid(); - this.__setParentRenderDirty(); - } - } - ,__setWorldTransformInvalid: function() { - this.__worldTransformInvalid = true; - } - ,__shouldCacheHardware: function(value) { - if(value == true || this.__filters != null) { - return true; - } - if(value == false || this.__graphics != null && !openfl__$internal_renderer_context3D_Context3DGraphics.isCompatible(this.__graphics)) { - return false; - } - return null; - } - ,__stopAllMovieClips: function() { - } - ,__update: function(transformOnly,updateChildren) { - var renderParent = this.__renderParent != null ? this.__renderParent : this.parent; - if(this.__isMask && renderParent == null) { - renderParent = this.__maskTarget; - } - this.__renderable = this.__visible && this.__scaleX != 0 && this.__scaleY != 0 && !this.__isMask && (renderParent == null || !renderParent.__isMask); - this.__updateTransforms(); - this.__transformDirty = false; - this.__worldTransformInvalid = false; - if(!transformOnly) { - if(openfl_display_DisplayObject.__supportDOM) { - this.__renderTransformChanged = !this.__renderTransform.equals(this.__renderTransformCache); - if(this.__renderTransformCache == null) { - this.__renderTransformCache = this.__renderTransform.clone(); - } else { - this.__renderTransformCache.copyFrom(this.__renderTransform); - } - } - if(renderParent != null) { - if(openfl_display_DisplayObject.__supportDOM) { - var worldVisible = renderParent.__worldVisible && this.__visible; - this.__worldVisibleChanged = this.__worldVisible != worldVisible; - this.__worldVisible = worldVisible; - var worldAlpha = this.get_alpha() * renderParent.__worldAlpha; - this.__worldAlphaChanged = this.__worldAlpha != worldAlpha; - this.__worldAlpha = worldAlpha; - } else { - this.__worldAlpha = this.get_alpha() * renderParent.__worldAlpha; - } - if(this.__objectTransform != null) { - this.__worldColorTransform.__copyFrom(this.__objectTransform.get_colorTransform()); - this.__worldColorTransform.__combine(renderParent.__worldColorTransform); - } else { - this.__worldColorTransform.__copyFrom(renderParent.__worldColorTransform); - } - if(this.__blendMode == null || this.__blendMode == 10) { - this.__worldBlendMode = renderParent.__worldBlendMode; - } else { - this.__worldBlendMode = this.__blendMode; - } - if(this.__shader == null) { - this.__worldShader = renderParent.__shader; - } else { - this.__worldShader = this.__shader; - } - if(this.__scale9Grid == null) { - this.__worldScale9Grid = renderParent.__scale9Grid; - } else { - this.__worldScale9Grid = this.__scale9Grid; - } - } else { - this.__worldAlpha = this.get_alpha(); - if(openfl_display_DisplayObject.__supportDOM) { - this.__worldVisibleChanged = this.__worldVisible != this.__visible; - this.__worldVisible = this.__visible; - this.__worldAlphaChanged = this.__worldAlpha != this.get_alpha(); - } - if(this.__objectTransform != null) { - this.__worldColorTransform.__copyFrom(this.__objectTransform.get_colorTransform()); - } else { - this.__worldColorTransform.__identity(); - } - this.__worldBlendMode = this.__blendMode; - this.__worldShader = this.__shader; - this.__worldScale9Grid = this.__scale9Grid; - } - } - if(updateChildren && this.get_mask() != null) { - this.get_mask().__update(transformOnly,true); - } - } - ,__updateCacheBitmap: function(renderer,force) { - if(this.__isCacheBitmapRender) { - return false; - } - var colorTransform = openfl_geom_ColorTransform.__pool.get(); - colorTransform.__copyFrom(this.__worldColorTransform); - if(renderer.__worldColorTransform != null) { - colorTransform.__combine(renderer.__worldColorTransform); - } - var updated = false; - if(this.get_cacheAsBitmap() || renderer.__type != "opengl" && !colorTransform.__isDefault(true)) { - var rect = null; - var needRender = this.__cacheBitmap == null || this.__renderDirty && (force || this.__children != null && this.__children.length > 0) || this.opaqueBackground != this.__cacheBitmapBackground; - var softwareDirty = needRender || this.__graphics != null && this.__graphics.__softwareDirty || !this.__cacheBitmapColorTransform.__equals(colorTransform,true); - var hardwareDirty = needRender || this.__graphics != null && this.__graphics.__hardwareDirty; - var renderType = renderer.__type; - if(softwareDirty || hardwareDirty) { - if(renderType == "opengl") { - if(this.__shouldCacheHardware(null) == false) { - renderType = "canvas"; - } - } - if(softwareDirty && (renderType == "canvas" || renderType == "cairo")) { - needRender = true; - } - if(hardwareDirty && renderType == "opengl") { - needRender = true; - } - } - var updateTransform = needRender || !this.__cacheBitmap.__worldTransform.equals(this.__worldTransform); - var hasFilters = this.__filters != null; - if(hasFilters && !needRender) { - var _g = 0; - var _g1 = this.__filters; - while(_g < _g1.length) { - var filter = _g1[_g]; - ++_g; - if(filter.__renderDirty) { - needRender = true; - break; - } - } - } - if(this.__cacheBitmapMatrix == null) { - this.__cacheBitmapMatrix = new openfl_geom_Matrix(); - } - var bitmapMatrix = this.__cacheAsBitmapMatrix != null ? this.__cacheAsBitmapMatrix : this.__renderTransform; - if(!needRender && (bitmapMatrix.a != this.__cacheBitmapMatrix.a || bitmapMatrix.b != this.__cacheBitmapMatrix.b || bitmapMatrix.c != this.__cacheBitmapMatrix.c || bitmapMatrix.d != this.__cacheBitmapMatrix.d)) { - needRender = true; - } - if(!needRender && renderer.__type != "opengl" && this.__cacheBitmapData != null && this.__cacheBitmapData.image != null && this.__cacheBitmapData.image.version < this.__cacheBitmapData.__textureVersion) { - needRender = true; - } - this.__cacheBitmapMatrix.copyFrom(bitmapMatrix); - this.__cacheBitmapMatrix.tx = 0; - this.__cacheBitmapMatrix.ty = 0; - var bitmapWidth = 0; - var bitmapHeight = 0; - var filterWidth = 0; - var filterHeight = 0; - var offsetX = 0.; - var offsetY = 0.; - if(updateTransform || needRender) { - rect = openfl_geom_Rectangle.__pool.get(); - this.__getFilterBounds(rect,this.__cacheBitmapMatrix); - filterWidth = Math.ceil(rect.width); - filterHeight = Math.ceil(rect.height); - offsetX = rect.x > 0 ? Math.ceil(rect.x) : Math.floor(rect.x); - offsetY = rect.y > 0 ? Math.ceil(rect.y) : Math.floor(rect.y); - if(this.__cacheBitmapData != null) { - if(filterWidth > this.__cacheBitmapData.width || filterHeight > this.__cacheBitmapData.height) { - bitmapWidth = Math.ceil(Math.max(filterWidth * 1.25,this.__cacheBitmapData.width)); - bitmapHeight = Math.ceil(Math.max(filterHeight * 1.25,this.__cacheBitmapData.height)); - needRender = true; - } else { - bitmapWidth = this.__cacheBitmapData.width; - bitmapHeight = this.__cacheBitmapData.height; - } - } else { - bitmapWidth = filterWidth; - bitmapHeight = filterHeight; - } - } - if(needRender) { - updateTransform = true; - this.__cacheBitmapBackground = this.opaqueBackground; - if(filterWidth >= 0.5 && filterHeight >= 0.5) { - var needsFill = this.opaqueBackground != null && (bitmapWidth != filterWidth || bitmapHeight != filterHeight); - var fillColor = this.opaqueBackground != null ? -16777216 | this.opaqueBackground : 0; - var bitmapColor = needsFill ? 0 : fillColor; - var allowFramebuffer = renderer.__type == "opengl"; - if(this.__cacheBitmapData == null || bitmapWidth > this.__cacheBitmapData.width || bitmapHeight > this.__cacheBitmapData.height) { - this.__cacheBitmapData = new openfl_display_BitmapData(bitmapWidth,bitmapHeight,true,bitmapColor); - if(this.__cacheBitmap == null) { - this.__cacheBitmap = new openfl_display_Bitmap(); - } - this.__cacheBitmap.__bitmapData = this.__cacheBitmapData; - this.__cacheBitmapRenderer = null; - } else { - this.__cacheBitmapData.__fillRect(this.__cacheBitmapData.rect,bitmapColor,allowFramebuffer); - } - if(needsFill) { - rect.setTo(0,0,filterWidth,filterHeight); - this.__cacheBitmapData.__fillRect(rect,fillColor,allowFramebuffer); - } - } else { - openfl_geom_ColorTransform.__pool.release(colorTransform); - this.__cacheBitmap = null; - this.__cacheBitmapData = null; - this.__cacheBitmapData2 = null; - this.__cacheBitmapData3 = null; - this.__cacheBitmapRenderer = null; - return true; - } - } else { - this.__cacheBitmapData = this.__cacheBitmap.get_bitmapData(); - this.__cacheBitmapData2 = null; - this.__cacheBitmapData3 = null; - } - if(updateTransform || needRender) { - this.__cacheBitmap.__worldTransform.copyFrom(this.__worldTransform); - if(bitmapMatrix == this.__renderTransform) { - this.__cacheBitmap.__renderTransform.identity(); - this.__cacheBitmap.__renderTransform.tx = this.__renderTransform.tx + offsetX; - this.__cacheBitmap.__renderTransform.ty = this.__renderTransform.ty + offsetY; - } else { - this.__cacheBitmap.__renderTransform.copyFrom(this.__cacheBitmapMatrix); - this.__cacheBitmap.__renderTransform.invert(); - this.__cacheBitmap.__renderTransform.concat(this.__renderTransform); - this.__cacheBitmap.__renderTransform.tx += offsetX; - this.__cacheBitmap.__renderTransform.ty += offsetY; - } - } - this.__cacheBitmap.smoothing = renderer.__allowSmoothing; - this.__cacheBitmap.__renderable = this.__renderable; - this.__cacheBitmap.__worldAlpha = this.__worldAlpha; - this.__cacheBitmap.__worldBlendMode = this.__worldBlendMode; - this.__cacheBitmap.__worldShader = this.__worldShader; - this.__cacheBitmap.set_mask(this.__mask); - if(needRender) { - if(this.__cacheBitmapRenderer == null || renderType != this.__cacheBitmapRenderer.__type) { - if(renderType == "opengl") { - this.__cacheBitmapRenderer = new openfl_display_OpenGLRenderer((js_Boot.__cast(renderer , openfl_display_OpenGLRenderer)).__context3D,this.__cacheBitmapData); - } else { - if(this.__cacheBitmapData.image == null) { - var color = this.opaqueBackground != null ? -16777216 | this.opaqueBackground : 0; - this.__cacheBitmapData = new openfl_display_BitmapData(bitmapWidth,bitmapHeight,true,color); - this.__cacheBitmap.__bitmapData = this.__cacheBitmapData; - } - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(this.__cacheBitmapData.image); - this.__cacheBitmapRenderer = new openfl_display_CanvasRenderer(this.__cacheBitmapData.image.buffer.__srcContext); - } - this.__cacheBitmapRenderer.__worldTransform = new openfl_geom_Matrix(); - this.__cacheBitmapRenderer.__worldColorTransform = new openfl_geom_ColorTransform(); - } - if(this.__cacheBitmapColorTransform == null) { - this.__cacheBitmapColorTransform = new openfl_geom_ColorTransform(); - } - this.__cacheBitmapRenderer.__stage = this.stage; - this.__cacheBitmapRenderer.__allowSmoothing = renderer.__allowSmoothing; - this.__cacheBitmapRenderer.__setBlendMode(10); - this.__cacheBitmapRenderer.__worldAlpha = 1 / this.__worldAlpha; - this.__cacheBitmapRenderer.__worldTransform.copyFrom(this.__renderTransform); - this.__cacheBitmapRenderer.__worldTransform.invert(); - this.__cacheBitmapRenderer.__worldTransform.concat(this.__cacheBitmapMatrix); - this.__cacheBitmapRenderer.__worldTransform.tx -= offsetX; - this.__cacheBitmapRenderer.__worldTransform.ty -= offsetY; - this.__cacheBitmapRenderer.__worldColorTransform.__copyFrom(colorTransform); - this.__cacheBitmapRenderer.__worldColorTransform.__invert(); - this.__isCacheBitmapRender = true; - if(this.__cacheBitmapRenderer.__type == "opengl") { - var parentRenderer = renderer; - var childRenderer = this.__cacheBitmapRenderer; - var context = childRenderer.__context3D; - var cacheRTT = context.__state.renderToTexture; - var cacheRTTDepthStencil = context.__state.renderToTextureDepthStencil; - var cacheRTTAntiAlias = context.__state.renderToTextureAntiAlias; - var cacheRTTSurfaceSelector = context.__state.renderToTextureSurfaceSelector; - var cacheBlendMode = parentRenderer.__blendMode; - parentRenderer.__suspendClipAndMask(); - childRenderer.__copyShader(parentRenderer); - this.__cacheBitmapData.__setUVRect(context,0,0,filterWidth,filterHeight); - childRenderer.__setRenderTarget(this.__cacheBitmapData); - if(this.__cacheBitmapData.image != null) { - this.__cacheBitmapData.__textureVersion = this.__cacheBitmapData.image.version + 1; - } - this.__cacheBitmapData.__drawGL(this,childRenderer); - if(hasFilters) { - var needSecondBitmapData = true; - var needCopyOfOriginal = false; - var _g2 = 0; - var _g11 = this.__filters; - while(_g2 < _g11.length) { - var filter1 = _g11[_g2]; - ++_g2; - if(filter1.__preserveObject) { - needCopyOfOriginal = true; - } - } - var bitmap = this.__cacheBitmapData; - var bitmap2 = null; - var bitmap3 = null; - if(this.__cacheBitmapData2 == null || bitmapWidth > this.__cacheBitmapData2.width || bitmapHeight > this.__cacheBitmapData2.height) { - this.__cacheBitmapData2 = new openfl_display_BitmapData(bitmapWidth,bitmapHeight,true,0); - } else { - this.__cacheBitmapData2.fillRect(this.__cacheBitmapData2.rect,0); - if(this.__cacheBitmapData2.image != null) { - this.__cacheBitmapData2.__textureVersion = this.__cacheBitmapData2.image.version + 1; - } - } - this.__cacheBitmapData2.__setUVRect(context,0,0,filterWidth,filterHeight); - bitmap2 = this.__cacheBitmapData2; - if(needCopyOfOriginal) { - if(this.__cacheBitmapData3 == null || bitmapWidth > this.__cacheBitmapData3.width || bitmapHeight > this.__cacheBitmapData3.height) { - this.__cacheBitmapData3 = new openfl_display_BitmapData(bitmapWidth,bitmapHeight,true,0); - } else { - this.__cacheBitmapData3.fillRect(this.__cacheBitmapData3.rect,0); - if(this.__cacheBitmapData3.image != null) { - this.__cacheBitmapData3.__textureVersion = this.__cacheBitmapData3.image.version + 1; - } - } - this.__cacheBitmapData3.__setUVRect(context,0,0,filterWidth,filterHeight); - bitmap3 = this.__cacheBitmapData3; - } - childRenderer.__setBlendMode(10); - childRenderer.__worldAlpha = 1; - childRenderer.__worldTransform.identity(); - childRenderer.__worldColorTransform.__identity(); - var shader; - var cacheBitmap; - var _g21 = 0; - var _g3 = this.__filters; - while(_g21 < _g3.length) { - var filter2 = _g3[_g21]; - ++_g21; - if(filter2.__preserveObject) { - childRenderer.__setRenderTarget(bitmap3); - childRenderer.__renderFilterPass(bitmap,childRenderer.__defaultDisplayShader,filter2.__smooth); - } - var _g22 = 0; - var _g31 = filter2.__numShaderPasses; - while(_g22 < _g31) { - var i = _g22++; - shader = filter2.__initShader(childRenderer,i); - childRenderer.__setBlendMode(filter2.__shaderBlendMode); - childRenderer.__setRenderTarget(bitmap2); - childRenderer.__renderFilterPass(bitmap,shader,filter2.__smooth); - cacheBitmap = bitmap; - bitmap = bitmap2; - bitmap2 = cacheBitmap; - } - if(filter2.__preserveObject) { - childRenderer.__setBlendMode(10); - childRenderer.__setRenderTarget(bitmap); - childRenderer.__renderFilterPass(bitmap3,childRenderer.__defaultDisplayShader,filter2.__smooth,false); - } - filter2.__renderDirty = false; - } - this.__cacheBitmap.__bitmapData = bitmap; - } - parentRenderer.__blendMode = 10; - parentRenderer.__setBlendMode(cacheBlendMode); - parentRenderer.__copyShader(childRenderer); - if(cacheRTT != null) { - context.setRenderToTexture(cacheRTT,cacheRTTDepthStencil,cacheRTTAntiAlias,cacheRTTSurfaceSelector); - } else { - context.setRenderToBackBuffer(); - } - parentRenderer.__resumeClipAndMask(childRenderer); - parentRenderer.setViewport(); - this.__cacheBitmapColorTransform.__copyFrom(colorTransform); - } else { - this.__cacheBitmapData.__drawCanvas(this,this.__cacheBitmapRenderer); - if(hasFilters) { - var needSecondBitmapData1 = false; - var needCopyOfOriginal1 = false; - var _g4 = 0; - var _g12 = this.__filters; - while(_g4 < _g12.length) { - var filter3 = _g12[_g4]; - ++_g4; - if(filter3.__needSecondBitmapData) { - needSecondBitmapData1 = true; - } - if(filter3.__preserveObject) { - needCopyOfOriginal1 = true; - } - } - var bitmap1 = this.__cacheBitmapData; - var bitmap21 = null; - var bitmap31 = null; - if(needSecondBitmapData1) { - if(this.__cacheBitmapData2 == null || this.__cacheBitmapData2.image == null || bitmapWidth > this.__cacheBitmapData2.width || bitmapHeight > this.__cacheBitmapData2.height) { - this.__cacheBitmapData2 = new openfl_display_BitmapData(bitmapWidth,bitmapHeight,true,0); - } else { - this.__cacheBitmapData2.fillRect(this.__cacheBitmapData2.rect,0); - } - bitmap21 = this.__cacheBitmapData2; - } else { - bitmap21 = bitmap1; - } - if(needCopyOfOriginal1) { - if(this.__cacheBitmapData3 == null || this.__cacheBitmapData3.image == null || bitmapWidth > this.__cacheBitmapData3.width || bitmapHeight > this.__cacheBitmapData3.height) { - this.__cacheBitmapData3 = new openfl_display_BitmapData(bitmapWidth,bitmapHeight,true,0); - } else { - this.__cacheBitmapData3.fillRect(this.__cacheBitmapData3.rect,0); - } - bitmap31 = this.__cacheBitmapData3; - } - if(this.__tempPoint == null) { - this.__tempPoint = new openfl_geom_Point(); - } - var destPoint = this.__tempPoint; - var cacheBitmap1; - var lastBitmap; - var _g23 = 0; - var _g32 = this.__filters; - while(_g23 < _g32.length) { - var filter4 = _g32[_g23]; - ++_g23; - if(filter4.__preserveObject) { - bitmap31.copyPixels(bitmap1,bitmap1.rect,destPoint); - } - lastBitmap = filter4.__applyFilter(bitmap21,bitmap1,bitmap1.rect,destPoint); - if(filter4.__preserveObject) { - lastBitmap.draw(bitmap31,null,this.__objectTransform != null ? this.__objectTransform.get_colorTransform() : null); - } - filter4.__renderDirty = false; - if(needSecondBitmapData1 && lastBitmap == bitmap21) { - cacheBitmap1 = bitmap1; - bitmap1 = bitmap21; - bitmap21 = cacheBitmap1; - } - } - if(this.__cacheBitmapData != bitmap1) { - cacheBitmap1 = this.__cacheBitmapData; - this.__cacheBitmapData = bitmap1; - this.__cacheBitmapData2 = cacheBitmap1; - this.__cacheBitmap.__bitmapData = this.__cacheBitmapData; - this.__cacheBitmapRenderer = null; - } - this.__cacheBitmap.__imageVersion = this.__cacheBitmapData.__textureVersion; - } - this.__cacheBitmapColorTransform.__copyFrom(colorTransform); - if(!this.__cacheBitmapColorTransform.__isDefault(true)) { - this.__cacheBitmapColorTransform.alphaMultiplier = 1; - this.__cacheBitmapData.colorTransform(this.__cacheBitmapData.rect,this.__cacheBitmapColorTransform); - } - } - this.__isCacheBitmapRender = false; - } - if(updateTransform || needRender) { - openfl_geom_Rectangle.__pool.release(rect); - } - updated = updateTransform; - } else if(this.__cacheBitmap != null) { - if(renderer.__type == "dom") { - this.__cacheBitmap.__renderDOMClear(renderer); - } - this.__cacheBitmap = null; - this.__cacheBitmapData = null; - this.__cacheBitmapData2 = null; - this.__cacheBitmapData3 = null; - this.__cacheBitmapColorTransform = null; - this.__cacheBitmapRenderer = null; - updated = true; - } - openfl_geom_ColorTransform.__pool.release(colorTransform); - return updated; - } - ,__updateTransforms: function(overrideTransform) { - var overrided = overrideTransform != null; - var local = overrided ? overrideTransform : this.__transform; - if(this.__worldTransform == null) { - this.__worldTransform = new openfl_geom_Matrix(); - } - if(this.__renderTransform == null) { - this.__renderTransform = new openfl_geom_Matrix(); - } - var renderParent = this.__renderParent != null ? this.__renderParent : this.parent; - if(!overrided && this.parent != null) { - var parentTransform = this.parent.__worldTransform; - var target = this.__worldTransform; - target.a = local.a * parentTransform.a + local.b * parentTransform.c; - target.b = local.a * parentTransform.b + local.b * parentTransform.d; - target.c = local.c * parentTransform.a + local.d * parentTransform.c; - target.d = local.c * parentTransform.b + local.d * parentTransform.d; - target.tx = local.tx * parentTransform.a + local.ty * parentTransform.c + parentTransform.tx; - target.ty = local.tx * parentTransform.b + local.ty * parentTransform.d + parentTransform.ty; - } else { - this.__worldTransform.copyFrom(local); - } - if(!overrided && renderParent != null) { - var parentTransform1 = renderParent.__renderTransform; - var target1 = this.__renderTransform; - target1.a = local.a * parentTransform1.a + local.b * parentTransform1.c; - target1.b = local.a * parentTransform1.b + local.b * parentTransform1.d; - target1.c = local.c * parentTransform1.a + local.d * parentTransform1.c; - target1.d = local.c * parentTransform1.b + local.d * parentTransform1.d; - target1.tx = local.tx * parentTransform1.a + local.ty * parentTransform1.c + parentTransform1.tx; - target1.ty = local.tx * parentTransform1.b + local.ty * parentTransform1.d + parentTransform1.ty; - } else { - this.__renderTransform.copyFrom(local); - } - if(this.__scrollRect != null) { - var _this = this.__renderTransform; - var px = -this.__scrollRect.x; - var py = -this.__scrollRect.y; - _this.tx = px * _this.a + py * _this.c + _this.tx; - _this.ty = px * _this.b + py * _this.d + _this.ty; - } - } - ,get_alpha: function() { - return this.__alpha; - } - ,set_alpha: function(value) { - if(value > 1.0) { - value = 1.0; - } - if(value < 0.0) { - value = 0.0; - } - if(value != this.__alpha && !this.get_cacheAsBitmap()) { - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - return this.__alpha = value; - } - ,get_blendMode: function() { - return this.__blendMode; - } - ,set_blendMode: function(value) { - if(value == null) { - value = 10; - } - if(value != this.__blendMode) { - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - return this.__blendMode = value; - } - ,get_cacheAsBitmap: function() { - if(this.__filters == null) { - return this.__cacheAsBitmap; - } else { - return true; - } - } - ,set_cacheAsBitmap: function(value) { - if(value != this.__cacheAsBitmap) { - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - return this.__cacheAsBitmap = value; - } - ,get_cacheAsBitmapMatrix: function() { - return this.__cacheAsBitmapMatrix; - } - ,set_cacheAsBitmapMatrix: function(value) { - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - return this.__cacheAsBitmapMatrix = value != null ? value.clone() : value; - } - ,get_filters: function() { - if(this.__filters == null) { - return []; - } else { - return this.__filters.slice(); - } - } - ,set_filters: function(value) { - if(value != null && value.length > 0) { - this.__filters = value; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } else if(this.__filters != null) { - this.__filters = null; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - return value; - } - ,get_height: function() { - var rect = openfl_geom_Rectangle.__pool.get(); - this.__getLocalBounds(rect); - var height = rect.height; - openfl_geom_Rectangle.__pool.release(rect); - return height; - } - ,set_height: function(value) { - var rect = openfl_geom_Rectangle.__pool.get(); - var matrix = openfl_geom_Matrix.__pool.get(); - matrix.identity(); - this.__getBounds(rect,matrix); - if(value != rect.height) { - this.set_scaleY(value / rect.height); - } else { - this.set_scaleY(1); - } - openfl_geom_Rectangle.__pool.release(rect); - openfl_geom_Matrix.__pool.release(matrix); - return value; - } - ,get_loaderInfo: function() { - if(this.stage != null) { - return openfl__$internal_Lib.current.__loaderInfo; - } - return null; - } - ,get_mask: function() { - return this.__mask; - } - ,set_mask: function(value) { - if(value == this.__mask) { - return value; - } - if(value != this.__mask) { - this.__setTransformDirty(); - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - if(this.__mask != null) { - this.__mask.__isMask = false; - this.__mask.__maskTarget = null; - this.__mask.__setTransformDirty(); - var _this = this.__mask; - if(!_this.__renderDirty) { - _this.__renderDirty = true; - _this.__setParentRenderDirty(); - } - } - if(value != null) { - value.__isMask = true; - value.__maskTarget = this; - value.__setWorldTransformInvalid(); - } - if(this.__cacheBitmap != null && this.__cacheBitmap.get_mask() != value) { - this.__cacheBitmap.set_mask(value); - } - return this.__mask = value; - } - ,get_mouseX: function() { - var mouseX = this.stage != null ? this.stage.__mouseX : openfl__$internal_Lib.current.stage.__mouseX; - var mouseY = this.stage != null ? this.stage.__mouseY : openfl__$internal_Lib.current.stage.__mouseY; - var _this = this.__getRenderTransform(); - var norm = _this.a * _this.d - _this.b * _this.c; - if(norm == 0) { - return -_this.tx; - } else { - return 1.0 / norm * (_this.c * (_this.ty - mouseY) + _this.d * (mouseX - _this.tx)); - } - } - ,get_mouseY: function() { - var mouseX = this.stage != null ? this.stage.__mouseX : openfl__$internal_Lib.current.stage.__mouseX; - var mouseY = this.stage != null ? this.stage.__mouseY : openfl__$internal_Lib.current.stage.__mouseY; - var _this = this.__getRenderTransform(); - var norm = _this.a * _this.d - _this.b * _this.c; - if(norm == 0) { - return -_this.ty; - } else { - return 1.0 / norm * (_this.a * (mouseY - _this.ty) + _this.b * (_this.tx - mouseX)); - } - } - ,get_name: function() { - return this.__name; - } - ,set_name: function(value) { - return this.__name = value; - } - ,get_root: function() { - if(this.stage != null) { - return openfl__$internal_Lib.current; - } - return null; - } - ,get_rotation: function() { - return this.__rotation; - } - ,set_rotation: function(value) { - if(value != this.__rotation) { - this.__rotation = value; - var radians = this.__rotation * (Math.PI / 180); - this.__rotationSine = Math.sin(radians); - this.__rotationCosine = Math.cos(radians); - this.__transform.a = this.__rotationCosine * this.__scaleX; - this.__transform.b = this.__rotationSine * this.__scaleX; - this.__transform.c = -this.__rotationSine * this.__scaleY; - this.__transform.d = this.__rotationCosine * this.__scaleY; - this.__setTransformDirty(); - } - return value; - } - ,get_scale9Grid: function() { - if(this.__scale9Grid == null) { - return null; - } - return this.__scale9Grid.clone(); - } - ,set_scale9Grid: function(value) { - if(value == null && this.__scale9Grid == null) { - return value; - } - if(value != null && this.__scale9Grid != null && this.__scale9Grid.equals(value)) { - return value; - } - if(value != null) { - if(this.__scale9Grid == null) { - this.__scale9Grid = new openfl_geom_Rectangle(); - } - this.__scale9Grid.copyFrom(value); - } else { - this.__scale9Grid = null; - } - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - return value; - } - ,get_scaleX: function() { - return this.__scaleX; - } - ,set_scaleX: function(value) { - if(value != this.__scaleX) { - this.__scaleX = value; - if(this.__transform.b == 0) { - if(value != this.__transform.a) { - this.__setTransformDirty(); - } - this.__transform.a = value; - } else { - var a = this.__rotationCosine * value; - var b = this.__rotationSine * value; - if(this.__transform.a != a || this.__transform.b != b) { - this.__setTransformDirty(); - } - this.__transform.a = a; - this.__transform.b = b; - } - } - return value; - } - ,get_scaleY: function() { - return this.__scaleY; - } - ,set_scaleY: function(value) { - if(value != this.__scaleY) { - this.__scaleY = value; - if(this.__transform.c == 0) { - if(value != this.__transform.d) { - this.__setTransformDirty(); - } - this.__transform.d = value; - } else { - var c = -this.__rotationSine * value; - var d = this.__rotationCosine * value; - if(this.__transform.d != d || this.__transform.c != c) { - this.__setTransformDirty(); - } - this.__transform.c = c; - this.__transform.d = d; - } - } - return value; - } - ,get_scrollRect: function() { - if(this.__scrollRect == null) { - return null; - } - return this.__scrollRect.clone(); - } - ,set_scrollRect: function(value) { - if(value == null && this.__scrollRect == null) { - return value; - } - if(value != null && this.__scrollRect != null && this.__scrollRect.equals(value)) { - return value; - } - if(value != null) { - if(this.__scrollRect == null) { - this.__scrollRect = new openfl_geom_Rectangle(); - } - this.__scrollRect.copyFrom(value); - } else { - this.__scrollRect = null; - } - this.__setTransformDirty(); - if(openfl_display_DisplayObject.__supportDOM) { - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - return value; - } - ,get_shader: function() { - return this.__shader; - } - ,set_shader: function(value) { - this.__shader = value; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - return value; - } - ,get_transform: function() { - if(this.__objectTransform == null) { - this.__objectTransform = new openfl_geom_Transform(this); - } - return this.__objectTransform; - } - ,set_transform: function(value) { - if(value == null) { - throw new js__$Boot_HaxeError(new openfl_errors_TypeError("Parameter transform must be non-null.")); - } - if(this.__objectTransform == null) { - this.__objectTransform = new openfl_geom_Transform(this); - } - this.__setTransformDirty(); - this.__objectTransform.set_matrix(value.get_matrix()); - if(!this.__objectTransform.get_colorTransform().__equals(value.get_colorTransform(),true) || !this.get_cacheAsBitmap() && this.__objectTransform.get_colorTransform().alphaMultiplier != value.get_colorTransform().alphaMultiplier) { - this.__objectTransform.get_colorTransform().__copyFrom(value.get_colorTransform()); - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - return this.__objectTransform; - } - ,get_visible: function() { - return this.__visible; - } - ,set_visible: function(value) { - if(value != this.__visible) { - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - return this.__visible = value; - } - ,get_width: function() { - var rect = openfl_geom_Rectangle.__pool.get(); - this.__getLocalBounds(rect); - var width = rect.width; - openfl_geom_Rectangle.__pool.release(rect); - return width; - } - ,set_width: function(value) { - var rect = openfl_geom_Rectangle.__pool.get(); - var matrix = openfl_geom_Matrix.__pool.get(); - matrix.identity(); - this.__getBounds(rect,matrix); - if(value != rect.width) { - this.set_scaleX(value / rect.width); - } else { - this.set_scaleX(1); - } - openfl_geom_Rectangle.__pool.release(rect); - openfl_geom_Matrix.__pool.release(matrix); - return value; - } - ,get_x: function() { - return this.__transform.tx; - } - ,set_x: function(value) { - if(value != this.__transform.tx) { - this.__setTransformDirty(); - } - return this.__transform.tx = value; - } - ,get_y: function() { - return this.__transform.ty; - } - ,set_y: function(value) { - if(value != this.__transform.ty) { - this.__setTransformDirty(); - } - return this.__transform.ty = value; - } - ,__class__: openfl_display_DisplayObject - ,__properties__: {set_y:"set_y",get_y:"get_y",set_x:"set_x",get_x:"get_x",set_width:"set_width",get_width:"get_width",set_visible:"set_visible",get_visible:"get_visible",set_transform:"set_transform",get_transform:"get_transform",set_shader:"set_shader",get_shader:"get_shader",set_scrollRect:"set_scrollRect",get_scrollRect:"get_scrollRect",set_scaleY:"set_scaleY",get_scaleY:"get_scaleY",set_scaleX:"set_scaleX",get_scaleX:"get_scaleX",set_scale9Grid:"set_scale9Grid",get_scale9Grid:"get_scale9Grid",set_rotation:"set_rotation",get_rotation:"get_rotation",get_root:"get_root",set_name:"set_name",get_name:"get_name",get_mouseY:"get_mouseY",get_mouseX:"get_mouseX",set_mask:"set_mask",get_mask:"get_mask",get_loaderInfo:"get_loaderInfo",set_height:"set_height",get_height:"get_height",set_filters:"set_filters",get_filters:"get_filters",set_cacheAsBitmapMatrix:"set_cacheAsBitmapMatrix",get_cacheAsBitmapMatrix:"get_cacheAsBitmapMatrix",set_cacheAsBitmap:"set_cacheAsBitmap",get_cacheAsBitmap:"get_cacheAsBitmap",set_blendMode:"set_blendMode",get_blendMode:"get_blendMode",set_alpha:"set_alpha",get_alpha:"get_alpha"} -}); -var openfl_display_InteractiveObject = function() { - openfl_display_DisplayObject.call(this); - this.doubleClickEnabled = false; - this.mouseEnabled = true; - this.needsSoftKeyboard = false; - this.__tabEnabled = null; - this.__tabIndex = -1; -}; -$hxClasses["openfl.display.InteractiveObject"] = openfl_display_InteractiveObject; -openfl_display_InteractiveObject.__name__ = "openfl.display.InteractiveObject"; -openfl_display_InteractiveObject.__super__ = openfl_display_DisplayObject; -openfl_display_InteractiveObject.prototype = $extend(openfl_display_DisplayObject.prototype,{ - doubleClickEnabled: null - ,focusRect: null - ,mouseEnabled: null - ,needsSoftKeyboard: null - ,softKeyboardInputAreaOfInterest: null - ,__tabEnabled: null - ,__tabIndex: null - ,requestSoftKeyboard: function() { - openfl__$internal_Lib.notImplemented({ fileName : "openfl/display/InteractiveObject.hx", lineNumber : 1251, className : "openfl.display.InteractiveObject", methodName : "requestSoftKeyboard"}); - return false; - } - ,__allowMouseFocus: function() { - return this.get_tabEnabled(); - } - ,__getInteractive: function(stack) { - if(stack != null) { - stack.push(this); - if(this.parent != null) { - this.parent.__getInteractive(stack); - } - } - return true; - } - ,__hitTest: function(x,y,shapeFlag,stack,interactiveOnly,hitObject) { - if(!hitObject.get_visible() || this.__isMask || interactiveOnly && !this.mouseEnabled) { - return false; - } - return openfl_display_DisplayObject.prototype.__hitTest.call(this,x,y,shapeFlag,stack,interactiveOnly,hitObject); - } - ,__tabTest: function(stack) { - if(this.get_tabEnabled()) { - stack.push(this); - } - } - ,get_tabEnabled: function() { - if(this.__tabEnabled == true) { - return true; - } else { - return false; - } - } - ,set_tabEnabled: function(value) { - if(this.__tabEnabled != value) { - this.__tabEnabled = value; - this.dispatchEvent(new openfl_events_Event("tabEnabledChange",true,false)); - } - return this.__tabEnabled; - } - ,get_tabIndex: function() { - return this.__tabIndex; - } - ,set_tabIndex: function(value) { - if(this.__tabIndex != value) { - if(value < -1) { - throw new js__$Boot_HaxeError(new openfl_errors_RangeError("Parameter tabIndex must be a non-negative number; got " + value)); - } - this.__tabIndex = value; - this.dispatchEvent(new openfl_events_Event("tabIndexChange",true,false)); - } - return this.__tabIndex; - } - ,__class__: openfl_display_InteractiveObject - ,__properties__: $extend(openfl_display_DisplayObject.prototype.__properties__,{set_tabIndex:"set_tabIndex",get_tabIndex:"get_tabIndex",set_tabEnabled:"set_tabEnabled",get_tabEnabled:"get_tabEnabled"}) -}); -var openfl_display_DisplayObjectContainer = function() { - openfl_display_InteractiveObject.call(this); - this.mouseChildren = true; - this.__tabChildren = true; - this.__children = []; - this.__removedChildren = openfl__$Vector_Vector_$Impl_$.toObjectVector(null); -}; -$hxClasses["openfl.display.DisplayObjectContainer"] = openfl_display_DisplayObjectContainer; -openfl_display_DisplayObjectContainer.__name__ = "openfl.display.DisplayObjectContainer"; -openfl_display_DisplayObjectContainer.__super__ = openfl_display_InteractiveObject; -openfl_display_DisplayObjectContainer.prototype = $extend(openfl_display_InteractiveObject.prototype,{ - mouseChildren: null - ,__removedChildren: null - ,__tabChildren: null - ,addChild: function(child) { - return this.addChildAt(child,this.get_numChildren()); - } - ,addChildAt: function(child,index) { - if(child == null) { - var error = new openfl_errors_TypeError("Error #2007: Parameter child must be non-null."); - error.errorID = 2007; - throw new js__$Boot_HaxeError(error); - } else if(child.stage == child) { - var error1 = new openfl_errors_ArgumentError("Error #3783: A Stage object cannot be added as the child of another object."); - error1.errorID = 3783; - throw new js__$Boot_HaxeError(error1); - } - if(index > this.__children.length || index < 0) { - throw new js__$Boot_HaxeError("Invalid index position " + index); - } - if(child.parent == this) { - if(this.__children[index] != child) { - HxOverrides.remove(this.__children,child); - this.__children.splice(index,0,child); - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - } else { - if(child.parent != null) { - child.parent.removeChild(child); - } - this.__children.splice(index,0,child); - child.parent = this; - var addedToStage = this.stage != null && child.stage == null; - if(addedToStage) { - this.__setStageReference(this.stage); - } - child.__setTransformDirty(); - if(!child.__renderDirty) { - child.__renderDirty = true; - child.__setParentRenderDirty(); - } - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - var event = openfl_events_Event.__pool.get(); - event.type = "added"; - event.bubbles = true; - event.target = child; - child.__dispatchWithCapture(event); - openfl_events_Event.__pool.release(event); - if(addedToStage) { - event = new openfl_events_Event("addedToStage",false,false); - child.__dispatchWithCapture(event); - child.__dispatchChildren(event); - } - } - return child; - } - ,areInaccessibleObjectsUnderPoint: function(point) { - return false; - } - ,contains: function(child) { - while(child != this && child != null) child = child.parent; - return child == this; - } - ,getChildAt: function(index) { - if(index >= 0 && index < this.__children.length) { - return this.__children[index]; - } - return null; - } - ,getChildByName: function(name) { - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - if(child.get_name() == name) { - return child; - } - } - return null; - } - ,getChildIndex: function(child) { - var _g = 0; - var _g1 = this.__children.length; - while(_g < _g1) { - var i = _g++; - if(this.__children[i] == child) { - return i; - } - } - return -1; - } - ,getObjectsUnderPoint: function(point) { - var stack = []; - this.__hitTest(point.x,point.y,false,stack,false,this); - stack.reverse(); - return stack; - } - ,removeChild: function(child) { - if(child != null && child.parent == this) { - child.__setTransformDirty(); - if(!child.__renderDirty) { - child.__renderDirty = true; - child.__setParentRenderDirty(); - } - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - var event = new openfl_events_Event("removed",true); - child.__dispatchWithCapture(event); - if(this.stage != null) { - if(child.stage != null && this.stage.get_focus() == child) { - this.stage.set_focus(null); - } - var event1 = new openfl_events_Event("removedFromStage",false,false); - child.__dispatchWithCapture(event1); - child.__dispatchChildren(event1); - child.__setStageReference(null); - } - child.parent = null; - HxOverrides.remove(this.__children,child); - this.__removedChildren.push(child); - child.__setTransformDirty(); - } - return child; - } - ,removeChildAt: function(index) { - if(index >= 0 && index < this.__children.length) { - return this.removeChild(this.__children[index]); - } - return null; - } - ,removeChildren: function(beginIndex,endIndex) { - if(endIndex == null) { - endIndex = 2147483647; - } - if(beginIndex == null) { - beginIndex = 0; - } - if(endIndex == 2147483647) { - endIndex = this.__children.length - 1; - if(endIndex < 0) { - return; - } - } - if(beginIndex > this.__children.length - 1) { - return; - } else if(endIndex < beginIndex || beginIndex < 0 || endIndex > this.__children.length) { - throw new js__$Boot_HaxeError(new openfl_errors_RangeError("The supplied index is out of bounds.")); - } - var numRemovals = endIndex - beginIndex; - while(numRemovals >= 0) { - this.removeChildAt(beginIndex); - --numRemovals; - } - } - ,resolve: function(fieldName) { - if(this.__children == null) { - return null; - } - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - if(child.get_name() == fieldName) { - return child; - } - } - return null; - } - ,setChildIndex: function(child,index) { - if(index >= 0 && index <= this.__children.length && child.parent == this) { - HxOverrides.remove(this.__children,child); - this.__children.splice(index,0,child); - } - } - ,stopAllMovieClips: function() { - this.__stopAllMovieClips(); - } - ,swapChildren: function(child1,child2) { - if(child1.parent == this && child2.parent == this) { - var index1 = this.__children.indexOf(child1); - var index2 = this.__children.indexOf(child2); - this.__children[index1] = child2; - this.__children[index2] = child1; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - } - ,swapChildrenAt: function(index1,index2) { - var swap = this.__children[index1]; - this.__children[index1] = this.__children[index2]; - this.__children[index2] = swap; - swap = null; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - ,__cleanup: function() { - openfl_display_InteractiveObject.prototype.__cleanup.call(this); - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - child.__cleanup(); - } - var orphan = this.__removedChildren.iterator(); - while(orphan.hasNext()) { - var orphan1 = orphan.next(); - if(orphan1.stage == null) { - orphan1.__cleanup(); - } - } - this.__removedChildren.set_length(0); - } - ,__cleanupRemovedChildren: function() { - var orphan = this.__removedChildren.iterator(); - while(orphan.hasNext()) { - var orphan1 = orphan.next(); - if(orphan1.stage == null) { - orphan1.__cleanup(); - } - } - this.__removedChildren.set_length(0); - } - ,__dispatchChildren: function(event) { - if(this.__children != null) { - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - event.target = child; - if(!child.__dispatchWithCapture(event)) { - break; - } - child.__dispatchChildren(event); - } - } - } - ,__enterFrame: function(deltaTime) { - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - child.__enterFrame(deltaTime); - } - } - ,__getBounds: function(rect,matrix) { - openfl_display_InteractiveObject.prototype.__getBounds.call(this,rect,matrix); - if(this.__children.length == 0) { - return; - } - var childWorldTransform = openfl_geom_Matrix.__pool.get(); - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - if(child.__scaleX == 0 || child.__scaleY == 0) { - continue; - } - var local = child.__transform; - childWorldTransform.a = local.a * matrix.a + local.b * matrix.c; - childWorldTransform.b = local.a * matrix.b + local.b * matrix.d; - childWorldTransform.c = local.c * matrix.a + local.d * matrix.c; - childWorldTransform.d = local.c * matrix.b + local.d * matrix.d; - childWorldTransform.tx = local.tx * matrix.a + local.ty * matrix.c + matrix.tx; - childWorldTransform.ty = local.tx * matrix.b + local.ty * matrix.d + matrix.ty; - child.__getBounds(rect,childWorldTransform); - } - openfl_geom_Matrix.__pool.release(childWorldTransform); - } - ,__getFilterBounds: function(rect,matrix) { - openfl_display_InteractiveObject.prototype.__getFilterBounds.call(this,rect,matrix); - if(this.__scrollRect != null) { - return; - } - if(this.__children.length == 0) { - return; - } - var childWorldTransform = openfl_geom_Matrix.__pool.get(); - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - if(child.__scaleX == 0 || child.__scaleY == 0 || child.__isMask) { - continue; - } - var local = child.__transform; - childWorldTransform.a = local.a * matrix.a + local.b * matrix.c; - childWorldTransform.b = local.a * matrix.b + local.b * matrix.d; - childWorldTransform.c = local.c * matrix.a + local.d * matrix.c; - childWorldTransform.d = local.c * matrix.b + local.d * matrix.d; - childWorldTransform.tx = local.tx * matrix.a + local.ty * matrix.c + matrix.tx; - childWorldTransform.ty = local.tx * matrix.b + local.ty * matrix.d + matrix.ty; - child.__getFilterBounds(rect,childWorldTransform); - } - openfl_geom_Matrix.__pool.release(childWorldTransform); - } - ,__getRenderBounds: function(rect,matrix) { - if(this.__scrollRect != null) { - openfl_display_InteractiveObject.prototype.__getRenderBounds.call(this,rect,matrix); - return; - } else { - openfl_display_InteractiveObject.prototype.__getBounds.call(this,rect,matrix); - } - if(this.__children.length == 0) { - return; - } - var childWorldTransform = openfl_geom_Matrix.__pool.get(); - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - if(child.__scaleX == 0 || child.__scaleY == 0 || child.__isMask) { - continue; - } - var local = child.__transform; - childWorldTransform.a = local.a * matrix.a + local.b * matrix.c; - childWorldTransform.b = local.a * matrix.b + local.b * matrix.d; - childWorldTransform.c = local.c * matrix.a + local.d * matrix.c; - childWorldTransform.d = local.c * matrix.b + local.d * matrix.d; - childWorldTransform.tx = local.tx * matrix.a + local.ty * matrix.c + matrix.tx; - childWorldTransform.ty = local.tx * matrix.b + local.ty * matrix.d + matrix.ty; - child.__getRenderBounds(rect,childWorldTransform); - } - openfl_geom_Matrix.__pool.release(childWorldTransform); - } - ,__hitTest: function(x,y,shapeFlag,stack,interactiveOnly,hitObject) { - if(!hitObject.get_visible() || this.__isMask || interactiveOnly && !this.mouseEnabled && !this.mouseChildren) { - return false; - } - if(this.get_mask() != null && !this.get_mask().__hitTestMask(x,y)) { - return false; - } - if(this.__scrollRect != null) { - var point = openfl_geom_Point.__pool.get(); - point.setTo(x,y); - var _this = this.__getRenderTransform(); - var norm = _this.a * _this.d - _this.b * _this.c; - if(norm == 0) { - point.x = -_this.tx; - point.y = -_this.ty; - } else { - var px = 1.0 / norm * (_this.c * (_this.ty - point.y) + _this.d * (point.x - _this.tx)); - point.y = 1.0 / norm * (_this.a * (point.y - _this.ty) + _this.b * (_this.tx - point.x)); - point.x = px; - } - if(!this.__scrollRect.containsPoint(point)) { - openfl_geom_Point.__pool.release(point); - return false; - } - openfl_geom_Point.__pool.release(point); - } - var i = this.__children.length; - if(interactiveOnly) { - if(stack == null || !this.mouseChildren) { - while(--i >= 0) if(this.__children[i].__hitTest(x,y,shapeFlag,null,true,this.__children[i])) { - if(stack != null) { - stack.push(hitObject); - } - return true; - } - } else if(stack != null) { - var length = stack.length; - var interactive = false; - var hitTest = false; - while(--i >= 0) { - interactive = this.__children[i].__getInteractive(null); - if(interactive || this.mouseEnabled && !hitTest) { - if(this.__children[i].__hitTest(x,y,shapeFlag,stack,true,this.__children[i])) { - hitTest = true; - if(interactive && stack.length > length) { - break; - } - } - } - } - if(hitTest) { - stack.splice(length,0,hitObject); - return true; - } - } - } else { - var hitTest1 = false; - while(--i >= 0) if(this.__children[i].__hitTest(x,y,shapeFlag,stack,false,this.__children[i])) { - hitTest1 = true; - if(stack == null) { - break; - } - } - return hitTest1; - } - return false; - } - ,__hitTestMask: function(x,y) { - var i = this.__children.length; - while(--i >= 0) if(this.__children[i].__hitTestMask(x,y)) { - return true; - } - return false; - } - ,__readGraphicsData: function(graphicsData,recurse) { - openfl_display_InteractiveObject.prototype.__readGraphicsData.call(this,graphicsData,recurse); - if(recurse) { - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - child.__readGraphicsData(graphicsData,recurse); - } - } - } - ,__renderCairo: function(renderer) { - } - ,__renderCairoMask: function(renderer) { - } - ,__renderCanvas: function(renderer) { - var orphan = this.__removedChildren.iterator(); - while(orphan.hasNext()) { - var orphan1 = orphan.next(); - if(orphan1.stage == null) { - orphan1.__cleanup(); - } - } - this.__removedChildren.set_length(0); - if(!this.__renderable || this.__worldAlpha <= 0 || this.get_mask() != null && (this.get_mask().get_width() <= 0 || this.get_mask().get_height() <= 0)) { - return; - } - openfl_display_InteractiveObject.prototype.__renderCanvas.call(this,renderer); - if(this.__cacheBitmap != null && !this.__isCacheBitmapRender) { - return; - } - renderer.__pushMaskObject(this); - if(renderer.__stage != null) { - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - child.__renderCanvas(renderer); - child.__renderDirty = false; - } - this.__renderDirty = false; - } else { - var _g2 = 0; - var _g11 = this.__children; - while(_g2 < _g11.length) { - var child1 = _g11[_g2]; - ++_g2; - child1.__renderCanvas(renderer); - } - } - renderer.__popMaskObject(this); - } - ,__renderCanvasMask: function(renderer) { - var orphan = this.__removedChildren.iterator(); - while(orphan.hasNext()) { - var orphan1 = orphan.next(); - if(orphan1.stage == null) { - orphan1.__cleanup(); - } - } - this.__removedChildren.set_length(0); - if(this.__graphics != null) { - openfl__$internal_renderer_canvas_CanvasGraphics.renderMask(this.__graphics,renderer); - } - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - child.__renderCanvasMask(renderer); - } - } - ,__renderDOM: function(renderer) { - var orphan = this.__removedChildren.iterator(); - while(orphan.hasNext()) { - var orphan1 = orphan.next(); - if(orphan1.stage == null) { - orphan1.__renderDOM(renderer); - } - } - var orphan2 = this.__removedChildren.iterator(); - while(orphan2.hasNext()) { - var orphan3 = orphan2.next(); - if(orphan3.stage == null) { - orphan3.__cleanup(); - } - } - this.__removedChildren.set_length(0); - openfl_display_InteractiveObject.prototype.__renderDOM.call(this,renderer); - if(this.__cacheBitmap != null && !this.__isCacheBitmapRender) { - return; - } - renderer.__pushMaskObject(this); - if(renderer.__stage != null) { - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - child.__renderDOM(renderer); - child.__renderDirty = false; - } - this.__renderDirty = false; - } else { - var _g2 = 0; - var _g11 = this.__children; - while(_g2 < _g11.length) { - var child1 = _g11[_g2]; - ++_g2; - child1.__renderDOM(renderer); - } - } - renderer.__popMaskObject(this); - } - ,__renderDOMClear: function(renderer) { - var orphan = this.__removedChildren.iterator(); - while(orphan.hasNext()) { - var orphan1 = orphan.next(); - if(orphan1.stage == null) { - orphan1.__renderDOMClear(renderer); - } - } - var orphan2 = this.__removedChildren.iterator(); - while(orphan2.hasNext()) { - var orphan3 = orphan2.next(); - if(orphan3.stage == null) { - orphan3.__cleanup(); - } - } - this.__removedChildren.set_length(0); - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - child.__renderDOMClear(renderer); - } - } - ,__renderGL: function(renderer) { - var orphan = this.__removedChildren.iterator(); - while(orphan.hasNext()) { - var orphan1 = orphan.next(); - if(orphan1.stage == null) { - orphan1.__cleanup(); - } - } - this.__removedChildren.set_length(0); - if(!this.__renderable || this.__worldAlpha <= 0) { - return; - } - openfl_display_InteractiveObject.prototype.__renderGL.call(this,renderer); - if(this.__cacheBitmap != null && !this.__isCacheBitmapRender) { - return; - } - if(this.__children.length > 0) { - renderer.__pushMaskObject(this); - if(renderer.__stage != null) { - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - child.__renderGL(renderer); - child.__renderDirty = false; - } - this.__renderDirty = false; - } else { - var _g2 = 0; - var _g11 = this.__children; - while(_g2 < _g11.length) { - var child1 = _g11[_g2]; - ++_g2; - child1.__renderGL(renderer); - } - } - } - if(this.__children.length > 0) { - renderer.__popMaskObject(this); - } - } - ,__renderGLMask: function(renderer) { - var orphan = this.__removedChildren.iterator(); - while(orphan.hasNext()) { - var orphan1 = orphan.next(); - if(orphan1.stage == null) { - orphan1.__cleanup(); - } - } - this.__removedChildren.set_length(0); - if(this.__graphics != null) { - openfl__$internal_renderer_context3D_Context3DShape.renderMask(this,renderer); - } - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - child.__renderGLMask(renderer); - } - } - ,__setStageReference: function(stage) { - openfl_display_InteractiveObject.prototype.__setStageReference.call(this,stage); - if(this.__children != null) { - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - child.__setStageReference(stage); - } - } - } - ,__setWorldTransformInvalid: function() { - if(!this.__worldTransformInvalid) { - this.__worldTransformInvalid = true; - if(this.__children != null) { - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - child.__setWorldTransformInvalid(); - } - } - } - } - ,__shouldCacheHardware: function(value) { - if(value == true) { - return true; - } - value = openfl_display_InteractiveObject.prototype.__shouldCacheHardware.call(this,value); - if(value == true) { - return true; - } - if(this.__children != null) { - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - value = child.__shouldCacheHardware(value); - if(value == true) { - return true; - } - } - } - return value; - } - ,__stopAllMovieClips: function() { - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - child.__stopAllMovieClips(); - } - } - ,__tabTest: function(stack) { - openfl_display_InteractiveObject.prototype.__tabTest.call(this,stack); - if(!this.get_tabChildren()) { - return; - } - var interactive = false; - var interactiveObject = null; - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - interactive = child.__getInteractive(null); - if(interactive) { - interactiveObject = child; - interactiveObject.__tabTest(stack); - } - } - } - ,__update: function(transformOnly,updateChildren) { - openfl_display_InteractiveObject.prototype.__update.call(this,transformOnly,updateChildren); - if(updateChildren) { - var _g = 0; - var _g1 = this.__children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - child.__update(transformOnly,true); - } - } - } - ,get_numChildren: function() { - return this.__children.length; - } - ,get_tabChildren: function() { - return this.__tabChildren; - } - ,set_tabChildren: function(value) { - if(this.__tabChildren != value) { - this.__tabChildren = value; - this.dispatchEvent(new openfl_events_Event("tabChildrenChange",true,false)); - } - return this.__tabChildren; - } - ,__class__: openfl_display_DisplayObjectContainer - ,__properties__: $extend(openfl_display_InteractiveObject.prototype.__properties__,{set_tabChildren:"set_tabChildren",get_tabChildren:"get_tabChildren",get_numChildren:"get_numChildren"}) -}); -var openfl_display_Sprite = function() { - openfl_display_DisplayObjectContainer.call(this); - this.__buttonMode = false; - this.useHandCursor = true; -}; -$hxClasses["openfl.display.Sprite"] = openfl_display_Sprite; -openfl_display_Sprite.__name__ = "openfl.display.Sprite"; -openfl_display_Sprite.__super__ = openfl_display_DisplayObjectContainer; -openfl_display_Sprite.prototype = $extend(openfl_display_DisplayObjectContainer.prototype,{ - dropTarget: null - ,hitArea: null - ,useHandCursor: null - ,__buttonMode: null - ,startDrag: function(lockCenter,bounds) { - if(lockCenter == null) { - lockCenter = false; - } - if(this.stage != null) { - this.stage.__startDrag(this,lockCenter,bounds); - } - } - ,stopDrag: function() { - if(this.stage != null) { - this.stage.__stopDrag(this); - } - } - ,__getCursor: function() { - if(this.__buttonMode && this.useHandCursor) { - return "button"; - } else { - return null; - } - } - ,__hitTest: function(x,y,shapeFlag,stack,interactiveOnly,hitObject) { - if(interactiveOnly && !this.mouseEnabled && !this.mouseChildren) { - return false; - } - if(!hitObject.get_visible() || this.__isMask) { - return this.__hitTestHitArea(x,y,shapeFlag,stack,interactiveOnly,hitObject); - } - if(this.get_mask() != null && !this.get_mask().__hitTestMask(x,y)) { - return this.__hitTestHitArea(x,y,shapeFlag,stack,interactiveOnly,hitObject); - } - if(this.__scrollRect != null) { - var point = openfl_geom_Point.__pool.get(); - point.setTo(x,y); - var _this = this.__getRenderTransform(); - var norm = _this.a * _this.d - _this.b * _this.c; - if(norm == 0) { - point.x = -_this.tx; - point.y = -_this.ty; - } else { - var px = 1.0 / norm * (_this.c * (_this.ty - point.y) + _this.d * (point.x - _this.tx)); - point.y = 1.0 / norm * (_this.a * (point.y - _this.ty) + _this.b * (_this.tx - point.x)); - point.x = px; - } - if(!this.__scrollRect.containsPoint(point)) { - openfl_geom_Point.__pool.release(point); - return this.__hitTestHitArea(x,y,shapeFlag,stack,true,hitObject); - } - openfl_geom_Point.__pool.release(point); - } - if(openfl_display_DisplayObjectContainer.prototype.__hitTest.call(this,x,y,shapeFlag,stack,interactiveOnly,hitObject)) { - if(stack != null) { - return interactiveOnly; - } else { - return true; - } - } else if(this.hitArea == null && this.__graphics != null && this.__graphics.__hitTest(x,y,shapeFlag,this.__getRenderTransform())) { - if(stack != null && (!interactiveOnly || this.mouseEnabled)) { - stack.push(hitObject); - } - return true; - } - return this.__hitTestHitArea(x,y,shapeFlag,stack,interactiveOnly,hitObject); - } - ,__hitTestHitArea: function(x,y,shapeFlag,stack,interactiveOnly,hitObject) { - if(this.hitArea != null) { - if(!this.hitArea.mouseEnabled) { - this.hitArea.mouseEnabled = true; - var hitTest = this.hitArea.__hitTest(x,y,shapeFlag,null,true,hitObject); - this.hitArea.mouseEnabled = false; - if(stack != null && hitTest) { - stack[stack.length] = hitObject; - } - return hitTest; - } - } - return false; - } - ,__hitTestMask: function(x,y) { - if(openfl_display_DisplayObjectContainer.prototype.__hitTestMask.call(this,x,y)) { - return true; - } else if(this.__graphics != null && this.__graphics.__hitTest(x,y,true,this.__getRenderTransform())) { - return true; - } - return false; - } - ,get_graphics: function() { - if(this.__graphics == null) { - this.__graphics = new openfl_display_Graphics(this); - } - return this.__graphics; - } - ,get_tabEnabled: function() { - if(this.__tabEnabled == null) { - return this.__buttonMode; - } else { - return this.__tabEnabled; - } - } - ,get_buttonMode: function() { - return this.__buttonMode; - } - ,set_buttonMode: function(value) { - return this.__buttonMode = value; - } - ,__class__: openfl_display_Sprite - ,__properties__: $extend(openfl_display_DisplayObjectContainer.prototype.__properties__,{get_graphics:"get_graphics",set_buttonMode:"set_buttonMode",get_buttonMode:"get_buttonMode"}) -}); -var Main = function() { - openfl_display_Sprite.call(this); - if(this.stage != null) { - this.init(); - } else { - this.addEventListener("addedToStage",$bind(this,this.init)); - } -}; -$hxClasses["Main"] = Main; -Main.__name__ = "Main"; -Main.main = function() { - openfl_Lib.get_current().addChild(new Main()); -}; -Main.__super__ = openfl_display_Sprite; -Main.prototype = $extend(openfl_display_Sprite.prototype,{ - init: function(E) { - if(this.hasEventListener("addedToStage")) { - this.removeEventListener("addedToStage",$bind(this,this.init)); - } - this.initialize(); - var game = new GameClass(); - this.addChild(game); - } - ,initialize: function() { - openfl_Lib.get_current().stage.align = 7; - openfl_Lib.get_current().stage.set_scaleMode(1); - } - ,__class__: Main -}); -var DocumentClass = function(current) { - current.addChild(this); - Main.call(this); - this.dispatchEvent(new openfl_events_Event("addedToStage",false,false)); -}; -$hxClasses["DocumentClass"] = DocumentClass; -DocumentClass.__name__ = "DocumentClass"; -DocumentClass.__super__ = Main; -DocumentClass.prototype = $extend(Main.prototype,{ - __class__: DocumentClass -}); -var flixel_util_IFlxDestroyable = function() { }; -$hxClasses["flixel.util.IFlxDestroyable"] = flixel_util_IFlxDestroyable; -flixel_util_IFlxDestroyable.__name__ = "flixel.util.IFlxDestroyable"; -flixel_util_IFlxDestroyable.__isInterface__ = true; -flixel_util_IFlxDestroyable.prototype = { - destroy: null - ,__class__: flixel_util_IFlxDestroyable -}; -var flixel_FlxBasic = function() { - this.flixelType = 0; - this.exists = true; - this.alive = true; - this.visible = true; - this.active = true; - this.ID = -1; -}; -$hxClasses["flixel.FlxBasic"] = flixel_FlxBasic; -flixel_FlxBasic.__name__ = "flixel.FlxBasic"; -flixel_FlxBasic.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_FlxBasic.prototype = { - ID: null - ,active: null - ,visible: null - ,alive: null - ,exists: null - ,flixelType: null - ,_cameras: null - ,destroy: function() { - this.set_exists(false); - this._cameras = null; - } - ,kill: function() { - this.set_alive(false); - this.set_exists(false); - } - ,revive: function() { - this.set_alive(true); - this.set_exists(true); - } - ,update: function(elapsed) { - } - ,draw: function() { - } - ,toString: function() { - var value = this.active; - var _this = flixel_util_LabelValuePair._pool.get(); - _this.label = "active"; - _this.value = value; - var value1 = this.visible; - var _this1 = flixel_util_LabelValuePair._pool.get(); - _this1.label = "visible"; - _this1.value = value1; - var value2 = this.alive; - var _this2 = flixel_util_LabelValuePair._pool.get(); - _this2.label = "alive"; - _this2.value = value2; - var value3 = this.exists; - var _this3 = flixel_util_LabelValuePair._pool.get(); - _this3.label = "exists"; - _this3.value = value3; - return flixel_util_FlxStringUtil.getDebugString([_this,_this1,_this2,_this3]); - } - ,set_visible: function(Value) { - return this.visible = Value; - } - ,set_active: function(Value) { - return this.active = Value; - } - ,set_exists: function(Value) { - return this.exists = Value; - } - ,set_alive: function(Value) { - return this.alive = Value; - } - ,get_camera: function() { - if(this._cameras == null || this._cameras.length == 0) { - return flixel_FlxCamera.defaultCameras[0]; - } else { - return this._cameras[0]; - } - } - ,set_camera: function(Value) { - if(this._cameras == null) { - this._cameras = [Value]; - } else { - this._cameras[0] = Value; - } - return Value; - } - ,get_cameras: function() { - if(this._cameras == null) { - return flixel_FlxCamera.defaultCameras; - } else { - return this._cameras; - } - } - ,set_cameras: function(Value) { - return this._cameras = Value; - } - ,__class__: flixel_FlxBasic - ,__properties__: {set_cameras:"set_cameras",get_cameras:"get_cameras",set_camera:"set_camera",get_camera:"get_camera",set_exists:"set_exists",set_alive:"set_alive",set_visible:"set_visible",set_active:"set_active"} -}; -var flixel_util_IFlxPooled = function() { }; -$hxClasses["flixel.util.IFlxPooled"] = flixel_util_IFlxPooled; -flixel_util_IFlxPooled.__name__ = "flixel.util.IFlxPooled"; -flixel_util_IFlxPooled.__isInterface__ = true; -flixel_util_IFlxPooled.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_util_IFlxPooled.prototype = { - put: null - ,_inPool: null - ,__class__: flixel_util_IFlxPooled -}; -var flixel_util_IFlxPool = function() { }; -$hxClasses["flixel.util.IFlxPool"] = flixel_util_IFlxPool; -flixel_util_IFlxPool.__name__ = "flixel.util.IFlxPool"; -flixel_util_IFlxPool.__isInterface__ = true; -flixel_util_IFlxPool.prototype = { - preAllocate: null - ,clear: null - ,__class__: flixel_util_IFlxPool -}; -var flixel_util_FlxPool_$flixel_$math_$FlxRect = function(classObj) { - this._count = 0; - this._pool = []; - this._class = classObj; -}; -$hxClasses["flixel.util.FlxPool_flixel_math_FlxRect"] = flixel_util_FlxPool_$flixel_$math_$FlxRect; -flixel_util_FlxPool_$flixel_$math_$FlxRect.__name__ = "flixel.util.FlxPool_flixel_math_FlxRect"; -flixel_util_FlxPool_$flixel_$math_$FlxRect.__interfaces__ = [flixel_util_IFlxPool]; -flixel_util_FlxPool_$flixel_$math_$FlxRect.prototype = { - _pool: null - ,_class: null - ,_count: null - ,get: function() { - if(this._count == 0) { - return Type.createInstance(this._class,[]); - } - return this._pool[--this._count]; - } - ,put: function(obj) { - if(obj != null) { - var i = this._pool.indexOf(obj); - if(i == -1 || i >= this._count) { - obj.destroy(); - this._pool[this._count++] = obj; - } - } - } - ,putUnsafe: function(obj) { - if(obj != null) { - obj.destroy(); - this._pool[this._count++] = obj; - } - } - ,preAllocate: function(numObjects) { - while(numObjects-- > 0) this._pool[this._count++] = Type.createInstance(this._class,[]); - } - ,clear: function() { - this._count = 0; - var oldPool = this._pool; - this._pool = []; - return oldPool; - } - ,get_length: function() { - return this._count; - } - ,__class__: flixel_util_FlxPool_$flixel_$math_$FlxRect - ,__properties__: {get_length:"get_length"} -}; -var flixel_math_FlxRect = function(X,Y,Width,Height) { - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - this._inPool = false; - this._weak = false; - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - this.x = X1; - this.y = Y1; - this.width = Width1; - this.height = Height1; -}; -$hxClasses["flixel.math.FlxRect"] = flixel_math_FlxRect; -flixel_math_FlxRect.__name__ = "flixel.math.FlxRect"; -flixel_math_FlxRect.__interfaces__ = [flixel_util_IFlxPooled]; -flixel_math_FlxRect.__properties__ = {get_pool:"get_pool"}; -flixel_math_FlxRect.get = function(X,Y,Width,Height) { - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this.x = X1; - _this.y = Y1; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - return rect; -}; -flixel_math_FlxRect.weak = function(X,Y,Width,Height) { - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X2 = X1; - var Y2 = Y1; - var Width2 = Width1; - var Height2 = Height1; - if(Height2 == null) { - Height2 = 0; - } - if(Width2 == null) { - Width2 = 0; - } - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - _this.x = X2; - _this.y = Y2; - _this.width = Width2; - _this.height = Height2; - var rect = _this; - rect._inPool = false; - var rect1 = rect; - rect1._weak = true; - return rect1; -}; -flixel_math_FlxRect.get_pool = function() { - return flixel_math_FlxRect._pool; -}; -flixel_math_FlxRect.prototype = { - x: null - ,y: null - ,width: null - ,height: null - ,isEmpty: null - ,_weak: null - ,_inPool: null - ,put: function() { - if(!this._inPool) { - this._inPool = true; - this._weak = false; - flixel_math_FlxRect._pool.putUnsafe(this); - } - } - ,putWeak: function() { - if(this._weak) { - if(!this._inPool) { - this._inPool = true; - this._weak = false; - flixel_math_FlxRect._pool.putUnsafe(this); - } - } - } - ,setSize: function(Width,Height) { - this.width = Width; - this.height = Height; - return this; - } - ,setPosition: function(x,y) { - this.x = x; - this.y = y; - return this; - } - ,set: function(X,Y,Width,Height) { - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - this.x = X; - this.y = Y; - this.width = Width; - this.height = Height; - return this; - } - ,copyFrom: function(Rect) { - this.x = Rect.x; - this.y = Rect.y; - this.width = Rect.width; - this.height = Rect.height; - if(Rect._weak) { - if(!Rect._inPool) { - Rect._inPool = true; - Rect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(Rect); - } - } - return this; - } - ,copyTo: function(Rect) { - Rect.x = this.x; - Rect.y = this.y; - Rect.width = this.width; - Rect.height = this.height; - if(Rect._weak) { - if(!Rect._inPool) { - Rect._inPool = true; - Rect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(Rect); - } - } - return Rect; - } - ,copyFromFlash: function(FlashRect) { - this.x = FlashRect.x; - this.y = FlashRect.y; - this.width = FlashRect.width; - this.height = FlashRect.height; - return this; - } - ,copyToFlash: function(FlashRect) { - if(FlashRect == null) { - FlashRect = new openfl_geom_Rectangle(); - } - FlashRect.x = this.x; - FlashRect.y = this.y; - FlashRect.width = this.width; - FlashRect.height = this.height; - return FlashRect; - } - ,overlaps: function(Rect) { - var result = Rect.x + Rect.width > this.x && Rect.x < this.x + this.width && Rect.y + Rect.height > this.y && Rect.y < this.y + this.height; - if(Rect._weak) { - if(!Rect._inPool) { - Rect._inPool = true; - Rect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(Rect); - } - } - return result; - } - ,containsPoint: function(Point) { - var result = flixel_math_FlxMath.pointInFlxRect(Point.x,Point.y,this); - if(Point._weak) { - Point.put(); - } - return result; - } - ,union: function(Rect) { - var minX = Math.min(this.x,Rect.x); - var minY = Math.min(this.y,Rect.y); - var maxX = Math.max(this.x + this.width,Rect.x + Rect.width); - var maxY = Math.max(this.y + this.height,Rect.y + Rect.height); - if(Rect._weak) { - if(!Rect._inPool) { - Rect._inPool = true; - Rect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(Rect); - } - } - var X = minX; - var Y = minY; - var Width = maxX - minX; - var Height = maxY - minY; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - this.x = X; - this.y = Y; - this.width = Width; - this.height = Height; - return this; - } - ,floor: function() { - this.x = Math.floor(this.x); - this.y = Math.floor(this.y); - this.width = Math.floor(this.width); - this.height = Math.floor(this.height); - return this; - } - ,ceil: function() { - this.x = Math.ceil(this.x); - this.y = Math.ceil(this.y); - this.width = Math.ceil(this.width); - this.height = Math.ceil(this.height); - return this; - } - ,round: function() { - this.x = Math.round(this.x); - this.y = Math.round(this.y); - this.width = Math.round(this.width); - this.height = Math.round(this.height); - return this; - } - ,fromTwoPoints: function(Point1,Point2) { - var minX = Math.min(Point1.x,Point2.x); - var minY = Math.min(Point1.y,Point2.y); - var maxX = Math.max(Point1.x,Point2.x); - var maxY = Math.max(Point1.y,Point2.y); - if(Point1._weak) { - Point1.put(); - } - if(Point2._weak) { - Point2.put(); - } - var X = minX; - var Y = minY; - var Width = maxX - minX; - var Height = maxY - minY; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - this.x = X; - this.y = Y; - this.width = Width; - this.height = Height; - return this; - } - ,unionWithPoint: function(Point) { - var minX = Math.min(this.x,Point.x); - var minY = Math.min(this.y,Point.y); - var maxX = Math.max(this.x + this.width,Point.x); - var maxY = Math.max(this.y + this.height,Point.y); - if(Point._weak) { - Point.put(); - } - var X = minX; - var Y = minY; - var Width = maxX - minX; - var Height = maxY - minY; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - this.x = X; - this.y = Y; - this.width = Width; - this.height = Height; - return this; - } - ,offset: function(dx,dy) { - this.x += dx; - this.y += dy; - return this; - } - ,destroy: function() { - } - ,equals: function(rect) { - var result = Math.abs(this.x - rect.x) <= 0.0000001 && Math.abs(this.y - rect.y) <= 0.0000001 && Math.abs(this.width - rect.width) <= 0.0000001 && Math.abs(this.height - rect.height) <= 0.0000001; - if(rect._weak) { - if(!rect._inPool) { - rect._inPool = true; - rect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(rect); - } - } - return result; - } - ,intersection: function(rect,result) { - if(result == null) { - var _this = flixel_math_FlxRect._pool.get(); - var X = 0; - var Y = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - var rect1 = _this; - rect1._inPool = false; - result = rect1; - } - var x0 = this.x < rect.x ? rect.x : this.x; - var x1 = this.x + this.width > rect.x + rect.width ? rect.x + rect.width : this.x + this.width; - if(x1 <= x0) { - if(rect._weak) { - if(!rect._inPool) { - rect._inPool = true; - rect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(rect); - } - } - return result; - } - var y0 = this.y < rect.y ? rect.y : this.y; - var y1 = this.y + this.height > rect.y + rect.height ? rect.y + rect.height : this.y + this.height; - if(y1 <= y0) { - if(rect._weak) { - if(!rect._inPool) { - rect._inPool = true; - rect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(rect); - } - } - return result; - } - if(rect._weak) { - if(!rect._inPool) { - rect._inPool = true; - rect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(rect); - } - } - var X1 = x0; - var Y1 = y0; - var Width1 = x1 - x0; - var Height1 = y1 - y0; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - result.x = X1; - result.y = Y1; - result.width = Width1; - result.height = Height1; - return result; - } - ,toString: function() { - var value = this.x; - var _this = flixel_util_LabelValuePair._pool.get(); - _this.label = "x"; - _this.value = value; - var value1 = this.y; - var _this1 = flixel_util_LabelValuePair._pool.get(); - _this1.label = "y"; - _this1.value = value1; - var value2 = this.width; - var _this2 = flixel_util_LabelValuePair._pool.get(); - _this2.label = "w"; - _this2.value = value2; - var value3 = this.height; - var _this3 = flixel_util_LabelValuePair._pool.get(); - _this3.label = "h"; - _this3.value = value3; - return flixel_util_FlxStringUtil.getDebugString([_this,_this1,_this2,_this3]); - } - ,get_left: function() { - return this.x; - } - ,set_left: function(Value) { - this.width -= Value - this.x; - return this.x = Value; - } - ,get_right: function() { - return this.x + this.width; - } - ,set_right: function(Value) { - this.width = Value - this.x; - return Value; - } - ,get_top: function() { - return this.y; - } - ,set_top: function(Value) { - this.height -= Value - this.y; - return this.y = Value; - } - ,get_bottom: function() { - return this.y + this.height; - } - ,set_bottom: function(Value) { - this.height = Value - this.y; - return Value; - } - ,get_isEmpty: function() { - if(this.width != 0) { - return this.height == 0; - } else { - return true; - } - } - ,__class__: flixel_math_FlxRect - ,__properties__: {get_isEmpty:"get_isEmpty",set_bottom:"set_bottom",get_bottom:"get_bottom",set_top:"set_top",get_top:"get_top",set_right:"set_right",get_right:"get_right",set_left:"set_left",get_left:"get_left"} -}; -var flixel_FlxObject = function(X,Y,Width,Height) { - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - _this.x = 0; - _this.y = 0; - _this.width = 0; - _this.height = 0; - _this._inPool = false; - this._rect = _this; - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - this._point = point; - this.path = null; - this.collisonXDrag = true; - this.allowCollisions = 4369; - this.wasTouching = 0; - this.touching = 0; - this.health = 1; - this.maxAngular = 10000; - this.angularDrag = 0; - this.angularAcceleration = 0; - this.angularVelocity = 0; - this.elasticity = 0; - this.mass = 1; - this.immovable = false; - this.moves = true; - this.angle = 0; - this.pixelPerfectPosition = true; - this.y = 0; - this.x = 0; - flixel_FlxBasic.call(this); - this.set_x(X); - this.set_y(Y); - this.set_width(Width); - this.set_height(Height); - this.initVars(); -}; -$hxClasses["flixel.FlxObject"] = flixel_FlxObject; -flixel_FlxObject.__name__ = "flixel.FlxObject"; -flixel_FlxObject.separate = function(Object1,Object2) { - var separatedX = flixel_FlxObject.separateX(Object1,Object2); - var separatedY = flixel_FlxObject.separateY(Object1,Object2); - if(!separatedX) { - return separatedY; - } else { - return true; - } -}; -flixel_FlxObject.updateTouchingFlags = function(Object1,Object2) { - var touchingX = flixel_FlxObject.updateTouchingFlagsX(Object1,Object2); - var touchingY = flixel_FlxObject.updateTouchingFlagsY(Object1,Object2); - if(!touchingX) { - return touchingY; - } else { - return true; - } -}; -flixel_FlxObject.computeOverlapX = function(Object1,Object2,checkMaxOverlap) { - if(checkMaxOverlap == null) { - checkMaxOverlap = true; - } - var overlap = 0; - var obj1delta = Object1.x - Object1.last.x; - var obj2delta = Object2.x - Object2.last.x; - if(obj1delta != obj2delta) { - var obj1deltaAbs = obj1delta > 0 ? obj1delta : -obj1delta; - var obj2deltaAbs = obj2delta > 0 ? obj2delta : -obj2delta; - var _this = flixel_FlxObject._firstSeparateFlxRect; - var X = Object1.x - (obj1delta > 0 ? obj1delta : 0); - var Y = Object1.last.y; - var Width = Object1.get_width() + obj1deltaAbs; - var Height = Object1.get_height(); - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - var obj1rect = _this; - var _this1 = flixel_FlxObject._secondSeparateFlxRect; - var X1 = Object2.x - (obj2delta > 0 ? obj2delta : 0); - var Y1 = Object2.last.y; - var Width1 = Object2.get_width() + obj2deltaAbs; - var Height1 = Object2.get_height(); - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this1.x = X1; - _this1.y = Y1; - _this1.width = Width1; - _this1.height = Height1; - var obj2rect = _this1; - if(obj1rect.x + obj1rect.width > obj2rect.x && obj1rect.x < obj2rect.x + obj2rect.width && obj1rect.y + obj1rect.height > obj2rect.y && obj1rect.y < obj2rect.y + obj2rect.height) { - var maxOverlap = checkMaxOverlap ? obj1deltaAbs + obj2deltaAbs + flixel_FlxObject.SEPARATE_BIAS : 0; - if(obj1delta > obj2delta) { - overlap = Object1.x + Object1.get_width() - Object2.x; - if(checkMaxOverlap && overlap > maxOverlap || (Object1.allowCollisions & 16) == 0 || (Object2.allowCollisions & 1) == 0) { - overlap = 0; - } else { - Object1.touching |= 16; - Object2.touching |= 1; - } - } else if(obj1delta < obj2delta) { - overlap = Object1.x - Object2.get_width() - Object2.x; - if(checkMaxOverlap && -overlap > maxOverlap || (Object1.allowCollisions & 1) == 0 || (Object2.allowCollisions & 16) == 0) { - overlap = 0; - } else { - Object1.touching |= 1; - Object2.touching |= 16; - } - } - } - } - return overlap; -}; -flixel_FlxObject.separateX = function(Object1,Object2) { - var obj1immovable = Object1.immovable; - var obj2immovable = Object2.immovable; - if(obj1immovable && obj2immovable) { - return false; - } - if(Object1.flixelType == 3) { - var tilemap = Object1; - return tilemap.overlapsWithCallback(Object2,flixel_FlxObject.separateX); - } - if(Object2.flixelType == 3) { - var tilemap1 = Object2; - return tilemap1.overlapsWithCallback(Object1,flixel_FlxObject.separateX,true); - } - var overlap = flixel_FlxObject.computeOverlapX(Object1,Object2); - if(overlap != 0) { - var obj1v = Object1.velocity.x; - var obj2v = Object2.velocity.x; - if(!obj1immovable && !obj2immovable) { - overlap *= 0.5; - Object1.set_x(Object1.x - overlap); - var _g = Object2; - _g.set_x(_g.x + overlap); - var obj1velocity = Math.sqrt(obj2v * obj2v * Object2.mass / Object1.mass) * (obj2v > 0 ? 1 : -1); - var obj2velocity = Math.sqrt(obj1v * obj1v * Object1.mass / Object2.mass) * (obj1v > 0 ? 1 : -1); - var average = (obj1velocity + obj2velocity) * 0.5; - obj1velocity -= average; - obj2velocity -= average; - Object1.velocity.set_x(average + obj1velocity * Object1.elasticity); - Object2.velocity.set_x(average + obj2velocity * Object2.elasticity); - } else if(!obj1immovable) { - Object1.set_x(Object1.x - overlap); - Object1.velocity.set_x(obj2v - obj1v * Object1.elasticity); - } else if(!obj2immovable) { - var _g1 = Object2; - _g1.set_x(_g1.x + overlap); - Object2.velocity.set_x(obj1v - obj2v * Object2.elasticity); - } - return true; - } - return false; -}; -flixel_FlxObject.updateTouchingFlagsX = function(Object1,Object2) { - if(Object1.flixelType == 3) { - var tilemap = Object1; - return tilemap.overlapsWithCallback(Object2,flixel_FlxObject.updateTouchingFlagsX); - } - if(Object2.flixelType == 3) { - var tilemap1 = Object2; - return tilemap1.overlapsWithCallback(Object1,flixel_FlxObject.updateTouchingFlagsX,true); - } - return flixel_FlxObject.computeOverlapX(Object1,Object2,false) != 0; -}; -flixel_FlxObject.computeOverlapY = function(Object1,Object2,checkMaxOverlap) { - if(checkMaxOverlap == null) { - checkMaxOverlap = true; - } - var overlap = 0; - var obj1delta = Object1.y - Object1.last.y; - var obj2delta = Object2.y - Object2.last.y; - if(obj1delta != obj2delta) { - var obj1deltaAbs = obj1delta > 0 ? obj1delta : -obj1delta; - var obj2deltaAbs = obj2delta > 0 ? obj2delta : -obj2delta; - var _this = flixel_FlxObject._firstSeparateFlxRect; - var X = Object1.x; - var Y = Object1.y - (obj1delta > 0 ? obj1delta : 0); - var Width = Object1.get_width(); - var Height = Object1.get_height() + obj1deltaAbs; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - var obj1rect = _this; - var _this1 = flixel_FlxObject._secondSeparateFlxRect; - var X1 = Object2.x; - var Y1 = Object2.y - (obj2delta > 0 ? obj2delta : 0); - var Width1 = Object2.get_width(); - var Height1 = Object2.get_height() + obj2deltaAbs; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this1.x = X1; - _this1.y = Y1; - _this1.width = Width1; - _this1.height = Height1; - var obj2rect = _this1; - if(obj1rect.x + obj1rect.width > obj2rect.x && obj1rect.x < obj2rect.x + obj2rect.width && obj1rect.y + obj1rect.height > obj2rect.y && obj1rect.y < obj2rect.y + obj2rect.height) { - var maxOverlap = checkMaxOverlap ? obj1deltaAbs + obj2deltaAbs + flixel_FlxObject.SEPARATE_BIAS : 0; - if(obj1delta > obj2delta) { - overlap = Object1.y + Object1.get_height() - Object2.y; - if(checkMaxOverlap && overlap > maxOverlap || (Object1.allowCollisions & 4096) == 0 || (Object2.allowCollisions & 256) == 0) { - overlap = 0; - } else { - Object1.touching |= 4096; - Object2.touching |= 256; - } - } else if(obj1delta < obj2delta) { - overlap = Object1.y - Object2.get_height() - Object2.y; - if(checkMaxOverlap && -overlap > maxOverlap || (Object1.allowCollisions & 256) == 0 || (Object2.allowCollisions & 4096) == 0) { - overlap = 0; - } else { - Object1.touching |= 256; - Object2.touching |= 4096; - } - } - } - } - return overlap; -}; -flixel_FlxObject.separateY = function(Object1,Object2) { - var obj1immovable = Object1.immovable; - var obj2immovable = Object2.immovable; - if(obj1immovable && obj2immovable) { - return false; - } - if(Object1.flixelType == 3) { - var tilemap = Object1; - return tilemap.overlapsWithCallback(Object2,flixel_FlxObject.separateY); - } - if(Object2.flixelType == 3) { - var tilemap1 = Object2; - return tilemap1.overlapsWithCallback(Object1,flixel_FlxObject.separateY,true); - } - var overlap = flixel_FlxObject.computeOverlapY(Object1,Object2); - if(overlap != 0) { - var obj1delta = Object1.y - Object1.last.y; - var obj2delta = Object2.y - Object2.last.y; - var obj1v = Object1.velocity.y; - var obj2v = Object2.velocity.y; - if(!obj1immovable && !obj2immovable) { - overlap *= 0.5; - Object1.set_y(Object1.y - overlap); - var _g = Object2; - _g.set_y(_g.y + overlap); - var obj1velocity = Math.sqrt(obj2v * obj2v * Object2.mass / Object1.mass) * (obj2v > 0 ? 1 : -1); - var obj2velocity = Math.sqrt(obj1v * obj1v * Object1.mass / Object2.mass) * (obj1v > 0 ? 1 : -1); - var average = (obj1velocity + obj2velocity) * 0.5; - obj1velocity -= average; - obj2velocity -= average; - Object1.velocity.set_y(average + obj1velocity * Object1.elasticity); - Object2.velocity.set_y(average + obj2velocity * Object2.elasticity); - } else if(!obj1immovable) { - Object1.set_y(Object1.y - overlap); - Object1.velocity.set_y(obj2v - obj1v * Object1.elasticity); - if(Object1.collisonXDrag && Object2.active && Object2.moves && obj1delta > obj2delta) { - var _g1 = Object1; - _g1.set_x(_g1.x + (Object2.x - Object2.last.x)); - } - } else if(!obj2immovable) { - var _g2 = Object2; - _g2.set_y(_g2.y + overlap); - Object2.velocity.set_y(obj1v - obj2v * Object2.elasticity); - if(Object2.collisonXDrag && Object1.active && Object1.moves && obj1delta < obj2delta) { - var _g3 = Object2; - _g3.set_x(_g3.x + (Object1.x - Object1.last.x)); - } - } - return true; - } - return false; -}; -flixel_FlxObject.updateTouchingFlagsY = function(Object1,Object2) { - if(Object1.flixelType == 3) { - var tilemap = Object1; - return tilemap.overlapsWithCallback(Object2,flixel_FlxObject.updateTouchingFlagsY); - } - if(Object2.flixelType == 3) { - var tilemap1 = Object2; - return tilemap1.overlapsWithCallback(Object1,flixel_FlxObject.updateTouchingFlagsY,true); - } - return flixel_FlxObject.computeOverlapY(Object1,Object2,false) != 0; -}; -flixel_FlxObject.__super__ = flixel_FlxBasic; -flixel_FlxObject.prototype = $extend(flixel_FlxBasic.prototype,{ - x: null - ,y: null - ,width: null - ,height: null - ,pixelPerfectRender: null - ,pixelPerfectPosition: null - ,angle: null - ,moves: null - ,immovable: null - ,scrollFactor: null - ,velocity: null - ,acceleration: null - ,drag: null - ,maxVelocity: null - ,last: null - ,mass: null - ,elasticity: null - ,angularVelocity: null - ,angularAcceleration: null - ,angularDrag: null - ,maxAngular: null - ,health: null - ,touching: null - ,wasTouching: null - ,allowCollisions: null - ,collisonXDrag: null - ,path: null - ,_point: null - ,_rect: null - ,initVars: function() { - this.flixelType = 1; - var X = this.x; - var Y = this.y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - this.last = point; - var X1 = 1; - var Y1 = 1; - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var point1 = flixel_math_FlxPoint._pool.get().set(X1,Y1); - point1._inPool = false; - this.scrollFactor = point1; - this.pixelPerfectPosition = flixel_FlxObject.defaultPixelPerfectPosition; - var point2 = flixel_math_FlxPoint._pool.get().set(0,0); - point2._inPool = false; - this.velocity = point2; - var point3 = flixel_math_FlxPoint._pool.get().set(0,0); - point3._inPool = false; - this.acceleration = point3; - var point4 = flixel_math_FlxPoint._pool.get().set(0,0); - point4._inPool = false; - this.drag = point4; - var X2 = 10000; - var Y2 = 10000; - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - var point5 = flixel_math_FlxPoint._pool.get().set(X2,Y2); - point5._inPool = false; - this.maxVelocity = point5; - } - ,initMotionVars: function() { - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - this.velocity = point; - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - this.acceleration = point1; - var point2 = flixel_math_FlxPoint._pool.get().set(0,0); - point2._inPool = false; - this.drag = point2; - var X = 10000; - var Y = 10000; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point3 = flixel_math_FlxPoint._pool.get().set(X,Y); - point3._inPool = false; - this.maxVelocity = point3; - } - ,destroy: function() { - flixel_FlxBasic.prototype.destroy.call(this); - this.velocity = flixel_util_FlxDestroyUtil.put(this.velocity); - this.acceleration = flixel_util_FlxDestroyUtil.put(this.acceleration); - this.drag = flixel_util_FlxDestroyUtil.put(this.drag); - this.maxVelocity = flixel_util_FlxDestroyUtil.put(this.maxVelocity); - this.scrollFactor = flixel_util_FlxDestroyUtil.put(this.scrollFactor); - this.last = flixel_util_FlxDestroyUtil.put(this.last); - this._point = flixel_util_FlxDestroyUtil.put(this._point); - this._rect = flixel_util_FlxDestroyUtil.put(this._rect); - } - ,update: function(elapsed) { - this.last.set(this.x,this.y); - if(this.path != null && this.path.active) { - this.path.update(elapsed); - } - if(this.moves) { - this.updateMotion(elapsed); - } - this.wasTouching = this.touching; - this.touching = 0; - } - ,updateMotion: function(elapsed) { - var velocityDelta = 0.5 * (flixel_math_FlxVelocity.computeVelocity(this.angularVelocity,this.angularAcceleration,this.angularDrag,this.maxAngular,elapsed) - this.angularVelocity); - this.angularVelocity += velocityDelta; - var _g = this; - _g.set_angle(_g.angle + this.angularVelocity * elapsed); - this.angularVelocity += velocityDelta; - velocityDelta = 0.5 * (flixel_math_FlxVelocity.computeVelocity(this.velocity.x,this.acceleration.x,this.drag.x,this.maxVelocity.x,elapsed) - this.velocity.x); - var _g1 = this.velocity; - _g1.set_x(_g1.x + velocityDelta); - var delta = this.velocity.x * elapsed; - var _g2 = this.velocity; - _g2.set_x(_g2.x + velocityDelta); - var _g3 = this; - _g3.set_x(_g3.x + delta); - velocityDelta = 0.5 * (flixel_math_FlxVelocity.computeVelocity(this.velocity.y,this.acceleration.y,this.drag.y,this.maxVelocity.y,elapsed) - this.velocity.y); - var _g4 = this.velocity; - _g4.set_y(_g4.y + velocityDelta); - delta = this.velocity.y * elapsed; - var _g5 = this.velocity; - _g5.set_y(_g5.y + velocityDelta); - var _g6 = this; - _g6.set_y(_g6.y + delta); - } - ,draw: function() { - } - ,overlaps: function(ObjectOrGroup,InScreenSpace,Camera) { - if(InScreenSpace == null) { - InScreenSpace = false; - } - var group = flixel_group_FlxTypedGroup.resolveGroup(ObjectOrGroup); - if(group != null) { - return flixel_group_FlxTypedGroup.overlaps($bind(this,this.overlapsCallback),group,0,0,InScreenSpace,Camera); - } - if(ObjectOrGroup.flixelType == 3) { - var tilemap = ObjectOrGroup; - return tilemap.overlaps(this,InScreenSpace,Camera); - } - var object = ObjectOrGroup; - if(!InScreenSpace) { - if(object.x + object.get_width() > this.x && object.x < this.x + this.get_width() && object.y + object.get_height() > this.y) { - return object.y < this.y + this.get_height(); - } else { - return false; - } - } - if(Camera == null) { - Camera = flixel_FlxG.camera; - } - var objectScreenPos = object.getScreenPosition(null,Camera); - this.getScreenPosition(this._point,Camera); - if(objectScreenPos.x + object.get_width() > this._point.x && objectScreenPos.x < this._point.x + this.get_width() && objectScreenPos.y + object.get_height() > this._point.y) { - return objectScreenPos.y < this._point.y + this.get_height(); - } else { - return false; - } - } - ,overlapsCallback: function(ObjectOrGroup,X,Y,InScreenSpace,Camera) { - return this.overlaps(ObjectOrGroup,InScreenSpace,Camera); - } - ,overlapsAt: function(X,Y,ObjectOrGroup,InScreenSpace,Camera) { - if(InScreenSpace == null) { - InScreenSpace = false; - } - var group = flixel_group_FlxTypedGroup.resolveGroup(ObjectOrGroup); - if(group != null) { - return flixel_group_FlxTypedGroup.overlaps($bind(this,this.overlapsAtCallback),group,X,Y,InScreenSpace,Camera); - } - if(ObjectOrGroup.flixelType == 3) { - var tilemap = ObjectOrGroup; - return tilemap.overlapsAt(tilemap.x - (X - this.x),tilemap.y - (Y - this.y),this,InScreenSpace,Camera); - } - var object = ObjectOrGroup; - if(!InScreenSpace) { - if(object.x + object.get_width() > X && object.x < X + this.get_width() && object.y + object.get_height() > Y) { - return object.y < Y + this.get_height(); - } else { - return false; - } - } - if(Camera == null) { - Camera = flixel_FlxG.camera; - } - var objectScreenPos = object.getScreenPosition(null,Camera); - this.getScreenPosition(this._point,Camera); - if(objectScreenPos.x + object.get_width() > this._point.x && objectScreenPos.x < this._point.x + this.get_width() && objectScreenPos.y + object.get_height() > this._point.y) { - return objectScreenPos.y < this._point.y + this.get_height(); - } else { - return false; - } - } - ,overlapsAtCallback: function(ObjectOrGroup,X,Y,InScreenSpace,Camera) { - return this.overlapsAt(X,Y,ObjectOrGroup,InScreenSpace,Camera); - } - ,overlapsPoint: function(point,InScreenSpace,Camera) { - if(InScreenSpace == null) { - InScreenSpace = false; - } - if(!InScreenSpace) { - if(point.x >= this.x && point.x < this.x + this.get_width() && point.y >= this.y) { - return point.y < this.y + this.get_height(); - } else { - return false; - } - } - if(Camera == null) { - Camera = flixel_FlxG.camera; - } - var xPos = point.x - Camera.scroll.x; - var yPos = point.y - Camera.scroll.y; - this.getScreenPosition(this._point,Camera); - if(point._weak) { - point.put(); - } - if(xPos >= this._point.x && xPos < this._point.x + this.get_width() && yPos >= this._point.y) { - return yPos < this._point.y + this.get_height(); - } else { - return false; - } - } - ,inWorldBounds: function() { - var tmp; - if(this.x + this.get_width() > flixel_FlxG.worldBounds.x) { - var _this = flixel_FlxG.worldBounds; - tmp = this.x < _this.x + _this.width; - } else { - tmp = false; - } - if(tmp && this.y + this.get_height() > flixel_FlxG.worldBounds.y) { - var _this1 = flixel_FlxG.worldBounds; - return this.y < _this1.y + _this1.height; - } else { - return false; - } - } - ,getScreenPosition: function(point,Camera) { - if(point == null) { - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - point = point1; - } - if(Camera == null) { - Camera = flixel_FlxG.camera; - } - point.set(this.x,this.y); - if(this.pixelPerfectPosition) { - point.set_x(Math.floor(point.x)); - point.set_y(Math.floor(point.y)); - } - var X = Camera.scroll.x * this.scrollFactor.x; - var Y = Camera.scroll.y * this.scrollFactor.y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _g = point; - _g.set_x(_g.x - X); - var _g1 = point; - _g1.set_y(_g1.y - Y); - return point; - } - ,getPosition: function(point) { - if(point == null) { - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - point = point1; - } - return point.set(this.x,this.y); - } - ,getMidpoint: function(point) { - if(point == null) { - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - point = point1; - } - return point.set(this.x + this.get_width() * 0.5,this.y + this.get_height() * 0.5); - } - ,getHitbox: function(rect) { - if(rect == null) { - var _this = flixel_math_FlxRect._pool.get(); - var X = 0; - var Y = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - var rect1 = _this; - rect1._inPool = false; - rect = rect1; - } - var X1 = this.x; - var Y1 = this.y; - var Width1 = this.get_width(); - var Height1 = this.get_height(); - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - rect.x = X1; - rect.y = Y1; - rect.width = Width1; - rect.height = Height1; - return rect; - } - ,reset: function(X,Y) { - this.touching = 0; - this.wasTouching = 0; - this.setPosition(X,Y); - this.last.set(this.x,this.y); - this.velocity.set(); - this.revive(); - } - ,isOnScreen: function(Camera) { - if(Camera == null) { - Camera = flixel_FlxG.camera; - } - this.getScreenPosition(this._point,Camera); - var point = this._point; - var width = this.get_width(); - var height = this.get_height(); - if(height == null) { - height = 0; - } - if(width == null) { - width = 0; - } - if(point.x + width > Camera.viewOffsetX && point.x < Camera.viewOffsetWidth && point.y + height > Camera.viewOffsetY) { - return point.y < Camera.viewOffsetHeight; - } else { - return false; - } - } - ,isPixelPerfectRender: function(Camera) { - if(Camera == null) { - Camera = flixel_FlxG.camera; - } - if(this.pixelPerfectRender == null) { - return Camera.pixelPerfectRender; - } else { - return this.pixelPerfectRender; - } - } - ,isTouching: function(Direction) { - return (this.touching & Direction) > 0; - } - ,justTouched: function(Direction) { - if((this.touching & Direction) > 0) { - return (this.wasTouching & Direction) <= 0; - } else { - return false; - } - } - ,hurt: function(Damage) { - this.health -= Damage; - if(this.health <= 0) { - this.kill(); - } - } - ,screenCenter: function(axes) { - if(axes == null) { - axes = flixel_util_FlxAxes.XY; - } - if(axes != flixel_util_FlxAxes.Y) { - this.set_x(flixel_FlxG.width / 2 - this.get_width() / 2); - } - if(axes != flixel_util_FlxAxes.X) { - this.set_y(flixel_FlxG.height / 2 - this.get_height() / 2); - } - return this; - } - ,setPosition: function(X,Y) { - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - this.set_x(X); - this.set_y(Y); - } - ,setSize: function(Width,Height) { - this.set_width(Width); - this.set_height(Height); - } - ,getBoundingBox: function(camera) { - this.getScreenPosition(this._point,camera); - var _this = this._rect; - var X = this._point.x; - var Y = this._point.y; - var Width = this.get_width(); - var Height = this.get_height(); - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - this._rect = camera.transformRect(this._rect); - if(this.isPixelPerfectRender(camera)) { - var _this1 = this._rect; - _this1.x = Math.floor(_this1.x); - _this1.y = Math.floor(_this1.y); - _this1.width = Math.floor(_this1.width); - _this1.height = Math.floor(_this1.height); - } - return this._rect; - } - ,toString: function() { - var value = this.x; - var _this = flixel_util_LabelValuePair._pool.get(); - _this.label = "x"; - _this.value = value; - var value1 = this.y; - var _this1 = flixel_util_LabelValuePair._pool.get(); - _this1.label = "y"; - _this1.value = value1; - var value2 = this.get_width(); - var _this2 = flixel_util_LabelValuePair._pool.get(); - _this2.label = "w"; - _this2.value = value2; - var value3 = this.get_height(); - var _this3 = flixel_util_LabelValuePair._pool.get(); - _this3.label = "h"; - _this3.value = value3; - var value4 = this.visible; - var _this4 = flixel_util_LabelValuePair._pool.get(); - _this4.label = "visible"; - _this4.value = value4; - var value5 = this.velocity; - var _this5 = flixel_util_LabelValuePair._pool.get(); - _this5.label = "velocity"; - _this5.value = value5; - return flixel_util_FlxStringUtil.getDebugString([_this,_this1,_this2,_this3,_this4,_this5]); - } - ,set_x: function(NewX) { - return this.x = NewX; - } - ,set_y: function(NewY) { - return this.y = NewY; - } - ,set_width: function(Width) { - return this.width = Width; - } - ,set_height: function(Height) { - return this.height = Height; - } - ,get_width: function() { - return this.width; - } - ,get_height: function() { - return this.height; - } - ,get_solid: function() { - return (this.allowCollisions & 4369) > 0; - } - ,set_solid: function(Solid) { - this.set_allowCollisions(Solid ? 4369 : 0); - return Solid; - } - ,set_angle: function(Value) { - return this.angle = Value; - } - ,set_moves: function(Value) { - return this.moves = Value; - } - ,set_immovable: function(Value) { - return this.immovable = Value; - } - ,set_pixelPerfectRender: function(Value) { - return this.pixelPerfectRender = Value; - } - ,set_allowCollisions: function(Value) { - return this.allowCollisions = Value; - } - ,set_path: function(path) { - if(this.path == path) { - return path; - } - if(this.path != null) { - this.path.object = null; - } - if(path != null) { - path.object = this; - } - return this.path = path; - } - ,__class__: flixel_FlxObject - ,__properties__: $extend(flixel_FlxBasic.prototype.__properties__,{set_path:"set_path",set_allowCollisions:"set_allowCollisions",set_solid:"set_solid",get_solid:"get_solid",set_immovable:"set_immovable",set_moves:"set_moves",set_angle:"set_angle",set_pixelPerfectRender:"set_pixelPerfectRender",set_height:"set_height",get_height:"get_height",set_width:"set_width",get_width:"get_width",set_y:"set_y",set_x:"set_x"}) -}); -var flixel_FlxSprite = function(X,Y,SimpleGraphic) { - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - this._facingFlip = new haxe_ds_IntMap(); - this._angleChanged = true; - this._cosAngle = 1; - this._sinAngle = 0; - this._facingVerticalMult = 1; - this._facingHorizontalMult = 1; - this.useColorTransform = false; - this.color = 16777215; - this.flipY = false; - this.flipX = false; - this.facing = 16; - this.alpha = 1.0; - this.bakedRotationAngle = 0; - this.numFrames = 0; - this.frameHeight = 0; - this.frameWidth = 0; - this.dirty = true; - this.antialiasing = false; - this.useFramePixels = true; - flixel_FlxObject.call(this,X,Y); - this.set_useFramePixels(flixel_FlxG.renderBlit); - if(SimpleGraphic != null) { - this.loadGraphic(SimpleGraphic); - } -}; -$hxClasses["flixel.FlxSprite"] = flixel_FlxSprite; -flixel_FlxSprite.__name__ = "flixel.FlxSprite"; -flixel_FlxSprite.__super__ = flixel_FlxObject; -flixel_FlxSprite.prototype = $extend(flixel_FlxObject.prototype,{ - animation: null - ,framePixels: null - ,useFramePixels: null - ,antialiasing: null - ,dirty: null - ,frame: null - ,frameWidth: null - ,frameHeight: null - ,numFrames: null - ,frames: null - ,graphic: null - ,bakedRotationAngle: null - ,alpha: null - ,facing: null - ,flipX: null - ,flipY: null - ,origin: null - ,offset: null - ,scale: null - ,blend: null - ,color: null - ,colorTransform: null - ,useColorTransform: null - ,clipRect: null - ,shader: null - ,_frame: null - ,_frameGraphic: null - ,_facingHorizontalMult: null - ,_facingVerticalMult: null - ,_flashPoint: null - ,_flashRect: null - ,_flashRect2: null - ,_flashPointZero: null - ,_matrix: null - ,_halfSize: null - ,_sinAngle: null - ,_cosAngle: null - ,_angleChanged: null - ,_facingFlip: null - ,initVars: function() { - flixel_FlxObject.prototype.initVars.call(this); - this.animation = new flixel_animation_FlxAnimationController(this); - this._flashPoint = new openfl_geom_Point(); - this._flashRect = new openfl_geom_Rectangle(); - this._flashRect2 = new openfl_geom_Rectangle(); - this._flashPointZero = new openfl_geom_Point(); - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - this.offset = point; - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - this.origin = point1; - var X = 1; - var Y = 1; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point2 = flixel_math_FlxPoint._pool.get().set(X,Y); - point2._inPool = false; - this.scale = point2; - var point3 = flixel_math_FlxPoint._pool.get().set(0,0); - point3._inPool = false; - this._halfSize = point3; - this._matrix = new flixel_math_FlxMatrix(); - this.colorTransform = new openfl_geom_ColorTransform(); - } - ,destroy: function() { - flixel_FlxObject.prototype.destroy.call(this); - this.animation = flixel_util_FlxDestroyUtil.destroy(this.animation); - this.offset = flixel_util_FlxDestroyUtil.put(this.offset); - this.origin = flixel_util_FlxDestroyUtil.put(this.origin); - this.scale = flixel_util_FlxDestroyUtil.put(this.scale); - this._halfSize = flixel_util_FlxDestroyUtil.put(this._halfSize); - this.framePixels = flixel_util_FlxDestroyUtil.dispose(this.framePixels); - this._flashPoint = null; - this._flashRect = null; - this._flashRect2 = null; - this._flashPointZero = null; - this._matrix = null; - this.colorTransform = null; - this.set_blend(null); - this.set_frames(null); - this.set_graphic(null); - this._frame = flixel_util_FlxDestroyUtil.destroy(this._frame); - this._frameGraphic = flixel_util_FlxDestroyUtil.destroy(this._frameGraphic); - this.shader = null; - } - ,clone: function() { - return new flixel_FlxSprite().loadGraphicFromSprite(this); - } - ,loadGraphicFromSprite: function(Sprite) { - this.set_frames(Sprite.frames); - this.bakedRotationAngle = Sprite.bakedRotationAngle; - if(this.bakedRotationAngle > 0) { - this.set_width(Sprite.get_width()); - this.set_height(Sprite.get_height()); - this.centerOffsets(); - } - this.set_antialiasing(Sprite.antialiasing); - this.animation.copyFrom(Sprite.animation); - this.graphicLoaded(); - this.set_clipRect(Sprite.clipRect); - return this; - } - ,loadGraphic: function(Graphic,Animated,Width,Height,Unique,Key) { - if(Unique == null) { - Unique = false; - } - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Animated == null) { - Animated = false; - } - var graph = flixel_FlxG.bitmap.add(Graphic,Unique,Key); - if(graph == null) { - return this; - } - if(Width == 0) { - Width = Animated ? graph.height : graph.width; - Width = Width > graph.width ? graph.width : Width; - } - if(Height == 0) { - Height = Animated ? Width : graph.height; - Height = Height > graph.height ? graph.height : Height; - } - if(Animated) { - var X = Width; - var Y = Height; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - this.set_frames(flixel_graphics_frames_FlxTileFrames.fromGraphic(graph,point)); - } else { - this.set_frames(graph.get_imageFrame()); - } - return this; - } - ,loadRotatedGraphic: function(Graphic,Rotations,Frame,AntiAliasing,AutoBuffer,Key) { - if(AutoBuffer == null) { - AutoBuffer = false; - } - if(AntiAliasing == null) { - AntiAliasing = false; - } - if(Frame == null) { - Frame = -1; - } - if(Rotations == null) { - Rotations = 16; - } - var brushGraphic = flixel_FlxG.bitmap.add(Graphic,false,Key); - if(brushGraphic == null) { - return this; - } - var brush = brushGraphic.bitmap; - var key = brushGraphic.key; - if(Frame >= 0) { - var brushSize = brush.height; - var framesNum = brush.width / brushSize | 0; - if(framesNum > Frame) { - Frame = Frame; - } else { - Frame %= framesNum; - } - key += ":" + Frame; - var full = brush; - brush = new openfl_display_BitmapData(brushSize,brushSize,true,0); - this._flashRect.setTo(Frame * brushSize,0,brushSize,brushSize); - brush.copyPixels(full,this._flashRect,this._flashPointZero); - } - key += ":" + Rotations + ":" + (AutoBuffer == null ? "null" : "" + AutoBuffer); - var _this = flixel_FlxG.bitmap._cache; - var tempGraph = __map_reserved[key] != null ? _this.getReserved(key) : _this.h[key]; - if(tempGraph == null) { - var bitmap = flixel_util_FlxBitmapDataUtil.generateRotations(brush,Rotations,AntiAliasing,AutoBuffer); - tempGraph = flixel_graphics_FlxGraphic.fromBitmapData(bitmap,false,key); - } - var max = brush.height > brush.width ? brush.height : brush.width; - max = AutoBuffer ? max * 1.5 | 0 : max; - var X = max; - var Y = max; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - this.set_frames(flixel_graphics_frames_FlxTileFrames.fromGraphic(tempGraph,point)); - if(AutoBuffer) { - this.set_width(brush.width); - this.set_height(brush.height); - this.centerOffsets(); - } - this.bakedRotationAngle = 360 / Rotations; - this.animation.createPrerotated(); - return this; - } - ,loadRotatedFrame: function(Frame,Rotations,AntiAliasing,AutoBuffer) { - if(AutoBuffer == null) { - AutoBuffer = false; - } - if(AntiAliasing == null) { - AntiAliasing = false; - } - if(Rotations == null) { - Rotations = 16; - } - var key = Frame.parent.key; - if(Frame.name != null) { - key += ":" + Frame.name; - } else { - var _this = Frame.frame; - var value = _this.x; - var _this1 = flixel_util_LabelValuePair._pool.get(); - _this1.label = "x"; - _this1.value = value; - var value1 = _this.y; - var _this2 = flixel_util_LabelValuePair._pool.get(); - _this2.label = "y"; - _this2.value = value1; - var value2 = _this.width; - var _this3 = flixel_util_LabelValuePair._pool.get(); - _this3.label = "w"; - _this3.value = value2; - var value3 = _this.height; - var _this4 = flixel_util_LabelValuePair._pool.get(); - _this4.label = "h"; - _this4.value = value3; - key += ":" + flixel_util_FlxStringUtil.getDebugString([_this1,_this2,_this3,_this4]); - } - var _this5 = flixel_FlxG.bitmap._cache; - var graphic = __map_reserved[key] != null ? _this5.getReserved(key) : _this5.h[key]; - if(graphic == null) { - graphic = flixel_graphics_FlxGraphic.fromBitmapData(Frame.paint(),false,key); - } - return this.loadRotatedGraphic(graphic,Rotations,-1,AntiAliasing,AutoBuffer); - } - ,makeGraphic: function(Width,Height,Color,Unique,Key) { - if(Unique == null) { - Unique = false; - } - if(Color == null) { - Color = -1; - } - var graph = flixel_FlxG.bitmap.create(Width,Height,Color,Unique,Key); - this.set_frames(graph.get_imageFrame()); - return this; - } - ,graphicLoaded: function() { - } - ,resetSize: function() { - this._flashRect.x = 0; - this._flashRect.y = 0; - this._flashRect.width = this.frameWidth; - this._flashRect.height = this.frameHeight; - } - ,resetFrameSize: function() { - if(this.frame != null) { - this.frameWidth = this.frame.sourceSize.x | 0; - this.frameHeight = this.frame.sourceSize.y | 0; - } - this._halfSize.set(0.5 * this.frameWidth,0.5 * this.frameHeight); - this._flashRect.x = 0; - this._flashRect.y = 0; - this._flashRect.width = this.frameWidth; - this._flashRect.height = this.frameHeight; - } - ,resetSizeFromFrame: function() { - this.set_width(this.frameWidth); - this.set_height(this.frameHeight); - } - ,resetFrame: function() { - this.set_frame(this.frame); - } - ,setGraphicSize: function(Width,Height) { - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Width <= 0 && Height <= 0) { - return; - } - var newScaleX = Width / this.frameWidth; - var newScaleY = Height / this.frameHeight; - this.scale.set(newScaleX,newScaleY); - if(Width <= 0) { - this.scale.set_x(newScaleY); - } else if(Height <= 0) { - this.scale.set_y(newScaleX); - } - } - ,updateHitbox: function() { - this.set_width(Math.abs(this.scale.x) * this.frameWidth); - this.set_height(Math.abs(this.scale.y) * this.frameHeight); - this.offset.set(-0.5 * (this.get_width() - this.frameWidth),-0.5 * (this.get_height() - this.frameHeight)); - this.origin.set(this.frameWidth * 0.5,this.frameHeight * 0.5); - } - ,resetHelpers: function() { - if(this.frame != null) { - this.frameWidth = this.frame.sourceSize.x | 0; - this.frameHeight = this.frame.sourceSize.y | 0; - } - this._halfSize.set(0.5 * this.frameWidth,0.5 * this.frameHeight); - this._flashRect.x = 0; - this._flashRect.y = 0; - this._flashRect.width = this.frameWidth; - this._flashRect.height = this.frameHeight; - this.set_width(this.frameWidth); - this.set_height(this.frameHeight); - this._flashRect2.x = 0; - this._flashRect2.y = 0; - if(this.graphic != null) { - this._flashRect2.width = this.graphic.width; - this._flashRect2.height = this.graphic.height; - } - this.origin.set(this.frameWidth * 0.5,this.frameHeight * 0.5); - if(flixel_FlxG.renderBlit) { - this.dirty = true; - this.updateFramePixels(); - } - } - ,update: function(elapsed) { - flixel_FlxObject.prototype.update.call(this,elapsed); - this.updateAnimation(elapsed); - } - ,updateAnimation: function(elapsed) { - this.animation.update(elapsed); - } - ,checkEmptyFrame: function() { - if(this._frame == null) { - this.loadGraphic("flixel/images/logo/default.png"); - } - } - ,draw: function() { - this.checkEmptyFrame(); - if(this.alpha == 0 || this._frame.type == 2) { - return; - } - if(this.dirty) { - this.calcFrame(this.useFramePixels); - } - var _g = 0; - var _g1 = this.get_cameras(); - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - if(!camera.visible || !camera.exists || !this.isOnScreen(camera)) { - continue; - } - this.getScreenPosition(this._point,camera).subtractPoint(this.offset); - if(this.isSimpleRender(camera)) { - this.drawSimple(camera); - } else { - this.drawComplex(camera); - } - } - } - ,drawSimple: function(camera) { - if(this.isPixelPerfectRender(camera)) { - var _this = this._point; - _this.set_x(Math.floor(_this.x)); - _this.set_y(Math.floor(_this.y)); - } - var _this1 = this._point; - var FlashPoint = this._flashPoint; - if(FlashPoint == null) { - FlashPoint = new openfl_geom_Point(); - } - FlashPoint.x = _this1.x; - FlashPoint.y = _this1.y; - camera.copyPixels(this._frame,this.framePixels,this._flashRect,this._flashPoint,this.colorTransform,this.blend,this.antialiasing); - } - ,drawComplex: function(camera) { - var doFlipX = this.flipX != this._frame.flipX; - var doFlipY = this.flipY != this._frame.flipY; - this._frame.prepareMatrix(this._matrix,0,this.animation._curAnim != null ? doFlipX != this.animation._curAnim.flipX : doFlipX,this.animation._curAnim != null ? doFlipY != this.animation._curAnim.flipY : doFlipY); - this._matrix.translate(-this.origin.x,-this.origin.y); - this._matrix.scale(this.scale.x,this.scale.y); - if(this.bakedRotationAngle <= 0) { - if(this._angleChanged) { - var radians = this.angle * (Math.PI / 180); - this._sinAngle = Math.sin(radians); - this._cosAngle = Math.cos(radians); - this._angleChanged = false; - } - if(this.angle != 0) { - var _this = this._matrix; - var cos = this._cosAngle; - var sin = this._sinAngle; - var a1 = _this.a * cos - _this.b * sin; - _this.b = _this.a * sin + _this.b * cos; - _this.a = a1; - var c1 = _this.c * cos - _this.d * sin; - _this.d = _this.c * sin + _this.d * cos; - _this.c = c1; - var tx1 = _this.tx * cos - _this.ty * sin; - _this.ty = _this.tx * sin + _this.ty * cos; - _this.tx = tx1; - } - } - var _this1 = this._point; - var X = this.origin.x; - var Y = this.origin.y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _g = _this1; - _g.set_x(_g.x + X); - var _g1 = _this1; - _g1.set_y(_g1.y + Y); - this._matrix.translate(this._point.x,this._point.y); - if(this.isPixelPerfectRender(camera)) { - this._matrix.tx = Math.floor(this._matrix.tx); - this._matrix.ty = Math.floor(this._matrix.ty); - } - camera.drawPixels(this._frame,this.framePixels,this._matrix,this.colorTransform,this.blend,this.antialiasing,this.shader); - } - ,stamp: function(Brush,X,Y) { - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - Brush.drawFrame(); - if(this.graphic == null || Brush.graphic == null) { - throw new js__$Boot_HaxeError("Cannot stamp to or from a FlxSprite with no graphics."); - } - var bitmapData = Brush.framePixels; - if(this.isSimpleRenderBlit()) { - this._flashPoint.x = X + this.frame.frame.x; - this._flashPoint.y = Y + this.frame.frame.y; - this._flashRect2.width = bitmapData.width; - this._flashRect2.height = bitmapData.height; - this.graphic.bitmap.copyPixels(bitmapData,this._flashRect2,this._flashPoint,null,null,true); - this._flashRect2.width = this.graphic.bitmap.width; - this._flashRect2.height = this.graphic.bitmap.height; - } else { - this._matrix.identity(); - this._matrix.translate(-Brush.origin.x,-Brush.origin.y); - this._matrix.scale(Brush.scale.x,Brush.scale.y); - if(Brush.angle != 0) { - this._matrix.rotate(Brush.angle * (Math.PI / 180)); - } - this._matrix.translate(X + this.frame.frame.x + Brush.origin.x,Y + this.frame.frame.y + Brush.origin.y); - var brushBlend = Brush.blend; - this.graphic.bitmap.draw(bitmapData,this._matrix,null,brushBlend,null,Brush.antialiasing); - } - if(flixel_FlxG.renderBlit) { - this.dirty = true; - this.calcFrame(); - } - } - ,drawFrame: function(Force) { - if(Force == null) { - Force = false; - } - if(flixel_FlxG.renderBlit) { - if(Force || this.dirty) { - this.dirty = true; - this.calcFrame(); - } - } else { - this.dirty = true; - this.calcFrame(true); - } - } - ,centerOffsets: function(AdjustPosition) { - if(AdjustPosition == null) { - AdjustPosition = false; - } - this.offset.set_x((this.frameWidth - this.get_width()) * 0.5); - this.offset.set_y((this.frameHeight - this.get_height()) * 0.5); - if(AdjustPosition) { - var _g = this; - _g.set_x(_g.x + this.offset.x); - var _g1 = this; - _g1.set_y(_g1.y + this.offset.y); - } - } - ,centerOrigin: function() { - this.origin.set(this.frameWidth * 0.5,this.frameHeight * 0.5); - } - ,replaceColor: function(Color,NewColor,FetchPositions) { - if(FetchPositions == null) { - FetchPositions = false; - } - var positions = flixel_util_FlxBitmapDataUtil.replaceColor(this.graphic.bitmap,Color,NewColor,FetchPositions); - if(positions != null) { - this.dirty = true; - } - return positions; - } - ,setColorTransform: function(redMultiplier,greenMultiplier,blueMultiplier,alphaMultiplier,redOffset,greenOffset,blueOffset,alphaOffset) { - if(alphaOffset == null) { - alphaOffset = 0; - } - if(blueOffset == null) { - blueOffset = 0; - } - if(greenOffset == null) { - greenOffset = 0; - } - if(redOffset == null) { - redOffset = 0; - } - if(alphaMultiplier == null) { - alphaMultiplier = 1.0; - } - if(blueMultiplier == null) { - blueMultiplier = 1.0; - } - if(greenMultiplier == null) { - greenMultiplier = 1.0; - } - if(redMultiplier == null) { - redMultiplier = 1.0; - } - var color = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var Alpha = 1; - if(Alpha == null) { - Alpha = 1; - } - var Value = Math.round(redMultiplier * 255); - color &= -16711681; - color |= (Value > 255 ? 255 : Value < 0 ? 0 : Value) << 16; - var Value1 = Math.round(greenMultiplier * 255); - color &= -65281; - color |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 8; - var Value2 = Math.round(blueMultiplier * 255); - color &= -256; - color |= Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2; - var Value3 = Math.round(Alpha * 255); - color &= 16777215; - color |= (Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3) << 24; - this.set_color(color & 16777215); - this.set_alpha(alphaMultiplier); - flixel_util_FlxColorTransformUtil.setMultipliers(this.colorTransform,redMultiplier,greenMultiplier,blueMultiplier,alphaMultiplier); - flixel_util_FlxColorTransformUtil.setOffsets(this.colorTransform,redOffset,greenOffset,blueOffset,alphaOffset); - this.useColorTransform = this.alpha != 1 || this.color != 16777215 || flixel_util_FlxColorTransformUtil.hasRGBOffsets(this.colorTransform); - this.dirty = true; - } - ,updateColorTransform: function() { - if(this.colorTransform == null) { - this.colorTransform = new openfl_geom_ColorTransform(); - } - this.useColorTransform = this.alpha != 1 || this.color != 16777215; - if(this.useColorTransform) { - flixel_util_FlxColorTransformUtil.setMultipliers(this.colorTransform,(this.color >> 16 & 255) / 255,(this.color >> 8 & 255) / 255,(this.color & 255) / 255,this.alpha); - } else { - flixel_util_FlxColorTransformUtil.setMultipliers(this.colorTransform,1,1,1,1); - } - this.dirty = true; - } - ,pixelsOverlapPoint: function(point,Mask,Camera) { - if(Mask == null) { - Mask = 255; - } - if(Camera == null) { - Camera = flixel_FlxG.camera; - } - this.getScreenPosition(this._point,Camera); - this._point.subtractPoint(this.offset); - this._flashPoint.x = point.x - Camera.scroll.x - this._point.x; - this._flashPoint.y = point.y - Camera.scroll.y - this._point.y; - if(point._weak) { - point.put(); - } - if(this._flashPoint.x < 0 || this._flashPoint.x > this.frameWidth || this._flashPoint.y < 0 || this._flashPoint.y > this.frameHeight) { - return false; - } else { - var frameData = this.updateFramePixels(); - var pixelColor = frameData.getPixel32(this._flashPoint.x | 0,this._flashPoint.y | 0); - return (pixelColor >> 24 & 255) * this.alpha >= Mask; - } - } - ,calcFrame: function(RunOnCpp) { - if(RunOnCpp == null) { - RunOnCpp = false; - } - this.checkEmptyFrame(); - if(flixel_FlxG.renderTile && !RunOnCpp) { - return; - } - this.updateFramePixels(); - } - ,updateFramePixels: function() { - if(this._frame == null || !this.dirty) { - return this.framePixels; - } - if(flixel_FlxG.renderTile && this._frameGraphic != null) { - this.dirty = false; - return this.framePixels; - } - var doFlipX = this.flipX != this._frame.flipX; - var doFlipX1 = this.animation._curAnim != null ? doFlipX != this.animation._curAnim.flipX : doFlipX; - var doFlipY = this.flipY != this._frame.flipY; - var doFlipY1 = this.animation._curAnim != null ? doFlipY != this.animation._curAnim.flipY : doFlipY; - if(!doFlipX1 && !doFlipY1 && this._frame.type == 0) { - this.framePixels = this._frame.paint(this.framePixels,this._flashPointZero,false,true); - } else { - this.framePixels = this._frame.paintRotatedAndFlipped(this.framePixels,this._flashPointZero,0,doFlipX1,doFlipY1,false,true); - } - if(this.useColorTransform) { - this.framePixels.colorTransform(this._flashRect,this.colorTransform); - } - if(flixel_FlxG.renderTile && this.useFramePixels) { - this._frameGraphic = flixel_util_FlxDestroyUtil.destroy(this._frameGraphic); - this._frameGraphic = flixel_graphics_FlxGraphic.fromBitmapData(this.framePixels,false,null,false); - this._frame = this._frameGraphic.get_imageFrame().get_frame().copyTo(this._frame); - } - this.dirty = false; - return this.framePixels; - } - ,getGraphicMidpoint: function(point) { - if(point == null) { - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - point = point1; - } - return point.set(this.x + this.frameWidth * 0.5,this.y + this.frameHeight * 0.5); - } - ,isOnScreen: function(Camera) { - if(Camera == null) { - Camera = flixel_FlxG.camera; - } - var minX = this.x - this.offset.x - Camera.scroll.x * this.scrollFactor.x; - var minY = this.y - this.offset.y - Camera.scroll.y * this.scrollFactor.y; - if((this.angle == 0 || this.bakedRotationAngle > 0) && this.scale.x == 1 && this.scale.y == 1) { - this._point.set(minX,minY); - var point = this._point; - var width = this.frameWidth; - var height = this.frameHeight; - if(height == null) { - height = 0; - } - if(width == null) { - width = 0; - } - if(point.x + width > Camera.viewOffsetX && point.x < Camera.viewOffsetWidth && point.y + height > Camera.viewOffsetY) { - return point.y < Camera.viewOffsetHeight; - } else { - return false; - } - } - var radiusX = this._halfSize.x; - var radiusY = this._halfSize.y; - var ox = this.origin.x; - if(ox != radiusX) { - var x1 = Math.abs(ox); - var x2 = Math.abs(this.frameWidth - ox); - radiusX = Math.max(x2,x1); - } - var oy = this.origin.y; - if(oy != radiusY) { - var y1 = Math.abs(oy); - var y2 = Math.abs(this.frameHeight - oy); - radiusY = Math.max(y2,y1); - } - radiusX *= Math.abs(this.scale.x); - radiusY *= Math.abs(this.scale.y); - var radius = Math.max(radiusX,radiusY); - radius *= 1.41421356237; - minX += ox - radius; - minY += oy - radius; - var doubleRadius = 2 * radius; - this._point.set(minX,minY); - var point1 = this._point; - var width1 = doubleRadius; - var height1 = doubleRadius; - if(height1 == null) { - height1 = 0; - } - if(width1 == null) { - width1 = 0; - } - if(point1.x + width1 > Camera.viewOffsetX && point1.x < Camera.viewOffsetWidth && point1.y + height1 > Camera.viewOffsetY) { - return point1.y < Camera.viewOffsetHeight; - } else { - return false; - } - } - ,isSimpleRender: function(camera) { - if(flixel_FlxG.renderTile) { - return false; - } - return this.isSimpleRenderBlit(camera); - } - ,isSimpleRenderBlit: function(camera) { - var result = (this.angle == 0 || this.bakedRotationAngle > 0) && this.scale.x == 1 && this.scale.y == 1 && this.blend == null; - result = result && (camera != null ? this.isPixelPerfectRender(camera) : this.pixelPerfectRender); - return result; - } - ,setFacingFlip: function(Direction,FlipX,FlipY) { - this._facingFlip.h[Direction] = { x : FlipX, y : FlipY}; - } - ,setFrames: function(Frames,saveAnimations) { - if(saveAnimations == null) { - saveAnimations = true; - } - if(saveAnimations) { - var animations = this.animation._animations; - var reverse = false; - var index = 0; - var frameIndex = this.animation.frameIndex; - var currName = null; - if(this.animation._curAnim != null) { - reverse = this.animation._curAnim.reversed; - index = this.animation._curAnim.curFrame; - currName = this.animation._curAnim.name; - } - this.animation._animations = null; - this.set_frames(Frames); - this.set_frame(this.frames.frames[frameIndex]); - this.animation._animations = animations; - if(currName != null) { - this.animation.play(currName,false,reverse,index); - } - } else { - this.set_frames(Frames); - } - return this; - } - ,get_pixels: function() { - if(this.graphic == null) { - return null; - } else { - return this.graphic.bitmap; - } - } - ,set_pixels: function(Pixels) { - var key = flixel_FlxG.bitmap.findKeyForBitmap(Pixels); - if(key == null) { - key = flixel_FlxG.bitmap.getUniqueKey(); - this.set_graphic(flixel_FlxG.bitmap.add(Pixels,false,key)); - } else { - var _this = flixel_FlxG.bitmap._cache; - this.set_graphic(__map_reserved[key] != null ? _this.getReserved(key) : _this.h[key]); - } - this.set_frames(this.graphic.get_imageFrame()); - return Pixels; - } - ,set_frame: function(Value) { - this.frame = Value; - if(this.frame != null) { - if(this.frame != null) { - this.frameWidth = this.frame.sourceSize.x | 0; - this.frameHeight = this.frame.sourceSize.y | 0; - } - this._halfSize.set(0.5 * this.frameWidth,0.5 * this.frameHeight); - this._flashRect.x = 0; - this._flashRect.y = 0; - this._flashRect.width = this.frameWidth; - this._flashRect.height = this.frameHeight; - this.dirty = true; - } else if(this.frames != null && this.frames.frames != null && this.numFrames > 0) { - this.frame = this.frames.frames[0]; - this.dirty = true; - } else { - return null; - } - if(flixel_FlxG.renderTile) { - this._frameGraphic = flixel_util_FlxDestroyUtil.destroy(this._frameGraphic); - } - if(this.clipRect != null) { - this._frame = this.frame.clipTo(this.clipRect,this._frame); - } else { - this._frame = this.frame.copyTo(this._frame); - } - return this.frame; - } - ,set_facing: function(Direction) { - var flip = this._facingFlip.h[Direction]; - if(flip != null) { - this.set_flipX(flip.x); - this.set_flipY(flip.y); - } - return this.facing = Direction; - } - ,set_alpha: function(Alpha) { - if(this.alpha == Alpha) { - return Alpha; - } - var lowerBound = Alpha < 0 ? 0 : Alpha; - this.alpha = lowerBound > 1 ? 1 : lowerBound; - this.updateColorTransform(); - return this.alpha; - } - ,set_color: function(Color) { - if(this.color == Color) { - return Color; - } - this.color = Color; - this.updateColorTransform(); - return this.color; - } - ,set_angle: function(Value) { - var newAngle = this.angle != Value; - var ret = flixel_FlxObject.prototype.set_angle.call(this,Value); - if(newAngle) { - this._angleChanged = true; - this.animation.update(0); - } - return ret; - } - ,updateTrig: function() { - if(this._angleChanged) { - var radians = this.angle * (Math.PI / 180); - this._sinAngle = Math.sin(radians); - this._cosAngle = Math.cos(radians); - this._angleChanged = false; - } - } - ,set_blend: function(Value) { - return this.blend = Value; - } - ,set_graphic: function(Value) { - var oldGraphic = this.graphic; - if(this.graphic != Value && Value != null) { - var _g = Value; - _g.set_useCount(_g.get_useCount() + 1); - } - if(oldGraphic != null && oldGraphic != Value) { - var _g1 = oldGraphic; - _g1.set_useCount(_g1.get_useCount() - 1); - } - return this.graphic = Value; - } - ,set_clipRect: function(rect) { - if(rect != null) { - rect.x = Math.round(rect.x); - rect.y = Math.round(rect.y); - rect.width = Math.round(rect.width); - rect.height = Math.round(rect.height); - this.clipRect = rect; - } else { - this.clipRect = null; - } - if(this.frames != null) { - this.set_frame(this.frames.frames[this.animation.frameIndex]); - } - return rect; - } - ,set_frames: function(Frames) { - if(this.animation != null) { - this.animation.destroyAnimations(); - } - if(Frames != null) { - this.set_graphic(Frames.parent); - this.frames = Frames; - this.set_frame(this.frames.frames[0]); - this.numFrames = this.frames.frames.length; - this.resetHelpers(); - this.bakedRotationAngle = 0; - this.animation.set_frameIndex(0); - this.graphicLoaded(); - } else { - this.frames = null; - this.set_frame(null); - this.set_graphic(null); - } - return Frames; - } - ,set_flipX: function(Value) { - if(flixel_FlxG.renderTile) { - this._facingHorizontalMult = Value ? -1 : 1; - } - this.dirty = this.flipX != Value || this.dirty; - return this.flipX = Value; - } - ,set_flipY: function(Value) { - if(flixel_FlxG.renderTile) { - this._facingVerticalMult = Value ? -1 : 1; - } - this.dirty = this.flipY != Value || this.dirty; - return this.flipY = Value; - } - ,set_antialiasing: function(value) { - return this.antialiasing = value; - } - ,set_useFramePixels: function(value) { - if(flixel_FlxG.renderTile) { - if(value != this.useFramePixels) { - this.useFramePixels = value; - this.set_frame(this.frame); - if(value) { - this.updateFramePixels(); - } - } - return value; - } else { - this.useFramePixels = true; - return true; - } - } - ,checkFlipX: function() { - var doFlipX = this.flipX != this._frame.flipX; - if(this.animation._curAnim != null) { - return doFlipX != this.animation._curAnim.flipX; - } - return doFlipX; - } - ,checkFlipY: function() { - var doFlipY = this.flipY != this._frame.flipY; - if(this.animation._curAnim != null) { - return doFlipY != this.animation._curAnim.flipY; - } - return doFlipY; - } - ,__class__: flixel_FlxSprite - ,__properties__: $extend(flixel_FlxObject.prototype.__properties__,{set_clipRect:"set_clipRect",set_color:"set_color",set_blend:"set_blend",set_flipY:"set_flipY",set_flipX:"set_flipX",set_facing:"set_facing",set_alpha:"set_alpha",set_graphic:"set_graphic",set_frames:"set_frames",set_frame:"set_frame",set_pixels:"set_pixels",get_pixels:"get_pixels",set_antialiasing:"set_antialiasing",set_useFramePixels:"set_useFramePixels"}) -}); -var AssetLoader = function(X,Y,asset,width,height) { - if(asset == null) { - asset = "assets/images/backgrounds/brasilia.png"; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - flixel_FlxSprite.call(this,X,Y); - this.loadGraphic(asset,true,width,height); -}; -$hxClasses["AssetLoader"] = AssetLoader; -AssetLoader.__name__ = "AssetLoader"; -AssetLoader.__super__ = flixel_FlxSprite; -AssetLoader.prototype = $extend(flixel_FlxSprite.prototype,{ - __class__: AssetLoader -}); -var AssetPaths = function() { }; -$hxClasses["AssetPaths"] = AssetPaths; -AssetPaths.__name__ = "AssetPaths"; -var flixel_group_FlxTypedGroup = function(MaxSize) { - if(MaxSize == null) { - MaxSize = 0; - } - this._marker = 0; - this.length = 0; - flixel_FlxBasic.call(this); - this.members = []; - this.set_maxSize(Math.abs(MaxSize) | 0); - this.flixelType = 2; -}; -$hxClasses["flixel.group.FlxTypedGroup"] = flixel_group_FlxTypedGroup; -flixel_group_FlxTypedGroup.__name__ = "flixel.group.FlxTypedGroup"; -flixel_group_FlxTypedGroup.overlaps = function(Callback,Group,X,Y,InScreenSpace,Camera) { - var result = false; - if(Group != null) { - var i = 0; - var l = Group.length; - var basic; - while(i < l) { - basic = Group.members[i++]; - if(basic != null && Callback(basic,X,Y,InScreenSpace,Camera)) { - result = true; - break; - } - } - } - return result; -}; -flixel_group_FlxTypedGroup.resolveGroup = function(ObjectOrGroup) { - var group = null; - if(ObjectOrGroup != null) { - if(ObjectOrGroup.flixelType == 2) { - group = ObjectOrGroup; - } else if(ObjectOrGroup.flixelType == 4) { - var spriteGroup = ObjectOrGroup; - group = spriteGroup.group; - } - } - return group; -}; -flixel_group_FlxTypedGroup.__super__ = flixel_FlxBasic; -flixel_group_FlxTypedGroup.prototype = $extend(flixel_FlxBasic.prototype,{ - members: null - ,maxSize: null - ,length: null - ,_memberAdded: null - ,_memberRemoved: null - ,_marker: null - ,destroy: function() { - flixel_FlxBasic.prototype.destroy.call(this); - flixel_util_FlxDestroyUtil.destroy(this._memberAdded); - flixel_util_FlxDestroyUtil.destroy(this._memberRemoved); - if(this.members != null) { - var i = 0; - var basic = null; - while(i < this.length) { - basic = this.members[i++]; - if(basic != null) { - basic.destroy(); - } - } - this.members = null; - } - } - ,update: function(elapsed) { - var i = 0; - var basic = null; - while(i < this.length) { - basic = this.members[i++]; - if(basic != null && basic.exists && basic.active) { - basic.update(elapsed); - } - } - } - ,draw: function() { - var i = 0; - var basic = null; - while(i < this.length) { - basic = this.members[i++]; - if(basic != null && basic.exists && basic.visible) { - basic.draw(); - } - } - } - ,add: function(Object1) { - if(Object1 == null) { - return null; - } - if(this.members.indexOf(Object1) >= 0) { - return Object1; - } - var index = this.getFirstNull(); - if(index != -1) { - this.members[index] = Object1; - if(index >= this.length) { - this.length = index + 1; - } - if(this._memberAdded != null) { - this._memberAdded.dispatch(Object1); - } - return Object1; - } - if(this.maxSize > 0 && this.length >= this.maxSize) { - return Object1; - } - this.members.push(Object1); - this.length++; - if(this._memberAdded != null) { - this._memberAdded.dispatch(Object1); - } - return Object1; - } - ,insert: function(position,object) { - if(object == null) { - return null; - } - if(this.members.indexOf(object) >= 0) { - return object; - } - if(position < this.length && this.members[position] == null) { - this.members[position] = object; - if(this._memberAdded != null) { - this._memberAdded.dispatch(object); - } - return object; - } - if(this.maxSize > 0 && this.length >= this.maxSize) { - return object; - } - this.members.splice(position,0,object); - this.length++; - if(this._memberAdded != null) { - this._memberAdded.dispatch(object); - } - return object; - } - ,recycle: function(ObjectClass,ObjectFactory,Force,Revive) { - if(Revive == null) { - Revive = true; - } - if(Force == null) { - Force = false; - } - var basic = null; - if(this.maxSize > 0) { - if(this.length < this.maxSize) { - var object = null; - if(ObjectFactory != null) { - object = ObjectFactory(); - this.add(object); - } else if(ObjectClass != null) { - object = Type.createInstance(ObjectClass,[]); - this.add(object); - } - return object; - } else { - basic = this.members[this._marker++]; - if(this._marker >= this.maxSize) { - this._marker = 0; - } - if(Revive) { - basic.revive(); - } - return basic; - } - } else { - basic = this.getFirstAvailable(ObjectClass,Force); - if(basic != null) { - if(Revive) { - basic.revive(); - } - return basic; - } - var object1 = null; - if(ObjectFactory != null) { - object1 = ObjectFactory(); - this.add(object1); - } else if(ObjectClass != null) { - object1 = Type.createInstance(ObjectClass,[]); - this.add(object1); - } - return object1; - } - } - ,recycleCreateObject: function(ObjectClass,ObjectFactory) { - var object = null; - if(ObjectFactory != null) { - object = ObjectFactory(); - this.add(object); - } else if(ObjectClass != null) { - object = Type.createInstance(ObjectClass,[]); - this.add(object); - } - return object; - } - ,remove: function(Object1,Splice) { - if(Splice == null) { - Splice = false; - } - if(this.members == null) { - return null; - } - var index = this.members.indexOf(Object1); - if(index < 0) { - return null; - } - if(Splice) { - this.members.splice(index,1); - this.length--; - } else { - this.members[index] = null; - } - if(this._memberRemoved != null) { - this._memberRemoved.dispatch(Object1); - } - return Object1; - } - ,replace: function(OldObject,NewObject) { - var index = this.members.indexOf(OldObject); - if(index < 0) { - return null; - } - this.members[index] = NewObject; - if(this._memberRemoved != null) { - this._memberRemoved.dispatch(OldObject); - } - if(this._memberAdded != null) { - this._memberAdded.dispatch(NewObject); - } - return NewObject; - } - ,sort: function(Function1,Order) { - if(Order == null) { - Order = -1; - } - var f = Function1; - var a1 = Order; - var tmp = function(a2,a3) { - return f(a1,a2,a3); - }; - this.members.sort(tmp); - } - ,getFirstAvailable: function(ObjectClass,Force) { - if(Force == null) { - Force = false; - } - var i = 0; - var basic = null; - while(i < this.length) { - basic = this.members[i++]; - if(basic != null && !basic.exists && (ObjectClass == null || js_Boot.__instanceof(basic,ObjectClass))) { - var tmp; - if(Force) { - var c = js_Boot.getClass(basic); - tmp = c.__name__ != ObjectClass.__name__; - } else { - tmp = false; - } - if(tmp) { - continue; - } - return this.members[i - 1]; - } - } - return null; - } - ,getFirstNull: function() { - var i = 0; - while(i < this.length) { - if(this.members[i] == null) { - return i; - } - ++i; - } - return -1; - } - ,getFirstExisting: function() { - var i = 0; - var basic = null; - while(i < this.length) { - basic = this.members[i++]; - if(basic != null && basic.exists) { - return basic; - } - } - return null; - } - ,getFirstAlive: function() { - var i = 0; - var basic = null; - while(i < this.length) { - basic = this.members[i++]; - if(basic != null && basic.exists && basic.alive) { - return basic; - } - } - return null; - } - ,getFirstDead: function() { - var i = 0; - var basic = null; - while(i < this.length) { - basic = this.members[i++]; - if(basic != null && !basic.alive) { - return basic; - } - } - return null; - } - ,countLiving: function() { - var i = 0; - var count = -1; - var basic = null; - while(i < this.length) { - basic = this.members[i++]; - if(basic != null) { - if(count < 0) { - count = 0; - } - if(basic.exists && basic.alive) { - ++count; - } - } - } - return count; - } - ,countDead: function() { - var i = 0; - var count = -1; - var basic = null; - while(i < this.length) { - basic = this.members[i++]; - if(basic != null) { - if(count < 0) { - count = 0; - } - if(!basic.alive) { - ++count; - } - } - } - return count; - } - ,getRandom: function(StartIndex,Length) { - if(Length == null) { - Length = 0; - } - if(StartIndex == null) { - StartIndex = 0; - } - if(StartIndex < 0) { - StartIndex = 0; - } - if(Length <= 0) { - Length = this.length; - } - return flixel_FlxG.random.getObject_flixel_group_FlxTypedGroup_T(this.members,null,StartIndex,Length); - } - ,clear: function() { - this.length = 0; - if(this._memberRemoved != null) { - var _g = 0; - var _g1 = this.members; - while(_g < _g1.length) { - var member = _g1[_g]; - ++_g; - if(member != null) { - this._memberRemoved.dispatch(member); - } - } - } - flixel_util_FlxArrayUtil.clearArray(this.members); - } - ,kill: function() { - var i = 0; - var basic = null; - while(i < this.length) { - basic = this.members[i++]; - if(basic != null && basic.exists) { - basic.kill(); - } - } - flixel_FlxBasic.prototype.kill.call(this); - } - ,revive: function() { - var i = 0; - var basic = null; - while(i < this.length) { - basic = this.members[i++]; - if(basic != null && !basic.exists) { - basic.revive(); - } - } - flixel_FlxBasic.prototype.revive.call(this); - } - ,iterator: function(filter) { - return new flixel_group_FlxTypedGroupIterator(this.members,filter); - } - ,forEach: function(Function1,Recurse) { - if(Recurse == null) { - Recurse = false; - } - var i = 0; - var basic = null; - while(i < this.length) { - basic = this.members[i++]; - if(basic != null) { - if(Recurse) { - var group = flixel_group_FlxTypedGroup.resolveGroup(basic); - if(group != null) { - group.forEach(Function1,Recurse); - } - } - Function1(basic); - } - } - } - ,forEachAlive: function(Function1,Recurse) { - if(Recurse == null) { - Recurse = false; - } - var i = 0; - var basic = null; - while(i < this.length) { - basic = this.members[i++]; - if(basic != null && basic.exists && basic.alive) { - if(Recurse) { - var group = flixel_group_FlxTypedGroup.resolveGroup(basic); - if(group != null) { - group.forEachAlive(Function1,Recurse); - } - } - Function1(basic); - } - } - } - ,forEachDead: function(Function1,Recurse) { - if(Recurse == null) { - Recurse = false; - } - var i = 0; - var basic = null; - while(i < this.length) { - basic = this.members[i++]; - if(basic != null && !basic.alive) { - if(Recurse) { - var group = flixel_group_FlxTypedGroup.resolveGroup(basic); - if(group != null) { - group.forEachDead(Function1,Recurse); - } - } - Function1(basic); - } - } - } - ,forEachExists: function(Function1,Recurse) { - if(Recurse == null) { - Recurse = false; - } - var i = 0; - var basic = null; - while(i < this.length) { - basic = this.members[i++]; - if(basic != null && basic.exists) { - if(Recurse) { - var group = flixel_group_FlxTypedGroup.resolveGroup(basic); - if(group != null) { - group.forEachExists(Function1,Recurse); - } - } - Function1(basic); - } - } - } - ,forEachOfType: function(ObjectClass,Function1,Recurse) { - if(Recurse == null) { - Recurse = false; - } - var i = 0; - var basic = null; - while(i < this.length) { - basic = this.members[i++]; - if(basic != null) { - if(Recurse) { - var group = flixel_group_FlxTypedGroup.resolveGroup(basic); - if(group != null) { - group.forEachOfType(ObjectClass,Function1,Recurse); - } - } - if(js_Boot.__instanceof(basic,ObjectClass)) { - Function1(basic); - } - } - } - } - ,set_maxSize: function(Size) { - this.maxSize = Math.abs(Size) | 0; - if(this._marker >= this.maxSize) { - this._marker = 0; - } - if(this.maxSize == 0 || this.members == null || this.maxSize >= this.length) { - return this.maxSize; - } - var i = this.maxSize; - var l = this.length; - var basic = null; - while(i < l) { - basic = this.members[i++]; - if(basic != null) { - if(this._memberRemoved != null) { - this._memberRemoved.dispatch(basic); - } - basic.destroy(); - } - } - flixel_util_FlxArrayUtil.setLength_flixel_group_FlxTypedGroup_T(this.members,this.maxSize); - this.length = this.members.length; - return this.maxSize; - } - ,get_memberAdded: function() { - if(this._memberAdded == null) { - this._memberAdded = new flixel_util__$FlxSignal_FlxSignal1(); - } - return this._memberAdded; - } - ,get_memberRemoved: function() { - if(this._memberRemoved == null) { - this._memberRemoved = new flixel_util__$FlxSignal_FlxSignal1(); - } - return this._memberRemoved; - } - ,__class__: flixel_group_FlxTypedGroup - ,__properties__: $extend(flixel_FlxBasic.prototype.__properties__,{get_memberRemoved:"get_memberRemoved",get_memberAdded:"get_memberAdded",set_maxSize:"set_maxSize"}) -}); -var flixel_FlxState = function(MaxSize) { - this._requestSubStateReset = false; - this.destroySubStates = true; - this.persistentDraw = true; - this.persistentUpdate = false; - flixel_group_FlxTypedGroup.call(this,MaxSize); -}; -$hxClasses["flixel.FlxState"] = flixel_FlxState; -flixel_FlxState.__name__ = "flixel.FlxState"; -flixel_FlxState.__super__ = flixel_group_FlxTypedGroup; -flixel_FlxState.prototype = $extend(flixel_group_FlxTypedGroup.prototype,{ - persistentUpdate: null - ,persistentDraw: null - ,destroySubStates: null - ,subState: null - ,_requestedSubState: null - ,_requestSubStateReset: null - ,create: function() { - } - ,draw: function() { - if(this.persistentDraw || this.subState == null) { - flixel_group_FlxTypedGroup.prototype.draw.call(this); - } - if(this.subState != null) { - this.subState.draw(); - } - } - ,openSubState: function(SubState) { - this._requestSubStateReset = true; - this._requestedSubState = SubState; - } - ,closeSubState: function() { - this._requestSubStateReset = true; - } - ,resetSubState: function() { - if(this.subState != null) { - if(this.subState.closeCallback != null) { - this.subState.closeCallback(); - } - if(this.destroySubStates) { - this.subState.destroy(); - } - } - this.subState = this._requestedSubState; - this._requestedSubState = null; - if(this.subState != null) { - if(!this.persistentUpdate) { - flixel_FlxG.inputs.onStateSwitch(); - } - this.subState._parentState = this; - if(!this.subState._created) { - this.subState._created = true; - this.subState.create(); - } - if(this.subState.openCallback != null) { - this.subState.openCallback(); - } - } - } - ,destroy: function() { - if(this.subState != null) { - this.subState.destroy(); - this.subState = null; - } - flixel_group_FlxTypedGroup.prototype.destroy.call(this); - } - ,switchTo: function(nextState) { - return true; - } - ,onFocusLost: function() { - } - ,onFocus: function() { - } - ,onResize: function(Width,Height) { - } - ,tryUpdate: function(elapsed) { - if(this.persistentUpdate || this.subState == null) { - this.update(elapsed); - } - if(this._requestSubStateReset) { - this._requestSubStateReset = false; - this.resetSubState(); - } - if(this.subState != null) { - this.subState.tryUpdate(elapsed); - } - } - ,get_bgColor: function() { - return flixel_FlxG.cameras.get_bgColor(); - } - ,set_bgColor: function(Value) { - return flixel_FlxG.cameras.set_bgColor(Value); - } - ,__class__: flixel_FlxState - ,__properties__: $extend(flixel_group_FlxTypedGroup.prototype.__properties__,{set_bgColor:"set_bgColor",get_bgColor:"get_bgColor"}) -}); -var flixel_math_FlxRandom = function(InitialSeed) { - this.internalSeed = 1; - this._floatNormalRho = 0; - this._twoPI = Math.PI * 2; - this._floatNormalRand2 = 0; - this._floatNormalRand1 = 0; - this._hasFloatNormalSpare = false; - this.initialSeed = 1; - if(InitialSeed != null) { - var lowerBound = InitialSeed < 1 ? 1 : InitialSeed; - var NewSeed = (lowerBound > 2147483646 ? 2147483646 : lowerBound) | 0; - var lowerBound1 = NewSeed < 1 ? 1 : NewSeed; - this.initialSeed = (this.internalSeed = (lowerBound1 > 2147483646 ? 2147483646 : lowerBound1) | 0) | 0; - } else { - var Value = Math.random() * 2147483647 | 0; - var lowerBound2 = Value < 1 ? 1 : Value; - var NewSeed1 = (lowerBound2 > 2147483646 ? 2147483646 : lowerBound2) | 0; - var lowerBound3 = NewSeed1 < 1 ? 1 : NewSeed1; - var NewSeed2 = (lowerBound3 > 2147483646 ? 2147483646 : lowerBound3) | 0; - var lowerBound4 = NewSeed2 < 1 ? 1 : NewSeed2; - this.initialSeed = (this.internalSeed = (lowerBound4 > 2147483646 ? 2147483646 : lowerBound4) | 0) | 0; - } -}; -$hxClasses["flixel.math.FlxRandom"] = flixel_math_FlxRandom; -flixel_math_FlxRandom.__name__ = "flixel.math.FlxRandom"; -flixel_math_FlxRandom.rangeBound = function(Value) { - var lowerBound = Value < 1 ? 1 : Value; - return (lowerBound > 2147483646 ? 2147483646 : lowerBound) | 0; -}; -flixel_math_FlxRandom.prototype = { - getObject_flixel_group_FlxTypedGroup_T: function(Objects,WeightsArray,StartIndex,EndIndex) { - if(StartIndex == null) { - StartIndex = 0; - } - var selected = null; - if(Objects.length != 0) { - if(WeightsArray == null) { - var _g = []; - var _g1 = 0; - var _g2 = Objects.length; - while(_g1 < _g2) { - var i = _g1++; - _g.push(1); - } - WeightsArray = _g; - } - if(EndIndex == null) { - EndIndex = Objects.length - 1; - } - var Max = Objects.length - 1; - var lowerBound = StartIndex < 0 ? 0 : StartIndex; - StartIndex = (Max != null && lowerBound > Max ? Max : lowerBound) | 0; - var Max1 = Objects.length - 1; - var lowerBound1 = EndIndex < 0 ? 0 : EndIndex; - EndIndex = (Max1 != null && lowerBound1 > Max1 ? Max1 : lowerBound1) | 0; - if(EndIndex < StartIndex) { - StartIndex += EndIndex; - EndIndex = StartIndex - EndIndex; - StartIndex -= EndIndex; - } - if(EndIndex > WeightsArray.length - 1) { - EndIndex = WeightsArray.length - 1; - } - var _g3 = []; - var _g11 = StartIndex; - var _g21 = EndIndex + 1; - while(_g11 < _g21) { - var i1 = _g11++; - _g3.push(WeightsArray[i1]); - } - flixel_math_FlxRandom._arrayFloatHelper = _g3; - selected = Objects[StartIndex + this.weightedPick(flixel_math_FlxRandom._arrayFloatHelper)]; - } - return selected; - } - ,initialSeed: null - ,resetInitialSeed: function() { - var Value = Math.random() * 2147483647 | 0; - var lowerBound = Value < 1 ? 1 : Value; - var NewSeed = (lowerBound > 2147483646 ? 2147483646 : lowerBound) | 0; - var lowerBound1 = NewSeed < 1 ? 1 : NewSeed; - var NewSeed1 = (lowerBound1 > 2147483646 ? 2147483646 : lowerBound1) | 0; - var lowerBound2 = NewSeed1 < 1 ? 1 : NewSeed1; - return this.initialSeed = (this.internalSeed = (lowerBound2 > 2147483646 ? 2147483646 : lowerBound2) | 0) | 0; - } - ,int: function(Min,Max,Excludes) { - if(Max == null) { - Max = 2147483647; - } - if(Min == null) { - Min = 0; - } - if(Min == 0 && Max == 2147483647 && Excludes == null) { - return (this.internalSeed = this.internalSeed * 48271.0 % 2147483647) | 0; - } else if(Min == Max) { - return Min; - } else { - if(Min > Max) { - Min += Max; - Max = Min - Max; - Min -= Max; - } - if(Excludes == null) { - return Math.floor(Min + (this.internalSeed = this.internalSeed * 48271.0 % 2147483647) / 2147483647 * (Max - Min + 1)); - } else { - var result = 0; - while(true) { - result = Math.floor(Min + (this.internalSeed = this.internalSeed * 48271.0 % 2147483647) / 2147483647 * (Max - Min + 1)); - if(!(Excludes.indexOf(result) >= 0)) { - break; - } - } - return result; - } - } - } - ,float: function(Min,Max,Excludes) { - if(Max == null) { - Max = 1; - } - if(Min == null) { - Min = 0; - } - var result = 0; - if(Min == 0 && Max == 1 && Excludes == null) { - return (this.internalSeed = this.internalSeed * 48271.0 % 2147483647) / 2147483647; - } else if(Min == Max) { - result = Min; - } else { - if(Min > Max) { - Min += Max; - Max = Min - Max; - Min -= Max; - } - if(Excludes == null) { - result = Min + (this.internalSeed = this.internalSeed * 48271.0 % 2147483647) / 2147483647 * (Max - Min); - } else { - while(true) { - result = Min + (this.internalSeed = this.internalSeed * 48271.0 % 2147483647) / 2147483647 * (Max - Min); - if(!(Excludes.indexOf(result) >= 0)) { - break; - } - } - } - } - return result; - } - ,_hasFloatNormalSpare: null - ,_floatNormalRand1: null - ,_floatNormalRand2: null - ,_twoPI: null - ,_floatNormalRho: null - ,floatNormal: function(Mean,StdDev) { - if(StdDev == null) { - StdDev = 1; - } - if(Mean == null) { - Mean = 0; - } - if(this._hasFloatNormalSpare) { - this._hasFloatNormalSpare = false; - var scale = StdDev * this._floatNormalRho; - return Mean + scale * this._floatNormalRand2; - } - this._hasFloatNormalSpare = true; - var theta = this._twoPI * ((this.internalSeed = this.internalSeed * 48271.0 % 2147483647) / 2147483647); - this._floatNormalRho = Math.sqrt(-2 * Math.log(1 - (this.internalSeed = this.internalSeed * 48271.0 % 2147483647) / 2147483647)); - var scale1 = StdDev * this._floatNormalRho; - this._floatNormalRand1 = Math.cos(theta); - this._floatNormalRand2 = Math.sin(theta); - return Mean + scale1 * this._floatNormalRand1; - } - ,bool: function(Chance) { - if(Chance == null) { - Chance = 50; - } - return this.float(0,100) < Chance; - } - ,sign: function(Chance) { - if(Chance == null) { - Chance = 50; - } - var Chance1 = Chance; - if(Chance1 == null) { - Chance1 = 50; - } - if(this.float(0,100) < Chance1) { - return 1; - } else { - return -1; - } - } - ,weightedPick: function(WeightsArray) { - var totalWeight = 0; - var pick = 0; - var _g = 0; - while(_g < WeightsArray.length) { - var i = WeightsArray[_g]; - ++_g; - totalWeight += i; - } - totalWeight = this.float(0,totalWeight); - var _g1 = 0; - var _g2 = WeightsArray.length; - while(_g1 < _g2) { - var i1 = _g1++; - if(totalWeight < WeightsArray[i1]) { - pick = i1; - break; - } - totalWeight -= WeightsArray[i1]; - } - return pick; - } - ,color: function(Min,Max,Alpha,GreyScale) { - if(GreyScale == null) { - GreyScale = false; - } - var red; - var green; - var blue; - var alpha; - if(Min == null && Max == null) { - red = this.int(0,255); - green = this.int(0,255); - blue = this.int(0,255); - alpha = Alpha == null ? this.int(0,255) : Alpha; - } else if(Max == null) { - red = this.int(Min >> 16 & 255,255); - green = GreyScale ? red : this.int(Min >> 8 & 255,255); - blue = GreyScale ? red : this.int(Min & 255,255); - alpha = Alpha == null ? this.int(Min >> 24 & 255,255) : Alpha; - } else if(Min == null) { - red = this.int(0,Max >> 16 & 255); - green = GreyScale ? red : this.int(0,Max >> 8 & 255); - blue = GreyScale ? red : this.int(0,Max & 255); - alpha = Alpha == null ? this.int(0,Max >> 24 & 255) : Alpha; - } else { - red = this.int(Min >> 16 & 255,Max >> 16 & 255); - green = GreyScale ? red : this.int(Min >> 8 & 255,Max >> 8 & 255); - blue = GreyScale ? red : this.int(Min & 255,Max & 255); - alpha = Alpha == null ? this.int(Min >> 24 & 255,Max >> 24 & 255) : Alpha; - } - var Alpha1 = alpha; - if(Alpha1 == null) { - Alpha1 = 255; - } - var color = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var Alpha2 = Alpha1; - if(Alpha2 == null) { - Alpha2 = 255; - } - color &= -16711681; - color |= (red > 255 ? 255 : red < 0 ? 0 : red) << 16; - color &= -65281; - color |= (green > 255 ? 255 : green < 0 ? 0 : green) << 8; - color &= -256; - color |= blue > 255 ? 255 : blue < 0 ? 0 : blue; - color &= 16777215; - color |= (Alpha2 > 255 ? 255 : Alpha2 < 0 ? 0 : Alpha2) << 24; - return color; - } - ,generate: function() { - return this.internalSeed = this.internalSeed * 48271.0 % 2147483647; - } - ,internalSeed: null - ,set_initialSeed: function(NewSeed) { - var lowerBound = NewSeed < 1 ? 1 : NewSeed; - var NewSeed1 = (lowerBound > 2147483646 ? 2147483646 : lowerBound) | 0; - var lowerBound1 = NewSeed1 < 1 ? 1 : NewSeed1; - return this.initialSeed = (this.internalSeed = (lowerBound1 > 2147483646 ? 2147483646 : lowerBound1) | 0) | 0; - } - ,get_currentSeed: function() { - return this.internalSeed | 0; - } - ,set_currentSeed: function(NewSeed) { - var lowerBound = NewSeed < 1 ? 1 : NewSeed; - return (this.internalSeed = (lowerBound > 2147483646 ? 2147483646 : lowerBound) | 0) | 0; - } - ,__class__: flixel_math_FlxRandom - ,__properties__: {set_currentSeed:"set_currentSeed",get_currentSeed:"get_currentSeed",set_initialSeed:"set_initialSeed"} -}; -Math.__name__ = "Math"; -var BozoRunGameState = function(MaxSize) { - this._piscando = true; - this._arrayLivros = ["assets/images/obstaculos/livros1.png","assets/images/obstaculos/livros2.png","assets/images/obstaculos/livros3.png","assets/images/obstaculos/livros4.png","assets/images/obstaculos/livros5.png","assets/images/obstaculos/livros6.png"]; - this._amountOranges = 0; - this._livesTotal = 3; - this._auxX = 0.0; - this._tooglePausar = false; - flixel_FlxState.call(this,MaxSize); -}; -$hxClasses["BozoRunGameState"] = BozoRunGameState; -BozoRunGameState.__name__ = "BozoRunGameState"; -BozoRunGameState.__super__ = flixel_FlxState; -BozoRunGameState.prototype = $extend(flixel_FlxState.prototype,{ - _bozo: null - ,_jump: null - ,_playJump: null - ,_jumpPressed: null - ,_sfxDie: null - ,_tooglePausar: null - ,_auxX: null - ,_livesTotal: null - ,_live0: null - ,_live1: null - ,_live2: null - ,_laranja1: null - ,_laranja2: null - ,_laranja3: null - ,_ghost: null - ,_pontaDireitaCenario: null - ,_bgImgGrp: null - ,_fundoCeu: null - ,_fundoCenario: null - ,_floor: null - ,_collisions: null - ,_books: null - ,_amountOranges: null - ,_oranges: null - ,_change: null - ,_score: null - ,_record: null - ,_pausarButton: null - ,_voltarButton: null - ,_scoreText: null - ,_arrayLivros: null - ,_piscando: null - ,create: function() { - flixel_FlxG.mouse.set_visible(false); - extension_eightsines_EsOrientation.setScreenOrientation(2); - flixel_FlxG.camera.fade(-16777216,0.33,true); - flixel_FlxG.camera.set_antialiasing(true); - var _this = flixel_FlxG.worldBounds; - _this.width = 1600000; - _this.height = 300; - this._fundoCeu = new flixel_addons_display_FlxBackdrop("assets/images/sky.png",0.1,0,true,false,0,0); - this._fundoCenario = new flixel_addons_display_FlxBackdrop("assets/images/backgrounds/bgnovo.png",0.4,0,true,false,0,0); - this._bgImgGrp = new flixel_group_FlxTypedSpriteGroup(); - this._bgImgGrp.add(this._fundoCeu); - this._bgImgGrp.add(this._fundoCenario); - this.add(this._bgImgGrp); - this._bozo = new flixel_FlxSprite().loadGraphic("assets/images/Jair.png",true,104,122); - this._bozo.scale.set(0.4,1); - this._bozo.updateHitbox(); - this._bozo.setGraphicSize(104,122); - this._record = this._bozo.x | 0; - this._record = this._bozo.x | 0; - this._bozo.animation.add("fugindo",[3,4,5,6,7,8,9,10,11,12,13],30,true); - this._bozo.animation.add("pulando",[15,14],7,false); - this._bozo.animation.add("caindo",[16,17],7,false); - this._bozo.animation.add("morrendo",[22,23],15,false); - this._bozo.set_facing(16); - this.add(this._bozo); - this._ghost = new flixel_FlxSprite(this._bozo.x + flixel_FlxG.width - 16,flixel_FlxG.height / 2); - flixel_FlxG.camera.follow(this._ghost); - var _gthis = this; - this._jump = -1; - this._playJump = true; - this._jumpPressed = false; - this._sfxDie = true; - this._bozo.setPosition(this._record * 16,0); - this._bozo.drag.set_x(100); - this._bozo.velocity.set(0,0); - this._bozo.maxVelocity.set(200,1400); - this._bozo.acceleration.set(120,1400); - this._bozo.animation.add("fugindo",[3,4,5,6,7,8,9,10,11,12,13],30,true); - this._bozo.animation.add("pulando",[15,14],7,false); - this._bozo.animation.add("caindo",[16,17],7,false); - this._bozo.animation.add("morrendo",[22,23],15,false); - this._ghost.set_x(this._bozo.x - 3.2 + flixel_FlxG.width * .5); - this._piscando = true; - var _timerPiscando = new haxe_Timer(3000); - _timerPiscando.run = function() { - _gthis._piscando = false; - _gthis._bozo.set_visible(true); - _timerPiscando.stop(); - return; - }; - var _gthis1 = this; - this._pausarButton = new flixel_ui_FlxButton(0,0,"",function() { - var tmp = flixel_util__$FlxColor_FlxColor_$Impl_$._new(-1719631744); - _gthis1.openSubState(new PausadoSubState(tmp)); - return; - }); - this._pausarButton.loadGraphic("assets/images/botoes/pausar/pausar.png",true,60,36); - this._pausarButton.setPosition(124,4); - this._pausarButton.scrollFactor.set(0,0); - this.add(this._pausarButton); - this._voltarButton = new flixel_ui_FlxButton(0,0,"",function() { - flixel_FlxG.camera.fade(-16777216,0.33,false,function() { - var nextState = new MainMenuState(); - if(flixel_FlxG.game._state.switchTo(nextState)) { - flixel_FlxG.game._requestedState = nextState; - } - return; - }); - return; - }); - this._voltarButton.loadGraphic("assets/images/botoes/voltar/voltar.png",true,60,36); - this._voltarButton.setPosition(189,4); - this._voltarButton.scrollFactor.set(0,0); - this.add(this._voltarButton); - this._scoreText = new flixel_text_FlxText(78,8,45,""); - this._scoreText.scrollFactor.set(0,0); - this._scoreText.set_borderStyle(flixel_text_FlxTextBorderStyle.OUTLINE); - this._scoreText.set_color(16711680); - this.add(this._scoreText); - this._live0 = new flixel_FlxSprite(0,0).loadGraphic("assets/images/coracao.png",true,28,23); - this._live0.scrollFactor.set(0,0); - this._live0.animation.add("vivo",[0],1,false); - this._live0.animation.add("morto",[1],1,false); - this.add(this._live0); - this._live1 = new flixel_FlxSprite(23,0).loadGraphic("assets/images/coracao.png",true,28,23); - this._live1.scrollFactor.set(0,0); - this._live1.animation.add("vivo",[0],1,false); - this._live1.animation.add("morto",[1],1,false); - this.add(this._live1); - this._live2 = new flixel_FlxSprite(46,0).loadGraphic("assets/images/coracao.png",true,28,23); - this._live2.scrollFactor.set(0,0); - this._live2.animation.add("vivo",[0],1,false); - this._live2.animation.add("morto",[1],1,false); - this.add(this._live2); - this._laranja1 = new flixel_FlxSprite(0,24,"assets/images/laranja.png"); - this._laranja1.scrollFactor.set(0,0); - this._laranja1.set_visible(false); - this.add(this._laranja1); - this._laranja2 = new flixel_FlxSprite(24,24,"assets/images/laranja.png"); - this._laranja2.scrollFactor.set(0,0); - this._laranja2.set_visible(false); - this.add(this._laranja2); - this._laranja3 = new flixel_FlxSprite(48,24,"assets/images/laranja.png"); - this._laranja3.scrollFactor.set(0,0); - this._laranja3.set_visible(false); - this.add(this._laranja3); - var _g = this._fundoCenario; - _g.set_y(_g.y + 30); - var _g1 = this._fundoCeu; - _g1.set_y(_g1.y - 70); - this._score = this._record; - this._floor = new flixel_addons_display_FlxBackdrop("assets/images/groundtiles.png",1,0,true,false,0,0); - this._floor.set_y(280); - this._floor.set_allowCollisions(4369); - this._floor.collisonXDrag = false; - this._floor.set_immovable(true); - this._floor.set_width(1000000); - this.add(this._floor); - this._collisions = new flixel_group_FlxTypedGroup(); - this._collisions.add(this._floor); - this.add(this._collisions); - this._books = new flixel_group_FlxTypedSpriteGroup(); - this.add(this._books); - this._oranges = new flixel_group_FlxTypedSpriteGroup(); - this.add(this._oranges); - this._change = false; - this._pontaDireitaCenario = (this._record - 1) * 16; - } - ,configurarFundo: function() { - this._fundoCeu = new flixel_addons_display_FlxBackdrop("assets/images/sky.png",0.1,0,true,false,0,0); - this._fundoCenario = new flixel_addons_display_FlxBackdrop("assets/images/backgrounds/bgnovo.png",0.4,0,true,false,0,0); - this._bgImgGrp = new flixel_group_FlxTypedSpriteGroup(); - this._bgImgGrp.add(this._fundoCeu); - this._bgImgGrp.add(this._fundoCenario); - this.add(this._bgImgGrp); - } - ,configurarBozo: function() { - this._bozo = new flixel_FlxSprite().loadGraphic("assets/images/Jair.png",true,104,122); - this._bozo.scale.set(0.4,1); - this._bozo.updateHitbox(); - this._bozo.setGraphicSize(104,122); - this._record = this._bozo.x | 0; - this._record = this._bozo.x | 0; - this._bozo.animation.add("fugindo",[3,4,5,6,7,8,9,10,11,12,13],30,true); - this._bozo.animation.add("pulando",[15,14],7,false); - this._bozo.animation.add("caindo",[16,17],7,false); - this._bozo.animation.add("morrendo",[22,23],15,false); - this._bozo.set_facing(16); - this.add(this._bozo); - this._ghost = new flixel_FlxSprite(this._bozo.x + flixel_FlxG.width - 16,flixel_FlxG.height / 2); - flixel_FlxG.camera.follow(this._ghost); - } - ,configurarInterface: function() { - var _gthis = this; - this._pausarButton = new flixel_ui_FlxButton(0,0,"",function() { - var tmp = flixel_util__$FlxColor_FlxColor_$Impl_$._new(-1719631744); - _gthis.openSubState(new PausadoSubState(tmp)); - return; - }); - this._pausarButton.loadGraphic("assets/images/botoes/pausar/pausar.png",true,60,36); - this._pausarButton.setPosition(124,4); - this._pausarButton.scrollFactor.set(0,0); - this.add(this._pausarButton); - this._voltarButton = new flixel_ui_FlxButton(0,0,"",function() { - flixel_FlxG.camera.fade(-16777216,0.33,false,function() { - var nextState = new MainMenuState(); - if(flixel_FlxG.game._state.switchTo(nextState)) { - flixel_FlxG.game._requestedState = nextState; - } - return; - }); - return; - }); - this._voltarButton.loadGraphic("assets/images/botoes/voltar/voltar.png",true,60,36); - this._voltarButton.setPosition(189,4); - this._voltarButton.scrollFactor.set(0,0); - this.add(this._voltarButton); - this._scoreText = new flixel_text_FlxText(78,8,45,""); - this._scoreText.scrollFactor.set(0,0); - this._scoreText.set_borderStyle(flixel_text_FlxTextBorderStyle.OUTLINE); - this._scoreText.set_color(16711680); - this.add(this._scoreText); - this._live0 = new flixel_FlxSprite(0,0).loadGraphic("assets/images/coracao.png",true,28,23); - this._live0.scrollFactor.set(0,0); - this._live0.animation.add("vivo",[0],1,false); - this._live0.animation.add("morto",[1],1,false); - this.add(this._live0); - this._live1 = new flixel_FlxSprite(23,0).loadGraphic("assets/images/coracao.png",true,28,23); - this._live1.scrollFactor.set(0,0); - this._live1.animation.add("vivo",[0],1,false); - this._live1.animation.add("morto",[1],1,false); - this.add(this._live1); - this._live2 = new flixel_FlxSprite(46,0).loadGraphic("assets/images/coracao.png",true,28,23); - this._live2.scrollFactor.set(0,0); - this._live2.animation.add("vivo",[0],1,false); - this._live2.animation.add("morto",[1],1,false); - this.add(this._live2); - this._laranja1 = new flixel_FlxSprite(0,24,"assets/images/laranja.png"); - this._laranja1.scrollFactor.set(0,0); - this._laranja1.set_visible(false); - this.add(this._laranja1); - this._laranja2 = new flixel_FlxSprite(24,24,"assets/images/laranja.png"); - this._laranja2.scrollFactor.set(0,0); - this._laranja2.set_visible(false); - this.add(this._laranja2); - this._laranja3 = new flixel_FlxSprite(48,24,"assets/images/laranja.png"); - this._laranja3.scrollFactor.set(0,0); - this._laranja3.set_visible(false); - this.add(this._laranja3); - var _g = this._fundoCenario; - _g.set_y(_g.y + 30); - var _g1 = this._fundoCeu; - _g1.set_y(_g1.y - 70); - this._score = this._record; - } - ,setupPlatforms: function() { - this._floor = new flixel_addons_display_FlxBackdrop("assets/images/groundtiles.png",1,0,true,false,0,0); - this._floor.set_y(280); - this._floor.set_allowCollisions(4369); - this._floor.collisonXDrag = false; - this._floor.set_immovable(true); - this._floor.set_width(1000000); - this.add(this._floor); - this._collisions = new flixel_group_FlxTypedGroup(); - this._collisions.add(this._floor); - this.add(this._collisions); - this._books = new flixel_group_FlxTypedSpriteGroup(); - this.add(this._books); - this._oranges = new flixel_group_FlxTypedSpriteGroup(); - this.add(this._oranges); - } - ,iniciarBozo: function() { - var _gthis = this; - this._jump = -1; - this._playJump = true; - this._jumpPressed = false; - this._sfxDie = true; - this._bozo.setPosition(this._record * 16,0); - this._bozo.drag.set_x(100); - this._bozo.velocity.set(0,0); - this._bozo.maxVelocity.set(200,1400); - this._bozo.acceleration.set(120,1400); - this._bozo.animation.add("fugindo",[3,4,5,6,7,8,9,10,11,12,13],30,true); - this._bozo.animation.add("pulando",[15,14],7,false); - this._bozo.animation.add("caindo",[16,17],7,false); - this._bozo.animation.add("morrendo",[22,23],15,false); - this._ghost.set_x(this._bozo.x - 3.2 + flixel_FlxG.width * .5); - this._piscando = true; - var _timerPiscando = new haxe_Timer(3000); - _timerPiscando.run = function() { - _gthis._piscando = false; - _gthis._bozo.set_visible(true); - _timerPiscando.stop(); - return; - }; - } - ,initPlatforms: function() { - this._change = false; - this._pontaDireitaCenario = (this._record - 1) * 16; - } - ,onReiniciar: function() { - if(this._livesTotal > 0) { - var _gthis = this; - this._jump = -1; - this._playJump = true; - this._jumpPressed = false; - this._sfxDie = true; - this._bozo.setPosition(this._record * 16,0); - this._bozo.drag.set_x(100); - this._bozo.velocity.set(0,0); - this._bozo.maxVelocity.set(200,1400); - this._bozo.acceleration.set(120,1400); - this._bozo.animation.add("fugindo",[3,4,5,6,7,8,9,10,11,12,13],30,true); - this._bozo.animation.add("pulando",[15,14],7,false); - this._bozo.animation.add("caindo",[16,17],7,false); - this._bozo.animation.add("morrendo",[22,23],15,false); - this._ghost.set_x(this._bozo.x - 3.2 + flixel_FlxG.width * .5); - this._piscando = true; - var _timerPiscando = new haxe_Timer(3000); - _timerPiscando.run = function() { - _gthis._piscando = false; - _gthis._bozo.set_visible(true); - _timerPiscando.stop(); - return; - }; - } - } - ,update: function(elapsed) { - var _gthis = this; - var _gthis1 = this; - while((this._bozo.x + flixel_FlxG.width) * 1.3 > this._pontaDireitaCenario) { - this._pontaDireitaCenario += 32; - if(BozoRunGameState.random.int(0,20) / 20 == 0) { - var Path = this._arrayLivros[BozoRunGameState.random.int(0,5)]; - var group = this._books; - var isSolid = true; - var isMovable = true; - if(isMovable == null) { - isMovable = true; - } - if(isSolid == null) { - isSolid = true; - } - var obj = new AssetLoader(null,null,Path,45,55); - obj.set_x(this._bozo.x + flixel_FlxG.width + BozoRunGameState.random.int(300,350)); - obj.set_y(BozoRunGameState.random.int(140,250)); - obj.set_solid(isSolid); - obj.set_immovable(isMovable); - this.add(obj); - group.add(obj); - } - if(BozoRunGameState.random.int(0,50) / 50 == 0) { - var group1 = this._oranges; - var isSolid1 = true; - var isMovable1 = false; - if(isMovable1 == null) { - isMovable1 = true; - } - if(isSolid1 == null) { - isSolid1 = true; - } - var obj1 = new AssetLoader(null,null,"assets/images/laranja.png",23,23); - obj1.set_x(this._bozo.x + flixel_FlxG.width + BozoRunGameState.random.int(300,350)); - obj1.set_y(BozoRunGameState.random.int(140,250)); - obj1.set_solid(isSolid1); - obj1.set_immovable(isMovable1); - this.add(obj1); - group1.add(obj1); - } - this._change = true; - this._books.group.forEach(function(book) { - if(book.x < _gthis1._bozo.x - 35) { - book.destroy(); - } - return; - },false); - this._oranges.group.forEach(function(orange) { - if(orange.x < _gthis1._bozo.x - 35) { - orange.destroy(); - } - return; - },false); - } - this._bozo.maxVelocity.set_x(200 + (this._bozo.x * .03 | 0)); - var _this = flixel_FlxG.keys; - var KeyArray; - var s = "UP"; - s = s.toUpperCase(); - var _this1 = flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.fromStringMap; - if(__map_reserved[s] != null ? _this1.existsReserved(s) : _this1.h.hasOwnProperty(s)) { - var _this2 = flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.fromStringMap; - KeyArray = __map_reserved[s] != null ? _this2.getReserved(s) : _this2.h[s]; - } else { - KeyArray = -1; - } - var KeyArray1; - var s1 = "W"; - s1 = s1.toUpperCase(); - var _this3 = flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.fromStringMap; - if(__map_reserved[s1] != null ? _this3.existsReserved(s1) : _this3.h.hasOwnProperty(s1)) { - var _this4 = flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.fromStringMap; - KeyArray1 = __map_reserved[s1] != null ? _this4.getReserved(s1) : _this4.h[s1]; - } else { - KeyArray1 = -1; - } - var s2 = "SPACE"; - s2 = s2.toUpperCase(); - var KeyArray2; - var _this5 = flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.fromStringMap; - if(__map_reserved[s2] != null ? _this5.existsReserved(s2) : _this5.h.hasOwnProperty(s2)) { - var _this6 = flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.fromStringMap; - KeyArray2 = __map_reserved[s2] != null ? _this6.getReserved(s2) : _this6.h[s2]; - } else { - KeyArray2 = -1; - } - this._jumpPressed = _this.checkKeyArrayState([KeyArray,KeyArray1,KeyArray2],1); - if(this._bozo.velocity.x > 10) { - this._sfxDie = true; - } - var _g = 0; - var _g1 = flixel_FlxG.touches.list; - while(_g < _g1.length) { - var touch = _g1[_g]; - ++_g; - if(touch.input.current == -1) { - this._jumpPressed = false; - } else { - var tmp; - if(touch.input.current != 2) { - var _this7 = touch.input; - tmp = _this7.current == 1 || _this7.current == 2; - } else { - tmp = true; - } - if(tmp) { - this._jumpPressed = true; - } - } - } - if(this._jump != -1 && this._jumpPressed) { - if(this._jump == 0) { - flixel_FlxG.sound.play("assets/sounds/goblin-1.ogg"); - } - this._jump += flixel_FlxG.elapsed; - if(this._bozo.velocity.y >= 0) { - this._playJump = true; - var _g2 = this._bozo; - _g2.set_y(_g2.y - 1); - this._bozo.velocity.set_y(-700.); - this._bozo.acceleration.set_y(-1400); - } - if(this._jump > .25) { - this._bozo.velocity.set_y(-700.); - this._jump = -1; - this._playJump = true; - } - } else if(!this._jumpPressed || this._jump == -1) { - if(this._bozo.velocity.y < 0) { - this._bozo.acceleration.set_y(1400); - this._bozo.velocity.set_y(350.); - this._jump = -1; - } - } - if(this._change) { - this._collisions.update(flixel_FlxG.elapsed); - this._oranges.update(flixel_FlxG.elapsed); - this._books.update(flixel_FlxG.elapsed); - this._change = false; - } - if(flixel_FlxG.overlap(this._bozo,this._oranges,function(_bozo,_laranja) { - _laranja.destroy(); - return; - })) { - this._playJump = false; - if(this._amountOranges < 3 && ++this._amountOranges == this._amountOranges) { - switch(this._amountOranges) { - case 1: - this._laranja1.set_visible(true); - break; - case 2: - this._laranja2.set_visible(true); - break; - case 3: - this._laranja3.set_visible(true); - break; - } - } - } - if(flixel_FlxG.overlap(this._bozo,this._collisions,null,flixel_FlxObject.separate)) { - this._playJump = false; - if(this._bozo.velocity.x > 0 && !this._jumpPressed) { - this._jump = 0; - } - } - if(!this._piscando && flixel_FlxG.overlap(this._bozo,this._books,function(_obj1,_obj2) { - if(_gthis._amountOranges >= 1) { - _obj2.destroy(); - } - return; - })) { - if(this._sfxDie) { - flixel_FlxG.camera.shake(0.01,0.2); - } - this._playJump = false; - this._jump = 0; - if(this._amountOranges >= 1) { - this._amountOranges--; - } - switch(this._amountOranges) { - case 0: - this._laranja1.set_visible(false); - break; - case 1: - this._laranja2.set_visible(false); - break; - case 2: - this._laranja3.set_visible(false); - break; - } - if(this._amountOranges == 0 && flixel_FlxG.overlap(this._bozo,this._books,null,flixel_FlxObject.separate) && this._bozo.velocity.x <= 0 && this._amountOranges <= 0) { - this._jump = -1; - this._playJump = false; - if(this._sfxDie) { - this._livesTotal -= 1; - switch(this._livesTotal) { - case 0: - this._live0.animation.play("morto"); - break; - case 1: - this._live1.animation.play("morto"); - break; - case 2: - this._live2.animation.play("morto"); - break; - } - } - var _gthis2 = this; - if(this._sfxDie) { - flixel_FlxG.sound.play("assets/sounds/goblin-9.ogg"); - this._sfxDie = false; - var timerPraReiniciar = new haxe_Timer(500); - timerPraReiniciar.run = function() { - if(_gthis2._livesTotal > 0) { - var _gthis3 = _gthis2; - _gthis2._jump = -1; - _gthis2._playJump = true; - _gthis2._jumpPressed = false; - _gthis2._sfxDie = true; - _gthis2._bozo.setPosition(_gthis2._record * 16,0); - _gthis2._bozo.drag.set_x(100); - _gthis2._bozo.velocity.set(0,0); - _gthis2._bozo.maxVelocity.set(200,1400); - _gthis2._bozo.acceleration.set(120,1400); - _gthis2._bozo.animation.add("fugindo",[3,4,5,6,7,8,9,10,11,12,13],30,true); - _gthis2._bozo.animation.add("pulando",[15,14],7,false); - _gthis2._bozo.animation.add("caindo",[16,17],7,false); - _gthis2._bozo.animation.add("morrendo",[22,23],15,false); - _gthis2._ghost.set_x(_gthis2._bozo.x - 3.2 + flixel_FlxG.width * .5); - _gthis2._piscando = true; - var _timerPiscando = new haxe_Timer(3000); - _timerPiscando.run = function() { - _gthis3._piscando = false; - _gthis3._bozo.set_visible(true); - _timerPiscando.stop(); - return; - }; - } - timerPraReiniciar.stop(); - return; - }; - } - } - } else if(this._piscando) { - this._bozo.set_visible(!this._bozo.visible); - } - if(this._bozo.velocity.x == 0) { - this._bozo.animation.play("morrendo"); - } else if(this._playJump) { - this._bozo.animation.play("pulando"); - } else if(this._bozo.velocity.y != 0) { - this._bozo.animation.play("caindo"); - } else { - this._bozo.animation.play("fugindo"); - } - flixel_FlxState.prototype.update.call(this,flixel_FlxG.elapsed); - this._score = this._bozo.x / 16 | 0; - if(this._bozo.x > this._record * 16) { - this._record = this._score; - } - this._scoreText.set_text(Std.string("Recorde" + this._record + "m")); - this._ghost.set_x(this._bozo.x - 3.2 + flixel_FlxG.width * .5); - } - ,updateUI: function() { - this._score = this._bozo.x / 16 | 0; - if(this._bozo.x > this._record * 16) { - this._record = this._score; - } - this._scoreText.set_text(Std.string("Recorde" + this._record + "m")); - this._ghost.set_x(this._bozo.x - 3.2 + flixel_FlxG.width * .5); - } - ,atualizaBozo: function() { - this._bozo.maxVelocity.set_x(200 + (this._bozo.x * .03 | 0)); - var _this = flixel_FlxG.keys; - var KeyArray; - var s = "UP"; - s = s.toUpperCase(); - var _this1 = flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.fromStringMap; - if(__map_reserved[s] != null ? _this1.existsReserved(s) : _this1.h.hasOwnProperty(s)) { - var _this2 = flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.fromStringMap; - KeyArray = __map_reserved[s] != null ? _this2.getReserved(s) : _this2.h[s]; - } else { - KeyArray = -1; - } - var KeyArray1; - var s1 = "W"; - s1 = s1.toUpperCase(); - var _this3 = flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.fromStringMap; - if(__map_reserved[s1] != null ? _this3.existsReserved(s1) : _this3.h.hasOwnProperty(s1)) { - var _this4 = flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.fromStringMap; - KeyArray1 = __map_reserved[s1] != null ? _this4.getReserved(s1) : _this4.h[s1]; - } else { - KeyArray1 = -1; - } - var s2 = "SPACE"; - s2 = s2.toUpperCase(); - var KeyArray2; - var _this5 = flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.fromStringMap; - if(__map_reserved[s2] != null ? _this5.existsReserved(s2) : _this5.h.hasOwnProperty(s2)) { - var _this6 = flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.fromStringMap; - KeyArray2 = __map_reserved[s2] != null ? _this6.getReserved(s2) : _this6.h[s2]; - } else { - KeyArray2 = -1; - } - this._jumpPressed = _this.checkKeyArrayState([KeyArray,KeyArray1,KeyArray2],1); - if(this._bozo.velocity.x > 10) { - this._sfxDie = true; - } - var _g = 0; - var _g1 = flixel_FlxG.touches.list; - while(_g < _g1.length) { - var touch = _g1[_g]; - ++_g; - if(touch.input.current == -1) { - this._jumpPressed = false; - } else { - var tmp; - if(touch.input.current != 2) { - var _this7 = touch.input; - tmp = _this7.current == 1 || _this7.current == 2; - } else { - tmp = true; - } - if(tmp) { - this._jumpPressed = true; - } - } - } - if(this._jump != -1 && this._jumpPressed) { - if(this._jump == 0) { - flixel_FlxG.sound.play("assets/sounds/goblin-1.ogg"); - } - this._jump += flixel_FlxG.elapsed; - if(this._bozo.velocity.y >= 0) { - this._playJump = true; - var _g2 = this._bozo; - _g2.set_y(_g2.y - 1); - this._bozo.velocity.set_y(-700.); - this._bozo.acceleration.set_y(-1400); - } - if(this._jump > .25) { - this._bozo.velocity.set_y(-700.); - this._jump = -1; - this._playJump = true; - } - } else if(!this._jumpPressed || this._jump == -1) { - if(this._bozo.velocity.y < 0) { - this._bozo.acceleration.set_y(1400); - this._bozo.velocity.set_y(350.); - this._jump = -1; - } - } - } - ,updatePlatforms: function() { - var _gthis = this; - while((this._bozo.x + flixel_FlxG.width) * 1.3 > this._pontaDireitaCenario) { - this._pontaDireitaCenario += 32; - if(BozoRunGameState.random.int(0,20) / 20 == 0) { - var Path = this._arrayLivros[BozoRunGameState.random.int(0,5)]; - var group = this._books; - var isSolid = true; - var isMovable = true; - if(isMovable == null) { - isMovable = true; - } - if(isSolid == null) { - isSolid = true; - } - var obj = new AssetLoader(null,null,Path,45,55); - obj.set_x(this._bozo.x + flixel_FlxG.width + BozoRunGameState.random.int(300,350)); - obj.set_y(BozoRunGameState.random.int(140,250)); - obj.set_solid(isSolid); - obj.set_immovable(isMovable); - this.add(obj); - group.add(obj); - } - if(BozoRunGameState.random.int(0,50) / 50 == 0) { - var group1 = this._oranges; - var isSolid1 = true; - var isMovable1 = false; - if(isMovable1 == null) { - isMovable1 = true; - } - if(isSolid1 == null) { - isSolid1 = true; - } - var obj1 = new AssetLoader(null,null,"assets/images/laranja.png",23,23); - obj1.set_x(this._bozo.x + flixel_FlxG.width + BozoRunGameState.random.int(300,350)); - obj1.set_y(BozoRunGameState.random.int(140,250)); - obj1.set_solid(isSolid1); - obj1.set_immovable(isMovable1); - this.add(obj1); - group1.add(obj1); - } - this._change = true; - this._books.group.forEach(function(book) { - if(book.x < _gthis._bozo.x - 35) { - book.destroy(); - } - return; - },false); - this._oranges.group.forEach(function(orange) { - if(orange.x < _gthis._bozo.x - 35) { - orange.destroy(); - } - return; - },false); - } - } - ,setObjAndAdd2Group: function(Path,width,height,group,isSolid,isMovable) { - if(isMovable == null) { - isMovable = true; - } - if(isSolid == null) { - isSolid = true; - } - var obj = new AssetLoader(null,null,Path,width,height); - obj.set_x(this._bozo.x + flixel_FlxG.width + BozoRunGameState.random.int(300,350)); - obj.set_y(BozoRunGameState.random.int(140,250)); - obj.set_solid(isSolid); - obj.set_immovable(isMovable); - this.add(obj); - group.add(obj); - } - ,makeBozoObjects: function(wide,high) { - if(high == null) { - high = 0; - } - if(wide == null) { - wide = 0; - } - this._pontaDireitaCenario += 32; - if(BozoRunGameState.random.int(0,20) / 20 == 0) { - var Path = this._arrayLivros[BozoRunGameState.random.int(0,5)]; - var group = this._books; - var isSolid = true; - var isMovable = true; - if(isMovable == null) { - isMovable = true; - } - if(isSolid == null) { - isSolid = true; - } - var obj = new AssetLoader(null,null,Path,45,55); - obj.set_x(this._bozo.x + flixel_FlxG.width + BozoRunGameState.random.int(300,350)); - obj.set_y(BozoRunGameState.random.int(140,250)); - obj.set_solid(isSolid); - obj.set_immovable(isMovable); - this.add(obj); - group.add(obj); - } - if(BozoRunGameState.random.int(0,50) / 50 == 0) { - var group1 = this._oranges; - var isSolid1 = true; - var isMovable1 = false; - if(isMovable1 == null) { - isMovable1 = true; - } - if(isSolid1 == null) { - isSolid1 = true; - } - var obj1 = new AssetLoader(null,null,"assets/images/laranja.png",23,23); - obj1.set_x(this._bozo.x + flixel_FlxG.width + BozoRunGameState.random.int(300,350)); - obj1.set_y(BozoRunGameState.random.int(140,250)); - obj1.set_solid(isSolid1); - obj1.set_immovable(isMovable1); - this.add(obj1); - group1.add(obj1); - } - this._change = true; - } - ,playerAnimation: function() { - if(this._bozo.velocity.x == 0) { - this._bozo.animation.play("morrendo"); - } else if(this._playJump) { - this._bozo.animation.play("pulando"); - } else if(this._bozo.velocity.y != 0) { - this._bozo.animation.play("caindo"); - } else { - this._bozo.animation.play("fugindo"); - } - } - ,configuraAnimacoes: function() { - this._bozo.animation.add("fugindo",[3,4,5,6,7,8,9,10,11,12,13],30,true); - this._bozo.animation.add("pulando",[15,14],7,false); - this._bozo.animation.add("caindo",[16,17],7,false); - this._bozo.animation.add("morrendo",[22,23],15,false); - } - ,sfxDie: function() { - var _gthis = this; - if(this._sfxDie) { - flixel_FlxG.sound.play("assets/sounds/goblin-9.ogg"); - this._sfxDie = false; - var timerPraReiniciar = new haxe_Timer(500); - timerPraReiniciar.run = function() { - if(_gthis._livesTotal > 0) { - var _gthis1 = _gthis; - _gthis._jump = -1; - _gthis._playJump = true; - _gthis._jumpPressed = false; - _gthis._sfxDie = true; - _gthis._bozo.setPosition(_gthis._record * 16,0); - _gthis._bozo.drag.set_x(100); - _gthis._bozo.velocity.set(0,0); - _gthis._bozo.maxVelocity.set(200,1400); - _gthis._bozo.acceleration.set(120,1400); - _gthis._bozo.animation.add("fugindo",[3,4,5,6,7,8,9,10,11,12,13],30,true); - _gthis._bozo.animation.add("pulando",[15,14],7,false); - _gthis._bozo.animation.add("caindo",[16,17],7,false); - _gthis._bozo.animation.add("morrendo",[22,23],15,false); - _gthis._ghost.set_x(_gthis._bozo.x - 3.2 + flixel_FlxG.width * .5); - _gthis._piscando = true; - var _timerPiscando = new haxe_Timer(3000); - _timerPiscando.run = function() { - _gthis1._piscando = false; - _gthis1._bozo.set_visible(true); - _timerPiscando.stop(); - return; - }; - } - timerPraReiniciar.stop(); - return; - }; - } - } - ,destroy: function() { - this._bozo.destroy(); - this._live0.destroy(); - this._live1.destroy(); - this._live2.destroy(); - this._laranja1.destroy(); - this._laranja2.destroy(); - this._laranja3.destroy(); - this._ghost.destroy(); - this._fundoCeu.destroy(); - this._fundoCenario.destroy(); - this._floor.destroy(); - this._bgImgGrp.destroy(); - this._collisions.destroy(); - this._books.destroy(); - this._oranges.destroy(); - this._pausarButton.destroy(); - this._voltarButton.destroy(); - this._scoreText.destroy(); - flixel_FlxState.prototype.destroy.call(this); - } - ,__class__: BozoRunGameState -}); -var ColetivaGameState = function(MaxSize) { - this.hasMascara = false; - flixel_FlxState.call(this,MaxSize); -}; -$hxClasses["ColetivaGameState"] = ColetivaGameState; -ColetivaGameState.__name__ = "ColetivaGameState"; -ColetivaGameState.__super__ = flixel_FlxState; -ColetivaGameState.prototype = $extend(flixel_FlxState.prototype,{ - moro: null - ,bozo: null - ,gueds: null - ,mic1: null - ,mic2: null - ,mic3: null - ,copo1: null - ,copo2: null - ,mesaColetiva: null - ,fundoColetiva: null - ,vs: null - ,BtnRun: null - ,BtnMascara: null - ,hasMascara: null - ,create: function() { - var division = flixel_FlxG.height / 3 | 0; - flixel_FlxG.mouse.set_visible(false); - this.fundoColetiva = new flixel_FlxSprite(); - this.fundoColetiva.loadGraphic("assets/images/coletiva/backgroundbozo.png",false,350,300); - this.add(this.fundoColetiva); - this.gueds = new flixel_FlxSprite(); - this.gueds.loadGraphic("assets/images/coletiva/guedstile.png",true,118,117); - this.gueds.animation.add("idle",[0,1],4,true); - this.gueds.animation.add("idle_mascara",[6,7],4,true); - this.add(this.gueds); - this.gueds.animation.play("idle"); - this.gueds.setPosition(180,90); - this.moro = new flixel_FlxSprite(); - this.moro.loadGraphic("assets/images/coletiva/morotile.png",true,120,120); - this.moro.animation.add("idle",[2,3],4,true); - this.moro.animation.add("idle_mascara",[6,7],4,true); - this.add(this.moro); - this.moro.animation.play("idle"); - this.moro.setPosition(-20,90); - this.mesaColetiva = new flixel_FlxSprite(); - this.mesaColetiva.loadGraphic("assets/images/coletiva/foregroundbozo.png",false,350,350); - this.add(this.mesaColetiva); - this.mesaColetiva.setPosition(-30,-20); - this.bozo = new flixel_FlxSprite(); - this.bozo.loadGraphic("assets/images/coletiva/bozotile.png",true,150,150); - this.bozo.animation.add("idle",[0,1],4,true); - this.bozo.animation.add("idle_mascara",[10,11],4,true); - this.bozo.animation.add("idle_mascara_centro",[12,13],4,true); - this.bozo.animation.play("idle"); - this.add(this.bozo); - this.bozo.setPosition(70,90); - this.mic1 = new flixel_FlxSprite(); - this.mic1.loadGraphic("assets/images/coletiva/microfone.png",false,23,58); - this.add(this.mic1); - this.mic1.setPosition(-30,170); - this.mic2 = new flixel_FlxSprite(); - this.mic2.loadGraphic("assets/images/coletiva/microfone.png",false,23,58); - this.add(this.mic2); - this.mic2.setPosition(30,170); - this.mic3 = new flixel_FlxSprite(); - this.mic3.loadGraphic("assets/images/coletiva/microfone.png",false,23,58); - this.add(this.mic3); - this.mic3.setPosition(130,170); - this.BtnRun = new flixel_ui_FlxButton(10,division * 1.5 + 40,"",$bind(this,this.startGame)); - this.BtnRun.label.set_size(20); - this.BtnRun.loadGraphic("assets/images/botoes/fugir/fugir.png",true,60,36); - this.BtnRun.scale.set(1.6,1.1); - this.BtnRun.set_x(200); - var _g = this.BtnRun; - _g.set_y(_g.y + 25); - this.add(this.BtnRun); - this.BtnMascara = new flixel_ui_FlxButton(10,division * 1.5 + 40,"",$bind(this,this.toogleMascara)); - this.BtnMascara.label.set_size(15); - this.BtnMascara.loadGraphic("assets/images/botoes/mascara/mascaraBotao.png",true,60,36); - this.BtnMascara.scale.set(1.9,1.1); - this.BtnMascara.set_x(35); - var _g1 = this.BtnMascara; - _g1.set_y(_g1.y + 25); - this.add(this.BtnMascara); - } - ,toogleMascara: function() { - this.hasMascara = !this.hasMascara; - if(this.hasMascara) { - this.bozo.animation.play("idle_mascara"); - this.moro.animation.play("idle_mascara"); - this.gueds.animation.play("idle_mascara"); - } else { - this.bozo.animation.play("idle"); - this.moro.animation.play("idle"); - this.gueds.animation.play("idle"); - } - } - ,startGame: function() { - var nextState = new MainMenuState(); - if(flixel_FlxG.game._state.switchTo(nextState)) { - flixel_FlxG.game._requestedState = nextState; - } - } - ,destroy: function() { - this.fundoColetiva.destroy(); - this.BtnRun.destroy(); - this.fundoColetiva = null; - this.BtnRun = null; - flixel_FlxState.prototype.destroy.call(this); - } - ,__class__: ColetivaGameState -}); -var EReg = function(r,opt) { - this.r = new RegExp(r,opt.split("u").join("")); -}; -$hxClasses["EReg"] = EReg; -EReg.__name__ = "EReg"; -EReg.prototype = { - r: null - ,match: function(s) { - if(this.r.global) { - this.r.lastIndex = 0; - } - this.r.m = this.r.exec(s); - this.r.s = s; - return this.r.m != null; - } - ,matched: function(n) { - if(this.r.m != null && n >= 0 && n < this.r.m.length) { - return this.r.m[n]; - } else { - throw new js__$Boot_HaxeError("EReg::matched"); - } - } - ,matchedRight: function() { - if(this.r.m == null) { - throw new js__$Boot_HaxeError("No string matched"); - } - var sz = this.r.m.index + this.r.m[0].length; - return HxOverrides.substr(this.r.s,sz,this.r.s.length - sz); - } - ,matchedPos: function() { - if(this.r.m == null) { - throw new js__$Boot_HaxeError("No string matched"); - } - return { pos : this.r.m.index, len : this.r.m[0].length}; - } - ,matchSub: function(s,pos,len) { - if(len == null) { - len = -1; - } - if(this.r.global) { - this.r.lastIndex = pos; - this.r.m = this.r.exec(len < 0 ? s : HxOverrides.substr(s,0,pos + len)); - var b = this.r.m != null; - if(b) { - this.r.s = s; - } - return b; - } else { - var b1 = this.match(len < 0 ? HxOverrides.substr(s,pos,null) : HxOverrides.substr(s,pos,len)); - if(b1) { - this.r.s = s; - this.r.m.index += pos; - } - return b1; - } - } - ,split: function(s) { - var d = "#__delim__#"; - return s.replace(this.r,d).split(d); - } - ,map: function(s,f) { - var offset = 0; - var buf_b = ""; - while(true) { - if(offset >= s.length) { - break; - } else if(!this.matchSub(s,offset)) { - buf_b += Std.string(HxOverrides.substr(s,offset,null)); - break; - } - var p = this.matchedPos(); - buf_b += Std.string(HxOverrides.substr(s,offset,p.pos - offset)); - buf_b += Std.string(f(this)); - if(p.len == 0) { - buf_b += Std.string(HxOverrides.substr(s,p.pos,1)); - offset = p.pos + 1; - } else { - offset = p.pos + p.len; - } - if(!this.r.global) { - break; - } - } - if(!this.r.global && offset > 0 && offset < s.length) { - buf_b += Std.string(HxOverrides.substr(s,offset,null)); - } - return buf_b; - } - ,__class__: EReg -}; -var flixel_FlxGame = function(GameWidth,GameHeight,InitialState,Zoom,UpdateFramerate,DrawFramerate,SkipSplash,StartFullscreen) { - if(StartFullscreen == null) { - StartFullscreen = false; - } - if(SkipSplash == null) { - SkipSplash = false; - } - if(DrawFramerate == null) { - DrawFramerate = 60; - } - if(UpdateFramerate == null) { - UpdateFramerate = 60; - } - if(Zoom == null) { - Zoom = 1; - } - if(GameHeight == null) { - GameHeight = 0; - } - if(GameWidth == null) { - GameWidth = 0; - } - this._resetGame = false; - this._skipSplash = false; - this._customFocusLostScreen = flixel_system_ui_FlxFocusLostScreen; - this._customSoundTray = flixel_system_ui_FlxSoundTray; - this._lostFocus = false; - this._startTime = 0; - this._total = 0; - this._gameJustStarted = false; - this.filtersEnabled = true; - this.ticks = 0; - this.focusLostFramerate = 10; - openfl_display_Sprite.call(this); - this._inputContainer = new openfl_display_Sprite(); - if(GameWidth == 0) { - GameWidth = openfl_Lib.get_current().stage.stageWidth; - } - if(GameHeight == 0) { - GameHeight = openfl_Lib.get_current().stage.stageHeight; - } - flixel_FlxG.init(this,GameWidth,GameHeight,Zoom); - flixel_FlxG.set_updateFramerate(UpdateFramerate); - flixel_FlxG.set_drawFramerate(DrawFramerate); - this._accumulator = this._stepMS; - this._skipSplash = SkipSplash; - this._initialState = InitialState == null ? flixel_FlxState : InitialState; - this.addEventListener("addedToStage",$bind(this,this.create)); -}; -$hxClasses["flixel.FlxGame"] = flixel_FlxGame; -flixel_FlxGame.__name__ = "flixel.FlxGame"; -flixel_FlxGame.__super__ = openfl_display_Sprite; -flixel_FlxGame.prototype = $extend(openfl_display_Sprite.prototype,{ - focusLostFramerate: null - ,soundTray: null - ,ticks: null - ,filtersEnabled: null - ,_gameJustStarted: null - ,_initialState: null - ,_state: null - ,_total: null - ,_startTime: null - ,_accumulator: null - ,_elapsedMS: null - ,_stepMS: null - ,_stepSeconds: null - ,_maxAccumulation: null - ,_lostFocus: null - ,_filters: null - ,_focusLostScreen: null - ,_inputContainer: null - ,_customSoundTray: null - ,_customFocusLostScreen: null - ,_skipSplash: null - ,_requestedState: null - ,_resetGame: null - ,setFilters: function(filters) { - this._filters = filters; - } - ,create: function(_) { - if(this.stage == null) { - return; - } - this.removeEventListener("addedToStage",$bind(this,this.create)); - this._startTime = this.getTimer(); - this._total = this.getTimer() - this._startTime; - this.stage.set_scaleMode(2); - this.stage.align = 6; - this.stage.set_frameRate(flixel_FlxG.drawFramerate); - this.addChild(this._inputContainer); - this.soundTray = Type.createInstance(this._customSoundTray,[]); - this.addChild(this.soundTray); - this._focusLostScreen = Type.createInstance(this._customFocusLostScreen,[]); - this.addChild(this._focusLostScreen); - this.stage.addEventListener("deactivate",$bind(this,this.onFocusLost)); - this.stage.addEventListener("activate",$bind(this,this.onFocus)); - flixel_FlxG.signals.preGameReset.dispatch(); - if(this._skipSplash || flixel_system_FlxSplash.nextState != null) { - this._requestedState = Type.createInstance(this._initialState,[]); - if(flixel_system_FlxSplash.nextState == null) { - this._gameJustStarted = true; - } - } else { - flixel_system_FlxSplash.nextState = this._initialState; - this._requestedState = new flixel_system_FlxSplash(); - this._skipSplash = true; - } - flixel_FlxG.reset(); - flixel_FlxG.signals.postGameReset.dispatch(); - this.switchState(); - var tmp = flixel_FlxG.updateFramerate < flixel_FlxG.drawFramerate; - this.stage.addEventListener("enterFrame",$bind(this,this.onEnterFrame)); - this.stage.addEventListener("resize",$bind(this,this.onResize)); - this.resizeGame(openfl_Lib.get_current().stage.stageWidth,openfl_Lib.get_current().stage.stageHeight); - openfl_utils_Assets.addEventListener("change",($_=flixel_FlxG.bitmap,$bind($_,$_.onAssetsReload))); - } - ,onFocus: function(_) { - this._lostFocus = false; - flixel_FlxG.signals.focusGained.dispatch(); - this._state.onFocus(); - if(!flixel_FlxG.autoPause) { - return; - } - if(this._focusLostScreen != null) { - this._focusLostScreen.set_visible(false); - } - this.stage.set_frameRate(flixel_FlxG.drawFramerate); - flixel_FlxG.sound.onFocus(); - var _g = 0; - var _g1 = flixel_FlxG.inputs.list; - while(_g < _g1.length) { - var input = _g1[_g]; - ++_g; - input.onFocus(); - } - } - ,onFocusLost: function(event) { - this._lostFocus = true; - flixel_FlxG.signals.focusLost.dispatch(); - this._state.onFocusLost(); - if(!flixel_FlxG.autoPause) { - return; - } - if(this._focusLostScreen != null) { - this._focusLostScreen.set_visible(true); - } - this.stage.set_frameRate(this.focusLostFramerate); - flixel_FlxG.sound.onFocusLost(); - var _g = 0; - var _g1 = flixel_FlxG.inputs.list; - while(_g < _g1.length) { - var input = _g1[_g]; - ++_g; - input.onFocusLost(); - } - } - ,onResize: function(_) { - var width = openfl_Lib.get_current().stage.stageWidth; - var height = openfl_Lib.get_current().stage.stageHeight; - if(flixel_FlxG.renderTile) { - flixel_FlxG.bitmap.onContext(); - } - this.resizeGame(width,height); - } - ,resizeGame: function(width,height) { - flixel_FlxG.scaleMode.onMeasure(width,height); - this._state.onResize(width,height); - flixel_FlxG.cameras.resize(); - flixel_FlxG.signals.gameResized.dispatch(width,height); - if(this._focusLostScreen != null) { - this._focusLostScreen.draw(); - } - if(this.soundTray != null) { - this.soundTray.screenCenter(); - } - } - ,onEnterFrame: function(_) { - this.ticks = this.getTimer() - this._startTime; - this._elapsedMS = this.ticks - this._total; - this._total = this.ticks; - if(this.soundTray != null && this.soundTray.active) { - this.soundTray.update(this._elapsedMS); - } - if(!this._lostFocus || !flixel_FlxG.autoPause) { - if(flixel_FlxG.vcr.paused) { - if(flixel_FlxG.vcr.stepRequested) { - flixel_FlxG.vcr.stepRequested = false; - } else if(this._state == this._requestedState) { - return; - } - } - if(flixel_FlxG.fixedTimestep) { - this._accumulator += this._elapsedMS; - this._accumulator = this._accumulator > this._maxAccumulation ? this._maxAccumulation : this._accumulator; - while(this._accumulator >= this._stepMS) { - this.step(); - this._accumulator -= this._stepMS; - } - } else { - this.step(); - } - this.draw(); - } - } - ,resetGame: function() { - flixel_FlxG.signals.preGameReset.dispatch(); - if(this._skipSplash || flixel_system_FlxSplash.nextState != null) { - this._requestedState = Type.createInstance(this._initialState,[]); - if(flixel_system_FlxSplash.nextState == null) { - this._gameJustStarted = true; - } - } else { - flixel_system_FlxSplash.nextState = this._initialState; - this._requestedState = new flixel_system_FlxSplash(); - this._skipSplash = true; - } - flixel_FlxG.reset(); - flixel_FlxG.signals.postGameReset.dispatch(); - } - ,switchState: function() { - flixel_FlxG.cameras.reset(); - flixel_FlxG.inputs.onStateSwitch(); - flixel_FlxG.sound.destroy(); - flixel_FlxG.signals.preStateSwitch.dispatch(); - if(this._state != null) { - this._state.destroy(); - } - flixel_FlxG.bitmap.clearCache(); - this._state = this._requestedState; - if(this._gameJustStarted) { - flixel_FlxG.signals.preGameStart.dispatch(); - } - flixel_FlxG.signals.preStateCreate.dispatch(this._state); - this._state.create(); - if(this._gameJustStarted) { - this.gameStart(); - } - flixel_FlxG.signals.postStateSwitch.dispatch(); - } - ,gameStart: function() { - flixel_FlxG.signals.postGameStart.dispatch(); - this._gameJustStarted = false; - } - ,step: function() { - if(this._resetGame) { - flixel_FlxG.signals.preGameReset.dispatch(); - if(this._skipSplash || flixel_system_FlxSplash.nextState != null) { - this._requestedState = Type.createInstance(this._initialState,[]); - if(flixel_system_FlxSplash.nextState == null) { - this._gameJustStarted = true; - } - } else { - flixel_system_FlxSplash.nextState = this._initialState; - this._requestedState = new flixel_system_FlxSplash(); - this._skipSplash = true; - } - flixel_FlxG.reset(); - flixel_FlxG.signals.postGameReset.dispatch(); - this._resetGame = false; - } - this.handleReplayRequests(); - this.update(); - } - ,handleReplayRequests: function() { - } - ,update: function() { - if(!this._state.active || !this._state.exists) { - return; - } - if(this._state != this._requestedState) { - this.switchState(); - } - this.updateElapsed(); - flixel_FlxG.signals.preUpdate.dispatch(); - this.updateInput(); - flixel_FlxG.sound.update(flixel_FlxG.elapsed); - var elapsed = flixel_FlxG.elapsed; - var _g = 0; - var _g1 = flixel_FlxG.plugins.list; - while(_g < _g1.length) { - var plugin = _g1[_g]; - ++_g; - if(plugin.exists && plugin.active) { - plugin.update(elapsed); - } - } - this._state.tryUpdate(flixel_FlxG.elapsed); - var elapsed1 = flixel_FlxG.elapsed; - var _g2 = 0; - var _g11 = flixel_FlxG.cameras.list; - while(_g2 < _g11.length) { - var camera = _g11[_g2]; - ++_g2; - if(camera != null && camera.exists && camera.active) { - camera.update(elapsed1); - } - } - flixel_FlxG.signals.postUpdate.dispatch(); - flixel_util_FlxArrayUtil.clearArray(flixel_FlxG.swipes); - this.set_filters(this.filtersEnabled ? this._filters : null); - } - ,updateElapsed: function() { - if(flixel_FlxG.fixedTimestep) { - flixel_FlxG.elapsed = flixel_FlxG.timeScale * this._stepSeconds; - } else { - flixel_FlxG.elapsed = flixel_FlxG.timeScale * (this._elapsedMS / 1000); - var max = flixel_FlxG.maxElapsed * flixel_FlxG.timeScale; - if(flixel_FlxG.elapsed > max) { - flixel_FlxG.elapsed = max; - } - } - } - ,updateInput: function() { - var _g = 0; - var _g1 = flixel_FlxG.inputs.list; - while(_g < _g1.length) { - var input = _g1[_g]; - ++_g; - input.update(); - } - } - ,draw: function() { - if(!this._state.visible || !this._state.exists) { - return; - } - flixel_FlxG.signals.preDraw.dispatch(); - if(flixel_FlxG.renderTile) { - flixel_graphics_tile_FlxDrawBaseItem.drawCalls = 0; - } - var _this = flixel_FlxG.cameras; - var _g = 0; - var _g1 = _this.list; - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - if(camera == null || !camera.exists || !camera.visible) { - continue; - } - if(flixel_FlxG.renderBlit) { - camera.checkResize(); - if(_this.useBufferLocking) { - camera.buffer.lock(); - } - } - if(flixel_FlxG.renderTile) { - camera.clearDrawStack(); - camera.canvas.get_graphics().clear(); - } - if(flixel_FlxG.renderBlit) { - camera.fill(camera.bgColor,camera.useBgAlphaBlending); - camera.screen.dirty = true; - } else { - camera.fill(camera.bgColor & 16777215,camera.useBgAlphaBlending,(camera.bgColor >> 24 & 255) / 255); - } - } - var _g2 = 0; - var _g11 = flixel_FlxG.plugins.list; - while(_g2 < _g11.length) { - var plugin = _g11[_g2]; - ++_g2; - if(plugin.exists && plugin.visible) { - plugin.draw(); - } - } - this._state.draw(); - if(flixel_FlxG.renderTile) { - if(flixel_FlxG.renderTile) { - var _g3 = 0; - var _g12 = flixel_FlxG.cameras.list; - while(_g3 < _g12.length) { - var camera1 = _g12[_g3]; - ++_g3; - if(camera1 != null && camera1.exists && camera1.visible) { - camera1.render(); - } - } - } - } - var _this1 = flixel_FlxG.cameras; - var _g4 = 0; - var _g13 = _this1.list; - while(_g4 < _g13.length) { - var camera2 = _g13[_g4]; - ++_g4; - if(camera2 == null || !camera2.exists || !camera2.visible) { - continue; - } - camera2.drawFX(); - if(flixel_FlxG.renderBlit) { - if(_this1.useBufferLocking) { - camera2.buffer.unlock(); - } - camera2.screen.dirty = true; - } - } - flixel_FlxG.signals.postDraw.dispatch(); - } - ,getTicks: function() { - return this.getTimer() - this._startTime; - } - ,getTimer: function() { - return openfl_Lib.getTimer(); - } - ,__class__: flixel_FlxGame -}); -var GameClass = function() { - var gameWidth = 300; - var gameHeight = 300; - var stageWidth = openfl_Lib.get_current().stage.stageWidth; - var stageHeight = openfl_Lib.get_current().stage.stageHeight; - var ratioX = stageWidth / gameWidth; - var ratioY = stageHeight / gameHeight; - var zoom = Math.min(ratioX,ratioY); - gameWidth = Math.ceil(stageWidth / zoom); - gameHeight = Math.ceil(stageHeight / zoom); - flixel_FlxGame.call(this,gameWidth,gameHeight,MainMenuState,zoom,60,60,true,true); -}; -$hxClasses["GameClass"] = GameClass; -GameClass.__name__ = "GameClass"; -GameClass.__super__ = flixel_FlxGame; -GameClass.prototype = $extend(flixel_FlxGame.prototype,{ - __class__: GameClass -}); -var HxOverrides = function() { }; -$hxClasses["HxOverrides"] = HxOverrides; -HxOverrides.__name__ = "HxOverrides"; -HxOverrides.strDate = function(s) { - switch(s.length) { - case 8: - var k = s.split(":"); - var d = new Date(); - d["setTime"](0); - d["setUTCHours"](k[0]); - d["setUTCMinutes"](k[1]); - d["setUTCSeconds"](k[2]); - return d; - case 10: - var k1 = s.split("-"); - return new Date(k1[0],k1[1] - 1,k1[2],0,0,0); - case 19: - var k2 = s.split(" "); - var y = k2[0].split("-"); - var t = k2[1].split(":"); - return new Date(y[0],y[1] - 1,y[2],t[0],t[1],t[2]); - default: - throw new js__$Boot_HaxeError("Invalid date format : " + s); - } -}; -HxOverrides.cca = function(s,index) { - var x = s.charCodeAt(index); - if(x != x) { - return undefined; - } - return x; -}; -HxOverrides.substr = function(s,pos,len) { - if(len == null) { - len = s.length; - } else if(len < 0) { - if(pos == 0) { - len = s.length + len; - } else { - return ""; - } - } - return s.substr(pos,len); -}; -HxOverrides.remove = function(a,obj) { - var i = a.indexOf(obj); - if(i == -1) { - return false; - } - a.splice(i,1); - return true; -}; -HxOverrides.iter = function(a) { - return { cur : 0, arr : a, hasNext : function() { - return this.cur < this.arr.length; - }, next : function() { - return this.arr[this.cur++]; - }}; -}; -var InaraChar = function(Char,posX,posY,scaleX,scaleY) { - if(posY == null) { - posY = 0; - } - if(posX == null) { - posX = 0; - } - this._changed = true; - flixel_FlxSprite.call(this,posX,posY); - switch(Char) { - case " ": - this.setCharWidthHeightPosition("assets/images/font/i.png",Math.ceil(15 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "!": - this.setCharWidthHeightPosition("assets/images/font/exclamacao.png",Math.ceil(11 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "%": - this.setCharWidthHeightPosition("assets/images/font/porcentagem.png",Math.ceil(26 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "*": - this.setCharWidthHeightPosition("assets/images/font/asterisco.png",Math.ceil(15 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "+": - this.setCharWidthHeightPosition("assets/images/font/mais.png",Math.ceil(18 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case ",": - this.setCharWidthHeightPosition("assets/images/font/virgula.png",Math.ceil(8 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "-": - this.setCharWidthHeightPosition("assets/images/font/-.png",Math.ceil(18 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "/": - this.setCharWidthHeightPosition("assets/images/font/barra.png",Math.ceil(29 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "0": - this.setCharWidthHeightPosition("assets/images/font/num_0.png",Math.ceil(22 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "1": - this.setCharWidthHeightPosition("assets/images/font/num_1.png",Math.ceil(12 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "2": - this.setCharWidthHeightPosition("assets/images/font/num_2.png",Math.ceil(23 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "3": - this.setCharWidthHeightPosition("assets/images/font/num_3.png",Math.ceil(24 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "4": - this.setCharWidthHeightPosition("assets/images/font/num_4.png",Math.ceil(20 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "5": - this.setCharWidthHeightPosition("assets/images/font/num_5.png",Math.ceil(23 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "6": - this.setCharWidthHeightPosition("assets/images/font/num_6.png",Math.ceil(23 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "7": - this.setCharWidthHeightPosition("assets/images/font/num_7.png",Math.ceil(25 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "8": - this.setCharWidthHeightPosition("assets/images/font/num_8.png",Math.ceil(27 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "9": - this.setCharWidthHeightPosition("assets/images/font/num_9.png",Math.ceil(25 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case ":": - this.setCharWidthHeightPosition("assets/images/font/dois_pontos.png",Math.ceil(7 * scaleX),Math.ceil(15 * scaleY),posX,posY); - break; - case "?": - this.setCharWidthHeightPosition("assets/images/font/interrogacao.png",Math.ceil(23 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "a": - this.setCharWidthHeightPosition("assets/images/font/a.png",Math.ceil(25 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "b": - this.setCharWidthHeightPosition("assets/images/font/b.png",Math.ceil(20 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "c": - this.setCharWidthHeightPosition("assets/images/font/c.png",Math.ceil(22 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "d": - this.setCharWidthHeightPosition("assets/images/font/d.png",Math.ceil(23 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "e": - this.setCharWidthHeightPosition("assets/images/font/e.png",Math.ceil(22 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "f": - this.setCharWidthHeightPosition("assets/images/font/f.png",Math.ceil(22 * scaleX),Math.ceil(26 * scaleY),posX,posY); - break; - case "g": - this.setCharWidthHeightPosition("assets/images/font/g.png",Math.ceil(22 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "h": - this.setCharWidthHeightPosition("assets/images/font/h.png",Math.ceil(25 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "i": - this.setCharWidthHeightPosition("assets/images/font/i.png",Math.ceil(15 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "j": - this.setCharWidthHeightPosition("assets/images/font/j.png",Math.ceil(18 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "k": - this.setCharWidthHeightPosition("assets/images/font/k.png",Math.ceil(20 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "l": - this.setCharWidthHeightPosition("assets/images/font/l.png",Math.ceil(22 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "m": - this.setCharWidthHeightPosition("assets/images/font/m.png",Math.ceil(37 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "n": - this.setCharWidthHeightPosition("assets/images/font/n.png",Math.ceil(32 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "o": - this.setCharWidthHeightPosition("assets/images/font/o.png",Math.ceil(22 * scaleX),Math.ceil(28 * scaleY),posX,posY); - break; - case "p": - this.setCharWidthHeightPosition("assets/images/font/p.png",Math.ceil(24 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "q": - this.setCharWidthHeightPosition("assets/images/font/q.png",Math.ceil(24 * scaleX),Math.ceil(26 * scaleY),posX,posY); - break; - case "r": - this.setCharWidthHeightPosition("assets/images/font/r.png",Math.ceil(24 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "s": - this.setCharWidthHeightPosition("assets/images/font/s.png",Math.ceil(22 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "t": - this.setCharWidthHeightPosition("assets/images/font/t.png",Math.ceil(24 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "u": - this.setCharWidthHeightPosition("assets/images/font/u.png",Math.ceil(22 * scaleX),Math.ceil(27 * scaleY),posX,posY); - break; - case "v": - this.setCharWidthHeightPosition("assets/images/font/v.png",Math.ceil(27 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "w": - this.setCharWidthHeightPosition("assets/images/font/w.png",Math.ceil(41 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "x": - this.setCharWidthHeightPosition("assets/images/font/x.png",Math.ceil(26 * scaleX),Math.ceil(26 * scaleY),posX,posY); - break; - case "y": - this.setCharWidthHeightPosition("assets/images/font/y.png",Math.ceil(25 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "z": - this.setCharWidthHeightPosition("assets/images/font/z.png",Math.ceil(27 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "~": - this.setCharWidthHeightPosition("assets/images/font/til.png",Math.ceil(15 * scaleX),Math.ceil(6 * scaleY),posX,posY); - break; - case "¨": - this.setCharWidthHeightPosition("assets/images/font/trema.png",Math.ceil(15 * scaleX),Math.ceil(7 * scaleY),posX,posY); - break; - case "´": - this.setCharWidthHeightPosition("assets/images/font/agudo.png",Math.ceil(11 * scaleX),Math.ceil(10 * scaleY),posX,posY); - break; - case "á": - this.setCharWidthHeightPosition("assets/images/font/a_agudo.png",Math.ceil(25 * scaleX),Math.ceil(27 * scaleY),posX,posY); - break; - case "â": - this.setCharWidthHeightPosition("assets/images/font/a_circunflexo.png",Math.ceil(25 * scaleX),Math.ceil(30 * scaleY),posX,posY); - break; - case "ã": - this.setCharWidthHeightPosition("assets/images/font/a_til.png",Math.ceil(25 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "ä": - this.setCharWidthHeightPosition("assets/images/font/a_trema.png",Math.ceil(25 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "ç": - this.setCharWidthHeightPosition("assets/images/font/c_cedilha.png",Math.ceil(22 * scaleX),Math.ceil(26 * scaleY),posX,posY); - break; - case "é": - this.setCharWidthHeightPosition("assets/images/font/e_agudo.png",Math.ceil(22 * scaleX),Math.ceil(27 * scaleY),posX,posY); - break; - case "ê": - this.setCharWidthHeightPosition("assets/images/font/e_circunflexo.png",Math.ceil(22 * scaleX),Math.ceil(27 * scaleY),posX,posY); - break; - case "ë": - this.setCharWidthHeightPosition("assets/images/font/e_trema.png",Math.ceil(22 * scaleX),Math.ceil(27 * scaleY),posX,posY); - break; - case "í": - this.setCharWidthHeightPosition("assets/images/font/i_agudo.png",Math.ceil(15 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "ï": - this.setCharWidthHeightPosition("assets/images/font/i_trema.png",Math.ceil(15 * scaleX),Math.ceil(25 * scaleY),posX,posY); - break; - case "ô": - this.setCharWidthHeightPosition("assets/images/font/o_circunflexo.png",Math.ceil(22 * scaleX),Math.ceil(28 * scaleY),posX,posY); - break; - case "õ": - this.setCharWidthHeightPosition("assets/images/font/o_til.png",Math.ceil(22 * scaleX),Math.ceil(28 * scaleY),posX,posY); - break; - case "ö": - this.setCharWidthHeightPosition("assets/images/font/o_trema.png",Math.ceil(22 * scaleX),Math.ceil(28 * scaleY),posX,posY); - break; - case "ú": - this.setCharWidthHeightPosition("assets/images/font/u_agudo.png",Math.ceil(22 * scaleX),Math.ceil(27 * scaleY),posX,posY); - break; - case "ü": - this.setCharWidthHeightPosition("assets/images/font/u_trema.png",Math.ceil(22 * scaleX),Math.ceil(27 * scaleY),posX,posY); - break; - } - this.loadGraphic(this._char,false,this._width,this._height,true); - if(scaleX != 1 || scaleY != 1) { - this.scale.set(scaleX,scaleY); - } - if(Char == " ") { - this.set_visible(false); - } -}; -$hxClasses["InaraChar"] = InaraChar; -InaraChar.__name__ = "InaraChar"; -InaraChar.__super__ = flixel_FlxSprite; -InaraChar.prototype = $extend(flixel_FlxSprite.prototype,{ - _char: null - ,_width: null - ,_height: null - ,_posX: null - ,_posY: null - ,_changed: null - ,setCharWidthHeightPosition: function(c,w,h,x,y) { - this._char = c; - this._width = w; - this._height = h; - this._posX = x; - this._posY = y; - } - ,update: function(elapsed) { - if(this._changed) { - this.setPosition(this._posX,this._posY); - this._changed = false; - } - flixel_FlxSprite.prototype.update.call(this,elapsed); - } - ,__class__: InaraChar -}); -var InaraString = function(str,x,y,width,rightPad,bottomPad,scaleX,scaleY) { - if(scaleY == null) { - scaleY = 1; - } - if(scaleX == null) { - scaleX = 1; - } - var poolSize = str.length; - var maxHeightOfLine = 0; - var currentLineWidth = 0; - var currentLineCount = 0; - var currentLineY = 0; - this._chars = new flixel_group_FlxTypedSpriteGroup(x,y,poolSize); - this._x = x; - this._y = y; - var _g = 0; - var _g1 = poolSize; - while(_g < _g1) { - var i = _g++; - var _inaraChar = new InaraChar(str.charAt(i),this._x,this._y,scaleX,scaleY); - maxHeightOfLine = _inaraChar.get_height() > maxHeightOfLine ? _inaraChar.get_height() : maxHeightOfLine; - currentLineWidth += _inaraChar.get_width() * scaleX; - if(currentLineWidth + _inaraChar.get_width() * scaleX > width) { - this._x = x; - this._y = y + maxHeightOfLine + bottomPad + currentLineY; - currentLineWidth = 0; - currentLineY += maxHeightOfLine * scaleY; - maxHeightOfLine = 0; - } else { - this._x += _inaraChar.get_width() * scaleX + rightPad; - } - this._chars.add(_inaraChar); - } - flixel_FlxBasic.call(this); -}; -$hxClasses["InaraString"] = InaraString; -InaraString.__name__ = "InaraString"; -InaraString.__super__ = flixel_FlxBasic; -InaraString.prototype = $extend(flixel_FlxBasic.prototype,{ - _x: null - ,_y: null - ,_chars: null - ,__class__: InaraString -}); -var IntIterator = function(min,max) { - this.min = min; - this.max = max; -}; -$hxClasses["IntIterator"] = IntIterator; -IntIterator.__name__ = "IntIterator"; -IntIterator.prototype = { - min: null - ,max: null - ,hasNext: function() { - return this.min < this.max; - } - ,next: function() { - return this.min++; - } - ,__class__: IntIterator -}; -var Lambda = function() { }; -$hxClasses["Lambda"] = Lambda; -Lambda.__name__ = "Lambda"; -Lambda.array = function(it) { - var a = []; - var i = $getIterator(it); - while(i.hasNext()) { - var i1 = i.next(); - a.push(i1); - } - return a; -}; -var MainMenuState = function(MaxSize) { - this.paddingSide = (flixel_FlxG.width - 300) / 2; - this.multiplier = 1.0; - flixel_FlxState.call(this,MaxSize); -}; -$hxClasses["MainMenuState"] = MainMenuState; -MainMenuState.__name__ = "MainMenuState"; -MainMenuState.__super__ = flixel_FlxState; -MainMenuState.prototype = $extend(flixel_FlxState.prototype,{ - background: null - ,bozoEspirra: null - ,bozoRun: null - ,BtnRun: null - ,BtnColetiva: null - ,ceu: null - ,pato: null - ,aviao: null - ,pedestal: null - ,multiplier: null - ,stringTitulo: null - ,paddingSide: null - ,create: function() { - var _gthis = this; - flixel_FlxG.debugger.set_visible(true); - flixel_FlxG.camera.fade(-16777216,0.33,true); - flixel_FlxG.camera.set_antialiasing(true); - extension_eightsines_EsOrientation.setScreenOrientation(2); - var division = flixel_FlxG.height / 3 | 0; - flixel_FlxG.mouse.set_visible(true); - this.ceu = new flixel_FlxSprite().loadGraphic("assets/images/sky.png",false,301,300); - this.ceu.scale.set(0.995,1); - this.ceu.updateHitbox(); - var _g = this.ceu; - _g.set_y(_g.y - 70); - var _g1 = this.ceu; - _g1.set_x(_g1.x + this.paddingSide); - this.add(this.ceu); - this.aviao = new flixel_FlxSprite().loadGraphic("assets/images/backgrounds/aviao.png",true,86,17); - this.aviao.animation.add("voando",[0,1],10,true); - this.aviao.animation.play("voando"); - this.aviao.setPosition(0,20); - var _g2 = this.aviao; - _g2.set_x(_g2.x + this.paddingSide); - this.add(this.aviao); - this.background = new flixel_FlxSprite(); - this.background.loadGraphic("assets/images/backgrounds/senado_bg.png",true,300,300); - this.background.animation.add("idle",[0,1,2],3,true); - this.background.animation.play("idle"); - var _g3 = this.background; - _g3.set_x(_g3.x + this.paddingSide); - this.add(this.background); - this.pato = new flixel_FlxSprite().loadGraphic("assets/images/backgrounds/patin.png",false,30,29); - this.pato.setPosition(180,160); - this.pato._facingFlip.h[16] = { x : false, y : false}; - this.pato._facingFlip.h[1] = { x : true, y : false}; - this.pato.set_facing(1); - var _g4 = this.pato; - _g4.set_x(_g4.x + this.paddingSide); - this.add(this.pato); - this.bozoEspirra = new flixel_FlxSprite(); - this.bozoEspirra.loadGraphic("assets/images/coletiva/bozotile.png",true,150,150,true); - this.bozoEspirra.animation.add("idle",[12,13],4,true); - this.bozoEspirra.animation.play("idle"); - this.bozoEspirra.setPosition(0,150); - var _g5 = this.bozoEspirra; - _g5.set_x(_g5.x + this.paddingSide); - this.add(this.bozoEspirra); - this.bozoRun = new flixel_FlxSprite(); - this.bozoRun.loadGraphic("assets/images/Jair.png",true,104,122,true); - this.bozoRun.animation.add("arminha_com_a_mao",[20,19],4,true); - this.bozoRun.animation.play("arminha_com_a_mao"); - this.bozoRun.setPosition(180,160); - var _g6 = this.bozoRun; - _g6.set_x(_g6.x + this.paddingSide); - this.add(this.bozoRun); - this.pedestal = new flixel_FlxSprite().loadGraphic("assets/images/backgrounds/pedestal.png",false,12,102); - this.pedestal.setPosition(255,180); - var _g7 = this.pedestal; - _g7.set_x(_g7.x + this.paddingSide); - this.add(this.pedestal); - this.stringTitulo = new InaraString("bozorun",70 + this.paddingSide,40,280,0,0); - this.add(this.stringTitulo); - this.stringTitulo._chars.group.forEach(function(letra) { - _gthis.add(letra); - }); - this.BtnColetiva = new flixel_ui_FlxButton(10,division * 1.5 + 40,"",function() { - flixel_FlxG.camera.fade(-16777216,0.33,false,function() { - var nextState = new ColetivaGameState(); - if(flixel_FlxG.game._state.switchTo(nextState)) { - flixel_FlxG.game._requestedState = nextState; - } - return; - }); - return; - }); - this.BtnColetiva.label.set_size(20); - this.BtnColetiva.loadGraphic("assets/images/botoes/coletiva/coletiva.png",true,60,36); - this.BtnColetiva.scale.set(1.6,.9); - this.BtnColetiva.set_x(35 + this.paddingSide); - var _g8 = this.BtnColetiva; - _g8.set_y(_g8.y + 25); - this.BtnRun = new flixel_ui_FlxButton(0,0,"",function() { - flixel_FlxG.camera.fade(-16777216,0.33,false,function() { - var nextState1 = new BozoRunGameState(); - if(flixel_FlxG.game._state.switchTo(nextState1)) { - flixel_FlxG.game._requestedState = nextState1; - } - return; - }); - return; - }); - this.BtnRun.label.set_size(20); - this.BtnRun.loadGraphic("assets/images/botoes/fugir/fugir.png",true,60,36); - this.BtnRun.set_x(200 + this.paddingSide); - this.BtnRun.set_y(122); - this.add(this.BtnRun); - flixel_FlxG.sound.playMusic("assets/music/bozosong.ogg"); - } - ,update: function(elapsed) { - var _g = this.aviao; - _g.set_x(_g.x + 0.8); - if(this.aviao.x >= 305 + this.paddingSide) { - this.aviao.set_x(this.paddingSide); - } - var _g1 = this.pato; - _g1.set_x(_g1.x + 0.4 * this.multiplier); - if(this.pato.x >= 270 + this.paddingSide) { - this.multiplier *= -1; - this.pato.set_facing(16); - } - if(this.pato.x <= 180 + this.paddingSide) { - this.pato.set_facing(1); - this.multiplier *= -1; - } - flixel_FlxState.prototype.update.call(this,flixel_FlxG.elapsed); - } - ,destroy: function() { - this.background.destroy(); - this.BtnRun.destroy(); - this.bozoEspirra.destroy(); - this.bozoRun.destroy(); - this.BtnRun.destroy(); - this.BtnColetiva.destroy(); - this.ceu.destroy(); - this.pato.destroy(); - this.aviao.destroy(); - this.pedestal.destroy(); - this.stringTitulo.destroy(); - this.background = null; - this.BtnRun = null; - flixel_FlxState.prototype.destroy.call(this); - } - ,__class__: MainMenuState -}); -var ManifestResources = function() { }; -$hxClasses["ManifestResources"] = ManifestResources; -ManifestResources.__name__ = "ManifestResources"; -ManifestResources.preloadLibraries = null; -ManifestResources.preloadLibraryNames = null; -ManifestResources.rootPath = null; -ManifestResources.init = function(config) { - ManifestResources.preloadLibraries = []; - ManifestResources.preloadLibraryNames = []; - ManifestResources.rootPath = null; - if(config != null && Object.prototype.hasOwnProperty.call(config,"rootPath")) { - ManifestResources.rootPath = Reflect.field(config,"rootPath"); - } - if(ManifestResources.rootPath == null) { - ManifestResources.rootPath = "./"; - } - openfl_text_Font.registerFont(_$_$ASSET_$_$OPENFL_$_$flixel_$fonts_$nokiafc22_$ttf); - openfl_text_Font.registerFont(_$_$ASSET_$_$OPENFL_$_$flixel_$fonts_$monsterrat_$ttf); - var bundle; - var data = "{\"name\":null,\"assets\":\"aoy4:pathy32:assets%2Fimages%2Ffont%2Ftil.pngy4:sizei98y4:typey5:IMAGEy2:idR1y7:preloadtgoR0y34:assets%2Fimages%2Ffont%2Fnum_8.pngR2i204R3R4R5R7R6tgoR0y30:assets%2Fimages%2Ffont%2Fa.pngR2i170R3R4R5R8R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_4.pngR2i156R3R4R5R9R6tgoR0y36:assets%2Fimages%2Ffont%2Fu_trema.pngR2i186R3R4R5R10R6tgoR0y30:assets%2Fimages%2Ffont%2Fd.pngR2i162R3R4R5R11R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_1.pngR2i131R3R4R5R12R6tgoR0y40:assets%2Fimages%2Ffont%2Fporcentagem.pngR2i193R3R4R5R13R6tgoR0y36:assets%2Fimages%2Ffont%2Fa_agudo.pngR2i196R3R4R5R14R6tgoR0y30:assets%2Fimages%2Ffont%2Fz.pngR2i159R3R4R5R15R6tgoR0y41:assets%2Fimages%2Ffont%2Finterrogacao.pngR2i175R3R4R5R16R6tgoR0y30:assets%2Fimages%2Ffont%2Fp.pngR2i178R3R4R5R17R6tgoR0y36:assets%2Fimages%2Ffont%2Fu_agudo.pngR2i207R3R4R5R18R6tgoR0y30:assets%2Fimages%2Ffont%2Fx.pngR2i205R3R4R5R19R6tgoR0y30:assets%2Fimages%2Ffont%2Fy.pngR2i192R3R4R5R20R6tgoR0y30:assets%2Fimages%2Ffont%2Fc.pngR2i149R3R4R5R21R6tgoR0y36:assets%2Fimages%2Ffont%2Fi_agudo.pngR2i151R3R4R5R22R6tgoR0y34:assets%2Fimages%2Ffont%2Fbarra.pngR2i176R3R4R5R23R6tgoR0y30:assets%2Fimages%2Ffont%2Fe.pngR2i152R3R4R5R24R6tgoR0y36:assets%2Fimages%2Ffont%2Fo_agudo.pngR2i208R3R4R5R25R6tgoR0y34:assets%2Fimages%2Ffont%2Fo_til.pngR2i182R3R4R5R26R6tgoR0y34:assets%2Fimages%2Ffont%2Fagudo.pngR2i128R3R4R5R27R6tgoR0y30:assets%2Fimages%2Ffont%2Fj.pngR2i157R3R4R5R28R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_6.pngR2i177R3R4R5R29R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_7.pngR2i167R3R4R5R30R6tgoR0y38:assets%2Fimages%2Ffont%2Fc_cedilha.pngR2i166R3R4R5R31R6tgoR0y36:assets%2Fimages%2Ffont%2Fe_agudo.pngR2i190R3R4R5R32R6tgoR0y36:assets%2Fimages%2Ffont%2Fo_trema.pngR2i191R3R4R5R33R6tgoR0y42:assets%2Fimages%2Ffont%2Fa_circunflexo.pngR2i202R3R4R5R34R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_0.pngR2i169R3R4R5R35R6tgoR0y36:assets%2Fimages%2Ffont%2Fe_trema.pngR2i183R3R4R5R36R6tgoR0y36:assets%2Fimages%2Ffont%2Fvirgula.pngR2i110R3R4R5R37R6tgoR0y30:assets%2Fimages%2Ffont%2Fo.pngR2i172R3R4R5R38R6tgoR0y30:assets%2Fimages%2Ffont%2Fn.pngR2i218R3R4R5R39R6tgoR0y36:assets%2Fimages%2Ffont%2Fi_trema.pngR2i142R3R4R5R40R6tgoR0y30:assets%2Fimages%2Ffont%2Fr.pngR2i181R3R4R5R41R6tgoR0y40:assets%2Fimages%2Ffont%2Fdois_pontos.pngR2i100R3R4R5R42R6tgoR0y30:assets%2Fimages%2Ffont%2Fq.pngR2i180R3R4R5R43R6tgoR0y30:assets%2Fimages%2Ffont%2F-.pngR2i112R3R4R5R44R6tgoR0y42:assets%2Fimages%2Ffont%2Fe_circunflexo.pngR2i191R3R4R5R45R6tgoR0y38:assets%2Fimages%2Ffont%2Fasterisco.pngR2i152R3R4R5R46R6tgoR0y30:assets%2Fimages%2Ffont%2Fi.pngR2i119R3R4R5R47R6tgoR0y30:assets%2Fimages%2Ffont%2Fl.pngR2i144R3R4R5R48R6tgoR0y30:assets%2Fimages%2Ffont%2Ft.pngR2i153R3R4R5R49R6tgoR0y34:assets%2Fimages%2Ffont%2Ftrema.pngR2i107R3R4R5R50R6tgoR0y30:assets%2Fimages%2Ffont%2Fb.pngR2i187R3R4R5R51R6tgoR0y30:assets%2Fimages%2Ffont%2Fh.pngR2i165R3R4R5R52R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_3.pngR2i186R3R4R5R53R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_5.pngR2i187R3R4R5R54R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_9.pngR2i197R3R4R5R55R6tgoR0y33:assets%2Fimages%2Ffont%2Fmais.pngR2i153R3R4R5R56R6tgoR0y34:assets%2Fimages%2Ffont%2Fa_til.pngR2i186R3R4R5R57R6tgoR0y30:assets%2Fimages%2Ffont%2Fg.pngR2i176R3R4R5R58R6tgoR0y36:assets%2Fimages%2Ffont%2Fa_trema.pngR2i191R3R4R5R59R6tgoR0y39:assets%2Fimages%2Ffont%2Fexclamacao.pngR2i126R3R4R5R60R6tgoR0y30:assets%2Fimages%2Ffont%2Fu.pngR2i167R3R4R5R61R6tgoR0y30:assets%2Fimages%2Ffont%2Fw.pngR2i206R3R4R5R62R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_2.pngR2i170R3R4R5R63R6tgoR0y30:assets%2Fimages%2Ffont%2Fv.pngR2i175R3R4R5R64R6tgoR0y42:assets%2Fimages%2Ffont%2Fo_circunflexo.pngR2i203R3R4R5R65R6tgoR0y30:assets%2Fimages%2Ffont%2Ff.pngR2i149R3R4R5R66R6tgoR0y30:assets%2Fimages%2Ffont%2Fk.pngR2i201R3R4R5R67R6tgoR0y30:assets%2Fimages%2Ffont%2Fs.pngR2i189R3R4R5R68R6tgoR0y30:assets%2Fimages%2Ffont%2Fm.pngR2i221R3R4R5R69R6tgoR0y26:assets%2Fimages%2FLula.pngR2i3556R3R4R5R70R6tgoR0y25:assets%2Fimages%2Fsky.pngR2i7286R3R4R5R71R6tgoR0y48:assets%2Fimages%2Fbotoes%2Fmascara%2Fbotoes4.pngR2i340R3R4R5R72R6tgoR0y48:assets%2Fimages%2Fbotoes%2Fmascara%2Fbotoes3.pngR2i951R3R4R5R73R6tgoR0y53:assets%2Fimages%2Fbotoes%2Fmascara%2FmascaraBotao.pngR2i1305R3R4R5R74R6tgoR0y50:assets%2Fimages%2Fbotoes%2Fcoletiva%2Fcoletiva.pngR2i1288R3R4R5R75R6tgoR0y49:assets%2Fimages%2Fbotoes%2Fcoletiva%2Fbotoes9.pngR2i919R3R4R5R76R6tgoR0y50:assets%2Fimages%2Fbotoes%2Fcoletiva%2Fbotoes10.pngR2i308R3R4R5R77R6tgoR0y47:assets%2Fimages%2Fbotoes%2Fvoltar%2Fbotoes1.pngR2i865R3R4R5R78R6tgoR0y46:assets%2Fimages%2Fbotoes%2Fvoltar%2Fvoltar.pngR2i1817R3R4R5R79R6tgoR0y47:assets%2Fimages%2Fbotoes%2Fvoltar%2Fbotoes2.pngR2i751R3R4R5R80R6tgoR0y50:assets%2Fimages%2Fbotoes%2Freiniciar%2Fbotoes8.pngR2i958R3R4R5R81R6tgoR0y50:assets%2Fimages%2Fbotoes%2Freiniciar%2Fbotoes7.pngR2i319R3R4R5R82R6tgoR0y52:assets%2Fimages%2Fbotoes%2Freiniciar%2Freiniciar.pngR2i1298R3R4R5R83R6tgoR0y48:assets%2Fimages%2Fbotoes%2Fpausar%2Fbotoes11.pngR2i906R3R4R5R84R6tgoR0y48:assets%2Fimages%2Fbotoes%2Fpausar%2Fbotoes12.pngR2i906R3R4R5R85R6tgoR0y46:assets%2Fimages%2Fbotoes%2Fpausar%2Fpausar.pngR2i1320R3R4R5R86R6tgoR0y48:assets%2Fimages%2Fbotoes%2Fpausar%2Fbotoes13.pngR2i306R3R4R5R87R6tgoR0y46:assets%2Fimages%2Fbotoes%2Ffugir%2Fbotoes6.pngR2i289R3R4R5R88R6tgoR0y44:assets%2Fimages%2Fbotoes%2Ffugir%2Ffugir.pngR2i1252R3R4R5R89R6tgoR0y46:assets%2Fimages%2Fbotoes%2Ffugir%2Fbotoes5.pngR2i825R3R4R5R90R6tgoR0y44:assets%2Fimages%2Fbackgrounds%2Fbgnovo04.pngR2i7244R3R4R5R91R6tgoR0y45:assets%2Fimages%2Fbackgrounds%2Fsenado_bg.pngR2i25985R3R4R5R92R6tgoR0y39:assets%2Fimages%2Fbackgrounds%2Fceu.pngR2i2739R3R4R5R93R6tgoR0y47:assets%2Fimages%2Fbackgrounds%2Fsenado_bg_3.pngR2i12407R3R4R5R94R6tgoR0y42:assets%2Fimages%2Fbackgrounds%2Fbgnovo.pngR2i38845R3R4R5R95R6tgoR0y43:assets%2Fimages%2Fbackgrounds%2Faviao_1.pngR2i609R3R4R5R96R6tgoR0y44:assets%2Fimages%2Fbackgrounds%2Fbgnovo02.pngR2i5775R3R4R5R97R6tgoR0y43:assets%2Fimages%2Fbackgrounds%2Faviao_2.pngR2i592R3R4R5R98R6tgoR0y41:assets%2Fimages%2Fbackgrounds%2Fpatin.pngR2i279R3R4R5R99R6tgoR0y47:assets%2Fimages%2Fbackgrounds%2Fsenado_bg_2.pngR2i11505R3R4R5R100R6tgoR0y41:assets%2Fimages%2Fbackgrounds%2Faviao.pngR2i632R3R4R5R101R6tgoR0y44:assets%2Fimages%2Fbackgrounds%2Fpedestal.pngR2i136R3R4R5R102R6tgoR0y44:assets%2Fimages%2Fbackgrounds%2Fbrasilia.pngR2i95911R3R4R5R103R6tgoR0y44:assets%2Fimages%2Fbackgrounds%2Fbgnovo10.pngR2i15313R3R4R5R104R6tgoR0y44:assets%2Fimages%2Fbackgrounds%2Fbgnovo08.pngR2i35748R3R4R5R105R6tgoR0y44:assets%2Fimages%2Fbackgrounds%2Fbgnovo06.pngR2i7130R3R4R5R106R6tgoR0y47:assets%2Fimages%2Fbackgrounds%2Fsenado_bg_1.pngR2i15076R3R4R5R107R6tgoR0y46:assets%2Fimages%2Fbackgrounds%2Fforeground.pngR2i48274R3R4R5R108R6tgoR0y28:assets%2Fimages%2Fscreen.pngR2i112563R3R4R5R109R6tgoR0y32:assets%2Fimages%2Fcorassaum2.pngR2i211R3R4R5R110R6tgoR0y26:assets%2Fimages%2FJair.pngR2i21611R3R4R5R111R6tgoR0y47:assets%2Fimages%2Fcoletiva%2Fforegroundbozo.pngR2i879R3R4R5R112R6tgoR0y47:assets%2Fimages%2Fcoletiva%2Fbackgroundbozo.pngR2i79628R3R4R5R113R6tgoR0y41:assets%2Fimages%2Fcoletiva%2Fbozotile.pngR2i11632R3R4R5R114R6tgoR0y40:assets%2Fimages%2Fcoletiva%2Fmascara.pngR2i465R3R4R5R115R6tgoR0y41:assets%2Fimages%2Fcoletiva%2Fmorotile.pngR2i3383R3R4R5R116R6tgoR0y42:assets%2Fimages%2Fcoletiva%2Fmicrofone.pngR2i221R3R4R5R117R6tgoR0y42:assets%2Fimages%2Fcoletiva%2Fguedstile.pngR2i3062R3R4R5R118R6tgoR0y37:assets%2Fimages%2Fcoletiva%2Ftaca.pngR2i277R3R4R5R119R6tgoR0y42:assets%2Fimages%2Fobstaculos%2Flivros1.pngR2i841R3R4R5R120R6tgoR0y41:assets%2Fimages%2Fobstaculos%2Flivros.pngR2i2443R3R4R5R121R6tgoR0y42:assets%2Fimages%2Fobstaculos%2Flivros6.pngR2i836R3R4R5R122R6tgoR0y42:assets%2Fimages%2Fobstaculos%2Flivros4.pngR2i764R3R4R5R123R6tgoR0y42:assets%2Fimages%2Fobstaculos%2Flivros2.pngR2i769R3R4R5R124R6tgoR0y44:assets%2Fimages%2Fobstaculos%2Fcensurado.pngR2i677R3R4R5R125R6tgoR0y42:assets%2Fimages%2Fobstaculos%2Flivros3.pngR2i838R3R4R5R126R6tgoR0y42:assets%2Fimages%2Fobstaculos%2Flivros5.pngR2i846R3R4R5R127R6tgoR0y37:assets%2Fimages%2Fdialogo%2Ftweet.pngR2i171R3R4R5R128R6tgoR0y37:assets%2Fimages%2Fdialogo%2Ftuite.pngR2i325R3R4R5R129R6tgoR0y32:assets%2Fimages%2Fcorassaum1.pngR2i215R3R4R5R130R6tgoR0y24:assets%2Fimages%2Fvs.pngR2i648R3R4R5R131R6tgoR0y33:assets%2Fimages%2Fgroundtiles.pngR2i276R3R4R5R132R6tgoR0y29:assets%2Fimages%2Flaranja.pngR2i212R3R4R5R133R6tgoR0y29:assets%2Fimages%2Fcoracao.pngR2i439R3R4R5R134R6tgoR0y29:assets%2Fdata%2FLula.asepriteR2i4388R3y6:BINARYR5R135R6tgoR0y27:assets%2Fdata%2Fbozorun.oepR2i2979R3y4:TEXTR5R137R6tgoR0y28:assets%2Fdata%2Fbrasilia.xcfR2i184957R3R136R5R139R6tgoR0y29:assets%2Fdata%2FJair.asepriteR2i33676R3R136R5R140R6tgoR0y27:assets%2Fdata%2Fbozorun.oelR2i35904R3R138R5R141R6tgoR2i2501057R3y5:MUSICR5y29:assets%2Fmusic%2Fbozosong.mp3y9:pathGroupaR143y29:assets%2Fmusic%2Fbozosong.ogghR6tgoR2i1306768R3R142R5R145R144aR143R145hgoR2i6619R3y5:SOUNDR5y30:assets%2Fsounds%2Fgoblin-1.oggR144aR147y30:assets%2Fsounds%2Fgoblin-1.mp3hR6tgoR2i9144R3R146R5y30:assets%2Fsounds%2Fgoblin-9.oggR144aR149y30:assets%2Fsounds%2Fgoblin-9.mp3hR6tgoR2i4224R3R142R5R148R144aR147R148hgoR2i7296R3R142R5R150R144aR149R150hgoR2i39706R3R142R5y28:flixel%2Fsounds%2Fflixel.mp3R144aR151y28:flixel%2Fsounds%2Fflixel.ogghR6tgoR2i2114R3R142R5y26:flixel%2Fsounds%2Fbeep.mp3R144aR153y26:flixel%2Fsounds%2Fbeep.ogghR6tgoR2i33629R3R146R5R152R144aR151R152hgoR2i5794R3R146R5R154R144aR153R154hgoR2i15744R3y4:FONTy9:classNamey35:__ASSET__flixel_fonts_nokiafc22_ttfR5y30:flixel%2Ffonts%2Fnokiafc22.ttfR6tgoR2i29724R3R155R156y36:__ASSET__flixel_fonts_monsterrat_ttfR5y31:flixel%2Ffonts%2Fmonsterrat.ttfR6tgoR0y33:flixel%2Fimages%2Fui%2Fbutton.pngR2i519R3R4R5R161R6tgoR0y36:flixel%2Fimages%2Flogo%2Fdefault.pngR2i3280R3R4R5R162R6tgh\",\"rootPath\":null,\"version\":2,\"libraryArgs\":[],\"libraryType\":null}"; - var manifest = lime_utils_AssetManifest.parse(data,ManifestResources.rootPath); - var library = lime_utils_AssetLibrary.fromManifest(manifest); - lime_utils_Assets.registerLibrary("default",library); - library = lime_utils_Assets.getLibrary("default"); - if(library != null) { - ManifestResources.preloadLibraries.push(library); - } else { - ManifestResources.preloadLibraryNames.push("default"); - } -}; -var lime_text_Font = function(name) { - if(name != null) { - this.name = name; - } - if(!this.__init) { - if(this.ascender == undefined) { - this.ascender = 0; - } - if(this.descender == undefined) { - this.descender = 0; - } - if(this.height == undefined) { - this.height = 0; - } - if(this.numGlyphs == undefined) { - this.numGlyphs = 0; - } - if(this.underlinePosition == undefined) { - this.underlinePosition = 0; - } - if(this.underlineThickness == undefined) { - this.underlineThickness = 0; - } - if(this.unitsPerEM == undefined) { - this.unitsPerEM = 0; - } - if(this.__fontID != null) { - if(lime_utils_Assets.isLocal(this.__fontID)) { - this.__fromBytes(lime_utils_Assets.getBytes(this.__fontID)); - } - } else if(this.__fontPath != null) { - this.__fromFile(this.__fontPath); - } - } -}; -$hxClasses["lime.text.Font"] = lime_text_Font; -lime_text_Font.__name__ = "lime.text.Font"; -lime_text_Font.fromBytes = function(bytes) { - if(bytes == null) { - return null; - } - var font = new lime_text_Font(); - font.__fromBytes(bytes); - return font; -}; -lime_text_Font.fromFile = function(path) { - if(path == null) { - return null; - } - var font = new lime_text_Font(); - font.__fromFile(path); - return font; -}; -lime_text_Font.loadFromBytes = function(bytes) { - return lime_app_Future.withValue(lime_text_Font.fromBytes(bytes)); -}; -lime_text_Font.loadFromFile = function(path) { - var request = new lime_net__$HTTPRequest_$lime_$text_$Font(); - return request.load(path).then(function(font) { - if(font != null) { - return lime_app_Future.withValue(font); - } else { - return lime_app_Future.withError(""); - } - }); -}; -lime_text_Font.loadFromName = function(path) { - var font = new lime_text_Font(); - return font.__loadFromName(path); -}; -lime_text_Font.__measureFontNode = function(fontFamily) { - var node = window.document.createElement("span"); - node.setAttribute("aria-hidden","true"); - var text = window.document.createTextNode("BESbswy"); - node.appendChild(text); - var style = node.style; - style.display = "block"; - style.position = "absolute"; - style.top = "-9999px"; - style.left = "-9999px"; - style.fontSize = "300px"; - style.width = "auto"; - style.height = "auto"; - style.lineHeight = "normal"; - style.margin = "0"; - style.padding = "0"; - style.fontVariant = "normal"; - style.whiteSpace = "nowrap"; - style.fontFamily = fontFamily; - window.document.body.appendChild(node); - return node; -}; -lime_text_Font.prototype = { - ascender: null - ,descender: null - ,height: null - ,name: null - ,numGlyphs: null - ,src: null - ,underlinePosition: null - ,underlineThickness: null - ,unitsPerEM: null - ,__fontID: null - ,__fontPath: null - ,__init: null - ,decompose: function() { - return null; - } - ,getGlyph: function(character) { - return -1; - } - ,getGlyphs: function(characters) { - if(characters == null) { - characters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^`'\"/\\&*()[]{}<>|:;_-+=?,. "; - } - return null; - } - ,getGlyphMetrics: function(glyph) { - return null; - } - ,renderGlyph: function(glyph,fontSize) { - return null; - } - ,renderGlyphs: function(glyphs,fontSize) { - return null; - } - ,__copyFrom: function(other) { - if(other != null) { - this.ascender = other.ascender; - this.descender = other.descender; - this.height = other.height; - this.name = other.name; - this.numGlyphs = other.numGlyphs; - this.src = other.src; - this.underlinePosition = other.underlinePosition; - this.underlineThickness = other.underlineThickness; - this.unitsPerEM = other.unitsPerEM; - this.__fontID = other.__fontID; - this.__fontPath = other.__fontPath; - this.__init = true; - } - } - ,__fromBytes: function(bytes) { - this.__fontPath = null; - } - ,__fromFile: function(path) { - this.__fontPath = path; - } - ,__initializeSource: function() { - this.__init = true; - } - ,__loadFromName: function(name) { - var _gthis = this; - var promise = new lime_app_Promise(); - this.name = name; - var userAgent = window.navigator.userAgent.toLowerCase(); - var isSafari = userAgent.indexOf(" safari/") >= 0 && userAgent.indexOf(" chrome/") < 0; - var isUIWebView = new EReg("(iPhone|iPod|iPad).*AppleWebKit(?!.*Version)","i").match(userAgent); - if(!isSafari && !isUIWebView && (window.document.fonts && ($_=window.document.fonts,$bind($_,$_.load)))) { - window.document.fonts.load("1em '" + name + "'").then(function(_) { - promise.complete(_gthis); - },function(_1) { - lime_utils_Log.warn("Could not load web font \"" + name + "\"",{ fileName : "lime/text/Font.hx", lineNumber : 513, className : "lime.text.Font", methodName : "__loadFromName"}); - promise.complete(_gthis); - }); - } else { - var node1 = lime_text_Font.__measureFontNode("'" + name + "', sans-serif"); - var node2 = lime_text_Font.__measureFontNode("'" + name + "', serif"); - var width1 = node1.offsetWidth; - var width2 = node2.offsetWidth; - var interval = -1; - var timeout = 3000; - var intervalLength = 50; - var intervalCount = 0; - var loaded; - var timeExpired; - var checkFont = function() { - intervalCount += 1; - loaded = node1.offsetWidth != width1 || node2.offsetWidth != width2; - timeExpired = intervalCount * intervalLength >= timeout; - if(loaded || timeExpired) { - window.clearInterval(interval); - node1.parentNode.removeChild(node1); - node2.parentNode.removeChild(node2); - node1 = null; - node2 = null; - if(timeExpired) { - lime_utils_Log.warn("Could not load web font \"" + name + "\"",{ fileName : "lime/text/Font.hx", lineNumber : 548, className : "lime.text.Font", methodName : "__loadFromName"}); - } - promise.complete(_gthis); - } - }; - interval = window.setInterval(checkFont,intervalLength); - } - return promise.future; - } - ,__setSize: function(size) { - } - ,__class__: lime_text_Font -}; -var _$_$ASSET_$_$flixel_$fonts_$nokiafc22_$ttf = $hx_exports["__ASSET__flixel_fonts_nokiafc22_ttf"] = function() { - this.ascender = 2048; - this.descender = -512; - this.height = 2816; - this.numGlyphs = 172; - this.underlinePosition = -640; - this.underlineThickness = 256; - this.unitsPerEM = 2048; - this.name = "Nokia Cellphone FC Small"; - lime_text_Font.call(this); -}; -$hxClasses["__ASSET__flixel_fonts_nokiafc22_ttf"] = _$_$ASSET_$_$flixel_$fonts_$nokiafc22_$ttf; -_$_$ASSET_$_$flixel_$fonts_$nokiafc22_$ttf.__name__ = "__ASSET__flixel_fonts_nokiafc22_ttf"; -_$_$ASSET_$_$flixel_$fonts_$nokiafc22_$ttf.__super__ = lime_text_Font; -_$_$ASSET_$_$flixel_$fonts_$nokiafc22_$ttf.prototype = $extend(lime_text_Font.prototype,{ - __class__: _$_$ASSET_$_$flixel_$fonts_$nokiafc22_$ttf -}); -var _$_$ASSET_$_$flixel_$fonts_$monsterrat_$ttf = $hx_exports["__ASSET__flixel_fonts_monsterrat_ttf"] = function() { - this.ascender = 968; - this.descender = -251; - this.height = 1219; - this.numGlyphs = 263; - this.underlinePosition = -150; - this.underlineThickness = 50; - this.unitsPerEM = 1000; - this.name = "Monsterrat"; - lime_text_Font.call(this); -}; -$hxClasses["__ASSET__flixel_fonts_monsterrat_ttf"] = _$_$ASSET_$_$flixel_$fonts_$monsterrat_$ttf; -_$_$ASSET_$_$flixel_$fonts_$monsterrat_$ttf.__name__ = "__ASSET__flixel_fonts_monsterrat_ttf"; -_$_$ASSET_$_$flixel_$fonts_$monsterrat_$ttf.__super__ = lime_text_Font; -_$_$ASSET_$_$flixel_$fonts_$monsterrat_$ttf.prototype = $extend(lime_text_Font.prototype,{ - __class__: _$_$ASSET_$_$flixel_$fonts_$monsterrat_$ttf -}); -var openfl_text_Font = function(name) { - lime_text_Font.call(this,name); -}; -$hxClasses["openfl.text.Font"] = openfl_text_Font; -openfl_text_Font.__name__ = "openfl.text.Font"; -openfl_text_Font.enumerateFonts = function(enumerateDeviceFonts) { - if(enumerateDeviceFonts == null) { - enumerateDeviceFonts = false; - } - return openfl_text_Font.__registeredFonts; -}; -openfl_text_Font.fromBytes = function(bytes) { - var font = new openfl_text_Font(); - font.__fromBytes(openfl_utils__$ByteArray_ByteArray_$Impl_$.toBytes(bytes)); - return font; -}; -openfl_text_Font.fromFile = function(path) { - var font = new openfl_text_Font(); - font.__fromFile(path); - return font; -}; -openfl_text_Font.loadFromBytes = function(bytes) { - return lime_text_Font.loadFromBytes(openfl_utils__$ByteArray_ByteArray_$Impl_$.toBytes(bytes)).then(function(limeFont) { - var font = new openfl_text_Font(); - font.__fromLimeFont(limeFont); - return lime_app_Future.withValue(font); - }); -}; -openfl_text_Font.loadFromFile = function(path) { - return lime_text_Font.loadFromFile(path).then(function(limeFont) { - var font = new openfl_text_Font(); - font.__fromLimeFont(limeFont); - return lime_app_Future.withValue(font); - }); -}; -openfl_text_Font.loadFromName = function(path) { - return lime_text_Font.loadFromName(path).then(function(limeFont) { - var font = new openfl_text_Font(); - font.__fromLimeFont(limeFont); - return lime_app_Future.withValue(font); - }); -}; -openfl_text_Font.registerFont = function(font) { - var instance = null; - if(js_Boot.getClass(font) == null) { - instance = js_Boot.__cast(Type.createInstance(font,[]) , openfl_text_Font); - } else { - instance = js_Boot.__cast(font , openfl_text_Font); - } - if(instance != null) { - openfl_text_Font.__registeredFonts.push(instance); - var k = instance.name; - var _this = openfl_text_Font.__fontByName; - if(__map_reserved[k] != null) { - _this.setReserved(k,instance); - } else { - _this.h[k] = instance; - } - } -}; -openfl_text_Font.__super__ = lime_text_Font; -openfl_text_Font.prototype = $extend(lime_text_Font.prototype,{ - fontStyle: null - ,fontType: null - ,__initialized: null - ,__fromLimeFont: function(font) { - this.__copyFrom(font); - } - ,__initialize: function() { - return this.__initialized; - } - ,get_fontName: function() { - return this.name; - } - ,set_fontName: function(value) { - return this.name = value; - } - ,__class__: openfl_text_Font - ,__properties__: {set_fontName:"set_fontName",get_fontName:"get_fontName"} -}); -var _$_$ASSET_$_$OPENFL_$_$flixel_$fonts_$nokiafc22_$ttf = $hx_exports["__ASSET__OPENFL__flixel_fonts_nokiafc22_ttf"] = function() { - this.__fromLimeFont(new _$_$ASSET_$_$flixel_$fonts_$nokiafc22_$ttf()); - openfl_text_Font.call(this); -}; -$hxClasses["__ASSET__OPENFL__flixel_fonts_nokiafc22_ttf"] = _$_$ASSET_$_$OPENFL_$_$flixel_$fonts_$nokiafc22_$ttf; -_$_$ASSET_$_$OPENFL_$_$flixel_$fonts_$nokiafc22_$ttf.__name__ = "__ASSET__OPENFL__flixel_fonts_nokiafc22_ttf"; -_$_$ASSET_$_$OPENFL_$_$flixel_$fonts_$nokiafc22_$ttf.__super__ = openfl_text_Font; -_$_$ASSET_$_$OPENFL_$_$flixel_$fonts_$nokiafc22_$ttf.prototype = $extend(openfl_text_Font.prototype,{ - __class__: _$_$ASSET_$_$OPENFL_$_$flixel_$fonts_$nokiafc22_$ttf -}); -var _$_$ASSET_$_$OPENFL_$_$flixel_$fonts_$monsterrat_$ttf = $hx_exports["__ASSET__OPENFL__flixel_fonts_monsterrat_ttf"] = function() { - this.__fromLimeFont(new _$_$ASSET_$_$flixel_$fonts_$monsterrat_$ttf()); - openfl_text_Font.call(this); -}; -$hxClasses["__ASSET__OPENFL__flixel_fonts_monsterrat_ttf"] = _$_$ASSET_$_$OPENFL_$_$flixel_$fonts_$monsterrat_$ttf; -_$_$ASSET_$_$OPENFL_$_$flixel_$fonts_$monsterrat_$ttf.__name__ = "__ASSET__OPENFL__flixel_fonts_monsterrat_ttf"; -_$_$ASSET_$_$OPENFL_$_$flixel_$fonts_$monsterrat_$ttf.__super__ = openfl_text_Font; -_$_$ASSET_$_$OPENFL_$_$flixel_$fonts_$monsterrat_$ttf.prototype = $extend(openfl_text_Font.prototype,{ - __class__: _$_$ASSET_$_$OPENFL_$_$flixel_$fonts_$monsterrat_$ttf -}); -var flixel_FlxSubState = function(BGColor) { - if(BGColor == null) { - BGColor = 0; - } - this._created = false; - flixel_FlxState.call(this); - this.closeCallback = null; - this.openCallback = null; - if(flixel_FlxG.renderTile) { - this._bgSprite = new flixel_system_FlxBGSprite(); - } - this.set_bgColor(BGColor); -}; -$hxClasses["flixel.FlxSubState"] = flixel_FlxSubState; -flixel_FlxSubState.__name__ = "flixel.FlxSubState"; -flixel_FlxSubState.__super__ = flixel_FlxState; -flixel_FlxSubState.prototype = $extend(flixel_FlxState.prototype,{ - openCallback: null - ,closeCallback: null - ,_bgSprite: null - ,_parentState: null - ,_bgColor: null - ,_created: null - ,draw: function() { - if(flixel_FlxG.renderBlit) { - var _g = 0; - var _g1 = this.get_cameras(); - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - camera.fill(this._bgColor); - } - } else { - this._bgSprite.draw(); - } - flixel_FlxState.prototype.draw.call(this); - } - ,destroy: function() { - flixel_FlxState.prototype.destroy.call(this); - this.closeCallback = null; - this.openCallback = null; - this._parentState = null; - this._bgSprite = null; - } - ,close: function() { - if(this._parentState != null && this._parentState.subState == this) { - this._parentState.closeSubState(); - } - } - ,get_bgColor: function() { - return this._bgColor; - } - ,set_bgColor: function(Value) { - if(flixel_FlxG.renderTile && this._bgSprite != null) { - this._bgSprite.get_pixels().setPixel32(0,0,Value); - } - return this._bgColor = Value; - } - ,__class__: flixel_FlxSubState -}); -var PausadoSubState = function(BGColor) { - flixel_FlxSubState.call(this,BGColor); -}; -$hxClasses["PausadoSubState"] = PausadoSubState; -PausadoSubState.__name__ = "PausadoSubState"; -PausadoSubState.__super__ = flixel_FlxSubState; -PausadoSubState.prototype = $extend(flixel_FlxSubState.prototype,{ - _botaoFechar: null - ,create: function() { - var _gthis = this; - flixel_FlxSubState.prototype.create.call(this); - this._botaoFechar = new flixel_ui_FlxButton(124,2,"",function() { - _gthis.close(); - return; - }); - this._botaoFechar.loadGraphic("assets/images/botoes/pausar/pausar.png",true,60,36); - this.add(this._botaoFechar); - } - ,__class__: PausadoSubState -}); -var Reflect = function() { }; -$hxClasses["Reflect"] = Reflect; -Reflect.__name__ = "Reflect"; -Reflect.field = function(o,field) { - try { - return o[field]; - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - return null; - } -}; -Reflect.getProperty = function(o,field) { - var tmp; - if(o == null) { - return null; - } else { - var tmp1; - if(o.__properties__) { - tmp = o.__properties__["get_" + field]; - tmp1 = tmp; - } else { - tmp1 = false; - } - if(tmp1) { - return o[tmp](); - } else { - return o[field]; - } - } -}; -Reflect.setProperty = function(o,field,value) { - var tmp; - var tmp1; - if(o.__properties__) { - tmp = o.__properties__["set_" + field]; - tmp1 = tmp; - } else { - tmp1 = false; - } - if(tmp1) { - o[tmp](value); - } else { - o[field] = value; - } -}; -Reflect.fields = function(o) { - var a = []; - if(o != null) { - var hasOwnProperty = Object.prototype.hasOwnProperty; - for( var f in o ) { - if(f != "__id__" && f != "hx__closures__" && hasOwnProperty.call(o,f)) { - a.push(f); - } - } - } - return a; -}; -Reflect.isFunction = function(f) { - if(typeof(f) == "function") { - return !(f.__name__ || f.__ename__); - } else { - return false; - } -}; -Reflect.compare = function(a,b) { - if(a == b) { - return 0; - } else if(a > b) { - return 1; - } else { - return -1; - } -}; -Reflect.compareMethods = function(f1,f2) { - if(f1 == f2) { - return true; - } - if(!Reflect.isFunction(f1) || !Reflect.isFunction(f2)) { - return false; - } - if(f1.scope == f2.scope && f1.method == f2.method) { - return f1.method != null; - } else { - return false; - } -}; -Reflect.isObject = function(v) { - if(v == null) { - return false; - } - var t = typeof(v); - if(!(t == "string" || t == "object" && v.__enum__ == null)) { - if(t == "function") { - return (v.__name__ || v.__ename__) != null; - } else { - return false; - } - } else { - return true; - } -}; -Reflect.isEnumValue = function(v) { - if(v != null) { - return v.__enum__ != null; - } else { - return false; - } -}; -Reflect.deleteField = function(o,field) { - if(!Object.prototype.hasOwnProperty.call(o,field)) { - return false; - } - delete(o[field]); - return true; -}; -Reflect.makeVarArgs = function(f) { - return function() { - var a = Array.prototype.slice.call(arguments); - return f(a); - }; -}; -var Std = function() { }; -$hxClasses["Std"] = Std; -Std.__name__ = "Std"; -Std.string = function(s) { - return js_Boot.__string_rec(s,""); -}; -Std.parseInt = function(x) { - if(x != null) { - var _g = 0; - var _g1 = x.length; - while(_g < _g1) { - var i = _g++; - var c = x.charCodeAt(i); - if(c <= 8 || c >= 14 && c != 32 && c != 45) { - var v = parseInt(x, (x[(i + 1)]=="x" || x[(i + 1)]=="X") ? 16 : 10); - if(isNaN(v)) { - return null; - } else { - return v; - } - } - } - } - return null; -}; -var _$String_String_$Impl_$ = function() { }; -$hxClasses["_String.String_Impl_"] = _$String_String_$Impl_$; -_$String_String_$Impl_$.__name__ = "_String.String_Impl_"; -_$String_String_$Impl_$.fromCharCode = function(code) { - return String.fromCodePoint(code); -}; -var StringBuf = function() { - this.b = ""; -}; -$hxClasses["StringBuf"] = StringBuf; -StringBuf.__name__ = "StringBuf"; -StringBuf.prototype = { - b: null - ,__class__: StringBuf -}; -var StringTools = function() { }; -$hxClasses["StringTools"] = StringTools; -StringTools.__name__ = "StringTools"; -StringTools.htmlEscape = function(s,quotes) { - var buf_b = ""; - var _g_offset = 0; - var _g_s = s; - while(_g_offset < _g_s.length) { - var s1 = _g_s; - var index = _g_offset++; - var c = s1.charCodeAt(index); - if(c >= 55296 && c <= 56319) { - c = c - 55232 << 10 | s1.charCodeAt(index + 1) & 1023; - } - var c1 = c; - if(c1 >= 65536) { - ++_g_offset; - } - var code = c1; - switch(code) { - case 34: - if(quotes) { - buf_b += """; - } else { - buf_b += String.fromCodePoint(code); - } - break; - case 38: - buf_b += "&"; - break; - case 39: - if(quotes) { - buf_b += "'"; - } else { - buf_b += String.fromCodePoint(code); - } - break; - case 60: - buf_b += "<"; - break; - case 62: - buf_b += ">"; - break; - default: - buf_b += String.fromCodePoint(code); - } - } - return buf_b; -}; -StringTools.startsWith = function(s,start) { - if(s.length >= start.length) { - return s.lastIndexOf(start,0) == 0; - } else { - return false; - } -}; -StringTools.endsWith = function(s,end) { - var elen = end.length; - var slen = s.length; - if(slen >= elen) { - return s.indexOf(end,slen - elen) == slen - elen; - } else { - return false; - } -}; -StringTools.isSpace = function(s,pos) { - var c = HxOverrides.cca(s,pos); - if(!(c > 8 && c < 14)) { - return c == 32; - } else { - return true; - } -}; -StringTools.ltrim = function(s) { - var l = s.length; - var r = 0; - while(r < l && StringTools.isSpace(s,r)) ++r; - if(r > 0) { - return HxOverrides.substr(s,r,l - r); - } else { - return s; - } -}; -StringTools.rtrim = function(s) { - var l = s.length; - var r = 0; - while(r < l && StringTools.isSpace(s,l - r - 1)) ++r; - if(r > 0) { - return HxOverrides.substr(s,0,l - r); - } else { - return s; - } -}; -StringTools.trim = function(s) { - return StringTools.ltrim(StringTools.rtrim(s)); -}; -StringTools.replace = function(s,sub,by) { - return s.split(sub).join(by); -}; -StringTools.hex = function(n,digits) { - var s = ""; - var hexChars = "0123456789ABCDEF"; - while(true) { - s = hexChars.charAt(n & 15) + s; - n >>>= 4; - if(!(n > 0)) { - break; - } - } - if(digits != null) { - while(s.length < digits) s = "0" + s; - } - return s; -}; -var ValueType = $hxEnums["ValueType"] = { __ename__ : "ValueType", __constructs__ : ["TNull","TInt","TFloat","TBool","TObject","TFunction","TClass","TEnum","TUnknown"] - ,TNull: {_hx_index:0,__enum__:"ValueType",toString:$estr} - ,TInt: {_hx_index:1,__enum__:"ValueType",toString:$estr} - ,TFloat: {_hx_index:2,__enum__:"ValueType",toString:$estr} - ,TBool: {_hx_index:3,__enum__:"ValueType",toString:$estr} - ,TObject: {_hx_index:4,__enum__:"ValueType",toString:$estr} - ,TFunction: {_hx_index:5,__enum__:"ValueType",toString:$estr} - ,TClass: ($_=function(c) { return {_hx_index:6,c:c,__enum__:"ValueType",toString:$estr}; },$_.__params__ = ["c"],$_) - ,TEnum: ($_=function(e) { return {_hx_index:7,e:e,__enum__:"ValueType",toString:$estr}; },$_.__params__ = ["e"],$_) - ,TUnknown: {_hx_index:8,__enum__:"ValueType",toString:$estr} -}; -var Type = function() { }; -$hxClasses["Type"] = Type; -Type.__name__ = "Type"; -Type.getEnum = function(o) { - if(o == null) { - return null; - } - return $hxEnums[o.__enum__]; -}; -Type.resolveEnum = function(name) { - return $hxEnums[name]; -}; -Type.createInstance = function(cl,args) { - return new (Function.prototype.bind.apply(cl,[null].concat(args))); -}; -Type.createEnum = function(e,constr,params) { - var f = Reflect.field(e,constr); - if(f == null) { - throw new js__$Boot_HaxeError("No such constructor " + constr); - } - if(Reflect.isFunction(f)) { - if(params == null) { - throw new js__$Boot_HaxeError("Constructor " + constr + " need parameters"); - } - return f.apply(e,params); - } - if(params != null && params.length != 0) { - throw new js__$Boot_HaxeError("Constructor " + constr + " does not need parameters"); - } - return f; -}; -Type.getInstanceFields = function(c) { - var a = []; - for(var i in c.prototype) a.push(i); - HxOverrides.remove(a,"__class__"); - HxOverrides.remove(a,"__properties__"); - return a; -}; -Type.getClassFields = function(c) { - var a = Reflect.fields(c); - HxOverrides.remove(a,"__name__"); - HxOverrides.remove(a,"__interfaces__"); - HxOverrides.remove(a,"__properties__"); - HxOverrides.remove(a,"__super__"); - HxOverrides.remove(a,"__meta__"); - HxOverrides.remove(a,"prototype"); - return a; -}; -Type.typeof = function(v) { - switch(typeof(v)) { - case "boolean": - return ValueType.TBool; - case "function": - if(v.__name__ || v.__ename__) { - return ValueType.TObject; - } - return ValueType.TFunction; - case "number": - if(Math.ceil(v) == v % 2147483648.0) { - return ValueType.TInt; - } - return ValueType.TFloat; - case "object": - if(v == null) { - return ValueType.TNull; - } - var e = v.__enum__; - if(e != null) { - return ValueType.TEnum($hxEnums[e]); - } - var c = js_Boot.getClass(v); - if(c != null) { - return ValueType.TClass(c); - } - return ValueType.TObject; - case "string": - return ValueType.TClass(String); - case "undefined": - return ValueType.TNull; - default: - return ValueType.TUnknown; - } -}; -Type.enumEq = function(a,b) { - if(a == b) { - return true; - } - try { - var e = a.__enum__; - if(e == null || e != b.__enum__) { - return false; - } - if(a._hx_index != b._hx_index) { - return false; - } - var enm = $hxEnums[e]; - var ctorName = enm.__constructs__[a._hx_index]; - var params = enm[ctorName].__params__; - var _g = 0; - while(_g < params.length) { - var f = params[_g]; - ++_g; - if(!Type.enumEq(a[f],b[f])) { - return false; - } - } - } catch( e1 ) { - haxe_CallStack.lastException = e1; - var e2 = ((e1) instanceof js__$Boot_HaxeError) ? e1.val : e1; - return false; - } - return true; -}; -Type.enumParameters = function(e) { - var enm = $hxEnums[e.__enum__]; - var ctorName = enm.__constructs__[e._hx_index]; - var params = enm[ctorName].__params__; - if(params != null) { - var _g = []; - var _g1 = 0; - while(_g1 < params.length) { - var p = params[_g1]; - ++_g1; - _g.push(e[p]); - } - return _g; - } else { - return []; - } -}; -var _$UInt_UInt_$Impl_$ = {}; -$hxClasses["_UInt.UInt_Impl_"] = _$UInt_UInt_$Impl_$; -_$UInt_UInt_$Impl_$.__name__ = "_UInt.UInt_Impl_"; -_$UInt_UInt_$Impl_$.gt = function(a,b) { - var aNeg = a < 0; - var bNeg = b < 0; - if(aNeg != bNeg) { - return aNeg; - } else { - return a > b; - } -}; -_$UInt_UInt_$Impl_$.toFloat = function(this1) { - var int = this1; - if(int < 0) { - return 4294967296.0 + int; - } else { - return int + 0.0; - } -}; -var _$UnicodeString_UnicodeString_$Impl_$ = {}; -$hxClasses["_UnicodeString.UnicodeString_Impl_"] = _$UnicodeString_UnicodeString_$Impl_$; -_$UnicodeString_UnicodeString_$Impl_$.__name__ = "_UnicodeString.UnicodeString_Impl_"; -_$UnicodeString_UnicodeString_$Impl_$.__properties__ = {get_length:"get_length"}; -_$UnicodeString_UnicodeString_$Impl_$.charCodeAt = function(this1,index) { - if(index < 0) { - return null; - } - var unicodeOffset = 0; - var nativeOffset = 0; - while(nativeOffset < this1.length) { - var index1 = nativeOffset++; - var c = this1.charCodeAt(index1); - if(c >= 55296 && c <= 56319) { - c = c - 55232 << 10 | this1.charCodeAt(index1 + 1) & 1023; - } - var c1 = c; - if(unicodeOffset == index) { - return c1; - } - if(c1 >= 65536) { - ++nativeOffset; - } - ++unicodeOffset; - } - return null; -}; -_$UnicodeString_UnicodeString_$Impl_$.substr = function(this1,pos,len) { - if(pos < 0) { - pos = _$UnicodeString_UnicodeString_$Impl_$.get_length(this1) + pos; - if(pos < 0) { - pos = 0; - } - } - if(len != null) { - if(len < 0) { - len = _$UnicodeString_UnicodeString_$Impl_$.get_length(this1) + len; - } - if(len <= 0) { - return ""; - } - } - var unicodeOffset = 0; - var nativeOffset = 0; - var fromOffset = -1; - var subLength = 0; - while(nativeOffset < this1.length) { - var c = this1.charCodeAt(nativeOffset); - if(c >= 55296 && c <= 56319) { - c = c - 55232 << 10 | this1.charCodeAt(nativeOffset + 1) & 1023; - } - var c1 = c; - if(unicodeOffset >= pos) { - if(fromOffset < 0) { - if(len == null) { - return HxOverrides.substr(this1,nativeOffset,null); - } - fromOffset = nativeOffset; - } - ++subLength; - if(subLength >= len) { - var lastOffset = c1 < 65536 ? nativeOffset : nativeOffset + 1; - return HxOverrides.substr(this1,fromOffset,lastOffset - fromOffset + 1); - } - } - nativeOffset += c1 >= 65536 ? 2 : 1; - ++unicodeOffset; - } - if(fromOffset < 0) { - return ""; - } else { - return HxOverrides.substr(this1,fromOffset,null); - } -}; -_$UnicodeString_UnicodeString_$Impl_$.get_length = function(this1) { - var l = 0; - var _g_offset = 0; - var _g_s = this1; - while(_g_offset < _g_s.length) { - var s = _g_s; - var index = _g_offset++; - var c = s.charCodeAt(index); - if(c >= 55296 && c <= 56319) { - c = c - 55232 << 10 | s.charCodeAt(index + 1) & 1023; - } - var c1 = c; - if(c1 >= 65536) { - ++_g_offset; - } - var c2 = c1; - ++l; - } - return l; -}; -var _$Xml_XmlType_$Impl_$ = {}; -$hxClasses["_Xml.XmlType_Impl_"] = _$Xml_XmlType_$Impl_$; -_$Xml_XmlType_$Impl_$.__name__ = "_Xml.XmlType_Impl_"; -_$Xml_XmlType_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "Element"; - case 1: - return "PCData"; - case 2: - return "CData"; - case 3: - return "Comment"; - case 4: - return "DocType"; - case 5: - return "ProcessingInstruction"; - case 6: - return "Document"; - } -}; -var Xml = function(nodeType) { - this.nodeType = nodeType; - this.children = []; - this.attributeMap = new haxe_ds_StringMap(); -}; -$hxClasses["Xml"] = Xml; -Xml.__name__ = "Xml"; -Xml.parse = function(str) { - return haxe_xml_Parser.parse(str); -}; -Xml.createElement = function(name) { - var xml = new Xml(Xml.Element); - if(xml.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element but found " + _$Xml_XmlType_$Impl_$.toString(xml.nodeType)); - } - xml.nodeName = name; - return xml; -}; -Xml.createPCData = function(data) { - var xml = new Xml(Xml.PCData); - if(xml.nodeType == Xml.Document || xml.nodeType == Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, unexpected " + _$Xml_XmlType_$Impl_$.toString(xml.nodeType)); - } - xml.nodeValue = data; - return xml; -}; -Xml.createCData = function(data) { - var xml = new Xml(Xml.CData); - if(xml.nodeType == Xml.Document || xml.nodeType == Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, unexpected " + _$Xml_XmlType_$Impl_$.toString(xml.nodeType)); - } - xml.nodeValue = data; - return xml; -}; -Xml.createComment = function(data) { - var xml = new Xml(Xml.Comment); - if(xml.nodeType == Xml.Document || xml.nodeType == Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, unexpected " + _$Xml_XmlType_$Impl_$.toString(xml.nodeType)); - } - xml.nodeValue = data; - return xml; -}; -Xml.createDocType = function(data) { - var xml = new Xml(Xml.DocType); - if(xml.nodeType == Xml.Document || xml.nodeType == Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, unexpected " + _$Xml_XmlType_$Impl_$.toString(xml.nodeType)); - } - xml.nodeValue = data; - return xml; -}; -Xml.createProcessingInstruction = function(data) { - var xml = new Xml(Xml.ProcessingInstruction); - if(xml.nodeType == Xml.Document || xml.nodeType == Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, unexpected " + _$Xml_XmlType_$Impl_$.toString(xml.nodeType)); - } - xml.nodeValue = data; - return xml; -}; -Xml.createDocument = function() { - return new Xml(Xml.Document); -}; -Xml.prototype = { - nodeType: null - ,nodeName: null - ,nodeValue: null - ,parent: null - ,children: null - ,attributeMap: null - ,get: function(att) { - if(this.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element but found " + _$Xml_XmlType_$Impl_$.toString(this.nodeType)); - } - var _this = this.attributeMap; - if(__map_reserved[att] != null) { - return _this.getReserved(att); - } else { - return _this.h[att]; - } - } - ,set: function(att,value) { - if(this.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element but found " + _$Xml_XmlType_$Impl_$.toString(this.nodeType)); - } - var _this = this.attributeMap; - if(__map_reserved[att] != null) { - _this.setReserved(att,value); - } else { - _this.h[att] = value; - } - } - ,exists: function(att) { - if(this.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element but found " + _$Xml_XmlType_$Impl_$.toString(this.nodeType)); - } - var _this = this.attributeMap; - if(__map_reserved[att] != null) { - return _this.existsReserved(att); - } else { - return _this.h.hasOwnProperty(att); - } - } - ,attributes: function() { - if(this.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element but found " + _$Xml_XmlType_$Impl_$.toString(this.nodeType)); - } - return this.attributeMap.keys(); - } - ,elements: function() { - if(this.nodeType != Xml.Document && this.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element or Document but found " + _$Xml_XmlType_$Impl_$.toString(this.nodeType)); - } - var _g = []; - var _g1 = 0; - var _g2 = this.children; - while(_g1 < _g2.length) { - var child = _g2[_g1]; - ++_g1; - if(child.nodeType == Xml.Element) { - _g.push(child); - } - } - var ret = _g; - return HxOverrides.iter(ret); - } - ,elementsNamed: function(name) { - if(this.nodeType != Xml.Document && this.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element or Document but found " + _$Xml_XmlType_$Impl_$.toString(this.nodeType)); - } - var _g = []; - var _g1 = 0; - var _g2 = this.children; - while(_g1 < _g2.length) { - var child = _g2[_g1]; - ++_g1; - var tmp; - if(child.nodeType == Xml.Element) { - if(child.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element but found " + _$Xml_XmlType_$Impl_$.toString(child.nodeType)); - } - tmp = child.nodeName == name; - } else { - tmp = false; - } - if(tmp) { - _g.push(child); - } - } - var ret = _g; - return HxOverrides.iter(ret); - } - ,firstElement: function() { - if(this.nodeType != Xml.Document && this.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element or Document but found " + _$Xml_XmlType_$Impl_$.toString(this.nodeType)); - } - var _g = 0; - var _g1 = this.children; - while(_g < _g1.length) { - var child = _g1[_g]; - ++_g; - if(child.nodeType == Xml.Element) { - return child; - } - } - return null; - } - ,addChild: function(x) { - if(this.nodeType != Xml.Document && this.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element or Document but found " + _$Xml_XmlType_$Impl_$.toString(this.nodeType)); - } - if(x.parent != null) { - x.parent.removeChild(x); - } - this.children.push(x); - x.parent = this; - } - ,removeChild: function(x) { - if(this.nodeType != Xml.Document && this.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element or Document but found " + _$Xml_XmlType_$Impl_$.toString(this.nodeType)); - } - if(HxOverrides.remove(this.children,x)) { - x.parent = null; - return true; - } - return false; - } - ,toString: function() { - return haxe_xml_Printer.print(this); - } - ,__class__: Xml -}; -var extension_eightsines_EsOrientation = function() { }; -$hxClasses["extension.eightsines.EsOrientation"] = extension_eightsines_EsOrientation; -extension_eightsines_EsOrientation.__name__ = "extension.eightsines.EsOrientation"; -extension_eightsines_EsOrientation.setScreenOrientation = function(screenOrientation) { -}; -var flixel_IFlxBasic = function() { }; -$hxClasses["flixel.IFlxBasic"] = flixel_IFlxBasic; -flixel_IFlxBasic.__name__ = "flixel.IFlxBasic"; -flixel_IFlxBasic.__isInterface__ = true; -flixel_IFlxBasic.prototype = { - set_active: null - ,set_visible: null - ,set_alive: null - ,set_exists: null - ,ID: null - ,active: null - ,visible: null - ,alive: null - ,exists: null - ,draw: null - ,update: null - ,destroy: null - ,kill: null - ,revive: null - ,toString: null - ,__class__: flixel_IFlxBasic - ,__properties__: {set_exists:"set_exists",set_alive:"set_alive",set_visible:"set_visible",set_active:"set_active"} -}; -var openfl__$Vector_FloatVector = function(length,fixed,array,forceCopy) { - if(forceCopy == null) { - forceCopy = false; - } - if(fixed == null) { - fixed = false; - } - if(length == null) { - length = 0; - } - if(forceCopy) { - this.__array = []; - if(array != null) { - var _g = 0; - var _g1 = array.length; - while(_g < _g1) { - var i = _g++; - this.__array[i] = array[i]; - } - } - } else { - if(array == null) { - array = []; - } - this.__array = array; - } - if(length > 0) { - this.set_length(length); - } - this.fixed = fixed; -}; -$hxClasses["openfl._Vector.FloatVector"] = openfl__$Vector_FloatVector; -openfl__$Vector_FloatVector.__name__ = "openfl._Vector.FloatVector"; -openfl__$Vector_FloatVector.__interfaces__ = [openfl__$Vector_IVector]; -openfl__$Vector_FloatVector.prototype = { - fixed: null - ,__array: null - ,concat: function(a) { - if(a == null) { - return new openfl__$Vector_FloatVector(0,false,this.__array.slice()); - } else { - var other = a; - if(other.__array.length > 0) { - return new openfl__$Vector_FloatVector(0,false,this.__array.concat(other.__array)); - } else { - return new openfl__$Vector_FloatVector(0,false,this.__array.slice()); - } - } - } - ,copy: function() { - return new openfl__$Vector_FloatVector(0,this.fixed,this.__array.slice()); - } - ,filter: function(callback) { - var tmp = this.fixed; - var _g = []; - var _g1 = 0; - var _g2 = this.__array; - while(_g1 < _g2.length) { - var v = _g2[_g1]; - ++_g1; - if(callback(v)) { - _g.push(v); - } - } - return new openfl__$Vector_FloatVector(0,tmp,_g); - } - ,get: function(index) { - return this.__array[index]; - } - ,indexOf: function(x,from) { - if(from == null) { - from = 0; - } - var _g = from; - var _g1 = this.__array.length; - while(_g < _g1) { - var i = _g++; - if(this.__array[i] == x) { - return i; - } - } - return -1; - } - ,insertAt: function(index,element) { - if(!this.fixed || index < this.__array.length) { - this.__array.splice(index,0,element); - } - } - ,iterator: function() { - return HxOverrides.iter(this.__array); - } - ,join: function(sep) { - if(sep == null) { - sep = ","; - } - return this.__array.join(sep); - } - ,lastIndexOf: function(x,from) { - var i = from == null || from >= this.__array.length ? this.__array.length - 1 : from; - while(i >= 0) { - if(this.__array[i] == x) { - return i; - } - --i; - } - return -1; - } - ,pop: function() { - if(!this.fixed) { - return this.__array.pop(); - } else { - return null; - } - } - ,push: function(x) { - if(!this.fixed) { - return this.__array.push(x); - } else { - return this.__array.length; - } - } - ,removeAt: function(index) { - if(!this.fixed || index < this.__array.length) { - return this.__array.splice(index,1)[0]; - } - return 0; - } - ,reverse: function() { - this.__array.reverse(); - return this; - } - ,set: function(index,value) { - if(!this.fixed || index < this.__array.length) { - return this.__array[index] = value; - } else { - return value; - } - } - ,shift: function() { - if(!this.fixed) { - return this.__array.shift(); - } else { - return null; - } - } - ,slice: function(startIndex,endIndex) { - if(startIndex == null) { - startIndex = 0; - } - if(endIndex == null) { - endIndex = 16777215; - } - return new openfl__$Vector_FloatVector(0,false,this.__array.slice(startIndex,endIndex)); - } - ,sort: function(f) { - this.__array.sort(f); - } - ,splice: function(pos,len) { - return new openfl__$Vector_FloatVector(0,false,this.__array.splice(pos,len)); - } - ,toJSON: function() { - return this.__array; - } - ,toString: function() { - if(this.__array != null) { - return this.__array.toString(); - } else { - return null; - } - } - ,unshift: function(x) { - if(!this.fixed) { - this.__array.unshift(x); - } - } - ,get_length: function() { - return this.__array.length; - } - ,set_length: function(value) { - if(value != this.__array.length && !this.fixed) { - var currentLength = this.__array.length; - if(value < 0) { - value = 0; - } - if(value > currentLength) { - var _g = currentLength; - var _g1 = value; - while(_g < _g1) { - var i = _g++; - this.__array[i] = 0; - } - } else { - while(this.__array.length > value) this.__array.pop(); - } - } - return this.__array.length; - } - ,__class__: openfl__$Vector_FloatVector - ,__properties__: {set_length:"set_length",get_length:"get_length"} -}; -var flixel_util_FlxPool_$flixel_$math_$FlxPoint = function(classObj) { - this._count = 0; - this._pool = []; - this._class = classObj; -}; -$hxClasses["flixel.util.FlxPool_flixel_math_FlxPoint"] = flixel_util_FlxPool_$flixel_$math_$FlxPoint; -flixel_util_FlxPool_$flixel_$math_$FlxPoint.__name__ = "flixel.util.FlxPool_flixel_math_FlxPoint"; -flixel_util_FlxPool_$flixel_$math_$FlxPoint.__interfaces__ = [flixel_util_IFlxPool]; -flixel_util_FlxPool_$flixel_$math_$FlxPoint.prototype = { - _pool: null - ,_class: null - ,_count: null - ,get: function() { - if(this._count == 0) { - return Type.createInstance(this._class,[]); - } - return this._pool[--this._count]; - } - ,put: function(obj) { - if(obj != null) { - var i = this._pool.indexOf(obj); - if(i == -1 || i >= this._count) { - obj.destroy(); - this._pool[this._count++] = obj; - } - } - } - ,putUnsafe: function(obj) { - if(obj != null) { - obj.destroy(); - this._pool[this._count++] = obj; - } - } - ,preAllocate: function(numObjects) { - while(numObjects-- > 0) this._pool[this._count++] = Type.createInstance(this._class,[]); - } - ,clear: function() { - this._count = 0; - var oldPool = this._pool; - this._pool = []; - return oldPool; - } - ,get_length: function() { - return this._count; - } - ,__class__: flixel_util_FlxPool_$flixel_$math_$FlxPoint - ,__properties__: {get_length:"get_length"} -}; -var flixel_math_FlxPoint = function(X,Y) { - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - this._inPool = false; - this._weak = false; - this.y = 0; - this.x = 0; - this.set(X,Y); -}; -$hxClasses["flixel.math.FlxPoint"] = flixel_math_FlxPoint; -flixel_math_FlxPoint.__name__ = "flixel.math.FlxPoint"; -flixel_math_FlxPoint.__interfaces__ = [flixel_util_IFlxPooled]; -flixel_math_FlxPoint.__properties__ = {get_pool:"get_pool"}; -flixel_math_FlxPoint.get = function(X,Y) { - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - return point; -}; -flixel_math_FlxPoint.weak = function(X,Y) { - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var X1 = X; - var Y1 = Y; - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X1,Y1); - point._inPool = false; - var point1 = point; - point1._weak = true; - return point1; -}; -flixel_math_FlxPoint.get_pool = function() { - return flixel_math_FlxPoint._pool; -}; -flixel_math_FlxPoint.prototype = { - x: null - ,y: null - ,_weak: null - ,_inPool: null - ,put: function() { - if(!this._inPool) { - this._inPool = true; - this._weak = false; - flixel_math_FlxPoint._pool.putUnsafe(this); - } - } - ,putWeak: function() { - if(this._weak) { - this.put(); - } - } - ,set: function(X,Y) { - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - this.set_x(X); - this.set_y(Y); - return this; - } - ,add: function(X,Y) { - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _g = this; - _g.set_x(_g.x + X); - var _g1 = this; - _g1.set_y(_g1.y + Y); - return this; - } - ,addPoint: function(point) { - var _g = this; - _g.set_x(_g.x + point.x); - var _g1 = this; - _g1.set_y(_g1.y + point.y); - if(point._weak) { - point.put(); - } - return this; - } - ,addPointWeak: function(point) { - var _g = this; - _g.set_x(_g.x + point.x); - var _g1 = this; - _g1.set_y(_g1.y + point.y); - return this; - } - ,subtract: function(X,Y) { - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _g = this; - _g.set_x(_g.x - X); - var _g1 = this; - _g1.set_y(_g1.y - Y); - return this; - } - ,subtractPoint: function(point) { - var _g = this; - _g.set_x(_g.x - point.x); - var _g1 = this; - _g1.set_y(_g1.y - point.y); - if(point._weak) { - point.put(); - } - return this; - } - ,subtractPointWeak: function(point) { - var _g = this; - _g.set_x(_g.x - point.x); - var _g1 = this; - _g1.set_y(_g1.y - point.y); - return this; - } - ,scale: function(k) { - var _g = this; - _g.set_x(_g.x * k); - var _g1 = this; - _g1.set_y(_g1.y * k); - return this; - } - ,copyFrom: function(point) { - this.set_x(point.x); - this.set_y(point.y); - if(point._weak) { - point.put(); - } - return this; - } - ,copyTo: function(point) { - if(point == null) { - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - point = point1; - } - point.set_x(this.x); - point.set_y(this.y); - return point; - } - ,copyFromFlash: function(FlashPoint) { - this.set_x(FlashPoint.x); - this.set_y(FlashPoint.y); - return this; - } - ,copyToFlash: function(FlashPoint) { - if(FlashPoint == null) { - FlashPoint = new openfl_geom_Point(); - } - FlashPoint.x = this.x; - FlashPoint.y = this.y; - return FlashPoint; - } - ,addToFlash: function(FlashPoint) { - FlashPoint.x += this.x; - FlashPoint.y += this.y; - return FlashPoint; - } - ,subtractFromFlash: function(FlashPoint) { - FlashPoint.x -= this.x; - FlashPoint.y -= this.y; - return FlashPoint; - } - ,inCoords: function(RectX,RectY,RectWidth,RectHeight) { - return flixel_math_FlxMath.pointInCoordinates(this.x,this.y,RectX,RectY,RectWidth,RectHeight); - } - ,inRect: function(Rect) { - return flixel_math_FlxMath.pointInFlxRect(this.x,this.y,Rect); - } - ,distanceTo: function(point) { - var dx = this.x - point.x; - var dy = this.y - point.y; - if(point._weak) { - point.put(); - } - return Math.sqrt(dx * dx + dy * dy); - } - ,floor: function() { - this.set_x(Math.floor(this.x)); - this.set_y(Math.floor(this.y)); - return this; - } - ,ceil: function() { - this.set_x(Math.ceil(this.x)); - this.set_y(Math.ceil(this.y)); - return this; - } - ,round: function() { - this.set_x(Math.round(this.x)); - this.set_y(Math.round(this.y)); - return this; - } - ,rotate: function(Pivot,Angle) { - var radians = Angle * (Math.PI / 180); - var n = radians; - n *= 0.3183098862; - if(n > 1) { - n -= Math.ceil(n) >> 1 << 1; - } else if(n < -1) { - n += Math.ceil(-n) >> 1 << 1; - } - var sin = n > 0 ? n * (3.1 + n * (0.5 + n * (-7.2 + n * 3.6))) : n * (3.1 - n * (0.5 + n * (7.2 + n * 3.6))); - var n1 = radians + 1.570796327; - n1 *= 0.3183098862; - if(n1 > 1) { - n1 -= Math.ceil(n1) >> 1 << 1; - } else if(n1 < -1) { - n1 += Math.ceil(-n1) >> 1 << 1; - } - var cos = n1 > 0 ? n1 * (3.1 + n1 * (0.5 + n1 * (-7.2 + n1 * 3.6))) : n1 * (3.1 - n1 * (0.5 + n1 * (7.2 + n1 * 3.6))); - var dx = this.x - Pivot.x; - var dy = this.y - Pivot.y; - this.set_x(cos * dx - sin * dy + Pivot.x); - this.set_y(sin * dx + cos * dy + Pivot.y); - if(Pivot._weak) { - Pivot.put(); - } - return this; - } - ,angleBetween: function(point) { - var x = point.x - this.x; - var y = point.y - this.y; - var angle = 0; - if(x != 0 || y != 0) { - var c1 = Math.PI * 0.25; - var c2 = 3 * c1; - var ay = y < 0 ? -y : y; - if(x >= 0) { - angle = c1 - c1 * ((x - ay) / (x + ay)); - } else { - angle = c2 - c1 * ((x + ay) / (ay - x)); - } - angle = (y < 0 ? -angle : angle) * (180 / Math.PI); - if(angle > 90) { - angle -= 270; - } else { - angle += 90; - } - } - if(point._weak) { - point.put(); - } - return angle; - } - ,toVector: function() { - var x = this.x; - var y = this.y; - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - var X = x; - var Y = y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - return point; - } - ,equals: function(point) { - var result = Math.abs(this.x - point.x) <= 0.0000001 && Math.abs(this.y - point.y) <= 0.0000001; - if(point._weak) { - point.put(); - } - return result; - } - ,destroy: function() { - } - ,transform: function(matrix) { - var x1 = this.x * matrix.a + this.y * matrix.c + matrix.tx; - var y1 = this.x * matrix.b + this.y * matrix.d + matrix.ty; - return this.set(x1,y1); - } - ,toString: function() { - var value = this.x; - var _this = flixel_util_LabelValuePair._pool.get(); - _this.label = "x"; - _this.value = value; - var value1 = this.y; - var _this1 = flixel_util_LabelValuePair._pool.get(); - _this1.label = "y"; - _this1.value = value1; - return flixel_util_FlxStringUtil.getDebugString([_this,_this1]); - } - ,set_x: function(Value) { - return this.x = Value; - } - ,set_y: function(Value) { - return this.y = Value; - } - ,__class__: flixel_math_FlxPoint - ,__properties__: {set_y:"set_y",set_x:"set_x"} -}; -var lime_math_Matrix3 = function(a,b,c,d,tx,ty) { - if(ty == null) { - ty = 0; - } - if(tx == null) { - tx = 0; - } - if(d == null) { - d = 1; - } - if(c == null) { - c = 0; - } - if(b == null) { - b = 0; - } - if(a == null) { - a = 1; - } - this.a = a; - this.b = b; - this.c = c; - this.d = d; - this.tx = tx; - this.ty = ty; -}; -$hxClasses["lime.math.Matrix3"] = lime_math_Matrix3; -lime_math_Matrix3.__name__ = "lime.math.Matrix3"; -lime_math_Matrix3.prototype = { - a: null - ,b: null - ,c: null - ,d: null - ,tx: null - ,ty: null - ,clone: function() { - return new lime_math_Matrix3(this.a,this.b,this.c,this.d,this.tx,this.ty); - } - ,concat: function(m) { - var a1 = this.a * m.a + this.b * m.c; - this.b = this.a * m.b + this.b * m.d; - this.a = a1; - var c1 = this.c * m.a + this.d * m.c; - this.d = this.c * m.b + this.d * m.d; - this.c = c1; - var tx1 = this.tx * m.a + this.ty * m.c + m.tx; - this.ty = this.tx * m.b + this.ty * m.d + m.ty; - this.tx = tx1; - } - ,copyColumnFrom: function(column,vector4) { - if(column > 2) { - throw new js__$Boot_HaxeError("Column " + column + " out of bounds (2)"); - } else if(column == 0) { - this.a = vector4.x; - this.b = vector4.y; - } else if(column == 1) { - this.c = vector4.x; - this.d = vector4.y; - } else { - this.tx = vector4.x; - this.ty = vector4.y; - } - } - ,copyColumnTo: function(column,vector4) { - if(column > 2) { - throw new js__$Boot_HaxeError("Column " + column + " out of bounds (2)"); - } else if(column == 0) { - vector4.x = this.a; - vector4.y = this.b; - vector4.z = 0; - } else if(column == 1) { - vector4.x = this.c; - vector4.y = this.d; - vector4.z = 0; - } else { - vector4.x = this.tx; - vector4.y = this.ty; - vector4.z = 1; - } - } - ,copyFrom: function(sourceMatrix3) { - this.a = sourceMatrix3.a; - this.b = sourceMatrix3.b; - this.c = sourceMatrix3.c; - this.d = sourceMatrix3.d; - this.tx = sourceMatrix3.tx; - this.ty = sourceMatrix3.ty; - } - ,copyRowFrom: function(row,vector4) { - if(row > 2) { - throw new js__$Boot_HaxeError("Row " + row + " out of bounds (2)"); - } else if(row == 0) { - this.a = vector4.x; - this.c = vector4.y; - this.tx = vector4.z; - } else if(row == 1) { - this.b = vector4.x; - this.d = vector4.y; - this.ty = vector4.z; - } - } - ,copyRowTo: function(row,vector4) { - if(row > 2) { - throw new js__$Boot_HaxeError("Row " + row + " out of bounds (2)"); - } else if(row == 0) { - vector4.x = this.a; - vector4.y = this.c; - vector4.z = this.tx; - } else if(row == 1) { - vector4.x = this.b; - vector4.y = this.d; - vector4.z = this.ty; - } else { - vector4.x = 0; - vector4.y = 0; - vector4.z = 1; - } - } - ,createBox: function(scaleX,scaleY,rotation,tx,ty) { - if(ty == null) { - ty = 0; - } - if(tx == null) { - tx = 0; - } - if(rotation == null) { - rotation = 0; - } - if(rotation != 0) { - var cos = Math.cos(rotation); - var sin = Math.sin(rotation); - this.a = cos * scaleX; - this.b = sin * scaleY; - this.c = -sin * scaleX; - this.d = cos * scaleY; - } else { - this.a = scaleX; - this.b = 0; - this.c = 0; - this.d = scaleY; - } - this.tx = tx; - this.ty = ty; - } - ,createGradientBox: function(width,height,rotation,tx,ty) { - if(ty == null) { - ty = 0; - } - if(tx == null) { - tx = 0; - } - if(rotation == null) { - rotation = 0; - } - this.a = width / 1638.4; - this.d = height / 1638.4; - if(rotation != 0) { - var cos = Math.cos(rotation); - var sin = Math.sin(rotation); - this.b = sin * this.d; - this.c = -sin * this.a; - this.a *= cos; - this.d *= cos; - } else { - this.b = 0; - this.c = 0; - } - this.tx = tx + width / 2; - this.ty = ty + height / 2; - } - ,equals: function(matrix3) { - if(matrix3 != null && this.tx == matrix3.tx && this.ty == matrix3.ty && this.a == matrix3.a && this.b == matrix3.b && this.c == matrix3.c) { - return this.d == matrix3.d; - } else { - return false; - } - } - ,deltaTransformVector: function(Vector2,result) { - if(result == null) { - result = new lime_math_Vector2(); - } - result.x = Vector2.x * this.a + Vector2.y * this.c; - result.y = Vector2.x * this.b + Vector2.y * this.d; - return result; - } - ,identity: function() { - this.a = 1; - this.b = 0; - this.c = 0; - this.d = 1; - this.tx = 0; - this.ty = 0; - } - ,invert: function() { - var norm = this.a * this.d - this.b * this.c; - if(norm == 0) { - this.a = this.b = this.c = this.d = 0; - this.tx = -this.tx; - this.ty = -this.ty; - } else { - norm = 1.0 / norm; - var a1 = this.d * norm; - this.d = this.a * norm; - this.a = a1; - this.b *= -norm; - this.c *= -norm; - var tx1 = -this.a * this.tx - this.c * this.ty; - this.ty = -this.b * this.tx - this.d * this.ty; - this.tx = tx1; - } - return this; - } - ,rotate: function(theta) { - var cos = Math.cos(theta); - var sin = Math.sin(theta); - var a1 = this.a * cos - this.b * sin; - this.b = this.a * sin + this.b * cos; - this.a = a1; - var c1 = this.c * cos - this.d * sin; - this.d = this.c * sin + this.d * cos; - this.c = c1; - var tx1 = this.tx * cos - this.ty * sin; - this.ty = this.tx * sin + this.ty * cos; - this.tx = tx1; - } - ,scale: function(sx,sy) { - this.a *= sx; - this.b *= sy; - this.c *= sx; - this.d *= sy; - this.tx *= sx; - this.ty *= sy; - } - ,setRotation: function(theta,scale) { - if(scale == null) { - scale = 1; - } - this.a = Math.cos(theta) * scale; - this.c = Math.sin(theta) * scale; - this.b = -this.c; - this.d = this.a; - } - ,setTo: function(a,b,c,d,tx,ty) { - this.a = a; - this.b = b; - this.c = c; - this.d = d; - this.tx = tx; - this.ty = ty; - } - ,to3DString: function(roundPixels) { - if(roundPixels == null) { - roundPixels = false; - } - if(roundPixels) { - return "matrix3d(" + this.a + ", " + this.b + ", " + "0, 0, " + this.c + ", " + this.d + ", " + "0, 0, 0, 0, 1, 0, " + (this.tx | 0) + ", " + (this.ty | 0) + ", 0, 1)"; - } else { - return "matrix3d(" + this.a + ", " + this.b + ", " + "0, 0, " + this.c + ", " + this.d + ", " + "0, 0, 0, 0, 1, 0, " + this.tx + ", " + this.ty + ", 0, 1)"; - } - } - ,toString: function() { - return "matrix(" + this.a + ", " + this.b + ", " + this.c + ", " + this.d + ", " + this.tx + ", " + this.ty + ")"; - } - ,transformRect: function(rect,result) { - if(result == null) { - result = new lime_math_Rectangle(); - } - var tx0 = this.a * rect.x + this.c * rect.y; - var tx1 = tx0; - var ty0 = this.b * rect.x + this.d * rect.y; - var ty1 = ty0; - var tx = this.a * (rect.x + rect.width) + this.c * rect.y; - var ty = this.b * (rect.x + rect.width) + this.d * rect.y; - if(tx < tx0) { - tx0 = tx; - } - if(ty < ty0) { - ty0 = ty; - } - if(tx > tx1) { - tx1 = tx; - } - if(ty > ty1) { - ty1 = ty; - } - tx = this.a * (rect.x + rect.width) + this.c * (rect.y + rect.height); - ty = this.b * (rect.x + rect.width) + this.d * (rect.y + rect.height); - if(tx < tx0) { - tx0 = tx; - } - if(ty < ty0) { - ty0 = ty; - } - if(tx > tx1) { - tx1 = tx; - } - if(ty > ty1) { - ty1 = ty; - } - tx = this.a * rect.x + this.c * (rect.y + rect.height); - ty = this.b * rect.x + this.d * (rect.y + rect.height); - if(tx < tx0) { - tx0 = tx; - } - if(ty < ty0) { - ty0 = ty; - } - if(tx > tx1) { - tx1 = tx; - } - if(ty > ty1) { - ty1 = ty; - } - result.setTo(tx0 + tx,ty0 + ty,tx1 - tx0,ty1 - ty0); - return result; - } - ,transformVector: function(pos,result) { - if(result == null) { - result = new lime_math_Vector2(); - } - result.x = pos.x * this.a + pos.y * this.c + this.tx; - result.y = pos.x * this.b + pos.y * this.d + this.ty; - return result; - } - ,translate: function(dx,dy) { - this.tx += dx; - this.ty += dy; - } - ,__class__: lime_math_Matrix3 -}; -var openfl_geom_Matrix = function(a,b,c,d,tx,ty) { - if(ty == null) { - ty = 0; - } - if(tx == null) { - tx = 0; - } - if(d == null) { - d = 1; - } - if(c == null) { - c = 0; - } - if(b == null) { - b = 0; - } - if(a == null) { - a = 1; - } - this.a = a; - this.b = b; - this.c = c; - this.d = d; - this.tx = tx; - this.ty = ty; -}; -$hxClasses["openfl.geom.Matrix"] = openfl_geom_Matrix; -openfl_geom_Matrix.__name__ = "openfl.geom.Matrix"; -openfl_geom_Matrix.prototype = { - a: null - ,b: null - ,c: null - ,d: null - ,tx: null - ,ty: null - ,__array: null - ,clone: function() { - return new openfl_geom_Matrix(this.a,this.b,this.c,this.d,this.tx,this.ty); - } - ,concat: function(m) { - var a1 = this.a * m.a + this.b * m.c; - this.b = this.a * m.b + this.b * m.d; - this.a = a1; - var c1 = this.c * m.a + this.d * m.c; - this.d = this.c * m.b + this.d * m.d; - this.c = c1; - var tx1 = this.tx * m.a + this.ty * m.c + m.tx; - this.ty = this.tx * m.b + this.ty * m.d + m.ty; - this.tx = tx1; - } - ,copyColumnFrom: function(column,vector3D) { - if(column > 2) { - throw new js__$Boot_HaxeError("Column " + column + " out of bounds (2)"); - } else if(column == 0) { - this.a = vector3D.x; - this.b = vector3D.y; - } else if(column == 1) { - this.c = vector3D.x; - this.d = vector3D.y; - } else { - this.tx = vector3D.x; - this.ty = vector3D.y; - } - } - ,copyColumnTo: function(column,vector3D) { - if(column > 2) { - throw new js__$Boot_HaxeError("Column " + column + " out of bounds (2)"); - } else if(column == 0) { - vector3D.x = this.a; - vector3D.y = this.b; - vector3D.z = 0; - } else if(column == 1) { - vector3D.x = this.c; - vector3D.y = this.d; - vector3D.z = 0; - } else { - vector3D.x = this.tx; - vector3D.y = this.ty; - vector3D.z = 1; - } - } - ,copyFrom: function(sourceMatrix) { - this.a = sourceMatrix.a; - this.b = sourceMatrix.b; - this.c = sourceMatrix.c; - this.d = sourceMatrix.d; - this.tx = sourceMatrix.tx; - this.ty = sourceMatrix.ty; - } - ,copyRowFrom: function(row,vector3D) { - if(row > 2) { - throw new js__$Boot_HaxeError("Row " + row + " out of bounds (2)"); - } else if(row == 0) { - this.a = vector3D.x; - this.c = vector3D.y; - this.tx = vector3D.z; - } else if(row == 1) { - this.b = vector3D.x; - this.d = vector3D.y; - this.ty = vector3D.z; - } - } - ,copyRowTo: function(row,vector3D) { - if(row > 2) { - throw new js__$Boot_HaxeError("Row " + row + " out of bounds (2)"); - } else if(row == 0) { - vector3D.x = this.a; - vector3D.y = this.c; - vector3D.z = this.tx; - } else if(row == 1) { - vector3D.x = this.b; - vector3D.y = this.d; - vector3D.z = this.ty; - } else { - vector3D.setTo(0,0,1); - } - } - ,createBox: function(scaleX,scaleY,rotation,tx,ty) { - if(ty == null) { - ty = 0; - } - if(tx == null) { - tx = 0; - } - if(rotation == null) { - rotation = 0; - } - if(rotation != 0) { - var cos = Math.cos(rotation); - var sin = Math.sin(rotation); - this.a = cos * scaleX; - this.b = sin * scaleY; - this.c = -sin * scaleX; - this.d = cos * scaleY; - } else { - this.a = scaleX; - this.b = 0; - this.c = 0; - this.d = scaleY; - } - this.tx = tx; - this.ty = ty; - } - ,createGradientBox: function(width,height,rotation,tx,ty) { - if(ty == null) { - ty = 0; - } - if(tx == null) { - tx = 0; - } - if(rotation == null) { - rotation = 0; - } - this.a = width / 1638.4; - this.d = height / 1638.4; - if(rotation != 0) { - var cos = Math.cos(rotation); - var sin = Math.sin(rotation); - this.b = sin * this.d; - this.c = -sin * this.a; - this.a *= cos; - this.d *= cos; - } else { - this.b = 0; - this.c = 0; - } - this.tx = tx + width / 2; - this.ty = ty + height / 2; - } - ,deltaTransformPoint: function(point) { - return new openfl_geom_Point(point.x * this.a + point.y * this.c,point.x * this.b + point.y * this.d); - } - ,equals: function(matrix) { - if(matrix != null && this.tx == matrix.tx && this.ty == matrix.ty && this.a == matrix.a && this.b == matrix.b && this.c == matrix.c) { - return this.d == matrix.d; - } else { - return false; - } - } - ,identity: function() { - this.a = 1; - this.b = 0; - this.c = 0; - this.d = 1; - this.tx = 0; - this.ty = 0; - } - ,invert: function() { - var norm = this.a * this.d - this.b * this.c; - if(norm == 0) { - this.a = this.b = this.c = this.d = 0; - this.tx = -this.tx; - this.ty = -this.ty; - } else { - norm = 1.0 / norm; - var a1 = this.d * norm; - this.d = this.a * norm; - this.a = a1; - this.b *= -norm; - this.c *= -norm; - var tx1 = -this.a * this.tx - this.c * this.ty; - this.ty = -this.b * this.tx - this.d * this.ty; - this.tx = tx1; - } - return this; - } - ,rotate: function(theta) { - var cos = Math.cos(theta); - var sin = Math.sin(theta); - var a1 = this.a * cos - this.b * sin; - this.b = this.a * sin + this.b * cos; - this.a = a1; - var c1 = this.c * cos - this.d * sin; - this.d = this.c * sin + this.d * cos; - this.c = c1; - var tx1 = this.tx * cos - this.ty * sin; - this.ty = this.tx * sin + this.ty * cos; - this.tx = tx1; - } - ,scale: function(sx,sy) { - this.a *= sx; - this.b *= sy; - this.c *= sx; - this.d *= sy; - this.tx *= sx; - this.ty *= sy; - } - ,setRotation: function(theta,scale) { - if(scale == null) { - scale = 1; - } - this.a = Math.cos(theta) * scale; - this.c = Math.sin(theta) * scale; - this.b = -this.c; - this.d = this.a; - } - ,setTo: function(a,b,c,d,tx,ty) { - this.a = a; - this.b = b; - this.c = c; - this.d = d; - this.tx = tx; - this.ty = ty; - } - ,to3DString: function(roundPixels) { - if(roundPixels == null) { - roundPixels = false; - } - if(roundPixels) { - return "matrix3d(" + this.a + ", " + this.b + ", 0, 0, " + this.c + ", " + this.d + ", 0, 0, 0, 0, 1, 0, " + (this.tx | 0) + ", " + (this.ty | 0) + ", 0, 1)"; - } else { - return "matrix3d(" + this.a + ", " + this.b + ", 0, 0, " + this.c + ", " + this.d + ", 0, 0, 0, 0, 1, 0, " + this.tx + ", " + this.ty + ", 0, 1)"; - } - } - ,toMozString: function() { - return "matrix(" + this.a + ", " + this.b + ", " + this.c + ", " + this.d + ", " + this.tx + "px, " + this.ty + "px)"; - } - ,toString: function() { - return "matrix(" + this.a + ", " + this.b + ", " + this.c + ", " + this.d + ", " + this.tx + ", " + this.ty + ")"; - } - ,transformPoint: function(pos) { - return new openfl_geom_Point(pos.x * this.a + pos.y * this.c + this.tx,pos.x * this.b + pos.y * this.d + this.ty); - } - ,translate: function(dx,dy) { - this.tx += dx; - this.ty += dy; - } - ,toArray: function(transpose) { - if(transpose == null) { - transpose = false; - } - if(this.__array == null) { - var array = null; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this1 = new Float32Array(9); - this.__array = this1; - } - if(transpose) { - this.__array[0] = this.a; - this.__array[1] = this.b; - this.__array[2] = 0; - this.__array[3] = this.c; - this.__array[4] = this.d; - this.__array[5] = 0; - this.__array[6] = this.tx; - this.__array[7] = this.ty; - this.__array[8] = 1; - } else { - this.__array[0] = this.a; - this.__array[1] = this.c; - this.__array[2] = this.tx; - this.__array[3] = this.b; - this.__array[4] = this.d; - this.__array[5] = this.ty; - this.__array[6] = 0; - this.__array[7] = 0; - this.__array[8] = 1; - } - return this.__array; - } - ,__cleanValues: function() { - this.a = Math.round(this.a * 1000) / 1000; - this.b = Math.round(this.b * 1000) / 1000; - this.c = Math.round(this.c * 1000) / 1000; - this.d = Math.round(this.d * 1000) / 1000; - this.tx = Math.round(this.tx * 10) / 10; - this.ty = Math.round(this.ty * 10) / 10; - } - ,__toMatrix3: function() { - openfl_geom_Matrix.__matrix3.setTo(this.a,this.b,this.c,this.d,this.tx,this.ty); - return openfl_geom_Matrix.__matrix3; - } - ,__transformInversePoint: function(point) { - var norm = this.a * this.d - this.b * this.c; - if(norm == 0) { - point.x = -this.tx; - point.y = -this.ty; - } else { - var px = 1.0 / norm * (this.c * (this.ty - point.y) + this.d * (point.x - this.tx)); - point.y = 1.0 / norm * (this.a * (point.y - this.ty) + this.b * (this.tx - point.x)); - point.x = px; - } - } - ,__transformInverseX: function(px,py) { - var norm = this.a * this.d - this.b * this.c; - if(norm == 0) { - return -this.tx; - } else { - return 1.0 / norm * (this.c * (this.ty - py) + this.d * (px - this.tx)); - } - } - ,__transformInverseY: function(px,py) { - var norm = this.a * this.d - this.b * this.c; - if(norm == 0) { - return -this.ty; - } else { - return 1.0 / norm * (this.a * (py - this.ty) + this.b * (this.tx - px)); - } - } - ,__transformPoint: function(point) { - var px = point.x; - var py = point.y; - point.x = px * this.a + py * this.c + this.tx; - point.y = px * this.b + py * this.d + this.ty; - } - ,__transformX: function(px,py) { - return px * this.a + py * this.c + this.tx; - } - ,__transformY: function(px,py) { - return px * this.b + py * this.d + this.ty; - } - ,__translateTransformed: function(px,py) { - this.tx = px * this.a + py * this.c + this.tx; - this.ty = px * this.b + py * this.d + this.ty; - } - ,__class__: openfl_geom_Matrix -}; -var openfl_geom_ColorTransform = function(redMultiplier,greenMultiplier,blueMultiplier,alphaMultiplier,redOffset,greenOffset,blueOffset,alphaOffset) { - if(alphaOffset == null) { - alphaOffset = 0; - } - if(blueOffset == null) { - blueOffset = 0; - } - if(greenOffset == null) { - greenOffset = 0; - } - if(redOffset == null) { - redOffset = 0; - } - if(alphaMultiplier == null) { - alphaMultiplier = 1; - } - if(blueMultiplier == null) { - blueMultiplier = 1; - } - if(greenMultiplier == null) { - greenMultiplier = 1; - } - if(redMultiplier == null) { - redMultiplier = 1; - } - this.redMultiplier = redMultiplier; - this.greenMultiplier = greenMultiplier; - this.blueMultiplier = blueMultiplier; - this.alphaMultiplier = alphaMultiplier; - this.redOffset = redOffset; - this.greenOffset = greenOffset; - this.blueOffset = blueOffset; - this.alphaOffset = alphaOffset; -}; -$hxClasses["openfl.geom.ColorTransform"] = openfl_geom_ColorTransform; -openfl_geom_ColorTransform.__name__ = "openfl.geom.ColorTransform"; -openfl_geom_ColorTransform.__limeColorMatrix = null; -openfl_geom_ColorTransform.prototype = { - alphaMultiplier: null - ,alphaOffset: null - ,blueMultiplier: null - ,blueOffset: null - ,greenMultiplier: null - ,greenOffset: null - ,redMultiplier: null - ,redOffset: null - ,concat: function(second) { - this.redOffset = second.redOffset * this.redMultiplier + this.redOffset; - this.greenOffset = second.greenOffset * this.greenMultiplier + this.greenOffset; - this.blueOffset = second.blueOffset * this.blueMultiplier + this.blueOffset; - this.alphaOffset = second.alphaOffset * this.alphaMultiplier + this.alphaOffset; - this.redMultiplier *= second.redMultiplier; - this.greenMultiplier *= second.greenMultiplier; - this.blueMultiplier *= second.blueMultiplier; - this.alphaMultiplier *= second.alphaMultiplier; - } - ,toString: function() { - return "(redMultiplier=" + this.redMultiplier + ", greenMultiplier=" + this.greenMultiplier + ", blueMultiplier=" + this.blueMultiplier + ", alphaMultiplier=" + this.alphaMultiplier + ", redOffset=" + this.redOffset + ", greenOffset=" + this.greenOffset + ", blueOffset=" + this.blueOffset + ", alphaOffset=" + this.alphaOffset + ")"; - } - ,__clone: function() { - return new openfl_geom_ColorTransform(this.redMultiplier,this.greenMultiplier,this.blueMultiplier,this.alphaMultiplier,this.redOffset,this.greenOffset,this.blueOffset,this.alphaOffset); - } - ,__copyFrom: function(ct) { - this.redMultiplier = ct.redMultiplier; - this.greenMultiplier = ct.greenMultiplier; - this.blueMultiplier = ct.blueMultiplier; - this.alphaMultiplier = ct.alphaMultiplier; - this.redOffset = ct.redOffset; - this.greenOffset = ct.greenOffset; - this.blueOffset = ct.blueOffset; - this.alphaOffset = ct.alphaOffset; - } - ,__combine: function(ct) { - this.redMultiplier *= ct.redMultiplier; - this.greenMultiplier *= ct.greenMultiplier; - this.blueMultiplier *= ct.blueMultiplier; - this.alphaMultiplier *= ct.alphaMultiplier; - this.redOffset += ct.redOffset; - this.greenOffset += ct.greenOffset; - this.blueOffset += ct.blueOffset; - this.alphaOffset += ct.alphaOffset; - } - ,__identity: function() { - this.redMultiplier = 1; - this.greenMultiplier = 1; - this.blueMultiplier = 1; - this.alphaMultiplier = 1; - this.redOffset = 0; - this.greenOffset = 0; - this.blueOffset = 0; - this.alphaOffset = 0; - } - ,__invert: function() { - this.redMultiplier = this.redMultiplier != 0 ? 1 / this.redMultiplier : 1; - this.greenMultiplier = this.greenMultiplier != 0 ? 1 / this.greenMultiplier : 1; - this.blueMultiplier = this.blueMultiplier != 0 ? 1 / this.blueMultiplier : 1; - this.alphaMultiplier = this.alphaMultiplier != 0 ? 1 / this.alphaMultiplier : 1; - this.redOffset = -this.redOffset; - this.greenOffset = -this.greenOffset; - this.blueOffset = -this.blueOffset; - this.alphaOffset = -this.alphaOffset; - } - ,__equals: function(ct,ignoreAlphaMultiplier) { - if(ct != null && this.redMultiplier == ct.redMultiplier && this.greenMultiplier == ct.greenMultiplier && this.blueMultiplier == ct.blueMultiplier && (ignoreAlphaMultiplier || this.alphaMultiplier == ct.alphaMultiplier) && this.redOffset == ct.redOffset && this.greenOffset == ct.greenOffset && this.blueOffset == ct.blueOffset) { - return this.alphaOffset == ct.alphaOffset; - } else { - return false; - } - } - ,__isDefault: function(ignoreAlphaMultiplier) { - if(ignoreAlphaMultiplier) { - if(this.redMultiplier == 1 && this.greenMultiplier == 1 && this.blueMultiplier == 1 && this.redOffset == 0 && this.greenOffset == 0 && this.blueOffset == 0) { - return this.alphaOffset == 0; - } else { - return false; - } - } else if(this.redMultiplier == 1 && this.greenMultiplier == 1 && this.blueMultiplier == 1 && this.alphaMultiplier == 1 && this.redOffset == 0 && this.greenOffset == 0 && this.blueOffset == 0) { - return this.alphaOffset == 0; - } else { - return false; - } - } - ,__setArrays: function(colorMultipliers,colorOffsets) { - colorMultipliers[0] = this.redMultiplier; - colorMultipliers[1] = this.greenMultiplier; - colorMultipliers[2] = this.blueMultiplier; - colorMultipliers[3] = this.alphaMultiplier; - colorOffsets[0] = this.redOffset; - colorOffsets[1] = this.greenOffset; - colorOffsets[2] = this.blueOffset; - colorOffsets[3] = this.alphaOffset; - } - ,get_color: function() { - return (this.redOffset | 0) << 16 | (this.greenOffset | 0) << 8 | (this.blueOffset | 0); - } - ,set_color: function(value) { - this.redOffset = value >> 16 & 255; - this.greenOffset = value >> 8 & 255; - this.blueOffset = value & 255; - this.redMultiplier = 0; - this.greenMultiplier = 0; - this.blueMultiplier = 0; - return this.get_color(); - } - ,__toLimeColorMatrix: function() { - if(openfl_geom_ColorTransform.__limeColorMatrix == null) { - var array = null; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this1 = new Float32Array(20); - openfl_geom_ColorTransform.__limeColorMatrix = this1; - } - openfl_geom_ColorTransform.__limeColorMatrix[0] = this.redMultiplier; - openfl_geom_ColorTransform.__limeColorMatrix[4] = this.redOffset / 255; - openfl_geom_ColorTransform.__limeColorMatrix[6] = this.greenMultiplier; - openfl_geom_ColorTransform.__limeColorMatrix[9] = this.greenOffset / 255; - openfl_geom_ColorTransform.__limeColorMatrix[12] = this.blueMultiplier; - openfl_geom_ColorTransform.__limeColorMatrix[14] = this.blueOffset / 255; - openfl_geom_ColorTransform.__limeColorMatrix[18] = this.alphaMultiplier; - openfl_geom_ColorTransform.__limeColorMatrix[19] = this.alphaOffset / 255; - return openfl_geom_ColorTransform.__limeColorMatrix; - } - ,__class__: openfl_geom_ColorTransform - ,__properties__: {set_color:"set_color",get_color:"get_color"} -}; -var flixel_FlxCamera = function(X,Y,Width,Height,Zoom) { - if(Zoom == null) { - Zoom = 0; - } - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - this._helperPoint = new openfl_geom_Point(); - this._helperMatrix = new flixel_math_FlxMatrix(); - var _this = flixel_math_FlxRect._pool.get(); - _this.x = 0; - _this.y = 0; - _this.width = 0; - _this.height = 0; - _this._inPool = false; - this._bounds = _this; - this._scrollRect = new openfl_display_Sprite(); - this.initialZoom = 1; - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - this._point = point; - this._fxShakeAxes = flixel_util_FlxAxes.XY; - this._fxShakeDuration = 0; - this._fxShakeIntensity = 0; - this._fxFadeAlpha = 0; - this._fxFadeCompleted = true; - this._fxFadeComplete = null; - this._fxFadeIn = false; - this._fxFadeDuration = 0; - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - this._scrollTarget = point1; - this._fxFadeColor = 0; - this._fxFlashAlpha = 0; - this._fxFlashComplete = null; - this._fxFlashDuration = 0; - this._fxFlashColor = 0; - var point2 = flixel_math_FlxPoint._pool.get().set(0,0); - point2._inPool = false; - this._flashOffset = point2; - this._flashPoint = new openfl_geom_Point(); - this.filtersEnabled = true; - var point3 = flixel_math_FlxPoint._pool.get().set(0,0); - point3._inPool = false; - this.followLead = point3; - this.antialiasing = false; - this.color = -1; - this.angle = 0; - this.alpha = 1; - this._useBlitMatrix = false; - this._blitMatrix = new flixel_math_FlxMatrix(); - this.viewHeight = 0; - this.viewWidth = 0; - this.viewOffsetHeight = 0; - this.viewOffsetWidth = 0; - this.viewOffsetY = 0; - this.viewOffsetX = 0; - this.height = 0; - this.width = 0; - this.flashSprite = new openfl_display_Sprite(); - this.useBgAlphaBlending = false; - var point4 = flixel_math_FlxPoint._pool.get().set(0,0); - point4._inPool = false; - this.scroll = point4; - this.followLerp = 60 / flixel_FlxG.updateFramerate; - var point5 = flixel_math_FlxPoint._pool.get().set(0,0); - point5._inPool = false; - this.targetOffset = point5; - this.scaleY = 0; - this.scaleX = 0; - this.y = 0; - this.x = 0; - flixel_FlxBasic.call(this); - this.set_x(X); - this.set_y(Y); - this.set_width(Width <= 0 ? flixel_FlxG.width : Width); - this.set_height(Height <= 0 ? flixel_FlxG.height : Height); - this._flashRect = new openfl_geom_Rectangle(0,0,this.width,this.height); - this.flashSprite.addChild(this._scrollRect); - this._scrollRect.set_scrollRect(new openfl_geom_Rectangle()); - this.pixelPerfectRender = flixel_FlxG.renderBlit; - if(flixel_FlxG.renderBlit) { - this.screen = new flixel_FlxSprite(); - this.buffer = new openfl_display_BitmapData(this.width,this.height,true,0); - this.screen.set_pixels(this.buffer); - this.screen.origin.set(); - this._flashBitmap = new openfl_display_Bitmap(this.buffer); - this._scrollRect.addChild(this._flashBitmap); - this._fill = new openfl_display_BitmapData(this.width,this.height,true,0); - } else { - this.canvas = new openfl_display_Sprite(); - this._scrollRect.addChild(this.canvas); - } - this.set_color(-1); - this.initialZoom = Zoom == 0 ? flixel_FlxCamera.defaultZoom : Zoom; - this.set_zoom(Zoom); - this.updateScrollRect(); - this.updateFlashOffset(); - this.updateFlashSpritePosition(); - this.updateInternalSpritePositions(); - this.bgColor = flixel_FlxG.cameras.get_bgColor(); -}; -$hxClasses["flixel.FlxCamera"] = flixel_FlxCamera; -flixel_FlxCamera.__name__ = "flixel.FlxCamera"; -flixel_FlxCamera.defaultZoom = null; -flixel_FlxCamera.defaultCameras = null; -flixel_FlxCamera._storageTilesHead = null; -flixel_FlxCamera._storageTrianglesHead = null; -flixel_FlxCamera.__super__ = flixel_FlxBasic; -flixel_FlxCamera.prototype = $extend(flixel_FlxBasic.prototype,{ - x: null - ,y: null - ,scaleX: null - ,scaleY: null - ,totalScaleX: null - ,totalScaleY: null - ,style: null - ,target: null - ,targetOffset: null - ,followLerp: null - ,deadzone: null - ,minScrollX: null - ,maxScrollX: null - ,minScrollY: null - ,maxScrollY: null - ,scroll: null - ,buffer: null - ,bgColor: null - ,screen: null - ,useBgAlphaBlending: null - ,flashSprite: null - ,pixelPerfectRender: null - ,width: null - ,height: null - ,zoom: null - ,viewOffsetX: null - ,viewOffsetY: null - ,viewOffsetWidth: null - ,viewOffsetHeight: null - ,viewWidth: null - ,viewHeight: null - ,_blitMatrix: null - ,_useBlitMatrix: null - ,alpha: null - ,angle: null - ,color: null - ,antialiasing: null - ,followLead: null - ,filtersEnabled: null - ,_flashRect: null - ,_flashPoint: null - ,_flashOffset: null - ,_fxFlashColor: null - ,_fxFlashDuration: null - ,_fxFlashComplete: null - ,_fxFlashAlpha: null - ,_fxFadeColor: null - ,_lastTargetPosition: null - ,_scrollTarget: null - ,_fxFadeDuration: null - ,_fxFadeIn: null - ,_fxFadeComplete: null - ,_fxFadeCompleted: null - ,_fxFadeAlpha: null - ,_fxShakeIntensity: null - ,_fxShakeDuration: null - ,_fxShakeComplete: null - ,_fxShakeAxes: null - ,_point: null - ,_filters: null - ,initialZoom: null - ,_fill: null - ,_flashBitmap: null - ,_scrollRect: null - ,_bounds: null - ,canvas: null - ,_helperMatrix: null - ,_helperPoint: null - ,_currentDrawItem: null - ,_headOfDrawStack: null - ,_headTiles: null - ,_headTriangles: null - ,startQuadBatch: function(graphic,colored,hasColorOffsets,blend,smooth,shader) { - if(smooth == null) { - smooth = false; - } - if(hasColorOffsets == null) { - hasColorOffsets = false; - } - var itemToReturn = null; - var blendInt = flixel_graphics_tile_FlxDrawBaseItem.blendToInt(blend); - if(this._currentDrawItem != null && this._currentDrawItem.type == flixel_graphics_tile_FlxDrawItemType.TILES && this._headTiles.graphics == graphic && this._headTiles.colored == colored && this._headTiles.hasColorOffsets == hasColorOffsets && this._headTiles.blending == blendInt && this._headTiles.blend == blend && this._headTiles.antialiasing == smooth && this._headTiles.shader == shader) { - return this._headTiles; - } - if(flixel_FlxCamera._storageTilesHead != null) { - itemToReturn = flixel_FlxCamera._storageTilesHead; - var newHead = flixel_FlxCamera._storageTilesHead.nextTyped; - itemToReturn.reset(); - flixel_FlxCamera._storageTilesHead = newHead; - } else { - itemToReturn = new flixel_graphics_tile_FlxDrawQuadsItem(); - } - itemToReturn.graphics = graphic; - itemToReturn.antialiasing = smooth; - itemToReturn.colored = colored; - itemToReturn.hasColorOffsets = hasColorOffsets; - itemToReturn.blending = blendInt; - itemToReturn.blend = blend; - itemToReturn.shader = shader; - itemToReturn.nextTyped = this._headTiles; - this._headTiles = itemToReturn; - if(this._headOfDrawStack == null) { - this._headOfDrawStack = itemToReturn; - } - if(this._currentDrawItem != null) { - this._currentDrawItem.next = itemToReturn; - } - this._currentDrawItem = itemToReturn; - return itemToReturn; - } - ,startTrianglesBatch: function(graphic,smoothing,isColored,blend) { - if(isColored == null) { - isColored = false; - } - if(smoothing == null) { - smoothing = false; - } - var blendInt = flixel_graphics_tile_FlxDrawBaseItem.blendToInt(blend); - if(this._currentDrawItem != null && this._currentDrawItem.type == flixel_graphics_tile_FlxDrawItemType.TRIANGLES && this._headTriangles.graphics == graphic && this._headTriangles.antialiasing == smoothing && this._headTriangles.colored == isColored && this._headTriangles.blending == blendInt) { - return this._headTriangles; - } - return this.getNewDrawTrianglesItem(graphic,smoothing,isColored,blend); - } - ,getNewDrawTrianglesItem: function(graphic,smoothing,isColored,blend) { - if(isColored == null) { - isColored = false; - } - if(smoothing == null) { - smoothing = false; - } - var itemToReturn = null; - var blendInt = flixel_graphics_tile_FlxDrawBaseItem.blendToInt(blend); - if(flixel_FlxCamera._storageTrianglesHead != null) { - itemToReturn = flixel_FlxCamera._storageTrianglesHead; - var newHead = flixel_FlxCamera._storageTrianglesHead.nextTyped; - itemToReturn.reset(); - flixel_FlxCamera._storageTrianglesHead = newHead; - } else { - itemToReturn = new flixel_graphics_tile_FlxDrawTrianglesItem(); - } - itemToReturn.graphics = graphic; - itemToReturn.antialiasing = smoothing; - itemToReturn.colored = isColored; - itemToReturn.blending = blendInt; - itemToReturn.nextTyped = this._headTriangles; - this._headTriangles = itemToReturn; - if(this._headOfDrawStack == null) { - this._headOfDrawStack = itemToReturn; - } - if(this._currentDrawItem != null) { - this._currentDrawItem.next = itemToReturn; - } - this._currentDrawItem = itemToReturn; - return itemToReturn; - } - ,clearDrawStack: function() { - var currTiles = this._headTiles; - var newTilesHead; - while(currTiles != null) { - newTilesHead = currTiles.nextTyped; - currTiles.reset(); - currTiles.nextTyped = flixel_FlxCamera._storageTilesHead; - flixel_FlxCamera._storageTilesHead = currTiles; - currTiles = newTilesHead; - } - var currTriangles = this._headTriangles; - var newTrianglesHead; - while(currTriangles != null) { - newTrianglesHead = currTriangles.nextTyped; - currTriangles.reset(); - currTriangles.nextTyped = flixel_FlxCamera._storageTrianglesHead; - flixel_FlxCamera._storageTrianglesHead = currTriangles; - currTriangles = newTrianglesHead; - } - this._currentDrawItem = null; - this._headOfDrawStack = null; - this._headTiles = null; - this._headTriangles = null; - } - ,render: function() { - var currItem = this._headOfDrawStack; - while(currItem != null) { - currItem.render(this); - currItem = currItem.next; - } - } - ,drawPixels: function(frame,pixels,matrix,transform,blend,smoothing,shader) { - if(smoothing == null) { - smoothing = false; - } - if(flixel_FlxG.renderBlit) { - this._helperMatrix.copyFrom(matrix); - if(this._useBlitMatrix) { - this._helperMatrix.concat(this._blitMatrix); - this.buffer.draw(pixels,this._helperMatrix,null,null,null,smoothing || this.antialiasing); - } else { - this._helperMatrix.translate(-this.viewOffsetX,-this.viewOffsetY); - this.buffer.draw(pixels,this._helperMatrix,null,blend,null,smoothing || this.antialiasing); - } - } else { - var isColored = transform != null && flixel_util_FlxColorTransformUtil.hasRGBMultipliers(transform); - var hasColorOffsets = transform != null && flixel_util_FlxColorTransformUtil.hasRGBAOffsets(transform); - var drawItem = this.startQuadBatch(frame.parent,isColored,hasColorOffsets,blend,smoothing,shader); - drawItem.addQuad(frame,matrix,transform); - } - } - ,copyPixels: function(frame,pixels,sourceRect,destPoint,transform,blend,smoothing,shader) { - if(smoothing == null) { - smoothing = false; - } - if(flixel_FlxG.renderBlit) { - if(pixels != null) { - if(this._useBlitMatrix) { - this._helperMatrix.identity(); - this._helperMatrix.translate(destPoint.x,destPoint.y); - this._helperMatrix.concat(this._blitMatrix); - this.buffer.draw(pixels,this._helperMatrix,null,null,null,smoothing || this.antialiasing); - } else { - this._helperPoint.x = destPoint.x - (this.viewOffsetX | 0); - this._helperPoint.y = destPoint.y - (this.viewOffsetY | 0); - this.buffer.copyPixels(pixels,sourceRect,this._helperPoint,null,null,true); - } - } else if(frame != null) { - frame.paint(this.buffer,destPoint,true); - } - } else { - this._helperMatrix.identity(); - this._helperMatrix.translate(destPoint.x + frame.offset.x,destPoint.y + frame.offset.y); - var isColored = transform != null && flixel_util_FlxColorTransformUtil.hasRGBMultipliers(transform); - var hasColorOffsets = transform != null && flixel_util_FlxColorTransformUtil.hasRGBAOffsets(transform); - var drawItem = this.startQuadBatch(frame.parent,isColored,hasColorOffsets,blend,smoothing,shader); - drawItem.addQuad(frame,this._helperMatrix,transform); - } - } - ,drawTriangles: function(graphic,vertices,indices,uvtData,colors,position,blend,repeat,smoothing) { - if(smoothing == null) { - smoothing = false; - } - if(repeat == null) { - repeat = false; - } - if(flixel_FlxG.renderBlit) { - if(position == null) { - position = flixel_FlxCamera.renderPoint.set(); - } - var _this = this._bounds; - var X = 0; - var Y = 0; - var Width = this.width; - var Height = this.height; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - var verticesLength = vertices.get_length(); - var currentVertexPosition = 0; - var tempX; - var tempY; - var i = 0; - var _this1 = flixel_FlxCamera.renderRect; - _this1.x = 0; - _this1.y = 0; - _this1.width = 0; - _this1.height = 0; - var bounds = _this1; - flixel_FlxCamera.drawVertices.splice(0,flixel_FlxCamera.drawVertices.get_length()); - while(i < verticesLength) { - tempX = position.x + vertices.get(i); - tempY = position.y + vertices.get(i + 1); - flixel_FlxCamera.drawVertices.set(currentVertexPosition++,tempX); - flixel_FlxCamera.drawVertices.set(currentVertexPosition++,tempY); - if(i == 0) { - var X1 = tempX; - var Y1 = tempY; - var Width1 = 0; - var Height1 = 0; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - bounds.x = X1; - bounds.y = Y1; - bounds.width = Width1; - bounds.height = Height1; - } else { - if(tempX < bounds.x) { - bounds.width += bounds.x - tempX; - bounds.x = tempX; - } - if(tempY < bounds.y) { - bounds.height += bounds.y - tempY; - bounds.y = tempY; - } - if(tempX > bounds.x + bounds.width) { - bounds.width = tempX - bounds.x; - } - if(tempY > bounds.y + bounds.height) { - bounds.height = tempY - bounds.y; - } - } - i += 2; - } - if(position._weak) { - position.put(); - } - var _this2 = this._bounds; - var result = bounds.x + bounds.width > _this2.x && bounds.x < _this2.x + _this2.width && bounds.y + bounds.height > _this2.y && bounds.y < _this2.y + _this2.height; - if(bounds._weak) { - if(!bounds._inPool) { - bounds._inPool = true; - bounds._weak = false; - flixel_math_FlxRect._pool.putUnsafe(bounds); - } - } - if(!result) { - flixel_FlxCamera.drawVertices.splice(flixel_FlxCamera.drawVertices.get_length() - verticesLength,verticesLength); - } else { - flixel_FlxCamera.trianglesSprite.get_graphics().clear(); - flixel_FlxCamera.trianglesSprite.get_graphics().beginBitmapFill(graphic.bitmap,null,repeat,smoothing); - flixel_FlxCamera.trianglesSprite.get_graphics().drawTriangles(flixel_FlxCamera.drawVertices,indices,uvtData); - flixel_FlxCamera.trianglesSprite.get_graphics().endFill(); - if(this._useBlitMatrix) { - this._helperMatrix.copyFrom(this._blitMatrix); - } else { - this._helperMatrix.identity(); - this._helperMatrix.translate(-this.viewOffsetX,-this.viewOffsetY); - } - this.buffer.draw(flixel_FlxCamera.trianglesSprite,this._helperMatrix); - } - if(!bounds._inPool) { - bounds._inPool = true; - bounds._weak = false; - flixel_math_FlxRect._pool.putUnsafe(bounds); - } - } else { - var _this3 = this._bounds; - var X2 = 0; - var Y2 = 0; - var Width2 = this.width; - var Height2 = this.height; - if(Height2 == null) { - Height2 = 0; - } - if(Width2 == null) { - Width2 = 0; - } - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - _this3.x = X2; - _this3.y = Y2; - _this3.width = Width2; - _this3.height = Height2; - var isColored = colors != null && colors.get_length() != 0; - var drawItem = this.startTrianglesBatch(graphic,smoothing,isColored,blend); - drawItem.addTriangles(vertices,indices,uvtData,colors,position,this._bounds); - } - } - ,transformRect: function(rect) { - if(flixel_FlxG.renderBlit) { - rect.x += -this.viewOffsetX; - rect.y += -this.viewOffsetY; - if(this._useBlitMatrix) { - rect.x *= this.zoom; - rect.y *= this.zoom; - rect.width *= this.zoom; - rect.height *= this.zoom; - } - } - return rect; - } - ,transformPoint: function(point) { - if(flixel_FlxG.renderBlit) { - var X = this.viewOffsetX; - var Y = this.viewOffsetY; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _g = point; - _g.set_x(_g.x - X); - var _g1 = point; - _g1.set_y(_g1.y - Y); - if(this._useBlitMatrix) { - point.scale(this.zoom); - } - } - return point; - } - ,transformVector: function(vector) { - if(flixel_FlxG.renderBlit && this._useBlitMatrix) { - vector.scale(this.zoom); - } - return vector; - } - ,transformObject: function(object) { - var _g = object; - _g.set_scaleX(_g.get_scaleX() * this.totalScaleX); - var _g1 = object; - _g1.set_scaleY(_g1.get_scaleY() * this.totalScaleY); - var _g2 = object; - _g2.set_x(_g2.get_x() - this.scroll.x * this.totalScaleX); - var _g3 = object; - _g3.set_y(_g3.get_y() - this.scroll.y * this.totalScaleY); - var _g4 = object; - _g4.set_x(_g4.get_x() - 0.5 * this.width * (this.scaleX - this.initialZoom) * flixel_FlxG.scaleMode.scale.x); - var _g5 = object; - _g5.set_y(_g5.get_y() - 0.5 * this.height * (this.scaleY - this.initialZoom) * flixel_FlxG.scaleMode.scale.y); - return object; - } - ,destroy: function() { - flixel_util_FlxDestroyUtil.removeChild(this.flashSprite,this._scrollRect); - if(flixel_FlxG.renderBlit) { - flixel_util_FlxDestroyUtil.removeChild(this._scrollRect,this._flashBitmap); - this.screen = flixel_util_FlxDestroyUtil.destroy(this.screen); - this.buffer = null; - this._flashBitmap = null; - this._fill = flixel_util_FlxDestroyUtil.dispose(this._fill); - } else { - flixel_util_FlxDestroyUtil.removeChild(this._scrollRect,this.canvas); - if(this.canvas != null) { - var _g = 0; - var _g1 = this.canvas.get_numChildren(); - while(_g < _g1) { - var i = _g++; - this.canvas.removeChildAt(0); - } - this.canvas = null; - } - if(this._headOfDrawStack != null) { - this.clearDrawStack(); - } - this._blitMatrix = null; - this._helperMatrix = null; - this._helperPoint = null; - } - this._bounds = null; - this.scroll = flixel_util_FlxDestroyUtil.put(this.scroll); - this.targetOffset = flixel_util_FlxDestroyUtil.put(this.targetOffset); - this.deadzone = flixel_util_FlxDestroyUtil.put(this.deadzone); - this.target = null; - this.flashSprite = null; - this._scrollRect = null; - this._flashRect = null; - this._flashPoint = null; - this._fxFlashComplete = null; - this._fxFadeComplete = null; - this._fxShakeComplete = null; - flixel_FlxBasic.prototype.destroy.call(this); - } - ,update: function(elapsed) { - if(this.target != null) { - this.updateFollow(); - } - this.updateScroll(); - this.updateFlash(elapsed); - this.updateFade(elapsed); - this.flashSprite.set_filters(this.filtersEnabled ? this._filters : null); - this.updateFlashSpritePosition(); - this.updateShake(elapsed); - } - ,updateScroll: function() { - var zoom = this.zoom / flixel_FlxG.initialZoom; - var minX = this.minScrollX == null ? null : this.minScrollX - (zoom - 1) * this.width / (2 * zoom); - var maxX = this.maxScrollX == null ? null : this.maxScrollX + (zoom - 1) * this.width / (2 * zoom); - var minY = this.minScrollY == null ? null : this.minScrollY - (zoom - 1) * this.height / (2 * zoom); - var maxY = this.maxScrollY == null ? null : this.maxScrollY + (zoom - 1) * this.height / (2 * zoom); - var Value = this.scroll.x; - var Max = maxX != null ? maxX - this.width : null; - var lowerBound = minX != null && Value < minX ? minX : Value; - this.scroll.set_x(Max != null && lowerBound > Max ? Max : lowerBound); - var Value1 = this.scroll.y; - var Max1 = maxY != null ? maxY - this.height : null; - var lowerBound1 = minY != null && Value1 < minY ? minY : Value1; - this.scroll.set_y(Max1 != null && lowerBound1 > Max1 ? Max1 : lowerBound1); - } - ,updateFollow: function() { - if(this.deadzone == null) { - this.target.getMidpoint(this._point); - this._point.addPoint(this.targetOffset); - var point = this._point; - this.scroll.set(point.x - this.width * 0.5,point.y - this.height * 0.5); - if(point._weak) { - point.put(); - } - } else { - var edge; - var targetX = this.target.x + this.targetOffset.x; - var targetY = this.target.y + this.targetOffset.y; - if(this.style == flixel_FlxCameraFollowStyle.SCREEN_BY_SCREEN) { - if(targetX >= this.scroll.x + this.width) { - var _g = this._scrollTarget; - _g.set_x(_g.x + this.width); - } else if(targetX < this.scroll.x) { - var _g1 = this._scrollTarget; - _g1.set_x(_g1.x - this.width); - } - if(targetY >= this.scroll.y + this.height) { - var _g2 = this._scrollTarget; - _g2.set_y(_g2.y + this.height); - } else if(targetY < this.scroll.y) { - var _g3 = this._scrollTarget; - _g3.set_y(_g3.y - this.height); - } - } else { - edge = targetX - this.deadzone.x; - if(this._scrollTarget.x > edge) { - this._scrollTarget.set_x(edge); - } - edge = targetX + this.target.get_width() - this.deadzone.x - this.deadzone.width; - if(this._scrollTarget.x < edge) { - this._scrollTarget.set_x(edge); - } - edge = targetY - this.deadzone.y; - if(this._scrollTarget.y > edge) { - this._scrollTarget.set_y(edge); - } - edge = targetY + this.target.get_height() - this.deadzone.y - this.deadzone.height; - if(this._scrollTarget.y < edge) { - this._scrollTarget.set_y(edge); - } - } - if(((this.target) instanceof flixel_FlxSprite)) { - if(this._lastTargetPosition == null) { - var X = this.target.x; - var Y = this.target.y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point1 = flixel_math_FlxPoint._pool.get().set(X,Y); - point1._inPool = false; - this._lastTargetPosition = point1; - } - var _g4 = this._scrollTarget; - _g4.set_x(_g4.x + (this.target.x - this._lastTargetPosition.x) * this.followLead.x); - var _g5 = this._scrollTarget; - _g5.set_y(_g5.y + (this.target.y - this._lastTargetPosition.y) * this.followLead.y); - this._lastTargetPosition.set_x(this.target.x); - this._lastTargetPosition.set_y(this.target.y); - } - if(this.followLerp >= 60 / flixel_FlxG.updateFramerate) { - var _this = this.scroll; - var point2 = this._scrollTarget; - _this.set_x(point2.x); - _this.set_y(point2.y); - if(point2._weak) { - point2.put(); - } - } else { - var _g6 = this.scroll; - _g6.set_x(_g6.x + (this._scrollTarget.x - this.scroll.x) * this.followLerp * flixel_FlxG.updateFramerate / 60); - var _g7 = this.scroll; - _g7.set_y(_g7.y + (this._scrollTarget.y - this.scroll.y) * this.followLerp * flixel_FlxG.updateFramerate / 60); - } - } - } - ,updateFlash: function(elapsed) { - if(this._fxFlashAlpha > 0.0) { - this._fxFlashAlpha -= elapsed / this._fxFlashDuration; - if(this._fxFlashAlpha <= 0 && this._fxFlashComplete != null) { - this._fxFlashComplete(); - } - } - } - ,updateFade: function(elapsed) { - if(this._fxFadeCompleted) { - return; - } - if(this._fxFadeIn) { - this._fxFadeAlpha -= elapsed / this._fxFadeDuration; - if(this._fxFadeAlpha <= 0.0) { - this._fxFadeAlpha = 0.0; - this.completeFade(); - } - } else { - this._fxFadeAlpha += elapsed / this._fxFadeDuration; - if(this._fxFadeAlpha >= 1.0) { - this._fxFadeAlpha = 1.0; - this.completeFade(); - } - } - } - ,completeFade: function() { - this._fxFadeCompleted = true; - if(this._fxFadeComplete != null) { - this._fxFadeComplete(); - } - } - ,updateShake: function(elapsed) { - if(this._fxShakeDuration > 0) { - this._fxShakeDuration -= elapsed; - if(this._fxShakeDuration <= 0) { - if(this._fxShakeComplete != null) { - this._fxShakeComplete(); - } - } else { - if(this._fxShakeAxes != flixel_util_FlxAxes.Y) { - var _g = this.flashSprite; - _g.set_x(_g.get_x() + flixel_FlxG.random.float(-this._fxShakeIntensity * this.width,this._fxShakeIntensity * this.width) * this.zoom * flixel_FlxG.scaleMode.scale.x); - } - if(this._fxShakeAxes != flixel_util_FlxAxes.X) { - var _g1 = this.flashSprite; - _g1.set_y(_g1.get_y() + flixel_FlxG.random.float(-this._fxShakeIntensity * this.height,this._fxShakeIntensity * this.height) * this.zoom * flixel_FlxG.scaleMode.scale.y); - } - } - } - } - ,updateFlashSpritePosition: function() { - if(this.flashSprite != null) { - this.flashSprite.set_x(this.x * flixel_FlxG.scaleMode.scale.x + this._flashOffset.x); - this.flashSprite.set_y(this.y * flixel_FlxG.scaleMode.scale.y + this._flashOffset.y); - } - } - ,updateFlashOffset: function() { - this._flashOffset.set_x(this.width * 0.5 * flixel_FlxG.scaleMode.scale.x * this.initialZoom); - this._flashOffset.set_y(this.height * 0.5 * flixel_FlxG.scaleMode.scale.y * this.initialZoom); - } - ,updateScrollRect: function() { - var rect = this._scrollRect != null ? this._scrollRect.get_scrollRect() : null; - if(rect != null) { - rect.x = rect.y = 0; - rect.width = this.width * this.initialZoom * flixel_FlxG.scaleMode.scale.x; - rect.height = this.height * this.initialZoom * flixel_FlxG.scaleMode.scale.y; - this._scrollRect.set_scrollRect(rect); - this._scrollRect.set_x(-0.5 * rect.width); - this._scrollRect.set_y(-0.5 * rect.height); - } - } - ,updateInternalSpritePositions: function() { - if(flixel_FlxG.renderBlit) { - if(this._flashBitmap != null) { - this._flashBitmap.set_x(0); - this._flashBitmap.set_y(0); - } - } else if(this.canvas != null) { - this.canvas.set_x(-0.5 * this.width * (this.scaleX - this.initialZoom) * flixel_FlxG.scaleMode.scale.x); - this.canvas.set_y(-0.5 * this.height * (this.scaleY - this.initialZoom) * flixel_FlxG.scaleMode.scale.y); - this.canvas.set_scaleX(this.totalScaleX); - this.canvas.set_scaleY(this.totalScaleY); - } - } - ,follow: function(Target,Style,Lerp) { - if(Style == null) { - Style = flixel_FlxCameraFollowStyle.LOCKON; - } - if(Lerp == null) { - Lerp = 60 / flixel_FlxG.updateFramerate; - } - this.style = Style; - this.target = Target; - this.set_followLerp(Lerp); - var helper; - var w = 0; - var h = 0; - this._lastTargetPosition = null; - switch(Style._hx_index) { - case 0: - if(this.target != null) { - w = this.target.get_width(); - h = this.target.get_height(); - } - var X = (this.width - w) / 2; - var Y = (this.height - h) / 2 - h * 0.25; - var Width = w; - var Height = h; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this.x = X1; - _this.y = Y1; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - this.deadzone = rect; - break; - case 1: - var w1 = this.width / 8; - var h1 = this.height / 3; - var X2 = (this.width - w1) / 2; - var Y2 = (this.height - h1) / 2 - h1 * 0.25; - var Width2 = w1; - var Height2 = h1; - if(Height2 == null) { - Height2 = 0; - } - if(Width2 == null) { - Width2 = 0; - } - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - var _this1 = flixel_math_FlxRect._pool.get(); - var X3 = X2; - var Y3 = Y2; - var Width3 = Width2; - var Height3 = Height2; - if(Height3 == null) { - Height3 = 0; - } - if(Width3 == null) { - Width3 = 0; - } - if(Y3 == null) { - Y3 = 0; - } - if(X3 == null) { - X3 = 0; - } - _this1.x = X3; - _this1.y = Y3; - _this1.width = Width3; - _this1.height = Height3; - var rect1 = _this1; - rect1._inPool = false; - this.deadzone = rect1; - break; - case 2: - helper = Math.max(this.width,this.height) / 4; - var X4 = (this.width - helper) / 2; - var Y4 = (this.height - helper) / 2; - var Width4 = helper; - var Height4 = helper; - if(Height4 == null) { - Height4 = 0; - } - if(Width4 == null) { - Width4 = 0; - } - if(Y4 == null) { - Y4 = 0; - } - if(X4 == null) { - X4 = 0; - } - var _this2 = flixel_math_FlxRect._pool.get(); - var X5 = X4; - var Y5 = Y4; - var Width5 = Width4; - var Height5 = Height4; - if(Height5 == null) { - Height5 = 0; - } - if(Width5 == null) { - Width5 = 0; - } - if(Y5 == null) { - Y5 = 0; - } - if(X5 == null) { - X5 = 0; - } - _this2.x = X5; - _this2.y = Y5; - _this2.width = Width5; - _this2.height = Height5; - var rect2 = _this2; - rect2._inPool = false; - this.deadzone = rect2; - break; - case 3: - helper = Math.max(this.width,this.height) / 8; - var X6 = (this.width - helper) / 2; - var Y6 = (this.height - helper) / 2; - var Width6 = helper; - var Height6 = helper; - if(Height6 == null) { - Height6 = 0; - } - if(Width6 == null) { - Width6 = 0; - } - if(Y6 == null) { - Y6 = 0; - } - if(X6 == null) { - X6 = 0; - } - var _this3 = flixel_math_FlxRect._pool.get(); - var X7 = X6; - var Y7 = Y6; - var Width7 = Width6; - var Height7 = Height6; - if(Height7 == null) { - Height7 = 0; - } - if(Width7 == null) { - Width7 = 0; - } - if(Y7 == null) { - Y7 = 0; - } - if(X7 == null) { - X7 = 0; - } - _this3.x = X7; - _this3.y = Y7; - _this3.width = Width7; - _this3.height = Height7; - var rect3 = _this3; - rect3._inPool = false; - this.deadzone = rect3; - break; - case 4: - var X8 = 0; - var Y8 = 0; - var Width8 = this.width; - var Height8 = this.height; - if(Height8 == null) { - Height8 = 0; - } - if(Width8 == null) { - Width8 = 0; - } - if(Y8 == null) { - Y8 = 0; - } - if(X8 == null) { - X8 = 0; - } - var _this4 = flixel_math_FlxRect._pool.get(); - var X9 = X8; - var Y9 = Y8; - var Width9 = Width8; - var Height9 = Height8; - if(Height9 == null) { - Height9 = 0; - } - if(Width9 == null) { - Width9 = 0; - } - if(Y9 == null) { - Y9 = 0; - } - if(X9 == null) { - X9 = 0; - } - _this4.x = X9; - _this4.y = Y9; - _this4.width = Width9; - _this4.height = Height9; - var rect4 = _this4; - rect4._inPool = false; - this.deadzone = rect4; - break; - case 5: - this.deadzone = null; - break; - } - } - ,snapToTarget: function() { - this.updateFollow(); - var _this = this.scroll; - var point = this._scrollTarget; - _this.set_x(point.x); - _this.set_y(point.y); - if(point._weak) { - point.put(); - } - } - ,focusOn: function(point) { - this.scroll.set(point.x - this.width * 0.5,point.y - this.height * 0.5); - if(point._weak) { - point.put(); - } - } - ,flash: function(Color,Duration,OnComplete,Force) { - if(Force == null) { - Force = false; - } - if(Duration == null) { - Duration = 1; - } - if(Color == null) { - Color = -1; - } - if(!Force && this._fxFlashAlpha > 0.0) { - return; - } - this._fxFlashColor = Color; - if(Duration <= 0) { - Duration = 0.000001; - } - this._fxFlashDuration = Duration; - this._fxFlashComplete = OnComplete; - this._fxFlashAlpha = 1.0; - } - ,fade: function(Color,Duration,FadeIn,OnComplete,Force) { - if(Force == null) { - Force = false; - } - if(FadeIn == null) { - FadeIn = false; - } - if(Duration == null) { - Duration = 1; - } - if(Color == null) { - Color = -16777216; - } - if(!this._fxFadeCompleted && !Force) { - return; - } - this._fxFadeColor = Color; - if(Duration <= 0) { - Duration = 0.000001; - } - this._fxFadeIn = FadeIn; - this._fxFadeDuration = Duration; - this._fxFadeComplete = OnComplete; - this._fxFadeAlpha = this._fxFadeIn ? 0.999999 : 0.000001; - this._fxFadeCompleted = false; - } - ,shake: function(Intensity,Duration,OnComplete,Force,Axes) { - if(Force == null) { - Force = true; - } - if(Duration == null) { - Duration = 0.5; - } - if(Intensity == null) { - Intensity = 0.05; - } - if(Axes == null) { - Axes = flixel_util_FlxAxes.XY; - } - if(!Force && this._fxShakeDuration > 0) { - return; - } - this._fxShakeIntensity = Intensity; - this._fxShakeDuration = Duration; - this._fxShakeComplete = OnComplete; - this._fxShakeAxes = Axes; - } - ,stopFX: function() { - this._fxFlashAlpha = 0.0; - this._fxFadeAlpha = 0.0; - this._fxShakeDuration = 0; - this.updateFlashSpritePosition(); - } - ,setFilters: function(filters) { - this._filters = filters; - } - ,copyFrom: function(Camera) { - this.setScrollBounds(Camera.minScrollX,Camera.maxScrollX,Camera.minScrollY,Camera.maxScrollY); - this.target = Camera.target; - if(this.target != null) { - if(Camera.deadzone == null) { - this.deadzone = null; - } else { - if(this.deadzone == null) { - var _this = flixel_math_FlxRect._pool.get(); - var X = 0; - var Y = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - var rect = _this; - rect._inPool = false; - this.deadzone = rect; - } - var _this1 = this.deadzone; - var Rect = Camera.deadzone; - _this1.x = Rect.x; - _this1.y = Rect.y; - _this1.width = Rect.width; - _this1.height = Rect.height; - if(Rect._weak) { - if(!Rect._inPool) { - Rect._inPool = true; - Rect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(Rect); - } - } - } - } - return this; - } - ,fill: function(Color,BlendAlpha,FxAlpha,graphics) { - if(FxAlpha == null) { - FxAlpha = 1.0; - } - if(BlendAlpha == null) { - BlendAlpha = true; - } - if(flixel_FlxG.renderBlit) { - if(BlendAlpha) { - this._fill.fillRect(this._flashRect,Color); - this.buffer.copyPixels(this._fill,this._flashRect,this._flashPoint,null,null,BlendAlpha); - } else { - this.buffer.fillRect(this._flashRect,Color); - } - } else { - var targetGraphics = graphics == null ? this.canvas.get_graphics() : graphics; - targetGraphics.beginFill(Color,FxAlpha); - targetGraphics.drawRect(this.viewOffsetX - 1,this.viewOffsetY - 1,this.viewWidth + 2,this.viewHeight + 2); - targetGraphics.endFill(); - } - } - ,drawFX: function() { - var alphaComponent; - if(this._fxFlashAlpha > 0.0) { - alphaComponent = this._fxFlashColor >> 24 & 255; - if(flixel_FlxG.renderBlit) { - this.fill((((alphaComponent <= 0 ? 255 : alphaComponent) * this._fxFlashAlpha | 0) << 24) + (this._fxFlashColor & 16777215)); - } else { - this.fill(this._fxFlashColor & 16777215,true,(alphaComponent <= 0 ? 255 : alphaComponent) * this._fxFlashAlpha / 255,this.canvas.get_graphics()); - } - } - if(this._fxFadeAlpha > 0.0) { - alphaComponent = this._fxFadeColor >> 24 & 255; - if(flixel_FlxG.renderBlit) { - this.fill((((alphaComponent <= 0 ? 255 : alphaComponent) * this._fxFadeAlpha | 0) << 24) + (this._fxFadeColor & 16777215)); - } else { - this.fill(this._fxFadeColor & 16777215,true,(alphaComponent <= 0 ? 255 : alphaComponent) * this._fxFadeAlpha / 255,this.canvas.get_graphics()); - } - } - } - ,checkResize: function() { - if(flixel_FlxG.renderBlit) { - if(this.width != this.buffer.width || this.height != this.buffer.height) { - var oldBuffer = this.screen.graphic; - this.buffer = new openfl_display_BitmapData(this.width,this.height,true,0); - this.screen.set_pixels(this.buffer); - this.screen.origin.set(); - this._flashBitmap.set_bitmapData(this.buffer); - this._flashRect.width = this.width; - this._flashRect.height = this.height; - this._fill = flixel_util_FlxDestroyUtil.dispose(this._fill); - this._fill = new openfl_display_BitmapData(this.width,this.height,true,0); - flixel_FlxG.bitmap.removeIfNoUse(oldBuffer); - } - this._blitMatrix.identity(); - this._blitMatrix.translate(-this.viewOffsetX,-this.viewOffsetY); - this._blitMatrix.scale(this.scaleX,this.scaleY); - this._useBlitMatrix = this.scaleX < this.initialZoom || this.scaleY < this.initialZoom; - } - } - ,updateBlitMatrix: function() { - this._blitMatrix.identity(); - this._blitMatrix.translate(-this.viewOffsetX,-this.viewOffsetY); - this._blitMatrix.scale(this.scaleX,this.scaleY); - this._useBlitMatrix = this.scaleX < this.initialZoom || this.scaleY < this.initialZoom; - } - ,setSize: function(Width,Height) { - this.set_width(Width); - this.set_height(Height); - } - ,setPosition: function(X,Y) { - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - this.set_x(X); - this.set_y(Y); - } - ,setScrollBoundsRect: function(X,Y,Width,Height,UpdateWorld) { - if(UpdateWorld == null) { - UpdateWorld = false; - } - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - if(UpdateWorld) { - var _this = flixel_FlxG.worldBounds; - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this.x = X1; - _this.y = Y1; - _this.width = Width1; - _this.height = Height1; - } - this.setScrollBounds(X,X + Width,Y,Y + Height); - } - ,setScrollBounds: function(MinX,MaxX,MinY,MaxY) { - this.minScrollX = MinX; - this.maxScrollX = MaxX; - this.minScrollY = MinY; - this.maxScrollY = MaxY; - this.updateScroll(); - } - ,setScale: function(X,Y) { - this.scaleX = X; - this.scaleY = Y; - this.totalScaleX = this.scaleX * flixel_FlxG.scaleMode.scale.x; - this.totalScaleY = this.scaleY * flixel_FlxG.scaleMode.scale.y; - if(flixel_FlxG.renderBlit) { - this._blitMatrix.identity(); - this._blitMatrix.translate(-this.viewOffsetX,-this.viewOffsetY); - this._blitMatrix.scale(this.scaleX,this.scaleY); - this._useBlitMatrix = this.scaleX < this.initialZoom || this.scaleY < this.initialZoom; - if(this._useBlitMatrix) { - this._flashBitmap.set_scaleX(this.initialZoom * flixel_FlxG.scaleMode.scale.x); - this._flashBitmap.set_scaleY(this.initialZoom * flixel_FlxG.scaleMode.scale.y); - } else { - this._flashBitmap.set_scaleX(this.totalScaleX); - this._flashBitmap.set_scaleY(this.totalScaleY); - } - } - this.viewOffsetX = 0.5 * this.width * (this.scaleX - this.initialZoom) / this.scaleX; - this.viewOffsetWidth = this.width - this.viewOffsetX; - this.viewWidth = this.width - 2 * this.viewOffsetX; - this.viewOffsetY = 0.5 * this.height * (this.scaleY - this.initialZoom) / this.scaleY; - this.viewOffsetHeight = this.height - this.viewOffsetY; - this.viewHeight = this.height - 2 * this.viewOffsetY; - this.updateScrollRect(); - this.updateInternalSpritePositions(); - flixel_FlxG.cameras.cameraResized.dispatch(this); - } - ,onResize: function() { - this.updateFlashOffset(); - this.setScale(this.scaleX,this.scaleY); - } - ,containsPoint: function(point,width,height) { - if(height == null) { - height = 0; - } - if(width == null) { - width = 0; - } - if(point.x + width > this.viewOffsetX && point.x < this.viewOffsetWidth && point.y + height > this.viewOffsetY) { - return point.y < this.viewOffsetHeight; - } else { - return false; - } - } - ,set_followLerp: function(Value) { - var Max = 60 / flixel_FlxG.updateFramerate; - var lowerBound = Value < 0 ? 0 : Value; - return this.followLerp = Max != null && lowerBound > Max ? Max : lowerBound; - } - ,set_width: function(Value) { - if(this.width != Value && Value > 0) { - this.width = Value; - this.viewOffsetX = 0.5 * this.width * (this.scaleX - this.initialZoom) / this.scaleX; - this.viewOffsetWidth = this.width - this.viewOffsetX; - this.viewWidth = this.width - 2 * this.viewOffsetX; - this.updateFlashOffset(); - this.updateScrollRect(); - this.updateInternalSpritePositions(); - flixel_FlxG.cameras.cameraResized.dispatch(this); - } - return Value; - } - ,set_height: function(Value) { - if(this.height != Value && Value > 0) { - this.height = Value; - this.viewOffsetY = 0.5 * this.height * (this.scaleY - this.initialZoom) / this.scaleY; - this.viewOffsetHeight = this.height - this.viewOffsetY; - this.viewHeight = this.height - 2 * this.viewOffsetY; - this.updateFlashOffset(); - this.updateScrollRect(); - this.updateInternalSpritePositions(); - flixel_FlxG.cameras.cameraResized.dispatch(this); - } - return Value; - } - ,set_zoom: function(Zoom) { - this.zoom = Zoom == 0 ? flixel_FlxCamera.defaultZoom : Zoom; - this.setScale(this.zoom,this.zoom); - return this.zoom; - } - ,set_alpha: function(Alpha) { - var lowerBound = Alpha < 0 ? 0 : Alpha; - this.alpha = lowerBound > 1 ? 1 : lowerBound; - if(flixel_FlxG.renderBlit) { - this._flashBitmap.set_alpha(Alpha); - } else { - this.canvas.set_alpha(Alpha); - } - return Alpha; - } - ,set_angle: function(Angle) { - this.angle = Angle; - this.flashSprite.set_rotation(Angle); - return Angle; - } - ,set_color: function(Color) { - this.color = Color; - var colorTransform; - if(flixel_FlxG.renderBlit) { - if(this._flashBitmap == null) { - return Color; - } - colorTransform = this._flashBitmap.get_transform().get_colorTransform(); - } else { - colorTransform = this.canvas.get_transform().get_colorTransform(); - } - colorTransform.redMultiplier = (this.color >> 16 & 255) / 255; - colorTransform.greenMultiplier = (this.color >> 8 & 255) / 255; - colorTransform.blueMultiplier = (this.color & 255) / 255; - if(flixel_FlxG.renderBlit) { - this._flashBitmap.get_transform().set_colorTransform(colorTransform); - } else { - this.canvas.get_transform().set_colorTransform(colorTransform); - } - return Color; - } - ,set_antialiasing: function(Antialiasing) { - this.antialiasing = Antialiasing; - if(flixel_FlxG.renderBlit) { - this._flashBitmap.smoothing = Antialiasing; - } - return Antialiasing; - } - ,set_x: function(x) { - this.x = x; - this.updateFlashSpritePosition(); - return x; - } - ,set_y: function(y) { - this.y = y; - this.updateFlashSpritePosition(); - return y; - } - ,set_visible: function(visible) { - if(this.flashSprite != null) { - this.flashSprite.set_visible(visible); - } - return this.visible = visible; - } - ,calcOffsetX: function() { - this.viewOffsetX = 0.5 * this.width * (this.scaleX - this.initialZoom) / this.scaleX; - this.viewOffsetWidth = this.width - this.viewOffsetX; - this.viewWidth = this.width - 2 * this.viewOffsetX; - } - ,calcOffsetY: function() { - this.viewOffsetY = 0.5 * this.height * (this.scaleY - this.initialZoom) / this.scaleY; - this.viewOffsetHeight = this.height - this.viewOffsetY; - this.viewHeight = this.height - 2 * this.viewOffsetY; - } - ,__class__: flixel_FlxCamera - ,__properties__: $extend(flixel_FlxBasic.prototype.__properties__,{set_antialiasing:"set_antialiasing",set_color:"set_color",set_angle:"set_angle",set_alpha:"set_alpha",set_zoom:"set_zoom",set_height:"set_height",set_width:"set_width",set_followLerp:"set_followLerp",set_y:"set_y",set_x:"set_x"}) -}); -var flixel_FlxCameraFollowStyle = $hxEnums["flixel.FlxCameraFollowStyle"] = { __ename__ : "flixel.FlxCameraFollowStyle", __constructs__ : ["LOCKON","PLATFORMER","TOPDOWN","TOPDOWN_TIGHT","SCREEN_BY_SCREEN","NO_DEAD_ZONE"] - ,LOCKON: {_hx_index:0,__enum__:"flixel.FlxCameraFollowStyle",toString:$estr} - ,PLATFORMER: {_hx_index:1,__enum__:"flixel.FlxCameraFollowStyle",toString:$estr} - ,TOPDOWN: {_hx_index:2,__enum__:"flixel.FlxCameraFollowStyle",toString:$estr} - ,TOPDOWN_TIGHT: {_hx_index:3,__enum__:"flixel.FlxCameraFollowStyle",toString:$estr} - ,SCREEN_BY_SCREEN: {_hx_index:4,__enum__:"flixel.FlxCameraFollowStyle",toString:$estr} - ,NO_DEAD_ZONE: {_hx_index:5,__enum__:"flixel.FlxCameraFollowStyle",toString:$estr} -}; -var flixel_system_FlxVersion = function(Major,Minor,Patch) { - this.major = Major; - this.minor = Minor; - this.patch = Patch; -}; -$hxClasses["flixel.system.FlxVersion"] = flixel_system_FlxVersion; -flixel_system_FlxVersion.__name__ = "flixel.system.FlxVersion"; -flixel_system_FlxVersion.prototype = { - major: null - ,minor: null - ,patch: null - ,toString: function() { - var sha = flixel_system_FlxVersion.sha; - if(sha != "") { - sha = "@" + sha.substring(0,7); - } - return "HaxeFlixel " + this.major + "." + this.minor + "." + this.patch + sha; - } - ,__class__: flixel_system_FlxVersion -}; -var flixel_system_frontEnds_BitmapFrontEnd = function() { - this._lastUniqueKeyIndex = 0; - this.reset(); -}; -$hxClasses["flixel.system.frontEnds.BitmapFrontEnd"] = flixel_system_frontEnds_BitmapFrontEnd; -flixel_system_frontEnds_BitmapFrontEnd.__name__ = "flixel.system.frontEnds.BitmapFrontEnd"; -flixel_system_frontEnds_BitmapFrontEnd.prototype = { - _cache: null - ,_whitePixel: null - ,_lastUniqueKeyIndex: null - ,onAssetsReload: function(_) { - var key = this._cache.keys(); - while(key.hasNext()) { - var key1 = key.next(); - var _this = this._cache; - var obj = __map_reserved[key1] != null ? _this.getReserved(key1) : _this.h[key1]; - if(obj != null && (obj.assetsClass != null || obj.assetsKey != null)) { - obj.onAssetsReload(); - } - } - } - ,onContext: function() { - var key = this._cache.keys(); - while(key.hasNext()) { - var key1 = key.next(); - var _this = this._cache; - var obj = __map_reserved[key1] != null ? _this.getReserved(key1) : _this.h[key1]; - if(obj != null && obj.isDumped) { - obj.onContext(); - } - } - } - ,dumpCache: function() { - } - ,undumpCache: function() { - } - ,checkCache: function(Key) { - var _this = this._cache; - return (__map_reserved[Key] != null ? _this.getReserved(Key) : _this.h[Key]) != null; - } - ,create: function(Width,Height,Color,Unique,Key) { - if(Unique == null) { - Unique = false; - } - return flixel_graphics_FlxGraphic.fromRectangle(Width,Height,Color,Unique,Key); - } - ,add: function(Graphic,Unique,Key) { - if(Unique == null) { - Unique = false; - } - if(((Graphic) instanceof flixel_graphics_FlxGraphic)) { - return flixel_graphics_FlxGraphic.fromGraphic(Graphic,Unique,Key); - } else if(((Graphic) instanceof openfl_display_BitmapData)) { - return flixel_graphics_FlxGraphic.fromBitmapData(Graphic,Unique,Key); - } - return flixel_graphics_FlxGraphic.fromAssetKey(Std.string(Graphic),Unique,Key); - } - ,addGraphic: function(graphic) { - var key = graphic.key; - var _this = this._cache; - if(__map_reserved[key] != null) { - _this.setReserved(key,graphic); - } else { - _this.h[key] = graphic; - } - return graphic; - } - ,get: function(key) { - var _this = this._cache; - if(__map_reserved[key] != null) { - return _this.getReserved(key); - } else { - return _this.h[key]; - } - } - ,findKeyForBitmap: function(bmd) { - var key = this._cache.keys(); - while(key.hasNext()) { - var key1 = key.next(); - var _this = this._cache; - if((__map_reserved[key1] != null ? _this.getReserved(key1) : _this.h[key1]).bitmap == bmd) { - return key1; - } - } - return null; - } - ,getKeyForClass: function(source) { - return source.__name__; - } - ,generateKey: function(systemKey,userKey,unique) { - if(unique == null) { - unique = false; - } - var key = userKey; - if(key == null) { - key = systemKey; - } - if(unique || key == null) { - key = this.getUniqueKey(key); - } - return key; - } - ,getUniqueKey: function(baseKey) { - if(baseKey == null) { - baseKey = "pixels"; - } - var _this = this._cache; - if((__map_reserved[baseKey] != null ? _this.getReserved(baseKey) : _this.h[baseKey]) == null) { - return baseKey; - } - var i = this._lastUniqueKeyIndex; - var uniqueKey; - while(true) { - ++i; - uniqueKey = baseKey + i; - var _this1 = this._cache; - if(!((__map_reserved[uniqueKey] != null ? _this1.getReserved(uniqueKey) : _this1.h[uniqueKey]) != null)) { - break; - } - } - this._lastUniqueKeyIndex = i; - return uniqueKey; - } - ,getKeyWithSpacesAndBorders: function(baseKey,frameSize,frameSpacing,frameBorder,region) { - var result = baseKey; - if(region != null) { - result += "_Region:" + region.x + "_" + region.y + "_" + region.width + "_" + region.height; - } - if(frameSize != null) { - result += "_FrameSize:" + frameSize.x + "_" + frameSize.y; - } - if(frameSpacing != null) { - result += "_Spaces:" + frameSpacing.x + "_" + frameSpacing.y; - } - if(frameBorder != null) { - result += "_Border:" + frameBorder.x + "_" + frameBorder.y; - } - return result; - } - ,remove: function(graphic) { - if(graphic != null) { - var key = graphic.key; - if(key != null) { - openfl_utils_Assets.cache.removeBitmapData(key); - this._cache.remove(key); - } - graphic.destroy(); - } - } - ,removeByKey: function(key) { - if(key != null) { - var _this = this._cache; - var obj = __map_reserved[key] != null ? _this.getReserved(key) : _this.h[key]; - if(key != null) { - openfl_utils_Assets.cache.removeBitmapData(key); - this._cache.remove(key); - } - if(obj != null) { - obj.destroy(); - } - } - } - ,removeIfNoUse: function(graphic) { - if(graphic != null && graphic.get_useCount() == 0 && !graphic.persist) { - this.remove(graphic); - } - } - ,clearCache: function() { - if(this._cache == null) { - this._cache = new haxe_ds_StringMap(); - return; - } - var key = this._cache.keys(); - while(key.hasNext()) { - var key1 = key.next(); - var _this = this._cache; - var obj = __map_reserved[key1] != null ? _this.getReserved(key1) : _this.h[key1]; - if(obj != null && !obj.persist && obj.get_useCount() <= 0) { - if(key1 != null) { - openfl_utils_Assets.cache.removeBitmapData(key1); - this._cache.remove(key1); - } - obj.destroy(); - } - } - } - ,removeKey: function(key) { - if(key != null) { - openfl_utils_Assets.cache.removeBitmapData(key); - this._cache.remove(key); - } - } - ,reset: function() { - if(this._cache == null) { - this._cache = new haxe_ds_StringMap(); - return; - } - var key = this._cache.keys(); - while(key.hasNext()) { - var key1 = key.next(); - var _this = this._cache; - var obj = __map_reserved[key1] != null ? _this.getReserved(key1) : _this.h[key1]; - if(key1 != null) { - openfl_utils_Assets.cache.removeBitmapData(key1); - this._cache.remove(key1); - } - if(obj != null) { - obj.destroy(); - } - } - } - ,clearUnused: function() { - var key = this._cache.keys(); - while(key.hasNext()) { - var key1 = key.next(); - var _this = this._cache; - var obj = __map_reserved[key1] != null ? _this.getReserved(key1) : _this.h[key1]; - if(obj != null && obj.get_useCount() <= 0 && !obj.persist && obj.get_destroyOnNoUse()) { - this.removeByKey(key1); - } - } - } - ,get_maxTextureSize: function() { - return lime_graphics_opengl_GL.context.getParameter(3379); - } - ,get_whitePixel: function() { - if(this._whitePixel == null) { - var bd = new openfl_display_BitmapData(10,10,true,-1); - var graphic = flixel_FlxG.bitmap.add(bd,true,"whitePixels"); - graphic.persist = true; - this._whitePixel = graphic.get_imageFrame().get_frame(); - } - return this._whitePixel; - } - ,__class__: flixel_system_frontEnds_BitmapFrontEnd - ,__properties__: {get_whitePixel:"get_whitePixel",get_maxTextureSize:"get_maxTextureSize"} -}; -var flixel_system_frontEnds_BitmapLogFrontEnd = function() { -}; -$hxClasses["flixel.system.frontEnds.BitmapLogFrontEnd"] = flixel_system_frontEnds_BitmapLogFrontEnd; -flixel_system_frontEnds_BitmapLogFrontEnd.__name__ = "flixel.system.frontEnds.BitmapLogFrontEnd"; -flixel_system_frontEnds_BitmapLogFrontEnd.prototype = { - add: function(Data,Name) { - if(Name == null) { - Name = ""; - } - } - ,clear: function() { - } - ,clearAt: function(Index) { - if(Index == null) { - Index = -1; - } - } - ,viewCache: function() { - } - ,__class__: flixel_system_frontEnds_BitmapLogFrontEnd -}; -var flixel_system_frontEnds_CameraFrontEnd = function() { - this._cameraRect = new openfl_geom_Rectangle(); - this.useBufferLocking = false; - this.cameraResized = new flixel_util__$FlxSignal_FlxSignal1(); - this.cameraRemoved = new flixel_util__$FlxSignal_FlxSignal1(); - this.cameraAdded = new flixel_util__$FlxSignal_FlxSignal1(); - this.list = []; - flixel_FlxCamera.defaultCameras = this.list; -}; -$hxClasses["flixel.system.frontEnds.CameraFrontEnd"] = flixel_system_frontEnds_CameraFrontEnd; -flixel_system_frontEnds_CameraFrontEnd.__name__ = "flixel.system.frontEnds.CameraFrontEnd"; -flixel_system_frontEnds_CameraFrontEnd.prototype = { - list: null - ,cameraAdded: null - ,cameraRemoved: null - ,cameraResized: null - ,useBufferLocking: null - ,_cameraRect: null - ,add: function(NewCamera) { - flixel_FlxG.game.addChildAt(NewCamera.flashSprite,flixel_FlxG.game.getChildIndex(flixel_FlxG.game._inputContainer)); - flixel_FlxG.cameras.list.push(NewCamera); - NewCamera.ID = flixel_FlxG.cameras.list.length - 1; - this.cameraAdded.dispatch(NewCamera); - return NewCamera; - } - ,remove: function(Camera,Destroy) { - if(Destroy == null) { - Destroy = true; - } - var index = this.list.indexOf(Camera); - if(Camera != null && index != -1) { - flixel_FlxG.game.removeChild(Camera.flashSprite); - this.list.splice(index,1); - } else { - return; - } - if(flixel_FlxG.renderTile) { - var _g = 0; - var _g1 = this.list.length; - while(_g < _g1) { - var i = _g++; - this.list[i].ID = i; - } - } - if(Destroy) { - Camera.destroy(); - } - this.cameraRemoved.dispatch(Camera); - } - ,reset: function(NewCamera) { - while(this.list.length > 0) this.remove(this.list[0]); - if(NewCamera == null) { - NewCamera = new flixel_FlxCamera(0,0,flixel_FlxG.width,flixel_FlxG.height); - } - flixel_FlxG.camera = this.add(NewCamera); - NewCamera.ID = 0; - flixel_FlxCamera.defaultCameras = this.list; - } - ,flash: function(Color,Duration,OnComplete,Force) { - if(Force == null) { - Force = false; - } - if(Duration == null) { - Duration = 1; - } - if(Color == null) { - Color = -1; - } - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - camera.flash(Color,Duration,OnComplete,Force); - } - } - ,fade: function(Color,Duration,FadeIn,OnComplete,Force) { - if(Force == null) { - Force = false; - } - if(FadeIn == null) { - FadeIn = false; - } - if(Duration == null) { - Duration = 1; - } - if(Color == null) { - Color = -16777216; - } - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - camera.fade(Color,Duration,FadeIn,OnComplete,Force); - } - } - ,shake: function(Intensity,Duration,OnComplete,Force,Axes) { - if(Force == null) { - Force = true; - } - if(Duration == null) { - Duration = 0.5; - } - if(Intensity == null) { - Intensity = 0.05; - } - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - camera.shake(Intensity,Duration,OnComplete,Force,Axes); - } - } - ,lock: function() { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - if(camera == null || !camera.exists || !camera.visible) { - continue; - } - if(flixel_FlxG.renderBlit) { - camera.checkResize(); - if(this.useBufferLocking) { - camera.buffer.lock(); - } - } - if(flixel_FlxG.renderTile) { - camera.clearDrawStack(); - camera.canvas.get_graphics().clear(); - } - if(flixel_FlxG.renderBlit) { - camera.fill(camera.bgColor,camera.useBgAlphaBlending); - camera.screen.dirty = true; - } else { - camera.fill(camera.bgColor & 16777215,camera.useBgAlphaBlending,(camera.bgColor >> 24 & 255) / 255); - } - } - } - ,render: function() { - if(flixel_FlxG.renderTile) { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - if(camera != null && camera.exists && camera.visible) { - camera.render(); - } - } - } - } - ,unlock: function() { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - if(camera == null || !camera.exists || !camera.visible) { - continue; - } - camera.drawFX(); - if(flixel_FlxG.renderBlit) { - if(this.useBufferLocking) { - camera.buffer.unlock(); - } - camera.screen.dirty = true; - } - } - } - ,update: function(elapsed) { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - if(camera != null && camera.exists && camera.active) { - camera.update(elapsed); - } - } - } - ,resize: function() { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - camera.onResize(); - } - } - ,get_bgColor: function() { - if(flixel_FlxG.camera == null) { - return -16777216; - } else { - return flixel_FlxG.camera.bgColor; - } - } - ,set_bgColor: function(Color) { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - camera.bgColor = Color; - } - return Color; - } - ,__class__: flixel_system_frontEnds_CameraFrontEnd - ,__properties__: {set_bgColor:"set_bgColor",get_bgColor:"get_bgColor"} -}; -var flixel_system_frontEnds_ConsoleFrontEnd = function() { - this.stepAfterCommand = true; - this.autoPause = true; -}; -$hxClasses["flixel.system.frontEnds.ConsoleFrontEnd"] = flixel_system_frontEnds_ConsoleFrontEnd; -flixel_system_frontEnds_ConsoleFrontEnd.__name__ = "flixel.system.frontEnds.ConsoleFrontEnd"; -flixel_system_frontEnds_ConsoleFrontEnd.prototype = { - autoPause: null - ,stepAfterCommand: null - ,registerFunction: function(FunctionAlias,Function1) { - } - ,registerObject: function(ObjectAlias,AnyObject) { - } - ,registerClass: function(cl) { - } - ,registerEnum: function(e) { - } - ,__class__: flixel_system_frontEnds_ConsoleFrontEnd -}; -var flixel_system_frontEnds_DebuggerFrontEnd = function() { - this.visible = false; - this.visibilityChanged = new flixel_util__$FlxSignal_FlxSignal0(); - this.drawDebugChanged = new flixel_util__$FlxSignal_FlxSignal0(); - this.drawDebug = false; - this.toggleKeys = [113,192,220]; - this.precision = 3; -}; -$hxClasses["flixel.system.frontEnds.DebuggerFrontEnd"] = flixel_system_frontEnds_DebuggerFrontEnd; -flixel_system_frontEnds_DebuggerFrontEnd.__name__ = "flixel.system.frontEnds.DebuggerFrontEnd"; -flixel_system_frontEnds_DebuggerFrontEnd.prototype = { - precision: null - ,toggleKeys: null - ,drawDebug: null - ,drawDebugChanged: null - ,visibilityChanged: null - ,visible: null - ,setLayout: function(Layout) { - } - ,resetLayout: function() { - } - ,addButton: function(Alignment,Icon,UpHandler,ToggleMode,UpdateLayout) { - if(UpdateLayout == null) { - UpdateLayout = true; - } - if(ToggleMode == null) { - ToggleMode = false; - } - return null; - } - ,track: function(ObjectOrClass,WindowTitle) { - return null; - } - ,addTrackerProfile: function(Profile) { - } - ,removeButton: function(Button,UpdateLayout) { - if(UpdateLayout == null) { - UpdateLayout = true; - } - } - ,set_drawDebug: function(Value) { - if(this.drawDebug == Value) { - return this.drawDebug; - } - this.drawDebug = Value; - return this.drawDebug; - } - ,set_visible: function(Value) { - if(this.visible == Value) { - return this.visible; - } - this.visible = Value; - return this.visible; - } - ,__class__: flixel_system_frontEnds_DebuggerFrontEnd - ,__properties__: {set_visible:"set_visible",set_drawDebug:"set_drawDebug"} -}; -var flixel_system_frontEnds_HTML5FrontEnd = function() { - this.browser = this.getBrowser(); - this.platform = this.getPlatform(); - this.onMobile = this.getOnMobile(); -}; -$hxClasses["flixel.system.frontEnds.HTML5FrontEnd"] = flixel_system_frontEnds_HTML5FrontEnd; -flixel_system_frontEnds_HTML5FrontEnd.__name__ = "flixel.system.frontEnds.HTML5FrontEnd"; -flixel_system_frontEnds_HTML5FrontEnd.prototype = { - browser: null - ,platform: null - ,onMobile: null - ,browserPosition: null - ,getBrowser: function() { - if(this.userAgentContains(" OPR/")) { - return flixel_system_frontEnds_FlxBrowser.OPERA; - } else if(this.userAgentContains("chrome",true)) { - return flixel_system_frontEnds_FlxBrowser.CHROME; - } else if(window.navigator.appName == "Netscape") { - return flixel_system_frontEnds_FlxBrowser.FIREFOX; - } else if(!(!document.documentMode)) { - return flixel_system_frontEnds_FlxBrowser.INTERNET_EXPLORER; - } else if(Object.prototype.toString.call(window.HTMLElement).indexOf("Constructor") > 0) { - return flixel_system_frontEnds_FlxBrowser.SAFARI; - } - return flixel_system_frontEnds_FlxBrowser.UNKNOWN; - } - ,getPlatform: function() { - if(this.userAgentContains("Win")) { - return flixel_system_frontEnds_FlxPlatform.WINDOWS; - } else if(this.userAgentContains("IEMobile")) { - return flixel_system_frontEnds_FlxPlatform.WINDOWS_PHONE; - } else if(this.userAgentContains("Android")) { - return flixel_system_frontEnds_FlxPlatform.ANDROID; - } else if(this.userAgentContains("Linux")) { - return flixel_system_frontEnds_FlxPlatform.LINUX; - } else if(this.userAgentContains("BlackBerry")) { - return flixel_system_frontEnds_FlxPlatform.BLACKBERRY; - } else if(this.userAgentContains("iPhone")) { - return flixel_system_frontEnds_FlxPlatform.IOS(flixel_system_frontEnds_FlxIOSDevice.IPHONE); - } else if(this.userAgentContains("iPad")) { - return flixel_system_frontEnds_FlxPlatform.IOS(flixel_system_frontEnds_FlxIOSDevice.IPAD); - } else if(this.userAgentContains("iPod")) { - return flixel_system_frontEnds_FlxPlatform.IOS(flixel_system_frontEnds_FlxIOSDevice.IPOD); - } else if(this.userAgentContains("Mac")) { - return flixel_system_frontEnds_FlxPlatform.MAC; - } else { - return flixel_system_frontEnds_FlxPlatform.UNKNOWN; - } - } - ,getOnMobile: function() { - var _g = this.platform; - switch(_g._hx_index) { - case 3:case 4:case 5: - return true; - case 6: - var _g1 = _g.device; - return true; - default: - return false; - } - } - ,userAgentContains: function(substring,toLowerCase) { - if(toLowerCase == null) { - toLowerCase = false; - } - var userAgent = window.navigator.userAgent; - if(toLowerCase) { - userAgent = userAgent.toLowerCase(); - } - return userAgent.indexOf(substring) != -1; - } - ,get_browserPosition: function() { - if(this.browserPosition == null) { - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - this.browserPosition = point; - } - this.browserPosition.set(window.screenX,window.screenY); - return this.browserPosition; - } - ,get_browserWidth: function() { - return window.innerWidth; - } - ,get_browserHeight: function() { - return window.innerHeight; - } - ,__class__: flixel_system_frontEnds_HTML5FrontEnd - ,__properties__: {get_browserPosition:"get_browserPosition",get_browserHeight:"get_browserHeight",get_browserWidth:"get_browserWidth"} -}; -var flixel_system_frontEnds_InputFrontEnd = function() { - this.resetOnStateSwitch = true; - this.list = []; -}; -$hxClasses["flixel.system.frontEnds.InputFrontEnd"] = flixel_system_frontEnds_InputFrontEnd; -flixel_system_frontEnds_InputFrontEnd.__name__ = "flixel.system.frontEnds.InputFrontEnd"; -flixel_system_frontEnds_InputFrontEnd.prototype = { - add_flixel_input_touch_FlxTouchManager: function(Input) { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var input = _g1[_g]; - ++_g; - if(flixel_util_FlxStringUtil.getClassName(Input,true) == flixel_util_FlxStringUtil.getClassName(input,true)) { - return Input; - } - } - this.list.push(Input); - return Input; - } - ,add_flixel_input_keyboard_FlxKeyboard: function(Input) { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var input = _g1[_g]; - ++_g; - if(flixel_util_FlxStringUtil.getClassName(Input,true) == flixel_util_FlxStringUtil.getClassName(input,true)) { - return Input; - } - } - this.list.push(Input); - return Input; - } - ,replace_flixel_input_mouse_FlxMouse: function(Old,New) { - var i = 0; - var success = false; - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var input = _g1[_g]; - ++_g; - if(input == Old) { - this.list[i] = New; - success = true; - break; - } - ++i; - } - if(success) { - return New; - } - return null; - } - ,add_flixel_input_mouse_FlxMouse: function(Input) { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var input = _g1[_g]; - ++_g; - if(flixel_util_FlxStringUtil.getClassName(Input,true) == flixel_util_FlxStringUtil.getClassName(input,true)) { - return Input; - } - } - this.list.push(Input); - return Input; - } - ,list: null - ,resetOnStateSwitch: null - ,reset: function() { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var input = _g1[_g]; - ++_g; - input.reset(); - } - } - ,update: function() { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var input = _g1[_g]; - ++_g; - input.update(); - } - } - ,onFocus: function() { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var input = _g1[_g]; - ++_g; - input.onFocus(); - } - } - ,onFocusLost: function() { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var input = _g1[_g]; - ++_g; - input.onFocusLost(); - } - } - ,onStateSwitch: function() { - if(this.resetOnStateSwitch) { - this.reset(); - } - } - ,destroy: function() { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var input = _g1[_g]; - ++_g; - input = flixel_util_FlxDestroyUtil.destroy(input); - } - } - ,__class__: flixel_system_frontEnds_InputFrontEnd -}; -var flixel_system_frontEnds_LogFrontEnd = function() { - this.redirectTraces = false; - this._standardTraceFunction = haxe_Log.trace; -}; -$hxClasses["flixel.system.frontEnds.LogFrontEnd"] = flixel_system_frontEnds_LogFrontEnd; -flixel_system_frontEnds_LogFrontEnd.__name__ = "flixel.system.frontEnds.LogFrontEnd"; -flixel_system_frontEnds_LogFrontEnd.prototype = { - redirectTraces: null - ,_standardTraceFunction: null - ,add: function(Data) { - } - ,warn: function(Data) { - } - ,error: function(Data) { - } - ,notice: function(Data) { - } - ,advanced: function(Data,Style,FireOnce) { - if(FireOnce == null) { - FireOnce = false; - } - } - ,clear: function() { - } - ,set_redirectTraces: function(Redirect) { - haxe_Log.trace = Redirect ? $bind(this,this.processTraceData) : this._standardTraceFunction; - return this.redirectTraces = Redirect; - } - ,processTraceData: function(Data,Info) { - var paramArray = [Data]; - if(Info.customParams != null) { - var _g = 0; - var _g1 = Info.customParams; - while(_g < _g1.length) { - var i = _g1[_g]; - ++_g; - paramArray.push(i); - } - } - this.advanced(paramArray,flixel_system_debug_log_LogStyle.NORMAL); - } - ,__class__: flixel_system_frontEnds_LogFrontEnd - ,__properties__: {set_redirectTraces:"set_redirectTraces"} -}; -var haxe_Log = function() { }; -$hxClasses["haxe.Log"] = haxe_Log; -haxe_Log.__name__ = "haxe.Log"; -haxe_Log.formatOutput = function(v,infos) { - var str = Std.string(v); - if(infos == null) { - return str; - } - var pstr = infos.fileName + ":" + infos.lineNumber; - if(infos.customParams != null) { - var _g = 0; - var _g1 = infos.customParams; - while(_g < _g1.length) { - var v1 = _g1[_g]; - ++_g; - str += ", " + Std.string(v1); - } - } - return pstr + ": " + str; -}; -haxe_Log.trace = function(v,infos) { - var str = haxe_Log.formatOutput(v,infos); - if(typeof(console) != "undefined" && console.log != null) { - console.log(str); - } -}; -var js_Boot = function() { }; -$hxClasses["js.Boot"] = js_Boot; -js_Boot.__name__ = "js.Boot"; -js_Boot.getClass = function(o) { - if(o == null) { - return null; - } else if(((o) instanceof Array)) { - return Array; - } else { - var cl = o.__class__; - if(cl != null) { - return cl; - } - var name = js_Boot.__nativeClassName(o); - if(name != null) { - return js_Boot.__resolveNativeClass(name); - } - return null; - } -}; -js_Boot.__string_rec = function(o,s) { - if(o == null) { - return "null"; - } - if(s.length >= 5) { - return "<...>"; - } - var t = typeof(o); - if(t == "function" && (o.__name__ || o.__ename__)) { - t = "object"; - } - switch(t) { - case "function": - return ""; - case "object": - if(o.__enum__) { - var e = $hxEnums[o.__enum__]; - var n = e.__constructs__[o._hx_index]; - var con = e[n]; - if(con.__params__) { - s = s + "\t"; - return n + "(" + ((function($this) { - var $r; - var _g = []; - { - var _g1 = 0; - var _g2 = con.__params__; - while(true) { - if(!(_g1 < _g2.length)) { - break; - } - var p = _g2[_g1]; - _g1 = _g1 + 1; - _g.push(js_Boot.__string_rec(o[p],s)); - } - } - $r = _g; - return $r; - }(this))).join(",") + ")"; - } else { - return n; - } - } - if(((o) instanceof Array)) { - var str = "["; - s += "\t"; - var _g3 = 0; - var _g11 = o.length; - while(_g3 < _g11) { - var i = _g3++; - str += (i > 0 ? "," : "") + js_Boot.__string_rec(o[i],s); - } - str += "]"; - return str; - } - var tostr; - try { - tostr = o.toString; - } catch( e1 ) { - haxe_CallStack.lastException = e1; - var e2 = ((e1) instanceof js__$Boot_HaxeError) ? e1.val : e1; - return "???"; - } - if(tostr != null && tostr != Object.toString && typeof(tostr) == "function") { - var s2 = o.toString(); - if(s2 != "[object Object]") { - return s2; - } - } - var str1 = "{\n"; - s += "\t"; - var hasp = o.hasOwnProperty != null; - var k = null; - for( k in o ) { - if(hasp && !o.hasOwnProperty(k)) { - continue; - } - if(k == "prototype" || k == "__class__" || k == "__super__" || k == "__interfaces__" || k == "__properties__") { - continue; - } - if(str1.length != 2) { - str1 += ", \n"; - } - str1 += s + k + " : " + js_Boot.__string_rec(o[k],s); - } - s = s.substring(1); - str1 += "\n" + s + "}"; - return str1; - case "string": - return o; - default: - return String(o); - } -}; -js_Boot.__interfLoop = function(cc,cl) { - if(cc == null) { - return false; - } - if(cc == cl) { - return true; - } - if(Object.prototype.hasOwnProperty.call(cc,"__interfaces__")) { - var intf = cc.__interfaces__; - var _g = 0; - var _g1 = intf.length; - while(_g < _g1) { - var i = _g++; - var i1 = intf[i]; - if(i1 == cl || js_Boot.__interfLoop(i1,cl)) { - return true; - } - } - } - return js_Boot.__interfLoop(cc.__super__,cl); -}; -js_Boot.__instanceof = function(o,cl) { - if(cl == null) { - return false; - } - switch(cl) { - case Array: - return ((o) instanceof Array); - case Bool: - return typeof(o) == "boolean"; - case Dynamic: - return o != null; - case Float: - return typeof(o) == "number"; - case Int: - if(typeof(o) == "number") { - return ((o | 0) === o); - } else { - return false; - } - break; - case String: - return typeof(o) == "string"; - default: - if(o != null) { - if(typeof(cl) == "function") { - if(js_Boot.__downcastCheck(o,cl)) { - return true; - } - } else if(typeof(cl) == "object" && js_Boot.__isNativeObj(cl)) { - if(((o) instanceof cl)) { - return true; - } - } - } else { - return false; - } - if(cl == Class ? o.__name__ != null : false) { - return true; - } - if(cl == Enum ? o.__ename__ != null : false) { - return true; - } - return o.__enum__ != null ? $hxEnums[o.__enum__] == cl : false; - } -}; -js_Boot.__downcastCheck = function(o,cl) { - if(!((o) instanceof cl)) { - if(cl.__isInterface__) { - return js_Boot.__interfLoop(js_Boot.getClass(o),cl); - } else { - return false; - } - } else { - return true; - } -}; -js_Boot.__implements = function(o,iface) { - return js_Boot.__interfLoop(js_Boot.getClass(o),iface); -}; -js_Boot.__cast = function(o,t) { - if(o == null || js_Boot.__instanceof(o,t)) { - return o; - } else { - throw new js__$Boot_HaxeError("Cannot cast " + Std.string(o) + " to " + Std.string(t)); - } -}; -js_Boot.__toStr = null; -js_Boot.__nativeClassName = function(o) { - var name = js_Boot.__toStr.call(o).slice(8,-1); - if(name == "Object" || name == "Function" || name == "Math" || name == "JSON") { - return null; - } - return name; -}; -js_Boot.__isNativeObj = function(o) { - return js_Boot.__nativeClassName(o) != null; -}; -js_Boot.__resolveNativeClass = function(name) { - return $global[name]; -}; -var js__$Boot_HaxeError = function(val) { - Error.call(this); - this.val = val; - if(Error.captureStackTrace) { - Error.captureStackTrace(this,js__$Boot_HaxeError); - } -}; -$hxClasses["js._Boot.HaxeError"] = js__$Boot_HaxeError; -js__$Boot_HaxeError.__name__ = "js._Boot.HaxeError"; -js__$Boot_HaxeError.wrap = function(val) { - if(((val) instanceof Error)) { - return val; - } else { - return new js__$Boot_HaxeError(val); - } -}; -js__$Boot_HaxeError.__super__ = Error; -js__$Boot_HaxeError.prototype = $extend(Error.prototype,{ - val: null - ,__class__: js__$Boot_HaxeError -}); -var flixel_util_FlxSave = function() { - this._closeRequested = false; -}; -$hxClasses["flixel.util.FlxSave"] = flixel_util_FlxSave; -flixel_util_FlxSave.__name__ = "flixel.util.FlxSave"; -flixel_util_FlxSave.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_util_FlxSave.prototype = { - data: null - ,name: null - ,path: null - ,_sharedObject: null - ,_onComplete: null - ,_closeRequested: null - ,destroy: function() { - this._sharedObject = null; - this.name = null; - this.path = null; - this.data = null; - this._onComplete = null; - this._closeRequested = false; - } - ,bind: function(Name,Path) { - this.destroy(); - this.name = Name; - this.path = Path; - try { - this._sharedObject = openfl_net_SharedObject.getLocal(this.name,this.path); - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - if(((e1) instanceof openfl_errors_Error)) { - var e2 = e1; - this.destroy(); - return false; - } else { - throw e; - } - } - this.data = this._sharedObject.data; - return true; - } - ,close: function(MinFileSize,OnComplete) { - if(MinFileSize == null) { - MinFileSize = 0; - } - this._closeRequested = true; - return this.flush(MinFileSize,OnComplete); - } - ,flush: function(MinFileSize,OnComplete) { - if(MinFileSize == null) { - MinFileSize = 0; - } - if(!this.checkBinding()) { - return false; - } - this._onComplete = OnComplete; - var result = null; - try { - result = this._sharedObject.flush(); - } catch( _ ) { - haxe_CallStack.lastException = _; - var _1 = ((_) instanceof js__$Boot_HaxeError) ? _.val : _; - if(((_1) instanceof openfl_errors_Error)) { - var _2 = _1; - return this.onDone(flixel_util_FlxSaveStatus.ERROR); - } else { - throw _; - } - } - return this.onDone(result == 0 ? flixel_util_FlxSaveStatus.SUCCESS : flixel_util_FlxSaveStatus.PENDING); - } - ,erase: function() { - if(!this.checkBinding()) { - return false; - } - this._sharedObject.clear(); - this.data = { }; - return true; - } - ,onDone: function(Result) { - switch(Result._hx_index) { - case 1: - break; - case 2: - break; - default: - } - if(this._onComplete != null) { - this._onComplete(Result == flixel_util_FlxSaveStatus.SUCCESS); - } - if(this._closeRequested) { - this.destroy(); - } - return Result == flixel_util_FlxSaveStatus.SUCCESS; - } - ,checkBinding: function() { - if(this._sharedObject == null) { - return false; - } - return true; - } - ,__class__: flixel_util_FlxSave -}; -var flixel_system_scaleModes_BaseScaleMode = function() { - this.verticalAlign = flixel_util_FlxVerticalAlign.CENTER; - this.horizontalAlign = flixel_util_FlxHorizontalAlign.CENTER; - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - this.deviceSize = point; - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - this.gameSize = point1; - var point2 = flixel_math_FlxPoint._pool.get().set(0,0); - point2._inPool = false; - this.scale = point2; - var point3 = flixel_math_FlxPoint._pool.get().set(0,0); - point3._inPool = false; - this.offset = point3; -}; -$hxClasses["flixel.system.scaleModes.BaseScaleMode"] = flixel_system_scaleModes_BaseScaleMode; -flixel_system_scaleModes_BaseScaleMode.__name__ = "flixel.system.scaleModes.BaseScaleMode"; -flixel_system_scaleModes_BaseScaleMode.prototype = { - deviceSize: null - ,gameSize: null - ,scale: null - ,offset: null - ,horizontalAlign: null - ,verticalAlign: null - ,onMeasure: function(Width,Height) { - flixel_FlxG.width = flixel_FlxG.initialWidth; - flixel_FlxG.height = flixel_FlxG.initialHeight; - this.updateGameSize(Width,Height); - this.updateDeviceSize(Width,Height); - this.updateScaleOffset(); - this.updateGamePosition(); - } - ,updateGameSize: function(Width,Height) { - this.gameSize.set(Width,Height); - } - ,updateDeviceSize: function(Width,Height) { - this.deviceSize.set(Width,Height); - } - ,updateScaleOffset: function() { - this.scale.set_x(this.gameSize.x / (flixel_FlxG.width * flixel_FlxG.initialZoom)); - this.scale.set_y(this.gameSize.y / (flixel_FlxG.height * flixel_FlxG.initialZoom)); - this.updateOffsetX(); - this.updateOffsetY(); - } - ,updateOffsetX: function() { - var tmp; - switch(this.horizontalAlign._hx_index) { - case 0: - tmp = 0; - break; - case 1: - tmp = Math.ceil((this.deviceSize.x - this.gameSize.x) * 0.5); - break; - case 2: - tmp = this.deviceSize.x - this.gameSize.x; - break; - } - this.offset.set_x(tmp); - } - ,updateOffsetY: function() { - var tmp; - switch(this.verticalAlign._hx_index) { - case 0: - tmp = 0; - break; - case 1: - tmp = Math.ceil((this.deviceSize.y - this.gameSize.y) * 0.5); - break; - case 2: - tmp = this.deviceSize.y - this.gameSize.y; - break; - } - this.offset.set_y(tmp); - } - ,updateGamePosition: function() { - if(flixel_FlxG.game == null) { - return; - } - flixel_FlxG.game.set_x(this.offset.x); - flixel_FlxG.game.set_y(this.offset.y); - } - ,set_horizontalAlign: function(value) { - this.horizontalAlign = value; - if(this.offset != null) { - this.updateOffsetX(); - this.updateGamePosition(); - } - return value; - } - ,set_verticalAlign: function(value) { - this.verticalAlign = value; - if(this.offset != null) { - this.updateOffsetY(); - this.updateGamePosition(); - } - return value; - } - ,__class__: flixel_system_scaleModes_BaseScaleMode - ,__properties__: {set_verticalAlign:"set_verticalAlign",set_horizontalAlign:"set_horizontalAlign"} -}; -var flixel_system_scaleModes_RatioScaleMode = function(fillScreen) { - if(fillScreen == null) { - fillScreen = false; - } - flixel_system_scaleModes_BaseScaleMode.call(this); - this.fillScreen = fillScreen; -}; -$hxClasses["flixel.system.scaleModes.RatioScaleMode"] = flixel_system_scaleModes_RatioScaleMode; -flixel_system_scaleModes_RatioScaleMode.__name__ = "flixel.system.scaleModes.RatioScaleMode"; -flixel_system_scaleModes_RatioScaleMode.__super__ = flixel_system_scaleModes_BaseScaleMode; -flixel_system_scaleModes_RatioScaleMode.prototype = $extend(flixel_system_scaleModes_BaseScaleMode.prototype,{ - fillScreen: null - ,updateGameSize: function(Width,Height) { - var ratio = flixel_FlxG.width / flixel_FlxG.height; - var realRatio = Width / Height; - var scaleY = realRatio < ratio; - if(this.fillScreen) { - scaleY = !scaleY; - } - if(scaleY) { - this.gameSize.set_x(Width); - this.gameSize.set_y(Math.floor(this.gameSize.x / ratio)); - } else { - this.gameSize.set_y(Height); - this.gameSize.set_x(Math.floor(this.gameSize.y * ratio)); - } - } - ,__class__: flixel_system_scaleModes_RatioScaleMode -}); -var flixel_system_frontEnds_SignalFrontEnd = function() { - this.focusLost = new flixel_util__$FlxSignal_FlxSignal0(); - this.focusGained = new flixel_util__$FlxSignal_FlxSignal0(); - this.postDraw = new flixel_util__$FlxSignal_FlxSignal0(); - this.preDraw = new flixel_util__$FlxSignal_FlxSignal0(); - this.postUpdate = new flixel_util__$FlxSignal_FlxSignal0(); - this.preUpdate = new flixel_util__$FlxSignal_FlxSignal0(); - this.postGameStart = new flixel_util__$FlxSignal_FlxSignal0(); - this.preGameStart = new flixel_util__$FlxSignal_FlxSignal0(); - this.postGameReset = new flixel_util__$FlxSignal_FlxSignal0(); - this.preGameReset = new flixel_util__$FlxSignal_FlxSignal0(); - this.gameResized = new flixel_util__$FlxSignal_FlxSignal2(); - this.preStateCreate = new flixel_util__$FlxSignal_FlxSignal1(); - this.postStateSwitch = new flixel_util__$FlxSignal_FlxSignal0(); - this.preStateSwitch = new flixel_util__$FlxSignal_FlxSignal0(); -}; -$hxClasses["flixel.system.frontEnds.SignalFrontEnd"] = flixel_system_frontEnds_SignalFrontEnd; -flixel_system_frontEnds_SignalFrontEnd.__name__ = "flixel.system.frontEnds.SignalFrontEnd"; -flixel_system_frontEnds_SignalFrontEnd.prototype = { - preStateSwitch: null - ,postStateSwitch: null - ,preStateCreate: null - ,gameResized: null - ,preGameReset: null - ,postGameReset: null - ,preGameStart: null - ,postGameStart: null - ,preUpdate: null - ,postUpdate: null - ,preDraw: null - ,postDraw: null - ,focusGained: null - ,focusLost: null - ,get_stateSwitched: function() { - return this.preStateSwitch; - } - ,get_gameStarted: function() { - return this.postGameStart; - } - ,__class__: flixel_system_frontEnds_SignalFrontEnd - ,__properties__: {get_gameStarted:"get_gameStarted",get_stateSwitched:"get_stateSwitched"} -}; -var flixel_system_frontEnds_WatchFrontEnd = function() { -}; -$hxClasses["flixel.system.frontEnds.WatchFrontEnd"] = flixel_system_frontEnds_WatchFrontEnd; -flixel_system_frontEnds_WatchFrontEnd.__name__ = "flixel.system.frontEnds.WatchFrontEnd"; -flixel_system_frontEnds_WatchFrontEnd.prototype = { - add: function(object,field,displayName) { - } - ,remove: function(object,field) { - } - ,addQuick: function(displayName,value) { - } - ,removeQuick: function(displayName) { - } - ,addExpression: function(expression,displayName) { - } - ,removeExpression: function(displayName) { - } - ,addMouse: function() { - } - ,removeMouse: function() { - } - ,__class__: flixel_system_frontEnds_WatchFrontEnd -}; -var flixel_FlxG = function() { }; -$hxClasses["flixel.FlxG"] = flixel_FlxG; -flixel_FlxG.__name__ = "flixel.FlxG"; -flixel_FlxG.__properties__ = {set_mouse:"set_mouse",set_fullscreen:"set_fullscreen",get_fullscreen:"get_fullscreen",set_scaleMode:"set_scaleMode",get_onMobile:"get_onMobile",set_drawFramerate:"set_drawFramerate",set_updateFramerate:"set_updateFramerate",get_state:"get_state",get_stage:"get_stage"}; -flixel_FlxG.camera = null; -flixel_FlxG.game = null; -flixel_FlxG.updateFramerate = null; -flixel_FlxG.drawFramerate = null; -flixel_FlxG.renderMethod = null; -flixel_FlxG.renderBlit = null; -flixel_FlxG.renderTile = null; -flixel_FlxG.width = null; -flixel_FlxG.height = null; -flixel_FlxG.mouse = null; -flixel_FlxG.touches = null; -flixel_FlxG.keys = null; -flixel_FlxG.accelerometer = null; -flixel_FlxG.vcr = null; -flixel_FlxG.plugins = null; -flixel_FlxG.sound = null; -flixel_FlxG.resizeGame = function(Width,Height) { - flixel_FlxG.scaleMode.onMeasure(Width,Height); -}; -flixel_FlxG.resizeWindow = function(Width,Height) { -}; -flixel_FlxG.resetGame = function() { - flixel_FlxG.game._resetGame = true; -}; -flixel_FlxG.switchState = function(nextState) { - if(flixel_FlxG.game._state.switchTo(nextState)) { - flixel_FlxG.game._requestedState = nextState; - } -}; -flixel_FlxG.resetState = function() { - var nextState = Type.createInstance(js_Boot.getClass(flixel_FlxG.game._state),[]); - if(flixel_FlxG.game._state.switchTo(nextState)) { - flixel_FlxG.game._requestedState = nextState; - } -}; -flixel_FlxG.overlap = function(ObjectOrGroup1,ObjectOrGroup2,NotifyCallback,ProcessCallback) { - if(ObjectOrGroup1 == null) { - ObjectOrGroup1 = flixel_FlxG.game._state; - } - if(ObjectOrGroup2 == ObjectOrGroup1) { - ObjectOrGroup2 = null; - } - flixel_system_FlxQuadTree.divisions = flixel_FlxG.worldDivisions; - var quadTree = flixel_system_FlxQuadTree.recycle(flixel_FlxG.worldBounds.x,flixel_FlxG.worldBounds.y,flixel_FlxG.worldBounds.width,flixel_FlxG.worldBounds.height); - quadTree.load(ObjectOrGroup1,ObjectOrGroup2,NotifyCallback,ProcessCallback); - var result = quadTree.execute(); - quadTree.destroy(); - return result; -}; -flixel_FlxG.pixelPerfectOverlap = function(Sprite1,Sprite2,AlphaTolerance,Camera) { - if(AlphaTolerance == null) { - AlphaTolerance = 255; - } - return flixel_util_FlxCollision.pixelPerfectCheck(Sprite1,Sprite2,AlphaTolerance,Camera); -}; -flixel_FlxG.collide = function(ObjectOrGroup1,ObjectOrGroup2,NotifyCallback) { - return flixel_FlxG.overlap(ObjectOrGroup1,ObjectOrGroup2,NotifyCallback,flixel_FlxObject.separate); -}; -flixel_FlxG.addChildBelowMouse = function(Child,IndexModifier) { - if(IndexModifier == null) { - IndexModifier = 0; - } - var index = flixel_FlxG.game.getChildIndex(flixel_FlxG.game._inputContainer); - var max = flixel_FlxG.game.get_numChildren(); - index = flixel_math_FlxMath.maxAdd(index,IndexModifier,max); - flixel_FlxG.game.addChildAt(Child,index); - return Child; -}; -flixel_FlxG.removeChild = function(Child) { - if(flixel_FlxG.game.contains(Child)) { - flixel_FlxG.game.removeChild(Child); - } - return Child; -}; -flixel_FlxG.addPostProcess = function(postProcess) { - return postProcess; -}; -flixel_FlxG.removePostProcess = function(postProcess) { -}; -flixel_FlxG.openURL = function(URL1,Target) { - if(Target == null) { - Target = "_blank"; - } - var prefix = ""; - if(!new EReg("^https?://","").match(URL1)) { - prefix = "http://"; - } - openfl_Lib.getURL(new openfl_net_URLRequest(prefix + URL1),Target); -}; -flixel_FlxG.init = function(Game,Width,Height,Zoom) { - flixel_FlxG.game = Game; - flixel_FlxG.width = Math.abs(Width) | 0; - flixel_FlxG.height = Math.abs(Height) | 0; - flixel_FlxG.initRenderMethod(); - flixel_FlxG.initialWidth = flixel_FlxG.width; - flixel_FlxG.initialHeight = flixel_FlxG.height; - flixel_FlxG.initialZoom = flixel_FlxCamera.defaultZoom = Zoom; - var Width1 = openfl_Lib.get_current().stage.stageWidth; - var Height1 = openfl_Lib.get_current().stage.stageHeight; - flixel_FlxG.scaleMode.onMeasure(Width1,Height1); - flixel_FlxG.keys = flixel_FlxG.inputs.add_flixel_input_keyboard_FlxKeyboard(new flixel_input_keyboard_FlxKeyboard()); - flixel_FlxG.set_mouse(flixel_FlxG.inputs.add_flixel_input_mouse_FlxMouse(new flixel_input_mouse_FlxMouse(flixel_FlxG.game._inputContainer))); - flixel_FlxG.touches = flixel_FlxG.inputs.add_flixel_input_touch_FlxTouchManager(new flixel_input_touch_FlxTouchManager()); - flixel_FlxG.accelerometer = new flixel_input_FlxAccelerometer(); - flixel_FlxG.save.bind("flixel"); - flixel_FlxG.plugins = new flixel_system_frontEnds_PluginFrontEnd(); - flixel_FlxG.vcr = new flixel_system_frontEnds_VCRFrontEnd(); - flixel_FlxG.sound = new flixel_system_frontEnds_SoundFrontEnd(); -}; -flixel_FlxG.initRenderMethod = function() { - flixel_FlxG.renderMethod = flixel_FlxRenderMethod.BLITTING; - var tmp; - switch(openfl_Lib.get_current().stage.window.context.type) { - case "opengl":case "opengles":case "webgl": - tmp = flixel_FlxRenderMethod.DRAW_TILES; - break; - default: - tmp = flixel_FlxRenderMethod.BLITTING; - } - flixel_FlxG.renderMethod = tmp; - flixel_FlxG.renderBlit = flixel_FlxG.renderMethod == flixel_FlxRenderMethod.BLITTING; - flixel_FlxG.renderTile = flixel_FlxG.renderMethod == flixel_FlxRenderMethod.DRAW_TILES; - flixel_FlxObject.defaultPixelPerfectPosition = flixel_FlxG.renderBlit; -}; -flixel_FlxG.reset = function() { - var _this = flixel_FlxG.random; - var Value = Math.random() * 2147483647 | 0; - var lowerBound = Value < 1 ? 1 : Value; - var NewSeed = (lowerBound > 2147483646 ? 2147483646 : lowerBound) | 0; - var lowerBound1 = NewSeed < 1 ? 1 : NewSeed; - var NewSeed1 = (lowerBound1 > 2147483646 ? 2147483646 : lowerBound1) | 0; - var lowerBound2 = NewSeed1 < 1 ? 1 : NewSeed1; - _this.initialSeed = (_this.internalSeed = (lowerBound2 > 2147483646 ? 2147483646 : lowerBound2) | 0) | 0; - flixel_FlxG.bitmap.reset(); - flixel_FlxG.inputs.reset(); - flixel_FlxG.sound.destroy(true); - flixel_FlxG.autoPause = true; - flixel_FlxG.fixedTimestep = true; - flixel_FlxG.timeScale = 1.0; - flixel_FlxG.elapsed = 0; - flixel_FlxG.maxElapsed = 0.1; - var _this1 = flixel_FlxG.worldBounds; - var X = -10; - var Y = -10; - var Width = flixel_FlxG.width + 20; - var Height = flixel_FlxG.height + 20; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this1.x = X; - _this1.y = Y; - _this1.width = Width; - _this1.height = Height; - flixel_FlxG.worldDivisions = 6; -}; -flixel_FlxG.set_scaleMode = function(ScaleMode) { - flixel_FlxG.scaleMode = ScaleMode; - flixel_FlxG.game.onResize(null); - return ScaleMode; -}; -flixel_FlxG.set_mouse = function(NewMouse) { - if(flixel_FlxG.mouse == null) { - flixel_FlxG.mouse = flixel_FlxG.inputs.add_flixel_input_mouse_FlxMouse(NewMouse); - return flixel_FlxG.mouse; - } - var oldMouse = flixel_FlxG.mouse; - var result = flixel_FlxG.inputs.replace_flixel_input_mouse_FlxMouse(oldMouse,NewMouse); - if(result != null) { - flixel_FlxG.mouse = result; - oldMouse.destroy(); - return NewMouse; - } - return oldMouse; -}; -flixel_FlxG.set_updateFramerate = function(Framerate) { - var tmp = Framerate < flixel_FlxG.drawFramerate; - flixel_FlxG.updateFramerate = Framerate; - flixel_FlxG.game._stepMS = Math.abs(1000 / Framerate); - flixel_FlxG.game._stepSeconds = flixel_FlxG.game._stepMS / 1000; - if(flixel_FlxG.game._maxAccumulation < flixel_FlxG.game._stepMS) { - flixel_FlxG.game._maxAccumulation = flixel_FlxG.game._stepMS; - } - return Framerate; -}; -flixel_FlxG.set_drawFramerate = function(Framerate) { - var tmp = Framerate > flixel_FlxG.updateFramerate; - flixel_FlxG.drawFramerate = Math.abs(Framerate) | 0; - if(flixel_FlxG.game.stage != null) { - flixel_FlxG.game.stage.set_frameRate(flixel_FlxG.drawFramerate); - } - flixel_FlxG.game._maxAccumulation = 2000 / flixel_FlxG.drawFramerate - 1; - if(flixel_FlxG.game._maxAccumulation < flixel_FlxG.game._stepMS) { - flixel_FlxG.game._maxAccumulation = flixel_FlxG.game._stepMS; - } - return Framerate; -}; -flixel_FlxG.get_fullscreen = function() { - if(openfl_Lib.get_current().stage.get_displayState() != 0) { - return openfl_Lib.get_current().stage.get_displayState() == 1; - } else { - return true; - } -}; -flixel_FlxG.set_fullscreen = function(Value) { - openfl_Lib.get_current().stage.set_displayState(Value ? 0 : 2); - return Value; -}; -flixel_FlxG.get_stage = function() { - return openfl_Lib.get_current().stage; -}; -flixel_FlxG.get_state = function() { - return flixel_FlxG.game._state; -}; -flixel_FlxG.get_onMobile = function() { - return flixel_FlxG.html5.onMobile; -}; -var flixel_FlxRenderMethod = $hxEnums["flixel.FlxRenderMethod"] = { __ename__ : "flixel.FlxRenderMethod", __constructs__ : ["DRAW_TILES","BLITTING"] - ,DRAW_TILES: {_hx_index:0,__enum__:"flixel.FlxRenderMethod",toString:$estr} - ,BLITTING: {_hx_index:1,__enum__:"flixel.FlxRenderMethod",toString:$estr} -}; -var flixel_IFlxSprite = function() { }; -$hxClasses["flixel.IFlxSprite"] = flixel_IFlxSprite; -flixel_IFlxSprite.__name__ = "flixel.IFlxSprite"; -flixel_IFlxSprite.__isInterface__ = true; -flixel_IFlxSprite.__interfaces__ = [flixel_IFlxBasic]; -flixel_IFlxSprite.prototype = { - set_x: null - ,set_y: null - ,set_alpha: null - ,set_angle: null - ,set_facing: null - ,set_moves: null - ,set_immovable: null - ,x: null - ,y: null - ,alpha: null - ,angle: null - ,facing: null - ,moves: null - ,immovable: null - ,offset: null - ,origin: null - ,scale: null - ,velocity: null - ,maxVelocity: null - ,acceleration: null - ,drag: null - ,scrollFactor: null - ,reset: null - ,setPosition: null - ,__class__: flixel_IFlxSprite - ,__properties__: {set_immovable:"set_immovable",set_moves:"set_moves",set_facing:"set_facing",set_angle:"set_angle",set_alpha:"set_alpha",set_y:"set_y",set_x:"set_x"} -}; -var flixel_addons_display_FlxBackdrop = function(Graphic,ScrollX,ScrollY,RepeatX,RepeatY,SpaceX,SpaceY) { - if(SpaceY == null) { - SpaceY = 0; - } - if(SpaceX == null) { - SpaceX = 0; - } - if(RepeatY == null) { - RepeatY = true; - } - if(RepeatX == null) { - RepeatX = true; - } - if(ScrollY == null) { - ScrollY = 1; - } - if(ScrollX == null) { - ScrollX = 1; - } - this.useScaleHack = true; - this._numTiles = 0; - this._spaceY = 0; - this._spaceX = 0; - this._repeatY = false; - this._repeatX = false; - this._scrollH = 0; - this._scrollW = 0; - flixel_FlxSprite.call(this); - this.scale = new flixel_math_FlxCallbackPoint($bind(this,this.scaleCallback)); - this.scale.set(1,1); - this._repeatX = RepeatX; - this._repeatY = RepeatY; - this._spaceX = SpaceX; - this._spaceY = SpaceY; - this._ppoint = new openfl_geom_Point(); - this.scrollFactor.set_x(ScrollX); - this.scrollFactor.set_y(ScrollY); - if(Graphic != null) { - this.loadGraphic(Graphic); - } - flixel_FlxG.signals.gameResized.add($bind(this,this.onGameResize)); -}; -$hxClasses["flixel.addons.display.FlxBackdrop"] = flixel_addons_display_FlxBackdrop; -flixel_addons_display_FlxBackdrop.__name__ = "flixel.addons.display.FlxBackdrop"; -flixel_addons_display_FlxBackdrop.__super__ = flixel_FlxSprite; -flixel_addons_display_FlxBackdrop.prototype = $extend(flixel_FlxSprite.prototype,{ - _ppoint: null - ,_scrollW: null - ,_scrollH: null - ,_repeatX: null - ,_repeatY: null - ,_spaceX: null - ,_spaceY: null - ,_tileFrame: null - ,_tileInfo: null - ,_numTiles: null - ,useScaleHack: null - ,destroy: function() { - this._tileInfo = null; - this._ppoint = null; - this.scale = flixel_util_FlxDestroyUtil.destroy(this.scale); - this.setTileFrame(null); - flixel_FlxG.signals.gameResized.remove($bind(this,this.onGameResize)); - flixel_FlxSprite.prototype.destroy.call(this); - } - ,loadGraphic: function(Graphic,Animated,Width,Height,Unique,Key) { - if(Unique == null) { - Unique = false; - } - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Animated == null) { - Animated = false; - } - var tileGraphic = flixel_FlxG.bitmap.add(Graphic); - this.setTileFrame(tileGraphic.get_imageFrame().get_frame()); - var w = this._tileFrame.sourceSize.x + this._spaceX | 0; - var h = this._tileFrame.sourceSize.y + this._spaceY | 0; - this._scrollW = w; - this._scrollH = h; - this.regenGraphic(); - return this; - } - ,loadFrame: function(Frame) { - this.setTileFrame(Frame); - var w = this._tileFrame.sourceSize.x + this._spaceX | 0; - var h = this._tileFrame.sourceSize.y + this._spaceY | 0; - this._scrollW = w; - this._scrollH = h; - this.regenGraphic(); - return this; - } - ,draw: function() { - var isColored = this.alpha != 1 || this.color != 16777215; - var hasColorOffsets = this.colorTransform != null && flixel_util_FlxColorTransformUtil.hasRGBAOffsets(this.colorTransform); - var _g = 0; - var _g1 = this.get_cameras(); - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - if(!camera.visible || !camera.exists) { - continue; - } - var ssw = this._scrollW * Math.abs(this.scale.x); - var ssh = this._scrollH * Math.abs(this.scale.y); - if(this._repeatX) { - this._ppoint.x = (this.x - this.offset.x - camera.scroll.x * this.scrollFactor.x) % ssw; - if(this._ppoint.x > 0) { - this._ppoint.x -= ssw; - } - } else { - this._ppoint.x = this.x - this.offset.x - camera.scroll.x * this.scrollFactor.x; - } - if(this._repeatY) { - this._ppoint.y = (this.y - this.offset.y - camera.scroll.y * this.scrollFactor.y) % ssh; - if(this._ppoint.y > 0) { - this._ppoint.y -= ssh; - } - } else { - this._ppoint.y = this.y - this.offset.y - camera.scroll.y * this.scrollFactor.y; - } - if(flixel_FlxG.renderBlit) { - if(this.graphic == null) { - return; - } - if(this.dirty) { - this.calcFrame(this.useFramePixels); - } - this._flashRect2.setTo(0,0,this.graphic.width,this.graphic.height); - camera.copyPixels(this.frame,this.framePixels,this._flashRect2,this._ppoint); - } else { - if(this._tileFrame == null) { - return; - } - var drawItem = camera.startQuadBatch(this._tileFrame.parent,isColored,hasColorOffsets); - this._tileFrame.prepareMatrix(this._matrix); - var scaleX = this.scale.x; - var scaleY = this.scale.y; - if(this.useScaleHack) { - scaleX += 1 / (this._tileFrame.sourceSize.x * camera.totalScaleX); - scaleY += 1 / (this._tileFrame.sourceSize.y * camera.totalScaleY); - } - this._matrix.scale(scaleX,scaleY); - var tx = this._matrix.tx; - var ty = this._matrix.ty; - var _g2 = 0; - var _g11 = this._numTiles; - while(_g2 < _g11) { - var j = _g2++; - var currTileX = this._tileInfo[j * 2]; - var currTileY = this._tileInfo[j * 2 + 1]; - this._matrix.tx = tx + (this._ppoint.x + currTileX); - this._matrix.ty = ty + (this._ppoint.y + currTileY); - drawItem.addQuad(this._tileFrame,this._matrix,this.colorTransform); - } - } - } - } - ,regenGraphic: function() { - var sx = Math.abs(this.scale.x); - var sy = Math.abs(this.scale.y); - var ssw = this._scrollW * sx | 0; - var ssh = this._scrollH * sy | 0; - var w = ssw; - var h = ssh; - var frameBitmap = null; - if(this._repeatX) { - w += flixel_FlxG.width; - } - if(this._repeatY) { - h += flixel_FlxG.height; - } - if(flixel_FlxG.renderBlit) { - if(this.graphic == null || (this.graphic.width != w || this.graphic.height != h)) { - this.makeGraphic(w,h,0,true); - } - } else { - this._tileInfo = []; - this._numTiles = 0; - this.set_width(this.frameWidth = w); - this.set_height(this.frameHeight = h); - } - this._ppoint.x = this._ppoint.y = 0; - if(flixel_FlxG.renderBlit) { - this.get_pixels().lock(); - this._flashRect2.setTo(0,0,this.graphic.width,this.graphic.height); - this.get_pixels().fillRect(this._flashRect2,0); - this._matrix.identity(); - this._matrix.scale(sx,sy); - frameBitmap = this._tileFrame.paint(); - } - while(this._ppoint.y < h) { - while(this._ppoint.x < w) { - if(flixel_FlxG.renderBlit) { - this.get_pixels().draw(frameBitmap,this._matrix); - this._matrix.tx += ssw; - } else { - this._tileInfo.push(this._ppoint.x); - this._tileInfo.push(this._ppoint.y); - this._numTiles++; - } - this._ppoint.x += ssw; - } - if(flixel_FlxG.renderBlit) { - this._matrix.tx = 0; - this._matrix.ty += ssh; - } - this._ppoint.x = 0; - this._ppoint.y += ssh; - } - if(flixel_FlxG.renderBlit) { - frameBitmap.dispose(); - this.get_pixels().unlock(); - this.dirty = true; - this.calcFrame(); - } - } - ,onGameResize: function(_,_1) { - if(this._tileFrame != null) { - this.regenGraphic(); - } - } - ,scaleCallback: function(Scale) { - if(this._tileFrame != null) { - this.regenGraphic(); - } - } - ,setTileFrame: function(Frame) { - if(Frame != this._tileFrame) { - if(this._tileFrame != null) { - var _g = this._tileFrame.parent; - _g.set_useCount(_g.get_useCount() - 1); - } - if(Frame != null) { - var _g1 = Frame.parent; - _g1.set_useCount(_g1.get_useCount() + 1); - } - } - return this._tileFrame = Frame; - } - ,__class__: flixel_addons_display_FlxBackdrop -}); -var flixel_animation_FlxBaseAnimation = function(Parent,Name) { - this.curIndex = 0; - this.parent = Parent; - this.name = Name; -}; -$hxClasses["flixel.animation.FlxBaseAnimation"] = flixel_animation_FlxBaseAnimation; -flixel_animation_FlxBaseAnimation.__name__ = "flixel.animation.FlxBaseAnimation"; -flixel_animation_FlxBaseAnimation.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_animation_FlxBaseAnimation.prototype = { - parent: null - ,name: null - ,curIndex: null - ,set_curIndex: function(Value) { - this.curIndex = Value; - if(this.parent != null && this.parent._curAnim == this) { - this.parent.set_frameIndex(Value); - } - return Value; - } - ,destroy: function() { - this.parent = null; - this.name = null; - } - ,update: function(elapsed) { - } - ,clone: function(Parent) { - return null; - } - ,__class__: flixel_animation_FlxBaseAnimation - ,__properties__: {set_curIndex:"set_curIndex"} -}; -var flixel_animation_FlxAnimation = function(Parent,Name,Frames,FrameRate,Looped,FlipX,FlipY) { - if(FlipY == null) { - FlipY = false; - } - if(FlipX == null) { - FlipX = false; - } - if(Looped == null) { - Looped = true; - } - if(FrameRate == null) { - FrameRate = 0; - } - this._frameTimer = 0; - this.flipY = false; - this.flipX = false; - this.reversed = false; - this.looped = true; - this.paused = true; - this.finished = true; - this.delay = 0; - this.curFrame = 0; - flixel_animation_FlxBaseAnimation.call(this,Parent,Name); - this.set_frameRate(FrameRate); - this.frames = Frames; - this.looped = Looped; - this.flipX = FlipX; - this.flipY = FlipY; -}; -$hxClasses["flixel.animation.FlxAnimation"] = flixel_animation_FlxAnimation; -flixel_animation_FlxAnimation.__name__ = "flixel.animation.FlxAnimation"; -flixel_animation_FlxAnimation.__super__ = flixel_animation_FlxBaseAnimation; -flixel_animation_FlxAnimation.prototype = $extend(flixel_animation_FlxBaseAnimation.prototype,{ - frameRate: null - ,curFrame: null - ,numFrames: null - ,delay: null - ,finished: null - ,paused: null - ,looped: null - ,reversed: null - ,flipX: null - ,flipY: null - ,frames: null - ,_frameTimer: null - ,destroy: function() { - this.frames = null; - this.name = null; - flixel_animation_FlxBaseAnimation.prototype.destroy.call(this); - } - ,play: function(Force,Reversed,Frame) { - if(Frame == null) { - Frame = 0; - } - if(Reversed == null) { - Reversed = false; - } - if(Force == null) { - Force = false; - } - if(!Force && !this.finished && this.reversed == Reversed) { - this.paused = false; - this.finished = false; - return; - } - this.reversed = Reversed; - this.paused = false; - this._frameTimer = 0; - this.finished = this.delay == 0; - var maxFrameIndex = this.frames.length - 1; - if(Frame < 0) { - this.set_curFrame(flixel_FlxG.random.int(0,maxFrameIndex)); - } else { - if(Frame > maxFrameIndex) { - Frame = maxFrameIndex; - } - if(this.reversed) { - Frame = maxFrameIndex - Frame; - } - this.set_curFrame(Frame); - } - if(this.finished) { - var _this = this.parent; - if(_this.finishCallback != null) { - _this.finishCallback(this.name); - } - } - } - ,restart: function() { - this.play(true,this.reversed); - } - ,stop: function() { - this.finished = true; - this.paused = true; - } - ,reset: function() { - this.stop(); - this.set_curFrame(this.reversed ? this.frames.length - 1 : 0); - } - ,finish: function() { - this.stop(); - this.set_curFrame(this.reversed ? 0 : this.frames.length - 1); - } - ,pause: function() { - this.paused = true; - } - ,resume: function() { - this.paused = false; - } - ,reverse: function() { - this.reversed = !this.reversed; - if(this.finished) { - this.play(false,this.reversed); - } - } - ,update: function(elapsed) { - if(this.delay == 0 || this.finished || this.paused) { - return; - } - this._frameTimer += elapsed; - while(this._frameTimer > this.delay && !this.finished) { - this._frameTimer -= this.delay; - if(this.reversed) { - if(this.looped && this.curFrame == 0) { - this.set_curFrame(this.frames.length - 1); - } else { - var _g = this; - _g.set_curFrame(_g.curFrame - 1); - } - } else if(this.looped && this.curFrame == this.frames.length - 1) { - this.set_curFrame(0); - } else { - var _g1 = this; - _g1.set_curFrame(_g1.curFrame + 1); - } - } - } - ,clone: function(Parent) { - return new flixel_animation_FlxAnimation(Parent,this.name,this.frames,this.frameRate,this.looped,this.flipX,this.flipY); - } - ,set_frameRate: function(value) { - this.delay = 0; - this.frameRate = value; - if(value > 0) { - this.delay = 1.0 / value; - } - return value; - } - ,set_curFrame: function(Frame) { - var maxFrameIndex = this.frames.length - 1; - var tempFrame = this.reversed ? maxFrameIndex - Frame : Frame; - if(tempFrame >= 0) { - if(!this.looped && Frame > maxFrameIndex) { - this.finished = true; - this.curFrame = this.reversed ? 0 : maxFrameIndex; - } else { - this.curFrame = Frame; - } - } else { - this.curFrame = flixel_FlxG.random.int(0,maxFrameIndex); - } - this.set_curIndex(this.frames[this.curFrame]); - if(this.finished && this.parent != null) { - var _this = this.parent; - if(_this.finishCallback != null) { - _this.finishCallback(this.name); - } - } - return Frame; - } - ,get_numFrames: function() { - return this.frames.length; - } - ,__class__: flixel_animation_FlxAnimation - ,__properties__: $extend(flixel_animation_FlxBaseAnimation.prototype.__properties__,{get_numFrames:"get_numFrames",set_curFrame:"set_curFrame",set_frameRate:"set_frameRate"}) -}); -var flixel_animation_FlxAnimationController = function(Sprite) { - this.frameIndex = -1; - this._sprite = Sprite; - this._animations = new haxe_ds_StringMap(); -}; -$hxClasses["flixel.animation.FlxAnimationController"] = flixel_animation_FlxAnimationController; -flixel_animation_FlxAnimationController.__name__ = "flixel.animation.FlxAnimationController"; -flixel_animation_FlxAnimationController.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_animation_FlxAnimationController.prototype = { - frameIndex: null - ,frames: null - ,callback: null - ,finishCallback: null - ,_sprite: null - ,_curAnim: null - ,_animations: null - ,_prerotated: null - ,update: function(elapsed) { - if(this._curAnim != null) { - this._curAnim.update(elapsed); - } else if(this._prerotated != null) { - this._prerotated.set_angle(this._sprite.angle); - } - } - ,copyFrom: function(controller) { - this.destroyAnimations(); - var _this = controller._animations; - var anim = new haxe_ds__$StringMap_StringMapIterator(_this,_this.arrayKeys()); - while(anim.hasNext()) { - var anim1 = anim.next(); - this.add(anim1.name,anim1.frames,anim1.frameRate,anim1.looped,anim1.flipX,anim1.flipY); - } - if(controller._prerotated != null) { - this.createPrerotated(); - } - if(controller.get_name() != null) { - this.set_name(controller.get_name()); - } - this.set_frameIndex(controller.frameIndex); - return this; - } - ,createPrerotated: function(Controller) { - this.destroyAnimations(); - Controller = Controller != null ? Controller : this; - this._prerotated = new flixel_animation_FlxPrerotatedAnimation(Controller,Controller._sprite.bakedRotationAngle); - this._prerotated.set_angle(this._sprite.angle); - } - ,destroyAnimations: function() { - this.clearAnimations(); - this.clearPrerotated(); - } - ,destroy: function() { - this.destroyAnimations(); - this._animations = null; - this.callback = null; - this._sprite = null; - } - ,clearPrerotated: function() { - if(this._prerotated != null) { - this._prerotated.destroy(); - } - this._prerotated = null; - } - ,clearAnimations: function() { - if(this._animations != null) { - var anim; - var key = this._animations.keys(); - while(key.hasNext()) { - var key1 = key.next(); - var _this = this._animations; - anim = __map_reserved[key1] != null ? _this.getReserved(key1) : _this.h[key1]; - if(anim != null) { - anim.destroy(); - } - } - } - this._animations = new haxe_ds_StringMap(); - this._curAnim = null; - } - ,add: function(Name,Frames,FrameRate,Looped,FlipX,FlipY) { - if(FlipY == null) { - FlipY = false; - } - if(FlipX == null) { - FlipX = false; - } - if(Looped == null) { - Looped = true; - } - if(FrameRate == null) { - FrameRate = 30; - } - var framesToAdd = Frames; - var numFrames = framesToAdd.length - 1; - var i = numFrames; - while(i >= 0) { - if(framesToAdd[i] >= this._sprite.numFrames) { - if(framesToAdd == Frames) { - framesToAdd = Frames.slice(); - } - framesToAdd.splice(i,1); - } - --i; - } - if(framesToAdd.length > 0) { - var anim = new flixel_animation_FlxAnimation(this,Name,framesToAdd,FrameRate,Looped,FlipX,FlipY); - var _this = this._animations; - if(__map_reserved[Name] != null) { - _this.setReserved(Name,anim); - } else { - _this.h[Name] = anim; - } - } - } - ,remove: function(Name) { - var _this = this._animations; - var anim = __map_reserved[Name] != null ? _this.getReserved(Name) : _this.h[Name]; - if(anim != null) { - this._animations.remove(Name); - anim.destroy(); - } - } - ,append: function(Name,Frames) { - var _this = this._animations; - var anim = __map_reserved[Name] != null ? _this.getReserved(Name) : _this.h[Name]; - if(anim == null) { - return; - } - var numFrames = Frames.length - 1; - var i = numFrames; - while(i >= 0) { - if(Frames[numFrames - i] < this._sprite.numFrames) { - anim.frames.push(Frames[numFrames - i]); - } - --i; - } - } - ,addByNames: function(Name,FrameNames,FrameRate,Looped,FlipX,FlipY) { - if(FlipY == null) { - FlipY = false; - } - if(FlipX == null) { - FlipX = false; - } - if(Looped == null) { - Looped = true; - } - if(FrameRate == null) { - FrameRate = 30; - } - if(this._sprite.frames != null) { - var indices = []; - this.byNamesHelper(indices,FrameNames); - if(indices.length > 0) { - var anim = new flixel_animation_FlxAnimation(this,Name,indices,FrameRate,Looped,FlipX,FlipY); - var _this = this._animations; - if(__map_reserved[Name] != null) { - _this.setReserved(Name,anim); - } else { - _this.h[Name] = anim; - } - } - } - } - ,appendByNames: function(Name,FrameNames) { - var _this = this._animations; - var anim = __map_reserved[Name] != null ? _this.getReserved(Name) : _this.h[Name]; - if(anim == null) { - return; - } - if(this._sprite.frames != null) { - this.byNamesHelper(anim.frames,FrameNames); - } - } - ,addByStringIndices: function(Name,Prefix,Indices,Postfix,FrameRate,Looped,FlipX,FlipY) { - if(FlipY == null) { - FlipY = false; - } - if(FlipX == null) { - FlipX = false; - } - if(Looped == null) { - Looped = true; - } - if(FrameRate == null) { - FrameRate = 30; - } - if(this._sprite.frames != null) { - var frameIndices = []; - this.byStringIndicesHelper(frameIndices,Prefix,Indices,Postfix); - if(frameIndices.length > 0) { - var anim = new flixel_animation_FlxAnimation(this,Name,frameIndices,FrameRate,Looped,FlipX,FlipY); - var _this = this._animations; - if(__map_reserved[Name] != null) { - _this.setReserved(Name,anim); - } else { - _this.h[Name] = anim; - } - } - } - } - ,appendByStringIndices: function(Name,Prefix,Indices,Postfix) { - var _this = this._animations; - var anim = __map_reserved[Name] != null ? _this.getReserved(Name) : _this.h[Name]; - if(anim == null) { - return; - } - if(this._sprite.frames != null) { - this.byStringIndicesHelper(anim.frames,Prefix,Indices,Postfix); - } - } - ,addByIndices: function(Name,Prefix,Indices,Postfix,FrameRate,Looped,FlipX,FlipY) { - if(FlipY == null) { - FlipY = false; - } - if(FlipX == null) { - FlipX = false; - } - if(Looped == null) { - Looped = true; - } - if(FrameRate == null) { - FrameRate = 30; - } - if(this._sprite.frames != null) { - var frameIndices = []; - this.byIndicesHelper(frameIndices,Prefix,Indices,Postfix); - if(frameIndices.length > 0) { - var anim = new flixel_animation_FlxAnimation(this,Name,frameIndices,FrameRate,Looped,FlipX,FlipY); - var _this = this._animations; - if(__map_reserved[Name] != null) { - _this.setReserved(Name,anim); - } else { - _this.h[Name] = anim; - } - } - } - } - ,appendByIndices: function(Name,Prefix,Indices,Postfix) { - var _this = this._animations; - var anim = __map_reserved[Name] != null ? _this.getReserved(Name) : _this.h[Name]; - if(anim == null) { - return; - } - if(this._sprite.frames != null) { - this.byIndicesHelper(anim.frames,Prefix,Indices,Postfix); - } - } - ,findSpriteFrame: function(Prefix,Index,Postfix) { - var numFrames = this._sprite.numFrames; - var flxFrames = this._sprite.frames.frames; - var _g = 0; - var _g1 = numFrames; - while(_g < _g1) { - var i = _g++; - var name = flxFrames[i].name; - if(StringTools.startsWith(name,Prefix) && StringTools.endsWith(name,Postfix)) { - var index = Std.parseInt(name.substring(Prefix.length,name.length - Postfix.length)); - if(index != null && index == Index) { - return i; - } - } - } - return -1; - } - ,addByPrefix: function(Name,Prefix,FrameRate,Looped,FlipX,FlipY) { - if(FlipY == null) { - FlipY = false; - } - if(FlipX == null) { - FlipX = false; - } - if(Looped == null) { - Looped = true; - } - if(FrameRate == null) { - FrameRate = 30; - } - if(this._sprite.frames != null) { - var animFrames = []; - this.findByPrefix(animFrames,Prefix); - if(animFrames.length > 0) { - var frameIndices = []; - this.byPrefixHelper(frameIndices,animFrames,Prefix); - if(frameIndices.length > 0) { - var anim = new flixel_animation_FlxAnimation(this,Name,frameIndices,FrameRate,Looped,FlipX,FlipY); - var _this = this._animations; - if(__map_reserved[Name] != null) { - _this.setReserved(Name,anim); - } else { - _this.h[Name] = anim; - } - } - } - } - } - ,appendByPrefix: function(Name,Prefix) { - var _this = this._animations; - var anim = __map_reserved[Name] != null ? _this.getReserved(Name) : _this.h[Name]; - if(anim == null) { - return; - } - if(this._sprite.frames != null) { - var animFrames = []; - this.findByPrefix(animFrames,Prefix); - if(animFrames.length > 0) { - this.byPrefixHelper(anim.frames,animFrames,Prefix); - } - } - } - ,play: function(AnimName,Force,Reversed,Frame) { - if(Frame == null) { - Frame = 0; - } - if(Reversed == null) { - Reversed = false; - } - if(Force == null) { - Force = false; - } - if(AnimName == null) { - if(this._curAnim != null) { - this._curAnim.stop(); - } - this._curAnim = null; - } - var tmp; - if(AnimName != null) { - var _this = this._animations; - tmp = (__map_reserved[AnimName] != null ? _this.getReserved(AnimName) : _this.h[AnimName]) == null; - } else { - tmp = true; - } - if(tmp) { - return; - } - var oldFlipX = false; - var oldFlipY = false; - if(this._curAnim != null && AnimName != this._curAnim.name) { - oldFlipX = this._curAnim.flipX; - oldFlipY = this._curAnim.flipY; - this._curAnim.stop(); - } - var _this1 = this._animations; - this._curAnim = __map_reserved[AnimName] != null ? _this1.getReserved(AnimName) : _this1.h[AnimName]; - this._curAnim.play(Force,Reversed,Frame); - if(oldFlipX != this._curAnim.flipX || oldFlipY != this._curAnim.flipY) { - this._sprite.dirty = true; - } - } - ,reset: function() { - if(this._curAnim != null) { - this._curAnim.reset(); - } - } - ,finish: function() { - if(this._curAnim != null) { - this._curAnim.finish(); - } - } - ,stop: function() { - if(this._curAnim != null) { - this._curAnim.stop(); - } - } - ,pause: function() { - if(this._curAnim != null) { - this._curAnim.pause(); - } - } - ,resume: function() { - if(this._curAnim != null) { - this._curAnim.paused = false; - } - } - ,reverse: function() { - if(this._curAnim != null) { - this._curAnim.reverse(); - } - } - ,getByName: function(Name) { - var _this = this._animations; - if(__map_reserved[Name] != null) { - return _this.getReserved(Name); - } else { - return _this.h[Name]; - } - } - ,randomFrame: function() { - if(this._curAnim != null) { - this._curAnim.stop(); - this._curAnim = null; - } - this.set_frameIndex(flixel_FlxG.random.int(0,this._sprite.numFrames - 1)); - } - ,fireCallback: function() { - if(this.callback != null) { - var name = this._curAnim != null ? this._curAnim.name : null; - var number = this._curAnim != null ? this._curAnim.curFrame : this.frameIndex; - this.callback(name,number,this.frameIndex); - } - } - ,fireFinishCallback: function(name) { - if(this.finishCallback != null) { - this.finishCallback(name); - } - } - ,byNamesHelper: function(AddTo,FrameNames) { - var _g = 0; - while(_g < FrameNames.length) { - var frameName = FrameNames[_g]; - ++_g; - var _this = this._sprite.frames.framesHash; - if(__map_reserved[frameName] != null ? _this.existsReserved(frameName) : _this.h.hasOwnProperty(frameName)) { - var _this1 = this._sprite.frames.framesHash; - var frameToAdd = __map_reserved[frameName] != null ? _this1.getReserved(frameName) : _this1.h[frameName]; - AddTo.push(this._sprite.frames.frames.indexOf(frameToAdd)); - } - } - } - ,byStringIndicesHelper: function(AddTo,Prefix,Indices,Postfix) { - var _g = 0; - while(_g < Indices.length) { - var index = Indices[_g]; - ++_g; - var name = Prefix + index + Postfix; - var _this = this._sprite.frames.framesHash; - if(__map_reserved[name] != null ? _this.existsReserved(name) : _this.h.hasOwnProperty(name)) { - var _this1 = this._sprite.frames.framesHash; - var frameToAdd = __map_reserved[name] != null ? _this1.getReserved(name) : _this1.h[name]; - AddTo.push(this._sprite.frames.frames.indexOf(frameToAdd)); - } - } - } - ,byIndicesHelper: function(AddTo,Prefix,Indices,Postfix) { - var _g = 0; - while(_g < Indices.length) { - var index = Indices[_g]; - ++_g; - var indexToAdd = this.findSpriteFrame(Prefix,index,Postfix); - if(indexToAdd != -1) { - AddTo.push(indexToAdd); - } - } - } - ,byPrefixHelper: function(AddTo,AnimFrames,Prefix) { - var name = AnimFrames[0].name; - var postIndex = name.indexOf(".",Prefix.length); - var postFix = name.substring(postIndex == -1 ? name.length : postIndex,name.length); - flixel_graphics_frames_FlxFrame.sort(AnimFrames,Prefix.length,postFix.length); - var _g = 0; - while(_g < AnimFrames.length) { - var animFrame = AnimFrames[_g]; - ++_g; - AddTo.push(this._sprite.frames.frames.indexOf(animFrame)); - } - } - ,findByPrefix: function(AnimFrames,Prefix) { - var _g = 0; - var _g1 = this._sprite.frames.frames; - while(_g < _g1.length) { - var frame = _g1[_g]; - ++_g; - if(frame.name != null && StringTools.startsWith(frame.name,Prefix)) { - AnimFrames.push(frame); - } - } - } - ,set_frameIndex: function(Frame) { - if(this._sprite.frames != null && this._sprite.numFrames > 0) { - Frame %= this._sprite.numFrames; - this._sprite.set_frame(this._sprite.frames.frames[Frame]); - this.frameIndex = Frame; - if(this.callback != null) { - var name = this._curAnim != null ? this._curAnim.name : null; - var number = this._curAnim != null ? this._curAnim.curFrame : this.frameIndex; - this.callback(name,number,this.frameIndex); - } - } - return this.frameIndex; - } - ,get_frameName: function() { - return this._sprite.frame.name; - } - ,set_frameName: function(Value) { - var tmp; - if(this._sprite.frames != null) { - var _this = this._sprite.frames.framesHash; - tmp = __map_reserved[Value] != null ? _this.existsReserved(Value) : _this.h.hasOwnProperty(Value); - } else { - tmp = false; - } - if(tmp) { - if(this._curAnim != null) { - this._curAnim.stop(); - this._curAnim = null; - } - var _this1 = this._sprite.frames.framesHash; - var frame = __map_reserved[Value] != null ? _this1.getReserved(Value) : _this1.h[Value]; - if(frame != null) { - this.set_frameIndex(this._sprite.frames.frames.indexOf(frame)); - } - } - return Value; - } - ,get_name: function() { - var animName = null; - if(this._curAnim != null) { - animName = this._curAnim.name; - } - return animName; - } - ,set_name: function(AnimName) { - this.play(AnimName); - return AnimName; - } - ,get_curAnim: function() { - return this._curAnim; - } - ,set_curAnim: function(Anim) { - if(Anim != this._curAnim) { - if(this._curAnim != null) { - this._curAnim.stop(); - } - if(Anim != null) { - Anim.play(); - } - } - return this._curAnim = Anim; - } - ,get_paused: function() { - var paused = false; - if(this._curAnim != null) { - paused = this._curAnim.paused; - } - return paused; - } - ,set_paused: function(Value) { - if(this._curAnim != null) { - if(Value) { - this._curAnim.pause(); - } else { - this._curAnim.paused = false; - } - } - return Value; - } - ,get_finished: function() { - var finished = true; - if(this._curAnim != null) { - finished = this._curAnim.finished; - } - return finished; - } - ,set_finished: function(Value) { - if(Value && this._curAnim != null) { - this._curAnim.finish(); - } - return Value; - } - ,get_frames: function() { - return this._sprite.numFrames; - } - ,getFrameIndex: function(Frame) { - return this._sprite.frames.frames.indexOf(Frame); - } - ,__class__: flixel_animation_FlxAnimationController - ,__properties__: {get_frames:"get_frames",set_finished:"set_finished",get_finished:"get_finished",set_paused:"set_paused",get_paused:"get_paused",set_name:"set_name",get_name:"get_name",set_frameName:"set_frameName",get_frameName:"get_frameName",set_frameIndex:"set_frameIndex",set_curAnim:"set_curAnim",get_curAnim:"get_curAnim"} -}; -var flixel_animation_FlxPrerotatedAnimation = function(Parent,Baked) { - this.angle = 0; - flixel_animation_FlxBaseAnimation.call(this,Parent,"prerotated_animation"); - this.baked = Baked; - this.rotations = Math.round(360 / Baked); -}; -$hxClasses["flixel.animation.FlxPrerotatedAnimation"] = flixel_animation_FlxPrerotatedAnimation; -flixel_animation_FlxPrerotatedAnimation.__name__ = "flixel.animation.FlxPrerotatedAnimation"; -flixel_animation_FlxPrerotatedAnimation.__super__ = flixel_animation_FlxBaseAnimation; -flixel_animation_FlxPrerotatedAnimation.prototype = $extend(flixel_animation_FlxBaseAnimation.prototype,{ - rotations: null - ,baked: null - ,angle: null - ,set_angle: function(Value) { - if(isNaN(Value)) { - throw new js__$Boot_HaxeError("angle must not be NaN"); - } - var oldIndex = this.curIndex; - var angleHelper = Math.floor(Value % 360); - while(angleHelper < 0) angleHelper += 360; - var newIndex = Math.floor(angleHelper / this.baked + 0.5); - newIndex = newIndex % this.rotations | 0; - if(oldIndex != newIndex) { - this.set_curIndex(newIndex); - } - return this.angle = Value; - } - ,set_curIndex: function(Value) { - this.curIndex = Value; - if(this.parent != null) { - this.parent.set_frameIndex(Value); - } - return Value; - } - ,clone: function(Parent) { - return new flixel_animation_FlxPrerotatedAnimation(Parent,this.baked); - } - ,__class__: flixel_animation_FlxPrerotatedAnimation - ,__properties__: $extend(flixel_animation_FlxBaseAnimation.prototype.__properties__,{set_angle:"set_angle"}) -}); -var flixel_util_FlxPool_$flixel_$effects_$FlxFlicker = function(classObj) { - this._count = 0; - this._pool = []; - this._class = classObj; -}; -$hxClasses["flixel.util.FlxPool_flixel_effects_FlxFlicker"] = flixel_util_FlxPool_$flixel_$effects_$FlxFlicker; -flixel_util_FlxPool_$flixel_$effects_$FlxFlicker.__name__ = "flixel.util.FlxPool_flixel_effects_FlxFlicker"; -flixel_util_FlxPool_$flixel_$effects_$FlxFlicker.__interfaces__ = [flixel_util_IFlxPool]; -flixel_util_FlxPool_$flixel_$effects_$FlxFlicker.prototype = { - _pool: null - ,_class: null - ,_count: null - ,get: function() { - if(this._count == 0) { - return Type.createInstance(this._class,[]); - } - return this._pool[--this._count]; - } - ,put: function(obj) { - if(obj != null) { - var i = this._pool.indexOf(obj); - if(i == -1 || i >= this._count) { - obj.destroy(); - this._pool[this._count++] = obj; - } - } - } - ,putUnsafe: function(obj) { - if(obj != null) { - obj.destroy(); - this._pool[this._count++] = obj; - } - } - ,preAllocate: function(numObjects) { - while(numObjects-- > 0) this._pool[this._count++] = Type.createInstance(this._class,[]); - } - ,clear: function() { - this._count = 0; - var oldPool = this._pool; - this._pool = []; - return oldPool; - } - ,get_length: function() { - return this._count; - } - ,__class__: flixel_util_FlxPool_$flixel_$effects_$FlxFlicker - ,__properties__: {get_length:"get_length"} -}; -var flixel_effects_FlxFlicker = function() { -}; -$hxClasses["flixel.effects.FlxFlicker"] = flixel_effects_FlxFlicker; -flixel_effects_FlxFlicker.__name__ = "flixel.effects.FlxFlicker"; -flixel_effects_FlxFlicker.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_effects_FlxFlicker.flicker = function(Object1,Duration,Interval,EndVisibility,ForceRestart,CompletionCallback,ProgressCallback) { - if(ForceRestart == null) { - ForceRestart = true; - } - if(EndVisibility == null) { - EndVisibility = true; - } - if(Interval == null) { - Interval = 0.04; - } - if(Duration == null) { - Duration = 1; - } - if(flixel_effects_FlxFlicker.isFlickering(Object1)) { - if(ForceRestart) { - flixel_effects_FlxFlicker.stopFlickering(Object1); - } else { - return flixel_effects_FlxFlicker._boundObjects.h[Object1.__id__]; - } - } - if(Interval <= 0) { - Interval = flixel_FlxG.elapsed; - } - var flicker = flixel_effects_FlxFlicker._pool.get(); - flicker.start(Object1,Duration,Interval,EndVisibility,CompletionCallback,ProgressCallback); - flixel_effects_FlxFlicker._boundObjects.set(Object1,flicker); - return flicker; -}; -flixel_effects_FlxFlicker.isFlickering = function(Object1) { - return flixel_effects_FlxFlicker._boundObjects.h.__keys__[Object1.__id__] != null; -}; -flixel_effects_FlxFlicker.stopFlickering = function(Object1) { - var boundFlicker = flixel_effects_FlxFlicker._boundObjects.h[Object1.__id__]; - if(boundFlicker != null) { - boundFlicker.stop(); - } -}; -flixel_effects_FlxFlicker.prototype = { - object: null - ,endVisibility: null - ,timer: null - ,completionCallback: null - ,progressCallback: null - ,duration: null - ,interval: null - ,destroy: function() { - this.object = null; - this.timer = null; - this.completionCallback = null; - this.progressCallback = null; - } - ,start: function(Object1,Duration,Interval,EndVisibility,CompletionCallback,ProgressCallback) { - this.object = Object1; - this.duration = Duration; - this.interval = Interval; - this.completionCallback = CompletionCallback; - this.progressCallback = ProgressCallback; - this.endVisibility = EndVisibility; - this.timer = new flixel_util_FlxTimer().start(this.interval,$bind(this,this.flickerProgress),this.duration / this.interval | 0); - } - ,stop: function() { - this.timer.cancel(); - this.object.set_visible(true); - this.release(); - } - ,release: function() { - flixel_effects_FlxFlicker._boundObjects.remove(this.object); - flixel_effects_FlxFlicker._pool.put(this); - } - ,flickerProgress: function(Timer) { - this.object.set_visible(!this.object.visible); - if(this.progressCallback != null) { - this.progressCallback(this); - } - if(Timer.loops > 0 && Timer.loops - Timer._loopsCounter == 0) { - this.object.set_visible(this.endVisibility); - if(this.completionCallback != null) { - this.completionCallback(this); - } - this.release(); - } - } - ,__class__: flixel_effects_FlxFlicker -}; -var flixel_effects_postprocess_PostProcess = function(shader) { -}; -$hxClasses["flixel.effects.postprocess.PostProcess"] = flixel_effects_postprocess_PostProcess; -flixel_effects_postprocess_PostProcess.__name__ = "flixel.effects.postprocess.PostProcess"; -flixel_effects_postprocess_PostProcess.prototype = { - enable: function(to) { - } - ,capture: function() { - } - ,rebuild: function() { - } - ,update: function(elapsed) { - } - ,render: function(rect) { - } - ,setUniform: function(uniform,value) { - } - ,set_to: function(value) { - return null; - } - ,__class__: flixel_effects_postprocess_PostProcess - ,__properties__: {set_to:"set_to"} -}; -var flixel_graphics_FlxGraphic = function(Key,Bitmap,Persist) { - this._destroyOnNoUse = true; - this._useCount = 0; - this.unique = false; - this.isDumped = false; - this.persist = false; - this.height = 0; - this.width = 0; - this.key = Key; - this.persist = Persist != null ? Persist : flixel_graphics_FlxGraphic.defaultPersist; - this.frameCollections = new haxe_ds_EnumValueMap(); - this.frameCollectionTypes = []; - this.set_bitmap(Bitmap); - this.shader = new flixel_graphics_tile_FlxGraphicsShader(); -}; -$hxClasses["flixel.graphics.FlxGraphic"] = flixel_graphics_FlxGraphic; -flixel_graphics_FlxGraphic.__name__ = "flixel.graphics.FlxGraphic"; -flixel_graphics_FlxGraphic.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_graphics_FlxGraphic.fromAssetKey = function(Source,Unique,Key,Cache1) { - if(Cache1 == null) { - Cache1 = true; - } - if(Unique == null) { - Unique = false; - } - var bitmap = null; - if(!Cache1) { - bitmap = openfl_utils_Assets.exists(Source) ? openfl_utils_Assets.getBitmapData(Source,false) : null; - if(bitmap == null) { - return null; - } - return flixel_graphics_FlxGraphic.createGraphic(bitmap,Key,Unique,Cache1); - } - var key = flixel_FlxG.bitmap.generateKey(Source,Key,Unique); - var _this = flixel_FlxG.bitmap._cache; - var graphic = __map_reserved[key] != null ? _this.getReserved(key) : _this.h[key]; - if(graphic != null) { - return graphic; - } - bitmap = openfl_utils_Assets.exists(Source) ? openfl_utils_Assets.getBitmapData(Source,false) : null; - if(bitmap == null) { - return null; - } - graphic = flixel_graphics_FlxGraphic.createGraphic(bitmap,key,Unique); - graphic.assetsKey = Source; - return graphic; -}; -flixel_graphics_FlxGraphic.fromClass = function(Source,Unique,Key,Cache1) { - if(Cache1 == null) { - Cache1 = true; - } - if(Unique == null) { - Unique = false; - } - var bitmap = null; - if(!Cache1) { - bitmap = Type.createInstance(Source,[0,0]); - return flixel_graphics_FlxGraphic.createGraphic(bitmap,Key,Unique,Cache1); - } - var _this = flixel_FlxG.bitmap; - var key = Source.__name__; - key = flixel_FlxG.bitmap.generateKey(key,Key,Unique); - var _this1 = flixel_FlxG.bitmap._cache; - var graphic = __map_reserved[key] != null ? _this1.getReserved(key) : _this1.h[key]; - if(graphic != null) { - return graphic; - } - bitmap = Type.createInstance(Source,[0,0]); - graphic = flixel_graphics_FlxGraphic.createGraphic(bitmap,key,Unique); - graphic.assetsClass = Source; - return graphic; -}; -flixel_graphics_FlxGraphic.fromBitmapData = function(Source,Unique,Key,Cache1) { - if(Cache1 == null) { - Cache1 = true; - } - if(Unique == null) { - Unique = false; - } - if(!Cache1) { - return flixel_graphics_FlxGraphic.createGraphic(Source,Key,Unique,Cache1); - } - var key = flixel_FlxG.bitmap.findKeyForBitmap(Source); - var assetKey = null; - var assetClass = null; - var graphic = null; - if(key != null) { - var _this = flixel_FlxG.bitmap._cache; - graphic = __map_reserved[key] != null ? _this.getReserved(key) : _this.h[key]; - assetKey = graphic.assetsKey; - assetClass = graphic.assetsClass; - } - key = flixel_FlxG.bitmap.generateKey(key,Key,Unique); - var _this1 = flixel_FlxG.bitmap._cache; - graphic = __map_reserved[key] != null ? _this1.getReserved(key) : _this1.h[key]; - if(graphic != null) { - return graphic; - } - graphic = flixel_graphics_FlxGraphic.createGraphic(Source,key,Unique); - graphic.assetsKey = assetKey; - graphic.assetsClass = assetClass; - return graphic; -}; -flixel_graphics_FlxGraphic.fromFrame = function(Source,Unique,Key,Cache1) { - if(Cache1 == null) { - Cache1 = true; - } - if(Unique == null) { - Unique = false; - } - var key = Source.name; - if(key == null) { - var _this = Source.frame; - var value = _this.x; - var _this1 = flixel_util_LabelValuePair._pool.get(); - _this1.label = "x"; - _this1.value = value; - var value1 = _this.y; - var _this2 = flixel_util_LabelValuePair._pool.get(); - _this2.label = "y"; - _this2.value = value1; - var value2 = _this.width; - var _this3 = flixel_util_LabelValuePair._pool.get(); - _this3.label = "w"; - _this3.value = value2; - var value3 = _this.height; - var _this4 = flixel_util_LabelValuePair._pool.get(); - _this4.label = "h"; - _this4.value = value3; - key = flixel_util_FlxStringUtil.getDebugString([_this1,_this2,_this3,_this4]); - } - key = Source.parent.key + ":" + key; - key = flixel_FlxG.bitmap.generateKey(key,Key,Unique); - var _this5 = flixel_FlxG.bitmap._cache; - var graphic = __map_reserved[key] != null ? _this5.getReserved(key) : _this5.h[key]; - if(graphic != null) { - return graphic; - } - var bitmap = Source.paint(); - graphic = flixel_graphics_FlxGraphic.createGraphic(bitmap,key,Unique,Cache1); - var image = flixel_graphics_frames_FlxImageFrame.fromGraphic(graphic); - image.frames[0].name = Source.name; - return graphic; -}; -flixel_graphics_FlxGraphic.fromFrames = function(Source,Unique,Key) { - if(Unique == null) { - Unique = false; - } - return flixel_graphics_FlxGraphic.fromGraphic(Source.parent,Unique,Key); -}; -flixel_graphics_FlxGraphic.fromGraphic = function(Source,Unique,Key) { - if(Unique == null) { - Unique = false; - } - if(!Unique) { - return Source; - } - var key = flixel_FlxG.bitmap.generateKey(Source.key,Key,Unique); - var graphic = flixel_graphics_FlxGraphic.createGraphic(Source.bitmap,key,Unique); - graphic.unique = Unique; - graphic.assetsClass = Source.assetsClass; - graphic.assetsKey = Source.assetsKey; - var key1 = graphic.key; - var _this = flixel_FlxG.bitmap._cache; - if(__map_reserved[key1] != null) { - _this.setReserved(key1,graphic); - } else { - _this.h[key1] = graphic; - } - return graphic; -}; -flixel_graphics_FlxGraphic.fromRectangle = function(Width,Height,Color,Unique,Key) { - if(Unique == null) { - Unique = false; - } - var systemKey = Width + "x" + Height + ":" + Color; - var key = flixel_FlxG.bitmap.generateKey(systemKey,Key,Unique); - var _this = flixel_FlxG.bitmap._cache; - var graphic = __map_reserved[key] != null ? _this.getReserved(key) : _this.h[key]; - if(graphic != null) { - return graphic; - } - var bitmap = new openfl_display_BitmapData(Width,Height,true,Color); - return flixel_graphics_FlxGraphic.createGraphic(bitmap,key); -}; -flixel_graphics_FlxGraphic.getBitmap = function(Bitmap,Unique) { - if(Unique == null) { - Unique = false; - } - if(Unique) { - return Bitmap.clone(); - } else { - return Bitmap; - } -}; -flixel_graphics_FlxGraphic.createGraphic = function(Bitmap,Key,Unique,Cache1) { - if(Cache1 == null) { - Cache1 = true; - } - if(Unique == null) { - Unique = false; - } - var Unique1 = Unique; - if(Unique1 == null) { - Unique1 = false; - } - Bitmap = Unique1 ? Bitmap.clone() : Bitmap; - var graphic = null; - if(Cache1) { - graphic = new flixel_graphics_FlxGraphic(Key,Bitmap); - graphic.unique = Unique; - var key = graphic.key; - var _this = flixel_FlxG.bitmap._cache; - if(__map_reserved[key] != null) { - _this.setReserved(key,graphic); - } else { - _this.h[key] = graphic; - } - } else { - graphic = new flixel_graphics_FlxGraphic(null,Bitmap); - } - return graphic; -}; -flixel_graphics_FlxGraphic.prototype = { - key: null - ,bitmap: null - ,width: null - ,height: null - ,assetsKey: null - ,assetsClass: null - ,persist: null - ,isDumped: null - ,shader: null - ,imageFrame: null - ,atlasFrames: null - ,frameCollections: null - ,frameCollectionTypes: null - ,unique: null - ,_imageFrame: null - ,_useCount: null - ,_destroyOnNoUse: null - ,dump: function() { - } - ,undump: function() { - var newBitmap = this.getBitmapFromSystem(); - if(newBitmap != null) { - this.set_bitmap(newBitmap); - } - this.isDumped = false; - } - ,onContext: function() { - if(this.isDumped) { - this.undump(); - this.dump(); - } - } - ,onAssetsReload: function() { - if(!(this.assetsClass != null || this.assetsKey != null)) { - return; - } - var dumped = this.isDumped; - this.undump(); - if(dumped) { - this.dump(); - } - } - ,destroy: function() { - this.set_bitmap(flixel_util_FlxDestroyUtil.dispose(this.bitmap)); - this.shader = null; - this.key = null; - this.assetsKey = null; - this.assetsClass = null; - this._imageFrame = null; - if(this.frameCollections == null) { - return; - } - var collections; - var _g = 0; - var _g1 = this.frameCollectionTypes; - while(_g < _g1.length) { - var collectionType = _g1[_g]; - ++_g; - collections = this.frameCollections.get(collectionType); - flixel_util_FlxDestroyUtil.destroyArray(collections); - } - this.frameCollections = null; - this.frameCollectionTypes = null; - } - ,addFrameCollection: function(collection) { - if(collection.type != null) { - var type = collection.type; - var collections = this.frameCollections.get(type); - if(collections == null) { - collections = []; - this.frameCollections.set(type,collections); - } - var collections1 = collections; - collections1.push(collection); - } - } - ,getFramesCollections: function(type) { - var collections = this.frameCollections.get(type); - if(collections == null) { - collections = []; - this.frameCollections.set(type,collections); - } - return collections; - } - ,getEmptyFrame: function(size) { - var frame = new flixel_graphics_frames_FlxFrame(this); - frame.type = 2; - var _this = flixel_math_FlxRect._pool.get(); - var X = 0; - var Y = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - var rect = _this; - rect._inPool = false; - frame.set_frame(rect); - var _this1 = frame.sourceSize; - _this1.set_x(size.x); - _this1.set_y(size.y); - if(size._weak) { - size.put(); - } - return frame; - } - ,getBitmapFromSystem: function() { - var newBitmap = null; - if(this.assetsClass != null) { - newBitmap = Type.createInstance(this.assetsClass,[0,0]); - } else if(this.assetsKey != null) { - var id = this.assetsKey; - newBitmap = openfl_utils_Assets.exists(id) ? openfl_utils_Assets.getBitmapData(id,false) : null; - } - if(newBitmap != null) { - var Unique = this.unique; - if(Unique == null) { - Unique = false; - } - if(Unique) { - return newBitmap.clone(); - } else { - return newBitmap; - } - } - return null; - } - ,get_canBeDumped: function() { - if(this.assetsClass == null) { - return this.assetsKey != null; - } else { - return true; - } - } - ,get_useCount: function() { - return this._useCount; - } - ,set_useCount: function(Value) { - if(Value <= 0 && this._destroyOnNoUse && !this.persist) { - flixel_FlxG.bitmap.remove(this); - } - return this._useCount = Value; - } - ,get_destroyOnNoUse: function() { - return this._destroyOnNoUse; - } - ,set_destroyOnNoUse: function(Value) { - if(Value && this._useCount <= 0 && this.key != null && !this.persist) { - flixel_FlxG.bitmap.remove(this); - } - return this._destroyOnNoUse = Value; - } - ,get_imageFrame: function() { - if(this._imageFrame == null) { - var X = 0; - var Y = 0; - var Width = this.bitmap.width; - var Height = this.bitmap.height; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this.x = X1; - _this.y = Y1; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - this._imageFrame = flixel_graphics_frames_FlxImageFrame.fromRectangle(this,rect); - } - return this._imageFrame; - } - ,get_atlasFrames: function() { - return flixel_graphics_frames_FlxAtlasFrames.findFrame(this,null); - } - ,set_bitmap: function(value) { - if(value != null) { - this.bitmap = value; - this.width = this.bitmap.width; - this.height = this.bitmap.height; - } - return value; - } - ,__class__: flixel_graphics_FlxGraphic - ,__properties__: {get_atlasFrames:"get_atlasFrames",get_imageFrame:"get_imageFrame",set_useCount:"set_useCount",get_useCount:"get_useCount",get_canBeDumped:"get_canBeDumped",set_destroyOnNoUse:"set_destroyOnNoUse",get_destroyOnNoUse:"get_destroyOnNoUse",set_bitmap:"set_bitmap"} -}; -var openfl_geom_Point = function(x,y) { - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - this.x = x; - this.y = y; -}; -$hxClasses["openfl.geom.Point"] = openfl_geom_Point; -openfl_geom_Point.__name__ = "openfl.geom.Point"; -openfl_geom_Point.__limeVector2 = null; -openfl_geom_Point.distance = function(pt1,pt2) { - var dx = pt1.x - pt2.x; - var dy = pt1.y - pt2.y; - return Math.sqrt(dx * dx + dy * dy); -}; -openfl_geom_Point.interpolate = function(pt1,pt2,f) { - return new openfl_geom_Point(pt2.x + f * (pt1.x - pt2.x),pt2.y + f * (pt1.y - pt2.y)); -}; -openfl_geom_Point.polar = function(len,angle) { - return new openfl_geom_Point(len * Math.cos(angle),len * Math.sin(angle)); -}; -openfl_geom_Point.prototype = { - x: null - ,y: null - ,add: function(v) { - return new openfl_geom_Point(v.x + this.x,v.y + this.y); - } - ,clone: function() { - return new openfl_geom_Point(this.x,this.y); - } - ,copyFrom: function(sourcePoint) { - this.x = sourcePoint.x; - this.y = sourcePoint.y; - } - ,equals: function(toCompare) { - if(toCompare != null && toCompare.x == this.x) { - return toCompare.y == this.y; - } else { - return false; - } - } - ,normalize: function(thickness) { - if(this.x == 0 && this.y == 0) { - return; - } else { - var norm = thickness / Math.sqrt(this.x * this.x + this.y * this.y); - this.x *= norm; - this.y *= norm; - } - } - ,offset: function(dx,dy) { - this.x += dx; - this.y += dy; - } - ,setTo: function(xa,ya) { - this.x = xa; - this.y = ya; - } - ,subtract: function(v) { - return new openfl_geom_Point(this.x - v.x,this.y - v.y); - } - ,toString: function() { - return "(x=" + this.x + ", y=" + this.y + ")"; - } - ,__toLimeVector2: function() { - if(openfl_geom_Point.__limeVector2 == null) { - openfl_geom_Point.__limeVector2 = new lime_math_Vector2(); - } - var _this = openfl_geom_Point.__limeVector2; - _this.x = this.x; - _this.y = this.y; - return openfl_geom_Point.__limeVector2; - } - ,get_length: function() { - return Math.sqrt(this.x * this.x + this.y * this.y); - } - ,__class__: openfl_geom_Point - ,__properties__: {get_length:"get_length"} -}; -var flixel_graphics_atlas_FlxAtlas = function(name,powerOfTwo,border,rotate,minSize,maxSize) { - if(rotate == null) { - rotate = false; - } - if(border == null) { - border = 1; - } - if(powerOfTwo == null) { - powerOfTwo = false; - } - this.powerOfTwo = false; - this.allowRotation = false; - this.maxHeight = 1024; - this.maxWidth = 1024; - this.minHeight = 128; - this.minWidth = 128; - this.border = 1; - this.persist = false; - this.nodes = new haxe_ds_StringMap(); - this.name = name; - this.set_powerOfTwo(powerOfTwo); - this.border = border; - minSize = minSize != null ? minSize : flixel_graphics_atlas_FlxAtlas.defaultMinSize; - maxSize = maxSize != null ? maxSize : flixel_graphics_atlas_FlxAtlas.defaultMaxSize; - this.set_minWidth(minSize.x | 0); - this.set_minHeight(minSize.y | 0); - this.set_maxWidth(maxSize.x > minSize.x ? maxSize.x | 0 : this.minWidth); - this.set_maxHeight(maxSize.y > minSize.x ? maxSize.y | 0 : this.minHeight); - this.allowRotation = rotate; - this.initRoot(); - flixel_FlxG.signals.preStateCreate.add($bind(this,this.onClear)); -}; -$hxClasses["flixel.graphics.atlas.FlxAtlas"] = flixel_graphics_atlas_FlxAtlas; -flixel_graphics_atlas_FlxAtlas.__name__ = "flixel.graphics.atlas.FlxAtlas"; -flixel_graphics_atlas_FlxAtlas.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_graphics_atlas_FlxAtlas.prototype = { - root: null - ,name: null - ,nodes: null - ,bitmapData: null - ,graphic: null - ,persist: null - ,border: null - ,width: null - ,height: null - ,minWidth: null - ,minHeight: null - ,maxWidth: null - ,maxHeight: null - ,allowRotation: null - ,powerOfTwo: null - ,_graphic: null - ,_tempStorage: null - ,initRoot: function() { - var rootWidth = this.minWidth; - var rootHeight = this.minHeight; - if(this.powerOfTwo) { - rootWidth = this.getNextPowerOfTwo(rootWidth); - rootHeight = this.getNextPowerOfTwo(rootHeight); - } - var X = 0; - var Y = 0; - var Width = rootWidth; - var Height = rootHeight; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this.x = X1; - _this.y = Y1; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - this.root = new flixel_graphics_atlas_FlxNode(rect,this); - } - ,addNode: function(Graphic,Key) { - var key = flixel_system_FlxAssets.resolveKey(Graphic,Key); - if(key == null) { - return null; - } - if(this.hasNodeWithName(key)) { - var _this = this.nodes; - if(__map_reserved[key] != null) { - return _this.getReserved(key); - } else { - return _this.h[key]; - } - } - var data = flixel_system_FlxAssets.resolveBitmapData(Graphic); - if(data == null) { - return null; - } - if(this.root.left == null) { - return this.insertFirstNodeInRoot(data,key); - } - if(this.root.right == null) { - return this.expand(data,key); - } - var inserted = this.tryInsert(data,key); - if(inserted != null) { - return inserted; - } - this.wrapRoot(); - return this.expand(data,key); - } - ,wrapRoot: function() { - var temp = this.root; - var X = 0; - var Y = 0; - var Width = temp.rect.width | 0; - var Height = temp.rect.height | 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this.x = X1; - _this.y = Y1; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - this.root = new flixel_graphics_atlas_FlxNode(rect,this); - this.root.left = temp; - } - ,tryInsert: function(data,key) { - var insertWidth = data.width + this.border; - var insertHeight = data.height + this.border; - var rotateNode = false; - var nodeToInsert = this.findNodeToInsert(insertWidth,insertHeight); - if(this.allowRotation) { - var nodeToInsertWithRotation = this.findNodeToInsert(insertHeight,insertWidth); - if(nodeToInsertWithRotation != null) { - var nodeWithRotationArea = (nodeToInsertWithRotation.rect.width | 0) * (nodeToInsertWithRotation.rect.height | 0); - if(nodeToInsert == null || nodeToInsert != null && (nodeToInsert.rect.width | 0) * (nodeToInsert.rect.height | 0) > nodeWithRotationArea) { - nodeToInsert = nodeToInsertWithRotation; - rotateNode = true; - var temp = insertWidth; - insertWidth = insertHeight; - insertHeight = temp; - } - } - } - if(nodeToInsert != null) { - var horizontally = this.needToDivideHorizontally(nodeToInsert,insertWidth,insertHeight); - return this.divideNode(nodeToInsert,insertWidth,insertHeight,horizontally,data,key,rotateNode); - } - return null; - } - ,needToDivideHorizontally: function(nodeToDivide,insertWidth,insertHeight) { - var dw = (nodeToDivide.rect.width | 0) - insertWidth; - var dh = (nodeToDivide.rect.height | 0) - insertHeight; - return dw > dh; - } - ,divideNode: function(nodeToDivide,insertWidth,insertHeight,divideHorizontally,firstGrandChildData,firstGrandChildKey,firstGrandChildRotated) { - if(firstGrandChildRotated == null) { - firstGrandChildRotated = false; - } - if(nodeToDivide != null) { - var firstChild = null; - var secondChild = null; - var firstGrandChild = null; - var secondGrandChild = null; - var firstGrandChildFilled = firstGrandChildKey != null; - if(divideHorizontally) { - var X = nodeToDivide.rect.x | 0; - var Y = nodeToDivide.rect.y | 0; - var Width = insertWidth; - var Height = nodeToDivide.rect.height | 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this.x = X1; - _this.y = Y1; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - firstChild = new flixel_graphics_atlas_FlxNode(rect,this); - if((nodeToDivide.rect.width | 0) - insertWidth > 0) { - var X2 = (nodeToDivide.rect.x | 0) + insertWidth; - var Y2 = nodeToDivide.rect.y | 0; - var Width2 = (nodeToDivide.rect.width | 0) - insertWidth; - var Height2 = nodeToDivide.rect.height | 0; - if(Height2 == null) { - Height2 = 0; - } - if(Width2 == null) { - Width2 = 0; - } - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - var _this1 = flixel_math_FlxRect._pool.get(); - var X3 = X2; - var Y3 = Y2; - var Width3 = Width2; - var Height3 = Height2; - if(Height3 == null) { - Height3 = 0; - } - if(Width3 == null) { - Width3 = 0; - } - if(Y3 == null) { - Y3 = 0; - } - if(X3 == null) { - X3 = 0; - } - _this1.x = X3; - _this1.y = Y3; - _this1.width = Width3; - _this1.height = Height3; - var rect1 = _this1; - rect1._inPool = false; - secondChild = new flixel_graphics_atlas_FlxNode(rect1,this); - } - var X4 = firstChild.rect.x | 0; - var Y4 = firstChild.rect.y | 0; - var Width4 = insertWidth; - var Height4 = insertHeight; - if(Height4 == null) { - Height4 = 0; - } - if(Width4 == null) { - Width4 = 0; - } - if(Y4 == null) { - Y4 = 0; - } - if(X4 == null) { - X4 = 0; - } - var _this2 = flixel_math_FlxRect._pool.get(); - var X5 = X4; - var Y5 = Y4; - var Width5 = Width4; - var Height5 = Height4; - if(Height5 == null) { - Height5 = 0; - } - if(Width5 == null) { - Width5 = 0; - } - if(Y5 == null) { - Y5 = 0; - } - if(X5 == null) { - X5 = 0; - } - _this2.x = X5; - _this2.y = Y5; - _this2.width = Width5; - _this2.height = Height5; - var rect2 = _this2; - rect2._inPool = false; - firstGrandChild = new flixel_graphics_atlas_FlxNode(rect2,this,firstGrandChildFilled,firstGrandChildKey,firstGrandChildRotated); - if((firstChild.rect.height | 0) - insertHeight > 0) { - var X6 = firstChild.rect.x | 0; - var Y6 = (firstChild.rect.y | 0) + insertHeight; - var Width6 = insertWidth; - var Height6 = (firstChild.rect.height | 0) - insertHeight; - if(Height6 == null) { - Height6 = 0; - } - if(Width6 == null) { - Width6 = 0; - } - if(Y6 == null) { - Y6 = 0; - } - if(X6 == null) { - X6 = 0; - } - var _this3 = flixel_math_FlxRect._pool.get(); - var X7 = X6; - var Y7 = Y6; - var Width7 = Width6; - var Height7 = Height6; - if(Height7 == null) { - Height7 = 0; - } - if(Width7 == null) { - Width7 = 0; - } - if(Y7 == null) { - Y7 = 0; - } - if(X7 == null) { - X7 = 0; - } - _this3.x = X7; - _this3.y = Y7; - _this3.width = Width7; - _this3.height = Height7; - var rect3 = _this3; - rect3._inPool = false; - secondGrandChild = new flixel_graphics_atlas_FlxNode(rect3,this); - } - } else { - var X8 = nodeToDivide.rect.x | 0; - var Y8 = nodeToDivide.rect.y | 0; - var Width8 = nodeToDivide.rect.width | 0; - var Height8 = insertHeight; - if(Height8 == null) { - Height8 = 0; - } - if(Width8 == null) { - Width8 = 0; - } - if(Y8 == null) { - Y8 = 0; - } - if(X8 == null) { - X8 = 0; - } - var _this4 = flixel_math_FlxRect._pool.get(); - var X9 = X8; - var Y9 = Y8; - var Width9 = Width8; - var Height9 = Height8; - if(Height9 == null) { - Height9 = 0; - } - if(Width9 == null) { - Width9 = 0; - } - if(Y9 == null) { - Y9 = 0; - } - if(X9 == null) { - X9 = 0; - } - _this4.x = X9; - _this4.y = Y9; - _this4.width = Width9; - _this4.height = Height9; - var rect4 = _this4; - rect4._inPool = false; - firstChild = new flixel_graphics_atlas_FlxNode(rect4,this); - if((nodeToDivide.rect.height | 0) - insertHeight > 0) { - var X10 = nodeToDivide.rect.x | 0; - var Y10 = (nodeToDivide.rect.y | 0) + insertHeight; - var Width10 = nodeToDivide.rect.width | 0; - var Height10 = (nodeToDivide.rect.height | 0) - insertHeight; - if(Height10 == null) { - Height10 = 0; - } - if(Width10 == null) { - Width10 = 0; - } - if(Y10 == null) { - Y10 = 0; - } - if(X10 == null) { - X10 = 0; - } - var _this5 = flixel_math_FlxRect._pool.get(); - var X11 = X10; - var Y11 = Y10; - var Width11 = Width10; - var Height11 = Height10; - if(Height11 == null) { - Height11 = 0; - } - if(Width11 == null) { - Width11 = 0; - } - if(Y11 == null) { - Y11 = 0; - } - if(X11 == null) { - X11 = 0; - } - _this5.x = X11; - _this5.y = Y11; - _this5.width = Width11; - _this5.height = Height11; - var rect5 = _this5; - rect5._inPool = false; - secondChild = new flixel_graphics_atlas_FlxNode(rect5,this); - } - var X12 = firstChild.rect.x | 0; - var Y12 = firstChild.rect.y | 0; - var Width12 = insertWidth; - var Height12 = insertHeight; - if(Height12 == null) { - Height12 = 0; - } - if(Width12 == null) { - Width12 = 0; - } - if(Y12 == null) { - Y12 = 0; - } - if(X12 == null) { - X12 = 0; - } - var _this6 = flixel_math_FlxRect._pool.get(); - var X13 = X12; - var Y13 = Y12; - var Width13 = Width12; - var Height13 = Height12; - if(Height13 == null) { - Height13 = 0; - } - if(Width13 == null) { - Width13 = 0; - } - if(Y13 == null) { - Y13 = 0; - } - if(X13 == null) { - X13 = 0; - } - _this6.x = X13; - _this6.y = Y13; - _this6.width = Width13; - _this6.height = Height13; - var rect6 = _this6; - rect6._inPool = false; - firstGrandChild = new flixel_graphics_atlas_FlxNode(rect6,this,firstGrandChildFilled,firstGrandChildKey,firstGrandChildRotated); - if((firstChild.rect.width | 0) - insertWidth > 0) { - var X14 = (firstChild.rect.x | 0) + insertWidth; - var Y14 = firstChild.rect.y | 0; - var Width14 = (firstChild.rect.width | 0) - insertWidth; - var Height14 = insertHeight; - if(Height14 == null) { - Height14 = 0; - } - if(Width14 == null) { - Width14 = 0; - } - if(Y14 == null) { - Y14 = 0; - } - if(X14 == null) { - X14 = 0; - } - var _this7 = flixel_math_FlxRect._pool.get(); - var X15 = X14; - var Y15 = Y14; - var Width15 = Width14; - var Height15 = Height14; - if(Height15 == null) { - Height15 = 0; - } - if(Width15 == null) { - Width15 = 0; - } - if(Y15 == null) { - Y15 = 0; - } - if(X15 == null) { - X15 = 0; - } - _this7.x = X15; - _this7.y = Y15; - _this7.width = Width15; - _this7.height = Height15; - var rect7 = _this7; - rect7._inPool = false; - secondGrandChild = new flixel_graphics_atlas_FlxNode(rect7,this); - } - } - firstChild.left = firstGrandChild; - firstChild.right = secondGrandChild; - nodeToDivide.left = firstChild; - nodeToDivide.right = secondChild; - if(firstGrandChildKey != null && firstGrandChildData != null) { - this.expandBitmapData(); - if(firstGrandChildRotated) { - flixel_graphics_atlas_FlxAtlas.matrix.identity(); - flixel_graphics_atlas_FlxAtlas.matrix.rotate(Math.PI / 2); - flixel_graphics_atlas_FlxAtlas.matrix.translate(firstGrandChildData.height + (firstGrandChild.rect.x | 0),firstGrandChild.rect.y | 0); - this.bitmapData.draw(firstGrandChildData,flixel_graphics_atlas_FlxAtlas.matrix); - } else { - flixel_graphics_atlas_FlxAtlas.point.setTo(firstGrandChild.rect.x | 0,firstGrandChild.rect.y | 0); - this.bitmapData.copyPixels(firstGrandChildData,firstGrandChildData.rect,flixel_graphics_atlas_FlxAtlas.point); - } - this.addNodeToAtlasFrames(firstGrandChild); - var _this8 = this.nodes; - if(__map_reserved[firstGrandChildKey] != null) { - _this8.setReserved(firstGrandChildKey,firstGrandChild); - } else { - _this8.h[firstGrandChildKey] = firstGrandChild; - } - } - return firstGrandChild; - } - return null; - } - ,insertFirstNodeInRoot: function(data,key) { - if(this.root.left == null) { - var insertWidth = data.width + this.border; - var insertHeight = data.height + this.border; - var rootWidth = insertWidth; - var rootHeight = insertHeight; - if(this.powerOfTwo) { - rootWidth = this.getNextPowerOfTwo(rootWidth); - rootHeight = this.getNextPowerOfTwo(rootHeight); - } - rootWidth = this.minWidth > rootWidth ? this.minWidth : rootWidth; - rootHeight = this.minHeight > rootHeight ? this.minHeight : rootHeight; - if(this.powerOfTwo) { - rootWidth = this.getNextPowerOfTwo(rootWidth); - rootHeight = this.getNextPowerOfTwo(rootHeight); - } - if(this.maxWidth > 0 && rootWidth > this.maxWidth || this.maxHeight > 0 && rootHeight > this.maxHeight) { - return null; - } - this.root.set_width(rootWidth); - this.root.set_height(rootHeight); - var horizontally = this.needToDivideHorizontally(this.root,insertWidth,insertHeight); - return this.divideNode(this.root,insertWidth,insertHeight,horizontally,data,key); - } - return null; - } - ,expand: function(data,key) { - if(this.root.right == null) { - var insertWidth = data.width + this.border; - var insertHeight = data.height + this.border; - var addRightWidth = (this.root.rect.width | 0) + insertWidth; - var addRightHeight = Math.max(this.root.rect.height | 0,insertHeight) | 0; - var addBottomWidth = Math.max(this.root.rect.width | 0,insertWidth) | 0; - var addBottomHeight = (this.root.rect.height | 0) + insertHeight; - var addRightWidthRotate = addRightWidth; - var addRightHeightRotate = addRightHeight; - var addBottomWidthRotate = addBottomWidth; - var addBottomHeightRotate = addBottomHeight; - if(this.allowRotation) { - addRightWidthRotate = (this.root.rect.width | 0) + insertHeight; - addRightHeightRotate = Math.max(this.root.rect.height | 0,insertWidth) | 0; - addBottomWidthRotate = Math.max(this.root.rect.width | 0,insertHeight) | 0; - addBottomHeightRotate = (this.root.rect.height | 0) + insertWidth; - } - if(this.powerOfTwo) { - addRightWidth = this.getNextPowerOfTwo(addRightWidth); - addRightWidthRotate = addRightWidth; - addRightHeight = this.getNextPowerOfTwo(addRightHeight); - addRightHeightRotate = addRightHeight; - addBottomWidth = this.getNextPowerOfTwo(addBottomWidth); - addBottomWidthRotate = addBottomWidth; - addBottomHeight = this.getNextPowerOfTwo(addBottomHeight); - addBottomHeightRotate = addBottomHeight; - if(this.allowRotation) { - addRightWidthRotate = this.getNextPowerOfTwo(addRightWidthRotate); - addRightHeightRotate = this.getNextPowerOfTwo(addRightHeightRotate); - addBottomWidthRotate = this.getNextPowerOfTwo(addBottomWidthRotate); - addBottomHeightRotate = this.getNextPowerOfTwo(addBottomHeightRotate); - } - } - var canExpandRight = true; - var canExpandBottom = true; - var canExpandRightRotate = this.allowRotation; - var canExpandBottomRotate = this.allowRotation; - if(this.maxWidth > 0 && addRightWidth > this.maxWidth || this.maxHeight > 0 && addRightHeight > this.maxHeight) { - canExpandRight = false; - } - if(this.maxWidth > 0 && addBottomWidth > this.maxWidth || this.maxHeight > 0 && addBottomHeight > this.maxHeight) { - canExpandBottom = false; - } - if(this.maxWidth > 0 && addRightWidthRotate > this.maxWidth || this.maxHeight > 0 && addRightHeightRotate > this.maxHeight) { - canExpandRightRotate = false; - } - if(this.maxWidth > 0 && addBottomWidthRotate > this.maxWidth || this.maxHeight > 0 && addBottomHeightRotate > this.maxHeight) { - canExpandBottomRotate = false; - } - if(!canExpandRight && !canExpandBottom && !canExpandRightRotate && !canExpandBottomRotate) { - return null; - } - var addRightArea = addRightWidth * addRightHeight; - var addBottomArea = addBottomWidth * addBottomHeight; - var addRightAreaRotate = addRightWidthRotate * addRightHeightRotate; - var addBottomAreaRotate = addBottomWidthRotate * addBottomHeightRotate; - var rotateRight = false; - var rotateBottom = false; - var rotateNode = false; - if(canExpandRight && canExpandRightRotate && addRightArea > addRightAreaRotate || !canExpandRight && canExpandRightRotate) { - addRightArea = addBottomAreaRotate; - addRightWidth = addRightWidthRotate; - addRightHeight = addRightHeightRotate; - canExpandRight = true; - rotateRight = true; - } - if(canExpandBottom && canExpandBottomRotate && addBottomArea > addBottomAreaRotate || !canExpandBottom && canExpandBottomRotate) { - addBottomArea = addBottomAreaRotate; - addBottomWidth = addBottomWidthRotate; - addBottomHeight = addBottomHeightRotate; - canExpandBottom = true; - rotateBottom = true; - } - if(!canExpandRight && canExpandBottom) { - addRightArea = addBottomArea + 1; - rotateNode = rotateRight; - } else if(canExpandRight && !canExpandBottom) { - addBottomArea = addRightArea + 1; - rotateNode = rotateBottom; - } - var dataNode = null; - var temp = this.root; - var insertNodeWidth = insertWidth; - var insertNodeHeight = insertHeight; - if(addBottomArea >= addRightArea) { - if(rotateRight) { - insertNodeWidth = insertHeight; - insertNodeHeight = insertWidth; - } - this.expandRoot((temp.rect.width | 0) + insertNodeWidth,Math.max(temp.rect.height | 0,insertNodeHeight),true); - dataNode = this.divideNode(this.root.right,insertNodeWidth,insertNodeHeight,true,data,key,rotateRight); - this.expandRoot(addRightWidth,addRightHeight,false,true); - } else { - if(rotateBottom) { - insertNodeWidth = insertHeight; - insertNodeHeight = insertWidth; - } - this.expandRoot(Math.max(temp.rect.width | 0,insertNodeWidth),(temp.rect.height | 0) + insertNodeHeight,false); - dataNode = this.divideNode(this.root.right,insertNodeWidth,insertNodeHeight,true,data,key,rotateBottom); - this.expandRoot(addBottomWidth,addBottomHeight,false,true); - } - return dataNode; - } - return null; - } - ,expandRoot: function(newWidth,newHeight,divideHorizontally,decideHowToDivide) { - if(decideHowToDivide == null) { - decideHowToDivide = false; - } - if(newWidth > (this.root.rect.width | 0) || newHeight > (this.root.rect.height | 0)) { - var temp = this.root; - var X = 0; - var Y = 0; - var Width = newWidth; - var Height = newHeight; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this.x = X1; - _this.y = Y1; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - this.root = new flixel_graphics_atlas_FlxNode(rect,this); - divideHorizontally = decideHowToDivide ? this.needToDivideHorizontally(this.root,temp.rect.width | 0,temp.rect.height | 0) : divideHorizontally; - this.divideNode(this.root,temp.rect.width | 0,temp.rect.height | 0,divideHorizontally); - this.root.left.left = temp; - } - } - ,expandBitmapData: function() { - if(this.bitmapData != null && this.bitmapData.width == (this.root.rect.width | 0) && this.bitmapData.height == (this.root.rect.height | 0)) { - return; - } - var newBitmapData = new openfl_display_BitmapData(this.root.rect.width | 0,this.root.rect.height | 0,true,0); - if(this.bitmapData != null) { - flixel_graphics_atlas_FlxAtlas.point.setTo(0,0); - newBitmapData.copyPixels(this.bitmapData,this.bitmapData.rect,flixel_graphics_atlas_FlxAtlas.point); - } - this.set_bitmapData(flixel_util_FlxDestroyUtil.dispose(this.bitmapData)); - this.set_bitmapData(newBitmapData); - } - ,getNextPowerOfTwo: function(number) { - var n = number | 0; - if(n > 0 && (n & n - 1) == 0) { - return n; - } - var result = 1; - while(result < n) result <<= 1; - return result; - } - ,addNodeWithSpacesAndBorders: function(Graphic,Key,tileSize,tileSpacing,tileBorder,region) { - var key = flixel_system_FlxAssets.resolveKey(Graphic,Key); - if(key == null) { - return null; - } - key = flixel_FlxG.bitmap.getKeyWithSpacesAndBorders(key,tileSize,tileSpacing,tileBorder,region); - if(this.hasNodeWithName(key)) { - var _this = this.nodes; - return (__map_reserved[key] != null ? _this.getReserved(key) : _this.h[key]).getTileFrames(tileSize,tileSpacing,tileBorder); - } - var data = flixel_system_FlxAssets.resolveBitmapData(Graphic); - if(data == null) { - return null; - } - var nodeData = flixel_util_FlxBitmapDataUtil.addSpacesAndBorders(data,tileSize,tileSpacing,tileBorder,region); - var node = this.addNode(nodeData,key); - if(node == null) { - return null; - } - if(tileBorder != null) { - var X = 2 * tileBorder.x; - var Y = 2 * tileBorder.y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _g = tileSize; - _g.set_x(_g.x + X); - var _g1 = tileSize; - _g1.set_y(_g1.y + Y); - } - return node.getTileFrames(tileSize,tileSpacing,tileBorder); - } - ,getAtlasFrames: function() { - var graph = this.get_graphic(); - var atlasFrames = graph.get_atlasFrames(); - if(graph.get_atlasFrames() == null) { - atlasFrames = new flixel_graphics_frames_FlxAtlasFrames(graph); - } - var _this = this.nodes; - var node = new haxe_ds__$StringMap_StringMapIterator(_this,_this.arrayKeys()); - while(node.hasNext()) { - var node1 = node.next(); - this.addNodeToAtlasFrames(node1); - } - return atlasFrames; - } - ,addNodeToAtlasFrames: function(node) { - if(this._graphic == null || this._graphic.get_atlasFrames() == null || node == null) { - return; - } - var atlasFrames = this._graphic.get_atlasFrames(); - var tmp; - if(node.filled) { - var key = node.key; - var _this = atlasFrames.framesHash; - tmp = !(__map_reserved[key] != null ? _this.existsReserved(key) : _this.h.hasOwnProperty(key)); - } else { - tmp = false; - } - if(tmp) { - var X = node.rect.x | 0; - var Y = node.rect.y | 0; - var Width = (node.rect.width | 0) - this.border; - var Height = (node.rect.height | 0) - this.border; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this1 = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this1.x = X1; - _this1.y = Y1; - _this1.width = Width1; - _this1.height = Height1; - var rect = _this1; - rect._inPool = false; - var frame = rect; - var sourceSize; - if(node.rotated) { - var X2 = (node.rect.height | 0) - this.border; - var Y2 = (node.rect.width | 0) - this.border; - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X2,Y2); - point._inPool = false; - sourceSize = point; - } else { - var X3 = (node.rect.width | 0) - this.border; - var Y3 = (node.rect.height | 0) - this.border; - if(Y3 == null) { - Y3 = 0; - } - if(X3 == null) { - X3 = 0; - } - var point1 = flixel_math_FlxPoint._pool.get().set(X3,Y3); - point1._inPool = false; - sourceSize = point1; - } - var X4 = 0; - var Y4 = 0; - if(Y4 == null) { - Y4 = 0; - } - if(X4 == null) { - X4 = 0; - } - var point2 = flixel_math_FlxPoint._pool.get().set(X4,Y4); - point2._inPool = false; - var offset = point2; - var angle = node.rotated ? -90 : 0; - atlasFrames.addAtlasFrame(frame,sourceSize,offset,node.key,angle); - } - } - ,hasNodeWithName: function(nodeName) { - var _this = this.nodes; - if(__map_reserved[nodeName] != null) { - return _this.existsReserved(nodeName); - } else { - return _this.h.hasOwnProperty(nodeName); - } - } - ,getNode: function(key) { - var _this = this.nodes; - if(__map_reserved[key] != null) { - return _this.getReserved(key); - } else { - return _this.h[key]; - } - } - ,addNodes: function(bitmaps,keys) { - var numKeys = keys.length; - var numBitmaps = bitmaps.length; - if(numBitmaps != numKeys) { - return null; - } - this._tempStorage = []; - var _g = 0; - var _g1 = numBitmaps; - while(_g < _g1) { - var i = _g++; - this._tempStorage.push({ bmd : bitmaps[i], keyStr : keys[i]}); - } - this.addFromAtlasObjects(this._tempStorage); - return this; - } - ,addFromAtlasObjects: function(objects) { - objects.sort($bind(this,this.bitmapSorter)); - var numBitmaps = objects.length; - var _g = 0; - var _g1 = numBitmaps; - while(_g < _g1) { - var i = _g++; - this.addNode(objects[i].bmd,objects[i].keyStr); - } - this._tempStorage = null; - } - ,bitmapSorter: function(obj1,obj2) { - if(this.allowRotation) { - var area1 = obj1.bmd.width * obj1.bmd.height; - var area2 = obj2.bmd.width * obj2.bmd.height; - return area2 - area1; - } - if(obj2.bmd.width == obj1.bmd.width) { - return obj2.bmd.height - obj1.bmd.height; - } - return obj2.bmd.width - obj1.bmd.width; - } - ,createQueue: function() { - this._tempStorage = []; - return this; - } - ,addToQueue: function(data,key) { - if(this._tempStorage == null) { - this._tempStorage = []; - } - this._tempStorage.push({ bmd : data, keyStr : key}); - return this; - } - ,generateFromQueue: function() { - if(this._tempStorage != null) { - this.addFromAtlasObjects(this._tempStorage); - } - return this; - } - ,onClear: function(_) { - if(!this.persist || this._graphic != null && this._graphic.get_useCount() <= 0) { - this.destroy(); - } - } - ,destroy: function() { - this._tempStorage = null; - this.deleteSubtree(this.root); - this.root = null; - flixel_FlxG.bitmap.removeByKey(this.name); - this.set_bitmapData(null); - this.nodes = null; - this._graphic = null; - flixel_FlxG.signals.preStateCreate.remove($bind(this,this.onClear)); - } - ,clear: function() { - this.deleteSubtree(this.root); - this.initRoot(); - flixel_FlxG.bitmap.removeByKey(this.name); - this.set_bitmapData(null); - this.nodes = new haxe_ds_StringMap(); - this._graphic = null; - } - ,getLibGdxData: function() { - var data = "\n"; - data += this.name + "\n"; - data += "format: RGBA8888\n"; - data += "filter: Linear,Linear\n"; - data += "repeat: none\n"; - var _this = this.nodes; - var node = new haxe_ds__$StringMap_StringMapIterator(_this,_this.arrayKeys()); - while(node.hasNext()) { - var node1 = node.next(); - data += node1.key + "\n"; - data += " rotate: " + (node1.rotated == null ? "null" : "" + node1.rotated) + "\n"; - data += " xy: " + (node1.rect.x | 0) + ", " + (node1.rect.y | 0) + "\n"; - if(this.allowRotation) { - data += "size: " + (node1.rect.height | 0) + ", " + (node1.rect.width | 0) + "\n"; - data += "orig: " + (node1.rect.height | 0) + ", " + (node1.rect.width | 0) + "\n"; - } else { - data += "size: " + (node1.rect.width | 0) + ", " + (node1.rect.height | 0) + "\n"; - data += "orig: " + (node1.rect.width | 0) + ", " + (node1.rect.height | 0) + "\n"; - } - data += " offset: 0, 0\n"; - data += " index: -1\n"; - } - return data; - } - ,deleteSubtree: function(node) { - if(node != null) { - if(node.left != null) { - this.deleteSubtree(node.left); - } - if(node.right != null) { - this.deleteSubtree(node.right); - } - node.key = null; - node.left = null; - node.right = null; - node.rect = null; - node.atlas = null; - } - } - ,findNodeToInsert: function(insertWidth,insertHeight) { - var stack = []; - var current = this.root; - var emptyNodes = []; - var canPlaceRight = false; - var canPlaceLeft = false; - var looping = true; - var result = null; - var minArea = this.maxWidth * this.maxHeight + 1; - var nodeArea; - while(looping) { - if(!current.filled && current.left == null && current.right == null && (current.rect.width >= insertWidth && current.rect.height >= insertHeight)) { - nodeArea = (current.rect.width | 0) * (current.rect.height | 0); - if(nodeArea < minArea) { - minArea = nodeArea; - result = current; - } - } - if(current.right != null) { - var _this = current.right; - canPlaceRight = _this.rect.width >= insertWidth && _this.rect.height >= insertHeight; - } else { - canPlaceRight = false; - } - if(current.left != null) { - var _this1 = current.left; - canPlaceLeft = _this1.rect.width >= insertWidth && _this1.rect.height >= insertHeight; - } else { - canPlaceLeft = false; - } - if(canPlaceRight && canPlaceLeft) { - stack.push(current.right); - current = current.left; - } else if(canPlaceLeft) { - current = current.left; - } else if(canPlaceRight) { - current = current.right; - } else if(stack.length > 0) { - current = stack.pop(); - } else { - looping = false; - } - } - return result; - } - ,set_bitmapData: function(value) { - if(value != null && this._graphic != null) { - this._graphic.set_bitmap(value); - } - return this.bitmapData = value; - } - ,get_graphic: function() { - if(this._graphic != null) { - return this._graphic; - } - this._graphic = flixel_FlxG.bitmap.add(this.bitmapData,false,this.name); - this._graphic.persist = this.persist; - return this._graphic; - } - ,set_persist: function(value) { - if(this._graphic != null) { - this._graphic.persist = value; - } - return this.persist = value; - } - ,set_minWidth: function(value) { - if(value <= this.maxWidth) { - this.minWidth = value; - if(value > this.get_width()) { - this.set_width(value); - } - } - return this.minWidth; - } - ,set_minHeight: function(value) { - if(value <= this.maxHeight) { - this.minHeight = value; - if(value > this.get_height()) { - this.set_height(value); - } - } - return this.minHeight; - } - ,get_width: function() { - if(this.root != null) { - return this.root.rect.width | 0; - } - return 0; - } - ,set_width: function(value) { - if(value > this.get_width()) { - if(this.powerOfTwo) { - value = this.getNextPowerOfTwo(value); - } - if(value <= this.maxWidth) { - if(this.root != null && (this.root.rect.width | 0) < value) { - this.expandRoot(value,this.root.rect.height | 0,this.needToDivideHorizontally(this.root,this.root.rect.width | 0,this.root.rect.height | 0)); - } - } - } - return value; - } - ,get_height: function() { - if(this.root != null) { - return this.root.rect.height | 0; - } - return 0; - } - ,set_height: function(value) { - if(value > this.get_height()) { - if(this.powerOfTwo) { - value = this.getNextPowerOfTwo(value); - } - if(value <= this.maxHeight) { - if(this.root != null && (this.root.rect.height | 0) < value) { - this.expandRoot(this.root.rect.width | 0,value,this.needToDivideHorizontally(this.root,this.root.rect.width | 0,this.root.rect.height | 0)); - } - } - } - return value; - } - ,set_maxWidth: function(value) { - if(value >= this.minWidth && (this.root == null || value >= this.get_width())) { - this.maxWidth = value; - } - return this.maxWidth; - } - ,set_maxHeight: function(value) { - if(value >= this.minHeight && (this.root == null || value >= this.get_height())) { - this.maxHeight = value; - } - return this.maxHeight; - } - ,set_powerOfTwo: function(value) { - if(value != this.powerOfTwo && value && this.root != null) { - var nextWidth = this.getNextPowerOfTwo(this.root.rect.width | 0); - var nextHeight = this.getNextPowerOfTwo(this.root.rect.height | 0); - if(nextWidth != (this.root.rect.width | 0) || nextHeight != (this.root.rect.height | 0)) { - if(this.maxWidth > 0 && nextWidth > this.maxWidth || this.maxHeight > 0 && nextHeight > this.maxHeight) { - return false; - } - var temp = this.root; - var X = 0; - var Y = 0; - var Width = nextWidth; - var Height = nextHeight; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this.x = X1; - _this.y = Y1; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - this.root = new flixel_graphics_atlas_FlxNode(rect,this); - if(temp.left != null) { - this.divideNode(this.root,temp.rect.width | 0,temp.rect.height | 0,this.needToDivideHorizontally(this.root,temp.rect.width | 0,temp.rect.height | 0)); - this.root.left.left = temp; - } - } - } - return this.powerOfTwo = value; - } - ,__class__: flixel_graphics_atlas_FlxAtlas - ,__properties__: {set_powerOfTwo:"set_powerOfTwo",set_maxHeight:"set_maxHeight",set_maxWidth:"set_maxWidth",set_minHeight:"set_minHeight",set_minWidth:"set_minWidth",set_height:"set_height",get_height:"get_height",set_width:"set_width",get_width:"get_width",set_persist:"set_persist",get_graphic:"get_graphic",set_bitmapData:"set_bitmapData"} -}; -var flixel_graphics_atlas_FlxNode = function(rect,atlas,filled,key,rotated) { - if(rotated == null) { - rotated = false; - } - if(key == null) { - key = ""; - } - if(filled == null) { - filled = false; - } - this.filled = filled; - this.left = null; - this.right = null; - this.rect = rect; - this.key = key; - this.atlas = atlas; - this.rotated = rotated; -}; -$hxClasses["flixel.graphics.atlas.FlxNode"] = flixel_graphics_atlas_FlxNode; -flixel_graphics_atlas_FlxNode.__name__ = "flixel.graphics.atlas.FlxNode"; -flixel_graphics_atlas_FlxNode.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_graphics_atlas_FlxNode.prototype = { - left: null - ,right: null - ,rect: null - ,key: null - ,filled: null - ,atlas: null - ,x: null - ,y: null - ,isEmpty: null - ,rotated: null - ,destroy: function() { - this.key = null; - this.left = null; - this.right = null; - this.rect = null; - this.atlas = null; - } - ,canPlace: function(width,height) { - if(this.rect.width >= width) { - return this.rect.height >= height; - } else { - return false; - } - } - ,getTileFrames: function(tileSize,tileSpacing,tileBorder) { - flixel_FlxG.bitmap.add(this.atlas.bitmapData,false,this.atlas.name); - var _this = this.atlas.getAtlasFrames(); - var name = this.key; - var _this1 = _this.framesHash; - var frame = __map_reserved[name] != null ? _this1.getReserved(name) : _this1.h[name]; - if(frame != null) { - var tileFrames = flixel_graphics_frames_FlxTileFrames.fromFrame(frame,tileSize,tileSpacing); - if(tileBorder != null) { - tileFrames = tileFrames.addBorder(tileBorder); - } - return tileFrames; - } - return null; - } - ,getImageFrame: function() { - flixel_FlxG.bitmap.add(this.atlas.bitmapData,false,this.atlas.name); - var _this = this.atlas.getAtlasFrames(); - var name = this.key; - var _this1 = _this.framesHash; - var frame = __map_reserved[name] != null ? _this1.getReserved(name) : _this1.h[name]; - if(frame != null) { - return flixel_graphics_frames_FlxImageFrame.fromFrame(frame); - } - return null; - } - ,get_isEmpty: function() { - if(!this.filled && this.left == null) { - return this.right == null; - } else { - return false; - } - } - ,get_x: function() { - return this.rect.x | 0; - } - ,get_y: function() { - return this.rect.y | 0; - } - ,get_width: function() { - return this.rect.width | 0; - } - ,set_width: function(value) { - this.rect.width = value; - return value; - } - ,get_height: function() { - return this.rect.height | 0; - } - ,set_height: function(value) { - this.rect.height = value; - return value; - } - ,__class__: flixel_graphics_atlas_FlxNode - ,__properties__: {get_isEmpty:"get_isEmpty",set_height:"set_height",get_height:"get_height",set_width:"set_width",get_width:"get_width",get_y:"get_y",get_x:"get_x"} -}; -var flixel_graphics_frames_FlxFramesCollection = function(parent,type,border) { - this.parent = parent; - this.type = type; - var tmp; - if(border == null) { - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - tmp = point; - } else { - tmp = border; - } - this.border = tmp; - this.frames = []; - this.framesHash = new haxe_ds_StringMap(); - if(parent != null) { - parent.addFrameCollection(this); - } -}; -$hxClasses["flixel.graphics.frames.FlxFramesCollection"] = flixel_graphics_frames_FlxFramesCollection; -flixel_graphics_frames_FlxFramesCollection.__name__ = "flixel.graphics.frames.FlxFramesCollection"; -flixel_graphics_frames_FlxFramesCollection.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_graphics_frames_FlxFramesCollection.prototype = { - frames: null - ,framesHash: null - ,parent: null - ,type: null - ,border: null - ,getByName: function(name) { - var _this = this.framesHash; - if(__map_reserved[name] != null) { - return _this.getReserved(name); - } else { - return _this.h[name]; - } - } - ,getByIndex: function(index) { - return this.frames[index]; - } - ,getIndexByName: function(name) { - var _g = 0; - var _g1 = this.frames.length; - while(_g < _g1) { - var i = _g++; - if(this.frames[i].name == name) { - return i; - } - } - return -1; - } - ,getFrameIndex: function(frame) { - return this.frames.indexOf(frame); - } - ,destroy: function() { - this.frames = flixel_util_FlxDestroyUtil.destroyArray(this.frames); - this.border = flixel_util_FlxDestroyUtil.put(this.border); - this.framesHash = null; - this.parent = null; - this.type = null; - } - ,addEmptyFrame: function(size) { - var frame = new flixel_graphics_frames_FlxFrame(this.parent); - frame.type = 2; - var _this = flixel_math_FlxRect._pool.get(); - var X = 0; - var Y = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - var rect = _this; - rect._inPool = false; - frame.set_frame(rect); - frame.sourceSize.set(size.width,size.height); - this.frames.push(frame); - return frame; - } - ,addSpriteSheetFrame: function(region) { - var frame = new flixel_graphics_frames_FlxFrame(this.parent); - frame.set_frame(this.checkFrame(region)); - frame.sourceSize.set(region.width,region.height); - frame.offset.set(0,0); - return this.pushFrame(frame); - } - ,addAtlasFrame: function(frame,sourceSize,offset,name,angle,flipX,flipY) { - if(flipY == null) { - flipY = false; - } - if(flipX == null) { - flipX = false; - } - if(angle == null) { - angle = 0; - } - var tmp; - if(name != null) { - var _this = this.framesHash; - tmp = __map_reserved[name] != null ? _this.existsReserved(name) : _this.h.hasOwnProperty(name); - } else { - tmp = false; - } - if(tmp) { - var _this1 = this.framesHash; - if(__map_reserved[name] != null) { - return _this1.getReserved(name); - } else { - return _this1.h[name]; - } - } - var texFrame = new flixel_graphics_frames_FlxFrame(this.parent,angle,flipX,flipY); - texFrame.name = name; - texFrame.sourceSize.set(sourceSize.x,sourceSize.y); - texFrame.offset.set(offset.x,offset.y); - texFrame.set_frame(this.checkFrame(frame,name)); - sourceSize = flixel_util_FlxDestroyUtil.put(sourceSize); - offset = flixel_util_FlxDestroyUtil.put(offset); - return this.pushFrame(texFrame); - } - ,checkFrame: function(frame,name) { - var Value = frame.x; - var Max = this.parent.width; - var lowerBound = Value < 0 ? 0 : Value; - var x = Max != null && lowerBound > Max ? Max : lowerBound; - var Value1 = frame.y; - var Max1 = this.parent.height; - var lowerBound1 = Value1 < 0 ? 0 : Value1; - var y = Max1 != null && lowerBound1 > Max1 ? Max1 : lowerBound1; - var Value2 = frame.x + frame.width; - var Max2 = this.parent.width; - var lowerBound2 = Value2 < 0 ? 0 : Value2; - var r = Max2 != null && lowerBound2 > Max2 ? Max2 : lowerBound2; - var Value3 = frame.y + frame.height; - var Max3 = this.parent.height; - var lowerBound3 = Value3 < 0 ? 0 : Value3; - var b = Max3 != null && lowerBound3 > Max3 ? Max3 : lowerBound3; - var X = x; - var Y = y; - var Width = r - x; - var Height = b - y; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - frame.x = X; - frame.y = Y; - frame.width = Width; - frame.height = Height; - var tmp = frame.width <= 0 || frame.height <= 0; - return frame; - } - ,pushFrame: function(frameObj) { - var name = frameObj.name; - var tmp; - if(name != null) { - var _this = this.framesHash; - tmp = __map_reserved[name] != null ? _this.existsReserved(name) : _this.h.hasOwnProperty(name); - } else { - tmp = false; - } - if(tmp) { - var _this1 = this.framesHash; - if(__map_reserved[name] != null) { - return _this1.getReserved(name); - } else { - return _this1.h[name]; - } - } - this.frames.push(frameObj); - frameObj.cacheFrameMatrix(); - if(name != null) { - var _this2 = this.framesHash; - if(__map_reserved[name] != null) { - _this2.setReserved(name,frameObj); - } else { - _this2.h[name] = frameObj; - } - } - return frameObj; - } - ,addBorder: function(border) { - throw new js__$Boot_HaxeError("To be overriden in subclasses"); - } - ,toString: function() { - var value = this.frames; - var _this = flixel_util_LabelValuePair._pool.get(); - _this.label = "frames"; - _this.value = value; - var value1 = this.type; - var _this1 = flixel_util_LabelValuePair._pool.get(); - _this1.label = "type"; - _this1.value = value1; - return flixel_util_FlxStringUtil.getDebugString([_this,_this1]); - } - ,get_numFrames: function() { - return this.frames.length; - } - ,__class__: flixel_graphics_frames_FlxFramesCollection - ,__properties__: {get_numFrames:"get_numFrames"} -}; -var flixel_graphics_frames_FlxAtlasFrames = function(parent,border) { - flixel_graphics_frames_FlxFramesCollection.call(this,parent,flixel_graphics_frames_FlxFrameCollectionType.ATLAS,border); -}; -$hxClasses["flixel.graphics.frames.FlxAtlasFrames"] = flixel_graphics_frames_FlxAtlasFrames; -flixel_graphics_frames_FlxAtlasFrames.__name__ = "flixel.graphics.frames.FlxAtlasFrames"; -flixel_graphics_frames_FlxAtlasFrames.fromTexturePackerJson = function(Source,Description) { - var graphic = flixel_FlxG.bitmap.add(Source,false); - if(graphic == null) { - return null; - } - var frames = flixel_graphics_frames_FlxAtlasFrames.findFrame(graphic); - if(frames != null) { - return frames; - } - if(graphic == null || Description == null) { - return null; - } - frames = new flixel_graphics_frames_FlxAtlasFrames(graphic); - var data; - if(typeof(Description) == "string") { - var json = Description; - if(openfl_utils_Assets.exists(json)) { - json = openfl_utils_Assets.getText(json); - } - data = JSON.parse(json); - } else { - data = Description; - } - if(((data.frames) instanceof Array)) { - var _g = 0; - var _g1 = Lambda.array(data.frames); - while(_g < _g1.length) { - var frame = _g1[_g]; - ++_g; - flixel_graphics_frames_FlxAtlasFrames.texturePackerHelper(frame.filename,frame,frames); - } - } else { - var _g2 = 0; - var _g11 = Reflect.fields(data.frames); - while(_g2 < _g11.length) { - var frameName = _g11[_g2]; - ++_g2; - flixel_graphics_frames_FlxAtlasFrames.texturePackerHelper(frameName,Reflect.field(data.frames,frameName),frames); - } - } - return frames; -}; -flixel_graphics_frames_FlxAtlasFrames.texturePackerHelper = function(FrameName,FrameData,Frames) { - var rotated = FrameData.rotated; - var name = FrameName; - var X = FrameData.sourceSize.w; - var Y = FrameData.sourceSize.h; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - var sourceSize = point; - var X1 = FrameData.spriteSourceSize.x; - var Y1 = FrameData.spriteSourceSize.y; - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var point1 = flixel_math_FlxPoint._pool.get().set(X1,Y1); - point1._inPool = false; - var offset = point1; - var angle = 0; - var frameRect = null; - if(rotated) { - var X2 = FrameData.frame.x; - var Y2 = FrameData.frame.y; - var Width = FrameData.frame.h; - var Height = FrameData.frame.w; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X3 = X2; - var Y3 = Y2; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y3 == null) { - Y3 = 0; - } - if(X3 == null) { - X3 = 0; - } - _this.x = X3; - _this.y = Y3; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - frameRect = rect; - angle = -90; - } else { - var X4 = FrameData.frame.x; - var Y4 = FrameData.frame.y; - var Width2 = FrameData.frame.w; - var Height2 = FrameData.frame.h; - if(Height2 == null) { - Height2 = 0; - } - if(Width2 == null) { - Width2 = 0; - } - if(Y4 == null) { - Y4 = 0; - } - if(X4 == null) { - X4 = 0; - } - var _this1 = flixel_math_FlxRect._pool.get(); - var X5 = X4; - var Y5 = Y4; - var Width3 = Width2; - var Height3 = Height2; - if(Height3 == null) { - Height3 = 0; - } - if(Width3 == null) { - Width3 = 0; - } - if(Y5 == null) { - Y5 = 0; - } - if(X5 == null) { - X5 = 0; - } - _this1.x = X5; - _this1.y = Y5; - _this1.width = Width3; - _this1.height = Height3; - var rect1 = _this1; - rect1._inPool = false; - frameRect = rect1; - } - Frames.addAtlasFrame(frameRect,sourceSize,offset,name,angle); -}; -flixel_graphics_frames_FlxAtlasFrames.fromLibGdx = function(Source,Description) { - var graphic = flixel_FlxG.bitmap.add(Source); - if(graphic == null) { - return null; - } - var frames = flixel_graphics_frames_FlxAtlasFrames.findFrame(graphic); - if(frames != null) { - return frames; - } - if(graphic == null || Description == null) { - return null; - } - frames = new flixel_graphics_frames_FlxAtlasFrames(graphic); - if(openfl_utils_Assets.exists(Description)) { - Description = openfl_utils_Assets.getText(Description); - } - var pack = StringTools.trim(Description); - var lines = pack.split("\n"); - var repeatLine = lines[3].indexOf("repeat:") > -1 ? 3 : 4; - lines.splice(0,repeatLine + 1); - var numElementsPerImage = 7; - var numImages = lines.length / numElementsPerImage | 0; - var size = []; - var _g = 0; - var _g1 = numImages; - while(_g < _g1) { - var i = _g++; - var curIndex = i * numElementsPerImage; - var name = lines[curIndex++]; - var rotated = lines[curIndex++].indexOf("true") >= 0; - var angle = 0; - var tempString = lines[curIndex++]; - var size1 = flixel_graphics_frames_FlxAtlasFrames.getDimensions(tempString,size); - var imageX = size1[0]; - var imageY = size1[1]; - tempString = lines[curIndex++]; - size1 = flixel_graphics_frames_FlxAtlasFrames.getDimensions(tempString,size1); - var imageWidth = size1[0]; - var imageHeight = size1[1]; - var rect = null; - if(rotated) { - var X = imageX; - var Y = imageY; - var Width = imageHeight; - var Height = imageWidth; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this.x = X1; - _this.y = Y1; - _this.width = Width1; - _this.height = Height1; - var rect1 = _this; - rect1._inPool = false; - rect = rect1; - angle = 90; - } else { - var X2 = imageX; - var Y2 = imageY; - var Width2 = imageWidth; - var Height2 = imageHeight; - if(Height2 == null) { - Height2 = 0; - } - if(Width2 == null) { - Width2 = 0; - } - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - var _this1 = flixel_math_FlxRect._pool.get(); - var X3 = X2; - var Y3 = Y2; - var Width3 = Width2; - var Height3 = Height2; - if(Height3 == null) { - Height3 = 0; - } - if(Width3 == null) { - Width3 = 0; - } - if(Y3 == null) { - Y3 = 0; - } - if(X3 == null) { - X3 = 0; - } - _this1.x = X3; - _this1.y = Y3; - _this1.width = Width3; - _this1.height = Height3; - var rect2 = _this1; - rect2._inPool = false; - rect = rect2; - } - tempString = lines[curIndex++]; - size1 = flixel_graphics_frames_FlxAtlasFrames.getDimensions(tempString,size1); - var X4 = size1[0]; - var Y4 = size1[1]; - if(Y4 == null) { - Y4 = 0; - } - if(X4 == null) { - X4 = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X4,Y4); - point._inPool = false; - var sourceSize = point; - tempString = lines[curIndex++]; - size1 = flixel_graphics_frames_FlxAtlasFrames.getDimensions(tempString,size1); - var X5 = size1[0]; - var Y5 = sourceSize.y - size1[1] - imageHeight; - if(Y5 == null) { - Y5 = 0; - } - if(X5 == null) { - X5 = 0; - } - var point1 = flixel_math_FlxPoint._pool.get().set(X5,Y5); - point1._inPool = false; - var offset = point1; - frames.addAtlasFrame(rect,sourceSize,offset,name,angle); - } - return frames; -}; -flixel_graphics_frames_FlxAtlasFrames.getDimensions = function(line,size) { - var colonPosition = line.indexOf(":"); - var comaPosition = line.indexOf(","); - size[0] = Std.parseInt(line.substring(colonPosition + 1,comaPosition)); - size[1] = Std.parseInt(line.substring(comaPosition + 1,line.length)); - return size; -}; -flixel_graphics_frames_FlxAtlasFrames.fromSparrow = function(Source,Description) { - var graphic = flixel_FlxG.bitmap.add(Source); - if(graphic == null) { - return null; - } - var frames = flixel_graphics_frames_FlxAtlasFrames.findFrame(graphic); - if(frames != null) { - return frames; - } - if(graphic == null || Description == null) { - return null; - } - frames = new flixel_graphics_frames_FlxAtlasFrames(graphic); - if(openfl_utils_Assets.exists(Description)) { - Description = openfl_utils_Assets.getText(Description); - } - var x = Xml.parse(Description).firstElement(); - if(x.nodeType != Xml.Document && x.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Invalid nodeType " + _$Xml_XmlType_$Impl_$.toString(x.nodeType)); - } - var this1 = x; - var data = this1; - var _g = 0; - var _g1 = haxe_xml__$Access_NodeListAccess_$Impl_$.resolve(data,"SubTexture"); - while(_g < _g1.length) { - var texture = _g1[_g]; - ++_g; - var name = haxe_xml__$Access_AttribAccess_$Impl_$.resolve(texture,"name"); - var trimmed = haxe_xml__$Access_HasAttribAccess_$Impl_$.resolve(texture,"frameX"); - var rotated = haxe_xml__$Access_HasAttribAccess_$Impl_$.resolve(texture,"rotated") && haxe_xml__$Access_AttribAccess_$Impl_$.resolve(texture,"rotated") == "true"; - var flipX = haxe_xml__$Access_HasAttribAccess_$Impl_$.resolve(texture,"flipX") && haxe_xml__$Access_AttribAccess_$Impl_$.resolve(texture,"flipX") == "true"; - var flipY = haxe_xml__$Access_HasAttribAccess_$Impl_$.resolve(texture,"flipY") && haxe_xml__$Access_AttribAccess_$Impl_$.resolve(texture,"flipY") == "true"; - var X = parseFloat(haxe_xml__$Access_AttribAccess_$Impl_$.resolve(texture,"x")); - var Y = parseFloat(haxe_xml__$Access_AttribAccess_$Impl_$.resolve(texture,"y")); - var Width = parseFloat(haxe_xml__$Access_AttribAccess_$Impl_$.resolve(texture,"width")); - var Height = parseFloat(haxe_xml__$Access_AttribAccess_$Impl_$.resolve(texture,"height")); - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this.x = X1; - _this.y = Y1; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - var rect1 = rect; - var size = trimmed ? new openfl_geom_Rectangle(Std.parseInt(haxe_xml__$Access_AttribAccess_$Impl_$.resolve(texture,"frameX")),Std.parseInt(haxe_xml__$Access_AttribAccess_$Impl_$.resolve(texture,"frameY")),Std.parseInt(haxe_xml__$Access_AttribAccess_$Impl_$.resolve(texture,"frameWidth")),Std.parseInt(haxe_xml__$Access_AttribAccess_$Impl_$.resolve(texture,"frameHeight"))) : new openfl_geom_Rectangle(0,0,rect1.width,rect1.height); - var angle = rotated ? -90 : 0; - var X2 = -size.get_left(); - var Y2 = -size.get_top(); - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X2,Y2); - point._inPool = false; - var offset = point; - var X3 = size.width; - var Y3 = size.height; - if(Y3 == null) { - Y3 = 0; - } - if(X3 == null) { - X3 = 0; - } - var point1 = flixel_math_FlxPoint._pool.get().set(X3,Y3); - point1._inPool = false; - var sourceSize = point1; - if(rotated && !trimmed) { - sourceSize.set(size.height,size.width); - } - frames.addAtlasFrame(rect1,sourceSize,offset,name,angle,flipX,flipY); - } - return frames; -}; -flixel_graphics_frames_FlxAtlasFrames.fromTexturePackerXml = function(Source,Description) { - var graphic = flixel_FlxG.bitmap.add(Source,false); - if(graphic == null) { - return null; - } - var frames = flixel_graphics_frames_FlxAtlasFrames.findFrame(graphic); - if(frames != null) { - return frames; - } - if(graphic == null || Description == null) { - return null; - } - frames = new flixel_graphics_frames_FlxAtlasFrames(graphic); - if(openfl_utils_Assets.exists(Description)) { - Description = openfl_utils_Assets.getText(Description); - } - var xml = Xml.parse(Description); - var sprite = xml.firstElement().elements(); - while(sprite.hasNext()) { - var sprite1 = sprite.next(); - var trimmed = sprite1.exists("oX") || sprite1.exists("oY"); - var rotated = sprite1.exists("r") && sprite1.get("r") == "y"; - var angle = rotated ? -90 : 0; - var name = sprite1.get("n"); - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - var offset = point; - var X1 = Std.parseInt(sprite1.get("x")); - var Y1 = Std.parseInt(sprite1.get("y")); - var Width = Std.parseInt(sprite1.get("w")); - var Height = Std.parseInt(sprite1.get("h")); - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X2 = X1; - var Y2 = Y1; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - _this.x = X2; - _this.y = Y2; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - var rect1 = rect; - var X3 = rect1.width; - var Y3 = rect1.height; - if(Y3 == null) { - Y3 = 0; - } - if(X3 == null) { - X3 = 0; - } - var point1 = flixel_math_FlxPoint._pool.get().set(X3,Y3); - point1._inPool = false; - var sourceSize = point1; - if(trimmed) { - offset.set(Std.parseInt(sprite1.get("oX")),Std.parseInt(sprite1.get("oY"))); - sourceSize.set(Std.parseInt(sprite1.get("oW")),Std.parseInt(sprite1.get("oH"))); - } - frames.addAtlasFrame(rect1,sourceSize,offset,name,angle); - } - return frames; -}; -flixel_graphics_frames_FlxAtlasFrames.fromSpriteSheetPacker = function(Source,Description) { - var graphic = flixel_FlxG.bitmap.add(Source); - if(graphic == null) { - return null; - } - var frames = flixel_graphics_frames_FlxAtlasFrames.findFrame(graphic); - if(frames != null) { - return frames; - } - if(graphic == null || Description == null) { - return null; - } - frames = new flixel_graphics_frames_FlxAtlasFrames(graphic); - if(openfl_utils_Assets.exists(Description)) { - Description = openfl_utils_Assets.getText(Description); - } - var pack = StringTools.trim(Description); - var lines = pack.split("\n"); - var _g = 0; - var _g1 = lines.length; - while(_g < _g1) { - var i = _g++; - var currImageData = lines[i].split("="); - var name = StringTools.trim(currImageData[0]); - var currImageRegion = StringTools.trim(currImageData[1]).split(" "); - var X = Std.parseInt(currImageRegion[0]); - var Y = Std.parseInt(currImageRegion[1]); - var Width = Std.parseInt(currImageRegion[2]); - var Height = Std.parseInt(currImageRegion[3]); - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this.x = X1; - _this.y = Y1; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - var rect1 = rect; - var X2 = rect1.width; - var Y2 = rect1.height; - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X2,Y2); - point._inPool = false; - var sourceSize = point; - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - var offset = point1; - frames.addAtlasFrame(rect1,sourceSize,offset,name,0); - } - return frames; -}; -flixel_graphics_frames_FlxAtlasFrames.findFrame = function(graphic,border) { - if(border == null) { - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - var point1 = point; - point1._weak = true; - border = point1; - } - var type = flixel_graphics_frames_FlxFrameCollectionType.ATLAS; - var collections = graphic.frameCollections.get(type); - if(collections == null) { - collections = []; - graphic.frameCollections.set(type,collections); - } - var atlasFrames = collections; - var _g = 0; - while(_g < atlasFrames.length) { - var atlas = atlasFrames[_g]; - ++_g; - var _this = atlas.border; - var result = Math.abs(_this.x - border.x) <= 0.0000001 && Math.abs(_this.y - border.y) <= 0.0000001; - if(border._weak) { - border.put(); - } - if(result) { - return atlas; - } - } - return null; -}; -flixel_graphics_frames_FlxAtlasFrames.__super__ = flixel_graphics_frames_FlxFramesCollection; -flixel_graphics_frames_FlxAtlasFrames.prototype = $extend(flixel_graphics_frames_FlxFramesCollection.prototype,{ - addBorder: function(border) { - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - var point1 = point; - point1._weak = true; - var resultBorder = point1.addPoint(this.border).addPoint(border); - var atlasFrames = flixel_graphics_frames_FlxAtlasFrames.findFrame(this.parent,resultBorder); - if(atlasFrames != null) { - return atlasFrames; - } - atlasFrames = new flixel_graphics_frames_FlxAtlasFrames(this.parent,resultBorder); - var _g = 0; - var _g1 = this.frames; - while(_g < _g1.length) { - var frame = _g1[_g]; - ++_g; - atlasFrames.pushFrame(frame.setBorderTo(border)); - } - return atlasFrames; - } - ,__class__: flixel_graphics_frames_FlxAtlasFrames -}); -var flixel_graphics_frames_FlxFrame = function(parent,angle,flipX,flipY) { - if(flipY == null) { - flipY = false; - } - if(flipX == null) { - flipX = false; - } - if(angle == null) { - angle = 0; - } - this.matrix = new flixel_math_FlxMatrix(); - this.rect = new openfl_geom_Rectangle(); - this.point2 = new openfl_geom_Point(); - this.point1 = new openfl_geom_Point(); - this.parent = parent; - this.angle = angle; - this.flipX = flipX; - this.flipY = flipY; - this.type = 0; - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - this.sourceSize = point; - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - this.offset = point1; - var this1 = new Array(6); - this.blitMatrix = this1; - if(flixel_FlxG.renderTile) { - var this2 = new Array(6); - this.tileMatrix = this2; - } -}; -$hxClasses["flixel.graphics.frames.FlxFrame"] = flixel_graphics_frames_FlxFrame; -flixel_graphics_frames_FlxFrame.__name__ = "flixel.graphics.frames.FlxFrame"; -flixel_graphics_frames_FlxFrame.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_graphics_frames_FlxFrame.sort = function(frames,prefixLength,postfixLength) { - var prefixLength1 = prefixLength; - var postfixLength1 = postfixLength; - haxe_ds_ArraySort.sort(frames,function(frame1,frame2) { - return flixel_graphics_frames_FlxFrame.sortByName(frame1,frame2,prefixLength1,postfixLength1); - }); -}; -flixel_graphics_frames_FlxFrame.sortByName = function(frame1,frame2,prefixLength,postfixLength) { - var name1 = frame1.name; - var name2 = frame2.name; - var num1 = Std.parseInt(name1.substring(prefixLength,name1.length - postfixLength)); - var num2 = Std.parseInt(name2.substring(prefixLength,name2.length - postfixLength)); - if(num1 == null) { - num1 = 0; - } - if(num2 == null) { - num2 = 0; - } - return num1 - num2; -}; -flixel_graphics_frames_FlxFrame.prototype = { - point1: null - ,point2: null - ,rect: null - ,matrix: null - ,name: null - ,frame: null - ,uv: null - ,parent: null - ,angle: null - ,flipX: null - ,flipY: null - ,sourceSize: null - ,offset: null - ,type: null - ,tileMatrix: null - ,blitMatrix: null - ,cacheFrameMatrix: function() { - var mat = this.matrix; - var blit = true; - if(blit == null) { - blit = true; - } - mat.identity(); - if(blit) { - mat.translate(-this.frame.x,-this.frame.y); - } - if(this.angle == 90) { - mat.setTo(-mat.b,mat.a,-mat.d,mat.c,-mat.ty,mat.tx); - mat.translate(this.frame.height,0); - } else if(this.angle == -90) { - mat.setTo(mat.b,-mat.a,mat.d,-mat.c,mat.ty,-mat.tx); - mat.translate(0,this.frame.width); - } - mat.translate(this.offset.x,this.offset.y); - this.blitMatrix[0] = this.matrix.a; - this.blitMatrix[1] = this.matrix.b; - this.blitMatrix[2] = this.matrix.c; - this.blitMatrix[3] = this.matrix.d; - this.blitMatrix[4] = this.matrix.tx; - this.blitMatrix[5] = this.matrix.ty; - if(flixel_FlxG.renderTile) { - var mat1 = this.matrix; - var blit1 = false; - if(blit1 == null) { - blit1 = true; - } - mat1.identity(); - if(blit1) { - mat1.translate(-this.frame.x,-this.frame.y); - } - if(this.angle == 90) { - mat1.setTo(-mat1.b,mat1.a,-mat1.d,mat1.c,-mat1.ty,mat1.tx); - mat1.translate(this.frame.height,0); - } else if(this.angle == -90) { - mat1.setTo(mat1.b,-mat1.a,mat1.d,-mat1.c,mat1.ty,-mat1.tx); - mat1.translate(0,this.frame.width); - } - mat1.translate(this.offset.x,this.offset.y); - this.tileMatrix[0] = this.matrix.a; - this.tileMatrix[1] = this.matrix.b; - this.tileMatrix[2] = this.matrix.c; - this.tileMatrix[3] = this.matrix.d; - this.tileMatrix[4] = this.matrix.tx; - this.tileMatrix[5] = this.matrix.ty; - } - } - ,prepareBlitMatrix: function(mat,blit) { - if(blit == null) { - blit = true; - } - mat.identity(); - if(blit) { - mat.translate(-this.frame.x,-this.frame.y); - } - if(this.angle == 90) { - mat.setTo(-mat.b,mat.a,-mat.d,mat.c,-mat.ty,mat.tx); - mat.translate(this.frame.height,0); - } else if(this.angle == -90) { - mat.setTo(mat.b,-mat.a,mat.d,-mat.c,mat.ty,-mat.tx); - mat.translate(0,this.frame.width); - } - mat.translate(this.offset.x,this.offset.y); - return mat; - } - ,rotateAndFlip: function(mat,rotation,flipX,flipY) { - if(flipY == null) { - flipY = false; - } - if(flipX == null) { - flipX = false; - } - if(rotation == null) { - rotation = 0; - } - var w = this.sourceSize.x | 0; - var h = this.sourceSize.y | 0; - if(rotation != 0) { - var t = w; - w = h; - h = t; - if(rotation == 90) { - mat.setTo(-mat.b,mat.a,-mat.d,mat.c,-mat.ty,mat.tx); - mat.translate(this.sourceSize.y,0); - } else if(rotation == -90 || rotation == -90) { - mat.setTo(mat.b,-mat.a,mat.d,-mat.c,mat.ty,-mat.tx); - mat.translate(0,this.sourceSize.x); - } - } - if(flipX) { - mat.scale(-1,1); - mat.translate(w,0); - } - if(flipY) { - mat.scale(1,-1); - mat.translate(0,h); - } - return mat; - } - ,prepareTransformedBlitMatrix: function(mat,rotation,flipX,flipY) { - if(flipY == null) { - flipY = false; - } - if(flipX == null) { - flipX = false; - } - if(rotation == null) { - rotation = 0; - } - mat.a = this.blitMatrix[0]; - mat.b = this.blitMatrix[1]; - mat.c = this.blitMatrix[2]; - mat.d = this.blitMatrix[3]; - mat.tx = this.blitMatrix[4]; - mat.ty = this.blitMatrix[5]; - mat = mat; - var rotation1 = rotation; - var flipX1 = flipX; - var flipY1 = flipY; - if(flipY1 == null) { - flipY1 = false; - } - if(flipX1 == null) { - flipX1 = false; - } - if(rotation1 == null) { - rotation1 = 0; - } - var w = this.sourceSize.x | 0; - var h = this.sourceSize.y | 0; - if(rotation1 != 0) { - var t = w; - w = h; - h = t; - if(rotation1 == 90) { - mat.setTo(-mat.b,mat.a,-mat.d,mat.c,-mat.ty,mat.tx); - mat.translate(this.sourceSize.y,0); - } else if(rotation1 == -90 || rotation1 == -90) { - mat.setTo(mat.b,-mat.a,mat.d,-mat.c,mat.ty,-mat.tx); - mat.translate(0,this.sourceSize.x); - } - } - if(flipX1) { - mat.scale(-1,1); - mat.translate(w,0); - } - if(flipY1) { - mat.scale(1,-1); - mat.translate(0,h); - } - return mat; - } - ,prepareMatrix: function(mat,rotation,flipX,flipY) { - if(flipY == null) { - flipY = false; - } - if(flipX == null) { - flipX = false; - } - if(rotation == null) { - rotation = 0; - } - if(flixel_FlxG.renderBlit) { - mat.identity(); - return mat; - } - mat.a = this.tileMatrix[0]; - mat.b = this.tileMatrix[1]; - mat.c = this.tileMatrix[2]; - mat.d = this.tileMatrix[3]; - mat.tx = this.tileMatrix[4]; - mat.ty = this.tileMatrix[5]; - var doFlipX = flipX != this.flipX; - var doFlipY = flipY != this.flipY; - if(rotation == 0 && !doFlipX && !doFlipY) { - return mat; - } - var rotation1 = rotation; - var flipX1 = doFlipX; - var flipY1 = doFlipY; - if(flipY1 == null) { - flipY1 = false; - } - if(flipX1 == null) { - flipX1 = false; - } - if(rotation1 == null) { - rotation1 = 0; - } - var w = this.sourceSize.x | 0; - var h = this.sourceSize.y | 0; - if(rotation1 != 0) { - var t = w; - w = h; - h = t; - if(rotation1 == 90) { - mat.setTo(-mat.b,mat.a,-mat.d,mat.c,-mat.ty,mat.tx); - mat.translate(this.sourceSize.y,0); - } else if(rotation1 == -90 || rotation1 == -90) { - mat.setTo(mat.b,-mat.a,mat.d,-mat.c,mat.ty,-mat.tx); - mat.translate(0,this.sourceSize.x); - } - } - if(flipX1) { - mat.scale(-1,1); - mat.translate(w,0); - } - if(flipY1) { - mat.scale(1,-1); - mat.translate(0,h); - } - return mat; - } - ,fillBlitMatrix: function(mat) { - mat.a = this.blitMatrix[0]; - mat.b = this.blitMatrix[1]; - mat.c = this.blitMatrix[2]; - mat.d = this.blitMatrix[3]; - mat.tx = this.blitMatrix[4]; - mat.ty = this.blitMatrix[5]; - return mat; - } - ,paint: function(bmd,point,mergeAlpha,disposeIfNotEqual) { - if(disposeIfNotEqual == null) { - disposeIfNotEqual = false; - } - if(mergeAlpha == null) { - mergeAlpha = false; - } - if(point == null) { - point = this.point1; - point.setTo(0,0); - } - var bmd1 = bmd; - var rotation = 0; - var mergeAlpha1 = mergeAlpha; - var disposeIfNotEqual1 = disposeIfNotEqual; - if(disposeIfNotEqual1 == null) { - disposeIfNotEqual1 = false; - } - if(mergeAlpha1 == null) { - mergeAlpha1 = false; - } - if(rotation == null) { - rotation = 0; - } - var w = this.sourceSize.x | 0; - var h = this.sourceSize.y | 0; - if(rotation != 0) { - var t = w; - w = h; - h = t; - } - if(bmd1 != null && disposeIfNotEqual1) { - bmd1 = flixel_util_FlxDestroyUtil.disposeIfNotEqual(bmd1,w,h); - } - if(bmd1 != null && !mergeAlpha1) { - this.rect.setTo(point.x,point.y,w,h); - bmd1.fillRect(this.rect,0); - } else if(bmd1 == null) { - bmd1 = new openfl_display_BitmapData(w,h,true,0); - } - bmd = bmd1; - if(this.type == 2) { - return bmd; - } - if(this.angle == 0) { - var _this = this.offset; - var FlashPoint = this.point2; - if(FlashPoint == null) { - FlashPoint = new openfl_geom_Point(); - } - FlashPoint.x = _this.x; - FlashPoint.y = _this.y; - this.point2.x += point.x; - this.point2.y += point.y; - var tmp = this.parent.bitmap; - var _this1 = this.frame; - var FlashRect = this.rect; - if(FlashRect == null) { - FlashRect = new openfl_geom_Rectangle(); - } - FlashRect.x = _this1.x; - FlashRect.y = _this1.y; - FlashRect.width = _this1.width; - FlashRect.height = _this1.height; - bmd.copyPixels(tmp,FlashRect,this.point2,null,null,mergeAlpha); - } else { - var mat = this.matrix; - mat.a = this.blitMatrix[0]; - mat.b = this.blitMatrix[1]; - mat.c = this.blitMatrix[2]; - mat.d = this.blitMatrix[3]; - mat.tx = this.blitMatrix[4]; - mat.ty = this.blitMatrix[5]; - this.matrix.translate(point.x,point.y); - var mat1 = this.matrix; - var X = this.frame.x; - var Y = this.frame.y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var X1 = X; - var Y1 = Y; - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var point1 = flixel_math_FlxPoint._pool.get().set(X1,Y1); - point1._inPool = false; - var point2 = point1; - point2._weak = true; - var p1 = point2; - var _this2 = this.frame; - var X2 = _this2.x + _this2.width; - var _this3 = this.frame; - var Y2 = _this3.y + _this3.height; - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - var X3 = X2; - var Y3 = Y2; - if(Y3 == null) { - Y3 = 0; - } - if(X3 == null) { - X3 = 0; - } - var point3 = flixel_math_FlxPoint._pool.get().set(X3,Y3); - point3._inPool = false; - var point4 = point3; - point4._weak = true; - var p2 = point4; - var x1 = p1.x * mat1.a + p1.y * mat1.c + mat1.tx; - var y1 = p1.x * mat1.b + p1.y * mat1.d + mat1.ty; - p1.set(x1,y1); - var x11 = p2.x * mat1.a + p2.y * mat1.c + mat1.tx; - var y11 = p2.x * mat1.b + p2.y * mat1.d + mat1.ty; - p2.set(x11,y11); - var _this4 = flixel_math_FlxRect._pool.get(); - var X4 = 0; - var Y4 = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y4 == null) { - Y4 = 0; - } - if(X4 == null) { - X4 = 0; - } - _this4.x = X4; - _this4.y = Y4; - _this4.width = Width; - _this4.height = Height; - var rect = _this4; - rect._inPool = false; - var _this5 = rect; - var minX = Math.min(p1.x,p2.x); - var minY = Math.min(p1.y,p2.y); - var maxX = Math.max(p1.x,p2.x); - var maxY = Math.max(p1.y,p2.y); - if(p1._weak) { - p1.put(); - } - if(p2._weak) { - p2.put(); - } - var X5 = minX; - var Y5 = minY; - var Width1 = maxX - minX; - var Height1 = maxY - minY; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y5 == null) { - Y5 = 0; - } - if(X5 == null) { - X5 = 0; - } - _this5.x = X5; - _this5.y = Y5; - _this5.width = Width1; - _this5.height = Height1; - var flxRect = _this5; - var FlashRect1 = this.rect; - if(FlashRect1 == null) { - FlashRect1 = new openfl_geom_Rectangle(); - } - FlashRect1.x = flxRect.x; - FlashRect1.y = flxRect.y; - FlashRect1.width = flxRect.width; - FlashRect1.height = flxRect.height; - if(!flxRect._inPool) { - flxRect._inPool = true; - flxRect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(flxRect); - } - var rect1 = this.rect; - bmd.draw(this.parent.bitmap,this.matrix,null,null,rect1); - } - return bmd; - } - ,paintRotatedAndFlipped: function(bmd,point,rotation,flipX,flipY,mergeAlpha,disposeIfNotEqual) { - if(disposeIfNotEqual == null) { - disposeIfNotEqual = false; - } - if(mergeAlpha == null) { - mergeAlpha = false; - } - if(flipY == null) { - flipY = false; - } - if(flipX == null) { - flipX = false; - } - if(rotation == null) { - rotation = 0; - } - if(this.type == 2 && rotation == 0) { - return this.paint(bmd,point,mergeAlpha,disposeIfNotEqual); - } - if(point == null) { - point = this.point2; - point.setTo(0,0); - } - var bmd1 = bmd; - var rotation1 = rotation; - var mergeAlpha1 = mergeAlpha; - var disposeIfNotEqual1 = disposeIfNotEqual; - if(disposeIfNotEqual1 == null) { - disposeIfNotEqual1 = false; - } - if(mergeAlpha1 == null) { - mergeAlpha1 = false; - } - if(rotation1 == null) { - rotation1 = 0; - } - var w = this.sourceSize.x | 0; - var h = this.sourceSize.y | 0; - if(rotation1 != 0) { - var t = w; - w = h; - h = t; - } - if(bmd1 != null && disposeIfNotEqual1) { - bmd1 = flixel_util_FlxDestroyUtil.disposeIfNotEqual(bmd1,w,h); - } - if(bmd1 != null && !mergeAlpha1) { - this.rect.setTo(point.x,point.y,w,h); - bmd1.fillRect(this.rect,0); - } else if(bmd1 == null) { - bmd1 = new openfl_display_BitmapData(w,h,true,0); - } - bmd = bmd1; - if(this.type == 2) { - return bmd; - } - var doFlipX = flipX != this.flipX; - var doFlipY = flipY != this.flipY; - this.prepareTransformedBlitMatrix(this.matrix,rotation,doFlipX,doFlipY); - this.matrix.translate(point.x,point.y); - var mat = this.matrix; - var X = this.frame.x; - var Y = this.frame.y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var X1 = X; - var Y1 = Y; - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var point1 = flixel_math_FlxPoint._pool.get().set(X1,Y1); - point1._inPool = false; - var point2 = point1; - point2._weak = true; - var p1 = point2; - var _this = this.frame; - var X2 = _this.x + _this.width; - var _this1 = this.frame; - var Y2 = _this1.y + _this1.height; - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - var X3 = X2; - var Y3 = Y2; - if(Y3 == null) { - Y3 = 0; - } - if(X3 == null) { - X3 = 0; - } - var point3 = flixel_math_FlxPoint._pool.get().set(X3,Y3); - point3._inPool = false; - var point4 = point3; - point4._weak = true; - var p2 = point4; - var x1 = p1.x * mat.a + p1.y * mat.c + mat.tx; - var y1 = p1.x * mat.b + p1.y * mat.d + mat.ty; - p1.set(x1,y1); - var x11 = p2.x * mat.a + p2.y * mat.c + mat.tx; - var y11 = p2.x * mat.b + p2.y * mat.d + mat.ty; - p2.set(x11,y11); - var _this2 = flixel_math_FlxRect._pool.get(); - var X4 = 0; - var Y4 = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y4 == null) { - Y4 = 0; - } - if(X4 == null) { - X4 = 0; - } - _this2.x = X4; - _this2.y = Y4; - _this2.width = Width; - _this2.height = Height; - var rect = _this2; - rect._inPool = false; - var _this3 = rect; - var minX = Math.min(p1.x,p2.x); - var minY = Math.min(p1.y,p2.y); - var maxX = Math.max(p1.x,p2.x); - var maxY = Math.max(p1.y,p2.y); - if(p1._weak) { - p1.put(); - } - if(p2._weak) { - p2.put(); - } - var X5 = minX; - var Y5 = minY; - var Width1 = maxX - minX; - var Height1 = maxY - minY; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y5 == null) { - Y5 = 0; - } - if(X5 == null) { - X5 = 0; - } - _this3.x = X5; - _this3.y = Y5; - _this3.width = Width1; - _this3.height = Height1; - var flxRect = _this3; - var FlashRect = this.rect; - if(FlashRect == null) { - FlashRect = new openfl_geom_Rectangle(); - } - FlashRect.x = flxRect.x; - FlashRect.y = flxRect.y; - FlashRect.width = flxRect.width; - FlashRect.height = flxRect.height; - if(!flxRect._inPool) { - flxRect._inPool = true; - flxRect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(flxRect); - } - var rect1 = this.rect; - bmd.draw(this.parent.bitmap,this.matrix,null,null,rect1); - return bmd; - } - ,checkInputBitmap: function(bmd,point,rotation,mergeAlpha,disposeIfNotEqual) { - if(disposeIfNotEqual == null) { - disposeIfNotEqual = false; - } - if(mergeAlpha == null) { - mergeAlpha = false; - } - if(rotation == null) { - rotation = 0; - } - var w = this.sourceSize.x | 0; - var h = this.sourceSize.y | 0; - if(rotation != 0) { - var t = w; - w = h; - h = t; - } - if(bmd != null && disposeIfNotEqual) { - bmd = flixel_util_FlxDestroyUtil.disposeIfNotEqual(bmd,w,h); - } - if(bmd != null && !mergeAlpha) { - this.rect.setTo(point.x,point.y,w,h); - bmd.fillRect(this.rect,0); - } else if(bmd == null) { - bmd = new openfl_display_BitmapData(w,h,true,0); - } - return bmd; - } - ,getDrawFrameRect: function(mat) { - var X = this.frame.x; - var Y = this.frame.y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var X1 = X; - var Y1 = Y; - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X1,Y1); - point._inPool = false; - var point1 = point; - point1._weak = true; - var p1 = point1; - var _this = this.frame; - var X2 = _this.x + _this.width; - var _this1 = this.frame; - var Y2 = _this1.y + _this1.height; - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - var X3 = X2; - var Y3 = Y2; - if(Y3 == null) { - Y3 = 0; - } - if(X3 == null) { - X3 = 0; - } - var point2 = flixel_math_FlxPoint._pool.get().set(X3,Y3); - point2._inPool = false; - var point3 = point2; - point3._weak = true; - var p2 = point3; - var x1 = p1.x * mat.a + p1.y * mat.c + mat.tx; - var y1 = p1.x * mat.b + p1.y * mat.d + mat.ty; - p1.set(x1,y1); - var x11 = p2.x * mat.a + p2.y * mat.c + mat.tx; - var y11 = p2.x * mat.b + p2.y * mat.d + mat.ty; - p2.set(x11,y11); - var _this2 = flixel_math_FlxRect._pool.get(); - var X4 = 0; - var Y4 = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y4 == null) { - Y4 = 0; - } - if(X4 == null) { - X4 = 0; - } - _this2.x = X4; - _this2.y = Y4; - _this2.width = Width; - _this2.height = Height; - var rect = _this2; - rect._inPool = false; - var _this3 = rect; - var minX = Math.min(p1.x,p2.x); - var minY = Math.min(p1.y,p2.y); - var maxX = Math.max(p1.x,p2.x); - var maxY = Math.max(p1.y,p2.y); - if(p1._weak) { - p1.put(); - } - if(p2._weak) { - p2.put(); - } - var X5 = minX; - var Y5 = minY; - var Width1 = maxX - minX; - var Height1 = maxY - minY; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y5 == null) { - Y5 = 0; - } - if(X5 == null) { - X5 = 0; - } - _this3.x = X5; - _this3.y = Y5; - _this3.width = Width1; - _this3.height = Height1; - var flxRect = _this3; - var FlashRect = this.rect; - if(FlashRect == null) { - FlashRect = new openfl_geom_Rectangle(); - } - FlashRect.x = flxRect.x; - FlashRect.y = flxRect.y; - FlashRect.width = flxRect.width; - FlashRect.height = flxRect.height; - if(!flxRect._inPool) { - flxRect._inPool = true; - flxRect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(flxRect); - } - return this.rect; - } - ,subFrameTo: function(rect,frameToFill) { - if(frameToFill == null) { - frameToFill = new flixel_graphics_frames_FlxFrame(this.parent,this.angle); - } else { - frameToFill.parent = this.parent; - frameToFill.angle = this.angle; - frameToFill.set_frame(flixel_util_FlxDestroyUtil.put(frameToFill.frame)); - } - frameToFill.sourceSize.set(rect.width,rect.height); - if(this.type == 2) { - frameToFill.type = 2; - frameToFill.offset.set(0,0); - return frameToFill; - } - var _this = flixel_math_FlxRect._pool.get(); - var X = 0; - var Y = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - var rect1 = _this; - rect1._inPool = false; - var _this1 = rect1; - _this1.width = this.frame.width; - _this1.height = this.frame.height; - var clippedRect = _this1; - if(this.angle != 0) { - clippedRect.width = this.frame.height; - clippedRect.height = this.frame.width; - } - var ox = Math.max(this.offset.x,0); - var oy = Math.max(this.offset.y,0); - rect.x += -ox; - rect.y += -oy; - var frameRect = clippedRect.intersection(rect); - clippedRect = flixel_util_FlxDestroyUtil.put(clippedRect); - rect.x += ox; - rect.y += oy; - if(frameRect.width == 0 || frameRect.height == 0) { - frameToFill.type = 2; - var X1 = 0; - var Y1 = 0; - var Width1 = 0; - var Height1 = 0; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - frameRect.x = X1; - frameRect.y = Y1; - frameRect.width = Width1; - frameRect.height = Height1; - frameToFill.set_frame(frameRect); - frameToFill.offset.set(0,0); - } else { - frameToFill.type = 0; - var _this2 = frameToFill.offset.set(frameRect.x,frameRect.y); - var X2 = rect.x; - var Y2 = rect.y; - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - var _g = _this2; - _g.set_x(_g.x - X2); - var _g1 = _this2; - _g1.set_y(_g1.y - Y2); - _this2.addPoint(this.offset); - var X3 = frameRect.x; - var Y3 = frameRect.y; - if(Y3 == null) { - Y3 = 0; - } - if(X3 == null) { - X3 = 0; - } - var X4 = X3; - var Y4 = Y3; - if(Y4 == null) { - Y4 = 0; - } - if(X4 == null) { - X4 = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X4,Y4); - point._inPool = false; - var point1 = point; - point1._weak = true; - var p1 = point1; - var X5 = frameRect.x + frameRect.width; - var Y5 = frameRect.y + frameRect.height; - if(Y5 == null) { - Y5 = 0; - } - if(X5 == null) { - X5 = 0; - } - var X6 = X5; - var Y6 = Y5; - if(Y6 == null) { - Y6 = 0; - } - if(X6 == null) { - X6 = 0; - } - var point2 = flixel_math_FlxPoint._pool.get().set(X6,Y6); - point2._inPool = false; - var point3 = point2; - point3._weak = true; - var p2 = point3; - this.matrix.identity(); - if(this.angle == -90) { - var _this3 = this.matrix; - _this3.setTo(-_this3.b,_this3.a,-_this3.d,_this3.c,-_this3.ty,_this3.tx); - this.matrix.translate(this.frame.width,0); - } else if(this.angle == 90) { - var _this4 = this.matrix; - _this4.setTo(_this4.b,-_this4.a,_this4.d,-_this4.c,_this4.ty,-_this4.tx); - this.matrix.translate(0,this.frame.height); - } - if(this.angle != 0) { - var matrix = this.matrix; - var x1 = p1.x * matrix.a + p1.y * matrix.c + matrix.tx; - var y1 = p1.x * matrix.b + p1.y * matrix.d + matrix.ty; - p1.set(x1,y1); - var matrix1 = this.matrix; - var x11 = p2.x * matrix1.a + p2.y * matrix1.c + matrix1.tx; - var y11 = p2.x * matrix1.b + p2.y * matrix1.d + matrix1.ty; - p2.set(x11,y11); - } - var minX = Math.min(p1.x,p2.x); - var minY = Math.min(p1.y,p2.y); - var maxX = Math.max(p1.x,p2.x); - var maxY = Math.max(p1.y,p2.y); - if(p1._weak) { - p1.put(); - } - if(p2._weak) { - p2.put(); - } - var X7 = minX; - var Y7 = minY; - var Width2 = maxX - minX; - var Height2 = maxY - minY; - if(Height2 == null) { - Height2 = 0; - } - if(Width2 == null) { - Width2 = 0; - } - if(Y7 == null) { - Y7 = 0; - } - if(X7 == null) { - X7 = 0; - } - frameRect.x = X7; - frameRect.y = Y7; - frameRect.width = Width2; - frameRect.height = Height2; - frameRect.x += this.frame.x; - frameRect.y += this.frame.y; - frameToFill.set_frame(frameRect); - frameToFill.cacheFrameMatrix(); - } - return frameToFill; - } - ,setBorderTo: function(border,frameToFill) { - var X = border.x; - var Y = border.y; - var Width = this.sourceSize.x - 2 * border.x; - var Height = this.sourceSize.y - 2 * border.y; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this.x = X1; - _this.y = Y1; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - var rect1 = rect; - frameToFill = this.subFrameTo(rect1,frameToFill); - frameToFill.name = this.name; - rect1 = flixel_util_FlxDestroyUtil.put(rect1); - return frameToFill; - } - ,clipTo: function(clip,clippedFrame) { - if(clippedFrame == null) { - clippedFrame = new flixel_graphics_frames_FlxFrame(this.parent,this.angle); - } else { - clippedFrame.parent = this.parent; - clippedFrame.angle = this.angle; - clippedFrame.set_frame(flixel_util_FlxDestroyUtil.put(clippedFrame.frame)); - } - var _this = clippedFrame.sourceSize; - var point = this.sourceSize; - _this.set_x(point.x); - _this.set_y(point.y); - if(point._weak) { - point.put(); - } - clippedFrame.name = this.name; - if(this.type == 2) { - clippedFrame.type = 2; - clippedFrame.offset.set(0,0); - return clippedFrame; - } - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this1 = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this1.x = X1; - _this1.y = Y1; - _this1.width = Width; - _this1.height = Height; - var rect = _this1; - rect._inPool = false; - var _this2 = rect; - _this2.width = this.frame.width; - _this2.height = this.frame.height; - var clippedRect = _this2; - if(this.angle != 0) { - clippedRect.width = this.frame.height; - clippedRect.height = this.frame.width; - } - clip.x += -this.offset.x; - clip.y += -this.offset.y; - var frameRect = clippedRect.intersection(clip); - clippedRect = flixel_util_FlxDestroyUtil.put(clippedRect); - if(frameRect.width == 0 || frameRect.height == 0) { - clippedFrame.type = 2; - var X2 = 0; - var Y2 = 0; - var Width1 = 0; - var Height1 = 0; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - frameRect.x = X2; - frameRect.y = Y2; - frameRect.width = Width1; - frameRect.height = Height1; - clippedFrame.set_frame(frameRect); - clippedFrame.offset.set(0,0); - } else { - clippedFrame.type = 0; - clippedFrame.offset.set(frameRect.x,frameRect.y).addPoint(this.offset); - var X3 = frameRect.x; - var Y3 = frameRect.y; - if(Y3 == null) { - Y3 = 0; - } - if(X3 == null) { - X3 = 0; - } - var X4 = X3; - var Y4 = Y3; - if(Y4 == null) { - Y4 = 0; - } - if(X4 == null) { - X4 = 0; - } - var point1 = flixel_math_FlxPoint._pool.get().set(X4,Y4); - point1._inPool = false; - var point2 = point1; - point2._weak = true; - var p1 = point2; - var X5 = frameRect.x + frameRect.width; - var Y5 = frameRect.y + frameRect.height; - if(Y5 == null) { - Y5 = 0; - } - if(X5 == null) { - X5 = 0; - } - var X6 = X5; - var Y6 = Y5; - if(Y6 == null) { - Y6 = 0; - } - if(X6 == null) { - X6 = 0; - } - var point3 = flixel_math_FlxPoint._pool.get().set(X6,Y6); - point3._inPool = false; - var point4 = point3; - point4._weak = true; - var p2 = point4; - this.matrix.identity(); - if(this.angle == -90) { - var _this3 = this.matrix; - _this3.setTo(-_this3.b,_this3.a,-_this3.d,_this3.c,-_this3.ty,_this3.tx); - this.matrix.translate(this.frame.width,0); - } else if(this.angle == 90) { - var _this4 = this.matrix; - _this4.setTo(_this4.b,-_this4.a,_this4.d,-_this4.c,_this4.ty,-_this4.tx); - this.matrix.translate(0,this.frame.height); - } - if(this.angle != 0) { - var matrix = this.matrix; - var x1 = p1.x * matrix.a + p1.y * matrix.c + matrix.tx; - var y1 = p1.x * matrix.b + p1.y * matrix.d + matrix.ty; - p1.set(x1,y1); - var matrix1 = this.matrix; - var x11 = p2.x * matrix1.a + p2.y * matrix1.c + matrix1.tx; - var y11 = p2.x * matrix1.b + p2.y * matrix1.d + matrix1.ty; - p2.set(x11,y11); - } - var minX = Math.min(p1.x,p2.x); - var minY = Math.min(p1.y,p2.y); - var maxX = Math.max(p1.x,p2.x); - var maxY = Math.max(p1.y,p2.y); - if(p1._weak) { - p1.put(); - } - if(p2._weak) { - p2.put(); - } - var X7 = minX; - var Y7 = minY; - var Width2 = maxX - minX; - var Height2 = maxY - minY; - if(Height2 == null) { - Height2 = 0; - } - if(Width2 == null) { - Width2 = 0; - } - if(Y7 == null) { - Y7 = 0; - } - if(X7 == null) { - X7 = 0; - } - frameRect.x = X7; - frameRect.y = Y7; - frameRect.width = Width2; - frameRect.height = Height2; - frameRect.x += this.frame.x; - frameRect.y += this.frame.y; - clippedFrame.set_frame(frameRect); - clippedFrame.cacheFrameMatrix(); - } - clip.x += this.offset.x; - clip.y += this.offset.y; - return clippedFrame; - } - ,copyTo: function(clone) { - if(clone == null) { - clone = new flixel_graphics_frames_FlxFrame(this.parent,this.angle); - } else { - clone.parent = this.parent; - clone.angle = this.angle; - clone.set_frame(flixel_util_FlxDestroyUtil.put(clone.frame)); - } - var _this = clone.offset; - var point = this.offset; - _this.set_x(point.x); - _this.set_y(point.y); - if(point._weak) { - point.put(); - } - clone.flipX = this.flipX; - clone.flipY = this.flipY; - var _this1 = clone.sourceSize; - var point1 = this.sourceSize; - _this1.set_x(point1.x); - _this1.set_y(point1.y); - if(point1._weak) { - point1.put(); - } - var _this2 = flixel_math_FlxRect._pool.get(); - var X = 0; - var Y = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this2.x = X; - _this2.y = Y; - _this2.width = Width; - _this2.height = Height; - var rect = _this2; - rect._inPool = false; - var _this3 = rect; - var Rect = this.frame; - _this3.x = Rect.x; - _this3.y = Rect.y; - _this3.width = Rect.width; - _this3.height = Rect.height; - if(Rect._weak) { - if(!Rect._inPool) { - Rect._inPool = true; - Rect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(Rect); - } - } - clone.set_frame(_this3); - clone.type = this.type; - clone.name = this.name; - clone.cacheFrameMatrix(); - return clone; - } - ,destroy: function() { - this.name = null; - this.parent = null; - this.sourceSize = flixel_util_FlxDestroyUtil.put(this.sourceSize); - this.offset = flixel_util_FlxDestroyUtil.put(this.offset); - this.set_frame(flixel_util_FlxDestroyUtil.put(this.frame)); - this.uv = flixel_util_FlxDestroyUtil.put(this.uv); - this.blitMatrix = null; - this.tileMatrix = null; - } - ,toString: function() { - var value = this.name; - var _this = flixel_util_LabelValuePair._pool.get(); - _this.label = "name"; - _this.value = value; - return flixel_util_FlxStringUtil.getDebugString([_this]); - } - ,set_frame: function(value) { - if(value != null) { - if(this.uv == null) { - var _this = flixel_math_FlxRect._pool.get(); - var X = 0; - var Y = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - var rect = _this; - rect._inPool = false; - this.uv = rect; - } - var _this1 = this.uv; - var X1 = value.x / this.parent.width; - var Y1 = value.y / this.parent.height; - var Width1 = (value.x + value.width) / this.parent.width; - var Height1 = (value.y + value.height) / this.parent.height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this1.x = X1; - _this1.y = Y1; - _this1.width = Width1; - _this1.height = Height1; - } - return this.frame = value; - } - ,__class__: flixel_graphics_frames_FlxFrame - ,__properties__: {set_frame:"set_frame"} -}; -var flixel_graphics_frames_FlxFrameCollectionType = $hxEnums["flixel.graphics.frames.FlxFrameCollectionType"] = { __ename__ : "flixel.graphics.frames.FlxFrameCollectionType", __constructs__ : ["IMAGE","TILES","ATLAS","FONT","USER","FILTER"] - ,IMAGE: {_hx_index:0,__enum__:"flixel.graphics.frames.FlxFrameCollectionType",toString:$estr} - ,TILES: {_hx_index:1,__enum__:"flixel.graphics.frames.FlxFrameCollectionType",toString:$estr} - ,ATLAS: {_hx_index:2,__enum__:"flixel.graphics.frames.FlxFrameCollectionType",toString:$estr} - ,FONT: {_hx_index:3,__enum__:"flixel.graphics.frames.FlxFrameCollectionType",toString:$estr} - ,USER: ($_=function(type) { return {_hx_index:4,type:type,__enum__:"flixel.graphics.frames.FlxFrameCollectionType",toString:$estr}; },$_.__params__ = ["type"],$_) - ,FILTER: {_hx_index:5,__enum__:"flixel.graphics.frames.FlxFrameCollectionType",toString:$estr} -}; -var flixel_graphics_frames_FlxImageFrame = function(parent,border) { - flixel_graphics_frames_FlxFramesCollection.call(this,parent,flixel_graphics_frames_FlxFrameCollectionType.IMAGE,border); -}; -$hxClasses["flixel.graphics.frames.FlxImageFrame"] = flixel_graphics_frames_FlxImageFrame; -flixel_graphics_frames_FlxImageFrame.__name__ = "flixel.graphics.frames.FlxImageFrame"; -flixel_graphics_frames_FlxImageFrame.fromEmptyFrame = function(graphic,frameRect) { - if(graphic == null || frameRect == null) { - return null; - } - var imageFrame = flixel_graphics_frames_FlxImageFrame.findEmptyFrame(graphic,frameRect); - if(imageFrame != null) { - return imageFrame; - } - imageFrame = new flixel_graphics_frames_FlxImageFrame(graphic); - imageFrame.addEmptyFrame(frameRect); - return imageFrame; -}; -flixel_graphics_frames_FlxImageFrame.fromFrame = function(source) { - var graphic = source.parent; - var rect = source.frame; - var imageFrame = flixel_graphics_frames_FlxImageFrame.findFrame(graphic,rect); - if(imageFrame != null) { - return imageFrame; - } - imageFrame = new flixel_graphics_frames_FlxImageFrame(graphic); - var _this = flixel_math_FlxRect._pool.get(); - var X = 0; - var Y = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - var rect1 = _this; - rect1._inPool = false; - var Rect = rect1; - Rect.x = rect.x; - Rect.y = rect.y; - Rect.width = rect.width; - Rect.height = rect.height; - if(Rect._weak) { - if(!Rect._inPool) { - Rect._inPool = true; - Rect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(Rect); - } - } - imageFrame.addSpriteSheetFrame(Rect); - return imageFrame; -}; -flixel_graphics_frames_FlxImageFrame.fromImage = function(source) { - return flixel_graphics_frames_FlxImageFrame.fromRectangle(source,null); -}; -flixel_graphics_frames_FlxImageFrame.fromGraphic = function(graphic,region) { - if(graphic == null) { - return null; - } - var checkRegion = region; - if(checkRegion == null) { - var X = 0; - var Y = 0; - var Width = graphic.width; - var Height = graphic.height; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X2 = X1; - var Y2 = Y1; - var Width2 = Width1; - var Height2 = Height1; - if(Height2 == null) { - Height2 = 0; - } - if(Width2 == null) { - Width2 = 0; - } - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - _this.x = X2; - _this.y = Y2; - _this.width = Width2; - _this.height = Height2; - var rect = _this; - rect._inPool = false; - var rect1 = rect; - rect1._weak = true; - checkRegion = rect1; - } - var imageFrame = flixel_graphics_frames_FlxImageFrame.findFrame(graphic,checkRegion); - if(imageFrame != null) { - return imageFrame; - } - imageFrame = new flixel_graphics_frames_FlxImageFrame(graphic); - if(region == null) { - var X3 = 0; - var Y3 = 0; - var Width3 = graphic.width; - var Height3 = graphic.height; - if(Height3 == null) { - Height3 = 0; - } - if(Width3 == null) { - Width3 = 0; - } - if(Y3 == null) { - Y3 = 0; - } - if(X3 == null) { - X3 = 0; - } - var _this1 = flixel_math_FlxRect._pool.get(); - var X4 = X3; - var Y4 = Y3; - var Width4 = Width3; - var Height4 = Height3; - if(Height4 == null) { - Height4 = 0; - } - if(Width4 == null) { - Width4 = 0; - } - if(Y4 == null) { - Y4 = 0; - } - if(X4 == null) { - X4 = 0; - } - _this1.x = X4; - _this1.y = Y4; - _this1.width = Width4; - _this1.height = Height4; - var rect2 = _this1; - rect2._inPool = false; - region = rect2; - } else { - if(region.width == 0) { - region.width = graphic.width - region.x; - } - if(region.height == 0) { - region.height = graphic.height - region.y; - } - } - imageFrame.addSpriteSheetFrame(region); - return imageFrame; -}; -flixel_graphics_frames_FlxImageFrame.fromRectangle = function(source,region) { - var graphic = flixel_FlxG.bitmap.add(source,false); - return flixel_graphics_frames_FlxImageFrame.fromGraphic(graphic,region); -}; -flixel_graphics_frames_FlxImageFrame.fromBitmapAddSpacesAndBorders = function(source,border,region) { - var graphic = flixel_FlxG.bitmap.add(source,false); - if(graphic == null) { - return null; - } - var key = flixel_FlxG.bitmap.getKeyWithSpacesAndBorders(graphic.key,null,null,border,region); - var _this = flixel_FlxG.bitmap._cache; - var result = __map_reserved[key] != null ? _this.getReserved(key) : _this.h[key]; - if(result == null) { - var bitmap = flixel_util_FlxBitmapDataUtil.addSpacesAndBorders(graphic.bitmap,null,null,border,region); - result = flixel_FlxG.bitmap.add(bitmap,false,key); - } - var imageFrame = flixel_graphics_frames_FlxImageFrame.fromGraphic(graphic); - return imageFrame.addBorder(border); -}; -flixel_graphics_frames_FlxImageFrame.fromFrameAddSpacesAndBorders = function(frame,border) { - var bitmap = frame.paint(); - return flixel_graphics_frames_FlxImageFrame.fromBitmapAddSpacesAndBorders(bitmap,border); -}; -flixel_graphics_frames_FlxImageFrame.findFrame = function(graphic,frameRect,frameBorder) { - if(frameBorder == null) { - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - var point1 = point; - point1._weak = true; - frameBorder = point1; - } - var type = flixel_graphics_frames_FlxFrameCollectionType.IMAGE; - var collections = graphic.frameCollections.get(type); - if(collections == null) { - collections = []; - graphic.frameCollections.set(type,collections); - } - var imageFrames = collections; - var _g = 0; - while(_g < imageFrames.length) { - var imageFrame = imageFrames[_g]; - ++_g; - var tmp; - var rect = imageFrame.get_frame().frame; - var result = Math.abs(frameRect.x - rect.x) <= 0.0000001 && Math.abs(frameRect.y - rect.y) <= 0.0000001 && Math.abs(frameRect.width - rect.width) <= 0.0000001 && Math.abs(frameRect.height - rect.height) <= 0.0000001; - if(rect._weak) { - if(!rect._inPool) { - rect._inPool = true; - rect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(rect); - } - } - if(result) { - var point2 = imageFrame.border; - var result1 = Math.abs(frameBorder.x - point2.x) <= 0.0000001 && Math.abs(frameBorder.y - point2.y) <= 0.0000001; - if(point2._weak) { - point2.put(); - } - tmp = result1; - } else { - tmp = false; - } - if(tmp && imageFrame.get_frame().type != 2) { - return imageFrame; - } - } - return null; -}; -flixel_graphics_frames_FlxImageFrame.findEmptyFrame = function(graphic,frameRect) { - var type = flixel_graphics_frames_FlxFrameCollectionType.IMAGE; - var collections = graphic.frameCollections.get(type); - if(collections == null) { - collections = []; - graphic.frameCollections.set(type,collections); - } - var imageFrames = collections; - var _g = 0; - while(_g < imageFrames.length) { - var imageFrame = imageFrames[_g]; - ++_g; - var frame = imageFrame.get_frame(); - if(frame.sourceSize.x == frameRect.width && frame.sourceSize.y == frameRect.height && frame.type == 2) { - return imageFrame; - } - } - return null; -}; -flixel_graphics_frames_FlxImageFrame.__super__ = flixel_graphics_frames_FlxFramesCollection; -flixel_graphics_frames_FlxImageFrame.prototype = $extend(flixel_graphics_frames_FlxFramesCollection.prototype,{ - frame: null - ,equals: function(rect,border) { - var rect1 = this.get_frame().frame; - var result = Math.abs(rect.x - rect1.x) <= 0.0000001 && Math.abs(rect.y - rect1.y) <= 0.0000001 && Math.abs(rect.width - rect1.width) <= 0.0000001 && Math.abs(rect.height - rect1.height) <= 0.0000001; - if(rect1._weak) { - if(!rect1._inPool) { - rect1._inPool = true; - rect1._weak = false; - flixel_math_FlxRect._pool.putUnsafe(rect1); - } - } - if(result) { - var point = this.border; - var result1 = Math.abs(border.x - point.x) <= 0.0000001 && Math.abs(border.y - point.y) <= 0.0000001; - if(point._weak) { - point.put(); - } - return result1; - } else { - return false; - } - } - ,addBorder: function(border) { - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - var point1 = point; - point1._weak = true; - var resultBorder = point1.addPoint(this.border).addPoint(border); - var imageFrame = flixel_graphics_frames_FlxImageFrame.findFrame(this.parent,this.get_frame().frame,resultBorder); - if(imageFrame != null) { - return imageFrame; - } - imageFrame = new flixel_graphics_frames_FlxImageFrame(this.parent,resultBorder); - imageFrame.pushFrame(this.get_frame().setBorderTo(border)); - return imageFrame; - } - ,destroy: function() { - flixel_graphics_frames_FlxFramesCollection.prototype.destroy.call(this); - this.frame = flixel_util_FlxDestroyUtil.destroy(this.get_frame()); - } - ,get_frame: function() { - return this.frames[0]; - } - ,__class__: flixel_graphics_frames_FlxImageFrame - ,__properties__: $extend(flixel_graphics_frames_FlxFramesCollection.prototype.__properties__,{get_frame:"get_frame"}) -}); -var flixel_graphics_frames_FlxTileFrames = function(parent,border) { - this.numCols = 0; - this.numRows = 0; - flixel_graphics_frames_FlxFramesCollection.call(this,parent,flixel_graphics_frames_FlxFrameCollectionType.TILES,border); -}; -$hxClasses["flixel.graphics.frames.FlxTileFrames"] = flixel_graphics_frames_FlxTileFrames; -flixel_graphics_frames_FlxTileFrames.__name__ = "flixel.graphics.frames.FlxTileFrames"; -flixel_graphics_frames_FlxTileFrames.fromBitmapAddSpacesAndBorders = function(source,tileSize,tileSpacing,tileBorder,region) { - var graphic = flixel_FlxG.bitmap.add(source,false); - if(graphic == null) { - return null; - } - var key = flixel_FlxG.bitmap.getKeyWithSpacesAndBorders(graphic.key,tileSize,tileSpacing,tileBorder,region); - var _this = flixel_FlxG.bitmap._cache; - var result = __map_reserved[key] != null ? _this.getReserved(key) : _this.h[key]; - if(result == null) { - var bitmap = flixel_util_FlxBitmapDataUtil.addSpacesAndBorders(graphic.bitmap,tileSize,tileSpacing,tileBorder,region); - result = flixel_FlxG.bitmap.add(bitmap,false,key); - } - var borderX = 0; - var borderY = 0; - if(tileBorder != null) { - borderX = tileBorder.x | 0; - borderY = tileBorder.y | 0; - } - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - var _this1 = point.addPoint(tileSize); - var X = 2 * borderX; - var Y = 2 * borderY; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _g = _this1; - _g.set_x(_g.x + X); - var _g1 = _this1; - _g1.set_y(_g1.y + Y); - var tileFrames = flixel_graphics_frames_FlxTileFrames.fromGraphic(result,_this1,null,tileSpacing); - if(tileBorder == null) { - return tileFrames; - } - return tileFrames.addBorder(tileBorder); -}; -flixel_graphics_frames_FlxTileFrames.fromFrameAddSpacesAndBorders = function(frame,tileSize,tileSpacing,tileBorder) { - var bitmap = frame.paint(); - return flixel_graphics_frames_FlxTileFrames.fromBitmapAddSpacesAndBorders(bitmap,tileSize,tileSpacing,tileBorder); -}; -flixel_graphics_frames_FlxTileFrames.fromFrame = function(frame,tileSize,tileSpacing) { - var graphic = frame.parent; - var tileFrames = flixel_graphics_frames_FlxTileFrames.findFrame(graphic,tileSize,null,frame,tileSpacing); - if(tileFrames != null) { - return tileFrames; - } - if(tileSpacing != null) { - tileSpacing = tileSpacing; - } else { - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - tileSpacing = point; - } - tileFrames = new flixel_graphics_frames_FlxTileFrames(graphic); - tileFrames.atlasFrame = frame; - tileFrames.region = frame.frame; - tileFrames.tileSize = tileSize; - tileFrames.tileSpacing = tileSpacing; - tileSpacing.set_x(Math.floor(tileSpacing.x)); - tileSpacing.set_y(Math.floor(tileSpacing.y)); - tileSize.set_x(Math.floor(tileSize.x)); - tileSize.set_y(Math.floor(tileSize.y)); - var spacedWidth = tileSize.x + tileSpacing.x; - var spacedHeight = tileSize.y + tileSpacing.y; - var numRows = tileSize.y == 0 ? 1 : (frame.sourceSize.y + tileSpacing.y) / spacedHeight | 0; - var numCols = tileSize.x == 0 ? 1 : (frame.sourceSize.x + tileSpacing.x) / spacedWidth | 0; - var X1 = 0; - var Y1 = 0; - var Width = tileSize.x; - var Height = tileSize.y; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X2 = X1; - var Y2 = Y1; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - _this.x = X2; - _this.y = Y2; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - var helperRect = rect; - var _g = 0; - var _g1 = numRows; - while(_g < _g1) { - var j = _g++; - var _g2 = 0; - var _g11 = numCols; - while(_g2 < _g11) { - var i = _g2++; - helperRect.x = spacedWidth * i; - helperRect.y = spacedHeight * j; - tileFrames.pushFrame(frame.subFrameTo(helperRect)); - } - } - helperRect = flixel_util_FlxDestroyUtil.put(helperRect); - tileFrames.numCols = numCols; - tileFrames.numRows = numRows; - return tileFrames; -}; -flixel_graphics_frames_FlxTileFrames.fromFrames = function(Frames) { - var firstFrame = Frames[0]; - var graphic = firstFrame.parent; - var _g = 0; - while(_g < Frames.length) { - var frame = Frames[_g]; - ++_g; - var tmp; - if(frame.parent == firstFrame.parent) { - var _this = frame.sourceSize; - var point = firstFrame.sourceSize; - var result = Math.abs(_this.x - point.x) <= 0.0000001 && Math.abs(_this.y - point.y) <= 0.0000001; - if(point._weak) { - point.put(); - } - tmp = !result; - } else { - tmp = true; - } - if(tmp) { - return null; - } - } - var tileFrames = new flixel_graphics_frames_FlxTileFrames(graphic); - tileFrames.region = null; - tileFrames.atlasFrame = null; - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - var _this1 = point1; - var point2 = firstFrame.sourceSize; - _this1.set_x(point2.x); - _this1.set_y(point2.y); - if(point2._weak) { - point2.put(); - } - tileFrames.tileSize = _this1; - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point3 = flixel_math_FlxPoint._pool.get().set(X,Y); - point3._inPool = false; - tileFrames.tileSpacing = point3; - tileFrames.numCols = Frames.length; - tileFrames.numRows = 1; - var _g1 = 0; - while(_g1 < Frames.length) { - var frame1 = Frames[_g1]; - ++_g1; - tileFrames.frames.push(frame1); - if(frame1.name != null) { - var key = frame1.name; - var _this2 = tileFrames.framesHash; - if(__map_reserved[key] != null) { - _this2.setReserved(key,frame1); - } else { - _this2.h[key] = frame1; - } - } - } - return tileFrames; -}; -flixel_graphics_frames_FlxTileFrames.fromAtlasByPrefix = function(Frames,Prefix) { - var framesToAdd = []; - var _g = 0; - var _g1 = Frames.frames; - while(_g < _g1.length) { - var frame = _g1[_g]; - ++_g; - if(StringTools.startsWith(frame.name,Prefix)) { - framesToAdd.push(frame); - } - } - if(framesToAdd.length > 0) { - var name = framesToAdd[0].name; - var postIndex = name.indexOf(".",Prefix.length); - var postFix = name.substring(postIndex == -1 ? name.length : postIndex,name.length); - flixel_graphics_frames_FlxFrame.sort(framesToAdd,Prefix.length,postFix.length); - return flixel_graphics_frames_FlxTileFrames.fromFrames(framesToAdd); - } - return null; -}; -flixel_graphics_frames_FlxTileFrames.fromGraphic = function(graphic,tileSize,region,tileSpacing) { - var tileFrames = flixel_graphics_frames_FlxTileFrames.findFrame(graphic,tileSize,region,null,tileSpacing); - if(tileFrames != null) { - return tileFrames; - } - if(region == null) { - var X = 0; - var Y = 0; - var Width = graphic.width; - var Height = graphic.height; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this.x = X1; - _this.y = Y1; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - region = rect; - } else { - if(region.width == 0) { - region.width = graphic.width - region.x; - } - if(region.height == 0) { - region.height = graphic.height - region.y; - } - } - if(tileSpacing != null) { - tileSpacing = tileSpacing; - } else { - var X2 = 0; - var Y2 = 0; - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X2,Y2); - point._inPool = false; - tileSpacing = point; - } - tileFrames = new flixel_graphics_frames_FlxTileFrames(graphic); - tileFrames.region = region; - tileFrames.atlasFrame = null; - tileFrames.tileSize = tileSize; - tileFrames.tileSpacing = tileSpacing; - region.x = Math.floor(region.x); - region.y = Math.floor(region.y); - region.width = Math.floor(region.width); - region.height = Math.floor(region.height); - tileSpacing.set_x(Math.floor(tileSpacing.x)); - tileSpacing.set_y(Math.floor(tileSpacing.y)); - tileSize.set_x(Math.floor(tileSize.x)); - tileSize.set_y(Math.floor(tileSize.y)); - var spacedWidth = tileSize.x + tileSpacing.x; - var spacedHeight = tileSize.y + tileSpacing.y; - var numRows = tileSize.y == 0 ? 1 : (region.height + tileSpacing.y) / spacedHeight | 0; - var numCols = tileSize.x == 0 ? 1 : (region.width + tileSpacing.x) / spacedWidth | 0; - var tileRect; - var _g = 0; - var _g1 = numRows; - while(_g < _g1) { - var j = _g++; - var _g2 = 0; - var _g11 = numCols; - while(_g2 < _g11) { - var i = _g2++; - var X3 = region.x + i * spacedWidth; - var Y3 = region.y + j * spacedHeight; - var Width2 = tileSize.x; - var Height2 = tileSize.y; - if(Height2 == null) { - Height2 = 0; - } - if(Width2 == null) { - Width2 = 0; - } - if(Y3 == null) { - Y3 = 0; - } - if(X3 == null) { - X3 = 0; - } - var _this1 = flixel_math_FlxRect._pool.get(); - var X4 = X3; - var Y4 = Y3; - var Width3 = Width2; - var Height3 = Height2; - if(Height3 == null) { - Height3 = 0; - } - if(Width3 == null) { - Width3 = 0; - } - if(Y4 == null) { - Y4 = 0; - } - if(X4 == null) { - X4 = 0; - } - _this1.x = X4; - _this1.y = Y4; - _this1.width = Width3; - _this1.height = Height3; - var rect1 = _this1; - rect1._inPool = false; - tileRect = rect1; - tileFrames.addSpriteSheetFrame(tileRect); - } - } - tileFrames.numCols = numCols; - tileFrames.numRows = numRows; - return tileFrames; -}; -flixel_graphics_frames_FlxTileFrames.fromRectangle = function(source,tileSize,region,tileSpacing) { - var graphic = flixel_FlxG.bitmap.add(source,false); - if(graphic == null) { - return null; - } - return flixel_graphics_frames_FlxTileFrames.fromGraphic(graphic,tileSize,region,tileSpacing); -}; -flixel_graphics_frames_FlxTileFrames.combineTileSets = function(bitmaps,tileSize,spacing,border) { - var framesCollections = []; - var _g = 0; - while(_g < bitmaps.length) { - var bitmap = bitmaps[_g]; - ++_g; - framesCollections.push(flixel_graphics_frames_FlxTileFrames.fromRectangle(bitmap,tileSize)); - } - return flixel_graphics_frames_FlxTileFrames.combineTileFrames(framesCollections,spacing,border); -}; -flixel_graphics_frames_FlxTileFrames.combineTileFrames = function(tileframes,spacing,border) { - var totalArea = 0; - var rows = 0; - var cols = 0; - var tileWidth = tileframes[0].frames[0].sourceSize.x | 0; - var tileHeight = tileframes[0].frames[0].sourceSize.y | 0; - var spaceX = 0; - var spaceY = 0; - if(spacing != null) { - spaceX = spacing.x | 0; - spaceY = spacing.y | 0; - } - var borderX = 0; - var borderY = 0; - if(border != null) { - borderX = border.x | 0; - borderY = border.y | 0; - } - var _g = 0; - while(_g < tileframes.length) { - var collection = tileframes[_g]; - ++_g; - cols = collection.numCols; - rows = collection.numRows; - totalArea += cols * (tileWidth + 2 * borderX) * rows * (tileHeight + 2 * borderY) | 0; - } - var side = Math.sqrt(totalArea); - cols = side / (tileWidth + 2 * borderX) | 0; - rows = Math.ceil(totalArea / (cols * (tileWidth + 2 * borderX) * (tileHeight + 2 * borderY))); - var width = (cols * (tileWidth + 2 * borderX) | 0) + (cols - 1) * spaceX; - var height = (rows * (tileHeight + 2 * borderY) | 0) + (rows - 1) * spaceY; - var combined = new openfl_display_BitmapData(width,height,true,0); - var graphic = flixel_FlxG.bitmap.add(combined); - var result = new flixel_graphics_frames_FlxTileFrames(graphic); - var destPoint = new openfl_geom_Point(borderX,borderY); - var X = 0; - var Y = 0; - var Width = width; - var Height = height; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this.x = X1; - _this.y = Y1; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - result.region = rect; - result.atlasFrame = null; - var X2 = tileWidth; - var Y2 = tileHeight; - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X2,Y2); - point._inPool = false; - result.tileSize = point; - var X3 = spaceX; - var Y3 = spaceY; - if(Y3 == null) { - Y3 = 0; - } - if(X3 == null) { - X3 = 0; - } - var point1 = flixel_math_FlxPoint._pool.get().set(X3,Y3); - point1._inPool = false; - result.tileSpacing = point1; - result.numCols = cols; - result.numRows = rows; - var _g1 = 0; - while(_g1 < tileframes.length) { - var collection1 = tileframes[_g1]; - ++_g1; - var _g11 = 0; - var _g2 = collection1.frames; - while(_g11 < _g2.length) { - var frame = _g2[_g11]; - ++_g11; - frame.paint(combined,destPoint,true); - var X4 = destPoint.x; - var Y4 = destPoint.y; - var Width2 = tileWidth; - var Height2 = tileHeight; - if(Height2 == null) { - Height2 = 0; - } - if(Width2 == null) { - Width2 = 0; - } - if(Y4 == null) { - Y4 = 0; - } - if(X4 == null) { - X4 = 0; - } - var _this1 = flixel_math_FlxRect._pool.get(); - var X5 = X4; - var Y5 = Y4; - var Width3 = Width2; - var Height3 = Height2; - if(Height3 == null) { - Height3 = 0; - } - if(Width3 == null) { - Width3 = 0; - } - if(Y5 == null) { - Y5 = 0; - } - if(X5 == null) { - X5 = 0; - } - _this1.x = X5; - _this1.y = Y5; - _this1.width = Width3; - _this1.height = Height3; - var rect1 = _this1; - rect1._inPool = false; - var X6 = tileWidth; - var Y6 = tileHeight; - if(Y6 == null) { - Y6 = 0; - } - if(X6 == null) { - X6 = 0; - } - var point2 = flixel_math_FlxPoint._pool.get().set(X6,Y6); - point2._inPool = false; - var X7 = 0; - var Y7 = 0; - if(Y7 == null) { - Y7 = 0; - } - if(X7 == null) { - X7 = 0; - } - var point3 = flixel_math_FlxPoint._pool.get().set(X7,Y7); - point3._inPool = false; - result.addAtlasFrame(rect1,point2,point3); - destPoint.x += tileWidth + 2 * borderX + spaceX; - if(destPoint.x >= combined.width) { - destPoint.x = borderX; - destPoint.y += tileHeight + 2 * borderY + spaceY; - } - } - } - flixel_util_FlxBitmapDataUtil.copyBorderPixels(combined,tileWidth,tileHeight,spaceX,spaceY,borderX,borderY,cols,rows); - return result; -}; -flixel_graphics_frames_FlxTileFrames.findFrame = function(graphic,tileSize,region,atlasFrame,tileSpacing,border) { - var type = flixel_graphics_frames_FlxFrameCollectionType.TILES; - var collections = graphic.frameCollections.get(type); - if(collections == null) { - collections = []; - graphic.frameCollections.set(type,collections); - } - var tileFrames = collections; - var _g = 0; - while(_g < tileFrames.length) { - var sheet = tileFrames[_g]; - ++_g; - if(sheet.equals(tileSize,region,null,tileSpacing,border)) { - return sheet; - } - } - return null; -}; -flixel_graphics_frames_FlxTileFrames.__super__ = flixel_graphics_frames_FlxFramesCollection; -flixel_graphics_frames_FlxTileFrames.prototype = $extend(flixel_graphics_frames_FlxFramesCollection.prototype,{ - atlasFrame: null - ,region: null - ,tileSize: null - ,tileSpacing: null - ,numRows: null - ,numCols: null - ,getByTilePosition: function(column,row) { - return this.frames[row * this.numCols + column]; - } - ,equals: function(tileSize,region,atlasFrame,tileSpacing,border) { - if(this.region == null && this.atlasFrame == null) { - return false; - } - if(atlasFrame != null) { - region = atlasFrame.frame; - } - if(region == null) { - var X = 0; - var Y = 0; - var Width = this.parent.width; - var Height = this.parent.height; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X2 = X1; - var Y2 = Y1; - var Width2 = Width1; - var Height2 = Height1; - if(Height2 == null) { - Height2 = 0; - } - if(Width2 == null) { - Width2 = 0; - } - if(Y2 == null) { - Y2 = 0; - } - if(X2 == null) { - X2 = 0; - } - _this.x = X2; - _this.y = Y2; - _this.width = Width2; - _this.height = Height2; - var rect = _this; - rect._inPool = false; - var rect1 = rect; - rect1._weak = true; - region = rect1; - } - if(tileSpacing == null) { - var X3 = 0; - var Y3 = 0; - if(Y3 == null) { - Y3 = 0; - } - if(X3 == null) { - X3 = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X3,Y3); - point._inPool = false; - var point1 = point; - point1._weak = true; - tileSpacing = point1; - } - if(border == null) { - var X4 = 0; - var Y4 = 0; - if(Y4 == null) { - Y4 = 0; - } - if(X4 == null) { - X4 = 0; - } - var point2 = flixel_math_FlxPoint._pool.get().set(X4,Y4); - point2._inPool = false; - var point3 = point2; - point3._weak = true; - border = point3; - } - var tmp; - var tmp1; - var tmp2; - if(this.atlasFrame == atlasFrame) { - var _this1 = this.region; - var result = Math.abs(_this1.x - region.x) <= 0.0000001 && Math.abs(_this1.y - region.y) <= 0.0000001 && Math.abs(_this1.width - region.width) <= 0.0000001 && Math.abs(_this1.height - region.height) <= 0.0000001; - if(region._weak) { - if(!region._inPool) { - region._inPool = true; - region._weak = false; - flixel_math_FlxRect._pool.putUnsafe(region); - } - } - tmp2 = result; - } else { - tmp2 = false; - } - if(tmp2) { - var _this2 = this.tileSize; - var result1 = Math.abs(_this2.x - tileSize.x) <= 0.0000001 && Math.abs(_this2.y - tileSize.y) <= 0.0000001; - if(tileSize._weak) { - tileSize.put(); - } - tmp1 = result1; - } else { - tmp1 = false; - } - if(tmp1) { - var _this3 = this.tileSpacing; - var result2 = Math.abs(_this3.x - tileSpacing.x) <= 0.0000001 && Math.abs(_this3.y - tileSpacing.y) <= 0.0000001; - if(tileSpacing._weak) { - tileSpacing.put(); - } - tmp = result2; - } else { - tmp = false; - } - if(tmp) { - var _this4 = this.border; - var result3 = Math.abs(_this4.x - border.x) <= 0.0000001 && Math.abs(_this4.y - border.y) <= 0.0000001; - if(border._weak) { - border.put(); - } - return result3; - } else { - return false; - } - } - ,addBorder: function(border) { - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - var resultBorder = point.addPoint(this.border).addPoint(border); - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - var _this = point1; - var point2 = this.tileSize; - _this.set_x(point2.x); - _this.set_y(point2.y); - if(point2._weak) { - point2.put(); - } - var _this1 = _this; - var X = 2 * border.x; - var Y = 2 * border.y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _g = _this1; - _g.set_x(_g.x - X); - var _g1 = _this1; - _g1.set_y(_g1.y - Y); - var resultSize = _this1; - var tileFrames = flixel_graphics_frames_FlxTileFrames.findFrame(this.parent,resultSize,this.region,this.atlasFrame,this.tileSpacing,resultBorder); - if(tileFrames != null) { - resultSize = flixel_util_FlxDestroyUtil.put(resultSize); - return tileFrames; - } - tileFrames = new flixel_graphics_frames_FlxTileFrames(this.parent,resultBorder); - var _this2 = flixel_math_FlxRect._pool.get(); - var X1 = 0; - var Y1 = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this2.x = X1; - _this2.y = Y1; - _this2.width = Width; - _this2.height = Height; - var rect = _this2; - rect._inPool = false; - var _this3 = rect; - var Rect = this.region; - _this3.x = Rect.x; - _this3.y = Rect.y; - _this3.width = Rect.width; - _this3.height = Rect.height; - if(Rect._weak) { - if(!Rect._inPool) { - Rect._inPool = true; - Rect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(Rect); - } - } - tileFrames.region = _this3; - tileFrames.atlasFrame = this.atlasFrame; - tileFrames.tileSize = resultSize; - var point3 = flixel_math_FlxPoint._pool.get().set(0,0); - point3._inPool = false; - var _this4 = point3; - var point4 = this.tileSpacing; - _this4.set_x(point4.x); - _this4.set_y(point4.y); - if(point4._weak) { - point4.put(); - } - tileFrames.tileSpacing = _this4; - var _g2 = 0; - var _g11 = this.frames; - while(_g2 < _g11.length) { - var frame = _g11[_g2]; - ++_g2; - tileFrames.pushFrame(frame.setBorderTo(border)); - } - return tileFrames; - } - ,destroy: function() { - flixel_graphics_frames_FlxFramesCollection.prototype.destroy.call(this); - this.atlasFrame = null; - this.region = flixel_util_FlxDestroyUtil.put(this.region); - this.tileSize = flixel_util_FlxDestroyUtil.put(this.tileSize); - this.tileSpacing = flixel_util_FlxDestroyUtil.put(this.tileSpacing); - } - ,__class__: flixel_graphics_frames_FlxTileFrames -}); -var flixel_graphics_tile_FlxDrawBaseItem = function() { - this.blending = 0; - this.hasColorOffsets = false; - this.colored = false; - this.antialiasing = false; -}; -$hxClasses["flixel.graphics.tile.FlxDrawBaseItem"] = flixel_graphics_tile_FlxDrawBaseItem; -flixel_graphics_tile_FlxDrawBaseItem.__name__ = "flixel.graphics.tile.FlxDrawBaseItem"; -flixel_graphics_tile_FlxDrawBaseItem.blendToInt = function(blend) { - return 0; -}; -flixel_graphics_tile_FlxDrawBaseItem.prototype = { - nextTyped: null - ,next: null - ,graphics: null - ,antialiasing: null - ,colored: null - ,hasColorOffsets: null - ,blending: null - ,blend: null - ,type: null - ,reset: function() { - this.graphics = null; - this.antialiasing = false; - this.nextTyped = null; - this.next = null; - } - ,dispose: function() { - this.graphics = null; - this.next = null; - this.type = null; - this.nextTyped = null; - } - ,render: function(camera) { - flixel_graphics_tile_FlxDrawBaseItem.drawCalls++; - } - ,addQuad: function(frame,matrix,transform) { - } - ,get_numVertices: function() { - return 0; - } - ,get_numTriangles: function() { - return 0; - } - ,__class__: flixel_graphics_tile_FlxDrawBaseItem - ,__properties__: {get_numTriangles:"get_numTriangles",get_numVertices:"get_numVertices"} -}; -var flixel_graphics_tile_FlxDrawItemType = $hxEnums["flixel.graphics.tile.FlxDrawItemType"] = { __ename__ : "flixel.graphics.tile.FlxDrawItemType", __constructs__ : ["TILES","TRIANGLES"] - ,TILES: {_hx_index:0,__enum__:"flixel.graphics.tile.FlxDrawItemType",toString:$estr} - ,TRIANGLES: {_hx_index:1,__enum__:"flixel.graphics.tile.FlxDrawItemType",toString:$estr} -}; -var flixel_graphics_tile_FlxDrawQuadsItem = function() { - flixel_graphics_tile_FlxDrawBaseItem.call(this); - this.type = flixel_graphics_tile_FlxDrawItemType.TILES; - this.rects = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - this.transforms = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - this.alphas = []; -}; -$hxClasses["flixel.graphics.tile.FlxDrawQuadsItem"] = flixel_graphics_tile_FlxDrawQuadsItem; -flixel_graphics_tile_FlxDrawQuadsItem.__name__ = "flixel.graphics.tile.FlxDrawQuadsItem"; -flixel_graphics_tile_FlxDrawQuadsItem.__super__ = flixel_graphics_tile_FlxDrawBaseItem; -flixel_graphics_tile_FlxDrawQuadsItem.prototype = $extend(flixel_graphics_tile_FlxDrawBaseItem.prototype,{ - shader: null - ,rects: null - ,transforms: null - ,alphas: null - ,colorMultipliers: null - ,colorOffsets: null - ,reset: function() { - flixel_graphics_tile_FlxDrawBaseItem.prototype.reset.call(this); - this.rects.set_length(0); - this.transforms.set_length(0); - this.alphas.splice(0,this.alphas.length); - if(this.colorMultipliers != null) { - this.colorMultipliers.splice(0,this.colorMultipliers.length); - } - if(this.colorOffsets != null) { - this.colorOffsets.splice(0,this.colorOffsets.length); - } - } - ,dispose: function() { - flixel_graphics_tile_FlxDrawBaseItem.prototype.dispose.call(this); - this.rects = null; - this.transforms = null; - this.alphas = null; - this.colorMultipliers = null; - this.colorOffsets = null; - } - ,addQuad: function(frame,matrix,transform) { - var rect = frame.frame; - this.rects.push(rect.x); - this.rects.push(rect.y); - this.rects.push(rect.width); - this.rects.push(rect.height); - this.transforms.push(matrix.a); - this.transforms.push(matrix.b); - this.transforms.push(matrix.c); - this.transforms.push(matrix.d); - this.transforms.push(matrix.tx); - this.transforms.push(matrix.ty); - this.alphas.push(transform != null ? transform.alphaMultiplier : 1.0); - this.alphas.push(transform != null ? transform.alphaMultiplier : 1.0); - this.alphas.push(transform != null ? transform.alphaMultiplier : 1.0); - this.alphas.push(transform != null ? transform.alphaMultiplier : 1.0); - if(this.colored || this.hasColorOffsets) { - if(this.colorMultipliers == null) { - this.colorMultipliers = []; - } - if(this.colorOffsets == null) { - this.colorOffsets = []; - } - var _g = 0; - while(_g < 4) { - var i = _g++; - if(transform != null) { - this.colorMultipliers.push(transform.redMultiplier); - this.colorMultipliers.push(transform.greenMultiplier); - this.colorMultipliers.push(transform.blueMultiplier); - this.colorOffsets.push(transform.redOffset); - this.colorOffsets.push(transform.greenOffset); - this.colorOffsets.push(transform.blueOffset); - this.colorOffsets.push(transform.alphaOffset); - } else { - this.colorMultipliers.push(1); - this.colorMultipliers.push(1); - this.colorMultipliers.push(1); - this.colorOffsets.push(0); - this.colorOffsets.push(0); - this.colorOffsets.push(0); - this.colorOffsets.push(0); - } - this.colorMultipliers.push(1); - } - } - } - ,render: function(camera) { - if(this.rects.get_length() == 0) { - return; - } - var shader = this.shader != null ? this.shader : this.graphics.shader; - shader.bitmap.input = this.graphics.bitmap; - shader.bitmap.filter = camera.antialiasing || this.antialiasing ? 4 : 5; - shader.alpha.value = this.alphas; - if(this.colored || this.hasColorOffsets) { - shader.colorMultiplier.value = this.colorMultipliers; - shader.colorOffset.value = this.colorOffsets; - } - var parameter = shader.hasTransform; - if(parameter.value == null) { - parameter.value = []; - } - parameter.value[0] = true; - var parameter1 = shader.hasColorTransform; - if(parameter1.value == null) { - parameter1.value = []; - } - parameter1.value[0] = this.colored || this.hasColorOffsets; - camera.canvas.get_graphics().overrideBlendMode(this.blend); - camera.canvas.get_graphics().beginShaderFill(shader); - camera.canvas.get_graphics().drawQuads(this.rects,null,this.transforms); - flixel_graphics_tile_FlxDrawBaseItem.prototype.render.call(this,camera); - } - ,setParameterValue: function(parameter,value) { - if(parameter.value == null) { - parameter.value = []; - } - parameter.value[0] = value; - } - ,__class__: flixel_graphics_tile_FlxDrawQuadsItem -}); -var flixel_graphics_tile_FlxDrawTrianglesItem = function() { - var _this = flixel_math_FlxRect._pool.get(); - _this.x = 0; - _this.y = 0; - _this.width = 0; - _this.height = 0; - _this._inPool = false; - this.bounds = _this; - this.colorsPosition = 0; - this.indicesPosition = 0; - this.verticesPosition = 0; - this.colors = openfl__$Vector_Vector_$Impl_$.toIntVector(null); - this.uvtData = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - this.indices = openfl__$Vector_Vector_$Impl_$.toIntVector(null); - this.vertices = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - flixel_graphics_tile_FlxDrawBaseItem.call(this); - this.type = flixel_graphics_tile_FlxDrawItemType.TRIANGLES; -}; -$hxClasses["flixel.graphics.tile.FlxDrawTrianglesItem"] = flixel_graphics_tile_FlxDrawTrianglesItem; -flixel_graphics_tile_FlxDrawTrianglesItem.__name__ = "flixel.graphics.tile.FlxDrawTrianglesItem"; -flixel_graphics_tile_FlxDrawTrianglesItem.inflateBounds = function(bounds,x,y) { - if(x < bounds.x) { - bounds.width += bounds.x - x; - bounds.x = x; - } - if(y < bounds.y) { - bounds.height += bounds.y - y; - bounds.y = y; - } - if(x > bounds.x + bounds.width) { - bounds.width = x - bounds.x; - } - if(y > bounds.y + bounds.height) { - bounds.height = y - bounds.y; - } - return bounds; -}; -flixel_graphics_tile_FlxDrawTrianglesItem.__super__ = flixel_graphics_tile_FlxDrawBaseItem; -flixel_graphics_tile_FlxDrawTrianglesItem.prototype = $extend(flixel_graphics_tile_FlxDrawBaseItem.prototype,{ - vertices: null - ,indices: null - ,uvtData: null - ,colors: null - ,verticesPosition: null - ,indicesPosition: null - ,colorsPosition: null - ,bounds: null - ,render: function(camera) { - if(!flixel_FlxG.renderTile) { - return; - } - if(this.get_numTriangles() <= 0) { - return; - } - var tmp = camera.antialiasing || this.antialiasing; - camera.canvas.get_graphics().beginBitmapFill(this.graphics.bitmap,null,true,tmp); - camera.canvas.get_graphics().drawTriangles(this.vertices,this.indices,this.uvtData,1); - camera.canvas.get_graphics().endFill(); - flixel_graphics_tile_FlxDrawBaseItem.prototype.render.call(this,camera); - } - ,reset: function() { - flixel_graphics_tile_FlxDrawBaseItem.prototype.reset.call(this); - this.vertices.splice(0,this.vertices.get_length()); - this.indices.splice(0,this.indices.get_length()); - this.uvtData.splice(0,this.uvtData.get_length()); - this.colors.splice(0,this.colors.get_length()); - this.verticesPosition = 0; - this.indicesPosition = 0; - this.colorsPosition = 0; - } - ,dispose: function() { - flixel_graphics_tile_FlxDrawBaseItem.prototype.dispose.call(this); - this.vertices = null; - this.indices = null; - this.uvtData = null; - this.colors = null; - this.bounds = null; - } - ,addTriangles: function(vertices,indices,uvtData,colors,position,cameraBounds) { - if(position == null) { - position = flixel_graphics_tile_FlxDrawTrianglesItem.point.set(); - } - if(cameraBounds == null) { - var _this = flixel_graphics_tile_FlxDrawTrianglesItem.rect; - var X = 0; - var Y = 0; - var Width = flixel_FlxG.width; - var Height = flixel_FlxG.height; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - cameraBounds = _this; - } - var verticesLength = vertices.get_length(); - var prevVerticesLength = this.vertices.get_length(); - var numberOfVertices = verticesLength / 2 | 0; - var prevIndicesLength = this.indices.get_length(); - var prevUVTDataLength = this.uvtData.get_length(); - var prevColorsLength = this.colors.get_length(); - var prevNumberOfVertices = this.get_numVertices(); - var tempX; - var tempY; - var i = 0; - var currentVertexPosition = prevVerticesLength; - while(i < verticesLength) { - tempX = position.x + vertices.get(i); - tempY = position.y + vertices.get(i + 1); - this.vertices.set(currentVertexPosition++,tempX); - this.vertices.set(currentVertexPosition++,tempY); - if(i == 0) { - var _this1 = this.bounds; - var X1 = tempX; - var Y1 = tempY; - var Width1 = 0; - var Height1 = 0; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this1.x = X1; - _this1.y = Y1; - _this1.width = Width1; - _this1.height = Height1; - } else { - var bounds = this.bounds; - if(tempX < bounds.x) { - bounds.width += bounds.x - tempX; - bounds.x = tempX; - } - if(tempY < bounds.y) { - bounds.height += bounds.y - tempY; - bounds.y = tempY; - } - if(tempX > bounds.x + bounds.width) { - bounds.width = tempX - bounds.x; - } - if(tempY > bounds.y + bounds.height) { - bounds.height = tempY - bounds.y; - } - } - i += 2; - } - var Rect = this.bounds; - var result = Rect.x + Rect.width > cameraBounds.x && Rect.x < cameraBounds.x + cameraBounds.width && Rect.y + Rect.height > cameraBounds.y && Rect.y < cameraBounds.y + cameraBounds.height; - if(Rect._weak) { - if(!Rect._inPool) { - Rect._inPool = true; - Rect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(Rect); - } - } - if(!result) { - this.vertices.splice(this.vertices.get_length() - verticesLength,verticesLength); - } else { - var uvtDataLength = uvtData.get_length(); - var _g = 0; - var _g1 = uvtDataLength; - while(_g < _g1) { - var i1 = _g++; - this.uvtData.set(prevUVTDataLength + i1,uvtData.get(i1)); - } - var indicesLength = indices.get_length(); - var _g2 = 0; - var _g3 = indicesLength; - while(_g2 < _g3) { - var i2 = _g2++; - this.indices.set(prevIndicesLength + i2,indices.get(i2) + prevNumberOfVertices); - } - if(this.colored) { - var _g4 = 0; - var _g5 = numberOfVertices; - while(_g4 < _g5) { - var i3 = _g4++; - this.colors.set(prevColorsLength + i3,colors.get(i3)); - } - this.colorsPosition += numberOfVertices; - } - this.verticesPosition += verticesLength; - this.indicesPosition += indicesLength; - } - if(position._weak) { - position.put(); - } - if(cameraBounds._weak) { - if(!cameraBounds._inPool) { - cameraBounds._inPool = true; - cameraBounds._weak = false; - flixel_math_FlxRect._pool.putUnsafe(cameraBounds); - } - } - } - ,addQuad: function(frame,matrix,transform) { - var prevVerticesPos = this.verticesPosition; - var prevIndicesPos = this.indicesPosition; - var prevColorsPos = this.colorsPosition; - var prevNumberOfVertices = this.get_numVertices(); - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - var point1 = point; - var x1 = point1.x * matrix.a + point1.y * matrix.c + matrix.tx; - var y1 = point1.x * matrix.b + point1.y * matrix.d + matrix.ty; - point1.set(x1,y1); - this.vertices.set(prevVerticesPos,point1.x); - this.vertices.set(prevVerticesPos + 1,point1.y); - this.uvtData.set(prevVerticesPos,frame.uv.x); - this.uvtData.set(prevVerticesPos + 1,frame.uv.y); - point1.set(frame.frame.width,0); - var x11 = point1.x * matrix.a + point1.y * matrix.c + matrix.tx; - var y11 = point1.x * matrix.b + point1.y * matrix.d + matrix.ty; - point1.set(x11,y11); - this.vertices.set(prevVerticesPos + 2,point1.x); - this.vertices.set(prevVerticesPos + 3,point1.y); - this.uvtData.set(prevVerticesPos + 2,frame.uv.width); - this.uvtData.set(prevVerticesPos + 3,frame.uv.y); - point1.set(frame.frame.width,frame.frame.height); - var x12 = point1.x * matrix.a + point1.y * matrix.c + matrix.tx; - var y12 = point1.x * matrix.b + point1.y * matrix.d + matrix.ty; - point1.set(x12,y12); - this.vertices.set(prevVerticesPos + 4,point1.x); - this.vertices.set(prevVerticesPos + 5,point1.y); - this.uvtData.set(prevVerticesPos + 4,frame.uv.width); - this.uvtData.set(prevVerticesPos + 5,frame.uv.height); - point1.set(0,frame.frame.height); - var x13 = point1.x * matrix.a + point1.y * matrix.c + matrix.tx; - var y13 = point1.x * matrix.b + point1.y * matrix.d + matrix.ty; - point1.set(x13,y13); - this.vertices.set(prevVerticesPos + 6,point1.x); - this.vertices.set(prevVerticesPos + 7,point1.y); - point1.put(); - this.uvtData.set(prevVerticesPos + 6,frame.uv.x); - this.uvtData.set(prevVerticesPos + 7,frame.uv.height); - this.indices.set(prevIndicesPos,prevNumberOfVertices); - this.indices.set(prevIndicesPos + 1,prevNumberOfVertices + 1); - this.indices.set(prevIndicesPos + 2,prevNumberOfVertices + 2); - this.indices.set(prevIndicesPos + 3,prevNumberOfVertices + 2); - this.indices.set(prevIndicesPos + 4,prevNumberOfVertices + 3); - this.indices.set(prevIndicesPos + 5,prevNumberOfVertices); - if(this.colored) { - var red = 1.0; - var green = 1.0; - var blue = 1.0; - var alpha = 1.0; - if(transform != null) { - red = transform.redMultiplier; - green = transform.greenMultiplier; - blue = transform.blueMultiplier; - alpha = transform.alphaMultiplier; - } - var Alpha = alpha; - if(Alpha == null) { - Alpha = 1; - } - var color = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 1; - } - var Value = Math.round(red * 255); - color &= -16711681; - color |= (Value > 255 ? 255 : Value < 0 ? 0 : Value) << 16; - var Value1 = Math.round(green * 255); - color &= -65281; - color |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 8; - var Value2 = Math.round(blue * 255); - color &= -256; - color |= Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2; - var Value3 = Math.round(Alpha1 * 255); - color &= 16777215; - color |= (Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3) << 24; - var color1 = color; - this.colors.set(prevColorsPos,color1); - this.colors.set(prevColorsPos + 1,color1); - this.colors.set(prevColorsPos + 2,color1); - this.colors.set(prevColorsPos + 3,color1); - this.colorsPosition += 4; - } - this.verticesPosition += 8; - this.indicesPosition += 6; - } - ,get_numVertices: function() { - return this.vertices.get_length() / 2 | 0; - } - ,get_numTriangles: function() { - return this.indices.get_length() / 3 | 0; - } - ,__class__: flixel_graphics_tile_FlxDrawTrianglesItem -}); -var openfl_display_Shader = function(code) { - this.byteCode = code; - this.precisionHint = 1; - this.__glSourceDirty = true; - this.__numPasses = 1; - this.__data = openfl_display__$ShaderData_ShaderData_$Impl_$._new(code); -}; -$hxClasses["openfl.display.Shader"] = openfl_display_Shader; -openfl_display_Shader.__name__ = "openfl.display.Shader"; -openfl_display_Shader.prototype = { - byteCode: null - ,glProgram: null - ,precisionHint: null - ,program: null - ,__alpha: null - ,__bitmap: null - ,__colorMultiplier: null - ,__colorOffset: null - ,__context: null - ,__data: null - ,__glFragmentSource: null - ,__glSourceDirty: null - ,__glVertexSource: null - ,__hasColorTransform: null - ,__inputBitmapData: null - ,__isGenerated: null - ,__matrix: null - ,__numPasses: null - ,__paramBool: null - ,__paramFloat: null - ,__paramInt: null - ,__position: null - ,__textureCoord: null - ,__texture: null - ,__textureSize: null - ,__clearUseArray: function() { - var _g = 0; - var _g1 = this.__paramBool; - while(_g < _g1.length) { - var parameter = _g1[_g]; - ++_g; - parameter.__useArray = false; - } - var _g2 = 0; - var _g3 = this.__paramFloat; - while(_g2 < _g3.length) { - var parameter1 = _g3[_g2]; - ++_g2; - parameter1.__useArray = false; - } - var _g4 = 0; - var _g5 = this.__paramInt; - while(_g4 < _g5.length) { - var parameter2 = _g5[_g4]; - ++_g4; - parameter2.__useArray = false; - } - } - ,__createGLShader: function(source,type) { - var gl = this.__context.gl; - var shader = gl.createShader(type); - gl.shaderSource(shader,source); - gl.compileShader(shader); - if(gl.getShaderParameter(shader,gl.COMPILE_STATUS) == 0) { - var message = type == gl.VERTEX_SHADER ? "Error compiling vertex shader" : "Error compiling fragment shader"; - message += "\n" + gl.getShaderInfoLog(shader); - message += "\n" + source; - lime_utils_Log.error(message,{ fileName : "openfl/display/Shader.hx", lineNumber : 328, className : "openfl.display.Shader", methodName : "__createGLShader"}); - } - return shader; - } - ,__createGLProgram: function(vertexSource,fragmentSource) { - var gl = this.__context.gl; - var vertexShader = this.__createGLShader(vertexSource,gl.VERTEX_SHADER); - var fragmentShader = this.__createGLShader(fragmentSource,gl.FRAGMENT_SHADER); - var program = gl.createProgram(); - var _g = 0; - var _g1 = this.__paramFloat; - while(_g < _g1.length) { - var param = _g1[_g]; - ++_g; - if(param.name.indexOf("Position") > -1 && StringTools.startsWith(param.name,"openfl_")) { - gl.bindAttribLocation(program,0,param.name); - break; - } - } - gl.attachShader(program,vertexShader); - gl.attachShader(program,fragmentShader); - gl.linkProgram(program); - if(gl.getProgramParameter(program,gl.LINK_STATUS) == 0) { - var message = "Unable to initialize the shader program"; - message += "\n" + gl.getProgramInfoLog(program); - lime_utils_Log.error(message,{ fileName : "openfl/display/Shader.hx", lineNumber : 361, className : "openfl.display.Shader", methodName : "__createGLProgram"}); - } - return program; - } - ,__disable: function() { - if(this.program != null) { - this.__disableGL(); - } - } - ,__disableGL: function() { - var gl = this.__context.gl; - var textureCount = 0; - var _g = 0; - var _g1 = this.__inputBitmapData; - while(_g < _g1.length) { - var input = _g1[_g]; - ++_g; - input.__disableGL(this.__context,textureCount); - ++textureCount; - } - var _g2 = 0; - var _g3 = this.__paramBool; - while(_g2 < _g3.length) { - var parameter = _g3[_g2]; - ++_g2; - parameter.__disableGL(this.__context); - } - var _g4 = 0; - var _g5 = this.__paramFloat; - while(_g4 < _g5.length) { - var parameter1 = _g5[_g4]; - ++_g4; - parameter1.__disableGL(this.__context); - } - var _g6 = 0; - var _g7 = this.__paramInt; - while(_g6 < _g7.length) { - var parameter2 = _g7[_g6]; - ++_g6; - parameter2.__disableGL(this.__context); - } - this.__context.__bindGLArrayBuffer(null); - if(this.__context.__context.type == "opengl") { - gl.disable(gl.TEXTURE_2D); - } - } - ,__enable: function() { - this.__init(); - if(this.program != null) { - this.__enableGL(); - } - } - ,__enableGL: function() { - var textureCount = 0; - var gl = this.__context.gl; - var _g = 0; - var _g1 = this.__inputBitmapData; - while(_g < _g1.length) { - var input = _g1[_g]; - ++_g; - gl.uniform1i(input.index,textureCount); - ++textureCount; - } - if(this.__context.__context.type == "opengl" && textureCount > 0) { - gl.enable(gl.TEXTURE_2D); - } - } - ,__init: function() { - if(this.__data == null) { - this.__data = openfl_display__$ShaderData_ShaderData_$Impl_$._new(null); - } - if(this.__glFragmentSource != null && this.__glVertexSource != null && (this.program == null || this.__glSourceDirty)) { - this.__initGL(); - } - } - ,__initGL: function() { - if(this.__glSourceDirty || this.__paramBool == null) { - this.__glSourceDirty = false; - this.program = null; - this.__inputBitmapData = []; - this.__paramBool = []; - this.__paramFloat = []; - this.__paramInt = []; - this.__processGLData(this.get_glVertexSource(),"attribute"); - this.__processGLData(this.get_glVertexSource(),"uniform"); - this.__processGLData(this.get_glFragmentSource(),"uniform"); - } - if(this.__context != null && this.program == null) { - var gl = this.__context.gl; - var prefix = "#ifdef GL_ES\n\t\t\t\t" + (this.precisionHint == 1 ? "#ifdef GL_FRAGMENT_PRECISION_HIGH\n\t\t\t\tprecision highp float;\n\t\t\t\t#else\n\t\t\t\tprecision mediump float;\n\t\t\t\t#endif" : "precision lowp float;") + "\n\t\t\t\t#endif\n\t\t\t\t"; - var vertex = prefix + this.get_glVertexSource(); - var fragment = prefix + this.get_glFragmentSource(); - var id = vertex + fragment; - var _this = this.__context.__programs; - if(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id)) { - var _this1 = this.__context.__programs; - this.program = __map_reserved[id] != null ? _this1.getReserved(id) : _this1.h[id]; - } else { - this.program = this.__context.createProgram(1); - this.program.__glProgram = this.__createGLProgram(vertex,fragment); - var value = this.program; - var _this2 = this.__context.__programs; - if(__map_reserved[id] != null) { - _this2.setReserved(id,value); - } else { - _this2.h[id] = value; - } - } - if(this.program != null) { - this.glProgram = this.program.__glProgram; - var _g = 0; - var _g1 = this.__inputBitmapData; - while(_g < _g1.length) { - var input = _g1[_g]; - ++_g; - if(input.__isUniform) { - input.index = gl.getUniformLocation(this.glProgram,input.name); - } else { - input.index = gl.getAttribLocation(this.glProgram,input.name); - } - } - var _g2 = 0; - var _g3 = this.__paramBool; - while(_g2 < _g3.length) { - var parameter = _g3[_g2]; - ++_g2; - if(parameter.__isUniform) { - parameter.index = gl.getUniformLocation(this.glProgram,parameter.name); - } else { - parameter.index = gl.getAttribLocation(this.glProgram,parameter.name); - } - } - var _g4 = 0; - var _g5 = this.__paramFloat; - while(_g4 < _g5.length) { - var parameter1 = _g5[_g4]; - ++_g4; - if(parameter1.__isUniform) { - parameter1.index = gl.getUniformLocation(this.glProgram,parameter1.name); - } else { - parameter1.index = gl.getAttribLocation(this.glProgram,parameter1.name); - } - } - var _g6 = 0; - var _g7 = this.__paramInt; - while(_g6 < _g7.length) { - var parameter2 = _g7[_g6]; - ++_g6; - if(parameter2.__isUniform) { - parameter2.index = gl.getUniformLocation(this.glProgram,parameter2.name); - } else { - parameter2.index = gl.getAttribLocation(this.glProgram,parameter2.name); - } - } - } - } - } - ,__processGLData: function(source,storageType) { - var lastMatch = 0; - var position; - var regex; - var name; - var type; - if(storageType == "uniform") { - regex = new EReg("uniform ([A-Za-z0-9]+) ([A-Za-z0-9_]+)",""); - } else { - regex = new EReg("attribute ([A-Za-z0-9]+) ([A-Za-z0-9_]+)",""); - } - while(regex.matchSub(source,lastMatch)) { - type = regex.matched(1); - name = regex.matched(2); - if(StringTools.startsWith(name,"gl_")) { - continue; - } - var isUniform = storageType == "uniform"; - if(StringTools.startsWith(type,"sampler")) { - var input = new openfl_display_ShaderInput(); - input.name = name; - input.__isUniform = isUniform; - this.__inputBitmapData.push(input); - switch(name) { - case "bitmap": - this.__bitmap = input; - break; - case "openfl_Texture": - this.__texture = input; - break; - default: - } - this.__data[name] = input; - if(this.__isGenerated) { - this[name] = input; - } - } else if(!Object.prototype.hasOwnProperty.call(this.__data,name) || Reflect.field(this.__data,name) == null) { - var parameterType; - switch(type) { - case "bool": - parameterType = 0; - break; - case "bvec2": - parameterType = 1; - break; - case "bvec3": - parameterType = 2; - break; - case "bvec4": - parameterType = 3; - break; - case "dvec2":case "vec2": - parameterType = 5; - break; - case "dvec3":case "vec3": - parameterType = 6; - break; - case "double":case "float": - parameterType = 4; - break; - case "ivec3":case "uvec3": - parameterType = 10; - break; - case "ivec4":case "uvec4": - parameterType = 11; - break; - case "mat2":case "mat2x2": - parameterType = 12; - break; - case "mat2x3": - parameterType = 13; - break; - case "mat2x4": - parameterType = 14; - break; - case "mat3x2": - parameterType = 15; - break; - case "mat3":case "mat3x3": - parameterType = 16; - break; - case "mat3x4": - parameterType = 17; - break; - case "mat4":case "mat4x4": - parameterType = 20; - break; - case "mat4x2": - parameterType = 18; - break; - case "mat4x3": - parameterType = 19; - break; - case "int":case "uint": - parameterType = 8; - break; - case "ivec2":case "uvec2": - parameterType = 9; - break; - case "dvec4":case "vec4": - parameterType = 7; - break; - default: - parameterType = null; - } - var length; - switch(parameterType) { - case 1:case 5:case 9: - length = 2; - break; - case 3:case 7:case 11:case 12: - length = 4; - break; - case 2:case 6:case 10: - length = 3; - break; - case 16: - length = 9; - break; - case 20: - length = 16; - break; - default: - length = 1; - } - var arrayLength; - switch(parameterType) { - case 12: - arrayLength = 2; - break; - case 16: - arrayLength = 3; - break; - case 20: - arrayLength = 4; - break; - default: - arrayLength = 1; - } - switch(parameterType) { - case 0:case 1:case 2:case 3: - var parameter = new openfl_display_ShaderParameter(); - parameter.set_name(name); - parameter.type = parameterType; - parameter.__arrayLength = arrayLength; - parameter.__isBool = true; - parameter.__isUniform = isUniform; - parameter.__length = length; - this.__paramBool.push(parameter); - if(name == "openfl_HasColorTransform") { - this.__hasColorTransform = parameter; - } - this.__data[name] = parameter; - if(this.__isGenerated) { - this[name] = parameter; - } - break; - case 8:case 9:case 10:case 11: - var parameter1 = new openfl_display_ShaderParameter(); - parameter1.set_name(name); - parameter1.type = parameterType; - parameter1.__arrayLength = arrayLength; - parameter1.__isInt = true; - parameter1.__isUniform = isUniform; - parameter1.__length = length; - this.__paramInt.push(parameter1); - this.__data[name] = parameter1; - if(this.__isGenerated) { - this[name] = parameter1; - } - break; - default: - var parameter2 = new openfl_display_ShaderParameter(); - parameter2.set_name(name); - parameter2.type = parameterType; - parameter2.__arrayLength = arrayLength; - if(arrayLength > 0) { - var elements = arrayLength * arrayLength; - var array = null; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this1; - if(elements != null) { - this1 = new Float32Array(elements); - } else if(array != null) { - this1 = new Float32Array(array); - } else if(vector != null) { - this1 = new Float32Array(vector.__array); - } else if(view != null) { - this1 = new Float32Array(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Float32Array(buffer,0); - } else { - this1 = new Float32Array(buffer,0,len); - } - } else { - this1 = null; - } - parameter2.__uniformMatrix = this1; - } - parameter2.__isFloat = true; - parameter2.__isUniform = isUniform; - parameter2.__length = length; - this.__paramFloat.push(parameter2); - if(StringTools.startsWith(name,"openfl_")) { - switch(name) { - case "openfl_Alpha": - this.__alpha = parameter2; - break; - case "openfl_ColorMultiplier": - this.__colorMultiplier = parameter2; - break; - case "openfl_ColorOffset": - this.__colorOffset = parameter2; - break; - case "openfl_Matrix": - this.__matrix = parameter2; - break; - case "openfl_Position": - this.__position = parameter2; - break; - case "openfl_TextureCoord": - this.__textureCoord = parameter2; - break; - case "openfl_TextureSize": - this.__textureSize = parameter2; - break; - default: - } - } - this.__data[name] = parameter2; - if(this.__isGenerated) { - this[name] = parameter2; - } - } - } - position = regex.matchedPos(); - lastMatch = position.pos + position.len; - } - } - ,__update: function() { - if(this.program != null) { - this.__updateGL(); - } - } - ,__updateFromBuffer: function(shaderBuffer,bufferOffset) { - if(this.program != null) { - this.__updateGLFromBuffer(shaderBuffer,bufferOffset); - } - } - ,__updateGL: function() { - var textureCount = 0; - var _g = 0; - var _g1 = this.__inputBitmapData; - while(_g < _g1.length) { - var input = _g1[_g]; - ++_g; - input.__updateGL(this.__context,textureCount); - ++textureCount; - } - var _g2 = 0; - var _g3 = this.__paramBool; - while(_g2 < _g3.length) { - var parameter = _g3[_g2]; - ++_g2; - parameter.__updateGL(this.__context); - } - var _g4 = 0; - var _g5 = this.__paramFloat; - while(_g4 < _g5.length) { - var parameter1 = _g5[_g4]; - ++_g4; - parameter1.__updateGL(this.__context); - } - var _g6 = 0; - var _g7 = this.__paramInt; - while(_g6 < _g7.length) { - var parameter2 = _g7[_g6]; - ++_g6; - parameter2.__updateGL(this.__context); - } - } - ,__updateGLFromBuffer: function(shaderBuffer,bufferOffset) { - var textureCount = 0; - var input; - var inputData; - var inputFilter; - var inputMipFilter; - var inputWrap; - var _g = 0; - var _g1 = shaderBuffer.inputCount; - while(_g < _g1) { - var i = _g++; - input = shaderBuffer.inputRefs[i]; - inputData = shaderBuffer.inputs[i]; - inputFilter = shaderBuffer.inputFilter[i]; - inputMipFilter = shaderBuffer.inputMipFilter[i]; - inputWrap = shaderBuffer.inputWrap[i]; - if(inputData != null) { - input.__updateGL(this.__context,textureCount,inputData,inputFilter,inputMipFilter,inputWrap); - ++textureCount; - } - } - var gl = this.__context.gl; - if(shaderBuffer.paramDataLength > 0) { - if(shaderBuffer.paramDataBuffer == null) { - shaderBuffer.paramDataBuffer = gl.createBuffer(); - } - this.__context.__bindGLArrayBuffer(shaderBuffer.paramDataBuffer); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.bufferData(gl,gl.ARRAY_BUFFER,shaderBuffer.paramData,gl.DYNAMIC_DRAW); - } else { - this.__context.__bindGLArrayBuffer(null); - } - var boolIndex = 0; - var floatIndex = 0; - var intIndex = 0; - var boolCount = shaderBuffer.paramBoolCount; - var floatCount = shaderBuffer.paramFloatCount; - var paramData = shaderBuffer.paramData; - var boolRef; - var floatRef; - var intRef; - var hasOverride; - var overrideBoolValue = null; - var overrideFloatValue = null; - var overrideIntValue = null; - var _g2 = 0; - var _g3 = shaderBuffer.paramCount; - while(_g2 < _g3) { - var i1 = _g2++; - hasOverride = false; - if(i1 < boolCount) { - boolRef = shaderBuffer.paramRefs_Bool[boolIndex]; - var _g21 = 0; - var _g31 = shaderBuffer.overrideBoolCount; - while(_g21 < _g31) { - var j = _g21++; - if(boolRef.name == shaderBuffer.overrideBoolNames[j]) { - overrideBoolValue = shaderBuffer.overrideBoolValues[j]; - hasOverride = true; - break; - } - } - if(hasOverride) { - boolRef.__updateGL(this.__context,overrideBoolValue); - } else { - boolRef.__updateGLFromBuffer(this.__context,paramData,shaderBuffer.paramPositions[i1],shaderBuffer.paramLengths[i1],bufferOffset); - } - ++boolIndex; - } else if(i1 < boolCount + floatCount) { - floatRef = shaderBuffer.paramRefs_Float[floatIndex]; - var _g22 = 0; - var _g32 = shaderBuffer.overrideFloatCount; - while(_g22 < _g32) { - var j1 = _g22++; - if(floatRef.name == shaderBuffer.overrideFloatNames[j1]) { - overrideFloatValue = shaderBuffer.overrideFloatValues[j1]; - hasOverride = true; - break; - } - } - if(hasOverride) { - floatRef.__updateGL(this.__context,overrideFloatValue); - } else { - floatRef.__updateGLFromBuffer(this.__context,paramData,shaderBuffer.paramPositions[i1],shaderBuffer.paramLengths[i1],bufferOffset); - } - ++floatIndex; - } else { - intRef = shaderBuffer.paramRefs_Int[intIndex]; - var _g23 = 0; - var _g33 = shaderBuffer.overrideIntCount; - while(_g23 < _g33) { - var j2 = _g23++; - if(intRef.name == shaderBuffer.overrideIntNames[j2]) { - overrideIntValue = shaderBuffer.overrideIntValues[j2]; - hasOverride = true; - break; - } - } - if(hasOverride) { - intRef.__updateGL(this.__context,overrideIntValue); - } else { - intRef.__updateGLFromBuffer(this.__context,paramData,shaderBuffer.paramPositions[i1],shaderBuffer.paramLengths[i1],bufferOffset); - } - ++intIndex; - } - } - } - ,get_data: function() { - if(this.__glSourceDirty || this.__data == null) { - this.__init(); - } - return this.__data; - } - ,set_data: function(value) { - return this.__data = value; - } - ,get_glFragmentSource: function() { - return this.__glFragmentSource; - } - ,set_glFragmentSource: function(value) { - if(value != this.__glFragmentSource) { - this.__glSourceDirty = true; - } - return this.__glFragmentSource = value; - } - ,get_glVertexSource: function() { - return this.__glVertexSource; - } - ,set_glVertexSource: function(value) { - if(value != this.__glVertexSource) { - this.__glSourceDirty = true; - } - return this.__glVertexSource = value; - } - ,__class__: openfl_display_Shader - ,__properties__: {set_glVertexSource:"set_glVertexSource",get_glVertexSource:"get_glVertexSource",set_glFragmentSource:"set_glFragmentSource",get_glFragmentSource:"get_glFragmentSource",set_data:"set_data",get_data:"get_data"} -}; -var openfl_display_GraphicsShader = function(code) { - if(this.__glFragmentSource == null) { - this.__glFragmentSource = "varying float openfl_Alphav;\n\t\tvarying vec4 openfl_ColorMultiplierv;\n\t\tvarying vec4 openfl_ColorOffsetv;\n\t\tvarying vec2 openfl_TextureCoordv;\n\n\t\tuniform bool openfl_HasColorTransform;\n\t\tuniform vec2 openfl_TextureSize;\n\t\tuniform sampler2D bitmap;\n\n\t\tvoid main(void) {\n\n\t\t\tvec4 color = texture2D (bitmap, openfl_TextureCoordv);\n\n\t\tif (color.a == 0.0) {\n\n\t\t\tgl_FragColor = vec4 (0.0, 0.0, 0.0, 0.0);\n\n\t\t} else if (openfl_HasColorTransform) {\n\n\t\t\tcolor = vec4 (color.rgb / color.a, color.a);\n\n\t\t\tmat4 colorMultiplier = mat4 (0);\n\t\t\tcolorMultiplier[0][0] = openfl_ColorMultiplierv.x;\n\t\t\tcolorMultiplier[1][1] = openfl_ColorMultiplierv.y;\n\t\t\tcolorMultiplier[2][2] = openfl_ColorMultiplierv.z;\n\t\t\tcolorMultiplier[3][3] = 1.0; // openfl_ColorMultiplierv.w;\n\n\t\t\tcolor = clamp (openfl_ColorOffsetv + (color * colorMultiplier), 0.0, 1.0);\n\n\t\t\tif (color.a > 0.0) {\n\n\t\t\t\tgl_FragColor = vec4 (color.rgb * color.a * openfl_Alphav, color.a * openfl_Alphav);\n\n\t\t\t} else {\n\n\t\t\t\tgl_FragColor = vec4 (0.0, 0.0, 0.0, 0.0);\n\n\t\t\t}\n\n\t\t} else {\n\n\t\t\tgl_FragColor = color * openfl_Alphav;\n\n\t\t}\n\n\t\t}"; - } - if(this.__glVertexSource == null) { - this.__glVertexSource = "attribute float openfl_Alpha;\n\t\tattribute vec4 openfl_ColorMultiplier;\n\t\tattribute vec4 openfl_ColorOffset;\n\t\tattribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\n\t\tvarying float openfl_Alphav;\n\t\tvarying vec4 openfl_ColorMultiplierv;\n\t\tvarying vec4 openfl_ColorOffsetv;\n\t\tvarying vec2 openfl_TextureCoordv;\n\n\t\tuniform mat4 openfl_Matrix;\n\t\tuniform bool openfl_HasColorTransform;\n\t\tuniform vec2 openfl_TextureSize;\n\n\t\tvoid main(void) {\n\n\t\t\topenfl_Alphav = openfl_Alpha;\n\t\topenfl_TextureCoordv = openfl_TextureCoord;\n\n\t\tif (openfl_HasColorTransform) {\n\n\t\t\topenfl_ColorMultiplierv = openfl_ColorMultiplier;\n\t\t\topenfl_ColorOffsetv = openfl_ColorOffset / 255.0;\n\n\t\t}\n\n\t\tgl_Position = openfl_Matrix * openfl_Position;\n\n\t\t}"; - } - openfl_display_Shader.call(this,code); - this.__isGenerated = true; - this.__initGL(); -}; -$hxClasses["openfl.display.GraphicsShader"] = openfl_display_GraphicsShader; -openfl_display_GraphicsShader.__name__ = "openfl.display.GraphicsShader"; -openfl_display_GraphicsShader.__super__ = openfl_display_Shader; -openfl_display_GraphicsShader.prototype = $extend(openfl_display_Shader.prototype,{ - openfl_Alpha: null - ,openfl_ColorMultiplier: null - ,openfl_ColorOffset: null - ,openfl_Position: null - ,openfl_TextureCoord: null - ,openfl_Matrix: null - ,openfl_HasColorTransform: null - ,openfl_TextureSize: null - ,bitmap: null - ,__class__: openfl_display_GraphicsShader -}); -var flixel_graphics_tile_FlxGraphicsShader = function() { - if(this.__glFragmentSource == null) { - this.__glFragmentSource = "\r\n\t\tvarying float openfl_Alphav;\n\t\tvarying vec4 openfl_ColorMultiplierv;\n\t\tvarying vec4 openfl_ColorOffsetv;\n\t\tvarying vec2 openfl_TextureCoordv;\n\n\t\tuniform bool openfl_HasColorTransform;\n\t\tuniform vec2 openfl_TextureSize;\n\t\tuniform sampler2D bitmap;\n\r\n\t\tuniform bool hasTransform;\r\n\t\tuniform bool hasColorTransform;\r\n\r\n\t\tvec4 flixel_texture2D(sampler2D bitmap, vec2 coord)\r\n\t\t{\r\n\t\t\tvec4 color = texture2D(bitmap, coord);\r\n\t\t\tif (!hasTransform)\r\n\t\t\t{\r\n\t\t\t\treturn color;\r\n\t\t\t}\r\n\r\n\t\t\tif (color.a == 0.0)\r\n\t\t\t{\r\n\t\t\t\treturn vec4(0.0, 0.0, 0.0, 0.0);\r\n\t\t\t}\r\n\r\n\t\t\tif (!hasColorTransform)\r\n\t\t\t{\r\n\t\t\t\treturn color * openfl_Alphav;\r\n\t\t\t}\r\n\r\n\t\t\tcolor = vec4(color.rgb / color.a, color.a);\r\n\r\n\t\t\tmat4 colorMultiplier = mat4(0);\r\n\t\t\tcolorMultiplier[0][0] = openfl_ColorMultiplierv.x;\r\n\t\t\tcolorMultiplier[1][1] = openfl_ColorMultiplierv.y;\r\n\t\t\tcolorMultiplier[2][2] = openfl_ColorMultiplierv.z;\r\n\t\t\tcolorMultiplier[3][3] = openfl_ColorMultiplierv.w;\r\n\r\n\t\t\tcolor = clamp(openfl_ColorOffsetv + (color * colorMultiplier), 0.0, 1.0);\r\n\r\n\t\t\tif (color.a > 0.0)\r\n\t\t\t{\r\n\t\t\t\treturn vec4(color.rgb * color.a * openfl_Alphav, color.a * openfl_Alphav);\r\n\t\t\t}\r\n\t\t\treturn vec4(0.0, 0.0, 0.0, 0.0);\r\n\t\t}\r\n\t\r\n\t\t\r\n\t\tvoid main(void)\r\n\t\t{\r\n\t\t\tgl_FragColor = flixel_texture2D(bitmap, openfl_TextureCoordv);\r\n\t\t}"; - } - if(this.__glVertexSource == null) { - this.__glVertexSource = "\r\n\t\tattribute float openfl_Alpha;\n\t\tattribute vec4 openfl_ColorMultiplier;\n\t\tattribute vec4 openfl_ColorOffset;\n\t\tattribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\n\t\tvarying float openfl_Alphav;\n\t\tvarying vec4 openfl_ColorMultiplierv;\n\t\tvarying vec4 openfl_ColorOffsetv;\n\t\tvarying vec2 openfl_TextureCoordv;\n\n\t\tuniform mat4 openfl_Matrix;\n\t\tuniform bool openfl_HasColorTransform;\n\t\tuniform vec2 openfl_TextureSize;\n\r\n\t\t\r\n\t\tattribute float alpha;\r\n\t\tattribute vec4 colorMultiplier;\r\n\t\tattribute vec4 colorOffset;\r\n\t\tuniform bool hasColorTransform;\r\n\t\t\r\n\t\tvoid main(void)\r\n\t\t{\r\n\t\t\topenfl_Alphav = openfl_Alpha;\n\t\topenfl_TextureCoordv = openfl_TextureCoord;\n\n\t\tif (openfl_HasColorTransform) {\n\n\t\t\topenfl_ColorMultiplierv = openfl_ColorMultiplier;\n\t\t\topenfl_ColorOffsetv = openfl_ColorOffset / 255.0;\n\n\t\t}\n\n\t\tgl_Position = openfl_Matrix * openfl_Position;\n\r\n\t\t\t\r\n\t\t\topenfl_Alphav = openfl_Alpha * alpha;\r\n\t\t\t\r\n\t\t\tif (hasColorTransform)\r\n\t\t\t{\r\n\t\t\t\topenfl_ColorOffsetv = colorOffset / 255.0;\r\n\t\t\t\topenfl_ColorMultiplierv = colorMultiplier;\r\n\t\t\t}\r\n\t\t}"; - } - openfl_display_GraphicsShader.call(this); - this.__isGenerated = true; - this.__initGL(); -}; -$hxClasses["flixel.graphics.tile.FlxGraphicsShader"] = flixel_graphics_tile_FlxGraphicsShader; -flixel_graphics_tile_FlxGraphicsShader.__name__ = "flixel.graphics.tile.FlxGraphicsShader"; -flixel_graphics_tile_FlxGraphicsShader.__super__ = openfl_display_GraphicsShader; -flixel_graphics_tile_FlxGraphicsShader.prototype = $extend(openfl_display_GraphicsShader.prototype,{ - alpha: null - ,colorMultiplier: null - ,colorOffset: null - ,hasColorTransform: null - ,hasTransform: null - ,__class__: flixel_graphics_tile_FlxGraphicsShader -}); -var flixel_group_FlxTypedGroupIterator = function(GroupMembers,filter) { - this._groupMembers = GroupMembers; - this._filter = filter; - this._cursor = 0; - this._length = this._groupMembers.length; -}; -$hxClasses["flixel.group.FlxTypedGroupIterator"] = flixel_group_FlxTypedGroupIterator; -flixel_group_FlxTypedGroupIterator.__name__ = "flixel.group.FlxTypedGroupIterator"; -flixel_group_FlxTypedGroupIterator.prototype = { - _groupMembers: null - ,_filter: null - ,_cursor: null - ,_length: null - ,next: function() { - if(this.hasNext()) { - return this._groupMembers[this._cursor++]; - } else { - return null; - } - } - ,hasNext: function() { - while(this._cursor < this._length && (this._groupMembers[this._cursor] == null || this._filter != null && !this._filter(this._groupMembers[this._cursor]))) this._cursor++; - return this._cursor < this._length; - } - ,__class__: flixel_group_FlxTypedGroupIterator -}; -var flixel_group_FlxTypedSpriteGroup = function(X,Y,MaxSize) { - if(MaxSize == null) { - MaxSize = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - this._skipTransformChildren = false; - this.directAlpha = false; - flixel_FlxSprite.call(this,X,Y); - this.group = new flixel_group_FlxTypedGroup(MaxSize); - this._sprites = this.group.members; -}; -$hxClasses["flixel.group.FlxTypedSpriteGroup"] = flixel_group_FlxTypedSpriteGroup; -flixel_group_FlxTypedSpriteGroup.__name__ = "flixel.group.FlxTypedSpriteGroup"; -flixel_group_FlxTypedSpriteGroup.__super__ = flixel_FlxSprite; -flixel_group_FlxTypedSpriteGroup.prototype = $extend(flixel_FlxSprite.prototype,{ - transformChildren_flixel_math_FlxRect: function(Function1,Value) { - if(this.group == null) { - return; - } - var _g = 0; - var _g1 = this._sprites; - while(_g < _g1.length) { - var sprite = _g1[_g]; - ++_g; - if(sprite != null) { - Function1(sprite,Value); - } - } - } - ,transformChildren_openfl_display_BlendMode: function(Function1,Value) { - if(this.group == null) { - return; - } - var _g = 0; - var _g1 = this._sprites; - while(_g < _g1.length) { - var sprite = _g1[_g]; - ++_g; - if(sprite != null) { - Function1(sprite,Value); - } - } - } - ,transformChildren_Int: function(Function1,Value) { - if(this.group == null) { - return; - } - var _g = 0; - var _g1 = this._sprites; - while(_g < _g1.length) { - var sprite = _g1[_g]; - ++_g; - if(sprite != null) { - Function1(sprite,Value); - } - } - } - ,transformChildren_Float: function(Function1,Value) { - if(this.group == null) { - return; - } - var _g = 0; - var _g1 = this._sprites; - while(_g < _g1.length) { - var sprite = _g1[_g]; - ++_g; - if(sprite != null) { - Function1(sprite,Value); - } - } - } - ,transformChildren_Bool: function(Function1,Value) { - if(this.group == null) { - return; - } - var _g = 0; - var _g1 = this._sprites; - while(_g < _g1.length) { - var sprite = _g1[_g]; - ++_g; - if(sprite != null) { - Function1(sprite,Value); - } - } - } - ,transformChildren_Array_flixel_FlxCamera: function(Function1,Value) { - if(this.group == null) { - return; - } - var _g = 0; - var _g1 = this._sprites; - while(_g < _g1.length) { - var sprite = _g1[_g]; - ++_g; - if(sprite != null) { - Function1(sprite,Value); - } - } - } - ,transformChildren_flixel_FlxCamera: function(Function1,Value) { - if(this.group == null) { - return; - } - var _g = 0; - var _g1 = this._sprites; - while(_g < _g1.length) { - var sprite = _g1[_g]; - ++_g; - if(sprite != null) { - Function1(sprite,Value); - } - } - } - ,multiTransformChildren_Float: function(FunctionArray,ValueArray) { - if(this.group == null) { - return; - } - var numProps = FunctionArray.length; - if(numProps > ValueArray.length) { - return; - } - var lambda; - var _g = 0; - var _g1 = this._sprites; - while(_g < _g1.length) { - var sprite = _g1[_g]; - ++_g; - if(sprite != null && sprite.exists) { - var _g2 = 0; - var _g11 = numProps; - while(_g2 < _g11) { - var i = _g2++; - lambda = FunctionArray[i]; - lambda(sprite,ValueArray[i]); - } - } - } - } - ,transformChildren_flixel_math_FlxPoint: function(Function1,Value) { - if(this.group == null) { - return; - } - var _g = 0; - var _g1 = this._sprites; - while(_g < _g1.length) { - var sprite = _g1[_g]; - ++_g; - if(sprite != null) { - Function1(sprite,Value); - } - } - } - ,group: null - ,directAlpha: null - ,_skipTransformChildren: null - ,_sprites: null - ,initVars: function() { - this.flixelType = 4; - this.offset = new flixel_math_FlxCallbackPoint($bind(this,this.offsetCallback)); - this.origin = new flixel_math_FlxCallbackPoint($bind(this,this.originCallback)); - this.scale = new flixel_math_FlxCallbackPoint($bind(this,this.scaleCallback)); - this.scrollFactor = new flixel_math_FlxCallbackPoint($bind(this,this.scrollFactorCallback)); - this.scale.set(1,1); - this.scrollFactor.set(1,1); - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - this.velocity = point; - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - this.acceleration = point1; - var point2 = flixel_math_FlxPoint._pool.get().set(0,0); - point2._inPool = false; - this.drag = point2; - var X = 10000; - var Y = 10000; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point3 = flixel_math_FlxPoint._pool.get().set(X,Y); - point3._inPool = false; - this.maxVelocity = point3; - } - ,destroy: function() { - this.offset = flixel_util_FlxDestroyUtil.destroy(this.offset); - this.origin = flixel_util_FlxDestroyUtil.destroy(this.origin); - this.scale = flixel_util_FlxDestroyUtil.destroy(this.scale); - this.scrollFactor = flixel_util_FlxDestroyUtil.destroy(this.scrollFactor); - this.group = flixel_util_FlxDestroyUtil.destroy(this.group); - this._sprites = null; - flixel_FlxSprite.prototype.destroy.call(this); - } - ,clone: function() { - var newGroup = new flixel_group_FlxTypedSpriteGroup(this.x,this.y,this.group.maxSize); - var _g = 0; - var _g1 = this.group.members; - while(_g < _g1.length) { - var sprite = _g1[_g]; - ++_g; - if(sprite != null) { - newGroup.add(sprite.clone()); - } - } - return newGroup; - } - ,isOnScreen: function(Camera) { - var _g = 0; - var _g1 = this._sprites; - while(_g < _g1.length) { - var sprite = _g1[_g]; - ++_g; - if(sprite != null && sprite.exists && sprite.visible && sprite.isOnScreen(Camera)) { - return true; - } - } - return false; - } - ,overlapsPoint: function(point,InScreenSpace,Camera) { - if(InScreenSpace == null) { - InScreenSpace = false; - } - var result = false; - var _g = 0; - var _g1 = this._sprites; - while(_g < _g1.length) { - var sprite = _g1[_g]; - ++_g; - if(sprite != null && sprite.exists && sprite.visible) { - result = result || sprite.overlapsPoint(point,InScreenSpace,Camera); - } - } - return result; - } - ,pixelsOverlapPoint: function(point,Mask,Camera) { - if(Mask == null) { - Mask = 255; - } - var result = false; - var _g = 0; - var _g1 = this._sprites; - while(_g < _g1.length) { - var sprite = _g1[_g]; - ++_g; - if(sprite != null && sprite.exists && sprite.visible) { - result = result || sprite.pixelsOverlapPoint(point,Mask,Camera); - } - } - return result; - } - ,update: function(elapsed) { - this.group.update(elapsed); - if(this.moves) { - this.updateMotion(elapsed); - } - } - ,draw: function() { - this.group.draw(); - } - ,replaceColor: function(Color,NewColor,FetchPositions) { - if(FetchPositions == null) { - FetchPositions = false; - } - var positions = null; - if(FetchPositions) { - positions = []; - } - var spritePositions; - var _g = 0; - var _g1 = this._sprites; - while(_g < _g1.length) { - var sprite = _g1[_g]; - ++_g; - if(sprite != null) { - spritePositions = sprite.replaceColor(Color,NewColor,FetchPositions); - if(FetchPositions) { - positions = positions.concat(spritePositions); - } - } - } - return positions; - } - ,add: function(Sprite) { - this.preAdd(Sprite); - return this.group.add(Sprite); - } - ,insert: function(Position,Sprite) { - this.preAdd(Sprite); - return this.group.insert(Position,Sprite); - } - ,preAdd: function(Sprite) { - var sprite = Sprite; - var _g = sprite; - _g.set_x(_g.x + this.x); - var _g1 = sprite; - _g1.set_y(_g1.y + this.y); - var _g2 = sprite; - _g2.set_alpha(_g2.alpha * this.alpha); - var _this = sprite.scrollFactor; - var point = this.scrollFactor; - _this.set_x(point.x); - _this.set_y(point.y); - if(point._weak) { - point.put(); - } - sprite.set_cameras(this._cameras); - if(this.clipRect != null) { - var ClipRect = this.clipRect; - if(ClipRect == null) { - sprite.set_clipRect(null); - } else { - var X = ClipRect.x - sprite.x + this.x; - var Y = ClipRect.y - sprite.y + this.y; - var Width = ClipRect.width; - var Height = ClipRect.height; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this1 = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this1.x = X1; - _this1.y = Y1; - _this1.width = Width1; - _this1.height = Height1; - var rect = _this1; - rect._inPool = false; - sprite.set_clipRect(rect); - } - } - } - ,recycle: function(ObjectClass,ObjectFactory,Force) { - if(Force == null) { - Force = false; - } - return this.group.recycle(ObjectClass,ObjectFactory,Force); - } - ,remove: function(Sprite,Splice) { - if(Splice == null) { - Splice = false; - } - var sprite = Sprite; - var _g = sprite; - _g.set_x(_g.x - this.x); - var _g1 = sprite; - _g1.set_y(_g1.y - this.y); - sprite.set_cameras(null); - return this.group.remove(Sprite,Splice); - } - ,replace: function(OldObject,NewObject) { - return this.group.replace(OldObject,NewObject); - } - ,sort: function(Function1,Order) { - if(Order == null) { - Order = -1; - } - var Order1 = Order; - if(Order1 == null) { - Order1 = -1; - } - var f = Function1; - var a1 = Order1; - var tmp = function(a2,a3) { - return f(a1,a2,a3); - }; - this.group.members.sort(tmp); - } - ,getFirstAvailable: function(ObjectClass,Force) { - if(Force == null) { - Force = false; - } - return this.group.getFirstAvailable(ObjectClass,Force); - } - ,getFirstNull: function() { - return this.group.getFirstNull(); - } - ,getFirstExisting: function() { - return this.group.getFirstExisting(); - } - ,getFirstAlive: function() { - return this.group.getFirstAlive(); - } - ,getFirstDead: function() { - return this.group.getFirstDead(); - } - ,countLiving: function() { - return this.group.countLiving(); - } - ,countDead: function() { - return this.group.countDead(); - } - ,getRandom: function(StartIndex,Length) { - if(Length == null) { - Length = 0; - } - if(StartIndex == null) { - StartIndex = 0; - } - return this.group.getRandom(StartIndex,Length); - } - ,iterator: function(filter) { - return new flixel_group_FlxTypedGroupIterator(this.group.members,filter); - } - ,forEach: function(Function1,Recurse) { - if(Recurse == null) { - Recurse = false; - } - this.group.forEach(Function1,Recurse); - } - ,forEachAlive: function(Function1,Recurse) { - if(Recurse == null) { - Recurse = false; - } - this.group.forEachAlive(Function1,Recurse); - } - ,forEachDead: function(Function1,Recurse) { - if(Recurse == null) { - Recurse = false; - } - this.group.forEachDead(Function1,Recurse); - } - ,forEachExists: function(Function1,Recurse) { - if(Recurse == null) { - Recurse = false; - } - this.group.forEachExists(Function1,Recurse); - } - ,forEachOfType: function(ObjectClass,Function1,Recurse) { - if(Recurse == null) { - Recurse = false; - } - this.group.forEachOfType(ObjectClass,Function1,Recurse); - } - ,clear: function() { - this.group.clear(); - } - ,kill: function() { - flixel_FlxSprite.prototype.kill.call(this); - this.group.kill(); - } - ,revive: function() { - flixel_FlxSprite.prototype.revive.call(this); - this.group.revive(); - } - ,reset: function(X,Y) { - this.revive(); - this.setPosition(X,Y); - var _g = 0; - var _g1 = this._sprites; - while(_g < _g1.length) { - var sprite = _g1[_g]; - ++_g; - if(sprite != null) { - sprite.reset(X,Y); - } - } - } - ,setPosition: function(X,Y) { - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var dx = X - this.x; - var dy = Y - this.y; - this.multiTransformChildren_Float([$bind(this,this.xTransform),$bind(this,this.yTransform)],[dx,dy]); - this._skipTransformChildren = true; - this.set_x(X); - this.set_y(Y); - this._skipTransformChildren = false; - } - ,set_camera: function(Value) { - if(this.get_camera() != Value) { - this.transformChildren_flixel_FlxCamera($bind(this,this.cameraTransform),Value); - } - return flixel_FlxSprite.prototype.set_camera.call(this,Value); - } - ,set_cameras: function(Value) { - if(this.get_cameras() != Value) { - this.transformChildren_Array_flixel_FlxCamera($bind(this,this.camerasTransform),Value); - } - return flixel_FlxSprite.prototype.set_cameras.call(this,Value); - } - ,set_exists: function(Value) { - if(this.exists != Value) { - this.transformChildren_Bool($bind(this,this.existsTransform),Value); - } - return flixel_FlxSprite.prototype.set_exists.call(this,Value); - } - ,set_visible: function(Value) { - if(this.exists && this.visible != Value) { - this.transformChildren_Bool($bind(this,this.visibleTransform),Value); - } - return flixel_FlxSprite.prototype.set_visible.call(this,Value); - } - ,set_active: function(Value) { - if(this.exists && this.active != Value) { - this.transformChildren_Bool($bind(this,this.activeTransform),Value); - } - return flixel_FlxSprite.prototype.set_active.call(this,Value); - } - ,set_alive: function(Value) { - if(this.alive != Value) { - this.transformChildren_Bool($bind(this,this.aliveTransform),Value); - } - return flixel_FlxSprite.prototype.set_alive.call(this,Value); - } - ,set_x: function(Value) { - if(!this._skipTransformChildren && this.exists && this.x != Value) { - var offset = Value - this.x; - this.transformChildren_Float($bind(this,this.xTransform),offset); - } - return this.x = Value; - } - ,set_y: function(Value) { - if(!this._skipTransformChildren && this.exists && this.y != Value) { - var offset = Value - this.y; - this.transformChildren_Float($bind(this,this.yTransform),offset); - } - return this.y = Value; - } - ,set_angle: function(Value) { - if(this.exists && this.angle != Value) { - var offset = Value - this.angle; - this.transformChildren_Float($bind(this,this.angleTransform),offset); - } - return this.angle = Value; - } - ,set_alpha: function(Value) { - var lowerBound = Value < 0 ? 0 : Value; - Value = lowerBound > 1 ? 1 : lowerBound; - if(this.exists && this.alpha != Value) { - var factor = this.alpha > 0 ? Value / this.alpha : 0; - if(!this.directAlpha && this.alpha != 0) { - this.transformChildren_Float($bind(this,this.alphaTransform),factor); - } else { - this.transformChildren_Float($bind(this,this.directAlphaTransform),Value); - } - } - return this.alpha = Value; - } - ,set_facing: function(Value) { - if(this.exists && this.facing != Value) { - this.transformChildren_Int($bind(this,this.facingTransform),Value); - } - return this.facing = Value; - } - ,set_flipX: function(Value) { - if(this.exists && this.flipX != Value) { - this.transformChildren_Bool($bind(this,this.flipXTransform),Value); - } - return this.flipX = Value; - } - ,set_flipY: function(Value) { - if(this.exists && this.flipY != Value) { - this.transformChildren_Bool($bind(this,this.flipYTransform),Value); - } - return this.flipY = Value; - } - ,set_moves: function(Value) { - if(this.exists && this.moves != Value) { - this.transformChildren_Bool($bind(this,this.movesTransform),Value); - } - return this.moves = Value; - } - ,set_immovable: function(Value) { - if(this.exists && this.immovable != Value) { - this.transformChildren_Bool($bind(this,this.immovableTransform),Value); - } - return this.immovable = Value; - } - ,set_solid: function(Value) { - if(this.exists && (this.allowCollisions & 4369) > 0 != Value) { - this.transformChildren_Bool($bind(this,this.solidTransform),Value); - } - return flixel_FlxSprite.prototype.set_solid.call(this,Value); - } - ,set_color: function(Value) { - if(this.exists && this.color != Value) { - this.transformChildren_Int($bind(this,this.gColorTransform),Value); - } - return this.color = Value; - } - ,set_blend: function(Value) { - if(this.exists && this.blend != Value) { - this.transformChildren_openfl_display_BlendMode($bind(this,this.blendTransform),Value); - } - return this.blend = Value; - } - ,set_clipRect: function(rect) { - if(this.exists) { - this.transformChildren_flixel_math_FlxRect($bind(this,this.clipRectTransform),rect); - } - return flixel_FlxSprite.prototype.set_clipRect.call(this,rect); - } - ,set_pixelPerfectRender: function(Value) { - if(this.exists && this.pixelPerfectRender != Value) { - this.transformChildren_Bool($bind(this,this.pixelPerfectTransform),Value); - } - return flixel_FlxSprite.prototype.set_pixelPerfectRender.call(this,Value); - } - ,set_width: function(Value) { - return Value; - } - ,get_width: function() { - if(this.group.length == 0) { - return 0; - } - var minX = Infinity; - var maxX = -Infinity; - var _g = 0; - var _g1 = this._sprites; - while(_g < _g1.length) { - var member = _g1[_g]; - ++_g; - if(member == null) { - continue; - } - var minMemberX = member.x; - var maxMemberX = minMemberX + member.get_width(); - if(maxMemberX > maxX) { - maxX = maxMemberX; - } - if(minMemberX < minX) { - minX = minMemberX; - } - } - return maxX - minX; - } - ,set_height: function(Value) { - return Value; - } - ,get_height: function() { - if(this.group.length == 0) { - return 0; - } - var minY = Infinity; - var maxY = -Infinity; - var _g = 0; - var _g1 = this._sprites; - while(_g < _g1.length) { - var member = _g1[_g]; - ++_g; - if(member == null) { - continue; - } - var minMemberY = member.y; - var maxMemberY = minMemberY + member.get_height(); - if(maxMemberY > maxY) { - maxY = maxMemberY; - } - if(minMemberY < minY) { - minY = minMemberY; - } - } - return maxY - minY; - } - ,get_length: function() { - return this.group.length; - } - ,get_maxSize: function() { - return this.group.maxSize; - } - ,set_maxSize: function(Size) { - return this.group.set_maxSize(Size); - } - ,get_members: function() { - return this.group.members; - } - ,xTransform: function(Sprite,X) { - var _g = Sprite; - _g.set_x(_g.x + X); - } - ,yTransform: function(Sprite,Y) { - var _g = Sprite; - _g.set_y(_g.y + Y); - } - ,angleTransform: function(Sprite,Angle) { - var _g = Sprite; - _g.set_angle(_g.angle + Angle); - } - ,alphaTransform: function(Sprite,Alpha) { - if(Sprite.alpha != 0 || Alpha == 0) { - var _g = Sprite; - _g.set_alpha(_g.alpha * Alpha); - } else { - Sprite.set_alpha(1 / Alpha); - } - } - ,directAlphaTransform: function(Sprite,Alpha) { - Sprite.set_alpha(Alpha); - } - ,facingTransform: function(Sprite,Facing) { - Sprite.set_facing(Facing); - } - ,flipXTransform: function(Sprite,FlipX) { - Sprite.set_flipX(FlipX); - } - ,flipYTransform: function(Sprite,FlipY) { - Sprite.set_flipY(FlipY); - } - ,movesTransform: function(Sprite,Moves) { - Sprite.set_moves(Moves); - } - ,pixelPerfectTransform: function(Sprite,PixelPerfect) { - Sprite.set_pixelPerfectRender(PixelPerfect); - } - ,gColorTransform: function(Sprite,Color) { - Sprite.set_color(Color); - } - ,blendTransform: function(Sprite,Blend) { - Sprite.set_blend(Blend); - } - ,immovableTransform: function(Sprite,Immovable) { - Sprite.set_immovable(Immovable); - } - ,visibleTransform: function(Sprite,Visible) { - Sprite.set_visible(Visible); - } - ,activeTransform: function(Sprite,Active) { - Sprite.set_active(Active); - } - ,solidTransform: function(Sprite,Solid) { - Sprite.set_solid(Solid); - } - ,aliveTransform: function(Sprite,Alive) { - Sprite.set_alive(Alive); - } - ,existsTransform: function(Sprite,Exists) { - Sprite.set_exists(Exists); - } - ,cameraTransform: function(Sprite,Camera) { - Sprite.set_camera(Camera); - } - ,camerasTransform: function(Sprite,Cameras) { - Sprite.set_cameras(Cameras); - } - ,offsetTransform: function(Sprite,Offset) { - var _this = Sprite.offset; - _this.set_x(Offset.x); - _this.set_y(Offset.y); - if(Offset._weak) { - Offset.put(); - } - } - ,originTransform: function(Sprite,Origin) { - var _this = Sprite.origin; - _this.set_x(Origin.x); - _this.set_y(Origin.y); - if(Origin._weak) { - Origin.put(); - } - } - ,scaleTransform: function(Sprite,Scale) { - var _this = Sprite.scale; - _this.set_x(Scale.x); - _this.set_y(Scale.y); - if(Scale._weak) { - Scale.put(); - } - } - ,scrollFactorTransform: function(Sprite,ScrollFactor) { - var _this = Sprite.scrollFactor; - _this.set_x(ScrollFactor.x); - _this.set_y(ScrollFactor.y); - if(ScrollFactor._weak) { - ScrollFactor.put(); - } - } - ,clipRectTransform: function(Sprite,ClipRect) { - if(ClipRect == null) { - Sprite.set_clipRect(null); - } else { - var X = ClipRect.x - Sprite.x + this.x; - var Y = ClipRect.y - Sprite.y + this.y; - var Width = ClipRect.width; - var Height = ClipRect.height; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this.x = X1; - _this.y = Y1; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - Sprite.set_clipRect(rect); - } - } - ,offsetCallback: function(Offset) { - this.transformChildren_flixel_math_FlxPoint($bind(this,this.offsetTransform),Offset); - } - ,originCallback: function(Origin) { - this.transformChildren_flixel_math_FlxPoint($bind(this,this.originTransform),Origin); - } - ,scaleCallback: function(Scale) { - this.transformChildren_flixel_math_FlxPoint($bind(this,this.scaleTransform),Scale); - } - ,scrollFactorCallback: function(ScrollFactor) { - this.transformChildren_flixel_math_FlxPoint($bind(this,this.scrollFactorTransform),ScrollFactor); - } - ,loadGraphicFromSprite: function(Sprite) { - return this; - } - ,loadGraphic: function(Graphic,Animated,Width,Height,Unique,Key) { - if(Unique == null) { - Unique = false; - } - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Animated == null) { - Animated = false; - } - return this; - } - ,loadRotatedGraphic: function(Graphic,Rotations,Frame,AntiAliasing,AutoBuffer,Key) { - if(AutoBuffer == null) { - AutoBuffer = false; - } - if(AntiAliasing == null) { - AntiAliasing = false; - } - if(Frame == null) { - Frame = -1; - } - if(Rotations == null) { - Rotations = 16; - } - return this; - } - ,makeGraphic: function(Width,Height,Color,Unique,Key) { - if(Unique == null) { - Unique = false; - } - if(Color == null) { - Color = -1; - } - return this; - } - ,set_pixels: function(Value) { - return Value; - } - ,set_frame: function(Value) { - return Value; - } - ,get_pixels: function() { - return null; - } - ,calcFrame: function(RunOnCpp) { - if(RunOnCpp == null) { - RunOnCpp = false; - } - } - ,resetHelpers: function() { - } - ,stamp: function(Brush,X,Y) { - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - } - ,set_frames: function(Frames) { - return Frames; - } - ,updateColorTransform: function() { - } - ,__class__: flixel_group_FlxTypedSpriteGroup - ,__properties__: $extend(flixel_FlxSprite.prototype.__properties__,{set_maxSize:"set_maxSize",get_maxSize:"get_maxSize",get_length:"get_length",get_members:"get_members"}) -}); -var flixel_input_FlxAccelerometer = function() { - this.z = 0; - this.y = 0; - this.x = 0; - if(openfl_sensors_Accelerometer.get_isSupported()) { - this._sensor = new openfl_sensors_Accelerometer(); - this._sensor.addEventListener("update",$bind(this,this.update)); - } -}; -$hxClasses["flixel.input.FlxAccelerometer"] = flixel_input_FlxAccelerometer; -flixel_input_FlxAccelerometer.__name__ = "flixel.input.FlxAccelerometer"; -flixel_input_FlxAccelerometer.prototype = { - x: null - ,y: null - ,z: null - ,_sensor: null - ,get_isSupported: function() { - return openfl_sensors_Accelerometer.get_isSupported(); - } - ,update: function(Event1) { - this.x = Event1.accelerationX; - this.y = Event1.accelerationY; - this.z = Event1.accelerationZ; - this.x /= 10; - this.y /= 10; - this.z /= 10; - } - ,__class__: flixel_input_FlxAccelerometer - ,__properties__: {get_isSupported:"get_isSupported"} -}; -var flixel_input_FlxBaseKeyList = function(status,keyManager) { - this.status = status; - this.keyManager = keyManager; -}; -$hxClasses["flixel.input.FlxBaseKeyList"] = flixel_input_FlxBaseKeyList; -flixel_input_FlxBaseKeyList.__name__ = "flixel.input.FlxBaseKeyList"; -flixel_input_FlxBaseKeyList.prototype = { - status: null - ,keyManager: null - ,check: function(keyCode) { - return this.keyManager.checkStatus(keyCode,this.status); - } - ,get_ANY: function() { - var _g = 0; - var _g1 = this.keyManager._keyListArray; - while(_g < _g1.length) { - var key = _g1[_g]; - ++_g; - if(key != null && this.keyManager.checkStatus(key.ID,this.status)) { - return true; - } - } - return false; - } - ,__class__: flixel_input_FlxBaseKeyList - ,__properties__: {get_ANY:"get_ANY"} -}; -var flixel_input_IFlxInput = function() { }; -$hxClasses["flixel.input.IFlxInput"] = flixel_input_IFlxInput; -flixel_input_IFlxInput.__name__ = "flixel.input.IFlxInput"; -flixel_input_IFlxInput.__isInterface__ = true; -flixel_input_IFlxInput.prototype = { - get_justReleased: null - ,get_released: null - ,get_pressed: null - ,get_justPressed: null - ,__class__: flixel_input_IFlxInput - ,__properties__: {get_justPressed:"get_justPressed",get_pressed:"get_pressed",get_released:"get_released",get_justReleased:"get_justReleased"} -}; -var flixel_input_FlxInput = function(ID) { - this.last = 0; - this.current = 0; - this.ID = ID; -}; -$hxClasses["flixel.input.FlxInput"] = flixel_input_FlxInput; -flixel_input_FlxInput.__name__ = "flixel.input.FlxInput"; -flixel_input_FlxInput.__interfaces__ = [flixel_input_IFlxInput]; -flixel_input_FlxInput.prototype = { - ID: null - ,current: null - ,last: null - ,press: function() { - this.last = this.current; - this.current = this.current == 1 || this.current == 2 ? 1 : 2; - } - ,release: function() { - this.last = this.current; - this.current = this.current == 1 || this.current == 2 ? -1 : 0; - } - ,update: function() { - if(this.last == -1 && this.current == -1) { - this.current = 0; - } else if(this.last == 2 && this.current == 2) { - this.current = 1; - } - this.last = this.current; - } - ,reset: function() { - this.current = 0; - this.last = 0; - } - ,hasState: function(state) { - switch(state) { - case -1: - return this.current == -1; - case 0: - if(this.current != 0) { - return this.current == -1; - } else { - return true; - } - break; - case 1: - if(this.current != 1) { - return this.current == 2; - } else { - return true; - } - break; - case 2: - return this.current == 2; - } - } - ,get_justReleased: function() { - return this.current == -1; - } - ,get_released: function() { - if(this.current != 0) { - return this.current == -1; - } else { - return true; - } - } - ,get_pressed: function() { - if(this.current != 1) { - return this.current == 2; - } else { - return true; - } - } - ,get_justPressed: function() { - return this.current == 2; - } - ,__class__: flixel_input_FlxInput - ,__properties__: {get_justPressed:"get_justPressed",get_pressed:"get_pressed",get_released:"get_released",get_justReleased:"get_justReleased"} -}; -var flixel_input_IFlxInputManager = function() { }; -$hxClasses["flixel.input.IFlxInputManager"] = flixel_input_IFlxInputManager; -flixel_input_IFlxInputManager.__name__ = "flixel.input.IFlxInputManager"; -flixel_input_IFlxInputManager.__isInterface__ = true; -flixel_input_IFlxInputManager.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_input_IFlxInputManager.prototype = { - reset: null - ,update: null - ,onFocus: null - ,onFocusLost: null - ,__class__: flixel_input_IFlxInputManager -}; -var flixel_input_FlxKeyManager = function(createKeyList) { - this._keyListMap = new haxe_ds_IntMap(); - this._keyListArray = []; - this.preventDefaultKeys = []; - this.enabled = true; - openfl_Lib.get_current().stage.addEventListener("keyDown",$bind(this,this.onKeyDown)); - openfl_Lib.get_current().stage.addEventListener("keyUp",$bind(this,this.onKeyUp)); - this.pressed = createKeyList(1,this); - this.justPressed = createKeyList(2,this); - this.justReleased = createKeyList(-1,this); -}; -$hxClasses["flixel.input.FlxKeyManager"] = flixel_input_FlxKeyManager; -flixel_input_FlxKeyManager.__name__ = "flixel.input.FlxKeyManager"; -flixel_input_FlxKeyManager.__interfaces__ = [flixel_input_IFlxInputManager]; -flixel_input_FlxKeyManager.prototype = { - enabled: null - ,preventDefaultKeys: null - ,pressed: null - ,justPressed: null - ,justReleased: null - ,_keyListArray: null - ,_keyListMap: null - ,anyPressed: function(KeyArray) { - return this.checkKeyArrayState(KeyArray,1); - } - ,anyJustPressed: function(KeyArray) { - return this.checkKeyArrayState(KeyArray,2); - } - ,anyJustReleased: function(KeyArray) { - return this.checkKeyArrayState(KeyArray,-1); - } - ,firstPressed: function() { - var _g = 0; - var _g1 = this._keyListArray; - while(_g < _g1.length) { - var key = _g1[_g]; - ++_g; - if(key != null && (key.current == 1 || key.current == 2)) { - return key.ID; - } - } - return -1; - } - ,firstJustPressed: function() { - var _g = 0; - var _g1 = this._keyListArray; - while(_g < _g1.length) { - var key = _g1[_g]; - ++_g; - if(key != null && key.current == 2) { - return key.ID; - } - } - return -1; - } - ,firstJustReleased: function() { - var _g = 0; - var _g1 = this._keyListArray; - while(_g < _g1.length) { - var key = _g1[_g]; - ++_g; - if(key != null && key.current == -1) { - return key.ID; - } - } - return -1; - } - ,checkStatus: function(KeyCode,Status) { - var key = this._keyListMap.h[KeyCode]; - if(key != null) { - if(key.hasState(Status)) { - return true; - } - } - return false; - } - ,getIsDown: function() { - var keysDown = []; - var _g = 0; - var _g1 = this._keyListArray; - while(_g < _g1.length) { - var key = _g1[_g]; - ++_g; - if(key != null && (key.current == 1 || key.current == 2)) { - keysDown.push(key); - } - } - return keysDown; - } - ,destroy: function() { - this._keyListArray = null; - this._keyListMap = null; - } - ,reset: function() { - var _g = 0; - var _g1 = this._keyListArray; - while(_g < _g1.length) { - var key = _g1[_g]; - ++_g; - if(key != null) { - key.release(); - } - } - } - ,update: function() { - var _g = 0; - var _g1 = this._keyListArray; - while(_g < _g1.length) { - var key = _g1[_g]; - ++_g; - if(key != null) { - key.update(); - } - } - } - ,checkKeyArrayState: function(KeyArray,State) { - if(KeyArray == null) { - return false; - } - var _g = 0; - while(_g < KeyArray.length) { - var code = KeyArray[_g]; - ++_g; - var key = this._keyListMap.h[code]; - if(key != null) { - if(key.hasState(State)) { - return true; - } - } - } - return false; - } - ,onKeyUp: function(event) { - var c = this.resolveKeyCode(event); - this.handlePreventDefaultKeys(c,event); - if(this.enabled) { - var key = this._keyListMap.h[c]; - if(key != null) { - key.release(); - } - } - } - ,onKeyDown: function(event) { - var c = this.resolveKeyCode(event); - this.handlePreventDefaultKeys(c,event); - if(this.enabled) { - var key = this._keyListMap.h[c]; - if(key != null) { - key.press(); - } - } - } - ,handlePreventDefaultKeys: function(keyCode,event) { - var key = this._keyListMap.h[keyCode]; - if(key != null && this.preventDefaultKeys != null && this.preventDefaultKeys.indexOf(key.ID) != -1) { - event.stopImmediatePropagation(); - event.stopPropagation(); - event.preventDefault(); - } - } - ,inKeyArray: function(KeyArray,Event1) { - if(KeyArray == null) { - return false; - } else { - var code = this.resolveKeyCode(Event1); - var _g = 0; - while(_g < KeyArray.length) { - var key = KeyArray[_g]; - ++_g; - if(key == code || key == -2) { - return true; - } - } - } - return false; - } - ,resolveKeyCode: function(e) { - return e.keyCode; - } - ,updateKeyStates: function(KeyCode,Down) { - var key = this._keyListMap.h[KeyCode]; - if(key != null) { - if(Down) { - key.press(); - } else { - key.release(); - } - } - } - ,onFocus: function() { - } - ,onFocusLost: function() { - this.reset(); - } - ,getKey: function(KeyCode) { - return this._keyListMap.h[KeyCode]; - } - ,__class__: flixel_input_FlxKeyManager -}; -var flixel_input_FlxPointer = function() { - this._globalScreenY = 0; - this._globalScreenX = 0; - this.screenY = 0; - this.screenX = 0; - this.y = 0; - this.x = 0; -}; -$hxClasses["flixel.input.FlxPointer"] = flixel_input_FlxPointer; -flixel_input_FlxPointer.__name__ = "flixel.input.FlxPointer"; -flixel_input_FlxPointer.prototype = { - x: null - ,y: null - ,screenX: null - ,screenY: null - ,_globalScreenX: null - ,_globalScreenY: null - ,getWorldPosition: function(Camera,point) { - if(Camera == null) { - Camera = flixel_FlxG.camera; - } - if(point == null) { - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - point = point1; - } - this.getScreenPosition(Camera,flixel_input_FlxPointer._cachedPoint); - point.set_x(flixel_input_FlxPointer._cachedPoint.x + Camera.scroll.x); - point.set_y(flixel_input_FlxPointer._cachedPoint.y + Camera.scroll.y); - return point; - } - ,getScreenPosition: function(Camera,point) { - if(Camera == null) { - Camera = flixel_FlxG.camera; - } - if(point == null) { - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - point = point1; - } - point.set_x((this._globalScreenX - Camera.x + 0.5 * Camera.width * (Camera.zoom - Camera.initialZoom)) / Camera.zoom); - point.set_y((this._globalScreenY - Camera.y + 0.5 * Camera.height * (Camera.zoom - Camera.initialZoom)) / Camera.zoom); - return point; - } - ,getPositionInCameraView: function(Camera,point) { - if(Camera == null) { - Camera = flixel_FlxG.camera; - } - if(point == null) { - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - point = point1; - } - point.set_x((this._globalScreenX - Camera.x) / Camera.zoom + Camera.viewOffsetX); - point.set_y((this._globalScreenY - Camera.y) / Camera.zoom + Camera.viewOffsetY); - return point; - } - ,getPosition: function(point) { - if(point == null) { - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - point = point1; - } - return point.set(this.x,this.y); - } - ,overlaps: function(ObjectOrGroup,Camera) { - var _gthis = this; - var result = false; - var group = flixel_group_FlxTypedGroup.resolveGroup(ObjectOrGroup); - if(group != null) { - group.forEachExists(function(basic) { - if(_gthis.overlaps(basic,Camera)) { - result = true; - return; - } - }); - } else { - this.getPosition(flixel_input_FlxPointer._cachedPoint); - var object = ObjectOrGroup; - result = object.overlapsPoint(flixel_input_FlxPointer._cachedPoint,true,Camera); - } - return result; - } - ,setGlobalScreenPositionUnsafe: function(newX,newY) { - this._globalScreenX = newX / flixel_FlxG.scaleMode.scale.x | 0; - this._globalScreenY = newY / flixel_FlxG.scaleMode.scale.y | 0; - this.updatePositions(); - } - ,toString: function() { - var value = this.x; - var _this = flixel_util_LabelValuePair._pool.get(); - _this.label = "x"; - _this.value = value; - var value1 = this.y; - var _this1 = flixel_util_LabelValuePair._pool.get(); - _this1.label = "y"; - _this1.value = value1; - return flixel_util_FlxStringUtil.getDebugString([_this,_this1]); - } - ,updatePositions: function() { - this.getScreenPosition(flixel_FlxG.camera,flixel_input_FlxPointer._cachedPoint); - this.screenX = flixel_input_FlxPointer._cachedPoint.x | 0; - this.screenY = flixel_input_FlxPointer._cachedPoint.y | 0; - this.getWorldPosition(flixel_FlxG.camera,flixel_input_FlxPointer._cachedPoint); - this.x = flixel_input_FlxPointer._cachedPoint.x | 0; - this.y = flixel_input_FlxPointer._cachedPoint.y | 0; - } - ,__class__: flixel_input_FlxPointer -}; -var flixel_input_FlxSwipe = function(ID,StartPosition,EndPosition,StartTimeInTicks) { - this.ID = ID; - this.startPosition = StartPosition; - this.endPosition = EndPosition; - this._startTimeInTicks = StartTimeInTicks; - this._endTimeInTicks = flixel_FlxG.game.ticks; -}; -$hxClasses["flixel.input.FlxSwipe"] = flixel_input_FlxSwipe; -flixel_input_FlxSwipe.__name__ = "flixel.input.FlxSwipe"; -flixel_input_FlxSwipe.prototype = { - ID: null - ,startPosition: null - ,endPosition: null - ,_startTimeInTicks: null - ,_endTimeInTicks: null - ,toString: function() { - var value = this.ID; - var _this = flixel_util_LabelValuePair._pool.get(); - _this.label = "ID"; - _this.value = value; - var value1 = this.startPosition; - var _this1 = flixel_util_LabelValuePair._pool.get(); - _this1.label = "start"; - _this1.value = value1; - var value2 = this.endPosition; - var _this2 = flixel_util_LabelValuePair._pool.get(); - _this2.label = "end"; - _this2.value = value2; - var dx = this.startPosition.x - this.endPosition.x; - var dy = this.startPosition.y - this.endPosition.y; - var value3 = Math.sqrt(dx * dx + dy * dy); - var _this3 = flixel_util_LabelValuePair._pool.get(); - _this3.label = "distance"; - _this3.value = value3; - var value4 = this.startPosition.angleBetween(this.endPosition); - var _this4 = flixel_util_LabelValuePair._pool.get(); - _this4.label = "angle"; - _this4.value = value4; - var value5 = (this._endTimeInTicks - this._startTimeInTicks) / 1000; - var _this5 = flixel_util_LabelValuePair._pool.get(); - _this5.label = "duration"; - _this5.value = value5; - return flixel_util_FlxStringUtil.getDebugString([_this,_this1,_this2,_this3,_this4,_this5]); - } - ,get_distance: function() { - var dx = this.startPosition.x - this.endPosition.x; - var dy = this.startPosition.y - this.endPosition.y; - return Math.sqrt(dx * dx + dy * dy); - } - ,get_angle: function() { - return this.startPosition.angleBetween(this.endPosition); - } - ,get_duration: function() { - return (this._endTimeInTicks - this._startTimeInTicks) / 1000; - } - ,__class__: flixel_input_FlxSwipe - ,__properties__: {get_duration:"get_duration",get_angle:"get_angle",get_distance:"get_distance"} -}; -var haxe_ds_IntMap = function() { - this.h = { }; -}; -$hxClasses["haxe.ds.IntMap"] = haxe_ds_IntMap; -haxe_ds_IntMap.__name__ = "haxe.ds.IntMap"; -haxe_ds_IntMap.__interfaces__ = [haxe_IMap]; -haxe_ds_IntMap.prototype = { - h: null - ,set: function(key,value) { - this.h[key] = value; - } - ,get: function(key) { - return this.h[key]; - } - ,exists: function(key) { - return this.h.hasOwnProperty(key); - } - ,remove: function(key) { - if(!this.h.hasOwnProperty(key)) { - return false; - } - delete(this.h[key]); - return true; - } - ,keys: function() { - var a = []; - for( var key in this.h ) (this.h.hasOwnProperty(key) ? a.push(key | 0) : null); - return HxOverrides.iter(a); - } - ,iterator: function() { - return { ref : this.h, it : this.keys(), hasNext : function() { - return this.it.hasNext(); - }, next : function() { - var i = this.it.next(); - return this.ref[i]; - }}; - } - ,__class__: haxe_ds_IntMap -}; -var flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$ = {}; -$hxClasses["flixel.input.keyboard._FlxKey.FlxKey_Impl_"] = flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.__name__ = "flixel.input.keyboard._FlxKey.FlxKey_Impl_"; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.fromString = function(s) { - s = s.toUpperCase(); - var _this = flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.fromStringMap; - if(__map_reserved[s] != null ? _this.existsReserved(s) : _this.h.hasOwnProperty(s)) { - var _this1 = flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.fromStringMap; - if(__map_reserved[s] != null) { - return _this1.getReserved(s); - } else { - return _this1.h[s]; - } - } else { - return -1; - } -}; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.toString = function(this1) { - return flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.toStringMap.h[this1]; -}; -var flixel_input_keyboard_FlxKeyList = function(status,keyManager) { - flixel_input_FlxBaseKeyList.call(this,status,keyManager); -}; -$hxClasses["flixel.input.keyboard.FlxKeyList"] = flixel_input_keyboard_FlxKeyList; -flixel_input_keyboard_FlxKeyList.__name__ = "flixel.input.keyboard.FlxKeyList"; -flixel_input_keyboard_FlxKeyList.__super__ = flixel_input_FlxBaseKeyList; -flixel_input_keyboard_FlxKeyList.prototype = $extend(flixel_input_FlxBaseKeyList.prototype,{ - get_A: function() { - return this.keyManager.checkStatus(65,this.status); - } - ,get_B: function() { - return this.keyManager.checkStatus(66,this.status); - } - ,get_C: function() { - return this.keyManager.checkStatus(67,this.status); - } - ,get_D: function() { - return this.keyManager.checkStatus(68,this.status); - } - ,get_E: function() { - return this.keyManager.checkStatus(69,this.status); - } - ,get_F: function() { - return this.keyManager.checkStatus(70,this.status); - } - ,get_G: function() { - return this.keyManager.checkStatus(71,this.status); - } - ,get_H: function() { - return this.keyManager.checkStatus(72,this.status); - } - ,get_I: function() { - return this.keyManager.checkStatus(73,this.status); - } - ,get_J: function() { - return this.keyManager.checkStatus(74,this.status); - } - ,get_K: function() { - return this.keyManager.checkStatus(75,this.status); - } - ,get_L: function() { - return this.keyManager.checkStatus(76,this.status); - } - ,get_M: function() { - return this.keyManager.checkStatus(77,this.status); - } - ,get_N: function() { - return this.keyManager.checkStatus(78,this.status); - } - ,get_O: function() { - return this.keyManager.checkStatus(79,this.status); - } - ,get_P: function() { - return this.keyManager.checkStatus(80,this.status); - } - ,get_Q: function() { - return this.keyManager.checkStatus(81,this.status); - } - ,get_R: function() { - return this.keyManager.checkStatus(82,this.status); - } - ,get_S: function() { - return this.keyManager.checkStatus(83,this.status); - } - ,get_T: function() { - return this.keyManager.checkStatus(84,this.status); - } - ,get_U: function() { - return this.keyManager.checkStatus(85,this.status); - } - ,get_V: function() { - return this.keyManager.checkStatus(86,this.status); - } - ,get_W: function() { - return this.keyManager.checkStatus(87,this.status); - } - ,get_X: function() { - return this.keyManager.checkStatus(88,this.status); - } - ,get_Y: function() { - return this.keyManager.checkStatus(89,this.status); - } - ,get_Z: function() { - return this.keyManager.checkStatus(90,this.status); - } - ,get_ZERO: function() { - return this.keyManager.checkStatus(48,this.status); - } - ,get_ONE: function() { - return this.keyManager.checkStatus(49,this.status); - } - ,get_TWO: function() { - return this.keyManager.checkStatus(50,this.status); - } - ,get_THREE: function() { - return this.keyManager.checkStatus(51,this.status); - } - ,get_FOUR: function() { - return this.keyManager.checkStatus(52,this.status); - } - ,get_FIVE: function() { - return this.keyManager.checkStatus(53,this.status); - } - ,get_SIX: function() { - return this.keyManager.checkStatus(54,this.status); - } - ,get_SEVEN: function() { - return this.keyManager.checkStatus(55,this.status); - } - ,get_EIGHT: function() { - return this.keyManager.checkStatus(56,this.status); - } - ,get_NINE: function() { - return this.keyManager.checkStatus(57,this.status); - } - ,get_PAGEUP: function() { - return this.keyManager.checkStatus(33,this.status); - } - ,get_PAGEDOWN: function() { - return this.keyManager.checkStatus(34,this.status); - } - ,get_HOME: function() { - return this.keyManager.checkStatus(36,this.status); - } - ,get_END: function() { - return this.keyManager.checkStatus(35,this.status); - } - ,get_INSERT: function() { - return this.keyManager.checkStatus(45,this.status); - } - ,get_ESCAPE: function() { - return this.keyManager.checkStatus(27,this.status); - } - ,get_MINUS: function() { - return this.keyManager.checkStatus(189,this.status); - } - ,get_PLUS: function() { - return this.keyManager.checkStatus(187,this.status); - } - ,get_DELETE: function() { - return this.keyManager.checkStatus(46,this.status); - } - ,get_BACKSPACE: function() { - return this.keyManager.checkStatus(8,this.status); - } - ,get_LBRACKET: function() { - return this.keyManager.checkStatus(219,this.status); - } - ,get_RBRACKET: function() { - return this.keyManager.checkStatus(221,this.status); - } - ,get_BACKSLASH: function() { - return this.keyManager.checkStatus(220,this.status); - } - ,get_CAPSLOCK: function() { - return this.keyManager.checkStatus(20,this.status); - } - ,get_SEMICOLON: function() { - return this.keyManager.checkStatus(186,this.status); - } - ,get_QUOTE: function() { - return this.keyManager.checkStatus(222,this.status); - } - ,get_ENTER: function() { - return this.keyManager.checkStatus(13,this.status); - } - ,get_SHIFT: function() { - return this.keyManager.checkStatus(16,this.status); - } - ,get_COMMA: function() { - return this.keyManager.checkStatus(188,this.status); - } - ,get_PERIOD: function() { - return this.keyManager.checkStatus(190,this.status); - } - ,get_SLASH: function() { - return this.keyManager.checkStatus(191,this.status); - } - ,get_GRAVEACCENT: function() { - return this.keyManager.checkStatus(192,this.status); - } - ,get_CONTROL: function() { - return this.keyManager.checkStatus(17,this.status); - } - ,get_ALT: function() { - return this.keyManager.checkStatus(18,this.status); - } - ,get_SPACE: function() { - return this.keyManager.checkStatus(32,this.status); - } - ,get_UP: function() { - return this.keyManager.checkStatus(38,this.status); - } - ,get_DOWN: function() { - return this.keyManager.checkStatus(40,this.status); - } - ,get_LEFT: function() { - return this.keyManager.checkStatus(37,this.status); - } - ,get_RIGHT: function() { - return this.keyManager.checkStatus(39,this.status); - } - ,get_TAB: function() { - return this.keyManager.checkStatus(9,this.status); - } - ,get_PRINTSCREEN: function() { - return this.keyManager.checkStatus(301,this.status); - } - ,get_F1: function() { - return this.keyManager.checkStatus(112,this.status); - } - ,get_F2: function() { - return this.keyManager.checkStatus(113,this.status); - } - ,get_F3: function() { - return this.keyManager.checkStatus(114,this.status); - } - ,get_F4: function() { - return this.keyManager.checkStatus(115,this.status); - } - ,get_F5: function() { - return this.keyManager.checkStatus(116,this.status); - } - ,get_F6: function() { - return this.keyManager.checkStatus(117,this.status); - } - ,get_F7: function() { - return this.keyManager.checkStatus(118,this.status); - } - ,get_F8: function() { - return this.keyManager.checkStatus(119,this.status); - } - ,get_F9: function() { - return this.keyManager.checkStatus(120,this.status); - } - ,get_F10: function() { - return this.keyManager.checkStatus(121,this.status); - } - ,get_F11: function() { - return this.keyManager.checkStatus(122,this.status); - } - ,get_F12: function() { - return this.keyManager.checkStatus(123,this.status); - } - ,get_NUMPADONE: function() { - return this.keyManager.checkStatus(97,this.status); - } - ,get_NUMPADTWO: function() { - return this.keyManager.checkStatus(98,this.status); - } - ,get_NUMPADTHREE: function() { - return this.keyManager.checkStatus(99,this.status); - } - ,get_NUMPADFOUR: function() { - return this.keyManager.checkStatus(100,this.status); - } - ,get_NUMPADFIVE: function() { - return this.keyManager.checkStatus(101,this.status); - } - ,get_NUMPADSIX: function() { - return this.keyManager.checkStatus(102,this.status); - } - ,get_NUMPADSEVEN: function() { - return this.keyManager.checkStatus(103,this.status); - } - ,get_NUMPADEIGHT: function() { - return this.keyManager.checkStatus(104,this.status); - } - ,get_NUMPADNINE: function() { - return this.keyManager.checkStatus(105,this.status); - } - ,get_NUMPADZERO: function() { - return this.keyManager.checkStatus(96,this.status); - } - ,get_NUMPADMINUS: function() { - return this.keyManager.checkStatus(109,this.status); - } - ,get_NUMPADPLUS: function() { - return this.keyManager.checkStatus(107,this.status); - } - ,get_NUMPADPERIOD: function() { - return this.keyManager.checkStatus(110,this.status); - } - ,get_NUMPADMULTIPLY: function() { - return this.keyManager.checkStatus(106,this.status); - } - ,__class__: flixel_input_keyboard_FlxKeyList - ,__properties__: $extend(flixel_input_FlxBaseKeyList.prototype.__properties__,{get_NUMPADMULTIPLY:"get_NUMPADMULTIPLY",get_NUMPADPERIOD:"get_NUMPADPERIOD",get_NUMPADPLUS:"get_NUMPADPLUS",get_NUMPADMINUS:"get_NUMPADMINUS",get_NUMPADZERO:"get_NUMPADZERO",get_NUMPADNINE:"get_NUMPADNINE",get_NUMPADEIGHT:"get_NUMPADEIGHT",get_NUMPADSEVEN:"get_NUMPADSEVEN",get_NUMPADSIX:"get_NUMPADSIX",get_NUMPADFIVE:"get_NUMPADFIVE",get_NUMPADFOUR:"get_NUMPADFOUR",get_NUMPADTHREE:"get_NUMPADTHREE",get_NUMPADTWO:"get_NUMPADTWO",get_NUMPADONE:"get_NUMPADONE",get_F12:"get_F12",get_F11:"get_F11",get_F10:"get_F10",get_F9:"get_F9",get_F8:"get_F8",get_F7:"get_F7",get_F6:"get_F6",get_F5:"get_F5",get_F4:"get_F4",get_F3:"get_F3",get_F2:"get_F2",get_F1:"get_F1",get_PRINTSCREEN:"get_PRINTSCREEN",get_TAB:"get_TAB",get_RIGHT:"get_RIGHT",get_LEFT:"get_LEFT",get_DOWN:"get_DOWN",get_UP:"get_UP",get_SPACE:"get_SPACE",get_ALT:"get_ALT",get_CONTROL:"get_CONTROL",get_GRAVEACCENT:"get_GRAVEACCENT",get_SLASH:"get_SLASH",get_PERIOD:"get_PERIOD",get_COMMA:"get_COMMA",get_SHIFT:"get_SHIFT",get_ENTER:"get_ENTER",get_QUOTE:"get_QUOTE",get_SEMICOLON:"get_SEMICOLON",get_CAPSLOCK:"get_CAPSLOCK",get_BACKSLASH:"get_BACKSLASH",get_RBRACKET:"get_RBRACKET",get_LBRACKET:"get_LBRACKET",get_BACKSPACE:"get_BACKSPACE",get_DELETE:"get_DELETE",get_PLUS:"get_PLUS",get_MINUS:"get_MINUS",get_ESCAPE:"get_ESCAPE",get_INSERT:"get_INSERT",get_END:"get_END",get_HOME:"get_HOME",get_PAGEDOWN:"get_PAGEDOWN",get_PAGEUP:"get_PAGEUP",get_NINE:"get_NINE",get_EIGHT:"get_EIGHT",get_SEVEN:"get_SEVEN",get_SIX:"get_SIX",get_FIVE:"get_FIVE",get_FOUR:"get_FOUR",get_THREE:"get_THREE",get_TWO:"get_TWO",get_ONE:"get_ONE",get_ZERO:"get_ZERO",get_Z:"get_Z",get_Y:"get_Y",get_X:"get_X",get_W:"get_W",get_V:"get_V",get_U:"get_U",get_T:"get_T",get_S:"get_S",get_R:"get_R",get_Q:"get_Q",get_P:"get_P",get_O:"get_O",get_N:"get_N",get_M:"get_M",get_L:"get_L",get_K:"get_K",get_J:"get_J",get_I:"get_I",get_H:"get_H",get_G:"get_G",get_F:"get_F",get_E:"get_E",get_D:"get_D",get_C:"get_C",get_B:"get_B",get_A:"get_A"}) -}); -var flixel_input_keyboard_FlxKeyboard = function() { - flixel_input_FlxKeyManager.call(this,function(status,keyManager) { - return new flixel_input_keyboard_FlxKeyList(status,keyManager); - }); - this.preventDefaultKeys = [38,40,37,39,32,9]; - var _this = flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.fromStringMap; - var code = new haxe_ds__$StringMap_StringMapIterator(_this,_this.arrayKeys()); - while(code.hasNext()) { - var code1 = code.next(); - if(code1 != -2 && code1 != -1) { - var input = new flixel_input_FlxInput(code1); - this._keyListArray.push(input); - this._keyListMap.h[code1] = input; - } - } -}; -$hxClasses["flixel.input.keyboard.FlxKeyboard"] = flixel_input_keyboard_FlxKeyboard; -flixel_input_keyboard_FlxKeyboard.__name__ = "flixel.input.keyboard.FlxKeyboard"; -flixel_input_keyboard_FlxKeyboard.__super__ = flixel_input_FlxKeyManager; -flixel_input_keyboard_FlxKeyboard.prototype = $extend(flixel_input_FlxKeyManager.prototype,{ - onKeyUp: function(event) { - flixel_input_FlxKeyManager.prototype.onKeyUp.call(this,event); - } - ,onKeyDown: function(event) { - flixel_input_FlxKeyManager.prototype.onKeyDown.call(this,event); - } - ,resolveKeyCode: function(e) { - return e.keyCode; - } - ,record: function() { - var data = null; - var _g = 0; - var _g1 = this._keyListArray; - while(_g < _g1.length) { - var key = _g1[_g]; - ++_g; - if(key == null || (key.current == 0 || key.current == -1)) { - continue; - } - if(data == null) { - data = []; - } - data.push(new flixel_system_replay_CodeValuePair(key.ID,key.current)); - } - return data; - } - ,playback: function(Record) { - var i = 0; - var l = Record.length; - while(i < l) { - var o = Record[i++]; - var o2 = this._keyListMap.h[o.code]; - o2.current = o.value; - } - } - ,__class__: flixel_input_keyboard_FlxKeyboard -}); -var lime_math_Vector2 = function(x,y) { - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - this.x = x; - this.y = y; -}; -$hxClasses["lime.math.Vector2"] = lime_math_Vector2; -lime_math_Vector2.__name__ = "lime.math.Vector2"; -lime_math_Vector2.distance = function(pt1,pt2) { - var dx = pt1.x - pt2.x; - var dy = pt1.y - pt2.y; - return Math.sqrt(dx * dx + dy * dy); -}; -lime_math_Vector2.interpolate = function(pt1,pt2,f,result) { - if(result == null) { - result = new lime_math_Vector2(); - } - result.x = pt2.x + f * (pt1.x - pt2.x); - result.y = pt2.y + f * (pt1.y - pt2.y); - return result; -}; -lime_math_Vector2.polar = function(len,angle,result) { - if(result == null) { - result = new lime_math_Vector2(); - } - var ya = len * Math.sin(angle); - result.x = len * Math.cos(angle); - result.y = ya; - return result; -}; -lime_math_Vector2.prototype = { - x: null - ,y: null - ,add: function(v,result) { - if(result == null) { - result = new lime_math_Vector2(); - } - result.x = v.x + this.x; - result.y = v.y + this.y; - return result; - } - ,clone: function() { - return new lime_math_Vector2(this.x,this.y); - } - ,equals: function(toCompare) { - if(toCompare != null && toCompare.x == this.x) { - return toCompare.y == this.y; - } else { - return false; - } - } - ,normalize: function(thickness) { - if(this.x == 0 && this.y == 0) { - return; - } else { - var norm = thickness / Math.sqrt(this.x * this.x + this.y * this.y); - this.x *= norm; - this.y *= norm; - } - } - ,offset: function(dx,dy) { - this.x += dx; - this.y += dy; - } - ,setTo: function(xa,ya) { - this.x = xa; - this.y = ya; - } - ,subtract: function(v,result) { - if(result == null) { - result = new lime_math_Vector2(); - } - result.x = this.x - v.x; - result.y = this.y - v.y; - return result; - } - ,__toFlashPoint: function() { - return null; - } - ,get_length: function() { - return Math.sqrt(this.x * this.x + this.y * this.y); - } - ,get_lengthSquared: function() { - return this.x * this.x + this.y * this.y; - } - ,__class__: lime_math_Vector2 - ,__properties__: {get_lengthSquared:"get_lengthSquared",get_length:"get_length"} -}; -var openfl_display_BitmapData = function(width,height,transparent,fillColor) { - if(fillColor == null) { - fillColor = -1; - } - if(transparent == null) { - transparent = true; - } - this.transparent = transparent; - width = width == null ? 0 : width; - height = height == null ? 0 : height; - width = width < 0 ? 0 : width; - height = height < 0 ? 0 : height; - this.width = width; - this.height = height; - this.rect = new openfl_geom_Rectangle(0,0,width,height); - this.__textureWidth = width; - this.__textureHeight = height; - if(width > 0 && height > 0) { - if(transparent) { - if((fillColor & -16777216) == 0) { - fillColor = 0; - } - } else { - fillColor = -16777216 | fillColor & 16777215; - } - fillColor = fillColor << 8 | fillColor >>> 24 & 255; - this.image = new lime_graphics_Image(null,0,0,width,height,fillColor); - this.image.set_transparent(transparent); - this.__isValid = true; - this.readable = true; - } - this.__renderTransform = new openfl_geom_Matrix(); - this.__worldAlpha = 1; - this.__worldTransform = new openfl_geom_Matrix(); - this.__worldColorTransform = new openfl_geom_ColorTransform(); - this.__renderable = true; -}; -$hxClasses["openfl.display.BitmapData"] = openfl_display_BitmapData; -openfl_display_BitmapData.__name__ = "openfl.display.BitmapData"; -openfl_display_BitmapData.__interfaces__ = [openfl_display_IBitmapDrawable]; -openfl_display_BitmapData.__textureFormat = null; -openfl_display_BitmapData.__textureInternalFormat = null; -openfl_display_BitmapData.fromBase64 = function(base64,type) { - return null; -}; -openfl_display_BitmapData.fromBytes = function(bytes,rawAlpha) { - return null; -}; -openfl_display_BitmapData.fromCanvas = function(canvas,transparent) { - if(transparent == null) { - transparent = true; - } - if(canvas == null) { - return null; - } - var bitmapData = new openfl_display_BitmapData(0,0,transparent,0); - bitmapData.__fromImage(lime_graphics_Image.fromCanvas(canvas)); - bitmapData.image.set_transparent(transparent); - return bitmapData; -}; -openfl_display_BitmapData.fromFile = function(path) { - return null; -}; -openfl_display_BitmapData.fromImage = function(image,transparent) { - if(transparent == null) { - transparent = true; - } - if(image == null || image.buffer == null) { - return null; - } - var bitmapData = new openfl_display_BitmapData(0,0,transparent,0); - bitmapData.__fromImage(image); - bitmapData.image.set_transparent(transparent); - if(bitmapData.image != null) { - return bitmapData; - } else { - return null; - } -}; -openfl_display_BitmapData.fromTexture = function(texture) { - if(texture == null) { - return null; - } - var bitmapData = new openfl_display_BitmapData(texture.__width,texture.__height,true,0); - bitmapData.readable = false; - bitmapData.__texture = texture; - bitmapData.__textureContext = texture.__textureContext; - bitmapData.image = null; - return bitmapData; -}; -openfl_display_BitmapData.loadFromBase64 = function(base64,type) { - return lime_graphics_Image.loadFromBase64(base64,type).then(function(image) { - return lime_app_Future.withValue(openfl_display_BitmapData.fromImage(image)); - }); -}; -openfl_display_BitmapData.loadFromBytes = function(bytes,rawAlpha) { - return lime_graphics_Image.loadFromBytes(openfl_utils__$ByteArray_ByteArray_$Impl_$.toBytes(bytes)).then(function(image) { - var bitmapData = openfl_display_BitmapData.fromImage(image); - if(rawAlpha != null) { - bitmapData.__applyAlpha(rawAlpha); - } - return lime_app_Future.withValue(bitmapData); - }); -}; -openfl_display_BitmapData.loadFromFile = function(path) { - return lime_graphics_Image.loadFromFile(path).then(function(image) { - return lime_app_Future.withValue(openfl_display_BitmapData.fromImage(image)); - }); -}; -openfl_display_BitmapData.prototype = { - height: null - ,image: null - ,readable: null - ,rect: null - ,transparent: null - ,width: null - ,__blendMode: null - ,__framebuffer: null - ,__framebufferContext: null - ,__indexBuffer: null - ,__indexBufferContext: null - ,__indexBufferData: null - ,__indexBufferGrid: null - ,__isMask: null - ,__isValid: null - ,__mask: null - ,__renderable: null - ,__renderTransform: null - ,__scrollRect: null - ,__stencilBuffer: null - ,__surface: null - ,__symbol: null - ,__texture: null - ,__textureContext: null - ,__textureHeight: null - ,__textureVersion: null - ,__textureWidth: null - ,__transform: null - ,__uvRect: null - ,__vertexBuffer: null - ,__vertexBufferContext: null - ,__vertexBufferData: null - ,__vertexBufferGrid: null - ,__vertexBufferHeight: null - ,__vertexBufferScaleX: null - ,__vertexBufferScaleY: null - ,__vertexBufferWidth: null - ,__worldAlpha: null - ,__worldColorTransform: null - ,__worldTransform: null - ,applyFilter: function(sourceBitmapData,sourceRect,destPoint,filter) { - if(!this.readable || sourceBitmapData == null || !sourceBitmapData.readable) { - return; - } - var needSecondBitmapData = filter.__needSecondBitmapData; - var needCopyOfOriginal = filter.__preserveObject; - var bitmapData2 = null; - var bitmapData3 = null; - if(needSecondBitmapData) { - bitmapData2 = new openfl_display_BitmapData(this.width,this.height,true,0); - } else { - bitmapData2 = this; - } - if(needCopyOfOriginal) { - bitmapData3 = new openfl_display_BitmapData(this.width,this.height,true,0); - } - if(filter.__preserveObject) { - bitmapData3.copyPixels(this,this.rect,destPoint); - } - var lastBitmap = filter.__applyFilter(bitmapData2,this,sourceRect,destPoint); - if(filter.__preserveObject) { - lastBitmap.draw(bitmapData3,null,null); - } - if(needSecondBitmapData && lastBitmap == bitmapData2) { - bitmapData2.image.version = this.image.version; - this.image = bitmapData2.image; - } - this.image.dirty = true; - this.image.version++; - } - ,clone: function() { - var bitmapData; - if(!this.__isValid) { - bitmapData = new openfl_display_BitmapData(this.width,this.height,this.transparent,0); - } else if(!this.readable && this.image == null) { - bitmapData = new openfl_display_BitmapData(0,0,this.transparent,0); - bitmapData.width = this.width; - bitmapData.height = this.height; - bitmapData.__textureWidth = this.__textureWidth; - bitmapData.__textureHeight = this.__textureHeight; - bitmapData.rect.copyFrom(this.rect); - bitmapData.__framebuffer = this.__framebuffer; - bitmapData.__framebufferContext = this.__framebufferContext; - bitmapData.__texture = this.__texture; - bitmapData.__textureContext = this.__textureContext; - bitmapData.__isValid = true; - } else { - bitmapData = openfl_display_BitmapData.fromImage(this.image.clone(),this.transparent); - } - bitmapData.__worldTransform.copyFrom(this.__worldTransform); - bitmapData.__renderTransform.copyFrom(this.__renderTransform); - return bitmapData; - } - ,colorTransform: function(rect,colorTransform) { - if(!this.readable) { - return; - } - this.image.colorTransform(rect.__toLimeRectangle(),colorTransform.__toLimeColorMatrix()); - } - ,compare: function(otherBitmapData) { - if(otherBitmapData == this) { - return 0; - } else if(otherBitmapData == null) { - return -1; - } else if(this.readable == false || otherBitmapData.readable == false) { - return -2; - } else if(this.width != otherBitmapData.width) { - return -3; - } else if(this.height != otherBitmapData.height) { - return -4; - } - if(this.image != null && otherBitmapData.image != null && this.image.get_format() == otherBitmapData.image.get_format()) { - var bytes = this.image.get_data(); - var otherBytes = otherBitmapData.image.get_data(); - var equal = true; - var _g = 0; - var _g1 = bytes.length; - while(_g < _g1) { - var i = _g++; - if(bytes[i] != otherBytes[i]) { - equal = false; - break; - } - } - if(equal) { - return 0; - } - } - var bitmapData = null; - var foundDifference; - var pixel; - var otherPixel; - var comparePixel; - var r; - var g; - var b; - var a; - var _g2 = 0; - var _g11 = this.height; - while(_g2 < _g11) { - var y = _g2++; - var _g3 = 0; - var _g12 = this.width; - while(_g3 < _g12) { - var x = _g3++; - foundDifference = false; - pixel = this.getPixel32(x,y); - otherPixel = otherBitmapData.getPixel32(x,y); - comparePixel = 0; - if(pixel != otherPixel) { - r = (pixel >>> 16 & 255) - (otherPixel >>> 16 & 255); - g = (pixel >>> 8 & 255) - (otherPixel >>> 8 & 255); - b = (pixel & 255) - (otherPixel & 255); - if(r < 0) { - r *= -1; - } - if(g < 0) { - g *= -1; - } - if(b < 0) { - b *= -1; - } - if(r == 0 && g == 0 && b == 0) { - a = (pixel >>> 24 & 255) - (otherPixel >>> 24 & 255); - if(a != 0) { - comparePixel = (comparePixel >>> 24 & 255 & 255) << 24 | 16711680 | (comparePixel >>> 8 & 255 & 255) << 8 | comparePixel & 255 & 255; - comparePixel = (comparePixel >>> 24 & 255 & 255) << 24 | (comparePixel >>> 16 & 255 & 255) << 16 | 65280 | comparePixel & 255 & 255; - comparePixel = (comparePixel >>> 24 & 255 & 255) << 24 | (comparePixel >>> 16 & 255 & 255) << 16 | (comparePixel >>> 8 & 255 & 255) << 8 | 255; - comparePixel = (a & 255) << 24 | (comparePixel >>> 16 & 255 & 255) << 16 | (comparePixel >>> 8 & 255 & 255) << 8 | comparePixel & 255 & 255; - foundDifference = true; - } - } else { - comparePixel = (comparePixel >>> 24 & 255 & 255) << 24 | (r & 255) << 16 | (comparePixel >>> 8 & 255 & 255) << 8 | comparePixel & 255 & 255; - comparePixel = (comparePixel >>> 24 & 255 & 255) << 24 | (comparePixel >>> 16 & 255 & 255) << 16 | (g & 255) << 8 | comparePixel & 255 & 255; - comparePixel = (comparePixel >>> 24 & 255 & 255) << 24 | (comparePixel >>> 16 & 255 & 255) << 16 | (comparePixel >>> 8 & 255 & 255) << 8 | b & 255; - comparePixel = -16777216 | (comparePixel >>> 16 & 255 & 255) << 16 | (comparePixel >>> 8 & 255 & 255) << 8 | comparePixel & 255 & 255; - foundDifference = true; - } - } - if(foundDifference) { - if(bitmapData == null) { - bitmapData = new openfl_display_BitmapData(this.width,this.height,this.transparent || otherBitmapData.transparent,0); - } - bitmapData.setPixel32(x,y,comparePixel); - } - } - } - if(bitmapData == null) { - return 0; - } - return bitmapData; - } - ,copyChannel: function(sourceBitmapData,sourceRect,destPoint,sourceChannel,destChannel) { - if(!this.readable) { - return; - } - var sourceChannel1; - switch(sourceChannel) { - case 1: - sourceChannel1 = lime_graphics_ImageChannel.RED; - break; - case 2: - sourceChannel1 = lime_graphics_ImageChannel.GREEN; - break; - case 4: - sourceChannel1 = lime_graphics_ImageChannel.BLUE; - break; - case 8: - sourceChannel1 = lime_graphics_ImageChannel.ALPHA; - break; - default: - return; - } - var destChannel1; - switch(destChannel) { - case 1: - destChannel1 = lime_graphics_ImageChannel.RED; - break; - case 2: - destChannel1 = lime_graphics_ImageChannel.GREEN; - break; - case 4: - destChannel1 = lime_graphics_ImageChannel.BLUE; - break; - case 8: - destChannel1 = lime_graphics_ImageChannel.ALPHA; - break; - default: - return; - } - this.image.copyChannel(sourceBitmapData.image,sourceRect.__toLimeRectangle(),destPoint.__toLimeVector2(),sourceChannel1,destChannel1); - } - ,copyPixels: function(sourceBitmapData,sourceRect,destPoint,alphaBitmapData,alphaPoint,mergeAlpha) { - if(mergeAlpha == null) { - mergeAlpha = false; - } - if(!this.readable || sourceBitmapData == null) { - return; - } - if(alphaPoint != null) { - openfl_display_BitmapData.__tempVector.x = alphaPoint.x; - openfl_display_BitmapData.__tempVector.y = alphaPoint.y; - } - this.image.copyPixels(sourceBitmapData.image,sourceRect.__toLimeRectangle(),destPoint.__toLimeVector2(),alphaBitmapData != null ? alphaBitmapData.image : null,alphaPoint != null ? openfl_display_BitmapData.__tempVector : null,mergeAlpha); - } - ,dispose: function() { - this.image = null; - this.width = 0; - this.height = 0; - this.rect = null; - this.__isValid = false; - this.readable = false; - this.__surface = null; - this.__vertexBuffer = null; - this.__framebuffer = null; - this.__framebufferContext = null; - this.__texture = null; - this.__textureContext = null; - } - ,disposeImage: function() { - this.readable = false; - } - ,draw: function(source,matrix,colorTransform,blendMode,clipRect,smoothing) { - if(smoothing == null) { - smoothing = false; - } - if(source == null) { - return; - } - source.__update(false,true); - var transform = openfl_geom_Matrix.__pool.get(); - transform.copyFrom(source.__renderTransform); - transform.invert(); - if(matrix != null) { - transform.concat(matrix); - } - var clipMatrix = null; - if(clipRect != null) { - clipMatrix = openfl_geom_Matrix.__pool.get(); - clipMatrix.copyFrom(transform); - clipMatrix.invert(); - } - var _colorTransform = new openfl_geom_ColorTransform(); - _colorTransform.__copyFrom(source.__worldColorTransform); - _colorTransform.__invert(); - if(!this.readable && openfl_Lib.get_current().stage.context3D != null) { - if(this.__textureContext == null) { - this.__textureContext = lime_app_Application.current.__window.context; - } - if(colorTransform != null) { - _colorTransform.__combine(colorTransform); - } - var renderer = new openfl_display_OpenGLRenderer(openfl_Lib.get_current().stage.context3D,this); - renderer.__allowSmoothing = smoothing; - renderer.__overrideBlendMode = blendMode; - renderer.__worldTransform = transform; - renderer.__worldAlpha = 1 / source.__worldAlpha; - renderer.__worldColorTransform = _colorTransform; - renderer.__resize(this.width,this.height); - if(clipRect != null) { - renderer.__pushMaskRect(clipRect,clipMatrix); - } - this.__drawGL(source,renderer); - if(clipRect != null) { - renderer.__popMaskRect(); - openfl_geom_Matrix.__pool.release(clipMatrix); - } - } else { - if(colorTransform != null) { - var bounds = openfl_geom_Rectangle.__pool.get(); - var boundsMatrix = openfl_geom_Matrix.__pool.get(); - source.__getBounds(bounds,boundsMatrix); - var width = Math.ceil(bounds.width); - var height = Math.ceil(bounds.height); - boundsMatrix.tx = -bounds.x; - boundsMatrix.ty = -bounds.y; - var copy = new openfl_display_BitmapData(width,height,true,0); - copy.draw(source,boundsMatrix); - copy.colorTransform(copy.rect,colorTransform); - copy.__renderTransform.identity(); - copy.__renderTransform.tx = bounds.x; - copy.__renderTransform.ty = bounds.y; - copy.__renderTransform.concat(source.__renderTransform); - copy.__worldAlpha = source.__worldAlpha; - copy.__worldColorTransform.__copyFrom(source.__worldColorTransform); - source = copy; - openfl_geom_Rectangle.__pool.release(bounds); - openfl_geom_Matrix.__pool.release(boundsMatrix); - } - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(this.image); - var renderer1 = new openfl_display_CanvasRenderer(this.image.buffer.__srcContext); - renderer1.__allowSmoothing = smoothing; - renderer1.__overrideBlendMode = blendMode; - renderer1.__worldTransform = transform; - renderer1.__worldAlpha = 1 / source.__worldAlpha; - renderer1.__worldColorTransform = _colorTransform; - if(clipRect != null) { - renderer1.__pushMaskRect(clipRect,clipMatrix); - } - this.__drawCanvas(source,renderer1); - if(clipRect != null) { - renderer1.__popMaskRect(); - openfl_geom_Matrix.__pool.release(clipMatrix); - } - } - openfl_geom_Matrix.__pool.release(transform); - } - ,drawWithQuality: function(source,matrix,colorTransform,blendMode,clipRect,smoothing,quality) { - if(smoothing == null) { - smoothing = false; - } - this.draw(source,matrix,colorTransform,blendMode,clipRect,quality != 2 && smoothing); - } - ,encode: function(rect,compressor,byteArray) { - if(!this.readable || rect == null) { - byteArray = null; - return byteArray; - } - if(byteArray == null) { - var this1 = new openfl_utils_ByteArrayData(0); - byteArray = this1; - } - var image = this.image; - if(!rect.equals(this.rect)) { - var matrix = openfl_geom_Matrix.__pool.get(); - matrix.tx = Math.round(-rect.x); - matrix.ty = Math.round(-rect.y); - var bitmapData = new openfl_display_BitmapData(Math.ceil(rect.width),Math.ceil(rect.height),true,0); - bitmapData.draw(this,matrix); - image = bitmapData.image; - openfl_geom_Matrix.__pool.release(matrix); - } - if(((compressor) instanceof openfl_display_PNGEncoderOptions)) { - byteArray.writeBytes(openfl_utils__$ByteArray_ByteArray_$Impl_$.fromBytes(image.encode(lime_graphics_ImageFileFormat.PNG)),0,0); - return byteArray; - } else if(((compressor) instanceof openfl_display_JPEGEncoderOptions)) { - byteArray.writeBytes(openfl_utils__$ByteArray_ByteArray_$Impl_$.fromBytes(image.encode(lime_graphics_ImageFileFormat.JPEG,(js_Boot.__cast(compressor , openfl_display_JPEGEncoderOptions)).quality)),0,0); - return byteArray; - } - byteArray = null; - return byteArray; - } - ,fillRect: function(rect,color) { - this.__fillRect(rect,color,true); - } - ,floodFill: function(x,y,color) { - if(!this.readable) { - return; - } - this.image.floodFill(x,y,color,1); - } - ,generateFilterRect: function(sourceRect,filter) { - return sourceRect.clone(); - } - ,getIndexBuffer: function(context,scale9Grid) { - var gl = context.gl; - if(this.__indexBuffer == null || this.__indexBufferContext != context.__context || scale9Grid != null && this.__indexBufferGrid == null || this.__indexBufferGrid != null && !this.__indexBufferGrid.equals(scale9Grid)) { - this.__indexBufferContext = context.__context; - this.__indexBuffer = null; - if(scale9Grid != null) { - if(this.__indexBufferGrid == null) { - this.__indexBufferGrid = new openfl_geom_Rectangle(); - } - this.__indexBufferGrid.copyFrom(scale9Grid); - var centerX = scale9Grid.width; - var centerY = scale9Grid.height; - if(centerX != 0 && centerY != 0) { - var array = null; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this1 = new Uint16Array(54); - this.__indexBufferData = this1; - 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.__indexBufferData[6] = 4; - this.__indexBufferData[7] = 0; - this.__indexBufferData[8] = 5; - this.__indexBufferData[9] = 5; - this.__indexBufferData[10] = 0; - this.__indexBufferData[11] = 2; - this.__indexBufferData[12] = 6; - this.__indexBufferData[13] = 4; - this.__indexBufferData[14] = 7; - this.__indexBufferData[15] = 7; - this.__indexBufferData[16] = 4; - this.__indexBufferData[17] = 5; - this.__indexBufferData[18] = 8; - this.__indexBufferData[19] = 9; - this.__indexBufferData[20] = 0; - this.__indexBufferData[21] = 0; - this.__indexBufferData[22] = 9; - this.__indexBufferData[23] = 1; - this.__indexBufferData[24] = 10; - this.__indexBufferData[25] = 8; - this.__indexBufferData[26] = 4; - this.__indexBufferData[27] = 4; - this.__indexBufferData[28] = 8; - this.__indexBufferData[29] = 0; - this.__indexBufferData[30] = 11; - this.__indexBufferData[31] = 10; - this.__indexBufferData[32] = 6; - this.__indexBufferData[33] = 6; - this.__indexBufferData[34] = 10; - this.__indexBufferData[35] = 4; - this.__indexBufferData[36] = 12; - this.__indexBufferData[37] = 13; - this.__indexBufferData[38] = 8; - this.__indexBufferData[39] = 8; - this.__indexBufferData[40] = 13; - this.__indexBufferData[41] = 9; - this.__indexBufferData[42] = 14; - this.__indexBufferData[43] = 12; - this.__indexBufferData[44] = 10; - this.__indexBufferData[45] = 10; - this.__indexBufferData[46] = 12; - this.__indexBufferData[47] = 8; - this.__indexBufferData[48] = 15; - this.__indexBufferData[49] = 14; - this.__indexBufferData[50] = 11; - this.__indexBufferData[51] = 11; - this.__indexBufferData[52] = 14; - this.__indexBufferData[53] = 10; - this.__indexBuffer = context.createIndexBuffer(54); - } else if(centerX == 0 && centerY != 0) { - var array1 = null; - var vector1 = null; - var view1 = null; - var buffer1 = null; - var len1 = null; - var this2 = new Uint16Array(18); - this.__indexBufferData = this2; - 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.__indexBufferData[6] = 4; - this.__indexBufferData[7] = 5; - this.__indexBufferData[8] = 0; - this.__indexBufferData[9] = 0; - this.__indexBufferData[10] = 5; - this.__indexBufferData[11] = 1; - this.__indexBufferData[12] = 6; - this.__indexBufferData[13] = 7; - this.__indexBufferData[14] = 4; - this.__indexBufferData[15] = 4; - this.__indexBufferData[16] = 7; - this.__indexBufferData[17] = 5; - this.__indexBuffer = context.createIndexBuffer(18); - } else if(centerX != 0 && centerY == 0) { - var array2 = null; - var vector2 = null; - var view2 = null; - var buffer2 = null; - var len2 = null; - var this3 = new Uint16Array(18); - this.__indexBufferData = this3; - 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.__indexBufferData[6] = 4; - this.__indexBufferData[7] = 0; - this.__indexBufferData[8] = 5; - this.__indexBufferData[9] = 5; - this.__indexBufferData[10] = 0; - this.__indexBufferData[11] = 2; - this.__indexBufferData[12] = 6; - this.__indexBufferData[13] = 4; - this.__indexBufferData[14] = 7; - this.__indexBufferData[15] = 7; - this.__indexBufferData[16] = 4; - this.__indexBufferData[17] = 5; - this.__indexBuffer = context.createIndexBuffer(18); - } - } else { - this.__indexBufferGrid = null; - } - if(this.__indexBuffer == null) { - var array3 = null; - var vector3 = null; - var view3 = null; - var buffer3 = null; - var len3 = null; - var this4 = new Uint16Array(6); - this.__indexBufferData = this4; - 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.__indexBuffer = context.createIndexBuffer(6); - } - this.__indexBuffer.uploadFromTypedArray(this.__indexBufferData); - } - return this.__indexBuffer; - } - ,getVertexBuffer: function(context,scale9Grid,targetObject) { - var gl = context.gl; - if(this.__vertexBuffer == null || this.__vertexBufferContext != context.__context || scale9Grid != null && this.__vertexBufferGrid == null || this.__vertexBufferGrid != null && !this.__vertexBufferGrid.equals(scale9Grid) || targetObject != null && (this.__vertexBufferWidth != targetObject.get_width() || this.__vertexBufferHeight != targetObject.get_height() || this.__vertexBufferScaleX != targetObject.get_scaleX() || this.__vertexBufferScaleY != targetObject.get_scaleY())) { - this.__uvRect = new openfl_geom_Rectangle(0,0,this.width,this.height); - var uvWidth = 1; - var uvHeight = 1; - this.__vertexBufferContext = context.__context; - this.__vertexBuffer = null; - if(targetObject != null) { - this.__vertexBufferWidth = targetObject.get_width(); - this.__vertexBufferHeight = targetObject.get_height(); - this.__vertexBufferScaleX = targetObject.get_scaleX(); - this.__vertexBufferScaleY = targetObject.get_scaleY(); - } - if(scale9Grid != null && targetObject != null) { - if(this.__vertexBufferGrid == null) { - this.__vertexBufferGrid = new openfl_geom_Rectangle(); - } - this.__vertexBufferGrid.copyFrom(scale9Grid); - this.__vertexBufferWidth = targetObject.get_width(); - this.__vertexBufferHeight = targetObject.get_height(); - this.__vertexBufferScaleX = targetObject.get_scaleX(); - this.__vertexBufferScaleY = targetObject.get_scaleY(); - var centerX = scale9Grid.width; - var centerY = scale9Grid.height; - if(centerX != 0 && centerY != 0) { - var array = null; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this1 = new Float32Array(224); - this.__vertexBufferData = this1; - var left = scale9Grid.x; - var top = scale9Grid.y; - var right = this.width - centerX - left; - var bottom = this.height - centerY - top; - var uvLeft = left / this.width; - var uvTop = top / this.height; - var uvCenterX = centerX / this.width; - var uvCenterY = centerY / this.height; - var uvRight = right / this.width; - var uvBottom = bottom / this.height; - var renderedLeft = left / targetObject.get_scaleX(); - var renderedTop = top / targetObject.get_scaleY(); - var renderedRight = right / targetObject.get_scaleX(); - var renderedBottom = bottom / targetObject.get_scaleY(); - var renderedCenterX = targetObject.get_width() / targetObject.get_scaleX() - renderedLeft - renderedRight; - var renderedCenterY = targetObject.get_height() / targetObject.get_scaleY() - renderedTop - renderedBottom; - this.__vertexBufferData[0] = renderedLeft; - this.__vertexBufferData[1] = renderedTop; - this.__vertexBufferData[3] = uvWidth * uvLeft; - this.__vertexBufferData[4] = uvHeight * uvTop; - this.__vertexBufferData[15] = renderedTop; - this.__vertexBufferData[18] = uvHeight * uvTop; - this.__vertexBufferData[28] = renderedLeft; - this.__vertexBufferData[31] = uvWidth * uvLeft; - this.__vertexBufferData[56] = renderedLeft + renderedCenterX; - this.__vertexBufferData[57] = renderedTop; - this.__vertexBufferData[59] = uvWidth * (uvLeft + uvCenterX); - this.__vertexBufferData[60] = uvHeight * uvTop; - this.__vertexBufferData[70] = renderedLeft + renderedCenterX; - this.__vertexBufferData[73] = uvWidth * (uvLeft + uvCenterX); - this.__vertexBufferData[84] = this.width; - this.__vertexBufferData[85] = renderedTop; - this.__vertexBufferData[87] = uvWidth; - this.__vertexBufferData[88] = uvHeight * uvTop; - this.__vertexBufferData[98] = this.width; - this.__vertexBufferData[101] = uvWidth; - this.__vertexBufferData[112] = renderedLeft; - this.__vertexBufferData[113] = renderedTop + renderedCenterY; - this.__vertexBufferData[115] = uvWidth * uvLeft; - this.__vertexBufferData[116] = uvHeight * (uvTop + uvCenterY); - this.__vertexBufferData[127] = renderedTop + renderedCenterY; - this.__vertexBufferData[130] = uvHeight * (uvTop + uvCenterY); - this.__vertexBufferData[140] = renderedLeft + renderedCenterX; - this.__vertexBufferData[141] = renderedTop + renderedCenterY; - this.__vertexBufferData[143] = uvWidth * (uvLeft + uvCenterX); - this.__vertexBufferData[144] = uvHeight * (uvTop + uvCenterY); - this.__vertexBufferData[154] = this.width; - this.__vertexBufferData[155] = renderedTop + renderedCenterY; - this.__vertexBufferData[157] = uvWidth; - this.__vertexBufferData[158] = uvHeight * (uvTop + uvCenterY); - this.__vertexBufferData[168] = renderedLeft; - this.__vertexBufferData[169] = this.height; - this.__vertexBufferData[171] = uvWidth * uvLeft; - this.__vertexBufferData[172] = uvHeight; - this.__vertexBufferData[183] = this.height; - this.__vertexBufferData[186] = uvHeight; - this.__vertexBufferData[196] = renderedLeft + renderedCenterX; - this.__vertexBufferData[197] = this.height; - this.__vertexBufferData[199] = uvWidth * (uvLeft + uvCenterX); - this.__vertexBufferData[200] = uvHeight; - this.__vertexBufferData[210] = this.width; - this.__vertexBufferData[211] = this.height; - this.__vertexBufferData[213] = uvWidth; - this.__vertexBufferData[214] = uvHeight; - this.__vertexBuffer = context.createVertexBuffer(16,14); - } else if(centerX == 0 && centerY != 0) { - var array1 = null; - var vector1 = null; - var view1 = null; - var buffer1 = null; - var len1 = null; - var this2 = new Float32Array(112); - this.__vertexBufferData = this2; - var top1 = scale9Grid.y; - var bottom1 = this.height - centerY - top1; - var uvTop1 = top1 / this.height; - var uvCenterY1 = centerY / this.height; - var uvBottom1 = bottom1 / this.height; - var renderedTop1 = top1 / targetObject.get_scaleY(); - var renderedBottom1 = bottom1 / targetObject.get_scaleY(); - var renderedCenterY1 = targetObject.get_height() / targetObject.get_scaleY() - renderedTop1 - renderedBottom1; - var renderedWidth = targetObject.get_width() / targetObject.get_scaleX(); - this.__vertexBufferData[0] = renderedWidth; - this.__vertexBufferData[1] = renderedTop1; - this.__vertexBufferData[3] = uvWidth; - this.__vertexBufferData[4] = uvHeight * uvTop1; - this.__vertexBufferData[15] = renderedTop1; - this.__vertexBufferData[18] = uvHeight * uvTop1; - this.__vertexBufferData[28] = renderedWidth; - this.__vertexBufferData[31] = uvWidth; - this.__vertexBufferData[56] = renderedWidth; - this.__vertexBufferData[57] = renderedTop1 + renderedCenterY1; - this.__vertexBufferData[59] = uvWidth; - this.__vertexBufferData[60] = uvHeight * (uvTop1 + uvCenterY1); - this.__vertexBufferData[71] = renderedTop1 + renderedCenterY1; - this.__vertexBufferData[74] = uvHeight * (uvTop1 + uvCenterY1); - this.__vertexBufferData[84] = renderedWidth; - this.__vertexBufferData[85] = this.height; - this.__vertexBufferData[87] = uvWidth; - this.__vertexBufferData[88] = uvHeight; - this.__vertexBufferData[99] = this.height; - this.__vertexBufferData[102] = uvHeight; - this.__vertexBuffer = context.createVertexBuffer(8,14); - } else if(centerY == 0 && centerX != 0) { - var array2 = null; - var vector2 = null; - var view2 = null; - var buffer2 = null; - var len2 = null; - var this3 = new Float32Array(112); - this.__vertexBufferData = this3; - var left1 = scale9Grid.x; - var right1 = this.width - centerX - left1; - var uvLeft1 = left1 / this.width; - var uvCenterX1 = centerX / this.width; - var uvRight1 = right1 / this.width; - var renderedLeft1 = left1 / targetObject.get_scaleX(); - var renderedRight1 = right1 / targetObject.get_scaleX(); - var renderedCenterX1 = targetObject.get_width() / targetObject.get_scaleX() - renderedLeft1 - renderedRight1; - var renderedHeight = targetObject.get_height() / targetObject.get_scaleY(); - this.__vertexBufferData[0] = renderedLeft1; - this.__vertexBufferData[1] = renderedHeight; - this.__vertexBufferData[3] = uvWidth * uvLeft1; - this.__vertexBufferData[4] = uvHeight; - this.__vertexBufferData[15] = renderedHeight; - this.__vertexBufferData[18] = uvHeight; - this.__vertexBufferData[28] = renderedLeft1; - this.__vertexBufferData[31] = uvWidth * uvLeft1; - this.__vertexBufferData[56] = renderedLeft1 + renderedCenterX1; - this.__vertexBufferData[57] = renderedHeight; - this.__vertexBufferData[59] = uvWidth * (uvLeft1 + uvCenterX1); - this.__vertexBufferData[60] = uvHeight; - this.__vertexBufferData[70] = renderedLeft1 + renderedCenterX1; - this.__vertexBufferData[73] = uvWidth * (uvLeft1 + uvCenterX1); - this.__vertexBufferData[84] = this.width; - this.__vertexBufferData[85] = renderedHeight; - this.__vertexBufferData[87] = uvWidth; - this.__vertexBufferData[88] = uvHeight; - this.__vertexBufferData[98] = this.width; - this.__vertexBufferData[101] = uvWidth; - this.__vertexBuffer = context.createVertexBuffer(8,14); - } - } else { - this.__vertexBufferGrid = null; - } - if(this.__vertexBuffer == null) { - var array3 = null; - var vector3 = null; - var view3 = null; - var buffer3 = null; - var len3 = null; - var this4 = new Float32Array(56); - this.__vertexBufferData = this4; - this.__vertexBufferData[0] = this.width; - this.__vertexBufferData[1] = this.height; - this.__vertexBufferData[3] = uvWidth; - this.__vertexBufferData[4] = uvHeight; - this.__vertexBufferData[15] = this.height; - this.__vertexBufferData[18] = uvHeight; - this.__vertexBufferData[28] = this.width; - this.__vertexBufferData[31] = uvWidth; - this.__vertexBuffer = context.createVertexBuffer(3,14); - } - this.__vertexBuffer.uploadFromTypedArray(this.__vertexBufferData); - } - return this.__vertexBuffer; - } - ,getColorBoundsRect: function(mask,color,findColor) { - if(findColor == null) { - findColor = true; - } - if(!this.readable) { - return new openfl_geom_Rectangle(0,0,this.width,this.height); - } - if(!this.transparent || (mask >> 24 & 255) > 0) { - var color1 = color; - if((color1 >>> 24 & 255) == 0) { - color1 = 0; - } - } - var rect = this.image.getColorBoundsRect(mask,color,findColor,1); - return new openfl_geom_Rectangle(rect.x,rect.y,rect.width,rect.height); - } - ,getPixel: function(x,y) { - if(!this.readable) { - return 0; - } - return this.image.getPixel(x,y,1); - } - ,getPixel32: function(x,y) { - if(!this.readable) { - return 0; - } - return this.image.getPixel32(x,y,1); - } - ,getPixels: function(rect) { - if(!this.readable) { - return null; - } - if(rect == null) { - rect = this.rect; - } - var byteArray = openfl_utils__$ByteArray_ByteArray_$Impl_$.fromBytes(this.image.getPixels(rect.__toLimeRectangle(),1)); - byteArray.__endian = 0; - return byteArray; - } - ,getSurface: function() { - if(!this.readable) { - return null; - } - if(this.__surface == null) { - this.__surface = lime_graphics_cairo__$CairoImageSurface_CairoImageSurface_$Impl_$.fromImage(this.image); - } - return this.__surface; - } - ,getTexture: function(context) { - if(!this.__isValid) { - return null; - } - if(this.__texture == null || this.__textureContext != context.__context) { - this.__textureContext = context.__context; - this.__texture = context.createRectangleTexture(this.width,this.height,1,false); - this.__textureVersion = -1; - } - lime__$internal_graphics_ImageCanvasUtil.sync(this.image,false); - if(this.image != null && this.image.version > this.__textureVersion) { - if(this.__surface != null) { - lime_graphics_cairo__$CairoSurface_CairoSurface_$Impl_$.flush(this.__surface); - } - var textureImage = this.image; - if(!openfl_display3D_textures_TextureBase.__supportsBGRA && textureImage.get_format() != 0) { - textureImage = textureImage.clone(); - textureImage.set_format(0); - } - this.__texture.__uploadFromImage(textureImage); - this.__textureVersion = this.image.version; - this.__textureWidth = textureImage.buffer.width; - this.__textureHeight = textureImage.buffer.height; - } - if(!this.readable && this.image != null) { - this.__surface = null; - this.image = null; - } - return this.__texture; - } - ,getVector: function(rect) { - var pixels = this.getPixels(rect); - var length = _$UInt_UInt_$Impl_$.toFloat(openfl_utils__$ByteArray_ByteArray_$Impl_$.get_length(pixels)) / _$UInt_UInt_$Impl_$.toFloat(4) | 0; - var result = openfl__$Vector_Vector_$Impl_$.toIntVector(null,length,true); - var _g = 0; - var _g1 = length; - while(_g < _g1) { - var i = _g++; - result.set(i,pixels.readUnsignedInt()); - } - return result; - } - ,histogram: function(hRect) { - var rect = hRect != null ? hRect : new openfl_geom_Rectangle(0,0,this.width,this.height); - var pixels = this.getPixels(rect); - var _g = []; - var _g1 = []; - var _g2 = 0; - while(_g2 < 256) { - var j = _g2++; - _g1.push(0); - } - _g.push(_g1); - var _g11 = []; - var _g21 = 0; - while(_g21 < 256) { - var j1 = _g21++; - _g11.push(0); - } - _g.push(_g11); - var _g12 = []; - var _g22 = 0; - while(_g22 < 256) { - var j2 = _g22++; - _g12.push(0); - } - _g.push(_g12); - var _g13 = []; - var _g23 = 0; - while(_g23 < 256) { - var j3 = _g23++; - _g13.push(0); - } - _g.push(_g13); - var result = _g; - var _g14 = 0; - var _g24 = openfl_utils__$ByteArray_ByteArray_$Impl_$.get_length(pixels); - while(_g14 < _g24) { - var i = _g14++; - var result1 = result[i % 4]; - ++result1[pixels.readUnsignedByte()]; - } - return result; - } - ,hitTest: function(firstPoint,firstAlphaThreshold,secondObject,secondBitmapDataPoint,secondAlphaThreshold) { - if(secondAlphaThreshold == null) { - secondAlphaThreshold = 1; - } - if(!this.readable) { - return false; - } - if(((secondObject) instanceof openfl_display_Bitmap)) { - secondObject = (js_Boot.__cast(secondObject , openfl_display_Bitmap)).__bitmapData; - } - if(((secondObject) instanceof openfl_geom_Point)) { - var secondPoint = secondObject; - var x = secondPoint.x - firstPoint.x | 0; - var y = secondPoint.y - firstPoint.y | 0; - if(this.rect.contains(x,y)) { - var pixel = this.getPixel32(x,y); - if((pixel >> 24 & 255) > firstAlphaThreshold) { - return true; - } - } - } else if(((secondObject) instanceof openfl_display_BitmapData)) { - var secondBitmapData = secondObject; - var x1; - var y1; - if(secondBitmapDataPoint == null) { - x1 = 0; - y1 = 0; - } else { - x1 = Math.round(secondBitmapDataPoint.x - firstPoint.x); - y1 = Math.round(secondBitmapDataPoint.y - firstPoint.y); - } - var hitRect = openfl_geom_Rectangle.__pool.get(); - hitRect.setTo(x1,y1,secondBitmapData.width,secondBitmapData.height); - if(this.rect.intersects(hitRect)) { - if(x1 < 0) { - hitRect.x = 0; - hitRect.width = Math.min(secondBitmapData.width + x1,this.width); - } else { - hitRect.width = Math.min(secondBitmapData.width,this.width - x1); - } - if(y1 < 0) { - hitRect.y = 0; - hitRect.height = Math.min(secondBitmapData.height + y1,this.height); - } else { - hitRect.height = Math.min(secondBitmapData.height,this.height - y1); - } - var pixels = this.getPixels(hitRect); - hitRect.x = x1 < 0 ? -x1 : 0; - hitRect.y = y1 < 0 ? -y1 : 0; - var testPixels = secondBitmapData.getPixels(hitRect); - var length = hitRect.width * hitRect.height | 0; - var pixel1; - var testPixel; - var _g = 0; - var _g1 = length; - while(_g < _g1) { - var i = _g++; - pixel1 = pixels.readUnsignedInt(); - testPixel = testPixels.readUnsignedInt(); - if(_$UInt_UInt_$Impl_$.gt(pixel1 >>> 24 & 255,firstAlphaThreshold) && _$UInt_UInt_$Impl_$.gt(testPixel >>> 24 & 255,secondAlphaThreshold)) { - openfl_geom_Rectangle.__pool.release(hitRect); - return true; - } - } - } - openfl_geom_Rectangle.__pool.release(hitRect); - } else if(((secondObject) instanceof openfl_geom_Rectangle)) { - var secondRectangle = openfl_geom_Rectangle.__pool.get(); - secondRectangle.copyFrom(secondObject); - secondRectangle.offset(-firstPoint.x,-firstPoint.y); - secondRectangle.__contract(0,0,this.width,this.height); - if(secondRectangle.width > 0 && secondRectangle.height > 0) { - var pixels1 = this.getPixels(secondRectangle); - var length1 = _$UInt_UInt_$Impl_$.toFloat(openfl_utils__$ByteArray_ByteArray_$Impl_$.get_length(pixels1)) / _$UInt_UInt_$Impl_$.toFloat(4) | 0; - var pixel2; - var _g2 = 0; - var _g11 = length1; - while(_g2 < _g11) { - var i1 = _g2++; - pixel2 = pixels1.readUnsignedInt(); - if(_$UInt_UInt_$Impl_$.gt(pixel2 >>> 24 & 255,firstAlphaThreshold)) { - openfl_geom_Rectangle.__pool.release(secondRectangle); - return true; - } - } - } - openfl_geom_Rectangle.__pool.release(secondRectangle); - } - return false; - } - ,lock: function() { - } - ,merge: function(sourceBitmapData,sourceRect,destPoint,redMultiplier,greenMultiplier,blueMultiplier,alphaMultiplier) { - if(!this.readable || sourceBitmapData == null || !sourceBitmapData.readable || sourceRect == null || destPoint == null) { - return; - } - this.image.merge(sourceBitmapData.image,sourceRect.__toLimeRectangle(),destPoint.__toLimeVector2(),redMultiplier,greenMultiplier,blueMultiplier,alphaMultiplier); - } - ,noise: function(randomSeed,low,high,channelOptions,grayScale) { - if(grayScale == null) { - grayScale = false; - } - if(channelOptions == null) { - channelOptions = 7; - } - if(high == null) { - high = 255; - } - if(low == null) { - low = 0; - } - if(!this.readable) { - return; - } - var func = function() { - randomSeed = randomSeed * 1103515245 + 12345; - return (Math.abs(randomSeed / 65536) | 0) % 32768; - }; - var rand = func; - rand(); - var range = high - low; - var redChannel = (channelOptions & 1) == 1; - var greenChannel = (channelOptions & 2) >> 1 == 1; - var blueChannel = (channelOptions & 4) >> 2 == 1; - var alphaChannel = (channelOptions & 8) >> 3 == 1; - var _g = 0; - var _g1 = this.height; - while(_g < _g1) { - var y = _g++; - var _g2 = 0; - var _g11 = this.width; - while(_g2 < _g11) { - var x = _g2++; - var red = 0; - var blue = 0; - var green = 0; - var alpha = 255; - if(grayScale) { - blue = low + rand() % range; - green = blue; - red = green; - alpha = 255; - } else { - if(redChannel) { - red = low + rand() % range; - } - if(greenChannel) { - green = low + rand() % range; - } - if(blueChannel) { - blue = low + rand() % range; - } - if(alphaChannel) { - alpha = low + rand() % range; - } - } - var rgb = alpha; - rgb = (rgb << 8) + red; - rgb = (rgb << 8) + green; - rgb = (rgb << 8) + blue; - this.setPixel32(x,y,rgb); - } - } - } - ,paletteMap: function(sourceBitmapData,sourceRect,destPoint,redArray,greenArray,blueArray,alphaArray) { - var sw = sourceRect.width | 0; - var sh = sourceRect.height | 0; - var pixels = sourceBitmapData.getPixels(sourceRect); - var pixelValue; - var r; - var g; - var b; - var a; - var color; - var _g = 0; - var _g1 = sh * sw; - while(_g < _g1) { - var i = _g++; - pixelValue = pixels.readUnsignedInt(); - a = alphaArray == null ? pixelValue & -16777216 : alphaArray[pixelValue >> 24 & 255]; - r = redArray == null ? pixelValue & 16711680 : redArray[pixelValue >> 16 & 255]; - g = greenArray == null ? pixelValue & 65280 : greenArray[pixelValue >> 8 & 255]; - b = blueArray == null ? pixelValue & 255 : blueArray[pixelValue & 255]; - color = a + r + g + b; - pixels.position = i * 4; - pixels.writeUnsignedInt(color); - } - pixels.position = 0; - var destRect = openfl_geom_Rectangle.__pool.get(); - destRect.setTo(destPoint.x,destPoint.y,sw,sh); - this.setPixels(destRect,pixels); - openfl_geom_Rectangle.__pool.release(destRect); - } - ,perlinNoise: function(baseX,baseY,numOctaves,randomSeed,stitch,fractalNoise,channelOptions,grayScale,offsets) { - if(grayScale == null) { - grayScale = false; - } - if(channelOptions == null) { - channelOptions = 7; - } - if(!this.readable) { - return; - } - var noise = new openfl__$internal_utils_PerlinNoise(randomSeed,numOctaves,channelOptions,grayScale,0.5,stitch,0.15); - noise.fill(this,baseX,baseY,0); - } - ,scroll: function(x,y) { - if(!this.readable) { - return; - } - this.image.scroll(x,y); - } - ,setPixel: function(x,y,color) { - if(!this.readable) { - return; - } - this.image.setPixel(x,y,color,1); - } - ,setPixel32: function(x,y,color) { - if(!this.readable) { - return; - } - this.image.setPixel32(x,y,color,1); - } - ,setPixels: function(rect,byteArray) { - if(!this.readable || rect == null) { - return; - } - var length = rect.width * rect.height * 4; - if(_$UInt_UInt_$Impl_$.toFloat(byteArray.length - byteArray.position) < length) { - throw new js__$Boot_HaxeError(new openfl_errors_Error("End of file was encountered.",2030)); - } - this.image.setPixels(rect.__toLimeRectangle(),openfl_utils__$ByteArray_ByteArray_$Impl_$.toBytePointer(byteArray),1,openfl_utils__$Endian_Endian_$Impl_$.toLimeEndian(byteArray.__endian)); - } - ,setVector: function(rect,inputVector) { - var this1 = new openfl_utils_ByteArrayData(0); - var byteArray = this1; - openfl_utils__$ByteArray_ByteArray_$Impl_$.set_length(byteArray,inputVector.get_length() * 4); - var color = inputVector.iterator(); - while(color.hasNext()) { - var color1 = color.next(); - byteArray.writeUnsignedInt(color1); - } - byteArray.position = 0; - this.setPixels(rect,byteArray); - } - ,threshold: function(sourceBitmapData,sourceRect,destPoint,operation,threshold,color,mask,copySource) { - if(copySource == null) { - copySource = false; - } - if(mask == null) { - mask = -1; - } - if(color == null) { - color = 0; - } - if(sourceBitmapData == null || sourceRect == null || destPoint == null || sourceRect.x > sourceBitmapData.width || sourceRect.y > sourceBitmapData.height || destPoint.x > this.width || destPoint.y > this.height) { - return 0; - } - return this.image.threshold(sourceBitmapData.image,sourceRect.__toLimeRectangle(),destPoint.__toLimeVector2(),operation,threshold,color,mask,copySource,1); - } - ,unlock: function(changeRect) { - } - ,__applyAlpha: function(alpha) { - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(this.image); - lime__$internal_graphics_ImageCanvasUtil.createImageData(this.image); - var data = this.image.buffer.data; - var _g = 0; - var _g1 = openfl_utils__$ByteArray_ByteArray_$Impl_$.get_length(alpha); - while(_g < _g1) { - var i = _g++; - data[i * 4 + 3] = alpha.readUnsignedByte(); - } - this.image.version++; - } - ,__drawCairo: function(source,renderer) { - } - ,__drawCanvas: function(source,renderer) { - var buffer = this.image.buffer; - if(!renderer.__allowSmoothing) { - renderer.applySmoothing(buffer.__srcContext,false); - } - renderer.__render(source); - if(!renderer.__allowSmoothing) { - renderer.applySmoothing(buffer.__srcContext,true); - } - buffer.__srcContext.setTransform(1,0,0,1,0,0); - buffer.__srcImageData = null; - buffer.data = null; - this.image.dirty = true; - this.image.version++; - } - ,__drawGL: function(source,renderer) { - var context = renderer.__context3D; - var cacheRTT = context.__state.renderToTexture; - var cacheRTTDepthStencil = context.__state.renderToTextureDepthStencil; - var cacheRTTAntiAlias = context.__state.renderToTextureAntiAlias; - var cacheRTTSurfaceSelector = context.__state.renderToTextureSurfaceSelector; - context.setRenderToTexture(this.getTexture(context),true); - renderer.__render(source); - if(cacheRTT != null) { - context.setRenderToTexture(cacheRTT,cacheRTTDepthStencil,cacheRTTAntiAlias,cacheRTTSurfaceSelector); - } else { - context.setRenderToBackBuffer(); - } - } - ,__fillRect: function(rect,color,allowFramebuffer) { - if(rect == null) { - return; - } - if(this.transparent && (color & -16777216) == 0) { - color = 0; - } - if(allowFramebuffer && this.__texture != null && this.__texture.__glFramebuffer != null && openfl_Lib.get_current().stage.__renderer.__type == "opengl") { - var renderer = openfl_Lib.get_current().stage.__renderer; - var context = renderer.__context3D; - var color1 = color; - var useScissor = !this.rect.equals(rect); - var cacheRTT = context.__state.renderToTexture; - var cacheRTTDepthStencil = context.__state.renderToTextureDepthStencil; - var cacheRTTAntiAlias = context.__state.renderToTextureAntiAlias; - var cacheRTTSurfaceSelector = context.__state.renderToTextureSurfaceSelector; - context.setRenderToTexture(this.__texture); - if(useScissor) { - context.setScissorRectangle(rect); - } - context.clear((color1 >>> 16 & 255) / 255,(color1 >>> 8 & 255) / 255,(color1 & 255) / 255,this.transparent ? (color1 >>> 24 & 255) / 255 : 1,0,0,1); - if(useScissor) { - context.setScissorRectangle(null); - } - if(cacheRTT != null) { - context.setRenderToTexture(cacheRTT,cacheRTTDepthStencil,cacheRTTAntiAlias,cacheRTTSurfaceSelector); - } else { - context.setRenderToBackBuffer(); - } - } else if(this.readable) { - this.image.fillRect(rect.__toLimeRectangle(),color,1); - } - } - ,__fromBase64: function(base64,type) { - var image = lime_graphics_Image.fromBase64(base64,type); - this.__fromImage(image); - } - ,__fromBytes: function(bytes,rawAlpha) { - var image = lime_graphics_Image.fromBytes(openfl_utils__$ByteArray_ByteArray_$Impl_$.toBytes(bytes)); - this.__fromImage(image); - if(rawAlpha != null) { - this.__applyAlpha(rawAlpha); - } - } - ,__fromFile: function(path) { - var image = lime_graphics_Image.fromFile(path); - this.__fromImage(image); - } - ,__fromImage: function(image) { - if(image != null && image.buffer != null) { - this.image = image; - this.width = image.width; - this.height = image.height; - this.rect = new openfl_geom_Rectangle(0,0,image.width,image.height); - this.__textureWidth = this.width; - this.__textureHeight = this.height; - this.readable = true; - this.__isValid = true; - } - } - ,__fromSymbol: function(swf,symbol) { - var _gthis = this; - this.__symbol = symbol; - lime_graphics_Image.loadFromFile(symbol.path).onComplete(function(image) { - if(symbol.alpha != null) { - lime_graphics_Image.loadFromFile(symbol.alpha).onComplete(function(alpha) { - if(image != null && alpha != null) { - var tmp = alpha.get_rect(); - image.copyChannel(alpha,tmp,new lime_math_Vector2(),lime_graphics_ImageChannel.RED,lime_graphics_ImageChannel.ALPHA); - image.buffer.premultiplied = true; - image.set_premultiplied(false); - } - _gthis.__fromImage(image); - }); - } else { - _gthis.__fromImage(image); - } - }); - } - ,__getBounds: function(rect,matrix) { - var bounds = openfl_geom_Rectangle.__pool.get(); - this.rect.__transform(bounds,matrix); - rect.__expand(bounds.x,bounds.y,bounds.width,bounds.height); - openfl_geom_Rectangle.__pool.release(bounds); - } - ,__loadFromBase64: function(base64,type) { - var _gthis = this; - return lime_graphics_Image.loadFromBase64(base64,type).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }); - } - ,__loadFromBytes: function(bytes,rawAlpha) { - var _gthis = this; - return lime_graphics_Image.loadFromBytes(openfl_utils__$ByteArray_ByteArray_$Impl_$.toBytes(bytes)).then(function(image) { - _gthis.__fromImage(image); - if(rawAlpha != null) { - _gthis.__applyAlpha(rawAlpha); - } - return lime_app_Future.withValue(_gthis); - }); - } - ,__loadFromFile: function(path) { - var _gthis = this; - return lime_graphics_Image.loadFromFile(path).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }); - } - ,__renderCairo: function(renderer) { - } - ,__renderCairoMask: function(renderer) { - } - ,__renderCanvas: function(renderer) { - if(!this.readable) { - return; - } - if(this.image.type == lime_graphics_ImageType.DATA) { - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(this.image); - } - var context = renderer.context; - context.globalAlpha = 1; - renderer.setTransform(this.__renderTransform,context); - context.drawImage(this.image.get_src(),0,0,this.image.width,this.image.height); - } - ,__renderCanvasMask: function(renderer) { - } - ,__renderDOM: function(renderer) { - } - ,__renderGL: function(renderer) { - var context = renderer.__context3D; - var gl = context.gl; - renderer.__setBlendMode(10); - var shader = renderer.__defaultDisplayShader; - renderer.setShader(shader); - renderer.applyBitmapData(this,renderer.__upscaled); - renderer.applyMatrix(renderer.__getMatrix(this.__worldTransform,1)); - renderer.applyAlpha(this.__worldAlpha); - renderer.applyColorTransform(this.__worldColorTransform); - renderer.updateShader(); - var vertexBuffer = this.getVertexBuffer(context); - if(shader.__position != null) { - context.setVertexBufferAt(shader.__position.index,vertexBuffer,0,3); - } - if(shader.__textureCoord != null) { - context.setVertexBufferAt(shader.__textureCoord.index,vertexBuffer,3,2); - } - var indexBuffer = this.getIndexBuffer(context); - context.drawTriangles(indexBuffer); - renderer.__clearShader(); - } - ,__renderGLMask: function(renderer) { - var context = renderer.__context3D; - var gl = context.gl; - var shader = renderer.__maskShader; - renderer.setShader(shader); - renderer.applyBitmapData(this,renderer.__upscaled); - renderer.applyMatrix(renderer.__getMatrix(this.__worldTransform,1)); - renderer.updateShader(); - var vertexBuffer = this.getVertexBuffer(context); - if(shader.__position != null) { - context.setVertexBufferAt(shader.__position.index,vertexBuffer,0,3); - } - if(shader.__textureCoord != null) { - context.setVertexBufferAt(shader.__textureCoord.index,vertexBuffer,3,2); - } - var indexBuffer = this.getIndexBuffer(context); - context.drawTriangles(indexBuffer); - renderer.__clearShader(); - } - ,__resize: function(width,height) { - this.width = width; - this.height = height; - this.rect.width = width; - this.rect.height = height; - this.__textureWidth = width; - this.__textureHeight = height; - } - ,__setUVRect: function(context,x,y,width,height) { - var buffer = this.getVertexBuffer(context); - if(buffer != null && (width != this.__uvRect.width || height != this.__uvRect.height || x != this.__uvRect.x || y != this.__uvRect.y)) { - var gl = context.gl; - if(this.__uvRect == null) { - this.__uvRect = new openfl_geom_Rectangle(); - } - this.__uvRect.setTo(x,y,width,height); - var uvX = this.__textureWidth > 0 ? x / this.__textureWidth : 0; - var uvY = this.__textureHeight > 0 ? y / this.__textureHeight : 0; - var uvWidth = this.__textureWidth > 0 ? width / this.__textureWidth : 0; - var uvHeight = this.__textureHeight > 0 ? height / this.__textureHeight : 0; - this.__vertexBufferData[0] = width; - this.__vertexBufferData[1] = height; - this.__vertexBufferData[3] = uvX + uvWidth; - this.__vertexBufferData[4] = uvY + uvHeight; - this.__vertexBufferData[15] = height; - this.__vertexBufferData[17] = uvX; - this.__vertexBufferData[18] = uvY + uvHeight; - this.__vertexBufferData[28] = width; - this.__vertexBufferData[31] = uvX + uvWidth; - this.__vertexBufferData[32] = uvY; - this.__vertexBufferData[45] = uvX; - this.__vertexBufferData[46] = uvY; - this.__vertexBuffer.uploadFromTypedArray(this.__vertexBufferData); - } - } - ,__sync: function() { - lime__$internal_graphics_ImageCanvasUtil.sync(this.image,false); - } - ,__update: function(transformOnly,updateChildren) { - this.__updateTransforms(); - } - ,__updateTransforms: function(overrideTransform) { - if(overrideTransform == null) { - this.__worldTransform.identity(); - } else { - this.__worldTransform.copyFrom(overrideTransform); - } - this.__renderTransform.copyFrom(this.__worldTransform); - } - ,__class__: openfl_display_BitmapData -}; -var flixel_input_mouse__$FlxMouse_GraphicCursor = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_input_mouse__$FlxMouse_GraphicCursor.preload != null) { - this.__fromImage(flixel_input_mouse__$FlxMouse_GraphicCursor.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_input_mouse__$FlxMouse_GraphicCursor.resourceName),flixel_input_mouse__$FlxMouse_GraphicCursor.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_input_mouse__$FlxMouse_GraphicCursor.preload == null) { - flixel_input_mouse__$FlxMouse_GraphicCursor.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.input.mouse._FlxMouse.GraphicCursor"] = flixel_input_mouse__$FlxMouse_GraphicCursor; -flixel_input_mouse__$FlxMouse_GraphicCursor.__name__ = "flixel.input.mouse._FlxMouse.GraphicCursor"; -flixel_input_mouse__$FlxMouse_GraphicCursor.preload = null; -flixel_input_mouse__$FlxMouse_GraphicCursor.__super__ = openfl_display_BitmapData; -flixel_input_mouse__$FlxMouse_GraphicCursor.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_input_mouse__$FlxMouse_GraphicCursor -}); -var flixel_input_mouse_FlxMouse = function(CursorContainer) { - this._prevY = 0; - this._prevX = 0; - this._lastWheel = 0; - this._lastY = 0; - this._lastX = 0; - this._visibleWhenFocusLost = true; - this._wheelUsed = false; - this._cursor = null; - this.useSystemCursor = false; - this.visible = true; - this.wheel = 0; - this.enabled = true; - flixel_input_FlxPointer.call(this); - this.cursorContainer = CursorContainer; - this.cursorContainer.mouseChildren = false; - this.cursorContainer.mouseEnabled = false; - this._leftButton = new flixel_input_mouse_FlxMouseButton(-1); - this._stage = openfl_Lib.get_current().stage; - this._stage.addEventListener("mouseDown",($_=this._leftButton,$bind($_,$_.onDown))); - this._stage.addEventListener("mouseUp",($_=this._leftButton,$bind($_,$_.onUp))); - this._middleButton = new flixel_input_mouse_FlxMouseButton(-2); - this._rightButton = new flixel_input_mouse_FlxMouseButton(-3); - this._stage.addEventListener("middleMouseDown",($_=this._middleButton,$bind($_,$_.onDown))); - this._stage.addEventListener("middleMouseUp",($_=this._middleButton,$bind($_,$_.onUp))); - this._stage.addEventListener("rightMouseDown",($_=this._rightButton,$bind($_,$_.onDown))); - this._stage.addEventListener("rightMouseUp",($_=this._rightButton,$bind($_,$_.onUp))); - this._stage.addEventListener("mouseLeave",$bind(this,this.onMouseLeave)); - this._stage.addEventListener("mouseWheel",$bind(this,this.onMouseWheel)); - flixel_FlxG.signals.postGameStart.add($bind(this,this.onGameStart)); - openfl_ui_Mouse.hide(); -}; -$hxClasses["flixel.input.mouse.FlxMouse"] = flixel_input_mouse_FlxMouse; -flixel_input_mouse_FlxMouse.__name__ = "flixel.input.mouse.FlxMouse"; -flixel_input_mouse_FlxMouse.__interfaces__ = [flixel_input_IFlxInputManager]; -flixel_input_mouse_FlxMouse.__super__ = flixel_input_FlxPointer; -flixel_input_mouse_FlxMouse.prototype = $extend(flixel_input_FlxPointer.prototype,{ - enabled: null - ,wheel: null - ,cursorContainer: null - ,visible: null - ,useSystemCursor: null - ,_leftButton: null - ,_middleButton: null - ,_rightButton: null - ,_cursor: null - ,_cursorBitmapData: null - ,_wheelUsed: null - ,_visibleWhenFocusLost: null - ,_lastX: null - ,_lastY: null - ,_lastWheel: null - ,_lastLeftButtonState: null - ,_prevX: null - ,_prevY: null - ,_stage: null - ,load: function(Graphic,Scale,XOffset,YOffset) { - if(YOffset == null) { - YOffset = 0; - } - if(XOffset == null) { - XOffset = 0; - } - if(Scale == null) { - Scale = 1; - } - if(this._cursor != null) { - flixel_util_FlxDestroyUtil.removeChild(this.cursorContainer,this._cursor); - } - if(Graphic == null) { - Graphic = new flixel_input_mouse__$FlxMouse_GraphicCursor(0,0); - } - if(js_Boot.__instanceof(Graphic,Class)) { - this._cursor = Type.createInstance(Graphic,[]); - } else if(((Graphic) instanceof openfl_display_BitmapData)) { - this._cursor = new openfl_display_Bitmap(Graphic); - } else if(typeof(Graphic) == "string") { - var id = Graphic; - this._cursor = new openfl_display_Bitmap(openfl_utils_Assets.exists(id) ? openfl_utils_Assets.getBitmapData(id,false) : null); - } else { - this._cursor = new openfl_display_Bitmap(new flixel_input_mouse__$FlxMouse_GraphicCursor(0,0)); - } - this._cursor.set_x(XOffset); - this._cursor.set_y(YOffset); - this._cursor.set_scaleX(Scale); - this._cursor.set_scaleY(Scale); - this.cursorContainer.addChild(this._cursor); - } - ,unload: function() { - if(this._cursor != null) { - if(this.cursorContainer.get_visible()) { - this.load(); - } else { - this._cursor = flixel_util_FlxDestroyUtil.removeChild(this.cursorContainer,this._cursor); - } - } - } - ,destroy: function() { - if(this._stage != null) { - this._stage.removeEventListener("mouseDown",($_=this._leftButton,$bind($_,$_.onDown))); - this._stage.removeEventListener("mouseUp",($_=this._leftButton,$bind($_,$_.onUp))); - this._stage.removeEventListener("middleMouseDown",($_=this._middleButton,$bind($_,$_.onDown))); - this._stage.removeEventListener("middleMouseUp",($_=this._middleButton,$bind($_,$_.onUp))); - this._stage.removeEventListener("rightMouseDown",($_=this._rightButton,$bind($_,$_.onDown))); - this._stage.removeEventListener("rightMouseUp",($_=this._rightButton,$bind($_,$_.onUp))); - this._stage.removeEventListener("mouseLeave",$bind(this,this.onMouseLeave)); - this._stage.removeEventListener("mouseWheel",$bind(this,this.onMouseWheel)); - } - this.cursorContainer = null; - this._cursor = null; - this._leftButton = flixel_util_FlxDestroyUtil.destroy(this._leftButton); - this._middleButton = flixel_util_FlxDestroyUtil.destroy(this._middleButton); - this._rightButton = flixel_util_FlxDestroyUtil.destroy(this._rightButton); - this._cursorBitmapData = flixel_util_FlxDestroyUtil.dispose(this._cursorBitmapData); - flixel_FlxG.signals.postGameStart.remove($bind(this,this.onGameStart)); - } - ,reset: function() { - this._leftButton.reset(); - this._middleButton.reset(); - this._rightButton.reset(); - } - ,update: function() { - this._prevX = this.x; - this._prevY = this.y; - var newX = flixel_FlxG.game.get_mouseX(); - var newY = flixel_FlxG.game.get_mouseY(); - this._globalScreenX = newX / flixel_FlxG.scaleMode.scale.x | 0; - this._globalScreenY = newY / flixel_FlxG.scaleMode.scale.y | 0; - this.updatePositions(); - if(this.visible) { - this.cursorContainer.set_x(flixel_FlxG.game.get_mouseX()); - this.cursorContainer.set_y(flixel_FlxG.game.get_mouseY()); - } - this._leftButton.update(); - this._middleButton.update(); - this._rightButton.update(); - if(!this._wheelUsed) { - this.wheel = 0; - } - this._wheelUsed = false; - } - ,onFocus: function() { - this.reset(); - this.set_useSystemCursor(this.useSystemCursor); - this.set_visible(this._visibleWhenFocusLost); - } - ,onFocusLost: function() { - this._visibleWhenFocusLost = this.visible; - if(this.visible) { - this.set_visible(false); - } - openfl_ui_Mouse.show(); - } - ,onGameStart: function() { - this.set_visible(this.visible); - } - ,onMouseWheel: function(FlashEvent) { - if(this.enabled) { - this._wheelUsed = true; - this.wheel = FlashEvent.delta; - } - } - ,onMouseLeave: function(_) { - this._rightButton.onUp(); - this._middleButton.onUp(); - } - ,get_justMoved: function() { - if(this._prevX == this.x) { - return this._prevY != this.y; - } else { - return true; - } - } - ,get_pressed: function() { - var _this = this._leftButton; - if(_this.current != 1) { - return _this.current == 2; - } else { - return true; - } - } - ,get_justPressed: function() { - return this._leftButton.current == 2; - } - ,get_justReleased: function() { - return this._leftButton.current == -1; - } - ,get_justPressedTimeInTicks: function() { - return this._leftButton.justPressedTimeInTicks; - } - ,get_pressedRight: function() { - var _this = this._rightButton; - if(_this.current != 1) { - return _this.current == 2; - } else { - return true; - } - } - ,get_justPressedRight: function() { - return this._rightButton.current == 2; - } - ,get_justReleasedRight: function() { - return this._rightButton.current == -1; - } - ,get_justPressedTimeInTicksRight: function() { - return this._rightButton.justPressedTimeInTicks; - } - ,get_pressedMiddle: function() { - var _this = this._middleButton; - if(_this.current != 1) { - return _this.current == 2; - } else { - return true; - } - } - ,get_justPressedMiddle: function() { - return this._middleButton.current == 2; - } - ,get_justReleasedMiddle: function() { - return this._middleButton.current == -1; - } - ,get_justPressedTimeInTicksMiddle: function() { - return this._middleButton.justPressedTimeInTicks; - } - ,showSystemCursor: function() { - this.cursorContainer.set_visible(false); - openfl_ui_Mouse.show(); - } - ,hideSystemCursor: function() { - openfl_ui_Mouse.hide(); - if(this.visible) { - this.cursorContainer.set_visible(true); - } - } - ,set_useSystemCursor: function(Value) { - if(Value) { - this.showSystemCursor(); - } else { - this.hideSystemCursor(); - } - return this.useSystemCursor = Value; - } - ,showCursor: function() { - if(this.useSystemCursor) { - openfl_ui_Mouse.show(); - } else { - if(this._cursor == null) { - this.load(); - } - this.cursorContainer.set_visible(true); - openfl_ui_Mouse.hide(); - } - } - ,hideCursor: function() { - this.cursorContainer.set_visible(false); - openfl_ui_Mouse.hide(); - } - ,set_visible: function(Value) { - if(Value) { - this.showCursor(); - } else { - this.hideCursor(); - } - return this.visible = Value; - } - ,record: function() { - if(this._lastX == this._globalScreenX && this._lastY == this._globalScreenY && this._lastLeftButtonState == this._leftButton.current && this._lastWheel == this.wheel) { - return null; - } - this._lastX = this._globalScreenX; - this._lastY = this._globalScreenY; - this._lastLeftButtonState = this._leftButton.current; - this._lastWheel = this.wheel; - return new flixel_system_replay_MouseRecord(this._lastX,this._lastY,this._leftButton.current,this._lastWheel); - } - ,playback: function(Record) { - if((this._lastLeftButtonState == 1 || this._lastLeftButtonState == 2) && (Record.button == 0 || Record.button == -1)) { - this._stage.dispatchEvent(new openfl_events_MouseEvent("mouseUp",true,false,Record.x,Record.y)); - } - this._lastLeftButtonState = this._leftButton.current = Record.button; - this.wheel = Record.wheel; - this._globalScreenX = Record.x; - this._globalScreenY = Record.y; - this.updatePositions(); - } - ,__class__: flixel_input_mouse_FlxMouse - ,__properties__: {get_justPressedTimeInTicksMiddle:"get_justPressedTimeInTicksMiddle",get_justReleasedMiddle:"get_justReleasedMiddle",get_justPressedMiddle:"get_justPressedMiddle",get_pressedMiddle:"get_pressedMiddle",get_justPressedTimeInTicksRight:"get_justPressedTimeInTicksRight",get_justReleasedRight:"get_justReleasedRight",get_justPressedRight:"get_justPressedRight",get_pressedRight:"get_pressedRight",get_justPressedTimeInTicks:"get_justPressedTimeInTicks",get_justReleased:"get_justReleased",get_justPressed:"get_justPressed",get_pressed:"get_pressed",get_justMoved:"get_justMoved",set_useSystemCursor:"set_useSystemCursor",set_visible:"set_visible"} -}); -var flixel_input_mouse_FlxMouseButton = function(ID) { - this.justPressedTimeInTicks = -1; - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - this.justPressedPosition = point; - flixel_input_FlxInput.call(this,ID); -}; -$hxClasses["flixel.input.mouse.FlxMouseButton"] = flixel_input_mouse_FlxMouseButton; -flixel_input_mouse_FlxMouseButton.__name__ = "flixel.input.mouse.FlxMouseButton"; -flixel_input_mouse_FlxMouseButton.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_input_mouse_FlxMouseButton.getByID = function(id) { - switch(id) { - case -3: - return flixel_FlxG.mouse._rightButton; - case -2: - return flixel_FlxG.mouse._middleButton; - case -1: - return flixel_FlxG.mouse._leftButton; - } -}; -flixel_input_mouse_FlxMouseButton.__super__ = flixel_input_FlxInput; -flixel_input_mouse_FlxMouseButton.prototype = $extend(flixel_input_FlxInput.prototype,{ - justPressedPosition: null - ,justPressedTimeInTicks: null - ,update: function() { - flixel_input_FlxInput.prototype.update.call(this); - if(this.current == 2) { - this.justPressedPosition.set(flixel_FlxG.mouse.screenX,flixel_FlxG.mouse.screenY); - this.justPressedTimeInTicks = flixel_FlxG.game.ticks; - } else if(this.current == -1) { - flixel_FlxG.swipes.push(new flixel_input_FlxSwipe(this.ID,this.justPressedPosition,flixel_FlxG.mouse.getScreenPosition(),this.justPressedTimeInTicks)); - } - } - ,destroy: function() { - this.justPressedPosition = flixel_util_FlxDestroyUtil.put(this.justPressedPosition); - } - ,onDown: function(_) { - if(flixel_FlxG.mouse.enabled) { - this.press(); - } - } - ,onUp: function(_) { - if(flixel_FlxG.mouse.enabled) { - this.release(); - } - } - ,__class__: flixel_input_mouse_FlxMouseButton -}); -var flixel_input_touch_FlxTouch = function(x,y,pointID) { - if(pointID == null) { - pointID = 0; - } - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - this.justPressedTimeInTicks = -1; - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - this.justPressedPosition = point; - this.flashPoint = new openfl_geom_Point(); - flixel_input_FlxPointer.call(this); - this.input = new flixel_input_FlxInput(pointID); - this.setXY(x,y); -}; -$hxClasses["flixel.input.touch.FlxTouch"] = flixel_input_touch_FlxTouch; -flixel_input_touch_FlxTouch.__name__ = "flixel.input.touch.FlxTouch"; -flixel_input_touch_FlxTouch.__interfaces__ = [flixel_input_IFlxInput,flixel_util_IFlxDestroyable]; -flixel_input_touch_FlxTouch.__super__ = flixel_input_FlxPointer; -flixel_input_touch_FlxTouch.prototype = $extend(flixel_input_FlxPointer.prototype,{ - input: null - ,flashPoint: null - ,justPressedPosition: null - ,justPressedTimeInTicks: null - ,destroy: function() { - this.input = null; - this.justPressedPosition = flixel_util_FlxDestroyUtil.put(this.justPressedPosition); - this.flashPoint = null; - } - ,recycle: function(x,y,pointID) { - this.setXY(x,y); - this.input.ID = pointID; - this.input.reset(); - } - ,update: function() { - this.input.update(); - if(this.input.current == 2) { - this.justPressedPosition.set(this.screenX,this.screenY); - this.justPressedTimeInTicks = flixel_FlxG.game.ticks; - } else if(this.input.current == -1) { - flixel_FlxG.swipes.push(new flixel_input_FlxSwipe(this.input.ID,this.justPressedPosition,this.getScreenPosition(),this.justPressedTimeInTicks)); - } - } - ,setXY: function(X,Y) { - this.flashPoint.setTo(X,Y); - this.flashPoint = flixel_FlxG.game.globalToLocal(this.flashPoint); - this._globalScreenX = this.flashPoint.x / flixel_FlxG.scaleMode.scale.x | 0; - this._globalScreenY = this.flashPoint.y / flixel_FlxG.scaleMode.scale.y | 0; - this.updatePositions(); - } - ,get_touchPointID: function() { - return this.input.ID; - } - ,get_justReleased: function() { - return this.input.current == -1; - } - ,get_released: function() { - var _this = this.input; - if(_this.current != 0) { - return _this.current == -1; - } else { - return true; - } - } - ,get_pressed: function() { - var _this = this.input; - if(_this.current != 1) { - return _this.current == 2; - } else { - return true; - } - } - ,get_justPressed: function() { - return this.input.current == 2; - } - ,__class__: flixel_input_touch_FlxTouch - ,__properties__: {get_justPressed:"get_justPressed",get_pressed:"get_pressed",get_released:"get_released",get_justReleased:"get_justReleased",get_touchPointID:"get_touchPointID"} -}); -var flixel_input_touch_FlxTouchManager = function() { - this.list = []; - this._inactiveTouches = []; - this._touchesCache = new haxe_ds_IntMap(); - flixel_input_touch_FlxTouchManager.maxTouchPoints = openfl_ui_Multitouch.maxTouchPoints; - openfl_ui_Multitouch.inputMode = 2; - openfl_Lib.get_current().stage.addEventListener("touchBegin",$bind(this,this.handleTouchBegin)); - openfl_Lib.get_current().stage.addEventListener("touchEnd",$bind(this,this.handleTouchEnd)); - openfl_Lib.get_current().stage.addEventListener("touchMove",$bind(this,this.handleTouchMove)); -}; -$hxClasses["flixel.input.touch.FlxTouchManager"] = flixel_input_touch_FlxTouchManager; -flixel_input_touch_FlxTouchManager.__name__ = "flixel.input.touch.FlxTouchManager"; -flixel_input_touch_FlxTouchManager.__interfaces__ = [flixel_input_IFlxInputManager]; -flixel_input_touch_FlxTouchManager.prototype = { - list: null - ,_inactiveTouches: null - ,_touchesCache: null - ,getByID: function(TouchPointID) { - return this._touchesCache.h[TouchPointID]; - } - ,getFirst: function() { - if(this.list[0] != null) { - return this.list[0]; - } else { - return null; - } - } - ,destroy: function() { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var touch = _g1[_g]; - ++_g; - touch.destroy(); - } - this.list = null; - var _g2 = 0; - var _g3 = this._inactiveTouches; - while(_g2 < _g3.length) { - var touch1 = _g3[_g2]; - ++_g2; - touch1.destroy(); - } - this._inactiveTouches = null; - this._touchesCache = null; - } - ,justStarted: function(TouchArray) { - if(TouchArray == null) { - TouchArray = []; - } - var touchLen = TouchArray.length; - if(touchLen > 0) { - TouchArray.splice(0,touchLen); - } - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var touch = _g1[_g]; - ++_g; - if(touch.input.current == 2) { - TouchArray.push(touch); - } - } - return TouchArray; - } - ,justReleased: function(TouchArray) { - if(TouchArray == null) { - TouchArray = []; - } - var touchLen = TouchArray.length; - if(touchLen > 0) { - TouchArray.splice(0,touchLen); - } - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var touch = _g1[_g]; - ++_g; - if(touch.input.current == -1) { - TouchArray.push(touch); - } - } - return TouchArray; - } - ,reset: function() { - var key = this._touchesCache.keys(); - while(key.hasNext()) { - var key1 = key.next(); - this._touchesCache.remove(key1); - } - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var touch = _g1[_g]; - ++_g; - touch.input.reset(); - this._inactiveTouches.push(touch); - } - this.list.splice(0,this.list.length); - } - ,handleTouchBegin: function(FlashEvent) { - var touch = this._touchesCache.h[FlashEvent.touchPointID]; - if(touch != null) { - touch.setXY(FlashEvent.stageX | 0,FlashEvent.stageY | 0); - } else { - touch = this.recycle(FlashEvent.stageX | 0,FlashEvent.stageY | 0,FlashEvent.touchPointID); - } - touch.input.press(); - } - ,handleTouchEnd: function(FlashEvent) { - var touch = this._touchesCache.h[FlashEvent.touchPointID]; - if(touch != null) { - touch.input.release(); - } - } - ,handleTouchMove: function(FlashEvent) { - var touch = this._touchesCache.h[FlashEvent.touchPointID]; - if(touch != null) { - touch.setXY(FlashEvent.stageX | 0,FlashEvent.stageY | 0); - } - } - ,add: function(Touch1) { - this.list.push(Touch1); - this._touchesCache.h[Touch1.input.ID] = Touch1; - return Touch1; - } - ,recycle: function(X,Y,PointID) { - if(this._inactiveTouches.length > 0) { - var touch = this._inactiveTouches.pop(); - touch.recycle(X,Y,PointID); - return this.add(touch); - } - return this.add(new flixel_input_touch_FlxTouch(X,Y,PointID)); - } - ,update: function() { - var i = this.list.length - 1; - var touch; - while(i >= 0) { - touch = this.list[i]; - var _this = touch.input; - if((_this.current == 0 || _this.current == -1) && touch.input.current != -1) { - touch.input.reset(); - this._touchesCache.remove(touch.input.ID); - this.list.splice(i,1); - this._inactiveTouches.push(touch); - } else { - touch.update(); - } - --i; - } - } - ,onFocus: function() { - } - ,onFocusLost: function() { - this.reset(); - } - ,__class__: flixel_input_touch_FlxTouchManager -}; -var flixel_math_FlxAngle = function() { }; -$hxClasses["flixel.math.FlxAngle"] = flixel_math_FlxAngle; -flixel_math_FlxAngle.__name__ = "flixel.math.FlxAngle"; -flixel_math_FlxAngle.__properties__ = {get_TO_RAD:"get_TO_RAD",get_TO_DEG:"get_TO_DEG"}; -flixel_math_FlxAngle.wrapAngle = function(angle) { - if(angle > 180) { - angle = flixel_math_FlxAngle.wrapAngle(angle - 360); - } else if(angle < -180) { - angle = flixel_math_FlxAngle.wrapAngle(angle + 360); - } - return angle; -}; -flixel_math_FlxAngle.asDegrees = function(radians) { - return radians * (180 / Math.PI); -}; -flixel_math_FlxAngle.asRadians = function(degrees) { - return degrees * (Math.PI / 180); -}; -flixel_math_FlxAngle.angleBetween = function(SpriteA,SpriteB,AsDegrees) { - if(AsDegrees == null) { - AsDegrees = false; - } - var dx = SpriteB.x + SpriteB.origin.x - (SpriteA.x + SpriteA.origin.x); - var dy = SpriteB.y + SpriteB.origin.y - (SpriteA.y + SpriteA.origin.y); - if(AsDegrees) { - return Math.atan2(dy,dx) * (180 / Math.PI); - } else { - return Math.atan2(dy,dx); - } -}; -flixel_math_FlxAngle.angleBetweenPoint = function(Sprite,Target,AsDegrees) { - if(AsDegrees == null) { - AsDegrees = false; - } - var dx = Target.x - (Sprite.x + Sprite.origin.x); - var dy = Target.y - (Sprite.y + Sprite.origin.y); - if(Target._weak) { - Target.put(); - } - if(AsDegrees) { - return Math.atan2(dy,dx) * (180 / Math.PI); - } else { - return Math.atan2(dy,dx); - } -}; -flixel_math_FlxAngle.angleBetweenMouse = function(Object1,AsDegrees) { - if(AsDegrees == null) { - AsDegrees = false; - } - if(Object1 == null) { - return 0; - } - var p = Object1.getScreenPosition(); - var dx = flixel_FlxG.mouse.screenX - p.x; - var dy = flixel_FlxG.mouse.screenY - p.y; - p.put(); - if(AsDegrees) { - return Math.atan2(dy,dx) * (180 / Math.PI); - } else { - return Math.atan2(dy,dx); - } -}; -flixel_math_FlxAngle.angleBetweenTouch = function(Object1,Touch1,AsDegrees) { - if(AsDegrees == null) { - AsDegrees = false; - } - var p = Object1.getScreenPosition(); - var dx = Touch1.screenX - p.x; - var dy = Touch1.screenY - p.y; - p.put(); - if(AsDegrees) { - return Math.atan2(dy,dx) * (180 / Math.PI); - } else { - return Math.atan2(dy,dx); - } -}; -flixel_math_FlxAngle.angleFromFacing = function(FacingBitmask,AsDegrees) { - if(AsDegrees == null) { - AsDegrees = false; - } - var degrees; - switch(FacingBitmask) { - case 1: - degrees = 180; - break; - case 16: - degrees = 0; - break; - case 256: - degrees = -90; - break; - case 4096: - degrees = 90; - break; - default: - var f = FacingBitmask; - if(f == 257) { - degrees = -135; - } else { - var f1 = FacingBitmask; - if(f1 == 272) { - degrees = -45; - } else { - var f2 = FacingBitmask; - if(f2 == 4097) { - degrees = 135; - } else { - var f3 = FacingBitmask; - degrees = f3 == 4112 ? 45 : 0; - } - } - } - } - if(AsDegrees) { - return degrees; - } else { - return degrees * (Math.PI / 180); - } -}; -flixel_math_FlxAngle.getCartesianCoords = function(Radius,Angle,point) { - var p = point; - if(p == null) { - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - p = point1; - } - p.set_x(Radius * Math.cos(Angle * (Math.PI / 180))); - p.set_y(Radius * Math.sin(Angle * (Math.PI / 180))); - return p; -}; -flixel_math_FlxAngle.getPolarCoords = function(X,Y,point) { - var p = point; - if(p == null) { - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - p = point1; - } - p.set_x(Math.sqrt(X * X + Y * Y)); - p.set_y(Math.atan2(Y,X) * (180 / Math.PI)); - return p; -}; -flixel_math_FlxAngle.get_TO_DEG = function() { - return 180 / Math.PI; -}; -flixel_math_FlxAngle.get_TO_RAD = function() { - return Math.PI / 180; -}; -var flixel_math_FlxMath = function() { }; -$hxClasses["flixel.math.FlxMath"] = flixel_math_FlxMath; -flixel_math_FlxMath.__name__ = "flixel.math.FlxMath"; -flixel_math_FlxMath.roundDecimal = function(Value,Precision) { - var mult = 1; - var _g = 0; - var _g1 = Precision; - while(_g < _g1) { - var i = _g++; - mult *= 10; - } - return Math.round(Value * mult) / mult; -}; -flixel_math_FlxMath.bound = function(Value,Min,Max) { - var lowerBound = Min != null && Value < Min ? Min : Value; - if(Max != null && lowerBound > Max) { - return Max; - } else { - return lowerBound; - } -}; -flixel_math_FlxMath.lerp = function(a,b,ratio) { - return a + ratio * (b - a); -}; -flixel_math_FlxMath.inBounds = function(Value,Min,Max) { - if(Min == null || Value >= Min) { - if(Max != null) { - return Value <= Max; - } else { - return true; - } - } else { - return false; - } -}; -flixel_math_FlxMath.isOdd = function(n) { - return ((n | 0) & 1) != 0; -}; -flixel_math_FlxMath.isEven = function(n) { - return ((n | 0) & 1) == 0; -}; -flixel_math_FlxMath.numericComparison = function(a,b) { - if(b > a) { - return -1; - } else if(a > b) { - return 1; - } - return 0; -}; -flixel_math_FlxMath.pointInCoordinates = function(pointX,pointY,rectX,rectY,rectWidth,rectHeight) { - if(pointX >= rectX && pointX <= rectX + rectWidth) { - if(pointY >= rectY && pointY <= rectY + rectHeight) { - return true; - } - } - return false; -}; -flixel_math_FlxMath.pointInFlxRect = function(pointX,pointY,rect) { - if(pointX >= rect.x && pointX <= rect.x + rect.width && pointY >= rect.y) { - return pointY <= rect.y + rect.height; - } else { - return false; - } -}; -flixel_math_FlxMath.mouseInFlxRect = function(useWorldCoords,rect) { - if(rect == null) { - return true; - } - if(useWorldCoords) { - return flixel_math_FlxMath.pointInFlxRect(Math.floor(flixel_FlxG.mouse.x),Math.floor(flixel_FlxG.mouse.y),rect); - } else { - return flixel_math_FlxMath.pointInFlxRect(flixel_FlxG.mouse.screenX,flixel_FlxG.mouse.screenY,rect); - } -}; -flixel_math_FlxMath.pointInRectangle = function(pointX,pointY,rect) { - if(pointX >= rect.x && pointX <= rect.get_right() && pointY >= rect.y) { - return pointY <= rect.get_bottom(); - } else { - return false; - } -}; -flixel_math_FlxMath.maxAdd = function(value,amount,max,min) { - if(min == null) { - min = 0; - } - value += amount; - if(value > max) { - value = max; - } else if(value <= min) { - value = min; - } - return value; -}; -flixel_math_FlxMath.wrap = function(value,min,max) { - var range = max - min + 1; - if(value < min) { - value += range * ((min - value) / range + 1 | 0); - } - return min + (value - min) % range; -}; -flixel_math_FlxMath.remapToRange = function(value,start1,stop1,start2,stop2) { - return start2 + (value - start1) * ((stop2 - start2) / (stop1 - start1)); -}; -flixel_math_FlxMath.dotProduct = function(ax,ay,bx,by) { - return ax * bx + ay * by; -}; -flixel_math_FlxMath.vectorLength = function(dx,dy) { - return Math.sqrt(dx * dx + dy * dy); -}; -flixel_math_FlxMath.distanceBetween = function(SpriteA,SpriteB) { - var dx = SpriteA.x + SpriteA.origin.x - (SpriteB.x + SpriteB.origin.x); - var dy = SpriteA.y + SpriteA.origin.y - (SpriteB.y + SpriteB.origin.y); - return Math.sqrt(dx * dx + dy * dy) | 0; -}; -flixel_math_FlxMath.isDistanceWithin = function(SpriteA,SpriteB,Distance,IncludeEqual) { - if(IncludeEqual == null) { - IncludeEqual = false; - } - var dx = SpriteA.x + SpriteA.origin.x - (SpriteB.x + SpriteB.origin.x); - var dy = SpriteA.y + SpriteA.origin.y - (SpriteB.y + SpriteB.origin.y); - if(IncludeEqual) { - return dx * dx + dy * dy <= Distance * Distance; - } else { - return dx * dx + dy * dy < Distance * Distance; - } -}; -flixel_math_FlxMath.distanceToPoint = function(Sprite,Target) { - var dx = Sprite.x + Sprite.origin.x - Target.x; - var dy = Sprite.y + Sprite.origin.y - Target.y; - if(Target._weak) { - Target.put(); - } - return Math.sqrt(dx * dx + dy * dy) | 0; -}; -flixel_math_FlxMath.isDistanceToPointWithin = function(Sprite,Target,Distance,IncludeEqual) { - if(IncludeEqual == null) { - IncludeEqual = false; - } - var dx = Sprite.x + Sprite.origin.x - Target.x; - var dy = Sprite.y + Sprite.origin.y - Target.y; - if(Target._weak) { - Target.put(); - } - if(IncludeEqual) { - return dx * dx + dy * dy <= Distance * Distance; - } else { - return dx * dx + dy * dy < Distance * Distance; - } -}; -flixel_math_FlxMath.distanceToMouse = function(Sprite) { - var dx = Sprite.x + Sprite.origin.x - flixel_FlxG.mouse.screenX; - var dy = Sprite.y + Sprite.origin.y - flixel_FlxG.mouse.screenY; - return Math.sqrt(dx * dx + dy * dy) | 0; -}; -flixel_math_FlxMath.isDistanceToMouseWithin = function(Sprite,Distance,IncludeEqual) { - if(IncludeEqual == null) { - IncludeEqual = false; - } - var dx = Sprite.x + Sprite.origin.x - flixel_FlxG.mouse.screenX; - var dy = Sprite.y + Sprite.origin.y - flixel_FlxG.mouse.screenY; - if(IncludeEqual) { - return dx * dx + dy * dy <= Distance * Distance; - } else { - return dx * dx + dy * dy < Distance * Distance; - } -}; -flixel_math_FlxMath.distanceToTouch = function(Sprite,Touch1) { - var dx = Sprite.x + Sprite.origin.x - Touch1.screenX; - var dy = Sprite.y + Sprite.origin.y - Touch1.screenY; - return Math.sqrt(dx * dx + dy * dy) | 0; -}; -flixel_math_FlxMath.isDistanceToTouchWithin = function(Sprite,Touch1,Distance,IncludeEqual) { - if(IncludeEqual == null) { - IncludeEqual = false; - } - var dx = Sprite.x + Sprite.origin.x - Touch1.screenX; - var dy = Sprite.y + Sprite.origin.y - Touch1.screenY; - if(IncludeEqual) { - return dx * dx + dy * dy <= Distance * Distance; - } else { - return dx * dx + dy * dy < Distance * Distance; - } -}; -flixel_math_FlxMath.getDecimals = function(n) { - var helperArray = (n == null ? "null" : "" + n).split("."); - var decimals = 0; - if(helperArray.length > 1) { - decimals = helperArray[1].length; - } - return decimals; -}; -flixel_math_FlxMath.equal = function(aValueA,aValueB,aDiff) { - if(aDiff == null) { - aDiff = 0.0000001; - } - return Math.abs(aValueA - aValueB) <= aDiff; -}; -flixel_math_FlxMath.signOf = function(n) { - if(n < 0) { - return -1; - } else { - return 1; - } -}; -flixel_math_FlxMath.sameSign = function(a,b) { - return (a < 0 ? -1 : 1) == (b < 0 ? -1 : 1); -}; -flixel_math_FlxMath.fastSin = function(n) { - n *= 0.3183098862; - if(n > 1) { - n -= Math.ceil(n) >> 1 << 1; - } else if(n < -1) { - n += Math.ceil(-n) >> 1 << 1; - } - if(n > 0) { - return n * (3.1 + n * (0.5 + n * (-7.2 + n * 3.6))); - } else { - return n * (3.1 - n * (0.5 + n * (7.2 + n * 3.6))); - } -}; -flixel_math_FlxMath.fastCos = function(n) { - var n1 = n + 1.570796327; - n1 *= 0.3183098862; - if(n1 > 1) { - n1 -= Math.ceil(n1) >> 1 << 1; - } else if(n1 < -1) { - n1 += Math.ceil(-n1) >> 1 << 1; - } - if(n1 > 0) { - return n1 * (3.1 + n1 * (0.5 + n1 * (-7.2 + n1 * 3.6))); - } else { - return n1 * (3.1 - n1 * (0.5 + n1 * (7.2 + n1 * 3.6))); - } -}; -flixel_math_FlxMath.sinh = function(n) { - return (Math.exp(n) - Math.exp(-n)) / 2; -}; -flixel_math_FlxMath.maxInt = function(a,b) { - if(a > b) { - return a; - } else { - return b; - } -}; -flixel_math_FlxMath.minInt = function(a,b) { - if(a > b) { - return b; - } else { - return a; - } -}; -flixel_math_FlxMath.absInt = function(n) { - if(n > 0) { - return n; - } else { - return -n; - } -}; -var flixel_math_FlxMatrix = function(a,b,c,d,tx,ty) { - openfl_geom_Matrix.call(this,a,b,c,d,tx,ty); -}; -$hxClasses["flixel.math.FlxMatrix"] = flixel_math_FlxMatrix; -flixel_math_FlxMatrix.__name__ = "flixel.math.FlxMatrix"; -flixel_math_FlxMatrix.__super__ = openfl_geom_Matrix; -flixel_math_FlxMatrix.prototype = $extend(openfl_geom_Matrix.prototype,{ - rotateWithTrig: function(cos,sin) { - var a1 = this.a * cos - this.b * sin; - this.b = this.a * sin + this.b * cos; - this.a = a1; - var c1 = this.c * cos - this.d * sin; - this.d = this.c * sin + this.d * cos; - this.c = c1; - var tx1 = this.tx * cos - this.ty * sin; - this.ty = this.tx * sin + this.ty * cos; - this.tx = tx1; - return this; - } - ,rotateBy180: function() { - this.setTo(-this.a,-this.b,-this.c,-this.d,-this.tx,-this.ty); - return this; - } - ,rotateByPositive90: function() { - this.setTo(-this.b,this.a,-this.d,this.c,-this.ty,this.tx); - return this; - } - ,rotateByNegative90: function() { - this.setTo(this.b,-this.a,this.d,-this.c,this.ty,-this.tx); - return this; - } - ,transformX: function(px,py) { - return px * this.a + py * this.c + this.tx; - } - ,transformY: function(px,py) { - return px * this.b + py * this.d + this.ty; - } - ,__class__: flixel_math_FlxMatrix -}); -var flixel_math_FlxCallbackPoint = function(setXCallback,setYCallback,setXYCallback) { - flixel_math_FlxPoint.call(this); - this._setXCallback = setXCallback; - this._setYCallback = setXYCallback; - this._setXYCallback = setXYCallback; - if(this._setXCallback != null) { - if(this._setYCallback == null) { - this._setYCallback = setXCallback; - } - if(this._setXYCallback == null) { - this._setXYCallback = setXCallback; - } - } -}; -$hxClasses["flixel.math.FlxCallbackPoint"] = flixel_math_FlxCallbackPoint; -flixel_math_FlxCallbackPoint.__name__ = "flixel.math.FlxCallbackPoint"; -flixel_math_FlxCallbackPoint.__super__ = flixel_math_FlxPoint; -flixel_math_FlxCallbackPoint.prototype = $extend(flixel_math_FlxPoint.prototype,{ - _setXCallback: null - ,_setYCallback: null - ,_setXYCallback: null - ,set: function(X,Y) { - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - flixel_math_FlxPoint.prototype.set.call(this,X,Y); - if(this._setXYCallback != null) { - this._setXYCallback(this); - } - return this; - } - ,set_x: function(Value) { - flixel_math_FlxPoint.prototype.set_x.call(this,Value); - if(this._setXCallback != null) { - this._setXCallback(this); - } - return Value; - } - ,set_y: function(Value) { - flixel_math_FlxPoint.prototype.set_y.call(this,Value); - if(this._setYCallback != null) { - this._setYCallback(this); - } - return Value; - } - ,destroy: function() { - flixel_math_FlxPoint.prototype.destroy.call(this); - this._setXCallback = null; - this._setYCallback = null; - this._setXYCallback = null; - } - ,put: function() { - } - ,__class__: flixel_math_FlxCallbackPoint -}); -var flixel_math__$FlxVector_FlxVector_$Impl_$ = {}; -$hxClasses["flixel.math._FlxVector.FlxVector_Impl_"] = flixel_math__$FlxVector_FlxVector_$Impl_$; -flixel_math__$FlxVector_FlxVector_$Impl_$.__name__ = "flixel.math._FlxVector.FlxVector_Impl_"; -flixel_math__$FlxVector_FlxVector_$Impl_$.__properties__ = {get_ly:"get_ly",get_lx:"get_lx",get_ry:"get_ry",get_rx:"get_rx",set_radians:"set_radians",get_radians:"get_radians",set_degrees:"set_degrees",get_degrees:"get_degrees",get_lengthSquared:"get_lengthSquared",set_length:"set_length",get_length:"get_length",get_dy:"get_dy",get_dx:"get_dx",set_y:"set_y",get_y:"get_y",set_x:"set_x",get_x:"get_x",get_pool:"get_pool"}; -flixel_math__$FlxVector_FlxVector_$Impl_$.get = function(x,y) { - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - var X = x; - var Y = y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - return point; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.weak = function(x,y) { - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - var X = x; - var Y = y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var X1 = X; - var Y1 = Y; - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X1,Y1); - point._inPool = false; - var point1 = point; - point1._weak = true; - return point1; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$._new = function(x,y) { - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - var this1 = new flixel_math_FlxPoint(x,y); - return this1; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.set = function(this1,x,y) { - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - return this1.set(x,y); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.add = function(this1,x,y) { - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - var X = x; - var Y = y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _g = this1; - _g.set_x(_g.x + X); - var _g1 = this1; - _g1.set_y(_g1.y + Y); - return this1; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.addPoint = function(this1,point) { - return this1.addPoint(point); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.subtract = function(this1,x,y) { - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - var X = x; - var Y = y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _g = this1; - _g.set_x(_g.x - X); - var _g1 = this1; - _g1.set_y(_g1.y - Y); - return this1; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.subtractPoint = function(this1,point) { - return this1.subtractPoint(point); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.scale = function(this1,k) { - return this1.scale(k); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.scaleNew = function(this1,k) { - return flixel_math__$FlxVector_FlxVector_$Impl_$.clone(this1).scale(k); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.addNew = function(this1,v) { - return flixel_math__$FlxVector_FlxVector_$Impl_$.clone(this1).addPoint(v); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.subtractNew = function(this1,v) { - return flixel_math__$FlxVector_FlxVector_$Impl_$.clone(this1).subtractPoint(v); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.copyFrom = function(this1,point) { - this1.set_x(point.x); - this1.set_y(point.y); - if(point._weak) { - point.put(); - } - return this1; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.copyFromFlash = function(this1,flashPoint) { - this1.set_x(flashPoint.x); - this1.set_y(flashPoint.y); - return this1; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.floor = function(this1) { - this1.set_x(Math.floor(this1.x)); - this1.set_y(Math.floor(this1.y)); - return this1; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.ceil = function(this1) { - this1.set_x(Math.ceil(this1.x)); - this1.set_y(Math.ceil(this1.y)); - return this1; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.round = function(this1) { - this1.set_x(Math.round(this1.x)); - this1.set_y(Math.round(this1.y)); - return this1; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.rotate = function(this1,pivot,angle) { - return this1.rotate(pivot,angle); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.transform = function(this1,matrix) { - var x1 = this1.x * matrix.a + this1.y * matrix.c + matrix.tx; - var y1 = this1.x * matrix.b + this1.y * matrix.d + matrix.ty; - return this1.set(x1,y1); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.dotProduct = function(this1,v) { - var dp = this1.x * v.x + this1.y * v.y; - if(v._weak) { - v.put(); - } - return dp; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.dotProductWeak = function(this1,v) { - return this1.x * v.x + this1.y * v.y; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.dotProdWithNormalizing = function(this1,v) { - var normalized = flixel_math__$FlxVector_FlxVector_$Impl_$.normalize(flixel_math__$FlxVector_FlxVector_$Impl_$.clone(v,flixel_math__$FlxVector_FlxVector_$Impl_$._vector1)); - if(v._weak) { - v.put(); - } - return this1.x * normalized.x + this1.y * normalized.y; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.isPerpendicular = function(this1,v) { - var dp = this1.x * v.x + this1.y * v.y; - if(v._weak) { - v.put(); - } - return Math.abs(dp) < 9.99999999999999841e-15; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.crossProductLength = function(this1,v) { - var cp = this1.x * v.y - this1.y * v.x; - if(v._weak) { - v.put(); - } - return cp; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.crossProductLengthWeak = function(this1,v) { - return this1.x * v.y - this1.y * v.x; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.isParallel = function(this1,v) { - var p = Math.abs(this1.x * v.y - this1.y * v.x) < 9.99999999999999841e-15; - if(v._weak) { - v.put(); - } - return p; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.isParallelWeak = function(this1,v) { - return Math.abs(this1.x * v.y - this1.y * v.x) < 9.99999999999999841e-15; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.isZero = function(this1) { - if(Math.abs(this1.x) < 0.0000001) { - return Math.abs(this1.y) < 0.0000001; - } else { - return false; - } -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.zero = function(this1) { - this1.set_x(this1.set_y(0)); - return this1; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.normalize = function(this1) { - if(Math.abs(this1.x) < 0.0000001 && Math.abs(this1.y) < 0.0000001) { - return this1; - } - return this1.scale(1 / Math.sqrt(this1.x * this1.x + this1.y * this1.y)); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.isNormalized = function(this1) { - return Math.abs(this1.x * this1.x + this1.y * this1.y - 1) < 9.99999999999999841e-15; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.rotateByRadians = function(this1,rads) { - var s = Math.sin(rads); - var c = Math.cos(rads); - var tempX = this1.x; - this1.set_x(tempX * c - this1.y * s); - this1.set_y(tempX * s + this1.y * c); - return this1; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.rotateByDegrees = function(this1,degs) { - var rads = degs * (Math.PI / 180); - var s = Math.sin(rads); - var c = Math.cos(rads); - var tempX = this1.x; - this1.set_x(tempX * c - this1.y * s); - this1.set_y(tempX * s + this1.y * c); - return this1; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.rotateWithTrig = function(this1,sin,cos) { - var tempX = this1.x; - this1.set_x(tempX * cos - this1.y * sin); - this1.set_y(tempX * sin + this1.y * cos); - return this1; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.rightNormal = function(this1,vec) { - if(vec == null) { - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - vec = point; - } - var x = -this1.y; - var y = this1.x; - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - vec.set(x,y); - return vec; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.leftNormal = function(this1,vec) { - if(vec == null) { - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - vec = point; - } - var x = this1.y; - var y = -this1.x; - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - vec.set(x,y); - return vec; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.negate = function(this1) { - var _g = this1; - _g.set_x(_g.x * -1); - var _g1 = this1; - _g1.set_y(_g1.y * -1); - return this1; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.negateNew = function(this1) { - var this2 = flixel_math__$FlxVector_FlxVector_$Impl_$.clone(this1); - var _g = this2; - _g.set_x(_g.x * -1); - var _g1 = this2; - _g1.set_y(_g1.y * -1); - return this2; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.projectTo = function(this1,v,proj) { - var dp = this1.x * v.x + this1.y * v.y; - var lenSq = v.x * v.x + v.y * v.y; - if(proj == null) { - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - proj = point; - } - var x = dp * v.x / lenSq; - var y = dp * v.y / lenSq; - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - proj.set(x,y); - if(v._weak) { - v.put(); - } - return proj; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.projectToNormalized = function(this1,v,proj) { - var proj1 = proj; - var dp = this1.x * v.x + this1.y * v.y; - if(proj1 == null) { - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - proj1 = point; - } - var x = dp * v.x; - var y = dp * v.y; - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - proj = proj1.set(x,y); - if(v._weak) { - v.put(); - } - return proj; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.projectToNormalizedWeak = function(this1,v,proj) { - var dp = this1.x * v.x + this1.y * v.y; - if(proj == null) { - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - proj = point; - } - var x = dp * v.x; - var y = dp * v.y; - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - return proj.set(x,y); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.perpProduct = function(this1,v) { - var pp = this1.y * v.x + -this1.x * v.y; - if(v._weak) { - v.put(); - } - return pp; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.perpProductWeak = function(this1,v) { - return this1.y * v.x + -this1.x * v.y; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.ratio = function(this1,a,b,v) { - var r; - if(Math.abs(this1.x * v.y - this1.y * v.x) < 9.99999999999999841e-15) { - r = NaN; - } else if(this1.x * this1.x + this1.y * this1.y < 9.99999999999999841e-15 || v.x * v.x + v.y * v.y < 9.99999999999999841e-15) { - r = NaN; - } else { - flixel_math__$FlxVector_FlxVector_$Impl_$._vector1 = flixel_math__$FlxVector_FlxVector_$Impl_$.clone(b,flixel_math__$FlxVector_FlxVector_$Impl_$._vector1); - var _this = flixel_math__$FlxVector_FlxVector_$Impl_$._vector1; - var _g = _this; - _g.set_x(_g.x - a.x); - var _g1 = _this; - _g1.set_y(_g1.y - a.y); - var this2 = flixel_math__$FlxVector_FlxVector_$Impl_$._vector1; - r = (this2.y * v.x + -this2.x * v.y) / (this1.y * v.x + -this1.x * v.y); - } - if(a._weak) { - a.put(); - } - if(b._weak) { - b.put(); - } - if(v._weak) { - v.put(); - } - return r; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.ratioWeak = function(this1,a,b,v) { - if(Math.abs(this1.x * v.y - this1.y * v.x) < 9.99999999999999841e-15) { - return NaN; - } - if(this1.x * this1.x + this1.y * this1.y < 9.99999999999999841e-15 || v.x * v.x + v.y * v.y < 9.99999999999999841e-15) { - return NaN; - } - flixel_math__$FlxVector_FlxVector_$Impl_$._vector1 = flixel_math__$FlxVector_FlxVector_$Impl_$.clone(b,flixel_math__$FlxVector_FlxVector_$Impl_$._vector1); - var _this = flixel_math__$FlxVector_FlxVector_$Impl_$._vector1; - var _g = _this; - _g.set_x(_g.x - a.x); - var _g1 = _this; - _g1.set_y(_g1.y - a.y); - var this2 = flixel_math__$FlxVector_FlxVector_$Impl_$._vector1; - return (this2.y * v.x + -this2.x * v.y) / (this1.y * v.x + -this1.x * v.y); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.findIntersection = function(this1,a,b,v,intersection) { - var t; - if(Math.abs(this1.x * v.y - this1.y * v.x) < 9.99999999999999841e-15) { - t = NaN; - } else if(this1.x * this1.x + this1.y * this1.y < 9.99999999999999841e-15 || v.x * v.x + v.y * v.y < 9.99999999999999841e-15) { - t = NaN; - } else { - flixel_math__$FlxVector_FlxVector_$Impl_$._vector1 = flixel_math__$FlxVector_FlxVector_$Impl_$.clone(b,flixel_math__$FlxVector_FlxVector_$Impl_$._vector1); - var _this = flixel_math__$FlxVector_FlxVector_$Impl_$._vector1; - var _g = _this; - _g.set_x(_g.x - a.x); - var _g1 = _this; - _g1.set_y(_g1.y - a.y); - var this2 = flixel_math__$FlxVector_FlxVector_$Impl_$._vector1; - t = (this2.y * v.x + -this2.x * v.y) / (this1.y * v.x + -this1.x * v.y); - } - if(intersection == null) { - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - intersection = point; - } - if(isNaN(t)) { - var x = NaN; - var y = NaN; - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - intersection.set(x,y); - } else { - var x1 = a.x + t * this1.x; - var y1 = a.y + t * this1.y; - if(y1 == null) { - y1 = 0; - } - if(x1 == null) { - x1 = 0; - } - intersection.set(x1,y1); - } - if(a._weak) { - a.put(); - } - if(b._weak) { - b.put(); - } - if(v._weak) { - v.put(); - } - return intersection; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.findIntersectionInBounds = function(this1,a,b,v,intersection) { - if(intersection == null) { - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - intersection = point; - } - var t1; - if(Math.abs(this1.x * v.y - this1.y * v.x) < 9.99999999999999841e-15) { - t1 = NaN; - } else if(this1.x * this1.x + this1.y * this1.y < 9.99999999999999841e-15 || v.x * v.x + v.y * v.y < 9.99999999999999841e-15) { - t1 = NaN; - } else { - flixel_math__$FlxVector_FlxVector_$Impl_$._vector1 = flixel_math__$FlxVector_FlxVector_$Impl_$.clone(b,flixel_math__$FlxVector_FlxVector_$Impl_$._vector1); - var _this = flixel_math__$FlxVector_FlxVector_$Impl_$._vector1; - var _g = _this; - _g.set_x(_g.x - a.x); - var _g1 = _this; - _g1.set_y(_g1.y - a.y); - var this2 = flixel_math__$FlxVector_FlxVector_$Impl_$._vector1; - t1 = (this2.y * v.x + -this2.x * v.y) / (this1.y * v.x + -this1.x * v.y); - } - var t2; - if(Math.abs(v.x * this1.y - v.y * this1.x) < 9.99999999999999841e-15) { - t2 = NaN; - } else if(v.x * v.x + v.y * v.y < 9.99999999999999841e-15 || this1.x * this1.x + this1.y * this1.y < 9.99999999999999841e-15) { - t2 = NaN; - } else { - flixel_math__$FlxVector_FlxVector_$Impl_$._vector1 = flixel_math__$FlxVector_FlxVector_$Impl_$.clone(a,flixel_math__$FlxVector_FlxVector_$Impl_$._vector1); - var _this1 = flixel_math__$FlxVector_FlxVector_$Impl_$._vector1; - var _g2 = _this1; - _g2.set_x(_g2.x - b.x); - var _g3 = _this1; - _g3.set_y(_g3.y - b.y); - var this3 = flixel_math__$FlxVector_FlxVector_$Impl_$._vector1; - t2 = (this3.y * this1.x + -this3.x * this1.y) / (v.y * this1.x + -v.x * this1.y); - } - if(!isNaN(t1) && !isNaN(t2) && t1 > 0 && t1 <= 1 && t2 > 0 && t2 <= 1) { - var x = a.x + t1 * this1.x; - var y = a.y + t1 * this1.y; - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - intersection.set(x,y); - } else { - var x1 = NaN; - var y1 = NaN; - if(y1 == null) { - y1 = 0; - } - if(x1 == null) { - x1 = 0; - } - intersection.set(x1,y1); - } - if(a._weak) { - a.put(); - } - if(b._weak) { - b.put(); - } - if(v._weak) { - v.put(); - } - return intersection; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.truncate = function(this1,max) { - var l = Math.min(max,Math.sqrt(this1.x * this1.x + this1.y * this1.y)); - if(!(Math.abs(this1.x) < 0.0000001 && Math.abs(this1.y) < 0.0000001)) { - var a = flixel_math__$FlxVector_FlxVector_$Impl_$.get_radians(this1); - this1.set_x(l * Math.cos(a)); - this1.set_y(l * Math.sin(a)); - } - return this1; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.radiansBetween = function(this1,v) { - var rads = Math.acos((this1.x * v.x + this1.y * v.y) / (Math.sqrt(this1.x * this1.x + this1.y * this1.y) * Math.sqrt(v.x * v.x + v.y * v.y))); - if(v._weak) { - v.put(); - } - return rads; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.degreesBetween = function(this1,v) { - var rads = Math.acos((this1.x * v.x + this1.y * v.y) / (Math.sqrt(this1.x * this1.x + this1.y * this1.y) * Math.sqrt(v.x * v.x + v.y * v.y))); - if(v._weak) { - v.put(); - } - return rads * (180 / Math.PI); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.sign = function(this1,a,b) { - var signFl = (a.x - this1.x) * (b.y - this1.y) - (a.y - this1.y) * (b.x - this1.x); - if(a._weak) { - a.put(); - } - if(b._weak) { - b.put(); - } - if(signFl == 0) { - return 0; - } - return Math.round(signFl / Math.abs(signFl)); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.dist = function(this1,v) { - var dx = v.x - this1.x; - var dy = v.y - this1.y; - if(v._weak) { - v.put(); - } - return Math.sqrt(dx * dx + dy * dy); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.distSquared = function(this1,v) { - var dx = v.x - this1.x; - var dy = v.y - this1.y; - if(v._weak) { - v.put(); - } - return dx * dx + dy * dy; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.bounce = function(this1,normal,bounceCoeff) { - if(bounceCoeff == null) { - bounceCoeff = 1; - } - var d = (1 + bounceCoeff) * (this1.x * normal.x + this1.y * normal.y); - var _g = this1; - _g.set_x(_g.x - d * normal.x); - var _g1 = this1; - _g1.set_y(_g1.y - d * normal.y); - if(normal._weak) { - normal.put(); - } - return this1; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.bounceWithFriction = function(this1,normal,bounceCoeff,friction) { - if(friction == null) { - friction = 0; - } - if(bounceCoeff == null) { - bounceCoeff = 1; - } - var v = flixel_math__$FlxVector_FlxVector_$Impl_$.rightNormal(normal,flixel_math__$FlxVector_FlxVector_$Impl_$._vector3); - var proj = flixel_math__$FlxVector_FlxVector_$Impl_$._vector1; - var dp = this1.x * v.x + this1.y * v.y; - if(proj == null) { - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - proj = point; - } - var x = dp * v.x; - var y = dp * v.y; - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - var p1 = proj.set(x,y); - var proj1 = flixel_math__$FlxVector_FlxVector_$Impl_$._vector2; - var dp1 = this1.x * normal.x + this1.y * normal.y; - if(proj1 == null) { - var X1 = 0; - var Y1 = 0; - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var point1 = flixel_math_FlxPoint._pool.get().set(X1,Y1); - point1._inPool = false; - proj1 = point1; - } - var x1 = dp1 * normal.x; - var y1 = dp1 * normal.y; - if(y1 == null) { - y1 = 0; - } - if(x1 == null) { - x1 = 0; - } - var p2 = proj1.set(x1,y1); - var bounceX = -p2.x; - var bounceY = -p2.y; - var frictionX = p1.x; - var frictionY = p1.y; - this1.set_x(bounceX * bounceCoeff + frictionX * friction); - this1.set_y(bounceY * bounceCoeff + frictionY * friction); - if(normal._weak) { - normal.put(); - } - return this1; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.isValid = function(this1) { - if(!isNaN(this1.x) && !isNaN(this1.y) && isFinite(this1.x)) { - return isFinite(this1.y); - } else { - return false; - } -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.clone = function(this1,vec) { - if(vec == null) { - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - vec = point; - } - vec.set_x(this1.x); - vec.set_y(this1.y); - return vec; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.get_x = function(this1) { - return this1.x; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.set_x = function(this1,x) { - return this1.set_x(x); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.get_y = function(this1) { - return this1.y; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.set_y = function(this1,y) { - return this1.set_y(y); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.get_dx = function(this1) { - if(Math.abs(this1.x) < 0.0000001 && Math.abs(this1.y) < 0.0000001) { - return 0; - } - return this1.x / Math.sqrt(this1.x * this1.x + this1.y * this1.y); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.get_dy = function(this1) { - if(Math.abs(this1.x) < 0.0000001 && Math.abs(this1.y) < 0.0000001) { - return 0; - } - return this1.y / Math.sqrt(this1.x * this1.x + this1.y * this1.y); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.get_length = function(this1) { - return Math.sqrt(this1.x * this1.x + this1.y * this1.y); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.set_length = function(this1,l) { - if(!(Math.abs(this1.x) < 0.0000001 && Math.abs(this1.y) < 0.0000001)) { - var a = flixel_math__$FlxVector_FlxVector_$Impl_$.get_radians(this1); - this1.set_x(l * Math.cos(a)); - this1.set_y(l * Math.sin(a)); - } - return l; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.get_lengthSquared = function(this1) { - return this1.x * this1.x + this1.y * this1.y; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.get_degrees = function(this1) { - return flixel_math__$FlxVector_FlxVector_$Impl_$.get_radians(this1) * (180 / Math.PI); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.set_degrees = function(this1,degs) { - var rads = degs * (Math.PI / 180); - var len = Math.sqrt(this1.x * this1.x + this1.y * this1.y); - this1.set_x(len * Math.cos(rads)); - this1.set_y(len * Math.sin(rads)); - return degs; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.get_radians = function(this1) { - if(Math.abs(this1.x) < 0.0000001 && Math.abs(this1.y) < 0.0000001) { - return 0; - } - return Math.atan2(this1.y,this1.x); -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.set_radians = function(this1,rads) { - var len = Math.sqrt(this1.x * this1.x + this1.y * this1.y); - this1.set_x(len * Math.cos(rads)); - this1.set_y(len * Math.sin(rads)); - return rads; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.get_rx = function(this1) { - return -this1.y; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.get_ry = function(this1) { - return this1.x; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.get_lx = function(this1) { - return this1.y; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.get_ly = function(this1) { - return -this1.x; -}; -flixel_math__$FlxVector_FlxVector_$Impl_$.get_pool = function() { - return flixel_math_FlxPoint.get_pool(); -}; -var flixel_math_FlxVelocity = function() { }; -$hxClasses["flixel.math.FlxVelocity"] = flixel_math_FlxVelocity; -flixel_math_FlxVelocity.__name__ = "flixel.math.FlxVelocity"; -flixel_math_FlxVelocity.moveTowardsObject = function(Source,Dest,Speed,MaxTime) { - if(MaxTime == null) { - MaxTime = 0; - } - if(Speed == null) { - Speed = 60; - } - var a = flixel_math_FlxAngle.angleBetween(Source,Dest); - if(MaxTime > 0) { - var dx = Source.x + Source.origin.x - (Dest.x + Dest.origin.x); - var dy = Source.y + Source.origin.y - (Dest.y + Dest.origin.y); - var d = Math.sqrt(dx * dx + dy * dy) | 0; - Speed = d / (MaxTime / 1000) | 0; - } - Source.velocity.set_x(Math.cos(a) * Speed); - Source.velocity.set_y(Math.sin(a) * Speed); -}; -flixel_math_FlxVelocity.accelerateTowardsObject = function(Source,Dest,Acceleration,MaxSpeed) { - var a = flixel_math_FlxAngle.angleBetween(Source,Dest); - var sinA = Math.sin(a); - var cosA = Math.cos(a); - Source.velocity.set(0,0); - Source.acceleration.set(cosA * Acceleration,sinA * Acceleration); - Source.maxVelocity.set(Math.abs(cosA * MaxSpeed),Math.abs(sinA * MaxSpeed)); -}; -flixel_math_FlxVelocity.moveTowardsMouse = function(Source,Speed,MaxTime) { - if(MaxTime == null) { - MaxTime = 0; - } - if(Speed == null) { - Speed = 60; - } - var a = flixel_math_FlxAngle.angleBetweenMouse(Source); - if(MaxTime > 0) { - var dx = Source.x + Source.origin.x - flixel_FlxG.mouse.screenX; - var dy = Source.y + Source.origin.y - flixel_FlxG.mouse.screenY; - var d = Math.sqrt(dx * dx + dy * dy) | 0; - Speed = d / (MaxTime / 1000) | 0; - } - Source.velocity.set_x(Math.cos(a) * Speed); - Source.velocity.set_y(Math.sin(a) * Speed); -}; -flixel_math_FlxVelocity.moveTowardsTouch = function(Source,Touch1,Speed,MaxTime) { - if(MaxTime == null) { - MaxTime = 0; - } - if(Speed == null) { - Speed = 60; - } - var a = flixel_math_FlxAngle.angleBetweenTouch(Source,Touch1); - if(MaxTime > 0) { - var dx = Source.x + Source.origin.x - Touch1.screenX; - var dy = Source.y + Source.origin.y - Touch1.screenY; - var d = Math.sqrt(dx * dx + dy * dy) | 0; - Speed = d / (MaxTime / 1000) | 0; - } - Source.velocity.set_x(Math.cos(a) * Speed); - Source.velocity.set_y(Math.sin(a) * Speed); -}; -flixel_math_FlxVelocity.accelerateTowardsMouse = function(Source,Acceleration,MaxSpeed) { - var a = flixel_math_FlxAngle.angleBetweenMouse(Source); - var sinA = Math.sin(a); - var cosA = Math.cos(a); - Source.velocity.set(0,0); - Source.acceleration.set(cosA * Acceleration,sinA * Acceleration); - Source.maxVelocity.set(Math.abs(cosA * MaxSpeed),Math.abs(sinA * MaxSpeed)); -}; -flixel_math_FlxVelocity.accelerateTowardsTouch = function(Source,Touch1,Acceleration,MaxSpeed) { - var a = flixel_math_FlxAngle.angleBetweenTouch(Source,Touch1); - var sinA = Math.sin(a); - var cosA = Math.cos(a); - Source.velocity.set(0,0); - Source.acceleration.set(cosA * Acceleration,sinA * Acceleration); - Source.maxVelocity.set(Math.abs(cosA * MaxSpeed),Math.abs(sinA * MaxSpeed)); -}; -flixel_math_FlxVelocity.moveTowardsPoint = function(Source,Target,Speed,MaxTime) { - if(MaxTime == null) { - MaxTime = 0; - } - if(Speed == null) { - Speed = 60; - } - var a = flixel_math_FlxAngle.angleBetweenPoint(Source,Target); - if(MaxTime > 0) { - var dx = Source.x + Source.origin.x - Target.x; - var dy = Source.y + Source.origin.y - Target.y; - if(Target._weak) { - Target.put(); - } - var d = Math.sqrt(dx * dx + dy * dy) | 0; - Speed = d / (MaxTime / 1000) | 0; - } - Source.velocity.set_x(Math.cos(a) * Speed); - Source.velocity.set_y(Math.sin(a) * Speed); - if(Target._weak) { - Target.put(); - } -}; -flixel_math_FlxVelocity.accelerateTowardsPoint = function(Source,Target,Acceleration,MaxSpeed) { - var a = flixel_math_FlxAngle.angleBetweenPoint(Source,Target); - var sinA = Math.sin(a); - var cosA = Math.cos(a); - Source.velocity.set(0,0); - Source.acceleration.set(cosA * Acceleration,sinA * Acceleration); - Source.maxVelocity.set(Math.abs(cosA * MaxSpeed),Math.abs(sinA * MaxSpeed)); - if(Target._weak) { - Target.put(); - } -}; -flixel_math_FlxVelocity.velocityFromAngle = function(Angle,Speed) { - var a = Angle * (Math.PI / 180); - var X = Math.cos(a) * Speed; - var Y = Math.sin(a) * Speed; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - return point; -}; -flixel_math_FlxVelocity.velocityFromFacing = function(Parent,Speed) { - var a = flixel_math_FlxAngle.angleFromFacing(Parent.facing); - var X = Math.cos(a) * Speed; - var Y = Math.sin(a) * Speed; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - return point; -}; -flixel_math_FlxVelocity.computeVelocity = function(Velocity,Acceleration,Drag,Max,Elapsed) { - if(Acceleration != 0) { - Velocity += Acceleration * Elapsed; - } else if(Drag != 0) { - var drag = Drag * Elapsed; - if(Velocity - drag > 0) { - Velocity -= drag; - } else if(Velocity + drag < 0) { - Velocity += drag; - } else { - Velocity = 0; - } - } - if(Velocity != 0 && Max != 0) { - if(Velocity > Max) { - Velocity = Max; - } else if(Velocity < -Max) { - Velocity = -Max; - } - } - return Velocity; -}; -flixel_math_FlxVelocity.accelerateFromAngle = function(source,radians,acceleration,maxSpeed,resetVelocity) { - if(resetVelocity == null) { - resetVelocity = true; - } - var sinA = Math.sin(radians); - var cosA = Math.cos(radians); - if(resetVelocity) { - source.velocity.set(0,0); - } - source.acceleration.set(cosA * acceleration,sinA * acceleration); - source.maxVelocity.set(Math.abs(cosA * maxSpeed),Math.abs(sinA * maxSpeed)); -}; -var flixel_system_GraphicLogo = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_GraphicLogo.preload != null) { - this.__fromImage(flixel_system_GraphicLogo.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_GraphicLogo.resourceName),flixel_system_GraphicLogo.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_GraphicLogo.preload == null) { - flixel_system_GraphicLogo.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.GraphicLogo"] = flixel_system_GraphicLogo; -flixel_system_GraphicLogo.__name__ = "flixel.system.GraphicLogo"; -flixel_system_GraphicLogo.preload = null; -flixel_system_GraphicLogo.__super__ = openfl_display_BitmapData; -flixel_system_GraphicLogo.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_GraphicLogo -}); -var flixel_system_GraphicVirtualInput = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_GraphicVirtualInput.preload != null) { - this.__fromImage(flixel_system_GraphicVirtualInput.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_GraphicVirtualInput.resourceName),flixel_system_GraphicVirtualInput.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_GraphicVirtualInput.preload == null) { - flixel_system_GraphicVirtualInput.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.GraphicVirtualInput"] = flixel_system_GraphicVirtualInput; -flixel_system_GraphicVirtualInput.__name__ = "flixel.system.GraphicVirtualInput"; -flixel_system_GraphicVirtualInput.preload = null; -flixel_system_GraphicVirtualInput.__super__ = openfl_display_BitmapData; -flixel_system_GraphicVirtualInput.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_GraphicVirtualInput -}); -var haxe_io_Bytes = function(data) { - this.length = data.byteLength; - this.b = new Uint8Array(data); - this.b.bufferValue = data; - data.hxBytes = this; - data.bytes = this.b; -}; -$hxClasses["haxe.io.Bytes"] = haxe_io_Bytes; -haxe_io_Bytes.__name__ = "haxe.io.Bytes"; -haxe_io_Bytes.alloc = function(length) { - return new haxe_io_Bytes(new ArrayBuffer(length)); -}; -haxe_io_Bytes.ofString = function(s,encoding) { - var a = []; - var i = 0; - while(i < s.length) { - var c = s.charCodeAt(i++); - if(55296 <= c && c <= 56319) { - c = c - 55232 << 10 | s.charCodeAt(i++) & 1023; - } - if(c <= 127) { - a.push(c); - } else if(c <= 2047) { - a.push(192 | c >> 6); - a.push(128 | c & 63); - } else if(c <= 65535) { - a.push(224 | c >> 12); - a.push(128 | c >> 6 & 63); - a.push(128 | c & 63); - } else { - a.push(240 | c >> 18); - a.push(128 | c >> 12 & 63); - a.push(128 | c >> 6 & 63); - a.push(128 | c & 63); - } - } - return new haxe_io_Bytes(new Uint8Array(a).buffer); -}; -haxe_io_Bytes.ofData = function(b) { - var hb = b.hxBytes; - if(hb != null) { - return hb; - } - return new haxe_io_Bytes(b); -}; -haxe_io_Bytes.ofHex = function(s) { - if((s.length & 1) != 0) { - throw new js__$Boot_HaxeError("Not a hex string (odd number of digits)"); - } - var a = []; - var i = 0; - var len = s.length >> 1; - while(i < len) { - var high = s.charCodeAt(i * 2); - var low = s.charCodeAt(i * 2 + 1); - high = (high & 15) + ((high & 64) >> 6) * 9; - low = (low & 15) + ((low & 64) >> 6) * 9; - a.push((high << 4 | low) & 255); - ++i; - } - return new haxe_io_Bytes(new Uint8Array(a).buffer); -}; -haxe_io_Bytes.fastGet = function(b,pos) { - return b.bytes[pos]; -}; -haxe_io_Bytes.prototype = { - length: null - ,b: null - ,data: null - ,get: function(pos) { - return this.b[pos]; - } - ,set: function(pos,v) { - this.b[pos] = v & 255; - } - ,blit: function(pos,src,srcpos,len) { - if(pos < 0 || srcpos < 0 || len < 0 || pos + len > this.length || srcpos + len > src.length) { - throw new js__$Boot_HaxeError(haxe_io_Error.OutsideBounds); - } - if(srcpos == 0 && len == src.b.byteLength) { - this.b.set(src.b,pos); - } else { - this.b.set(src.b.subarray(srcpos,srcpos + len),pos); - } - } - ,fill: function(pos,len,value) { - var _g = 0; - var _g1 = len; - while(_g < _g1) { - var i = _g++; - this.b[pos++] = value & 255; - } - } - ,sub: function(pos,len) { - if(pos < 0 || len < 0 || pos + len > this.length) { - throw new js__$Boot_HaxeError(haxe_io_Error.OutsideBounds); - } - return new haxe_io_Bytes(this.b.buffer.slice(pos + this.b.byteOffset,pos + this.b.byteOffset + len)); - } - ,compare: function(other) { - var b1 = this.b; - var b2 = other.b; - var len = this.length < other.length ? this.length : other.length; - var _g = 0; - var _g1 = len; - while(_g < _g1) { - var i = _g++; - if(b1[i] != b2[i]) { - return b1[i] - b2[i]; - } - } - return this.length - other.length; - } - ,initData: function() { - if(this.data == null) { - this.data = new DataView(this.b.buffer,this.b.byteOffset,this.b.byteLength); - } - } - ,getDouble: function(pos) { - if(this.data == null) { - this.data = new DataView(this.b.buffer,this.b.byteOffset,this.b.byteLength); - } - return this.data.getFloat64(pos,true); - } - ,getFloat: function(pos) { - if(this.data == null) { - this.data = new DataView(this.b.buffer,this.b.byteOffset,this.b.byteLength); - } - return this.data.getFloat32(pos,true); - } - ,setDouble: function(pos,v) { - if(this.data == null) { - this.data = new DataView(this.b.buffer,this.b.byteOffset,this.b.byteLength); - } - this.data.setFloat64(pos,v,true); - } - ,setFloat: function(pos,v) { - if(this.data == null) { - this.data = new DataView(this.b.buffer,this.b.byteOffset,this.b.byteLength); - } - this.data.setFloat32(pos,v,true); - } - ,getUInt16: function(pos) { - if(this.data == null) { - this.data = new DataView(this.b.buffer,this.b.byteOffset,this.b.byteLength); - } - return this.data.getUint16(pos,true); - } - ,setUInt16: function(pos,v) { - if(this.data == null) { - this.data = new DataView(this.b.buffer,this.b.byteOffset,this.b.byteLength); - } - this.data.setUint16(pos,v,true); - } - ,getInt32: function(pos) { - if(this.data == null) { - this.data = new DataView(this.b.buffer,this.b.byteOffset,this.b.byteLength); - } - return this.data.getInt32(pos,true); - } - ,setInt32: function(pos,v) { - if(this.data == null) { - this.data = new DataView(this.b.buffer,this.b.byteOffset,this.b.byteLength); - } - this.data.setInt32(pos,v,true); - } - ,getInt64: function(pos) { - var this1 = new haxe__$Int64__$_$_$Int64(this.getInt32(pos + 4),this.getInt32(pos)); - return this1; - } - ,setInt64: function(pos,v) { - this.setInt32(pos,v.low); - this.setInt32(pos + 4,v.high); - } - ,getString: function(pos,len,encoding) { - if(pos < 0 || len < 0 || pos + len > this.length) { - throw new js__$Boot_HaxeError(haxe_io_Error.OutsideBounds); - } - var s = ""; - var b = this.b; - var fcc = _$String_String_$Impl_$.fromCharCode; - var i = pos; - var max = pos + len; - while(i < max) { - var c = b[i++]; - if(c < 128) { - if(c == 0) { - break; - } - s += fcc(c); - } else if(c < 224) { - s += fcc((c & 63) << 6 | b[i++] & 127); - } else if(c < 240) { - var c2 = b[i++]; - s += fcc((c & 31) << 12 | (c2 & 127) << 6 | b[i++] & 127); - } else { - var c21 = b[i++]; - var c3 = b[i++]; - var u = (c & 15) << 18 | (c21 & 127) << 12 | (c3 & 127) << 6 | b[i++] & 127; - s += fcc((u >> 10) + 55232); - s += fcc(u & 1023 | 56320); - } - } - return s; - } - ,readString: function(pos,len) { - return this.getString(pos,len); - } - ,toString: function() { - return this.getString(0,this.length); - } - ,toHex: function() { - var s_b = ""; - var chars = []; - var str = "0123456789abcdef"; - var _g = 0; - var _g1 = str.length; - while(_g < _g1) { - var i = _g++; - chars.push(HxOverrides.cca(str,i)); - } - var _g2 = 0; - var _g3 = this.length; - while(_g2 < _g3) { - var i1 = _g2++; - var c = this.b[i1]; - s_b += String.fromCodePoint(chars[c >> 4]); - s_b += String.fromCodePoint(chars[c & 15]); - } - return s_b; - } - ,getData: function() { - return this.b.bufferValue; - } - ,__class__: haxe_io_Bytes -}; -var openfl_utils_IDataOutput = function() { }; -$hxClasses["openfl.utils.IDataOutput"] = openfl_utils_IDataOutput; -openfl_utils_IDataOutput.__name__ = "openfl.utils.IDataOutput"; -openfl_utils_IDataOutput.__isInterface__ = true; -openfl_utils_IDataOutput.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__: openfl_utils_IDataOutput - ,__properties__: {set_endian:"set_endian",get_endian:"get_endian"} -}; -var openfl_utils_IDataInput = function() { }; -$hxClasses["openfl.utils.IDataInput"] = openfl_utils_IDataInput; -openfl_utils_IDataInput.__name__ = "openfl.utils.IDataInput"; -openfl_utils_IDataInput.__isInterface__ = true; -openfl_utils_IDataInput.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__: openfl_utils_IDataInput - ,__properties__: {set_endian:"set_endian",get_endian:"get_endian",get_bytesAvailable:"get_bytesAvailable"} -}; -var openfl_utils_ByteArrayData = function(length) { - if(length == null) { - length = 0; - } - var bytes = new haxe_io_Bytes(new ArrayBuffer(length)); - haxe_io_Bytes.call(this,bytes.b.buffer); - this.__length = length; - if(openfl_utils_ByteArrayData.__defaultEndian == null) { - if(lime_system_System.get_endianness() == lime_system_Endian.LITTLE_ENDIAN) { - openfl_utils_ByteArrayData.__defaultEndian = 1; - } else { - openfl_utils_ByteArrayData.__defaultEndian = 0; - } - } - this.__endian = openfl_utils_ByteArrayData.__defaultEndian; - this.objectEncoding = openfl_utils_ByteArrayData.defaultObjectEncoding; - this.position = 0; -}; -$hxClasses["openfl.utils.ByteArrayData"] = openfl_utils_ByteArrayData; -openfl_utils_ByteArrayData.__name__ = "openfl.utils.ByteArrayData"; -openfl_utils_ByteArrayData.__interfaces__ = [openfl_utils_IDataOutput,openfl_utils_IDataInput]; -openfl_utils_ByteArrayData.__properties__ = {set_defaultEndian:"set_defaultEndian",get_defaultEndian:"get_defaultEndian"}; -openfl_utils_ByteArrayData.fromBytes = function(bytes) { - var result = new openfl_utils_ByteArrayData(); - result.__fromBytes(bytes); - return result; -}; -openfl_utils_ByteArrayData.get_defaultEndian = function() { - if(openfl_utils_ByteArrayData.__defaultEndian == null) { - if(lime_system_System.get_endianness() == lime_system_Endian.LITTLE_ENDIAN) { - openfl_utils_ByteArrayData.__defaultEndian = 1; - } else { - openfl_utils_ByteArrayData.__defaultEndian = 0; - } - } - return openfl_utils_ByteArrayData.__defaultEndian; -}; -openfl_utils_ByteArrayData.set_defaultEndian = function(value) { - return openfl_utils_ByteArrayData.__defaultEndian = value; -}; -openfl_utils_ByteArrayData.__super__ = haxe_io_Bytes; -openfl_utils_ByteArrayData.prototype = $extend(haxe_io_Bytes.prototype,{ - objectEncoding: null - ,position: null - ,__endian: null - ,__length: null - ,clear: function() { - this.length = 0; - this.position = 0; - } - ,compress: function(algorithm) { - if(algorithm == null) { - algorithm = 2; - } - if(this.__length > this.length) { - var cacheLength = this.length; - this.length = this.__length; - var data = new haxe_io_Bytes(new ArrayBuffer(cacheLength)); - data.blit(0,this,0,cacheLength); - this.b = data.b; - this.__length = data.length; - this.data = data.data; - this.length = cacheLength; - } - var limeBytes = this; - var bytes; - switch(algorithm) { - case 0: - bytes = lime_utils__$Bytes_Bytes_$Impl_$.compress(limeBytes,lime_utils_CompressionAlgorithm.DEFLATE); - break; - case 1: - bytes = lime_utils__$Bytes_Bytes_$Impl_$.compress(limeBytes,lime_utils_CompressionAlgorithm.LZMA); - break; - default: - bytes = lime_utils__$Bytes_Bytes_$Impl_$.compress(limeBytes,lime_utils_CompressionAlgorithm.ZLIB); - } - if(bytes != null) { - this.b = bytes.b; - this.__length = bytes.length; - this.data = bytes.data; - this.length = this.__length; - this.position = this.length; - } - } - ,deflate: function() { - this.compress(0); - } - ,inflate: function() { - this.uncompress(0); - } - ,readBoolean: function() { - if(this.position < this.length) { - return this.b[this.position++] != 0; - } else { - throw new js__$Boot_HaxeError(new openfl_errors_EOFError()); - } - } - ,readByte: function() { - var value = this.readUnsignedByte(); - if((value & 128) != 0) { - return value - 256; - } else { - return value; - } - } - ,readBytes: function(bytes,offset,length) { - if(length == null) { - length = 0; - } - if(offset == null) { - offset = 0; - } - if(length == 0) { - length = this.length - this.position; - } - if(this.position + length > this.length) { - throw new js__$Boot_HaxeError(new openfl_errors_EOFError()); - } - if(bytes.length < offset + length) { - bytes.__resize(offset + length); - } - bytes.blit(offset,this,this.position,length); - this.position += length; - } - ,readDouble: function() { - if(this.__endian == 1) { - if(this.position + 8 > this.length) { - throw new js__$Boot_HaxeError(new openfl_errors_EOFError()); - } - this.position += 8; - return this.getDouble(this.position - 8); - } else { - var ch1 = this.readInt(); - var ch2 = this.readInt(); - return haxe_io_FPHelper.i64ToDouble(ch2,ch1); - } - } - ,readFloat: function() { - if(this.__endian == 1) { - if(this.position + 4 > this.length) { - throw new js__$Boot_HaxeError(new openfl_errors_EOFError()); - } - this.position += 4; - return this.getFloat(this.position - 4); - } else { - return haxe_io_FPHelper.i32ToFloat(this.readInt()); - } - } - ,readInt: function() { - var ch1 = this.readUnsignedByte(); - var ch2 = this.readUnsignedByte(); - var ch3 = this.readUnsignedByte(); - var ch4 = this.readUnsignedByte(); - if(this.__endian == 1) { - return ch4 << 24 | ch3 << 16 | ch2 << 8 | ch1; - } else { - return ch1 << 24 | ch2 << 16 | ch3 << 8 | ch4; - } - } - ,readMultiByte: function(length,charSet) { - return this.readUTFBytes(length); - } - ,readObject: function() { - switch(this.objectEncoding) { - case 10: - var data = this.readUTF(); - return haxe_Unserializer.run(data); - case 12: - var data1 = this.readUTF(); - return JSON.parse(data1); - default: - return null; - } - } - ,readShort: function() { - var ch1 = this.readUnsignedByte(); - var ch2 = this.readUnsignedByte(); - var value; - if(this.__endian == 1) { - value = ch2 << 8 | ch1; - } else { - value = ch1 << 8 | ch2; - } - if((value & 32768) != 0) { - return value - 65536; - } else { - return value; - } - } - ,readUnsignedByte: function() { - if(this.position < this.length) { - return this.b[this.position++]; - } else { - throw new js__$Boot_HaxeError(new openfl_errors_EOFError()); - } - } - ,readUnsignedInt: function() { - var ch1 = this.readUnsignedByte(); - var ch2 = this.readUnsignedByte(); - var ch3 = this.readUnsignedByte(); - var ch4 = this.readUnsignedByte(); - if(this.__endian == 1) { - return ch4 << 24 | ch3 << 16 | ch2 << 8 | ch1; - } else { - return ch1 << 24 | ch2 << 16 | ch3 << 8 | ch4; - } - } - ,readUnsignedShort: function() { - var ch1 = this.readUnsignedByte(); - var ch2 = this.readUnsignedByte(); - if(this.__endian == 1) { - return (ch2 << 8) + ch1; - } else { - return ch1 << 8 | ch2; - } - } - ,readUTF: function() { - var bytesCount = this.readUnsignedShort(); - return this.readUTFBytes(bytesCount); - } - ,readUTFBytes: function(length) { - if(this.position + length > this.length) { - throw new js__$Boot_HaxeError(new openfl_errors_EOFError()); - } - this.position += length; - return this.getString(this.position - length,length); - } - ,uncompress: function(algorithm) { - if(algorithm == null) { - algorithm = 2; - } - if(this.__length > this.length) { - var cacheLength = this.length; - this.length = this.__length; - var data = new haxe_io_Bytes(new ArrayBuffer(cacheLength)); - data.blit(0,this,0,cacheLength); - this.b = data.b; - this.__length = data.length; - this.data = data.data; - this.length = cacheLength; - } - var limeBytes = this; - var bytes; - switch(algorithm) { - case 0: - bytes = lime_utils__$Bytes_Bytes_$Impl_$.decompress(limeBytes,lime_utils_CompressionAlgorithm.DEFLATE); - break; - case 1: - bytes = lime_utils__$Bytes_Bytes_$Impl_$.decompress(limeBytes,lime_utils_CompressionAlgorithm.LZMA); - break; - default: - bytes = lime_utils__$Bytes_Bytes_$Impl_$.decompress(limeBytes,lime_utils_CompressionAlgorithm.ZLIB); - } - if(bytes != null) { - this.b = bytes.b; - this.__length = bytes.length; - this.data = bytes.data; - this.length = this.__length; - } - this.position = 0; - } - ,writeBoolean: function(value) { - this.writeByte(value ? 1 : 0); - } - ,writeByte: function(value) { - this.__resize(this.position + 1); - this.b[this.position++] = value & 255 & 255; - } - ,writeBytes: function(bytes,offset,length) { - if(length == null) { - length = 0; - } - if(offset == null) { - offset = 0; - } - if(openfl_utils__$ByteArray_ByteArray_$Impl_$.get_length(bytes) == 0) { - return; - } - if(length == 0) { - length = openfl_utils__$ByteArray_ByteArray_$Impl_$.get_length(bytes) - offset; - } - this.__resize(this.position + length); - this.blit(this.position,bytes,offset,length); - this.position = this.position + length; - } - ,writeDouble: function(value) { - var int64 = haxe_io_FPHelper.doubleToI64(value); - if(this.__endian == 1) { - this.writeInt(int64.low); - this.writeInt(int64.high); - } else { - this.writeInt(int64.high); - this.writeInt(int64.low); - } - } - ,writeFloat: function(value) { - if(this.__endian == 1) { - this.__resize(this.position + 4); - this.setFloat(this.position,value); - this.position += 4; - } else { - var int = haxe_io_FPHelper.floatToI32(value); - this.writeInt(int); - } - } - ,writeInt: function(value) { - this.__resize(this.position + 4); - if(this.__endian == 1) { - this.b[this.position++] = value & 255 & 255; - this.b[this.position++] = value >> 8 & 255 & 255; - this.b[this.position++] = value >> 16 & 255 & 255; - this.b[this.position++] = value >> 24 & 255 & 255; - } else { - this.b[this.position++] = value >> 24 & 255 & 255; - this.b[this.position++] = value >> 16 & 255 & 255; - this.b[this.position++] = value >> 8 & 255 & 255; - this.b[this.position++] = value & 255 & 255; - } - } - ,writeMultiByte: function(value,charSet) { - this.writeUTFBytes(value); - } - ,writeObject: function(object) { - switch(this.objectEncoding) { - case 10: - var value = haxe_Serializer.run(object); - this.writeUTF(value); - break; - case 12: - var value1 = JSON.stringify(object); - this.writeUTF(value1); - break; - default: - return; - } - } - ,writeShort: function(value) { - this.__resize(this.position + 2); - if(this.__endian == 1) { - this.b[this.position++] = value & 255; - this.b[this.position++] = value >> 8 & 255; - } else { - this.b[this.position++] = value >> 8 & 255; - this.b[this.position++] = value & 255; - } - } - ,writeUnsignedInt: function(value) { - this.writeInt(value); - } - ,writeUTF: function(value) { - var bytes = haxe_io_Bytes.ofString(value); - this.writeShort(bytes.length); - this.writeBytes(openfl_utils__$ByteArray_ByteArray_$Impl_$.fromBytes(bytes)); - } - ,writeUTFBytes: function(value) { - var bytes = haxe_io_Bytes.ofString(value); - this.writeBytes(openfl_utils__$ByteArray_ByteArray_$Impl_$.fromBytes(bytes)); - } - ,__fromBytes: function(bytes) { - this.b = bytes.b; - this.__length = bytes.length; - this.data = bytes.data; - this.length = bytes.length; - } - ,__resize: function(size) { - if(size > this.__length) { - var bytes = new haxe_io_Bytes(new ArrayBuffer((size + 1) * 3 >> 1)); - if(this.__length > 0) { - var cacheLength = this.length; - this.length = this.__length; - bytes.blit(0,this,0,this.__length); - this.length = cacheLength; - } - this.b = bytes.b; - this.__length = bytes.length; - this.data = bytes.data; - } - if(this.length < size) { - this.length = size; - } - } - ,__setData: function(bytes) { - this.b = bytes.b; - this.__length = bytes.length; - this.data = bytes.data; - } - ,get_bytesAvailable: function() { - return this.length - this.position; - } - ,get_endian: function() { - return this.__endian; - } - ,set_endian: function(value) { - return this.__endian = value; - } - ,__class__: openfl_utils_ByteArrayData - ,__properties__: {set_endian:"set_endian",get_endian:"get_endian",get_bytesAvailable:"get_bytesAvailable"} -}); -var flixel_system_VirtualInputData = function(length) { - if(length == null) { - length = 0; - } - openfl_utils_ByteArrayData.call(this); - var bytes = haxe_Resource.getBytes(flixel_system_VirtualInputData.resourceName); - this.__fromBytes(bytes); -}; -$hxClasses["flixel.system.VirtualInputData"] = flixel_system_VirtualInputData; -flixel_system_VirtualInputData.__name__ = "flixel.system.VirtualInputData"; -flixel_system_VirtualInputData.__super__ = openfl_utils_ByteArrayData; -flixel_system_VirtualInputData.prototype = $extend(openfl_utils_ByteArrayData.prototype,{ - __class__: flixel_system_VirtualInputData -}); -var flixel_system_FlxAssets = function() { }; -$hxClasses["flixel.system.FlxAssets"] = flixel_system_FlxAssets; -flixel_system_FlxAssets.__name__ = "flixel.system.FlxAssets"; -flixel_system_FlxAssets.drawLogo = function(graph) { - graph.beginFill(47394); - graph.moveTo(50,13); - graph.lineTo(51,13); - graph.lineTo(87,50); - graph.lineTo(87,51); - graph.lineTo(51,87); - graph.lineTo(50,87); - graph.lineTo(13,51); - graph.lineTo(13,50); - graph.lineTo(50,13); - graph.endFill(); - graph.beginFill(16761138); - graph.moveTo(0,0); - graph.lineTo(25,0); - graph.lineTo(50,13); - graph.lineTo(13,50); - graph.lineTo(0,25); - graph.lineTo(0,0); - graph.endFill(); - graph.beginFill(16066382); - graph.moveTo(100,0); - graph.lineTo(75,0); - graph.lineTo(51,13); - graph.lineTo(87,50); - graph.lineTo(100,25); - graph.lineTo(100,0); - graph.endFill(); - graph.beginFill(3555839); - graph.moveTo(0,100); - graph.lineTo(25,100); - graph.lineTo(50,87); - graph.lineTo(13,51); - graph.lineTo(0,75); - graph.lineTo(0,100); - graph.endFill(); - graph.beginFill(314875); - graph.moveTo(100,100); - graph.lineTo(75,100); - graph.lineTo(51,87); - graph.lineTo(87,51); - graph.lineTo(100,75); - graph.lineTo(100,100); - graph.endFill(); -}; -flixel_system_FlxAssets.getBitmapData = function(id) { - if(openfl_utils_Assets.exists(id)) { - return openfl_utils_Assets.getBitmapData(id,false); - } - return null; -}; -flixel_system_FlxAssets.getBitmapFromClass = function(source) { - return Type.createInstance(source,[0,0]); -}; -flixel_system_FlxAssets.resolveBitmapData = function(Graphic) { - if(((Graphic) instanceof openfl_display_BitmapData)) { - return Graphic; - } else if(js_Boot.__instanceof(Graphic,Class)) { - return Type.createInstance(Graphic,[0,0]); - } else if(typeof(Graphic) == "string") { - if(openfl_utils_Assets.exists(Graphic)) { - return openfl_utils_Assets.getBitmapData(Graphic,false); - } else { - return null; - } - } - return null; -}; -flixel_system_FlxAssets.resolveKey = function(Graphic,Key) { - if(Key != null) { - return Key; - } - if(((Graphic) instanceof openfl_display_BitmapData)) { - return Key; - } else if(js_Boot.__instanceof(Graphic,Class)) { - var _this = flixel_FlxG.bitmap; - return Graphic.__name__; - } else if(typeof(Graphic) == "string") { - return Graphic; - } - return null; -}; -flixel_system_FlxAssets.getSound = function(id) { - var extension = ""; - extension = ".ogg"; - return openfl_utils_Assets.getSound(id + extension); -}; -flixel_system_FlxAssets.getVirtualInputFrames = function() { - var graphic = flixel_graphics_FlxGraphic.fromClass(flixel_system_GraphicVirtualInput); - return flixel_graphics_frames_FlxAtlasFrames.fromSpriteSheetPacker(graphic,Std.string(new flixel_system_VirtualInputData())); -}; -var flixel_system_FlxBGSprite = function() { - flixel_FlxSprite.call(this); - this.makeGraphic(1,1,-1,true,flixel_FlxG.bitmap.getUniqueKey("bg_graphic_")); - this.scrollFactor.set(); -}; -$hxClasses["flixel.system.FlxBGSprite"] = flixel_system_FlxBGSprite; -flixel_system_FlxBGSprite.__name__ = "flixel.system.FlxBGSprite"; -flixel_system_FlxBGSprite.__super__ = flixel_FlxSprite; -flixel_system_FlxBGSprite.prototype = $extend(flixel_FlxSprite.prototype,{ - draw: function() { - var _g = 0; - var _g1 = this.get_cameras(); - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - if(!camera.visible || !camera.exists) { - continue; - } - this._matrix.identity(); - this._matrix.scale(camera.viewWidth,camera.viewHeight); - camera.drawPixels(this.frame,null,this._matrix,this.colorTransform); - } - } - ,__class__: flixel_system_FlxBGSprite -}); -var flixel_system__$FlxBasePreloader_DefaultPreloader = function() { - openfl_display_Sprite.call(this); - this.addEventListener("addedToStage",$bind(this,this.onAddedToStage)); -}; -$hxClasses["flixel.system._FlxBasePreloader.DefaultPreloader"] = flixel_system__$FlxBasePreloader_DefaultPreloader; -flixel_system__$FlxBasePreloader_DefaultPreloader.__name__ = "flixel.system._FlxBasePreloader.DefaultPreloader"; -flixel_system__$FlxBasePreloader_DefaultPreloader.__super__ = openfl_display_Sprite; -flixel_system__$FlxBasePreloader_DefaultPreloader.prototype = $extend(openfl_display_Sprite.prototype,{ - onAddedToStage: function(_) { - this.removeEventListener("addedToStage",$bind(this,this.onAddedToStage)); - this.onInit(); - this.onUpdate(this.get_loaderInfo().bytesLoaded,this.get_loaderInfo().bytesTotal); - this.addEventListener("progress",$bind(this,this.onProgress)); - this.addEventListener("complete",$bind(this,this.onComplete)); - } - ,onComplete: function(event) { - event.preventDefault(); - this.removeEventListener("progress",$bind(this,this.onProgress)); - this.removeEventListener("complete",$bind(this,this.onComplete)); - this.onLoaded(); - } - ,onProgress: function(event) { - this.onUpdate(event.bytesLoaded | 0,event.bytesTotal | 0); - } - ,onInit: function() { - } - ,onLoaded: function() { - this.dispatchEvent(new openfl_events_Event("unload")); - } - ,onUpdate: function(bytesLoaded,bytesTotal) { - var percentLoaded = 0.0; - if(bytesTotal > 0) { - percentLoaded = bytesLoaded / bytesTotal; - if(percentLoaded > 1) { - percentLoaded = 1; - } - } - } - ,__class__: flixel_system__$FlxBasePreloader_DefaultPreloader -}); -var flixel_system_FlxBasePreloader = function(MinDisplayTime,AllowedURLs) { - if(MinDisplayTime == null) { - MinDisplayTime = 0; - } - this._destroyed = false; - this._urlChecked = false; - this._loaded = false; - this._percent = 0; - this.siteLockBodyText = "It appears the website you are using is hosting an unauthorized copy of this game. " + "Storage or redistribution of this content, without the express permission of the " + "developer or other copyright holder, is prohibited under copyright law.\n\n" + "Thank you for your interest in this game! Please support the developer by " + "visiting the following website to play the game:"; - this.siteLockTitleText = "Sorry."; - this.siteLockURLIndex = 0; - this.minDisplayTime = 0; - flixel_system__$FlxBasePreloader_DefaultPreloader.call(this); - this.minDisplayTime = MinDisplayTime; - if(AllowedURLs != null) { - this.allowedURLs = AllowedURLs; - } else { - this.allowedURLs = []; - } - this._startTime = new Date().getTime(); -}; -$hxClasses["flixel.system.FlxBasePreloader"] = flixel_system_FlxBasePreloader; -flixel_system_FlxBasePreloader.__name__ = "flixel.system.FlxBasePreloader"; -flixel_system_FlxBasePreloader.__super__ = flixel_system__$FlxBasePreloader_DefaultPreloader; -flixel_system_FlxBasePreloader.prototype = $extend(flixel_system__$FlxBasePreloader_DefaultPreloader.prototype,{ - minDisplayTime: null - ,allowedURLs: null - ,siteLockURLIndex: null - ,siteLockTitleText: null - ,siteLockBodyText: null - ,_percent: null - ,_width: null - ,_height: null - ,_loaded: null - ,_urlChecked: null - ,_destroyed: null - ,_startTime: null - ,create: function() { - } - ,onInit: function() { - flixel_system__$FlxBasePreloader_DefaultPreloader.prototype.onInit.call(this); - openfl_Lib.get_current().stage.set_scaleMode(2); - openfl_Lib.get_current().stage.align = 6; - this.create(); - this.addEventListener("enterFrame",$bind(this,this.onEnterFrame)); - this.checkSiteLock(); - } - ,onUpdate: function(bytesLoaded,bytesTotal) { - this._percent = bytesTotal != 0 ? bytesLoaded / bytesTotal : 0; - } - ,onEnterFrame: function(E) { - var time = new Date().getTime() - this._startTime; - var min = this.minDisplayTime * 1000; - var percent = this._percent; - if(min > 0 && this._percent > time / min) { - percent = time / min; - } - if(!this._destroyed) { - this.update(percent); - } - if(this._loaded && (min <= 0 || time / min >= 1)) { - this.removeEventListener("enterFrame",$bind(this,this.onEnterFrame)); - flixel_system__$FlxBasePreloader_DefaultPreloader.prototype.onLoaded.call(this); - this.destroy(); - this._destroyed = true; - } - } - ,destroy: function() { - } - ,update: function(Percent) { - } - ,onLoaded: function() { - this._loaded = true; - this._percent = 1; - } - ,createBitmap: function(bitmapDataClass,onLoad) { - var bmp = new openfl_display_Bitmap(); - var tmp = Type.createInstance(bitmapDataClass,[0,0,true,-1,function(_) { - onLoad(bmp); - }]); - bmp.set_bitmapData(tmp); - return bmp; - } - ,loadBitmapData: function(bitmapDataClass,onLoad) { - return Type.createInstance(bitmapDataClass,[0,0,true,-1,onLoad]); - } - ,checkSiteLock: function() { - if(this._urlChecked) { - return; - } - if(!this.isHostUrlAllowed()) { - this.removeChildren(); - this.removeEventListener("enterFrame",$bind(this,this.onEnterFrame)); - this.createSiteLockFailureScreen(); - } else { - this._urlChecked = true; - } - } - ,createSiteLockFailureScreen: function() { - this.addChild(this.createSiteLockFailureBackground(16777215,15066597)); - this.addChild(this.createSiteLockFailureIcon(15066597,0.9)); - this.addChild(this.createSiteLockFailureText(30)); - } - ,createSiteLockFailureBackground: function(innerColor,outerColor) { - var shape = new openfl_display_Shape(); - var graphics = shape.get_graphics(); - graphics.clear(); - var fillMatrix = new openfl_geom_Matrix(); - fillMatrix.createGradientBox(1,1,0,-0.5,-0.5); - var scaling = Math.max(this.stage.stageWidth,this.stage.stageHeight); - fillMatrix.scale(scaling,scaling); - fillMatrix.translate(0.5 * this.stage.stageWidth,0.5 * this.stage.stageHeight); - graphics.beginGradientFill(1,[innerColor,outerColor],[1,1],[0,255],fillMatrix); - graphics.drawRect(0,0,this.stage.stageWidth,this.stage.stageHeight); - graphics.endFill(); - return shape; - } - ,createSiteLockFailureIcon: function(color,scale) { - var shape = new openfl_display_Shape(); - var graphics = shape.get_graphics(); - graphics.clear(); - graphics.beginFill(color); - var array = [1,6,2,2,2,6,6,2,2,2,6,1,6,2,6,2,6,2,6,1,6,6,2,2,2,6,6]; - var vector = openfl__$Vector_Vector_$Impl_$.toIntVector(null); - var _g = 0; - var _g1 = array.length; - while(_g < _g1) { - var i = _g++; - vector.set(i,array[i]); - } - var tmp = vector; - var array1 = [120.0,0,164,0,200,35,200,79,200,130,160,130,160,79,160,57,142,40,120,40,97,40,79,57,79,79,80,130,40,130,40,79,40,35,75,0,120,0,220,140,231,140,240,148,240,160,240,300,240,311,231,320,220,320,20,320,8,320,0,311,0,300,0,160,0,148,8,140,20,140,120,190,108,190,100,198,100,210,100,217,104,223,110,227,110,270,130,270,130,227,135,223,140,217,140,210,140,198,131,190,120,190]; - var vector1 = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - var _g2 = 0; - var _g11 = array1.length; - while(_g2 < _g11) { - var i1 = _g2++; - vector1.set(i1,array1[i1]); - } - graphics.drawPath(tmp,vector1,1); - graphics.endFill(); - var transformMatrix = new openfl_geom_Matrix(); - transformMatrix.translate(-0.5 * shape.get_width(),-0.5 * shape.get_height()); - var scaling = scale * Math.min(this.stage.stageWidth / shape.get_width(),this.stage.stageHeight / shape.get_height()); - transformMatrix.scale(scaling,scaling); - transformMatrix.translate(0.5 * this.stage.stageWidth,0.5 * this.stage.stageHeight); - shape.get_transform().set_matrix(transformMatrix); - return shape; - } - ,createSiteLockFailureText: function(margin) { - var sprite = new openfl_display_Sprite(); - var bounds = new openfl_geom_Rectangle(0,0,this.stage.stageWidth,this.stage.stageHeight); - bounds.inflate(-margin,-margin); - var titleText = new openfl_text_TextField(); - var titleTextFormat = new openfl_text_TextFormat("_sans",33,3355443,true); - titleTextFormat.align = 3; - titleText.set_defaultTextFormat(titleTextFormat); - titleText.set_selectable(false); - titleText.set_width(bounds.width); - titleText.set_text(this.siteLockTitleText); - var bodyText = new openfl_text_TextField(); - var bodyTextFormat = new openfl_text_TextFormat("_sans",22,3355443); - bodyTextFormat.align = 2; - bodyText.set_defaultTextFormat(bodyTextFormat); - bodyText.set_multiline(true); - bodyText.set_wordWrap(true); - bodyText.set_selectable(false); - bodyText.set_width(bounds.width); - bodyText.set_text(this.siteLockBodyText); - var hyperlinkText = new openfl_text_TextField(); - var hyperlinkTextFormat = new openfl_text_TextFormat("_sans",22,7247820,true,false,true); - hyperlinkTextFormat.align = 0; - hyperlinkTextFormat.url = this.allowedURLs[this.siteLockURLIndex]; - hyperlinkText.set_defaultTextFormat(hyperlinkTextFormat); - hyperlinkText.set_selectable(true); - hyperlinkText.set_width(bounds.width); - hyperlinkText.set_text(this.allowedURLs[this.siteLockURLIndex]); - this.adjustSiteLockTextFields(titleText,bodyText,hyperlinkText); - var gutterSize = 4; - titleText.set_height(titleText.get_textHeight() + gutterSize); - bodyText.set_height(bodyText.get_textHeight() + gutterSize); - hyperlinkText.set_height(hyperlinkText.get_textHeight() + gutterSize); - titleText.set_x(bodyText.set_x(hyperlinkText.set_x(bounds.get_left()))); - titleText.set_y(bounds.get_top()); - bodyText.set_y(titleText.get_y() + 2.0 * titleText.get_height()); - hyperlinkText.set_y(bodyText.get_y() + bodyText.get_height() + hyperlinkText.get_height()); - sprite.addChild(titleText); - sprite.addChild(bodyText); - sprite.addChild(hyperlinkText); - return sprite; - } - ,adjustSiteLockTextFields: function(titleText,bodyText,hyperlinkText) { - } - ,goToMyURL: function(e) { - if(this.allowedURLs[this.siteLockURLIndex] != "localhost") { - var URL1 = this.allowedURLs[this.siteLockURLIndex]; - var prefix = ""; - if(!new EReg("^https?://","").match(URL1)) { - prefix = "http://"; - } - openfl_Lib.getURL(new openfl_net_URLRequest(prefix + URL1),"_blank"); - } else { - openfl_Lib.getURL(new openfl_net_URLRequest(this.allowedURLs[this.siteLockURLIndex])); - } - } - ,isHostUrlAllowed: function() { - if(this.allowedURLs.length == 0) { - return true; - } - var homeURL = window.location.href; - var homeDomain = flixel_util_FlxStringUtil.getDomain(homeURL); - var _g = 0; - var _g1 = this.allowedURLs; - while(_g < _g1.length) { - var allowedURL = _g1[_g]; - ++_g; - var allowedDomain = flixel_util_FlxStringUtil.getDomain(allowedURL); - if(allowedDomain == homeDomain) { - return true; - } - } - return false; - } - ,__class__: flixel_system_FlxBasePreloader -}); -var flixel_system_FlxLinkedList = function() { - this.exists = true; -}; -$hxClasses["flixel.system.FlxLinkedList"] = flixel_system_FlxLinkedList; -flixel_system_FlxLinkedList.__name__ = "flixel.system.FlxLinkedList"; -flixel_system_FlxLinkedList.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_system_FlxLinkedList._cachedListsHead = null; -flixel_system_FlxLinkedList.recycle = function() { - if(flixel_system_FlxLinkedList._cachedListsHead != null) { - var cachedList = flixel_system_FlxLinkedList._cachedListsHead; - flixel_system_FlxLinkedList._cachedListsHead = flixel_system_FlxLinkedList._cachedListsHead.next; - flixel_system_FlxLinkedList._NUM_CACHED_FLX_LIST--; - cachedList.exists = true; - cachedList.next = null; - return cachedList; - } else { - return new flixel_system_FlxLinkedList(); - } -}; -flixel_system_FlxLinkedList.clearCache = function() { - while(flixel_system_FlxLinkedList._cachedListsHead != null) { - var node = flixel_system_FlxLinkedList._cachedListsHead; - flixel_system_FlxLinkedList._cachedListsHead = flixel_system_FlxLinkedList._cachedListsHead.next; - node.object = null; - node.next = null; - } - flixel_system_FlxLinkedList._NUM_CACHED_FLX_LIST = 0; -}; -flixel_system_FlxLinkedList.prototype = { - object: null - ,next: null - ,exists: null - ,destroy: function() { - if(!this.exists) { - return; - } - this.object = null; - if(this.next != null) { - this.next.destroy(); - } - this.exists = false; - this.next = flixel_system_FlxLinkedList._cachedListsHead; - flixel_system_FlxLinkedList._cachedListsHead = this; - flixel_system_FlxLinkedList._NUM_CACHED_FLX_LIST++; - } - ,__class__: flixel_system_FlxLinkedList -}; -var flixel_system__$FlxPreloader_GraphicLogoLight = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system__$FlxPreloader_GraphicLogoLight.preload != null) { - this.__fromImage(flixel_system__$FlxPreloader_GraphicLogoLight.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system__$FlxPreloader_GraphicLogoLight.resourceName),flixel_system__$FlxPreloader_GraphicLogoLight.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system__$FlxPreloader_GraphicLogoLight.preload == null) { - flixel_system__$FlxPreloader_GraphicLogoLight.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system._FlxPreloader.GraphicLogoLight"] = flixel_system__$FlxPreloader_GraphicLogoLight; -flixel_system__$FlxPreloader_GraphicLogoLight.__name__ = "flixel.system._FlxPreloader.GraphicLogoLight"; -flixel_system__$FlxPreloader_GraphicLogoLight.preload = null; -flixel_system__$FlxPreloader_GraphicLogoLight.__super__ = openfl_display_BitmapData; -flixel_system__$FlxPreloader_GraphicLogoLight.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system__$FlxPreloader_GraphicLogoLight -}); -var flixel_system__$FlxPreloader_GraphicLogoCorners = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system__$FlxPreloader_GraphicLogoCorners.preload != null) { - this.__fromImage(flixel_system__$FlxPreloader_GraphicLogoCorners.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system__$FlxPreloader_GraphicLogoCorners.resourceName),flixel_system__$FlxPreloader_GraphicLogoCorners.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system__$FlxPreloader_GraphicLogoCorners.preload == null) { - flixel_system__$FlxPreloader_GraphicLogoCorners.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system._FlxPreloader.GraphicLogoCorners"] = flixel_system__$FlxPreloader_GraphicLogoCorners; -flixel_system__$FlxPreloader_GraphicLogoCorners.__name__ = "flixel.system._FlxPreloader.GraphicLogoCorners"; -flixel_system__$FlxPreloader_GraphicLogoCorners.preload = null; -flixel_system__$FlxPreloader_GraphicLogoCorners.__super__ = openfl_display_BitmapData; -flixel_system__$FlxPreloader_GraphicLogoCorners.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system__$FlxPreloader_GraphicLogoCorners -}); -var flixel_system_FlxPreloader = function(MinDisplayTime,AllowedURLs) { - if(MinDisplayTime == null) { - MinDisplayTime = 0; - } - flixel_system_FlxBasePreloader.call(this,MinDisplayTime,AllowedURLs); -}; -$hxClasses["flixel.system.FlxPreloader"] = flixel_system_FlxPreloader; -flixel_system_FlxPreloader.__name__ = "flixel.system.FlxPreloader"; -flixel_system_FlxPreloader.__super__ = flixel_system_FlxBasePreloader; -flixel_system_FlxPreloader.prototype = $extend(flixel_system_FlxBasePreloader.prototype,{ - _buffer: null - ,_bmpBar: null - ,_text: null - ,_logo: null - ,_logoGlow: null - ,create: function() { - var _gthis = this; - this._buffer = new openfl_display_Sprite(); - this._buffer.set_scaleX(this._buffer.set_scaleY(2)); - this.addChild(this._buffer); - this._width = openfl_Lib.get_current().stage.stageWidth / this._buffer.get_scaleX() | 0; - this._height = openfl_Lib.get_current().stage.stageHeight / this._buffer.get_scaleY() | 0; - this._buffer.addChild(new openfl_display_Bitmap(new openfl_display_BitmapData(this._width,this._height,false,13406))); - var logoLight = this.createBitmap(flixel_system__$FlxPreloader_GraphicLogoLight,function(logoLight1) { - logoLight1.set_width(logoLight1.set_height(_gthis._height)); - logoLight1.set_x((_gthis._width - logoLight1.get_width()) / 2); - }); - logoLight.smoothing = true; - this._buffer.addChild(logoLight); - this._bmpBar = new openfl_display_Bitmap(new openfl_display_BitmapData(1,7,false,6253311)); - this._bmpBar.set_x(4); - this._bmpBar.set_y(this._height - 11); - this._buffer.addChild(this._bmpBar); - this._text = new openfl_text_TextField(); - this._text.set_defaultTextFormat(new openfl_text_TextFormat(flixel_system_FlxAssets.FONT_DEFAULT,8,6253311)); - this._text.set_embedFonts(true); - this._text.set_selectable(false); - this._text.set_multiline(false); - this._text.set_x(2); - this._text.set_y(this._bmpBar.get_y() - 11); - this._text.set_width(200); - this._buffer.addChild(this._text); - this._logo = new openfl_display_Sprite(); - flixel_system_FlxAssets.drawLogo(this._logo.get_graphics()); - this._logo.set_scaleX(this._logo.set_scaleY(this._height / 8 * 0.04)); - this._logo.set_x((this._width - this._logo.get_width()) / 2); - this._logo.set_y((this._height - this._logo.get_height()) / 2); - this._buffer.addChild(this._logo); - this._logoGlow = new openfl_display_Sprite(); - flixel_system_FlxAssets.drawLogo(this._logoGlow.get_graphics()); - this._logoGlow.set_blendMode(12); - this._logoGlow.set_scaleX(this._logoGlow.set_scaleY(this._height / 8 * 0.04)); - this._logoGlow.set_x((this._width - this._logoGlow.get_width()) / 2); - this._logoGlow.set_y((this._height - this._logoGlow.get_height()) / 2); - this._buffer.addChild(this._logoGlow); - var corners = this.createBitmap(flixel_system__$FlxPreloader_GraphicLogoCorners,function(corners1) { - corners1.set_width(_gthis._width); - corners1.set_height(_gthis.get_height()); - }); - corners.smoothing = true; - this._buffer.addChild(corners); - var bitmap = new openfl_display_Bitmap(new openfl_display_BitmapData(this._width,this._height,false,16777215)); - var i = 0; - var j = 0; - while(i < this._height) { - j = 0; - while(j < this._width) bitmap.get_bitmapData().setPixel(j++,i,0); - i += 2; - } - bitmap.set_blendMode(11); - bitmap.set_alpha(0.25); - this._buffer.addChild(bitmap); - flixel_system_FlxBasePreloader.prototype.create.call(this); - } - ,destroy: function() { - if(this._buffer != null) { - this.removeChild(this._buffer); - } - this._buffer = null; - this._bmpBar = null; - this._text = null; - this._logo = null; - this._logoGlow = null; - flixel_system_FlxBasePreloader.prototype.destroy.call(this); - } - ,update: function(Percent) { - this._bmpBar.set_scaleX(Percent * (this._width - 8)); - this._text.set_text(Std.string(flixel_FlxG.VERSION) + " " + (Percent * 100 | 0) + "%"); - if(Percent < 0.1) { - this._logoGlow.set_alpha(0); - this._logo.set_alpha(0); - } else if(Percent < 0.15) { - this._logoGlow.set_alpha(Math.random()); - this._logo.set_alpha(0); - } else if(Percent < 0.2) { - this._logoGlow.set_alpha(0); - this._logo.set_alpha(0); - } else if(Percent < 0.25) { - this._logoGlow.set_alpha(0); - this._logo.set_alpha(Math.random()); - } else if(Percent < 0.7) { - this._logoGlow.set_alpha((Percent - 0.45) / 0.45); - this._logo.set_alpha(1); - } else if(Percent > 0.8 && Percent < 0.9) { - this._logoGlow.set_alpha(1 - (Percent - 0.8) / 0.1); - this._logo.set_alpha(0); - } else if(Percent > 0.9) { - this._buffer.set_alpha(1 - (Percent - 0.9) / 0.1); - } - } - ,__class__: flixel_system_FlxPreloader -}); -var flixel_system_FlxQuadTree = function(X,Y,Width,Height,Parent) { - flixel_math_FlxRect.call(this); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - this.x = X1; - this.y = Y1; - this.width = Width1; - this.height = Height1; - this.reset(X,Y,Width,Height,Parent); -}; -$hxClasses["flixel.system.FlxQuadTree"] = flixel_system_FlxQuadTree; -flixel_system_FlxQuadTree.__name__ = "flixel.system.FlxQuadTree"; -flixel_system_FlxQuadTree.divisions = null; -flixel_system_FlxQuadTree._min = null; -flixel_system_FlxQuadTree._object = null; -flixel_system_FlxQuadTree._objectLeftEdge = null; -flixel_system_FlxQuadTree._objectTopEdge = null; -flixel_system_FlxQuadTree._objectRightEdge = null; -flixel_system_FlxQuadTree._objectBottomEdge = null; -flixel_system_FlxQuadTree._list = null; -flixel_system_FlxQuadTree._useBothLists = null; -flixel_system_FlxQuadTree._processingCallback = null; -flixel_system_FlxQuadTree._notifyCallback = null; -flixel_system_FlxQuadTree._iterator = null; -flixel_system_FlxQuadTree._objectHullX = null; -flixel_system_FlxQuadTree._objectHullY = null; -flixel_system_FlxQuadTree._objectHullWidth = null; -flixel_system_FlxQuadTree._objectHullHeight = null; -flixel_system_FlxQuadTree._checkObjectHullX = null; -flixel_system_FlxQuadTree._checkObjectHullY = null; -flixel_system_FlxQuadTree._checkObjectHullWidth = null; -flixel_system_FlxQuadTree._checkObjectHullHeight = null; -flixel_system_FlxQuadTree._cachedTreesHead = null; -flixel_system_FlxQuadTree.recycle = function(X,Y,Width,Height,Parent) { - if(flixel_system_FlxQuadTree._cachedTreesHead != null) { - var cachedTree = flixel_system_FlxQuadTree._cachedTreesHead; - flixel_system_FlxQuadTree._cachedTreesHead = flixel_system_FlxQuadTree._cachedTreesHead.next; - flixel_system_FlxQuadTree._NUM_CACHED_QUAD_TREES--; - cachedTree.reset(X,Y,Width,Height,Parent); - return cachedTree; - } else { - return new flixel_system_FlxQuadTree(X,Y,Width,Height,Parent); - } -}; -flixel_system_FlxQuadTree.clearCache = function() { - while(flixel_system_FlxQuadTree._cachedTreesHead != null) { - var node = flixel_system_FlxQuadTree._cachedTreesHead; - flixel_system_FlxQuadTree._cachedTreesHead = flixel_system_FlxQuadTree._cachedTreesHead.next; - node.next = null; - } - flixel_system_FlxQuadTree._NUM_CACHED_QUAD_TREES = 0; -}; -flixel_system_FlxQuadTree.__super__ = flixel_math_FlxRect; -flixel_system_FlxQuadTree.prototype = $extend(flixel_math_FlxRect.prototype,{ - exists: null - ,_canSubdivide: null - ,_headA: null - ,_tailA: null - ,_headB: null - ,_tailB: null - ,_northWestTree: null - ,_northEastTree: null - ,_southEastTree: null - ,_southWestTree: null - ,_leftEdge: null - ,_rightEdge: null - ,_topEdge: null - ,_bottomEdge: null - ,_halfWidth: null - ,_halfHeight: null - ,_midpointX: null - ,_midpointY: null - ,next: null - ,reset: function(X,Y,Width,Height,Parent) { - this.exists = true; - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - this.x = X1; - this.y = Y1; - this.width = Width1; - this.height = Height1; - this._headA = this._tailA = flixel_system_FlxLinkedList.recycle(); - this._headB = this._tailB = flixel_system_FlxLinkedList.recycle(); - if(Parent != null) { - var iterator; - var ot; - if(Parent._headA.object != null) { - iterator = Parent._headA; - while(iterator != null) { - if(this._tailA.object != null) { - ot = this._tailA; - this._tailA = flixel_system_FlxLinkedList.recycle(); - ot.next = this._tailA; - } - this._tailA.object = iterator.object; - iterator = iterator.next; - } - } - if(Parent._headB.object != null) { - iterator = Parent._headB; - while(iterator != null) { - if(this._tailB.object != null) { - ot = this._tailB; - this._tailB = flixel_system_FlxLinkedList.recycle(); - ot.next = this._tailB; - } - this._tailB.object = iterator.object; - iterator = iterator.next; - } - } - } else { - flixel_system_FlxQuadTree._min = Math.floor((this.width + this.height) / (2 * flixel_system_FlxQuadTree.divisions)); - } - this._canSubdivide = this.width > flixel_system_FlxQuadTree._min || this.height > flixel_system_FlxQuadTree._min; - this._northWestTree = null; - this._northEastTree = null; - this._southEastTree = null; - this._southWestTree = null; - this._leftEdge = this.x; - this._rightEdge = this.x + this.width; - this._halfWidth = this.width / 2; - this._midpointX = this._leftEdge + this._halfWidth; - this._topEdge = this.y; - this._bottomEdge = this.y + this.height; - this._halfHeight = this.height / 2; - this._midpointY = this._topEdge + this._halfHeight; - } - ,destroy: function() { - this._headA = flixel_util_FlxDestroyUtil.destroy(this._headA); - this._headB = flixel_util_FlxDestroyUtil.destroy(this._headB); - this._tailA = flixel_util_FlxDestroyUtil.destroy(this._tailA); - this._tailB = flixel_util_FlxDestroyUtil.destroy(this._tailB); - this._northWestTree = flixel_util_FlxDestroyUtil.destroy(this._northWestTree); - this._northEastTree = flixel_util_FlxDestroyUtil.destroy(this._northEastTree); - this._southWestTree = flixel_util_FlxDestroyUtil.destroy(this._southWestTree); - this._southEastTree = flixel_util_FlxDestroyUtil.destroy(this._southEastTree); - flixel_system_FlxQuadTree._object = null; - flixel_system_FlxQuadTree._processingCallback = null; - flixel_system_FlxQuadTree._notifyCallback = null; - this.exists = false; - this.next = flixel_system_FlxQuadTree._cachedTreesHead; - flixel_system_FlxQuadTree._cachedTreesHead = this; - flixel_system_FlxQuadTree._NUM_CACHED_QUAD_TREES++; - flixel_math_FlxRect.prototype.destroy.call(this); - } - ,load: function(ObjectOrGroup1,ObjectOrGroup2,NotifyCallback,ProcessCallback) { - this.add(ObjectOrGroup1,0); - if(ObjectOrGroup2 != null) { - this.add(ObjectOrGroup2,1); - flixel_system_FlxQuadTree._useBothLists = true; - } else { - flixel_system_FlxQuadTree._useBothLists = false; - } - flixel_system_FlxQuadTree._notifyCallback = NotifyCallback; - flixel_system_FlxQuadTree._processingCallback = ProcessCallback; - } - ,add: function(ObjectOrGroup,list) { - flixel_system_FlxQuadTree._list = list; - var group = flixel_group_FlxTypedGroup.resolveGroup(ObjectOrGroup); - if(group != null) { - var i = 0; - var basic; - var members = group.members; - var l = group.length; - while(i < l) { - basic = members[i++]; - if(basic != null && basic.exists) { - group = flixel_group_FlxTypedGroup.resolveGroup(basic); - if(group != null) { - this.add(group,list); - } else { - flixel_system_FlxQuadTree._object = basic; - if(flixel_system_FlxQuadTree._object.exists && flixel_system_FlxQuadTree._object.allowCollisions != 0) { - flixel_system_FlxQuadTree._objectLeftEdge = flixel_system_FlxQuadTree._object.x; - flixel_system_FlxQuadTree._objectTopEdge = flixel_system_FlxQuadTree._object.y; - flixel_system_FlxQuadTree._objectRightEdge = flixel_system_FlxQuadTree._object.x + flixel_system_FlxQuadTree._object.get_width(); - flixel_system_FlxQuadTree._objectBottomEdge = flixel_system_FlxQuadTree._object.y + flixel_system_FlxQuadTree._object.get_height(); - this.addObject(); - } - } - } - } - } else { - flixel_system_FlxQuadTree._object = ObjectOrGroup; - if(flixel_system_FlxQuadTree._object.exists && flixel_system_FlxQuadTree._object.allowCollisions != 0) { - flixel_system_FlxQuadTree._objectLeftEdge = flixel_system_FlxQuadTree._object.x; - flixel_system_FlxQuadTree._objectTopEdge = flixel_system_FlxQuadTree._object.y; - flixel_system_FlxQuadTree._objectRightEdge = flixel_system_FlxQuadTree._object.x + flixel_system_FlxQuadTree._object.get_width(); - flixel_system_FlxQuadTree._objectBottomEdge = flixel_system_FlxQuadTree._object.y + flixel_system_FlxQuadTree._object.get_height(); - this.addObject(); - } - } - } - ,addObject: function() { - if(!this._canSubdivide || this._leftEdge >= flixel_system_FlxQuadTree._objectLeftEdge && this._rightEdge <= flixel_system_FlxQuadTree._objectRightEdge && this._topEdge >= flixel_system_FlxQuadTree._objectTopEdge && this._bottomEdge <= flixel_system_FlxQuadTree._objectBottomEdge) { - this.addToList(); - return; - } - if(flixel_system_FlxQuadTree._objectLeftEdge > this._leftEdge && flixel_system_FlxQuadTree._objectRightEdge < this._midpointX) { - if(flixel_system_FlxQuadTree._objectTopEdge > this._topEdge && flixel_system_FlxQuadTree._objectBottomEdge < this._midpointY) { - if(this._northWestTree == null) { - this._northWestTree = flixel_system_FlxQuadTree.recycle(this._leftEdge,this._topEdge,this._halfWidth,this._halfHeight,this); - } - this._northWestTree.addObject(); - return; - } - if(flixel_system_FlxQuadTree._objectTopEdge > this._midpointY && flixel_system_FlxQuadTree._objectBottomEdge < this._bottomEdge) { - if(this._southWestTree == null) { - this._southWestTree = flixel_system_FlxQuadTree.recycle(this._leftEdge,this._midpointY,this._halfWidth,this._halfHeight,this); - } - this._southWestTree.addObject(); - return; - } - } - if(flixel_system_FlxQuadTree._objectLeftEdge > this._midpointX && flixel_system_FlxQuadTree._objectRightEdge < this._rightEdge) { - if(flixel_system_FlxQuadTree._objectTopEdge > this._topEdge && flixel_system_FlxQuadTree._objectBottomEdge < this._midpointY) { - if(this._northEastTree == null) { - this._northEastTree = flixel_system_FlxQuadTree.recycle(this._midpointX,this._topEdge,this._halfWidth,this._halfHeight,this); - } - this._northEastTree.addObject(); - return; - } - if(flixel_system_FlxQuadTree._objectTopEdge > this._midpointY && flixel_system_FlxQuadTree._objectBottomEdge < this._bottomEdge) { - if(this._southEastTree == null) { - this._southEastTree = flixel_system_FlxQuadTree.recycle(this._midpointX,this._midpointY,this._halfWidth,this._halfHeight,this); - } - this._southEastTree.addObject(); - return; - } - } - if(flixel_system_FlxQuadTree._objectRightEdge > this._leftEdge && flixel_system_FlxQuadTree._objectLeftEdge < this._midpointX && flixel_system_FlxQuadTree._objectBottomEdge > this._topEdge && flixel_system_FlxQuadTree._objectTopEdge < this._midpointY) { - if(this._northWestTree == null) { - this._northWestTree = flixel_system_FlxQuadTree.recycle(this._leftEdge,this._topEdge,this._halfWidth,this._halfHeight,this); - } - this._northWestTree.addObject(); - } - if(flixel_system_FlxQuadTree._objectRightEdge > this._midpointX && flixel_system_FlxQuadTree._objectLeftEdge < this._rightEdge && flixel_system_FlxQuadTree._objectBottomEdge > this._topEdge && flixel_system_FlxQuadTree._objectTopEdge < this._midpointY) { - if(this._northEastTree == null) { - this._northEastTree = flixel_system_FlxQuadTree.recycle(this._midpointX,this._topEdge,this._halfWidth,this._halfHeight,this); - } - this._northEastTree.addObject(); - } - if(flixel_system_FlxQuadTree._objectRightEdge > this._midpointX && flixel_system_FlxQuadTree._objectLeftEdge < this._rightEdge && flixel_system_FlxQuadTree._objectBottomEdge > this._midpointY && flixel_system_FlxQuadTree._objectTopEdge < this._bottomEdge) { - if(this._southEastTree == null) { - this._southEastTree = flixel_system_FlxQuadTree.recycle(this._midpointX,this._midpointY,this._halfWidth,this._halfHeight,this); - } - this._southEastTree.addObject(); - } - if(flixel_system_FlxQuadTree._objectRightEdge > this._leftEdge && flixel_system_FlxQuadTree._objectLeftEdge < this._midpointX && flixel_system_FlxQuadTree._objectBottomEdge > this._midpointY && flixel_system_FlxQuadTree._objectTopEdge < this._bottomEdge) { - if(this._southWestTree == null) { - this._southWestTree = flixel_system_FlxQuadTree.recycle(this._leftEdge,this._midpointY,this._halfWidth,this._halfHeight,this); - } - this._southWestTree.addObject(); - } - } - ,addToList: function() { - var ot; - if(flixel_system_FlxQuadTree._list == 0) { - if(this._tailA.object != null) { - ot = this._tailA; - this._tailA = flixel_system_FlxLinkedList.recycle(); - ot.next = this._tailA; - } - this._tailA.object = flixel_system_FlxQuadTree._object; - } else { - if(this._tailB.object != null) { - ot = this._tailB; - this._tailB = flixel_system_FlxLinkedList.recycle(); - ot.next = this._tailB; - } - this._tailB.object = flixel_system_FlxQuadTree._object; - } - if(!this._canSubdivide) { - return; - } - if(this._northWestTree != null) { - this._northWestTree.addToList(); - } - if(this._northEastTree != null) { - this._northEastTree.addToList(); - } - if(this._southEastTree != null) { - this._southEastTree.addToList(); - } - if(this._southWestTree != null) { - this._southWestTree.addToList(); - } - } - ,execute: function() { - var overlapProcessed = false; - if(this._headA.object != null) { - var iterator = this._headA; - while(iterator != null) { - flixel_system_FlxQuadTree._object = iterator.object; - if(flixel_system_FlxQuadTree._useBothLists) { - flixel_system_FlxQuadTree._iterator = this._headB; - } else { - flixel_system_FlxQuadTree._iterator = iterator.next; - } - if(flixel_system_FlxQuadTree._object != null && flixel_system_FlxQuadTree._object.exists && flixel_system_FlxQuadTree._object.allowCollisions > 0 && flixel_system_FlxQuadTree._iterator != null && flixel_system_FlxQuadTree._iterator.object != null && this.overlapNode()) { - overlapProcessed = true; - } - iterator = iterator.next; - } - } - if(this._northWestTree != null && this._northWestTree.execute()) { - overlapProcessed = true; - } - if(this._northEastTree != null && this._northEastTree.execute()) { - overlapProcessed = true; - } - if(this._southEastTree != null && this._southEastTree.execute()) { - overlapProcessed = true; - } - if(this._southWestTree != null && this._southWestTree.execute()) { - overlapProcessed = true; - } - return overlapProcessed; - } - ,overlapNode: function() { - flixel_system_FlxQuadTree._objectHullX = flixel_system_FlxQuadTree._object.x < flixel_system_FlxQuadTree._object.last.x ? flixel_system_FlxQuadTree._object.x : flixel_system_FlxQuadTree._object.last.x; - flixel_system_FlxQuadTree._objectHullY = flixel_system_FlxQuadTree._object.y < flixel_system_FlxQuadTree._object.last.y ? flixel_system_FlxQuadTree._object.y : flixel_system_FlxQuadTree._object.last.y; - flixel_system_FlxQuadTree._objectHullWidth = flixel_system_FlxQuadTree._object.x - flixel_system_FlxQuadTree._object.last.x; - flixel_system_FlxQuadTree._objectHullWidth = flixel_system_FlxQuadTree._object.get_width() + (flixel_system_FlxQuadTree._objectHullWidth > 0 ? flixel_system_FlxQuadTree._objectHullWidth : -flixel_system_FlxQuadTree._objectHullWidth); - flixel_system_FlxQuadTree._objectHullHeight = flixel_system_FlxQuadTree._object.y - flixel_system_FlxQuadTree._object.last.y; - flixel_system_FlxQuadTree._objectHullHeight = flixel_system_FlxQuadTree._object.get_height() + (flixel_system_FlxQuadTree._objectHullHeight > 0 ? flixel_system_FlxQuadTree._objectHullHeight : -flixel_system_FlxQuadTree._objectHullHeight); - var overlapProcessed = false; - var checkObject; - while(flixel_system_FlxQuadTree._iterator != null) { - checkObject = flixel_system_FlxQuadTree._iterator.object; - if(flixel_system_FlxQuadTree._object == checkObject || !checkObject.exists || checkObject.allowCollisions <= 0) { - flixel_system_FlxQuadTree._iterator = flixel_system_FlxQuadTree._iterator.next; - continue; - } - flixel_system_FlxQuadTree._checkObjectHullX = checkObject.x < checkObject.last.x ? checkObject.x : checkObject.last.x; - flixel_system_FlxQuadTree._checkObjectHullY = checkObject.y < checkObject.last.y ? checkObject.y : checkObject.last.y; - flixel_system_FlxQuadTree._checkObjectHullWidth = checkObject.x - checkObject.last.x; - flixel_system_FlxQuadTree._checkObjectHullWidth = checkObject.get_width() + (flixel_system_FlxQuadTree._checkObjectHullWidth > 0 ? flixel_system_FlxQuadTree._checkObjectHullWidth : -flixel_system_FlxQuadTree._checkObjectHullWidth); - flixel_system_FlxQuadTree._checkObjectHullHeight = checkObject.y - checkObject.last.y; - flixel_system_FlxQuadTree._checkObjectHullHeight = checkObject.get_height() + (flixel_system_FlxQuadTree._checkObjectHullHeight > 0 ? flixel_system_FlxQuadTree._checkObjectHullHeight : -flixel_system_FlxQuadTree._checkObjectHullHeight); - if(flixel_system_FlxQuadTree._objectHullX + flixel_system_FlxQuadTree._objectHullWidth > flixel_system_FlxQuadTree._checkObjectHullX && flixel_system_FlxQuadTree._objectHullX < flixel_system_FlxQuadTree._checkObjectHullX + flixel_system_FlxQuadTree._checkObjectHullWidth && flixel_system_FlxQuadTree._objectHullY + flixel_system_FlxQuadTree._objectHullHeight > flixel_system_FlxQuadTree._checkObjectHullY && flixel_system_FlxQuadTree._objectHullY < flixel_system_FlxQuadTree._checkObjectHullY + flixel_system_FlxQuadTree._checkObjectHullHeight) { - if(flixel_system_FlxQuadTree._processingCallback == null || flixel_system_FlxQuadTree._processingCallback(flixel_system_FlxQuadTree._object,checkObject)) { - overlapProcessed = true; - if(flixel_system_FlxQuadTree._notifyCallback != null) { - flixel_system_FlxQuadTree._notifyCallback(flixel_system_FlxQuadTree._object,checkObject); - } - } - } - if(flixel_system_FlxQuadTree._iterator != null) { - flixel_system_FlxQuadTree._iterator = flixel_system_FlxQuadTree._iterator.next; - } - } - return overlapProcessed; - } - ,__class__: flixel_system_FlxQuadTree -}); -var flixel_system_FlxSound = function() { - this._alreadyPaused = false; - this._volumeAdjust = 1.0; - this._length = 0; - this._time = 0; - this.loopTime = 0; - flixel_FlxBasic.call(this); - this.reset(); -}; -$hxClasses["flixel.system.FlxSound"] = flixel_system_FlxSound; -flixel_system_FlxSound.__name__ = "flixel.system.FlxSound"; -flixel_system_FlxSound.__super__ = flixel_FlxBasic; -flixel_system_FlxSound.prototype = $extend(flixel_FlxBasic.prototype,{ - x: null - ,y: null - ,persist: null - ,name: null - ,artist: null - ,amplitude: null - ,amplitudeLeft: null - ,amplitudeRight: null - ,autoDestroy: null - ,onComplete: null - ,playing: null - ,group: null - ,looped: null - ,loopTime: null - ,endTime: null - ,fadeTween: null - ,_sound: null - ,_channel: null - ,_transform: null - ,_paused: null - ,_volume: null - ,_time: null - ,_length: null - ,_volumeAdjust: null - ,_target: null - ,_radius: null - ,_proximityPan: null - ,_alreadyPaused: null - ,reset: function() { - this.destroy(); - this.x = 0; - this.y = 0; - this._time = 0; - this._paused = false; - this._volume = 1.0; - this._volumeAdjust = 1.0; - this.looped = false; - this.loopTime = 0.0; - this.endTime = 0.0; - this._target = null; - this._radius = 0; - this._proximityPan = false; - this.set_visible(false); - this.amplitude = 0; - this.amplitudeLeft = 0; - this.amplitudeRight = 0; - this.autoDestroy = false; - if(this._transform == null) { - this._transform = new openfl_media_SoundTransform(); - } - this._transform.pan = 0; - } - ,destroy: function() { - this._transform = null; - this.set_exists(false); - this.set_active(false); - this._target = null; - this.name = null; - this.artist = null; - if(this._channel != null) { - this._channel.removeEventListener("soundComplete",$bind(this,this.stopped)); - this._channel.stop(); - this._channel = null; - } - if(this._sound != null) { - this._sound.removeEventListener("id3",$bind(this,this.gotID3)); - this._sound = null; - } - this.onComplete = null; - flixel_FlxBasic.prototype.destroy.call(this); - } - ,update: function(elapsed) { - if(this._channel == null) { - return; - } - this._time = this._channel.get_position(); - var radialMultiplier = 1.0; - if(this._target != null) { - var targetPosition = this._target.getPosition(); - var X = this.x; - var Y = this.y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var X1 = X; - var Y1 = Y; - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X1,Y1); - point._inPool = false; - var point1 = point; - point1._weak = true; - radialMultiplier = targetPosition.distanceTo(point1) / this._radius; - targetPosition.put(); - var lowerBound = radialMultiplier < 0 ? 0 : radialMultiplier; - radialMultiplier = 1 - (lowerBound > 1 ? 1 : lowerBound); - if(this._proximityPan) { - var d = (this.x - this._target.x) / this._radius; - var lowerBound1 = d < -1 ? -1 : d; - this._transform.pan = lowerBound1 > 1 ? 1 : lowerBound1; - } - } - this._volumeAdjust = radialMultiplier; - this.updateTransform(); - if(this._transform.volume > 0) { - this.amplitudeLeft = this._channel.leftPeak / this._transform.volume; - this.amplitudeRight = this._channel.rightPeak / this._transform.volume; - this.amplitude = (this.amplitudeLeft + this.amplitudeRight) * 0.5; - } else { - this.amplitudeLeft = 0; - this.amplitudeRight = 0; - this.amplitude = 0; - } - if(this.endTime != null && this._time >= this.endTime) { - this.stopped(); - } - } - ,kill: function() { - flixel_FlxBasic.prototype.kill.call(this); - this.cleanup(false); - } - ,loadEmbedded: function(EmbeddedSound,Looped,AutoDestroy,OnComplete) { - if(AutoDestroy == null) { - AutoDestroy = false; - } - if(Looped == null) { - Looped = false; - } - if(EmbeddedSound == null) { - return this; - } - this.cleanup(true); - if(((EmbeddedSound) instanceof openfl_media_Sound)) { - this._sound = EmbeddedSound; - } else if(js_Boot.__instanceof(EmbeddedSound,Class)) { - this._sound = Type.createInstance(EmbeddedSound,[]); - } else if(typeof(EmbeddedSound) == "string") { - if(openfl_utils_Assets.exists(EmbeddedSound,"SOUND") || openfl_utils_Assets.exists(EmbeddedSound,"MUSIC")) { - this._sound = openfl_utils_Assets.getSound(EmbeddedSound); - } - } - return this.init(Looped,AutoDestroy,OnComplete); - } - ,loadStream: function(SoundURL,Looped,AutoDestroy,OnComplete) { - if(AutoDestroy == null) { - AutoDestroy = false; - } - if(Looped == null) { - Looped = false; - } - this.cleanup(true); - this._sound = new openfl_media_Sound(); - this._sound.addEventListener("id3",$bind(this,this.gotID3)); - this._sound.load(new openfl_net_URLRequest(SoundURL)); - return this.init(Looped,AutoDestroy,OnComplete); - } - ,init: function(Looped,AutoDestroy,OnComplete) { - if(AutoDestroy == null) { - AutoDestroy = false; - } - if(Looped == null) { - Looped = false; - } - this.looped = Looped; - this.autoDestroy = AutoDestroy; - this.updateTransform(); - this.set_exists(true); - this.onComplete = OnComplete; - this._length = this._sound == null ? 0 : this._sound.get_length(); - this.endTime = this._length; - return this; - } - ,proximity: function(X,Y,TargetObject,Radius,Pan) { - if(Pan == null) { - Pan = true; - } - this.x = X; - this.y = Y; - this._target = TargetObject; - this._radius = Radius; - this._proximityPan = Pan; - return this; - } - ,play: function(ForceRestart,StartTime,EndTime) { - if(StartTime == null) { - StartTime = 0.0; - } - if(ForceRestart == null) { - ForceRestart = false; - } - if(!this.exists) { - return this; - } - if(ForceRestart) { - this.cleanup(false,true); - } else if(this._channel != null) { - return this; - } - if(this._paused) { - this.resume(); - } else { - this.startSound(StartTime); - } - this.endTime = EndTime; - return this; - } - ,resume: function() { - if(this._paused) { - this.startSound(this._time); - } - return this; - } - ,pause: function() { - if(this._channel == null) { - return this; - } - this._time = this._channel.get_position(); - this._paused = true; - this.cleanup(false,false); - return this; - } - ,stop: function() { - this.cleanup(this.autoDestroy,true); - return this; - } - ,fadeOut: function(Duration,To,onComplete) { - if(To == null) { - To = 0; - } - if(Duration == null) { - Duration = 1; - } - if(this.fadeTween != null) { - this.fadeTween.cancel(); - } - this.fadeTween = flixel_tweens_FlxTween.num(this._volume,To,Duration,{ onComplete : onComplete},$bind(this,this.volumeTween)); - return this; - } - ,fadeIn: function(Duration,From,To,onComplete) { - if(To == null) { - To = 1; - } - if(From == null) { - From = 0; - } - if(Duration == null) { - Duration = 1; - } - if(this._channel == null) { - this.play(); - } - if(this.fadeTween != null) { - this.fadeTween.cancel(); - } - this.fadeTween = flixel_tweens_FlxTween.num(From,To,Duration,{ onComplete : onComplete},$bind(this,this.volumeTween)); - return this; - } - ,volumeTween: function(f) { - this.set_volume(f); - } - ,getActualVolume: function() { - return this._volume * this._volumeAdjust; - } - ,setPosition: function(X,Y) { - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - this.x = X; - this.y = Y; - } - ,updateTransform: function() { - this._transform.volume = (flixel_FlxG.sound.muted ? 0 : 1) * flixel_FlxG.sound.volume * (this.group != null ? this.group.volume : 1) * this._volume * this._volumeAdjust; - if(this._channel != null) { - this._channel.set_soundTransform(this._transform); - } - } - ,startSound: function(StartTime) { - if(this._sound == null) { - return; - } - this._time = StartTime; - this._paused = false; - this._channel = this._sound.play(this._time,0,this._transform); - if(this._channel != null) { - this._channel.addEventListener("soundComplete",$bind(this,this.stopped)); - this.set_active(true); - } else { - this.set_exists(false); - this.set_active(false); - } - } - ,stopped: function(_) { - if(this.onComplete != null) { - this.onComplete(); - } - if(this.looped) { - this.cleanup(false); - this.play(false,this.loopTime,this.endTime); - } else { - this.cleanup(this.autoDestroy); - } - } - ,cleanup: function(destroySound,resetPosition) { - if(resetPosition == null) { - resetPosition = true; - } - if(destroySound) { - this.reset(); - return; - } - if(this._channel != null) { - this._channel.removeEventListener("soundComplete",$bind(this,this.stopped)); - this._channel.stop(); - this._channel = null; - } - this.set_active(false); - if(resetPosition) { - this._time = 0; - this._paused = false; - } - } - ,gotID3: function(_) { - this.name = this._sound.get_id3().songName; - this.artist = this._sound.get_id3().artist; - this._sound.removeEventListener("id3",$bind(this,this.gotID3)); - } - ,onFocus: function() { - if(!this._alreadyPaused) { - this.resume(); - } - } - ,onFocusLost: function() { - this._alreadyPaused = this._paused; - this.pause(); - } - ,set_group: function(group) { - if(this.group != group) { - var oldGroup = this.group; - this.group = group; - if(oldGroup != null) { - oldGroup.remove(this); - } - if(group != null) { - group.add(this); - } - this.updateTransform(); - } - return group; - } - ,get_playing: function() { - return this._channel != null; - } - ,get_volume: function() { - return this._volume; - } - ,set_volume: function(Volume) { - var lowerBound = Volume < 0 ? 0 : Volume; - this._volume = lowerBound > 1 ? 1 : lowerBound; - this.updateTransform(); - return Volume; - } - ,get_pan: function() { - return this._transform.pan; - } - ,set_pan: function(pan) { - return this._transform.pan = pan; - } - ,get_time: function() { - return this._time; - } - ,set_time: function(time) { - if(this._channel != null) { - this.cleanup(false,true); - this.startSound(time); - } - return this._time = time; - } - ,get_length: function() { - return this._length; - } - ,toString: function() { - var value = this._channel != null; - var _this = flixel_util_LabelValuePair._pool.get(); - _this.label = "playing"; - _this.value = value; - var value1 = this._time; - var _this1 = flixel_util_LabelValuePair._pool.get(); - _this1.label = "time"; - _this1.value = value1; - var value2 = this._length; - var _this2 = flixel_util_LabelValuePair._pool.get(); - _this2.label = "length"; - _this2.value = value2; - var value3 = this._volume; - var _this3 = flixel_util_LabelValuePair._pool.get(); - _this3.label = "volume"; - _this3.value = value3; - return flixel_util_FlxStringUtil.getDebugString([_this,_this1,_this2,_this3]); - } - ,__class__: flixel_system_FlxSound - ,__properties__: $extend(flixel_FlxBasic.prototype.__properties__,{set_group:"set_group",get_length:"get_length",set_time:"set_time",get_time:"get_time",set_volume:"set_volume",get_volume:"get_volume",get_playing:"get_playing",set_pan:"set_pan",get_pan:"get_pan"}) -}); -var flixel_system_FlxSoundGroup = function(volume) { - if(volume == null) { - volume = 1; - } - this.sounds = []; - this.set_volume(volume); -}; -$hxClasses["flixel.system.FlxSoundGroup"] = flixel_system_FlxSoundGroup; -flixel_system_FlxSoundGroup.__name__ = "flixel.system.FlxSoundGroup"; -flixel_system_FlxSoundGroup.prototype = { - sounds: null - ,volume: null - ,add: function(sound) { - if(this.sounds.indexOf(sound) < 0) { - this.sounds.push(sound); - sound.set_group(this); - return true; - } - return false; - } - ,remove: function(sound) { - if(this.sounds.indexOf(sound) >= 0) { - sound.set_group(null); - return HxOverrides.remove(this.sounds,sound); - } - return false; - } - ,pause: function() { - var _g = 0; - var _g1 = this.sounds; - while(_g < _g1.length) { - var sound = _g1[_g]; - ++_g; - sound.pause(); - } - } - ,resume: function() { - var _g = 0; - var _g1 = this.sounds; - while(_g < _g1.length) { - var sound = _g1[_g]; - ++_g; - sound.resume(); - } - } - ,set_volume: function(volume) { - this.volume = volume; - var _g = 0; - var _g1 = this.sounds; - while(_g < _g1.length) { - var sound = _g1[_g]; - ++_g; - sound.updateTransform(); - } - return volume; - } - ,__class__: flixel_system_FlxSoundGroup - ,__properties__: {set_volume:"set_volume"} -}; -var flixel_system_FlxSplash = function(MaxSize) { - this._curPart = 0; - flixel_FlxState.call(this,MaxSize); -}; -$hxClasses["flixel.system.FlxSplash"] = flixel_system_FlxSplash; -flixel_system_FlxSplash.__name__ = "flixel.system.FlxSplash"; -flixel_system_FlxSplash.nextState = null; -flixel_system_FlxSplash.__super__ = flixel_FlxState; -flixel_system_FlxSplash.prototype = $extend(flixel_FlxState.prototype,{ - _sprite: null - ,_gfx: null - ,_text: null - ,_times: null - ,_colors: null - ,_functions: null - ,_curPart: null - ,_cachedBgColor: null - ,_cachedTimestep: null - ,_cachedAutoPause: null - ,create: function() { - this._cachedBgColor = flixel_FlxG.cameras.get_bgColor(); - flixel_FlxG.cameras.set_bgColor(-16777216); - this._cachedTimestep = flixel_FlxG.fixedTimestep; - flixel_FlxG.fixedTimestep = false; - this._cachedAutoPause = flixel_FlxG.autoPause; - flixel_FlxG.autoPause = false; - flixel_FlxG.keys.enabled = false; - this._times = [0.041,0.184,0.334,0.495,0.636]; - this._colors = [47394,16761138,16066382,3555839,314875]; - this._functions = [$bind(this,this.drawGreen),$bind(this,this.drawYellow),$bind(this,this.drawRed),$bind(this,this.drawBlue),$bind(this,this.drawLightBlue)]; - var _g = 0; - var _g1 = this._times; - while(_g < _g1.length) { - var time = _g1[_g]; - ++_g; - new flixel_util_FlxTimer().start(time,$bind(this,this.timerCallback)); - } - var stageWidth = openfl_Lib.get_current().stage.stageWidth; - var stageHeight = openfl_Lib.get_current().stage.stageHeight; - this._sprite = new openfl_display_Sprite(); - openfl_Lib.get_current().stage.addChild(this._sprite); - this._gfx = this._sprite.get_graphics(); - this._text = new openfl_text_TextField(); - this._text.set_selectable(false); - this._text.set_embedFonts(true); - var dtf = new openfl_text_TextFormat(flixel_system_FlxAssets.FONT_DEFAULT,16,16777215); - dtf.align = 0; - this._text.set_defaultTextFormat(dtf); - this._text.set_text("HaxeFlixel"); - openfl_Lib.get_current().stage.addChild(this._text); - this.onResize(stageWidth,stageHeight); - var extension = ""; - extension = ".ogg"; - flixel_FlxG.sound.load(openfl_utils_Assets.getSound("flixel/sounds/flixel" + extension)).play(); - } - ,destroy: function() { - this._sprite = null; - this._gfx = null; - this._text = null; - this._times = null; - this._colors = null; - this._functions = null; - flixel_FlxState.prototype.destroy.call(this); - } - ,onResize: function(Width,Height) { - flixel_FlxState.prototype.onResize.call(this,Width,Height); - this._sprite.set_x(Width / 2); - this._sprite.set_y(Height / 2 - 20 * flixel_FlxG.game.get_scaleY()); - this._text.set_width(Width / flixel_FlxG.game.get_scaleX()); - this._text.set_x(0); - this._text.set_y(this._sprite.get_y() + 80 * flixel_FlxG.game.get_scaleY()); - this._sprite.set_scaleX(this._text.set_scaleX(flixel_FlxG.game.get_scaleX())); - this._sprite.set_scaleY(this._text.set_scaleY(flixel_FlxG.game.get_scaleY())); - } - ,timerCallback: function(Timer) { - this._functions[this._curPart](); - this._text.set_textColor(this._colors[this._curPart]); - this._text.set_text("HaxeFlixel"); - this._curPart++; - if(this._curPart == 5) { - flixel_tweens_FlxTween.tween(this._sprite,{ alpha : 0},3.0,{ ease : flixel_tweens_FlxEase.quadOut, onComplete : $bind(this,this.onComplete)}); - flixel_tweens_FlxTween.tween(this._text,{ alpha : 0},3.0,{ ease : flixel_tweens_FlxEase.quadOut}); - } - } - ,drawGreen: function() { - this._gfx.beginFill(47394); - this._gfx.moveTo(0,-37); - this._gfx.lineTo(1,-37); - this._gfx.lineTo(37,0); - this._gfx.lineTo(37,1); - this._gfx.lineTo(1,37); - this._gfx.lineTo(0,37); - this._gfx.lineTo(-37,1); - this._gfx.lineTo(-37,0); - this._gfx.lineTo(0,-37); - this._gfx.endFill(); - } - ,drawYellow: function() { - this._gfx.beginFill(16761138); - this._gfx.moveTo(-50,-50); - this._gfx.lineTo(-25,-50); - this._gfx.lineTo(0,-37); - this._gfx.lineTo(-37,0); - this._gfx.lineTo(-50,-25); - this._gfx.lineTo(-50,-50); - this._gfx.endFill(); - } - ,drawRed: function() { - this._gfx.beginFill(16066382); - this._gfx.moveTo(50,-50); - this._gfx.lineTo(25,-50); - this._gfx.lineTo(1,-37); - this._gfx.lineTo(37,0); - this._gfx.lineTo(50,-25); - this._gfx.lineTo(50,-50); - this._gfx.endFill(); - } - ,drawBlue: function() { - this._gfx.beginFill(3555839); - this._gfx.moveTo(-50,50); - this._gfx.lineTo(-25,50); - this._gfx.lineTo(0,37); - this._gfx.lineTo(-37,1); - this._gfx.lineTo(-50,25); - this._gfx.lineTo(-50,50); - this._gfx.endFill(); - } - ,drawLightBlue: function() { - this._gfx.beginFill(314875); - this._gfx.moveTo(50,50); - this._gfx.lineTo(25,50); - this._gfx.lineTo(1,37); - this._gfx.lineTo(37,1); - this._gfx.lineTo(50,25); - this._gfx.lineTo(50,50); - this._gfx.endFill(); - } - ,onComplete: function(Tween) { - flixel_FlxG.cameras.set_bgColor(this._cachedBgColor); - flixel_FlxG.fixedTimestep = this._cachedTimestep; - flixel_FlxG.autoPause = this._cachedAutoPause; - flixel_FlxG.keys.enabled = true; - openfl_Lib.get_current().stage.removeChild(this._sprite); - openfl_Lib.get_current().stage.removeChild(this._text); - var nextState = Type.createInstance(flixel_system_FlxSplash.nextState,[]); - if(flixel_FlxG.game._state.switchTo(nextState)) { - flixel_FlxG.game._requestedState = nextState; - } - flixel_FlxG.game._gameJustStarted = true; - } - ,__class__: flixel_system_FlxSplash -}); -var flixel_system_debug_DebuggerUtil = function() { }; -$hxClasses["flixel.system.debug.DebuggerUtil"] = flixel_system_debug_DebuggerUtil; -flixel_system_debug_DebuggerUtil.__name__ = "flixel.system.debug.DebuggerUtil"; -flixel_system_debug_DebuggerUtil.createTextField = function(X,Y,Color,Size) { - if(Size == null) { - Size = 12; - } - if(Color == null) { - Color = -1; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - return flixel_system_debug_DebuggerUtil.initTextField(new openfl_text_TextField(),X,Y,Color,Size); -}; -flixel_system_debug_DebuggerUtil.initTextField = function(tf,X,Y,Color,Size) { - if(Size == null) { - Size = 12; - } - if(Color == null) { - Color = -1; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - tf.set_x(X); - tf.set_y(Y); - tf.set_multiline(false); - tf.set_wordWrap(false); - tf.set_embedFonts(true); - tf.set_selectable(false); - tf.set_defaultTextFormat(new openfl_text_TextFormat(flixel_system_FlxAssets.FONT_DEBUGGER,Size,Color & 16777215)); - tf.set_alpha((Color >> 24 & 255) / 255); - tf.set_autoSize(1); - return tf; -}; -flixel_system_debug_DebuggerUtil.fixSize = function(bitmapData) { - Reflect.setProperty(bitmapData,"width",11); - Reflect.setProperty(bitmapData,"height",11); - return bitmapData; -}; -var flixel_system_debug__$FlxDebugger_GraphicFlixel = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug__$FlxDebugger_GraphicFlixel.preload != null) { - this.__fromImage(flixel_system_debug__$FlxDebugger_GraphicFlixel.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug__$FlxDebugger_GraphicFlixel.resourceName),flixel_system_debug__$FlxDebugger_GraphicFlixel.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug__$FlxDebugger_GraphicFlixel.preload == null) { - flixel_system_debug__$FlxDebugger_GraphicFlixel.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug._FlxDebugger.GraphicFlixel"] = flixel_system_debug__$FlxDebugger_GraphicFlixel; -flixel_system_debug__$FlxDebugger_GraphicFlixel.__name__ = "flixel.system.debug._FlxDebugger.GraphicFlixel"; -flixel_system_debug__$FlxDebugger_GraphicFlixel.preload = null; -flixel_system_debug__$FlxDebugger_GraphicFlixel.__super__ = openfl_display_BitmapData; -flixel_system_debug__$FlxDebugger_GraphicFlixel.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug__$FlxDebugger_GraphicFlixel -}); -var flixel_system_debug__$FlxDebugger_GraphicDrawDebug = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug__$FlxDebugger_GraphicDrawDebug.preload != null) { - this.__fromImage(flixel_system_debug__$FlxDebugger_GraphicDrawDebug.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug__$FlxDebugger_GraphicDrawDebug.resourceName),flixel_system_debug__$FlxDebugger_GraphicDrawDebug.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug__$FlxDebugger_GraphicDrawDebug.preload == null) { - flixel_system_debug__$FlxDebugger_GraphicDrawDebug.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug._FlxDebugger.GraphicDrawDebug"] = flixel_system_debug__$FlxDebugger_GraphicDrawDebug; -flixel_system_debug__$FlxDebugger_GraphicDrawDebug.__name__ = "flixel.system.debug._FlxDebugger.GraphicDrawDebug"; -flixel_system_debug__$FlxDebugger_GraphicDrawDebug.preload = null; -flixel_system_debug__$FlxDebugger_GraphicDrawDebug.__super__ = openfl_display_BitmapData; -flixel_system_debug__$FlxDebugger_GraphicDrawDebug.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug__$FlxDebugger_GraphicDrawDebug -}); -var flixel_system_debug_GraphicLog = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_GraphicLog.preload != null) { - this.__fromImage(flixel_system_debug_GraphicLog.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_GraphicLog.resourceName),flixel_system_debug_GraphicLog.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_GraphicLog.preload == null) { - flixel_system_debug_GraphicLog.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.GraphicLog"] = flixel_system_debug_GraphicLog; -flixel_system_debug_GraphicLog.__name__ = "flixel.system.debug.GraphicLog"; -flixel_system_debug_GraphicLog.preload = null; -flixel_system_debug_GraphicLog.__super__ = openfl_display_BitmapData; -flixel_system_debug_GraphicLog.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_GraphicLog -}); -var flixel_system_debug_GraphicStats = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_GraphicStats.preload != null) { - this.__fromImage(flixel_system_debug_GraphicStats.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_GraphicStats.resourceName),flixel_system_debug_GraphicStats.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_GraphicStats.preload == null) { - flixel_system_debug_GraphicStats.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.GraphicStats"] = flixel_system_debug_GraphicStats; -flixel_system_debug_GraphicStats.__name__ = "flixel.system.debug.GraphicStats"; -flixel_system_debug_GraphicStats.preload = null; -flixel_system_debug_GraphicStats.__super__ = openfl_display_BitmapData; -flixel_system_debug_GraphicStats.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_GraphicStats -}); -var flixel_system_debug_GraphicWatch = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_GraphicWatch.preload != null) { - this.__fromImage(flixel_system_debug_GraphicWatch.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_GraphicWatch.resourceName),flixel_system_debug_GraphicWatch.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_GraphicWatch.preload == null) { - flixel_system_debug_GraphicWatch.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.GraphicWatch"] = flixel_system_debug_GraphicWatch; -flixel_system_debug_GraphicWatch.__name__ = "flixel.system.debug.GraphicWatch"; -flixel_system_debug_GraphicWatch.preload = null; -flixel_system_debug_GraphicWatch.__super__ = openfl_display_BitmapData; -flixel_system_debug_GraphicWatch.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_GraphicWatch -}); -var flixel_system_debug_GraphicBitmapLog = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_GraphicBitmapLog.preload != null) { - this.__fromImage(flixel_system_debug_GraphicBitmapLog.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_GraphicBitmapLog.resourceName),flixel_system_debug_GraphicBitmapLog.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_GraphicBitmapLog.preload == null) { - flixel_system_debug_GraphicBitmapLog.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.GraphicBitmapLog"] = flixel_system_debug_GraphicBitmapLog; -flixel_system_debug_GraphicBitmapLog.__name__ = "flixel.system.debug.GraphicBitmapLog"; -flixel_system_debug_GraphicBitmapLog.preload = null; -flixel_system_debug_GraphicBitmapLog.__super__ = openfl_display_BitmapData; -flixel_system_debug_GraphicBitmapLog.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_GraphicBitmapLog -}); -var flixel_system_debug_GraphicConsole = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_GraphicConsole.preload != null) { - this.__fromImage(flixel_system_debug_GraphicConsole.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_GraphicConsole.resourceName),flixel_system_debug_GraphicConsole.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_GraphicConsole.preload == null) { - flixel_system_debug_GraphicConsole.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.GraphicConsole"] = flixel_system_debug_GraphicConsole; -flixel_system_debug_GraphicConsole.__name__ = "flixel.system.debug.GraphicConsole"; -flixel_system_debug_GraphicConsole.preload = null; -flixel_system_debug_GraphicConsole.__super__ = openfl_display_BitmapData; -flixel_system_debug_GraphicConsole.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_GraphicConsole -}); -var flixel_system_debug_GraphicArrowLeft = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_GraphicArrowLeft.preload != null) { - this.__fromImage(flixel_system_debug_GraphicArrowLeft.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_GraphicArrowLeft.resourceName),flixel_system_debug_GraphicArrowLeft.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_GraphicArrowLeft.preload == null) { - flixel_system_debug_GraphicArrowLeft.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.GraphicArrowLeft"] = flixel_system_debug_GraphicArrowLeft; -flixel_system_debug_GraphicArrowLeft.__name__ = "flixel.system.debug.GraphicArrowLeft"; -flixel_system_debug_GraphicArrowLeft.preload = null; -flixel_system_debug_GraphicArrowLeft.__super__ = openfl_display_BitmapData; -flixel_system_debug_GraphicArrowLeft.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_GraphicArrowLeft -}); -var flixel_system_debug_GraphicArrowRight = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_GraphicArrowRight.preload != null) { - this.__fromImage(flixel_system_debug_GraphicArrowRight.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_GraphicArrowRight.resourceName),flixel_system_debug_GraphicArrowRight.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_GraphicArrowRight.preload == null) { - flixel_system_debug_GraphicArrowRight.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.GraphicArrowRight"] = flixel_system_debug_GraphicArrowRight; -flixel_system_debug_GraphicArrowRight.__name__ = "flixel.system.debug.GraphicArrowRight"; -flixel_system_debug_GraphicArrowRight.preload = null; -flixel_system_debug_GraphicArrowRight.__super__ = openfl_display_BitmapData; -flixel_system_debug_GraphicArrowRight.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_GraphicArrowRight -}); -var flixel_system_debug_GraphicCloseButton = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_GraphicCloseButton.preload != null) { - this.__fromImage(flixel_system_debug_GraphicCloseButton.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_GraphicCloseButton.resourceName),flixel_system_debug_GraphicCloseButton.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_GraphicCloseButton.preload == null) { - flixel_system_debug_GraphicCloseButton.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.GraphicCloseButton"] = flixel_system_debug_GraphicCloseButton; -flixel_system_debug_GraphicCloseButton.__name__ = "flixel.system.debug.GraphicCloseButton"; -flixel_system_debug_GraphicCloseButton.preload = null; -flixel_system_debug_GraphicCloseButton.__super__ = openfl_display_BitmapData; -flixel_system_debug_GraphicCloseButton.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_GraphicCloseButton -}); -var flixel_system_debug_GraphicInteractive = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_GraphicInteractive.preload != null) { - this.__fromImage(flixel_system_debug_GraphicInteractive.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_GraphicInteractive.resourceName),flixel_system_debug_GraphicInteractive.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_GraphicInteractive.preload == null) { - flixel_system_debug_GraphicInteractive.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.GraphicInteractive"] = flixel_system_debug_GraphicInteractive; -flixel_system_debug_GraphicInteractive.__name__ = "flixel.system.debug.GraphicInteractive"; -flixel_system_debug_GraphicInteractive.preload = null; -flixel_system_debug_GraphicInteractive.__super__ = openfl_display_BitmapData; -flixel_system_debug_GraphicInteractive.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_GraphicInteractive -}); -var flixel_system_debug_FlxDebugger = function() { - openfl_display_Sprite.call(this); -}; -$hxClasses["flixel.system.debug.FlxDebugger"] = flixel_system_debug_FlxDebugger; -flixel_system_debug_FlxDebugger.__name__ = "flixel.system.debug.FlxDebugger"; -flixel_system_debug_FlxDebugger.__super__ = openfl_display_Sprite; -flixel_system_debug_FlxDebugger.prototype = $extend(openfl_display_Sprite.prototype,{ - __class__: flixel_system_debug_FlxDebugger -}); -var flixel_system_debug_FlxDebuggerLayout = $hxEnums["flixel.system.debug.FlxDebuggerLayout"] = { __ename__ : "flixel.system.debug.FlxDebuggerLayout", __constructs__ : ["STANDARD","MICRO","BIG","TOP","LEFT","RIGHT"] - ,STANDARD: {_hx_index:0,__enum__:"flixel.system.debug.FlxDebuggerLayout",toString:$estr} - ,MICRO: {_hx_index:1,__enum__:"flixel.system.debug.FlxDebuggerLayout",toString:$estr} - ,BIG: {_hx_index:2,__enum__:"flixel.system.debug.FlxDebuggerLayout",toString:$estr} - ,TOP: {_hx_index:3,__enum__:"flixel.system.debug.FlxDebuggerLayout",toString:$estr} - ,LEFT: {_hx_index:4,__enum__:"flixel.system.debug.FlxDebuggerLayout",toString:$estr} - ,RIGHT: {_hx_index:5,__enum__:"flixel.system.debug.FlxDebuggerLayout",toString:$estr} -}; -var flixel_system_debug_Tooltip = function() { }; -$hxClasses["flixel.system.debug.Tooltip"] = flixel_system_debug_Tooltip; -flixel_system_debug_Tooltip.__name__ = "flixel.system.debug.Tooltip"; -flixel_system_debug_Tooltip._container = null; -flixel_system_debug_Tooltip.init = function(container) { - flixel_system_debug_Tooltip._container = container; -}; -flixel_system_debug_Tooltip.add = function(element,text) { - var tooltip = new flixel_system_debug_TooltipOverlay(element,text); - flixel_system_debug_Tooltip._container.addChild(tooltip); - flixel_system_debug_Tooltip._tooltips.push(tooltip); - return tooltip; -}; -flixel_system_debug_Tooltip.remove = function(element) { - var removed = false; - var _g = 0; - var _g1 = flixel_system_debug_Tooltip._tooltips.length; - while(_g < _g1) { - var i = _g++; - if(flixel_system_debug_Tooltip._tooltips[i] != null && flixel_system_debug_Tooltip._tooltips[i].owner == element) { - var tooltip = flixel_system_debug_Tooltip._tooltips.splice(i,1)[0]; - tooltip.destroy(); - removed = true; - break; - } - } - return removed; -}; -var flixel_system_debug_TooltipOverlay = function(target,text,width,height) { - if(height == null) { - height = 0; - } - if(width == null) { - width = 0; - } - openfl_display_Sprite.call(this); - this.owner = target; - this.maxSize = new openfl_geom_Point(width,height); - this._shadow = new openfl_display_Bitmap(new openfl_display_BitmapData(1,2,true,-16777216)); - this._background = new openfl_display_Bitmap(new openfl_display_BitmapData(1,1,true,-12961222)); - this.textField = flixel_system_debug_DebuggerUtil.createTextField(2,1); - this.textField.set_alpha(0.8); - this.textField.set_text(text); - this.textField.set_wordWrap(true); - this.addChild(this._shadow); - this.addChild(this._background); - this.addChild(this.textField); - this.updateSize(); - this.setVisible(false); - if(this.owner != null) { - this.owner.addEventListener("mouseOver",$bind(this,this.handleMouseEvents)); - this.owner.addEventListener("mouseOut",$bind(this,this.handleMouseEvents)); - } -}; -$hxClasses["flixel.system.debug.TooltipOverlay"] = flixel_system_debug_TooltipOverlay; -flixel_system_debug_TooltipOverlay.__name__ = "flixel.system.debug.TooltipOverlay"; -flixel_system_debug_TooltipOverlay.__super__ = openfl_display_Sprite; -flixel_system_debug_TooltipOverlay.prototype = $extend(openfl_display_Sprite.prototype,{ - _width: null - ,_height: null - ,_background: null - ,_shadow: null - ,textField: null - ,owner: null - ,maxSize: null - ,destroy: function() { - this._shadow = flixel_util_FlxDestroyUtil.removeChild(this,this._shadow); - this._background = flixel_util_FlxDestroyUtil.removeChild(this,this._background); - this.textField = flixel_util_FlxDestroyUtil.removeChild(this,this.textField); - this.maxSize = null; - if(this.owner != null) { - this.owner.removeEventListener("mouseOver",$bind(this,this.handleMouseEvents)); - this.owner.removeEventListener("mouseOut",$bind(this,this.handleMouseEvents)); - } - this.owner = null; - } - ,resize: function(Width,Height) { - this.maxSize.x = Math.abs(Width) | 0; - this.maxSize.y = Math.abs(Height) | 0; - this.updateSize(); - } - ,reposition: function(X,Y) { - this.set_x(X); - this.set_y(Y); - this.ensureOnScreen(); - } - ,setVisible: function(Value) { - this.set_visible(Value); - if(this.get_visible()) { - this.parent.addChild(this); - this.ensureOnScreen(); - } - } - ,setText: function(Text1) { - this.textField.set_text(Text1); - this.updateSize(); - this.ensureOnScreen(); - } - ,toggleVisible: function() { - this.setVisible(!this.get_visible()); - } - ,putOnTop: function() { - this.parent.addChild(this); - } - ,update: function() { - } - ,updateSize: function() { - this._width = ((this.maxSize.x <= 0 ? this.textField.get_textWidth() : Math.abs(this.maxSize.x)) | 0) + 8; - this._height = ((this.maxSize.y <= 0 ? this.textField.get_textHeight() : Math.abs(this.maxSize.y)) | 0) + 8; - this._background.set_scaleX(this._width); - this._background.set_scaleY(this._height); - this._shadow.set_scaleX(this._width); - this._shadow.set_y(this._height); - this.textField.set_width(this._width); - } - ,ensureOnScreen: function() { - this.set_x(this.get_x() < 0 ? 0 : this.get_x()); - this.set_y(this.get_y() < 0 ? 0 : this.get_y()); - var offsetX = this.get_x() + this.get_width() >= openfl_Lib.get_current().stage.stageWidth ? openfl_Lib.get_current().stage.stageWidth - (this.get_x() + this.get_width()) : 0; - var offsetY = this.get_y() + this.get_height() >= openfl_Lib.get_current().stage.stageHeight ? openfl_Lib.get_current().stage.stageHeight - (this.get_y() + this.get_height()) : 0; - var _g = this; - _g.set_x(_g.get_x() + offsetX); - var _g1 = this; - _g1.set_y(_g1.get_y() + offsetY); - } - ,handleMouseEvents: function(event) { - if(event.type == "mouseOver" && !this.get_visible()) { - this.set_x(event.stageX + 10); - this.set_y(event.stageY + 10); - this.setVisible(true); - } else if(event.type == "mouseOut") { - this.setVisible(false); - } - } - ,__class__: flixel_system_debug_TooltipOverlay -}); -var flixel_system_debug__$Window_GraphicWindowHandle = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug__$Window_GraphicWindowHandle.preload != null) { - this.__fromImage(flixel_system_debug__$Window_GraphicWindowHandle.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug__$Window_GraphicWindowHandle.resourceName),flixel_system_debug__$Window_GraphicWindowHandle.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug__$Window_GraphicWindowHandle.preload == null) { - flixel_system_debug__$Window_GraphicWindowHandle.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug._Window.GraphicWindowHandle"] = flixel_system_debug__$Window_GraphicWindowHandle; -flixel_system_debug__$Window_GraphicWindowHandle.__name__ = "flixel.system.debug._Window.GraphicWindowHandle"; -flixel_system_debug__$Window_GraphicWindowHandle.preload = null; -flixel_system_debug__$Window_GraphicWindowHandle.__super__ = openfl_display_BitmapData; -flixel_system_debug__$Window_GraphicWindowHandle.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug__$Window_GraphicWindowHandle -}); -var flixel_system_debug_Window = function(Title,Icon,Width,Height,Resizable,Bounds,Closable,AlwaysOnTop) { - if(AlwaysOnTop == null) { - AlwaysOnTop = true; - } - if(Closable == null) { - Closable = false; - } - if(Resizable == null) { - Resizable = true; - } - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - openfl_display_Sprite.call(this); - this.minSize = new openfl_geom_Point(50,30); - this._width = Math.abs(Width) | 0; - this._height = Math.abs(Height) | 0; - this.updateBounds(Bounds); - this._drag = new openfl_geom_Point(); - this._resizable = Resizable; - this._closable = Closable; - this._alwaysOnTop = AlwaysOnTop; - this._shadow = new openfl_display_Bitmap(new openfl_display_BitmapData(1,2,true,-16777216)); - this._background = new openfl_display_Bitmap(new openfl_display_BitmapData(1,1,true,-580952225)); - this._header = new openfl_display_Bitmap(new openfl_display_BitmapData(1,15,true,-1157627904)); - this._background.set_y(this._header.get_height()); - this._title = flixel_system_debug_DebuggerUtil.createTextField(2,-1); - this._title.set_alpha(0.8); - this._title.set_text(Title); - this.addChild(this._shadow); - this.addChild(this._background); - this.addChild(this._header); - this.addChild(this._title); - if(Icon != null) { - flixel_system_debug_DebuggerUtil.fixSize(Icon); - this._icon = new openfl_display_Bitmap(Icon); - this._icon.set_x(5); - this._icon.set_y(2); - this._icon.set_alpha(0.8); - this._title.set_x(this._icon.get_x() + this._icon.get_width() + 2); - this.addChild(this._icon); - } - if(this._resizable) { - this._handle = new openfl_display_Bitmap(flixel_system_debug_DebuggerUtil.fixSize(new flixel_system_debug__$Window_GraphicWindowHandle(0,0))); - this.addChild(this._handle); - } - if(Closable) { - this._closeButton = new flixel_system_ui_FlxSystemButton(new flixel_system_debug_GraphicCloseButton(0,0),$bind(this,this.close)); - this._closeButton.set_alpha(0.8); - this.addChild(this._closeButton); - } else { - this._id = flixel_system_debug_Window.WINDOW_AMOUNT; - this.loadSaveData(); - flixel_system_debug_Window.WINDOW_AMOUNT++; - } - if(this._width != 0 || this._height != 0) { - this.updateSize(); - } - this.bound(); - this.addEventListener("enterFrame",$bind(this,this.init)); -}; -$hxClasses["flixel.system.debug.Window"] = flixel_system_debug_Window; -flixel_system_debug_Window.__name__ = "flixel.system.debug.Window"; -flixel_system_debug_Window.__super__ = openfl_display_Sprite; -flixel_system_debug_Window.prototype = $extend(openfl_display_Sprite.prototype,{ - minSize: null - ,maxSize: null - ,toggleButton: null - ,_width: null - ,_height: null - ,_bounds: null - ,_background: null - ,_header: null - ,_shadow: null - ,_title: null - ,_handle: null - ,_icon: null - ,_closeButton: null - ,_overHeader: null - ,_overHandle: null - ,_drag: null - ,_dragging: null - ,_resizing: null - ,_resizable: null - ,_closable: null - ,_alwaysOnTop: null - ,_id: null - ,destroy: function() { - this.minSize = null; - this.maxSize = null; - this._bounds = null; - if(this._shadow != null) { - this.removeChild(this._shadow); - } - this._shadow = null; - if(this._background != null) { - this.removeChild(this._background); - } - this._background = null; - if(this._header != null) { - this.removeChild(this._header); - } - this._header = null; - if(this._title != null) { - this.removeChild(this._title); - } - this._title = null; - if(this._handle != null) { - this.removeChild(this._handle); - } - this._handle = null; - this._drag = null; - this._closeButton = flixel_util_FlxDestroyUtil.destroy(this._closeButton); - var stage = openfl_Lib.get_current().stage; - if(stage.hasEventListener("mouseMove")) { - stage.removeEventListener("mouseMove",$bind(this,this.onMouseMove)); - } - if(this.hasEventListener("mouseDown")) { - this.removeEventListener("mouseDown",$bind(this,this.onMouseDown)); - } - if(stage.hasEventListener("mouseUp")) { - stage.removeEventListener("mouseUp",$bind(this,this.onMouseUp)); - } - } - ,resize: function(Width,Height) { - this._width = Math.abs(Width) | 0; - this._height = Math.abs(Height) | 0; - this.updateSize(); - } - ,reposition: function(X,Y) { - this.set_x(X); - this.set_y(Y); - this.bound(); - } - ,updateBounds: function(Bounds) { - this._bounds = Bounds; - if(this._bounds != null) { - this.maxSize = new openfl_geom_Point(this._bounds.width,this._bounds.height); - } else { - this.maxSize = new openfl_geom_Point(1.79e+308,1.79e+308); - } - } - ,setVisible: function(Value) { - this.set_visible(Value); - if(!this._closable) { - flixel_FlxG.save.data.windowSettings[this._id] = this.get_visible(); - flixel_FlxG.save.flush(); - } - if(this.toggleButton != null) { - this.toggleButton.set_toggled(!this.get_visible()); - } - if(this.get_visible() && this._alwaysOnTop) { - this.parent.addChild(this); - } - } - ,toggleVisible: function() { - this.setVisible(!this.get_visible()); - } - ,putOnTop: function() { - this.parent.addChild(this); - } - ,loadSaveData: function() { - if(flixel_FlxG.save.data.windowSettings != null) { - this.set_visible(flixel_FlxG.save.data.windowSettings[this._id]); - } else { - this.initSaveData(); - this.loadSaveData(); - } - } - ,initSaveData: function() { - var settings = []; - settings[0] = true; - settings[1] = true; - settings[2] = true; - settings[3] = true; - settings[4] = true; - settings[5] = true; - settings[6] = true; - settings[7] = true; - settings[8] = true; - settings[9] = true; - flixel_FlxG.save.data.windowSettings = settings; - flixel_FlxG.save.flush(); - } - ,update: function() { - } - ,init: function(E) { - if(this.stage == null) { - return; - } - this.removeEventListener("enterFrame",$bind(this,this.init)); - this.stage.addEventListener("mouseMove",$bind(this,this.onMouseMove)); - this.stage.addEventListener("mouseUp",$bind(this,this.onMouseUp)); - this.addEventListener("mouseDown",$bind(this,this.onMouseDown)); - } - ,onMouseMove: function(E) { - var mouseX = this.get_mouseX() < 0 ? 0 : this.get_mouseX(); - var mouseY = this.get_mouseY() < 0 ? 0 : this.get_mouseY(); - if(!this.parent.get_visible()) { - this._overHandle = this._overHeader = false; - return; - } - if(this._dragging) { - this._overHeader = true; - this.reposition(this.parent.get_mouseX() - this._drag.x,this.parent.get_mouseY() - this._drag.y); - } else if(this._resizing) { - this._overHandle = true; - this.resize(mouseX - this._drag.x,mouseY - this._drag.y); - } else if(mouseX >= 0 && mouseX <= this._width && mouseY >= 0 && mouseY <= this._height) { - this._overHeader = mouseX <= this._header.get_width() && mouseY <= this._header.get_height(); - if(this._resizable) { - this._overHandle = mouseX >= this._width - this._handle.get_width() && mouseY >= this._height - this._handle.get_height(); - } - } else { - this._overHandle = this._overHeader = false; - } - } - ,onMouseDown: function(E) { - if(this._overHeader) { - if(this._alwaysOnTop) { - this.parent.addChild(this); - } - this._dragging = true; - this._drag.x = this.get_mouseX(); - this._drag.y = this.get_mouseY(); - } else if(this._overHandle) { - if(this._alwaysOnTop) { - this.parent.addChild(this); - } - this._resizing = true; - var tmp = this._width; - var tmp1 = this.get_mouseX(); - this._drag.x = tmp - tmp1; - var tmp2 = this._height; - var tmp3 = this.get_mouseY(); - this._drag.y = tmp2 - tmp3; - } - } - ,onMouseUp: function(E) { - this._dragging = false; - this._resizing = false; - } - ,bound: function() { - if(this._bounds != null) { - var Value = this.get_x(); - var Min = this._bounds.get_left(); - var Max = this._bounds.get_right() - this._width; - var lowerBound = Min != null && Value < Min ? Min : Value; - this.set_x(Max != null && lowerBound > Max ? Max : lowerBound); - var Value1 = this.get_y(); - var Min1 = this._bounds.get_top(); - var Max1 = this._bounds.get_bottom() - this._height; - var lowerBound1 = Min1 != null && Value1 < Min1 ? Min1 : Value1; - this.set_y(Max1 != null && lowerBound1 > Max1 ? Max1 : lowerBound1); - } - } - ,updateSize: function() { - var Value = this._width; - var Min = this.minSize.x; - var Max = this.maxSize.x; - var lowerBound = Min != null && Value < Min ? Min : Value; - this._width = (Max != null && lowerBound > Max ? Max : lowerBound) | 0; - var Value1 = this._height; - var Min1 = this.minSize.y; - var Max1 = this.maxSize.y; - var lowerBound1 = Min1 != null && Value1 < Min1 ? Min1 : Value1; - this._height = (Max1 != null && lowerBound1 > Max1 ? Max1 : lowerBound1) | 0; - this._header.set_scaleX(this._width); - this._background.set_scaleX(this._width); - this._background.set_scaleY(this._height - this._header.get_height()); - this._shadow.set_scaleX(this._width); - this._shadow.set_y(this._height); - this._title.set_width(this._width - 4); - if(this._resizable) { - this._handle.set_x(this._width - this._handle.get_width()); - this._handle.set_y(this._height - this._handle.get_height()); - } - if(this._closeButton != null) { - this._closeButton.set_x(this._width - this._closeButton.get_width() - 3); - this._closeButton.set_y(3); - } - } - ,close: function() { - this.destroy(); - } - ,__class__: flixel_system_debug_Window -}); -var flixel_system_debug_completion_CompletionList = function(capacity) { - this.upperVisibleIndex = 0; - this.lowerVisibleIndex = 0; - this.selectedIndex = 0; - this.entries = []; - openfl_display_Sprite.call(this); - this.set_visible(false); - this.upperVisibleIndex = capacity - 1; - this.actualHeight = capacity * 20; - this.createPopupEntries(capacity); - this.createScrollBar(); - this.updateSelectedItem(); - openfl_Lib.get_current().stage.addEventListener("keyDown",$bind(this,this.onKeyDown)); -}; -$hxClasses["flixel.system.debug.completion.CompletionList"] = flixel_system_debug_completion_CompletionList; -flixel_system_debug_completion_CompletionList.__name__ = "flixel.system.debug.completion.CompletionList"; -flixel_system_debug_completion_CompletionList.__super__ = openfl_display_Sprite; -flixel_system_debug_completion_CompletionList.prototype = $extend(openfl_display_Sprite.prototype,{ - completed: null - ,selectionChanged: null - ,closed: null - ,filter: null - ,items: null - ,entries: null - ,originalItems: null - ,selectedIndex: null - ,lowerVisibleIndex: null - ,upperVisibleIndex: null - ,scrollBar: null - ,actualHeight: null - ,show: function(x,items) { - this.set_visible(true); - this.set_x(x); - this.originalItems = items; - this.set_filter(""); - this.updateEntries(); - } - ,setY: function(y) { - this.set_y(y - this.actualHeight); - } - ,close: function() { - this.set_visible(false); - this.set_filter(null); - if(this.closed != null) { - this.closed(); - } - } - ,createPopupEntries: function(amount) { - var _g = 0; - var _g1 = amount; - while(_g < _g1) { - var i = _g++; - var entry = new flixel_system_debug_completion_CompletionListEntry(); - this.entries.push(entry); - this.addChild(entry); - entry.set_y(20 * i); - } - } - ,createScrollBar: function() { - this.scrollBar = new flixel_system_debug_completion_CompletionListScrollBar(150,0,5,this.actualHeight); - this.addChild(this.scrollBar); - } - ,onKeyDown: function(e) { - if(!this.get_visible()) { - return; - } - switch(e.keyCode) { - case 13: - if(this.completed != null) { - this.completed(this.items[this.selectedIndex]); - } - this.close(); - return; - case 27: - this.close(); - return; - case 38: - this.updateIndices(-1); - break; - case 40: - this.updateIndices(1); - break; - } - this.updateEntries(); - } - ,updateIndices: function(modifier) { - this.selectedIndex = this.bound(this.selectedIndex + modifier); - var Value = this.selectedIndex; - var Min = this.lowerVisibleIndex; - var Max = this.upperVisibleIndex; - if((Min == null || Value >= Min) && (Max == null || Value <= Max)) { - return; - } - this.lowerVisibleIndex = this.bound(this.lowerVisibleIndex + modifier); - this.upperVisibleIndex = this.bound(this.upperVisibleIndex + modifier); - var range = this.upperVisibleIndex - this.lowerVisibleIndex; - if(range == this.items.length) { - return; - } - if(this.lowerVisibleIndex == 0) { - this.upperVisibleIndex = this.entries.length - 1; - } else if(this.upperVisibleIndex == this.items.length - 1) { - this.lowerVisibleIndex = this.items.length - this.entries.length; - } - } - ,bound: function(index) { - var Max = this.items.length - 1; - var lowerBound = index < 0 ? 0 : index; - return (Max != null && lowerBound > Max ? Max : lowerBound) | 0; - } - ,updateEntries: function() { - this.updateLabels(); - this.updateSelectedItem(); - this.scrollBar.updateHandle(this.lowerVisibleIndex,this.items.length,this.entries.length); - } - ,updateLabels: function() { - var _g = 0; - var _g1 = this.entries.length; - while(_g < _g1) { - var i = _g++; - var selectedItem = this.items[this.lowerVisibleIndex + i]; - if(selectedItem == null) { - selectedItem = ""; - } - this.entries[i].setItem(selectedItem); - } - } - ,updateSelectedItem: function() { - var _g = 0; - var _g1 = this.entries; - while(_g < _g1.length) { - var entry = _g1[_g]; - ++_g; - entry.set_selected(false); - } - this.entries[this.selectedIndex - this.lowerVisibleIndex].set_selected(true); - if(this.selectionChanged != null) { - this.selectionChanged(this.items[this.selectedIndex]); - } - } - ,setItems: function(items) { - if(items == null) { - return; - } - if(items.length == 0) { - this.close(); - } - this.items = items; - this.selectedIndex = 0; - this.lowerVisibleIndex = 0; - this.upperVisibleIndex = this.entries.length - 1; - this.updateEntries(); - } - ,filterItems: function(filter) { - if(filter == null) { - filter = ""; - } - var _g = []; - var _g1 = 0; - var _g2 = this.originalItems; - while(_g1 < _g2.length) { - var v = _g2[_g1]; - ++_g1; - if(v.toLowerCase().indexOf(filter.toLowerCase()) != -1) { - _g.push(v); - } - } - return this.sortItems(filter,_g); - } - ,sortItems: function(filter,items) { - var _gthis = this; - if(filter == "") { - return items; - } - items.sort(function(a,b) { - var valueA = _gthis.startsWithExt(a,filter); - var valueB = _gthis.startsWithExt(b,filter); - if(valueA > valueB) { - return -valueA; - } - if(valueB > valueA) { - return valueB; - } - if(valueA == valueB) { - return a.length - b.length | 0; - } - return 0; - }); - return items; - } - ,startsWithExt: function(s,start) { - if(StringTools.startsWith(s,start)) { - return 2; - } - var _this_r = new RegExp("^[_]+","".split("u").join("")); - if(StringTools.startsWith(s.replace(_this_r,""),start)) { - return 1; - } - return 0; - } - ,set_filter: function(filter) { - if(filter == this.filter) { - return filter; - } - this.setItems(this.filterItems(filter)); - return this.filter = filter; - } - ,__class__: flixel_system_debug_completion_CompletionList - ,__properties__: $extend(openfl_display_Sprite.prototype.__properties__,{set_filter:"set_filter"}) -}); -var flixel_system_debug_completion_CompletionListEntry = function() { - this.selected = false; - openfl_display_Sprite.call(this); - this.initBitmapDatas(); - this.addChild(this.background = new openfl_display_Bitmap()); - this.background.set_bitmapData(flixel_system_debug_completion_CompletionListEntry.normalBitmapData); - this.label = flixel_system_debug_DebuggerUtil.createTextField(); - this.label.set_x(4); - this.addChild(this.label); -}; -$hxClasses["flixel.system.debug.completion.CompletionListEntry"] = flixel_system_debug_completion_CompletionListEntry; -flixel_system_debug_completion_CompletionListEntry.__name__ = "flixel.system.debug.completion.CompletionListEntry"; -flixel_system_debug_completion_CompletionListEntry.normalBitmapData = null; -flixel_system_debug_completion_CompletionListEntry.highlightBitmapData = null; -flixel_system_debug_completion_CompletionListEntry.__super__ = openfl_display_Sprite; -flixel_system_debug_completion_CompletionListEntry.prototype = $extend(openfl_display_Sprite.prototype,{ - selected: null - ,background: null - ,label: null - ,initBitmapDatas: function() { - if(flixel_system_debug_completion_CompletionListEntry.normalBitmapData == null) { - flixel_system_debug_completion_CompletionListEntry.normalBitmapData = new openfl_display_BitmapData(150,20,true,-10526881); - } - if(flixel_system_debug_completion_CompletionListEntry.highlightBitmapData == null) { - flixel_system_debug_completion_CompletionListEntry.highlightBitmapData = new openfl_display_BitmapData(150,20,true,-9605779); - } - } - ,setItem: function(item) { - this.label.set_text(item); - if(this.label.get_width() > 150) { - this.label.set_width(150); - this.label.set_autoSize(2); - } - } - ,set_selected: function(selected) { - if(selected == this.selected) { - return selected; - } - this.background.set_bitmapData(selected ? flixel_system_debug_completion_CompletionListEntry.highlightBitmapData : flixel_system_debug_completion_CompletionListEntry.normalBitmapData); - return this.selected = selected; - } - ,__class__: flixel_system_debug_completion_CompletionListEntry - ,__properties__: $extend(openfl_display_Sprite.prototype.__properties__,{set_selected:"set_selected"}) -}); -var flixel_system_debug_completion_CompletionListScrollBar = function(x,y,width,height) { - openfl_display_Sprite.call(this); - this.set_x(x); - this.set_y(y); - this.addChild(new openfl_display_Bitmap(new openfl_display_BitmapData(width,height,true,-12303292))); - this.handle = new openfl_display_Bitmap(new openfl_display_BitmapData(width,1,true,-14540254)); - this.addChild(this.handle); -}; -$hxClasses["flixel.system.debug.completion.CompletionListScrollBar"] = flixel_system_debug_completion_CompletionListScrollBar; -flixel_system_debug_completion_CompletionListScrollBar.__name__ = "flixel.system.debug.completion.CompletionListScrollBar"; -flixel_system_debug_completion_CompletionListScrollBar.__super__ = openfl_display_Sprite; -flixel_system_debug_completion_CompletionListScrollBar.prototype = $extend(openfl_display_Sprite.prototype,{ - handle: null - ,updateHandle: function(lower,items,entries) { - this.handle.set_scaleY(Math.min(this.get_height() / items * entries,this.get_height())); - this.handle.set_y(this.get_height() / items * lower); - var tmp = this.handle; - var Value = this.handle.get_y(); - var Max = this.get_height() - this.handle.get_scaleY(); - var lowerBound = Value < 0 ? 0 : Value; - tmp.set_y(Max != null && lowerBound > Max ? Max : lowerBound); - } - ,__class__: flixel_system_debug_completion_CompletionListScrollBar -}); -var flixel_system_debug_console_ConsoleUtil = function() { }; -$hxClasses["flixel.system.debug.console.ConsoleUtil"] = flixel_system_debug_console_ConsoleUtil; -flixel_system_debug_console_ConsoleUtil.__name__ = "flixel.system.debug.console.ConsoleUtil"; -flixel_system_debug_console_ConsoleUtil.parser = null; -flixel_system_debug_console_ConsoleUtil.interp = null; -flixel_system_debug_console_ConsoleUtil.init = function() { - flixel_system_debug_console_ConsoleUtil.parser = new hscript_Parser(); - flixel_system_debug_console_ConsoleUtil.parser.allowJSON = true; - flixel_system_debug_console_ConsoleUtil.parser.allowTypes = true; - flixel_system_debug_console_ConsoleUtil.interp = new flixel_system_debug_console__$ConsoleUtil_Interp(); -}; -flixel_system_debug_console_ConsoleUtil.parseCommand = function(Input) { - if(StringTools.endsWith(Input,";")) { - Input = HxOverrides.substr(Input,0,-1); - } - return flixel_system_debug_console_ConsoleUtil.parser.parseString(Input); -}; -flixel_system_debug_console_ConsoleUtil.runCommand = function(Input) { - return flixel_system_debug_console_ConsoleUtil.interp.expr(flixel_system_debug_console_ConsoleUtil.parseCommand(Input)); -}; -flixel_system_debug_console_ConsoleUtil.runExpr = function(expr) { - return flixel_system_debug_console_ConsoleUtil.interp.expr(expr); -}; -flixel_system_debug_console_ConsoleUtil.registerObject = function(ObjectAlias,AnyObject) { - if(AnyObject == null || Reflect.isObject(AnyObject)) { - var _this = flixel_system_debug_console_ConsoleUtil.interp.variables; - var value = AnyObject; - if(__map_reserved[ObjectAlias] != null) { - _this.setReserved(ObjectAlias,value); - } else { - _this.h[ObjectAlias] = value; - } - } -}; -flixel_system_debug_console_ConsoleUtil.registerFunction = function(FunctionAlias,Function1) { - if(Reflect.isFunction(Function1)) { - var _this = flixel_system_debug_console_ConsoleUtil.interp.variables; - var value = Function1; - if(__map_reserved[FunctionAlias] != null) { - _this.setReserved(FunctionAlias,value); - } else { - _this.h[FunctionAlias] = value; - } - } -}; -flixel_system_debug_console_ConsoleUtil.getFields = function(Object1) { - var fields = []; - if(js_Boot.__instanceof(Object1,Class)) { - fields = Type.getClassFields(Object1); - } else if(js_Boot.__instanceof(Object1,Enum)) { - fields = Object1.__constructs__.slice(); - } else if(Reflect.isObject(Object1)) { - fields = Type.getInstanceFields(js_Boot.getClass(Object1)); - } - HxOverrides.remove(fields,"__constructs__"); - var filteredFields = []; - var _g = 0; - while(_g < fields.length) { - var field = fields[_g]; - ++_g; - if(StringTools.startsWith(field,"get_") || StringTools.startsWith(field,"set_")) { - var name = HxOverrides.substr(field,4,null); - if(fields.indexOf(name) == -1 && filteredFields.indexOf(name) == -1) { - filteredFields.push(name); - } - } else { - filteredFields.push(field); - } - } - return flixel_system_debug_console_ConsoleUtil.sortFields(filteredFields); -}; -flixel_system_debug_console_ConsoleUtil.sortFields = function(fields) { - var underscoreList = []; - var _g = []; - var _g1 = 0; - var _g2 = fields; - while(_g1 < _g2.length) { - var v = _g2[_g1]; - ++_g1; - var fields1; - if(StringTools.startsWith(v,"_")) { - underscoreList.push(v); - fields1 = false; - } else { - fields1 = true; - } - if(fields1) { - _g.push(v); - } - } - fields = _g; - flixel_util_FlxStringUtil.sortAlphabetically(fields); - flixel_util_FlxStringUtil.sortAlphabetically(underscoreList); - return fields.concat(underscoreList); -}; -flixel_system_debug_console_ConsoleUtil.log = function(Text1) { - flixel_FlxG.log.advanced([Text1],flixel_system_debug_log_LogStyle.CONSOLE); -}; -var hscript_Interp = function() { - var _gthis = this; - this.variables = new haxe_ds_StringMap(); - this.locals = new haxe_ds_StringMap(); - this.declared = []; - var _this = this.variables; - var value = null; - if(__map_reserved["null"] != null) { - _this.setReserved("null",value); - } else { - _this.h["null"] = value; - } - var _this1 = this.variables; - if(__map_reserved["true"] != null) { - _this1.setReserved("true",true); - } else { - _this1.h["true"] = true; - } - var _this2 = this.variables; - if(__map_reserved["false"] != null) { - _this2.setReserved("false",false); - } else { - _this2.h["false"] = false; - } - var _this3 = this.variables; - var value1 = Reflect.makeVarArgs(function(el) { - var inf = _gthis.posInfos(); - var v = el.shift(); - if(el.length > 0) { - inf.customParams = el; - } - haxe_Log.trace(Std.string(v),inf); - }); - if(__map_reserved["trace"] != null) { - _this3.setReserved("trace",value1); - } else { - _this3.h["trace"] = value1; - } - this.initOps(); -}; -$hxClasses["hscript.Interp"] = hscript_Interp; -hscript_Interp.__name__ = "hscript.Interp"; -hscript_Interp.prototype = { - variables: null - ,locals: null - ,binops: null - ,depth: null - ,inTry: null - ,declared: null - ,returnValue: null - ,posInfos: function() { - return { fileName : "hscript", lineNumber : 0}; - } - ,initOps: function() { - var me = this; - this.binops = new haxe_ds_StringMap(); - var _this = this.binops; - var value = function(e1,e2) { - return me.expr(e1) + me.expr(e2); - }; - if(__map_reserved["+"] != null) { - _this.setReserved("+",value); - } else { - _this.h["+"] = value; - } - var _this1 = this.binops; - var value1 = function(e11,e21) { - return me.expr(e11) - me.expr(e21); - }; - if(__map_reserved["-"] != null) { - _this1.setReserved("-",value1); - } else { - _this1.h["-"] = value1; - } - var _this2 = this.binops; - var value2 = function(e12,e22) { - return me.expr(e12) * me.expr(e22); - }; - if(__map_reserved["*"] != null) { - _this2.setReserved("*",value2); - } else { - _this2.h["*"] = value2; - } - var _this3 = this.binops; - var value3 = function(e13,e23) { - return me.expr(e13) / me.expr(e23); - }; - if(__map_reserved["/"] != null) { - _this3.setReserved("/",value3); - } else { - _this3.h["/"] = value3; - } - var _this4 = this.binops; - var value4 = function(e14,e24) { - return me.expr(e14) % me.expr(e24); - }; - if(__map_reserved["%"] != null) { - _this4.setReserved("%",value4); - } else { - _this4.h["%"] = value4; - } - var _this5 = this.binops; - var value5 = function(e15,e25) { - return me.expr(e15) & me.expr(e25); - }; - if(__map_reserved["&"] != null) { - _this5.setReserved("&",value5); - } else { - _this5.h["&"] = value5; - } - var _this6 = this.binops; - var value6 = function(e16,e26) { - return me.expr(e16) | me.expr(e26); - }; - if(__map_reserved["|"] != null) { - _this6.setReserved("|",value6); - } else { - _this6.h["|"] = value6; - } - var _this7 = this.binops; - var value7 = function(e17,e27) { - return me.expr(e17) ^ me.expr(e27); - }; - if(__map_reserved["^"] != null) { - _this7.setReserved("^",value7); - } else { - _this7.h["^"] = value7; - } - var _this8 = this.binops; - var value8 = function(e18,e28) { - return me.expr(e18) << me.expr(e28); - }; - if(__map_reserved["<<"] != null) { - _this8.setReserved("<<",value8); - } else { - _this8.h["<<"] = value8; - } - var _this9 = this.binops; - var value9 = function(e19,e29) { - return me.expr(e19) >> me.expr(e29); - }; - if(__map_reserved[">>"] != null) { - _this9.setReserved(">>",value9); - } else { - _this9.h[">>"] = value9; - } - var _this10 = this.binops; - var value10 = function(e110,e210) { - return me.expr(e110) >>> me.expr(e210); - }; - if(__map_reserved[">>>"] != null) { - _this10.setReserved(">>>",value10); - } else { - _this10.h[">>>"] = value10; - } - var _this11 = this.binops; - var value11 = function(e111,e211) { - return me.expr(e111) == me.expr(e211); - }; - if(__map_reserved["=="] != null) { - _this11.setReserved("==",value11); - } else { - _this11.h["=="] = value11; - } - var _this12 = this.binops; - var value12 = function(e112,e212) { - return me.expr(e112) != me.expr(e212); - }; - if(__map_reserved["!="] != null) { - _this12.setReserved("!=",value12); - } else { - _this12.h["!="] = value12; - } - var _this13 = this.binops; - var value13 = function(e113,e213) { - return me.expr(e113) >= me.expr(e213); - }; - if(__map_reserved[">="] != null) { - _this13.setReserved(">=",value13); - } else { - _this13.h[">="] = value13; - } - var _this14 = this.binops; - var value14 = function(e114,e214) { - return me.expr(e114) <= me.expr(e214); - }; - if(__map_reserved["<="] != null) { - _this14.setReserved("<=",value14); - } else { - _this14.h["<="] = value14; - } - var _this15 = this.binops; - var value15 = function(e115,e215) { - return me.expr(e115) > me.expr(e215); - }; - if(__map_reserved[">"] != null) { - _this15.setReserved(">",value15); - } else { - _this15.h[">"] = value15; - } - var _this16 = this.binops; - var value16 = function(e116,e216) { - return me.expr(e116) < me.expr(e216); - }; - if(__map_reserved["<"] != null) { - _this16.setReserved("<",value16); - } else { - _this16.h["<"] = value16; - } - var _this17 = this.binops; - var value17 = function(e117,e217) { - if(me.expr(e117) != true) { - return me.expr(e217) == true; - } else { - return true; - } - }; - if(__map_reserved["||"] != null) { - _this17.setReserved("||",value17); - } else { - _this17.h["||"] = value17; - } - var _this18 = this.binops; - var value18 = function(e118,e218) { - if(me.expr(e118) == true) { - return me.expr(e218) == true; - } else { - return false; - } - }; - if(__map_reserved["&&"] != null) { - _this18.setReserved("&&",value18); - } else { - _this18.h["&&"] = value18; - } - var _this19 = this.binops; - var value19 = $bind(this,this.assign); - if(__map_reserved["="] != null) { - _this19.setReserved("=",value19); - } else { - _this19.h["="] = value19; - } - var _this20 = this.binops; - var value20 = function(e119,e219) { - return new IntIterator(me.expr(e119),me.expr(e219)); - }; - if(__map_reserved["..."] != null) { - _this20.setReserved("...",value20); - } else { - _this20.h["..."] = value20; - } - this.assignOp("+=",function(v1,v2) { - return v1 + v2; - }); - this.assignOp("-=",function(v11,v21) { - return v11 - v21; - }); - this.assignOp("*=",function(v12,v22) { - return v12 * v22; - }); - this.assignOp("/=",function(v13,v23) { - return v13 / v23; - }); - this.assignOp("%=",function(v14,v24) { - return v14 % v24; - }); - this.assignOp("&=",function(v15,v25) { - return v15 & v25; - }); - this.assignOp("|=",function(v16,v26) { - return v16 | v26; - }); - this.assignOp("^=",function(v17,v27) { - return v17 ^ v27; - }); - this.assignOp("<<=",function(v18,v28) { - return v18 << v28; - }); - this.assignOp(">>=",function(v19,v29) { - return v19 >> v29; - }); - this.assignOp(">>>=",function(v110,v210) { - return v110 >>> v210; - }); - } - ,assign: function(e1,e2) { - var v = this.expr(e2); - switch(e1._hx_index) { - case 1: - var id = e1.v; - var _this = this.locals; - var l = __map_reserved[id] != null ? _this.getReserved(id) : _this.h[id]; - if(l == null) { - var _this1 = this.variables; - if(__map_reserved[id] != null) { - _this1.setReserved(id,v); - } else { - _this1.h[id] = v; - } - } else { - l.r = v; - } - break; - case 5: - var f = e1.f; - var e = e1.e; - v = this.set(this.expr(e),f,v); - break; - case 16: - var index = e1.index; - var e3 = e1.e; - var arr = this.expr(e3); - var index1 = this.expr(index); - if(js_Boot.__implements(arr,haxe_IMap)) { - (js_Boot.__cast(arr , haxe_IMap)).set(index1,v); - } else { - arr[index1] = v; - } - break; - default: - var e4 = hscript_Error.EInvalidOp("="); - throw new js__$Boot_HaxeError(e4); - } - return v; - } - ,assignOp: function(op,fop) { - var me = this; - var _this = this.binops; - var value = function(e1,e2) { - return me.evalAssignOp(op,fop,e1,e2); - }; - if(__map_reserved[op] != null) { - _this.setReserved(op,value); - } else { - _this.h[op] = value; - } - } - ,evalAssignOp: function(op,fop,e1,e2) { - var v; - switch(e1._hx_index) { - case 1: - var id = e1.v; - var _this = this.locals; - var l = __map_reserved[id] != null ? _this.getReserved(id) : _this.h[id]; - v = fop(this.expr(e1),this.expr(e2)); - if(l == null) { - var _this1 = this.variables; - if(__map_reserved[id] != null) { - _this1.setReserved(id,v); - } else { - _this1.h[id] = v; - } - } else { - l.r = v; - } - break; - case 5: - var f = e1.f; - var e = e1.e; - var obj = this.expr(e); - v = fop(this.get(obj,f),this.expr(e2)); - v = this.set(obj,f,v); - break; - case 16: - var index = e1.index; - var e3 = e1.e; - var arr = this.expr(e3); - var index1 = this.expr(index); - if(js_Boot.__implements(arr,haxe_IMap)) { - v = fop((js_Boot.__cast(arr , haxe_IMap)).get(index1),this.expr(e2)); - (js_Boot.__cast(arr , haxe_IMap)).set(index1,v); - } else { - v = fop(arr[index1],this.expr(e2)); - arr[index1] = v; - } - break; - default: - var e4 = hscript_Error.EInvalidOp(op); - throw new js__$Boot_HaxeError(e4); - } - return v; - } - ,increment: function(e,prefix,delta) { - switch(e._hx_index) { - case 1: - var id = e.v; - var _this = this.locals; - var l = __map_reserved[id] != null ? _this.getReserved(id) : _this.h[id]; - var v; - if(l == null) { - var _this1 = this.variables; - v = __map_reserved[id] != null ? _this1.getReserved(id) : _this1.h[id]; - } else { - v = l.r; - } - if(prefix) { - v += delta; - if(l == null) { - var _this2 = this.variables; - var value = v; - if(__map_reserved[id] != null) { - _this2.setReserved(id,value); - } else { - _this2.h[id] = value; - } - } else { - l.r = v; - } - } else if(l == null) { - var _this3 = this.variables; - var value1 = v + delta; - if(__map_reserved[id] != null) { - _this3.setReserved(id,value1); - } else { - _this3.h[id] = value1; - } - } else { - l.r = v + delta; - } - return v; - case 5: - var f = e.f; - var e1 = e.e; - var obj = this.expr(e1); - var v1 = this.get(obj,f); - if(prefix) { - v1 += delta; - this.set(obj,f,v1); - } else { - this.set(obj,f,v1 + delta); - } - return v1; - case 16: - var index = e.index; - var e2 = e.e; - var arr = this.expr(e2); - var index1 = this.expr(index); - if(js_Boot.__implements(arr,haxe_IMap)) { - var v2 = (js_Boot.__cast(arr , haxe_IMap)).get(index1); - if(prefix) { - v2 += delta; - (js_Boot.__cast(arr , haxe_IMap)).set(index1,v2); - } else { - (js_Boot.__cast(arr , haxe_IMap)).set(index1,v2 + delta); - } - return v2; - } else { - var v3 = arr[index1]; - if(prefix) { - v3 += delta; - arr[index1] = v3; - } else { - arr[index1] = v3 + delta; - } - return v3; - } - break; - default: - var e3 = hscript_Error.EInvalidOp(delta > 0 ? "++" : "--"); - throw new js__$Boot_HaxeError(e3); - } - } - ,execute: function(expr) { - this.depth = 0; - this.locals = new haxe_ds_StringMap(); - this.declared = []; - return this.exprReturn(expr); - } - ,exprReturn: function(e) { - try { - return this.expr(e); - } catch( e1 ) { - haxe_CallStack.lastException = e1; - var e2 = ((e1) instanceof js__$Boot_HaxeError) ? e1.val : e1; - if(js_Boot.__instanceof(e2,hscript__$Interp_Stop)) { - switch(e2._hx_index) { - case 0: - throw new js__$Boot_HaxeError("Invalid break"); - case 1: - throw new js__$Boot_HaxeError("Invalid continue"); - case 2: - var v = this.returnValue; - this.returnValue = null; - return v; - } - } else { - throw e1; - } - } - } - ,duplicate: function(h) { - var h2 = new haxe_ds_StringMap(); - var k = h.keys(); - while(k.hasNext()) { - var k1 = k.next(); - var value = __map_reserved[k1] != null ? h.getReserved(k1) : h.h[k1]; - if(__map_reserved[k1] != null) { - h2.setReserved(k1,value); - } else { - h2.h[k1] = value; - } - } - return h2; - } - ,restore: function(old) { - while(this.declared.length > old) { - var d = this.declared.pop(); - var key = d.n; - var value = d.old; - var _this = this.locals; - if(__map_reserved[key] != null) { - _this.setReserved(key,value); - } else { - _this.h[key] = value; - } - } - } - ,error: function(e,rethrow) { - if(rethrow == null) { - rethrow = false; - } - if(rethrow) { - throw js__$Boot_HaxeError.wrap(e); - } else { - throw new js__$Boot_HaxeError(e); - } - } - ,rethrow: function(e) { - throw js__$Boot_HaxeError.wrap(e); - } - ,resolve: function(id) { - var _this = this.locals; - var l = __map_reserved[id] != null ? _this.getReserved(id) : _this.h[id]; - if(l != null) { - return l.r; - } - var _this1 = this.variables; - var v = __map_reserved[id] != null ? _this1.getReserved(id) : _this1.h[id]; - var tmp; - if(v == null) { - var _this2 = this.variables; - tmp = !(__map_reserved[id] != null ? _this2.existsReserved(id) : _this2.h.hasOwnProperty(id)); - } else { - tmp = false; - } - if(tmp) { - var e = hscript_Error.EUnknownVariable(id); - throw new js__$Boot_HaxeError(e); - } - return v; - } - ,expr: function(e) { - var _gthis = this; - switch(e._hx_index) { - case 0: - var c = e.c; - switch(c._hx_index) { - case 0: - var v = c.v; - return v; - case 1: - var f = c.f; - return f; - case 2: - var s = c.s; - return s; - } - break; - case 1: - var id = e.v; - return this.resolve(id); - case 2: - var _g32 = e.t; - var e1 = e.e; - var n = e.n; - var _this = this.locals; - this.declared.push({ n : n, old : __map_reserved[n] != null ? _this.getReserved(n) : _this.h[n]}); - var this1 = this.locals; - var value = { r : e1 == null ? null : this.expr(e1)}; - var _this1 = this1; - if(__map_reserved[n] != null) { - _this1.setReserved(n,value); - } else { - _this1.h[n] = value; - } - return null; - case 3: - var e2 = e.e; - return this.expr(e2); - case 4: - var exprs = e.e; - var old = this.declared.length; - var v1 = null; - var _g = 0; - while(_g < exprs.length) { - var e3 = exprs[_g]; - ++_g; - v1 = this.expr(e3); - } - this.restore(old); - return v1; - case 5: - var f1 = e.f; - var e4 = e.e; - return this.get(this.expr(e4),f1); - case 6: - var e21 = e.e2; - var e11 = e.e1; - var op = e.op; - var _this2 = this.binops; - var fop = __map_reserved[op] != null ? _this2.getReserved(op) : _this2.h[op]; - if(fop == null) { - var e5 = hscript_Error.EInvalidOp(op); - throw new js__$Boot_HaxeError(e5); - } - return fop(e11,e21); - case 7: - var e6 = e.e; - var prefix = e.prefix; - var op1 = e.op; - switch(op1) { - case "!": - return this.expr(e6) != true; - case "++": - return this.increment(e6,prefix,1); - case "-": - return -this.expr(e6); - case "--": - return this.increment(e6,prefix,-1); - case "~": - return ~this.expr(e6); - default: - var e7 = hscript_Error.EInvalidOp(op1); - throw new js__$Boot_HaxeError(e7); - } - break; - case 8: - var params = e.params; - var e8 = e.e; - var args = []; - var _g1 = 0; - while(_g1 < params.length) { - var p = params[_g1]; - ++_g1; - args.push(this.expr(p)); - } - if(e8._hx_index == 5) { - var f2 = e8.f; - var e9 = e8.e; - var obj = this.expr(e9); - if(obj == null) { - var e10 = hscript_Error.EInvalidAccess(f2); - throw new js__$Boot_HaxeError(e10); - } - return this.fcall(obj,f2,args); - } else { - return this.call(null,this.expr(e8),args); - } - break; - case 9: - var e22 = e.e2; - var e12 = e.e1; - var econd = e.cond; - if(this.expr(econd) == true) { - return this.expr(e12); - } else if(e22 == null) { - return null; - } else { - return this.expr(e22); - } - break; - case 10: - var e13 = e.e; - var econd1 = e.cond; - this.whileLoop(econd1,e13); - return null; - case 11: - var e14 = e.e; - var it = e.it; - var v2 = e.v; - this.forLoop(v2,it,e14); - return null; - case 12: - throw new js__$Boot_HaxeError(hscript__$Interp_Stop.SBreak); - case 13: - throw new js__$Boot_HaxeError(hscript__$Interp_Stop.SContinue); - case 14: - var _g44 = e.ret; - var name = e.name; - var fexpr = e.e; - var params1 = e.args; - var capturedLocals = this.duplicate(this.locals); - var me = this; - var hasOpt = false; - var minParams = 0; - var _g2 = 0; - while(_g2 < params1.length) { - var p1 = params1[_g2]; - ++_g2; - if(p1.opt) { - hasOpt = true; - } else { - minParams += 1; - } - } - var f3 = function(args1) { - if(args1.length != params1.length) { - if(args1.length < minParams) { - var str = "Invalid number of parameters. Got " + args1.length + ", required " + minParams; - if(name != null) { - str += " for function '" + name + "'"; - } - throw new js__$Boot_HaxeError(str); - } - var args2 = []; - var extraParams = args1.length - minParams; - var pos = 0; - var _g11 = 0; - while(_g11 < params1.length) { - var p2 = params1[_g11]; - ++_g11; - if(p2.opt) { - if(extraParams > 0) { - args2.push(args1[pos++]); - --extraParams; - } else { - args2.push(null); - } - } else { - args2.push(args1[pos++]); - } - } - args1 = args2; - } - var old1 = me.locals; - var depth = me.depth; - me.depth++; - me.locals = me.duplicate(capturedLocals); - var _g12 = 0; - var _g21 = params1.length; - while(_g12 < _g21) { - var i = _g12++; - var key = params1[i].name; - var _this3 = me.locals; - var value1 = { r : args1[i]}; - if(__map_reserved[key] != null) { - _this3.setReserved(key,value1); - } else { - _this3.h[key] = value1; - } - } - var r = null; - if(_gthis.inTry) { - try { - r = me.exprReturn(fexpr); - } catch( e15 ) { - haxe_CallStack.lastException = e15; - var e16 = ((e15) instanceof js__$Boot_HaxeError) ? e15.val : e15; - me.locals = old1; - me.depth = depth; - throw js__$Boot_HaxeError.wrap(e16); - } - } else { - r = me.exprReturn(fexpr); - } - me.locals = old1; - me.depth = depth; - return r; - }; - var f4 = Reflect.makeVarArgs(f3); - if(name != null) { - if(this.depth == 0) { - var _this4 = this.variables; - if(__map_reserved[name] != null) { - _this4.setReserved(name,f4); - } else { - _this4.h[name] = f4; - } - } else { - var tmp = this.declared; - var _this5 = this.locals; - var tmp1 = __map_reserved[name] != null ? _this5.getReserved(name) : _this5.h[name]; - tmp.push({ n : name, old : tmp1}); - var ref = { r : f4}; - var _this6 = this.locals; - if(__map_reserved[name] != null) { - _this6.setReserved(name,ref); - } else { - _this6.h[name] = ref; - } - if(__map_reserved[name] != null) { - capturedLocals.setReserved(name,ref); - } else { - capturedLocals.h[name] = ref; - } - } - } - return f4; - case 15: - var e17 = e.e; - this.returnValue = e17 == null ? null : this.expr(e17); - throw new js__$Boot_HaxeError(hscript__$Interp_Stop.SReturn); - case 16: - var index = e.index; - var e18 = e.e; - var arr = this.expr(e18); - var index1 = this.expr(index); - if(js_Boot.__implements(arr,haxe_IMap)) { - return (js_Boot.__cast(arr , haxe_IMap)).get(index1); - } else { - return arr[index1]; - } - break; - case 17: - var arr1 = e.e; - var tmp2; - if(arr1.length > 0) { - var _g3 = arr1[0]; - if(_g3._hx_index == 6) { - var _g31 = _g3.e2; - var _g22 = _g3.e1; - tmp2 = _g3.op == "=>"; - } else { - tmp2 = false; - } - } else { - tmp2 = false; - } - if(tmp2) { - var isAllString = true; - var isAllInt = true; - var isAllObject = true; - var isAllEnum = true; - var keys = []; - var values = []; - var _g4 = 0; - while(_g4 < arr1.length) { - var e19 = arr1[_g4]; - ++_g4; - if(e19._hx_index == 6) { - if(e19.op == "=>") { - var eValue = e19.e2; - var eKey = e19.e1; - var key1 = this.expr(eKey); - var value2 = this.expr(eValue); - isAllString = isAllString && typeof(key1) == "string"; - isAllInt = isAllInt && (typeof(key1) == "number" && ((key1 | 0) === key1)); - isAllObject = isAllObject && Reflect.isObject(key1); - isAllEnum = isAllEnum && Reflect.isEnumValue(key1); - keys.push(key1); - values.push(value2); - } else { - throw new js__$Boot_HaxeError("=> expected"); - } - } else { - throw new js__$Boot_HaxeError("=> expected"); - } - } - var map; - if(isAllInt) { - map = new haxe_ds_IntMap(); - } else if(isAllString) { - map = new haxe_ds_StringMap(); - } else if(isAllEnum) { - map = new haxe_ds_EnumValueMap(); - } else if(isAllObject) { - map = new haxe_ds_ObjectMap(); - } else { - throw new js__$Boot_HaxeError("Inconsistent key types"); - } - var _g5 = 0; - var _g6 = keys.length; - while(_g5 < _g6) { - var n1 = _g5++; - (js_Boot.__cast(map , haxe_IMap)).set(keys[n1],values[n1]); - } - return map; - } else { - var a = []; - var _g41 = 0; - while(_g41 < arr1.length) { - var e20 = arr1[_g41]; - ++_g41; - a.push(this.expr(e20)); - } - return a; - } - break; - case 18: - var params2 = e.params; - var cl = e.cl; - var a1 = []; - var _g7 = 0; - while(_g7 < params2.length) { - var e23 = params2[_g7]; - ++_g7; - a1.push(this.expr(e23)); - } - return this.cnew(cl,a1); - case 19: - var e24 = e.e; - throw js__$Boot_HaxeError.wrap(this.expr(e24)); - case 20: - var _g51 = e.t; - var ecatch = e.ecatch; - var n2 = e.v; - var e25 = e.e; - var old2 = this.declared.length; - var oldTry = this.inTry; - try { - this.inTry = true; - var v3 = this.expr(e25); - this.restore(old2); - this.inTry = oldTry; - return v3; - } catch( e26 ) { - haxe_CallStack.lastException = e26; - var e27 = ((e26) instanceof js__$Boot_HaxeError) ? e26.val : e26; - if(js_Boot.__instanceof(e27,hscript__$Interp_Stop)) { - this.inTry = oldTry; - throw new js__$Boot_HaxeError(e27); - } else { - this.restore(old2); - this.inTry = oldTry; - var _this7 = this.locals; - this.declared.push({ n : n2, old : __map_reserved[n2] != null ? _this7.getReserved(n2) : _this7.h[n2]}); - var _this8 = this.locals; - var value3 = { r : e27}; - if(__map_reserved[n2] != null) { - _this8.setReserved(n2,value3); - } else { - _this8.h[n2] = value3; - } - var v4 = this.expr(ecatch); - this.restore(old2); - return v4; - } - } - break; - case 21: - var fl = e.fl; - var o = { }; - var _g8 = 0; - while(_g8 < fl.length) { - var f5 = fl[_g8]; - ++_g8; - this.set(o,f5.name,this.expr(f5.e)); - } - return o; - case 22: - var e28 = e.e2; - var e110 = e.e1; - var econd2 = e.cond; - if(this.expr(econd2) == true) { - return this.expr(e110); - } else { - return this.expr(e28); - } - break; - case 23: - var def = e.defaultExpr; - var cases = e.cases; - var e29 = e.e; - var val = this.expr(e29); - var match = false; - var _g9 = 0; - while(_g9 < cases.length) { - var c1 = cases[_g9]; - ++_g9; - var _g10 = 0; - var _g13 = c1.values; - while(_g10 < _g13.length) { - var v5 = _g13[_g10]; - ++_g10; - if(this.expr(v5) == val) { - match = true; - break; - } - } - if(match) { - val = this.expr(c1.expr); - break; - } - } - if(!match) { - val = def == null ? null : this.expr(def); - } - return val; - case 24: - var e30 = e.e; - var econd3 = e.cond; - this.doWhileLoop(econd3,e30); - return null; - case 25: - var _g52 = e.args; - var _g511 = e.name; - var e31 = e.e; - return this.expr(e31); - case 26: - var _g46 = e.t; - var e32 = e.e; - return this.expr(e32); - } - } - ,doWhileLoop: function(econd,e) { - var old = this.declared.length; - _hx_loop1: while(true) { - try { - this.expr(e); - } catch( err ) { - haxe_CallStack.lastException = err; - var err1 = ((err) instanceof js__$Boot_HaxeError) ? err.val : err; - if(js_Boot.__instanceof(err1,hscript__$Interp_Stop)) { - var err2 = err1; - switch(err2._hx_index) { - case 0: - break _hx_loop1; - case 1: - break; - case 2: - throw new js__$Boot_HaxeError(err2); - } - } else { - throw err; - } - } - if(!(this.expr(econd) == true)) { - break; - } - } - this.restore(old); - } - ,whileLoop: function(econd,e) { - var old = this.declared.length; - _hx_loop1: while(this.expr(econd) == true) try { - this.expr(e); - } catch( err ) { - haxe_CallStack.lastException = err; - var err1 = ((err) instanceof js__$Boot_HaxeError) ? err.val : err; - if(js_Boot.__instanceof(err1,hscript__$Interp_Stop)) { - var err2 = err1; - switch(err2._hx_index) { - case 0: - break _hx_loop1; - case 1: - break; - case 2: - throw new js__$Boot_HaxeError(err2); - } - } else { - throw err; - } - } - this.restore(old); - } - ,makeIterator: function(v) { - try { - v = $getIterator(v); - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - } - if(v.hasNext == null || v.next == null) { - var e2 = hscript_Error.EInvalidIterator(v); - throw new js__$Boot_HaxeError(e2); - } - return v; - } - ,forLoop: function(n,it,e) { - var old = this.declared.length; - var _this = this.locals; - this.declared.push({ n : n, old : __map_reserved[n] != null ? _this.getReserved(n) : _this.h[n]}); - var it1 = this.makeIterator(this.expr(it)); - _hx_loop1: while(it1.hasNext()) { - var this1 = this.locals; - var value = { r : it1.next()}; - var _this1 = this1; - if(__map_reserved[n] != null) { - _this1.setReserved(n,value); - } else { - _this1.h[n] = value; - } - try { - this.expr(e); - } catch( err ) { - haxe_CallStack.lastException = err; - var err1 = ((err) instanceof js__$Boot_HaxeError) ? err.val : err; - if(js_Boot.__instanceof(err1,hscript__$Interp_Stop)) { - var err2 = err1; - switch(err2._hx_index) { - case 0: - break _hx_loop1; - case 1: - break; - case 2: - throw new js__$Boot_HaxeError(err2); - } - } else { - throw err; - } - } - } - this.restore(old); - } - ,isMap: function(o) { - return js_Boot.__implements(o,haxe_IMap); - } - ,getMapValue: function(map,key) { - return (js_Boot.__cast(map , haxe_IMap)).get(key); - } - ,setMapValue: function(map,key,value) { - (js_Boot.__cast(map , haxe_IMap)).set(key,value); - } - ,get: function(o,f) { - if(o == null) { - var e = hscript_Error.EInvalidAccess(f); - throw new js__$Boot_HaxeError(e); - } - return Reflect.getProperty(o,f); - } - ,set: function(o,f,v) { - if(o == null) { - var e = hscript_Error.EInvalidAccess(f); - throw new js__$Boot_HaxeError(e); - } - Reflect.setProperty(o,f,v); - return v; - } - ,fcall: function(o,f,args) { - return this.call(o,this.get(o,f),args); - } - ,call: function(o,f,args) { - return f.apply(o,args); - } - ,cnew: function(cl,args) { - var c = $hxClasses[cl]; - if(c == null) { - c = this.resolve(cl); - } - return Type.createInstance(c,args); - } - ,__class__: hscript_Interp -}; -var flixel_system_debug_console__$ConsoleUtil_Interp = function() { - hscript_Interp.call(this); -}; -$hxClasses["flixel.system.debug.console._ConsoleUtil.Interp"] = flixel_system_debug_console__$ConsoleUtil_Interp; -flixel_system_debug_console__$ConsoleUtil_Interp.__name__ = "flixel.system.debug.console._ConsoleUtil.Interp"; -flixel_system_debug_console__$ConsoleUtil_Interp.__super__ = hscript_Interp; -flixel_system_debug_console__$ConsoleUtil_Interp.prototype = $extend(hscript_Interp.prototype,{ - getGlobals: function() { - return this.toArray(this.locals.keys()).concat(this.toArray(this.variables.keys())); - } - ,toArray: function(iterator) { - var array = []; - var element = iterator; - while(element.hasNext()) { - var element1 = element.next(); - array.push(element1); - } - return array; - } - ,get: function(o,f) { - if(o == null) { - var e = hscript_Error.EInvalidAccess(f); - throw new js__$Boot_HaxeError(e); - } - return Reflect.getProperty(o,f); - } - ,set: function(o,f,v) { - if(o == null) { - var e = hscript_Error.EInvalidAccess(f); - throw new js__$Boot_HaxeError(e); - } - Reflect.setProperty(o,f,v); - return v; - } - ,__class__: flixel_system_debug_console__$ConsoleUtil_Interp -}); -var flixel_system_debug_interaction_Interaction = function(container) { - this._flixelPointer = new flixel_input_FlxPointer(); - this._debuggerInteraction = false; - this._keysUp = new haxe_ds_IntMap(); - this._keysDown = new haxe_ds_IntMap(); - this._turn = 2; - this._tools = []; - this.shouldDrawItemsSelection = true; - this.pointerPressed = false; - this.pointerJustReleased = false; - this.pointerJustPressed = false; - this.flixelPointer = new flixel_math_FlxPoint(); - this.selectedItems = new flixel_group_FlxTypedGroup(); - flixel_system_debug_Window.call(this,"Tools",new flixel_system_debug_GraphicInteractive(0,0),40,25,false); - this.reposition(2,100); - this._container = container; - this._customCursor = new openfl_display_Sprite(); - this._customCursor.mouseEnabled = false; - this._container.addChild(this._customCursor); - this.addTool(new flixel_system_debug_interaction_tools_Pointer()); - this.addTool(new flixel_system_debug_interaction_tools_Mover()); - this.addTool(new flixel_system_debug_interaction_tools_Eraser()); - this.addTool(new flixel_system_debug_interaction_tools_Transform()); - flixel_FlxG.signals.postDraw.add($bind(this,this.postDraw)); - flixel_FlxG.debugger.visibilityChanged.add($bind(this,this.handleDebuggerVisibilityChanged)); - openfl_Lib.get_current().stage.addEventListener("mouseMove",$bind(this,this.updateMouse)); - openfl_Lib.get_current().stage.addEventListener("mouseDown",$bind(this,this.handleMouseClick)); - openfl_Lib.get_current().stage.addEventListener("mouseUp",$bind(this,this.handleMouseClick)); - openfl_Lib.get_current().stage.addEventListener("keyDown",$bind(this,this.handleKeyEvent)); - openfl_Lib.get_current().stage.addEventListener("keyUp",$bind(this,this.handleKeyEvent)); - this._container.addEventListener("mouseOver",$bind(this,this.handleMouseInDebugger)); - this._container.addEventListener("mouseOut",$bind(this,this.handleMouseInDebugger)); -}; -$hxClasses["flixel.system.debug.interaction.Interaction"] = flixel_system_debug_interaction_Interaction; -flixel_system_debug_interaction_Interaction.__name__ = "flixel.system.debug.interaction.Interaction"; -flixel_system_debug_interaction_Interaction.__super__ = flixel_system_debug_Window; -flixel_system_debug_interaction_Interaction.prototype = $extend(flixel_system_debug_Window.prototype,{ - activeTool: null - ,selectedItems: null - ,flixelPointer: null - ,pointerJustPressed: null - ,pointerJustReleased: null - ,pointerPressed: null - ,shouldDrawItemsSelection: null - ,_container: null - ,_customCursor: null - ,_tools: null - ,_turn: null - ,_keysDown: null - ,_keysUp: null - ,_wasMouseVisible: null - ,_wasUsingSystemCursor: null - ,_debuggerInteraction: null - ,_flixelPointer: null - ,handleDebuggerVisibilityChanged: function() { - if(flixel_FlxG.debugger.visible) { - this.saveSystemCursorInfo(); - } else { - this.restoreSystemCursor(); - } - } - ,updateMouse: function(event) { - if(event.stageX == null || event.stageY == null) { - return; - } - var offsetX = 0.0; - var offsetY = 0.0; - if(this.activeTool != null) { - var cursorIcon = this.activeTool.cursor; - if(cursorIcon != null) { - offsetX = cursorIcon.width / flixel_FlxG.scaleMode.scale.x / 2; - offsetY = cursorIcon.height / flixel_FlxG.scaleMode.scale.y / 2; - } - } - this._customCursor.set_x(event.stageX + offsetX); - this._customCursor.set_y(event.stageY + offsetY); - var _this = this._flixelPointer; - _this._globalScreenX = event.stageX / flixel_FlxG.scaleMode.scale.x | 0; - _this._globalScreenY = event.stageY / flixel_FlxG.scaleMode.scale.y | 0; - _this.updatePositions(); - this.flixelPointer.set_x(this._flixelPointer.x + offsetX); - this.flixelPointer.set_y(this._flixelPointer.y + offsetY); - } - ,handleMouseClick: function(event) { - if(event.type == "mouseDown" && this.belongsToDebugger(event.target)) { - return; - } - this.pointerJustPressed = event.type == "mouseDown"; - this.pointerJustReleased = event.type == "mouseUp"; - if(this.pointerJustPressed) { - this.pointerPressed = true; - } else if(this.pointerJustReleased) { - this.pointerPressed = false; - } - } - ,belongsToDebugger: function(object) { - if(object == null) { - return false; - } else if(((object) instanceof flixel_system_debug_FlxDebugger)) { - return true; - } - return this.belongsToDebugger(object.parent); - } - ,handleMouseInDebugger: function(event) { - if(!this.isActive()) { - return; - } - if(event.type == "mouseOver") { - this._debuggerInteraction = true; - } else if(event.type == "mouseOut") { - this._debuggerInteraction = false; - } - event.stopPropagation(); - } - ,handleKeyEvent: function(event) { - if(event.type == "keyDown") { - this._keysDown.h[event.keyCode] = true; - } else if(event.type == "keyUp") { - this._keysDown.h[event.keyCode] = false; - this._keysUp.h[event.keyCode] = this._turn; - } - } - ,countToolsWithUIButton: function() { - var count = 0; - var _g = 0; - var _g1 = this._tools; - while(_g < _g1.length) { - var tool = _g1[_g]; - ++_g; - if(tool.button != null) { - ++count; - } - } - return count; - } - ,addTool: function(tool) { - tool.init(this); - this._tools.push(tool); - var button = tool.button; - if(button == null) { - return; - } - var buttonsPerLine = 2; - var buttons = this.countToolsWithUIButton(); - var lines = Math.ceil(buttons / buttonsPerLine) | 0; - var slot = buttons / lines | 0; - button.set_x(-15 + slot * 25); - button.set_y(20 * lines); - this.addChild(button); - this.resize(25 * Math.min(buttons,buttonsPerLine) + 10,25 * lines + 10); - } - ,destroy: function() { - flixel_FlxG.signals.postDraw.remove($bind(this,this.postDraw)); - flixel_FlxG.debugger.visibilityChanged.remove($bind(this,this.handleDebuggerVisibilityChanged)); - openfl_Lib.get_current().stage.removeEventListener("mouseMove",$bind(this,this.updateMouse)); - openfl_Lib.get_current().stage.removeEventListener("mouseDown",$bind(this,this.handleMouseClick)); - openfl_Lib.get_current().stage.removeEventListener("mouseUp",$bind(this,this.handleMouseClick)); - openfl_Lib.get_current().stage.removeEventListener("keyDown",$bind(this,this.handleKeyEvent)); - openfl_Lib.get_current().stage.removeEventListener("keyUp",$bind(this,this.handleKeyEvent)); - if(this._container != null) { - this._container.removeEventListener("mouseOver",$bind(this,this.handleMouseInDebugger)); - this._container.removeEventListener("mouseOut",$bind(this,this.handleMouseInDebugger)); - } - if(this._customCursor != null) { - this._customCursor.parent.removeChild(this._customCursor); - this._customCursor = null; - } - this._tools = flixel_util_FlxDestroyUtil.destroyArray(this._tools); - this.selectedItems = flixel_util_FlxDestroyUtil.destroy(this.selectedItems); - this.flixelPointer = flixel_util_FlxDestroyUtil.destroy(this.flixelPointer); - this._keysDown = null; - this._keysUp = null; - } - ,isActive: function() { - if(flixel_FlxG.debugger.visible) { - return this.get_visible(); - } else { - return false; - } - } - ,update: function() { - if(!this.isActive()) { - return; - } - this.updateCustomCursors(); - var _g = 0; - var _g1 = this._tools; - while(_g < _g1.length) { - var tool = _g1[_g]; - ++_g; - tool.update(); - } - this.pointerJustPressed = false; - this.pointerJustReleased = false; - this._turn++; - } - ,postDraw: function() { - if(!this.isActive()) { - return; - } - var _g = 0; - var _g1 = this._tools; - while(_g < _g1.length) { - var tool = _g1[_g]; - ++_g; - tool.draw(); - } - if(this.shouldDrawItemsSelection) { - this.drawItemsSelection(); - } - } - ,getDebugGraphics: function() { - if(flixel_FlxG.renderBlit) { - flixel_util_FlxSpriteUtil.flashGfx.clear(); - return flixel_util_FlxSpriteUtil.flashGfx; - } - return null; - } - ,drawItemsSelection: function() { - var gfx = this.getDebugGraphics(); - if(gfx == null) { - return; - } - var member = new flixel_group_FlxTypedGroupIterator(this.selectedItems.members,null); - while(member.hasNext()) { - var member1 = member.next(); - if(member1 != null && member1.scrollFactor != null && member1.isOnScreen()) { - gfx.lineStyle(0.9,16711680); - gfx.drawRect(member1.x - flixel_FlxG.camera.scroll.x,member1.y - flixel_FlxG.camera.scroll.y,member1.get_width(),member1.get_height()); - } - } - if(flixel_FlxG.renderBlit) { - flixel_FlxG.camera.buffer.draw(flixel_util_FlxSpriteUtil.flashGfxSprite); - } - } - ,getTool: function(className) { - var _g = 0; - var _g1 = this._tools; - while(_g < _g1.length) { - var tool = _g1[_g]; - ++_g; - if(js_Boot.__instanceof(tool,className)) { - return tool; - } - } - return null; - } - ,toggleVisible: function() { - flixel_system_debug_Window.prototype.toggleVisible.call(this); - if(!this.get_visible()) { - this.setActiveTool(null); - this.restoreSystemCursor(); - } - } - ,registerCustomCursor: function(name,icon) { - if(icon == null) { - return; - } - var sprite = new openfl_display_Sprite(); - sprite.set_visible(false); - sprite.set_name(name); - sprite.addChild(new openfl_display_Bitmap(icon)); - this._customCursor.addChild(sprite); - } - ,updateCustomCursors: function() { - if(this.activeTool != null && !this._debuggerInteraction) { - if(this.activeTool.cursor != null) { - var cursorInUse = this.activeTool.cursorInUse == "" ? this.activeTool.getName() : this.activeTool.cursorInUse; - var _g = 0; - var _g1 = this._customCursor.get_numChildren(); - while(_g < _g1) { - var i = _g++; - var sprite = this._customCursor.getChildAt(i); - sprite.set_visible(sprite.get_name() == cursorInUse); - } - if(flixel_FlxG.mouse.visible) { - flixel_FlxG.mouse.set_visible(false); - } - } else { - flixel_FlxG.mouse.set_useSystemCursor(true); - } - } else { - flixel_FlxG.mouse.set_useSystemCursor(true); - } - } - ,saveSystemCursorInfo: function() { - this._wasMouseVisible = flixel_FlxG.mouse.visible; - this._wasUsingSystemCursor = flixel_FlxG.mouse.useSystemCursor; - } - ,restoreSystemCursor: function() { - flixel_FlxG.mouse.set_useSystemCursor(this._wasUsingSystemCursor); - flixel_FlxG.mouse.set_visible(this._wasMouseVisible); - this._customCursor.set_visible(false); - } - ,setActiveTool: function(value) { - if(this.activeTool != null) { - this.activeTool.deactivate(); - this.activeTool.button.set_toggled(true); - } - if(this.activeTool == value) { - value = null; - } - this.activeTool = value; - if(this.activeTool != null) { - this.setToolsCursorVisibility(true); - this.activeTool.button.set_toggled(false); - this.activeTool.activate(); - this.updateCustomCursors(); - } else { - this.setSystemCursorVisibility(true); - } - flixel_FlxG.mouse.enabled = !this.isInUse(); - } - ,setSystemCursorVisibility: function(status) { - flixel_FlxG.mouse.set_useSystemCursor(status); - this._customCursor.set_visible(!status); - } - ,setToolsCursorVisibility: function(status) { - flixel_FlxG.mouse.set_useSystemCursor(false); - this._customCursor.set_visible(status); - if(status) { - return; - } - var _g = 0; - var _g1 = this._customCursor.get_numChildren(); - while(_g < _g1) { - var i = _g++; - this._customCursor.getChildAt(i).set_visible(false); - } - } - ,clearSelection: function() { - this.selectedItems.clear(); - } - ,keyPressed: function(key) { - return this._keysDown.h[key]; - } - ,keyJustPressed: function(key) { - var value = this._keysUp.h[key] == null ? 0 : this._keysUp.h[key]; - return this._turn - value == 1; - } - ,isInUse: function() { - if(flixel_FlxG.debugger.visible && this.get_visible()) { - return this.activeTool != null; - } else { - return false; - } - } - ,findItemsWithinState: function(items,state,area) { - this.findItemsWithinArea(items,state.members,area); - if(state.subState != null) { - this.findItemsWithinState(items,state.subState,area); - } - } - ,findItemsWithinArea: function(items,members,area) { - var i = members.length; - while(i-- > 0) { - var member = members[i]; - if(member == null || !member.visible || !member.exists) { - continue; - } - var group = flixel_group_FlxTypedGroup.resolveGroup(member); - if(group != null) { - this.findItemsWithinArea(items,group.members,area); - } else { - var tmp; - if(((member) instanceof flixel_FlxSprite)) { - var Rect = (js_Boot.__cast(member , flixel_FlxSprite)).getHitbox(); - var result = Rect.x + Rect.width > area.x && Rect.x < area.x + area.width && Rect.y + Rect.height > area.y && Rect.y < area.y + area.height; - if(Rect._weak) { - if(!Rect._inPool) { - Rect._inPool = true; - Rect._weak = false; - flixel_math_FlxRect._pool.putUnsafe(Rect); - } - } - tmp = result; - } else { - tmp = false; - } - if(tmp) { - items.push(member); - } - } - } - } - ,__class__: flixel_system_debug_interaction_Interaction -}); -var flixel_system_debug_interaction_tools__$Eraser_GraphicEraserTool = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_interaction_tools__$Eraser_GraphicEraserTool.preload != null) { - this.__fromImage(flixel_system_debug_interaction_tools__$Eraser_GraphicEraserTool.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_interaction_tools__$Eraser_GraphicEraserTool.resourceName),flixel_system_debug_interaction_tools__$Eraser_GraphicEraserTool.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_interaction_tools__$Eraser_GraphicEraserTool.preload == null) { - flixel_system_debug_interaction_tools__$Eraser_GraphicEraserTool.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.interaction.tools._Eraser.GraphicEraserTool"] = flixel_system_debug_interaction_tools__$Eraser_GraphicEraserTool; -flixel_system_debug_interaction_tools__$Eraser_GraphicEraserTool.__name__ = "flixel.system.debug.interaction.tools._Eraser.GraphicEraserTool"; -flixel_system_debug_interaction_tools__$Eraser_GraphicEraserTool.preload = null; -flixel_system_debug_interaction_tools__$Eraser_GraphicEraserTool.__super__ = openfl_display_BitmapData; -flixel_system_debug_interaction_tools__$Eraser_GraphicEraserTool.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_interaction_tools__$Eraser_GraphicEraserTool -}); -var flixel_system_debug_interaction_tools_Tool = function() { - this._name = "(Unknown tool)"; - this.cursorInUse = ""; - openfl_display_Sprite.call(this); -}; -$hxClasses["flixel.system.debug.interaction.tools.Tool"] = flixel_system_debug_interaction_tools_Tool; -flixel_system_debug_interaction_tools_Tool.__name__ = "flixel.system.debug.interaction.tools.Tool"; -flixel_system_debug_interaction_tools_Tool.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_system_debug_interaction_tools_Tool.__super__ = openfl_display_Sprite; -flixel_system_debug_interaction_tools_Tool.prototype = $extend(openfl_display_Sprite.prototype,{ - button: null - ,cursor: null - ,cursorInUse: null - ,_name: null - ,_shortcut: null - ,_brain: null - ,init: function(brain) { - this._brain = brain; - return this; - } - ,update: function() { - } - ,draw: function() { - } - ,activate: function() { - } - ,deactivate: function() { - } - ,destroy: function() { - } - ,isActive: function() { - if(this._brain.activeTool == this) { - return this._brain.get_visible(); - } else { - return false; - } - } - ,setButton: function(Icon) { - this.button = new flixel_system_ui_FlxSystemButton(Type.createInstance(Icon,[0,0]),$bind(this,this.onButtonClicked),true); - this.button.set_toggled(true); - var tooltip = this._name; - if(this._shortcut != null) { - tooltip += " (" + this._shortcut + ")"; - } - flixel_system_debug_Tooltip.add(this.button,tooltip); - } - ,setCursor: function(Icon) { - this.cursor = Icon; - this._brain.registerCustomCursor(this._name,this.cursor); - } - ,setCursorInUse: function(customCursorName) { - this.cursorInUse = customCursorName; - } - ,useDefaultCursor: function() { - if(this.cursorInUse != "") { - this.cursorInUse = ""; - } - } - ,onButtonClicked: function() { - this._brain.setActiveTool(this); - } - ,getName: function() { - return this._name; - } - ,__class__: flixel_system_debug_interaction_tools_Tool -}); -var flixel_system_debug_interaction_tools_Eraser = function() { - flixel_system_debug_interaction_tools_Tool.call(this); -}; -$hxClasses["flixel.system.debug.interaction.tools.Eraser"] = flixel_system_debug_interaction_tools_Eraser; -flixel_system_debug_interaction_tools_Eraser.__name__ = "flixel.system.debug.interaction.tools.Eraser"; -flixel_system_debug_interaction_tools_Eraser.__super__ = flixel_system_debug_interaction_tools_Tool; -flixel_system_debug_interaction_tools_Eraser.prototype = $extend(flixel_system_debug_interaction_tools_Tool.prototype,{ - init: function(Brain) { - flixel_system_debug_interaction_tools_Tool.prototype.init.call(this,Brain); - this._name = "Eraser"; - return this; - } - ,update: function() { - if(this._brain.keyJustPressed(46)) { - this.doDeletion(this._brain.keyPressed(16)); - } - } - ,activate: function() { - this.doDeletion(this._brain.keyPressed(16)); - this._brain.setActiveTool(null); - } - ,doDeletion: function(remove) { - var selectedItems = this._brain.selectedItems; - if(selectedItems != null) { - this.findAndDelete(selectedItems,remove); - selectedItems.clear(); - } - } - ,findAndDelete: function(items,remove) { - if(remove == null) { - remove = false; - } - var member = new flixel_group_FlxTypedGroupIterator(items.members,null); - while(member.hasNext()) { - var member1 = member.next(); - if(member1 == null) { - continue; - } - if(!((member1) instanceof flixel_group_FlxTypedGroup)) { - member1.kill(); - if(remove) { - this.removeFromMemory(member1,flixel_FlxG.game._state); - } - } - } - } - ,removeFromMemory: function(item,parentGroup) { - var _g = 0; - var _g1 = parentGroup.members; - while(_g < _g1.length) { - var member = _g1[_g]; - ++_g; - if(member == null) { - continue; - } - if(((member) instanceof flixel_group_FlxTypedGroup)) { - this.removeFromMemory(item,member); - } else if(member == item) { - parentGroup.remove(member); - } - } - } - ,__class__: flixel_system_debug_interaction_tools_Eraser -}); -var flixel_system_debug_interaction_tools__$Mover_GraphicMoverTool = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_interaction_tools__$Mover_GraphicMoverTool.preload != null) { - this.__fromImage(flixel_system_debug_interaction_tools__$Mover_GraphicMoverTool.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_interaction_tools__$Mover_GraphicMoverTool.resourceName),flixel_system_debug_interaction_tools__$Mover_GraphicMoverTool.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_interaction_tools__$Mover_GraphicMoverTool.preload == null) { - flixel_system_debug_interaction_tools__$Mover_GraphicMoverTool.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.interaction.tools._Mover.GraphicMoverTool"] = flixel_system_debug_interaction_tools__$Mover_GraphicMoverTool; -flixel_system_debug_interaction_tools__$Mover_GraphicMoverTool.__name__ = "flixel.system.debug.interaction.tools._Mover.GraphicMoverTool"; -flixel_system_debug_interaction_tools__$Mover_GraphicMoverTool.preload = null; -flixel_system_debug_interaction_tools__$Mover_GraphicMoverTool.__super__ = openfl_display_BitmapData; -flixel_system_debug_interaction_tools__$Mover_GraphicMoverTool.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_interaction_tools__$Mover_GraphicMoverTool -}); -var flixel_system_debug_interaction_tools_Mover = function() { - this._dragging = false; - flixel_system_debug_interaction_tools_Tool.call(this); -}; -$hxClasses["flixel.system.debug.interaction.tools.Mover"] = flixel_system_debug_interaction_tools_Mover; -flixel_system_debug_interaction_tools_Mover.__name__ = "flixel.system.debug.interaction.tools.Mover"; -flixel_system_debug_interaction_tools_Mover.__super__ = flixel_system_debug_interaction_tools_Tool; -flixel_system_debug_interaction_tools_Mover.prototype = $extend(flixel_system_debug_interaction_tools_Tool.prototype,{ - _dragging: null - ,_lastCursorPosition: null - ,init: function(brain) { - flixel_system_debug_interaction_tools_Tool.prototype.init.call(this,brain); - this._lastCursorPosition = new flixel_math_FlxPoint(brain.flixelPointer.x,brain.flixelPointer.x); - this._name = "Mover"; - this._shortcut = "Shift"; - this.setButton(flixel_system_debug_interaction_tools__$Mover_GraphicMoverTool); - this.setCursor(new flixel_system_debug_interaction_tools__$Mover_GraphicMoverTool(0,0)); - return this; - } - ,update: function() { - if(!this.isActive() && !this._brain.keyPressed(16)) { - return; - } - if(this._brain.pointerPressed && !this._dragging) { - this.startDragging(); - } else if(this._brain.pointerPressed && this._dragging) { - this.doDragging(); - } else if(this._brain.pointerJustReleased) { - this.stopDragging(); - } - this._lastCursorPosition.set_x(this._brain.flixelPointer.x); - this._lastCursorPosition.set_y(this._brain.flixelPointer.y); - } - ,stopDragging: function() { - this._dragging = false; - } - ,startDragging: function() { - if(this._dragging) { - return; - } - this._dragging = true; - if(!this.isActive() && ((this._brain.activeTool) instanceof flixel_system_debug_interaction_tools_Pointer)) { - this._brain.activeTool.cancelSelection(); - } - } - ,doDragging: function() { - var dx = this._brain.flixelPointer.x - this._lastCursorPosition.x; - var dy = this._brain.flixelPointer.y - this._lastCursorPosition.y; - var _g = 0; - var _g1 = this._brain.selectedItems.members; - while(_g < _g1.length) { - var member = _g1[_g]; - ++_g; - if(!((member) instanceof flixel_FlxObject)) { - continue; - } - var object = member; - if(object != null) { - var _g2 = object; - _g2.set_x(_g2.x + dx); - var _g3 = object; - _g3.set_y(_g3.y + dy); - } - } - } - ,__class__: flixel_system_debug_interaction_tools_Mover -}); -var flixel_system_debug_interaction_tools_GraphicCursorCross = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_interaction_tools_GraphicCursorCross.preload != null) { - this.__fromImage(flixel_system_debug_interaction_tools_GraphicCursorCross.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_interaction_tools_GraphicCursorCross.resourceName),flixel_system_debug_interaction_tools_GraphicCursorCross.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_interaction_tools_GraphicCursorCross.preload == null) { - flixel_system_debug_interaction_tools_GraphicCursorCross.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.interaction.tools.GraphicCursorCross"] = flixel_system_debug_interaction_tools_GraphicCursorCross; -flixel_system_debug_interaction_tools_GraphicCursorCross.__name__ = "flixel.system.debug.interaction.tools.GraphicCursorCross"; -flixel_system_debug_interaction_tools_GraphicCursorCross.preload = null; -flixel_system_debug_interaction_tools_GraphicCursorCross.__super__ = openfl_display_BitmapData; -flixel_system_debug_interaction_tools_GraphicCursorCross.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_interaction_tools_GraphicCursorCross -}); -var flixel_system_debug_interaction_tools_Pointer = function() { - this._itemsInSelectionArea = []; - this._selectionArea = new flixel_math_FlxRect(); - this._selectionCancelled = false; - this._selectionHappening = false; - this._selectionEndPoint = new flixel_math_FlxPoint(); - this._selectionStartPoint = new flixel_math_FlxPoint(); - flixel_system_debug_interaction_tools_Tool.call(this); -}; -$hxClasses["flixel.system.debug.interaction.tools.Pointer"] = flixel_system_debug_interaction_tools_Pointer; -flixel_system_debug_interaction_tools_Pointer.__name__ = "flixel.system.debug.interaction.tools.Pointer"; -flixel_system_debug_interaction_tools_Pointer.__super__ = flixel_system_debug_interaction_tools_Tool; -flixel_system_debug_interaction_tools_Pointer.prototype = $extend(flixel_system_debug_interaction_tools_Tool.prototype,{ - _selectionStartPoint: null - ,_selectionEndPoint: null - ,_selectionHappening: null - ,_selectionCancelled: null - ,_selectionArea: null - ,_itemsInSelectionArea: null - ,init: function(brain) { - flixel_system_debug_interaction_tools_Tool.prototype.init.call(this,brain); - this._name = "Pointer"; - this.setButton(flixel_system_debug_interaction_tools_GraphicCursorCross); - this.setCursor(new flixel_system_debug_interaction_tools_GraphicCursorCross(0,0)); - return this; - } - ,update: function() { - if(!this.isActive()) { - return; - } - if(this._brain.pointerJustPressed && !this._selectionHappening) { - this.startSelection(); - } - if(this._selectionHappening) { - this._selectionEndPoint.set(this._brain.flixelPointer.x,this._brain.flixelPointer.y); - this.calculateSelectionArea(); - } - if(!this._brain.pointerJustReleased) { - return; - } - if(this._selectionHappening) { - this.stopSelection(); - } - if(this._itemsInSelectionArea.length > 0) { - this.handleItemAddition(this._itemsInSelectionArea); - } else if(!this._brain.keyPressed(17) && !this._selectionCancelled) { - this._brain.clearSelection(); - } - } - ,calculateSelectionArea: function() { - this._selectionArea.x = this._selectionStartPoint.x; - this._selectionArea.y = this._selectionStartPoint.y; - this._selectionArea.width = this._selectionEndPoint.x - this._selectionArea.x; - this._selectionArea.height = this._selectionEndPoint.y - this._selectionArea.y; - if(this._selectionArea.width < 0) { - this._selectionArea.width *= -1; - this._selectionArea.x -= this._selectionArea.width; - } - if(this._selectionArea.height < 0) { - this._selectionArea.height *= -1; - this._selectionArea.y -= this._selectionArea.height; - } - } - ,startSelection: function() { - this._selectionHappening = true; - this._selectionCancelled = false; - this._selectionStartPoint.set(this._brain.flixelPointer.x,this._brain.flixelPointer.y); - flixel_util_FlxArrayUtil.clearArray(this._itemsInSelectionArea); - this.updateConsoleSelection(); - } - ,cancelSelection: function() { - if(!this._selectionHappening) { - return; - } - this._selectionCancelled = true; - this.stopSelection(false); - } - ,stopSelection: function(findItems) { - if(findItems == null) { - findItems = true; - } - if(!this._selectionHappening) { - return; - } - this._selectionEndPoint.set(this._brain.flixelPointer.x,this._brain.flixelPointer.y); - this.calculateSelectionArea(); - if(findItems) { - this._brain.findItemsWithinState(this._itemsInSelectionArea,flixel_FlxG.game._state,this._selectionArea); - this.updateConsoleSelection(); - } - this._selectionHappening = false; - var _this = this._selectionArea; - var X = 0; - var Y = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - } - ,updateConsoleSelection: function() { - } - ,handleItemAddition: function(itemsInSelectionArea) { - var adding = this._brain.keyPressed(17); - var selectedItems = this._brain.selectedItems; - if(itemsInSelectionArea.length == 0) { - return; - } - if(!adding) { - this._brain.clearSelection(); - } - var _g = 0; - while(_g < itemsInSelectionArea.length) { - var item = itemsInSelectionArea[_g]; - ++_g; - if(selectedItems.members.indexOf(item) != -1 && adding) { - selectedItems.remove(item); - } else { - selectedItems.add(item); - } - } - } - ,draw: function() { - var gfx = this._brain.getDebugGraphics(); - if(gfx == null) { - return; - } - if(this._selectionHappening) { - gfx.lineStyle(0.9,12255232); - gfx.drawRect(this._selectionArea.x - flixel_FlxG.camera.scroll.x,this._selectionArea.y - flixel_FlxG.camera.scroll.y,this._selectionArea.width,this._selectionArea.height); - } - if(flixel_FlxG.renderBlit) { - flixel_FlxG.camera.buffer.draw(flixel_util_FlxSpriteUtil.flashGfxSprite); - } - } - ,__class__: flixel_system_debug_interaction_tools_Pointer -}); -var flixel_system_debug_interaction_tools__$Transform_GraphicTransformTool = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_interaction_tools__$Transform_GraphicTransformTool.preload != null) { - this.__fromImage(flixel_system_debug_interaction_tools__$Transform_GraphicTransformTool.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_interaction_tools__$Transform_GraphicTransformTool.resourceName),flixel_system_debug_interaction_tools__$Transform_GraphicTransformTool.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_interaction_tools__$Transform_GraphicTransformTool.preload == null) { - flixel_system_debug_interaction_tools__$Transform_GraphicTransformTool.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.interaction.tools._Transform.GraphicTransformTool"] = flixel_system_debug_interaction_tools__$Transform_GraphicTransformTool; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformTool.__name__ = "flixel.system.debug.interaction.tools._Transform.GraphicTransformTool"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformTool.preload = null; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformTool.__super__ = openfl_display_BitmapData; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformTool.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_interaction_tools__$Transform_GraphicTransformTool -}); -var flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorDefault = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorDefault.preload != null) { - this.__fromImage(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorDefault.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorDefault.resourceName),flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorDefault.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorDefault.preload == null) { - flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorDefault.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.interaction.tools._Transform.GraphicTransformCursorDefault"] = flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorDefault; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorDefault.__name__ = "flixel.system.debug.interaction.tools._Transform.GraphicTransformCursorDefault"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorDefault.preload = null; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorDefault.__super__ = openfl_display_BitmapData; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorDefault.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorDefault -}); -var flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleY = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleY.preload != null) { - this.__fromImage(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleY.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleY.resourceName),flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleY.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleY.preload == null) { - flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleY.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.interaction.tools._Transform.GraphicTransformCursorScaleY"] = flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleY; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleY.__name__ = "flixel.system.debug.interaction.tools._Transform.GraphicTransformCursorScaleY"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleY.preload = null; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleY.__super__ = openfl_display_BitmapData; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleY.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleY -}); -var flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleX = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleX.preload != null) { - this.__fromImage(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleX.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleX.resourceName),flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleX.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleX.preload == null) { - flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleX.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.interaction.tools._Transform.GraphicTransformCursorScaleX"] = flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleX; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleX.__name__ = "flixel.system.debug.interaction.tools._Transform.GraphicTransformCursorScaleX"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleX.preload = null; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleX.__super__ = openfl_display_BitmapData; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleX.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleX -}); -var flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleXY = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleXY.preload != null) { - this.__fromImage(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleXY.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleXY.resourceName),flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleXY.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleXY.preload == null) { - flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleXY.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.interaction.tools._Transform.GraphicTransformCursorScaleXY"] = flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleXY; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleXY.__name__ = "flixel.system.debug.interaction.tools._Transform.GraphicTransformCursorScaleXY"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleXY.preload = null; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleXY.__super__ = openfl_display_BitmapData; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleXY.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleXY -}); -var flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorRotate = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorRotate.preload != null) { - this.__fromImage(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorRotate.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorRotate.resourceName),flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorRotate.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorRotate.preload == null) { - flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorRotate.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.interaction.tools._Transform.GraphicTransformCursorRotate"] = flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorRotate; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorRotate.__name__ = "flixel.system.debug.interaction.tools._Transform.GraphicTransformCursorRotate"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorRotate.preload = null; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorRotate.__super__ = openfl_display_BitmapData; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorRotate.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorRotate -}); -var flixel_system_debug_interaction_tools_Transform = function() { - this._mouseCursor = new flixel_math_FlxPoint(); - this._targetArea = new flixel_math_FlxRect(); - this._markers = []; - this._actionScaleDirection = new flixel_math_FlxPoint(); - this._actionStartPoint = new flixel_math_FlxPoint(); - this._actionTargetStartScale = new flixel_math_FlxPoint(); - flixel_system_debug_interaction_tools_Tool.call(this); -}; -$hxClasses["flixel.system.debug.interaction.tools.Transform"] = flixel_system_debug_interaction_tools_Transform; -flixel_system_debug_interaction_tools_Transform.__name__ = "flixel.system.debug.interaction.tools.Transform"; -flixel_system_debug_interaction_tools_Transform.__super__ = flixel_system_debug_interaction_tools_Tool; -flixel_system_debug_interaction_tools_Transform.prototype = $extend(flixel_system_debug_interaction_tools_Tool.prototype,{ - _actionTargetStartScale: null - ,_actionTargetStartAngle: null - ,_actionStartPoint: null - ,_actionHappening: null - ,_actionMarker: null - ,_actionScaleDirection: null - ,_tooltip: null - ,_markers: null - ,_target: null - ,_targetArea: null - ,_mouseCursor: null - ,init: function(brain) { - var _gthis = this; - flixel_system_debug_interaction_tools_Tool.prototype.init.call(this,brain); - this._name = "Transform"; - this.setButton(flixel_system_debug_interaction_tools__$Transform_GraphicTransformTool); - this.setCursor(new flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorDefault(0,0)); - brain.registerCustomCursor("transformRotate",new flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorRotate(0,0)); - brain.registerCustomCursor("transformScaleX",new flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleX(0,0)); - brain.registerCustomCursor("transformScaleY",new flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleY(0,0)); - brain.registerCustomCursor("transformScaleXY",new flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleXY(0,0)); - this._tooltip = flixel_system_debug_Tooltip.add(null,""); - this._tooltip.textField.set_wordWrap(false); - this._markers.push(new flixel_math_FlxPoint()); - this._markers.push(new flixel_math_FlxPoint()); - this._markers.push(new flixel_math_FlxPoint()); - this._markers.push(new flixel_math_FlxPoint()); - this.stopAction(); - flixel_FlxG.signals.preStateSwitch.add(function() { - _gthis._target = null; - }); - return this; - } - ,updateTargetArea: function() { - if(this._target == null) { - var _this = this._targetArea; - _this.x = 0; - _this.y = 0; - var _this1 = this._targetArea; - _this1.width = 0; - _this1.height = 0; - } else { - var _this2 = this._targetArea; - _this2.x = this._target.x - flixel_FlxG.camera.scroll.x; - _this2.y = this._target.y - flixel_FlxG.camera.scroll.y; - var _this3 = this._targetArea; - var Width = this._target.get_width(); - var Height = this._target.get_height(); - _this3.width = Width; - _this3.height = Height; - } - } - ,startAction: function(whichMarker) { - if(this._actionHappening) { - return; - } - this._actionHappening = true; - this._actionMarker = whichMarker; - this._actionStartPoint.set(this._brain.flixelPointer.x - flixel_FlxG.camera.scroll.x,this._brain.flixelPointer.y - flixel_FlxG.camera.scroll.y); - this._actionTargetStartAngle = flixel_math_FlxAngle.angleBetweenPoint(this._target,this._markers[0],true); - this._actionTargetStartScale.set(this._target.scale.x,this._target.scale.y); - } - ,stopAction: function() { - this._actionHappening = false; - this._actionMarker = -1; - this._tooltip.setVisible(false); - } - ,getCursorNameByMarker: function(marker) { - switch(marker) { - case 0: - return "transformRotate"; - case 1: - return "transformScaleX"; - case 2: - return "transformScaleXY"; - case 3: - return "transformScaleY"; - default: - return ""; - } - } - ,handleInteractionsWithMarkersUI: function() { - if(this._actionHappening) { - return; - } - var cursorName = ""; - var _g = 0; - var _g1 = this._markers.length; - while(_g < _g1) { - var i = _g++; - if(this._mouseCursor.distanceTo(this._markers[i]) <= 5.0) { - cursorName = this.getCursorNameByMarker(i); - if(this._brain.pointerJustPressed) { - this.startAction(i); - break; - } - } - } - if(cursorName != "") { - this.setCursorInUse(cursorName); - } else { - this.useDefaultCursor(); - } - } - ,formatFloat: function(number) { - var value = flixel_math_FlxMath.roundDecimal(number,flixel_FlxG.debugger.precision); - if(value == null) { - return "null"; - } else { - return "" + value; - } - } - ,showTooltip: function(text) { - if(!this._tooltip.get_visible()) { - this._tooltip.setVisible(true); - } - this._tooltip.set_x(this._target.x - flixel_FlxG.camera.scroll.x); - this._tooltip.set_y(this._target.y - flixel_FlxG.camera.scroll.y); - this._tooltip.setText(text); - } - ,updateScaleActionDirection: function() { - var deltaX = this._mouseCursor.x - this._actionStartPoint.x; - var deltaY = this._mouseCursor.y - this._actionStartPoint.y; - this._actionScaleDirection.set_x(deltaX >= 0 ? 1 : -1); - this._actionScaleDirection.set_y(deltaY >= 0 ? 1 : -1); - } - ,updateScaleAction: function() { - this.updateScaleActionDirection(); - var deltaX = this._actionScaleDirection.x * Math.abs(this._mouseCursor.x - this._actionStartPoint.x) / 10.0; - var deltaY = this._actionScaleDirection.y * Math.abs(this._mouseCursor.y - this._actionStartPoint.y) / 10.0; - if(this._actionMarker == 1 || this._actionMarker == 2) { - this._target.scale.set_x(this._actionTargetStartScale.x + deltaX); - } - if(this._actionMarker == 2 || this._actionMarker == 3) { - this._target.scale.set_y(this._actionTargetStartScale.y + deltaY); - } - this._target.updateHitbox(); - var _this = this._target; - _this.origin.set(_this.frameWidth * 0.5,_this.frameHeight * 0.5); - this.showTooltip("w: " + this.formatFloat(this._target.get_width()) + "\nh: " + this.formatFloat(this._target.get_height())); - } - ,updateRotateAction: function() { - this._target.set_angle(flixel_math_FlxAngle.angleBetweenPoint(this._target,this._brain.flixelPointer,true) - this._actionTargetStartAngle); - this.showTooltip("deg: " + this.formatFloat(this._target.angle) + "\nrad: " + this.formatFloat(this._target.angle * (Math.PI / 180))); - } - ,updateAction: function() { - if(!this._actionHappening || this._actionMarker < 0) { - return; - } - if(this._actionMarker == 0) { - this.updateRotateAction(); - } else { - this.updateScaleAction(); - } - } - ,updateMarkersPosition: function() { - var topLeftX = this._targetArea.x - 5.0; - var topLeftY = this._targetArea.y - 5.0; - var width = this._targetArea.width + 10.; - var height = this._targetArea.height + 10.; - this._markers[0].set(topLeftX,topLeftY); - this._markers[1].set(topLeftX + width,topLeftY); - this._markers[2].set(topLeftX + width,topLeftY + height); - this._markers[3].set(topLeftX,topLeftY + height); - if(this._target.angle != 0) { - this.updateMarkersRotation(width,height); - } - } - ,updateMarkersRotation: function(outlineWidth,outlineHeight) { - var rotationAngleRad = this._target.angle * (Math.PI / 180); - var originX = this._markers[0].x + outlineWidth / 2; - var originY = this._markers[0].y + outlineHeight / 2; - var n = rotationAngleRad + 1.570796327; - n *= 0.3183098862; - if(n > 1) { - n -= Math.ceil(n) >> 1 << 1; - } else if(n < -1) { - n += Math.ceil(-n) >> 1 << 1; - } - var cos = n > 0 ? n * (3.1 + n * (0.5 + n * (-7.2 + n * 3.6))) : n * (3.1 - n * (0.5 + n * (7.2 + n * 3.6))); - var n1 = rotationAngleRad; - n1 *= 0.3183098862; - if(n1 > 1) { - n1 -= Math.ceil(n1) >> 1 << 1; - } else if(n1 < -1) { - n1 += Math.ceil(-n1) >> 1 << 1; - } - var sin = n1 > 0 ? n1 * (3.1 + n1 * (0.5 + n1 * (-7.2 + n1 * 3.6))) : n1 * (3.1 - n1 * (0.5 + n1 * (7.2 + n1 * 3.6))); - var _g = 0; - var _g1 = this._markers; - while(_g < _g1.length) { - var marker = _g1[_g]; - ++_g; - var rotatedX = (marker.x - originX) * cos - (marker.y - originY) * sin; - var rotatedY = (marker.x - originX) * sin + (marker.y - originY) * cos; - marker.set(rotatedX + originX,rotatedY + originY); - } - } - ,update: function() { - if(!this.isActive() || this._target == null) { - return; - } - this._mouseCursor.set_x(this._brain.flixelPointer.x - flixel_FlxG.camera.scroll.x); - this._mouseCursor.set_y(this._brain.flixelPointer.y - flixel_FlxG.camera.scroll.y); - this.updateTargetArea(); - this.updateMarkersPosition(); - this.handleInteractionsWithMarkersUI(); - if(this._actionHappening) { - this.updateAction(); - if(this._brain.pointerJustReleased) { - this.stopAction(); - } - } - } - ,drawTargetAreaOutline: function(gfx) { - gfx.lineStyle(0.9,-65281,1.0,false,2,2); - gfx.moveTo(this._markers[0].x,this._markers[0].y); - var _g = 0; - var _g1 = this._markers.length; - while(_g < _g1) { - var i = _g++; - gfx.lineTo(this._markers[i].x,this._markers[i].y); - } - gfx.lineTo(this._markers[0].x,this._markers[0].y); - } - ,drawMarkers: function(gfx) { - gfx.lineStyle(0.9,-65281,1.0,false,2,2); - gfx.beginFill(-65281); - var _g = 0; - var _g1 = this._markers.length; - while(_g < _g1) { - var i = _g++; - if(i == 0) { - gfx.drawCircle(this._markers[i].x,this._markers[i].y,2.7); - } else { - gfx.drawRect(this._markers[i].x - 1.5,this._markers[i].y - 1.5,3.0,3.0); - } - } - gfx.endFill(); - } - ,draw: function() { - var gfx = this._brain.getDebugGraphics(); - if(gfx == null || this._target == null || !this.isActive()) { - return; - } - this.drawTargetAreaOutline(gfx); - this.drawMarkers(gfx); - if(flixel_FlxG.renderBlit) { - flixel_FlxG.camera.buffer.draw(flixel_util_FlxSpriteUtil.flashGfxSprite); - } - } - ,activate: function() { - this._target = null; - if(this._brain.selectedItems.length == 0) { - return; - } - var member = new flixel_group_FlxTypedGroupIterator(this._brain.selectedItems.members,null); - while(member.hasNext()) { - var member1 = member.next(); - if(member1 != null && member1.scrollFactor != null && member1.isOnScreen()) { - this._target = member1; - break; - } - } - this._brain.shouldDrawItemsSelection = false; - } - ,deactivate: function() { - this._brain.shouldDrawItemsSelection = true; - } - ,__class__: flixel_system_debug_interaction_tools_Transform -}); -var flixel_system_debug_log_LogStyle = function(Prefix,Color,Size,Bold,Italic,Underlined,ErrorSound,OpenConsole,CallbackFunction) { - if(OpenConsole == null) { - OpenConsole = false; - } - if(Underlined == null) { - Underlined = false; - } - if(Italic == null) { - Italic = false; - } - if(Bold == null) { - Bold = false; - } - if(Size == null) { - Size = 12; - } - if(Color == null) { - Color = "FFFFFF"; - } - if(Prefix == null) { - Prefix = ""; - } - this.prefix = Prefix; - this.color = Color; - this.size = Size; - this.bold = Bold; - this.italic = Italic; - this.underlined = Underlined; - this.errorSound = ErrorSound; - this.openConsole = OpenConsole; - this.callbackFunction = CallbackFunction; -}; -$hxClasses["flixel.system.debug.log.LogStyle"] = flixel_system_debug_log_LogStyle; -flixel_system_debug_log_LogStyle.__name__ = "flixel.system.debug.log.LogStyle"; -flixel_system_debug_log_LogStyle.prototype = { - prefix: null - ,color: null - ,size: null - ,bold: null - ,italic: null - ,underlined: null - ,errorSound: null - ,openConsole: null - ,callbackFunction: null - ,__class__: flixel_system_debug_log_LogStyle -}; -var flixel_system_debug_stats__$Stats_GraphicMinimizeButton = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_stats__$Stats_GraphicMinimizeButton.preload != null) { - this.__fromImage(flixel_system_debug_stats__$Stats_GraphicMinimizeButton.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_stats__$Stats_GraphicMinimizeButton.resourceName),flixel_system_debug_stats__$Stats_GraphicMinimizeButton.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_stats__$Stats_GraphicMinimizeButton.preload == null) { - flixel_system_debug_stats__$Stats_GraphicMinimizeButton.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.stats._Stats.GraphicMinimizeButton"] = flixel_system_debug_stats__$Stats_GraphicMinimizeButton; -flixel_system_debug_stats__$Stats_GraphicMinimizeButton.__name__ = "flixel.system.debug.stats._Stats.GraphicMinimizeButton"; -flixel_system_debug_stats__$Stats_GraphicMinimizeButton.preload = null; -flixel_system_debug_stats__$Stats_GraphicMinimizeButton.__super__ = openfl_display_BitmapData; -flixel_system_debug_stats__$Stats_GraphicMinimizeButton.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_stats__$Stats_GraphicMinimizeButton -}); -var flixel_system_debug_stats__$Stats_GraphicMaximizeButton = function(width,height,transparent,fillRGBA,onload) { - if(fillRGBA == null) { - fillRGBA = -1; - } - if(transparent == null) { - transparent = true; - } - openfl_display_BitmapData.call(this,0,0,transparent,fillRGBA); - if(flixel_system_debug_stats__$Stats_GraphicMaximizeButton.preload != null) { - this.__fromImage(flixel_system_debug_stats__$Stats_GraphicMaximizeButton.preload); - } else { - var _gthis = this; - lime_graphics_Image.loadFromBase64(haxe_Resource.getString(flixel_system_debug_stats__$Stats_GraphicMaximizeButton.resourceName),flixel_system_debug_stats__$Stats_GraphicMaximizeButton.resourceType).then(function(image) { - _gthis.__fromImage(image); - return lime_app_Future.withValue(_gthis); - }).onComplete(function(b) { - if(flixel_system_debug_stats__$Stats_GraphicMaximizeButton.preload == null) { - flixel_system_debug_stats__$Stats_GraphicMaximizeButton.preload = b.image; - } - if(onload != null && Reflect.isFunction(onload)) { - onload(b); - } - }); - } -}; -$hxClasses["flixel.system.debug.stats._Stats.GraphicMaximizeButton"] = flixel_system_debug_stats__$Stats_GraphicMaximizeButton; -flixel_system_debug_stats__$Stats_GraphicMaximizeButton.__name__ = "flixel.system.debug.stats._Stats.GraphicMaximizeButton"; -flixel_system_debug_stats__$Stats_GraphicMaximizeButton.preload = null; -flixel_system_debug_stats__$Stats_GraphicMaximizeButton.__super__ = openfl_display_BitmapData; -flixel_system_debug_stats__$Stats_GraphicMaximizeButton.prototype = $extend(openfl_display_BitmapData.prototype,{ - __class__: flixel_system_debug_stats__$Stats_GraphicMaximizeButton -}); -var flixel_system_debug_watch_Watch = function(Title,Icon,Width,Height,Resizable,Bounds,Closable,AlwaysOnTop) { - flixel_system_debug_Window.call(this,Title,Icon,Width,Height,Resizable,Bounds,Closable,AlwaysOnTop); -}; -$hxClasses["flixel.system.debug.watch.Watch"] = flixel_system_debug_watch_Watch; -flixel_system_debug_watch_Watch.__name__ = "flixel.system.debug.watch.Watch"; -flixel_system_debug_watch_Watch.__super__ = flixel_system_debug_Window; -flixel_system_debug_watch_Watch.prototype = $extend(flixel_system_debug_Window.prototype,{ - __class__: flixel_system_debug_watch_Watch -}); -var flixel_system_debug_watch_Tracker = function(Title,Icon,Width,Height,Resizable,Bounds,Closable,AlwaysOnTop) { - flixel_system_debug_watch_Watch.call(this,Title,Icon,Width,Height,Resizable,Bounds,Closable,AlwaysOnTop); -}; -$hxClasses["flixel.system.debug.watch.Tracker"] = flixel_system_debug_watch_Tracker; -flixel_system_debug_watch_Tracker.__name__ = "flixel.system.debug.watch.Tracker"; -flixel_system_debug_watch_Tracker.__super__ = flixel_system_debug_watch_Watch; -flixel_system_debug_watch_Tracker.prototype = $extend(flixel_system_debug_watch_Watch.prototype,{ - __class__: flixel_system_debug_watch_Tracker -}); -var flixel_system_debug_watch_TrackerProfile = function(ObjectClass,Variables,Extensions) { - this.objectClass = ObjectClass; - this.variables = Variables; - this.extensions = Extensions; -}; -$hxClasses["flixel.system.debug.watch.TrackerProfile"] = flixel_system_debug_watch_TrackerProfile; -flixel_system_debug_watch_TrackerProfile.__name__ = "flixel.system.debug.watch.TrackerProfile"; -flixel_system_debug_watch_TrackerProfile.prototype = { - objectClass: null - ,variables: null - ,extensions: null - ,toString: function() { - var value = this.variables; - var _this = flixel_util_LabelValuePair._pool.get(); - _this.label = "variables"; - _this.value = value; - var value1 = this.extensions; - var _this1 = flixel_util_LabelValuePair._pool.get(); - _this1.label = "extensions"; - _this1.value = value1; - return flixel_util_FlxStringUtil.getDebugString([_this,_this1]); - } - ,__class__: flixel_system_debug_watch_TrackerProfile -}; -var flixel_system_frontEnds_FlxBrowser = $hxEnums["flixel.system.frontEnds.FlxBrowser"] = { __ename__ : "flixel.system.frontEnds.FlxBrowser", __constructs__ : ["INTERNET_EXPLORER","CHROME","FIREFOX","SAFARI","OPERA","UNKNOWN"] - ,INTERNET_EXPLORER: {_hx_index:0,__enum__:"flixel.system.frontEnds.FlxBrowser",toString:$estr} - ,CHROME: {_hx_index:1,__enum__:"flixel.system.frontEnds.FlxBrowser",toString:$estr} - ,FIREFOX: {_hx_index:2,__enum__:"flixel.system.frontEnds.FlxBrowser",toString:$estr} - ,SAFARI: {_hx_index:3,__enum__:"flixel.system.frontEnds.FlxBrowser",toString:$estr} - ,OPERA: {_hx_index:4,__enum__:"flixel.system.frontEnds.FlxBrowser",toString:$estr} - ,UNKNOWN: {_hx_index:5,__enum__:"flixel.system.frontEnds.FlxBrowser",toString:$estr} -}; -var flixel_system_frontEnds_FlxPlatform = $hxEnums["flixel.system.frontEnds.FlxPlatform"] = { __ename__ : "flixel.system.frontEnds.FlxPlatform", __constructs__ : ["WINDOWS","LINUX","MAC","ANDROID","BLACKBERRY","WINDOWS_PHONE","IOS","UNKNOWN"] - ,WINDOWS: {_hx_index:0,__enum__:"flixel.system.frontEnds.FlxPlatform",toString:$estr} - ,LINUX: {_hx_index:1,__enum__:"flixel.system.frontEnds.FlxPlatform",toString:$estr} - ,MAC: {_hx_index:2,__enum__:"flixel.system.frontEnds.FlxPlatform",toString:$estr} - ,ANDROID: {_hx_index:3,__enum__:"flixel.system.frontEnds.FlxPlatform",toString:$estr} - ,BLACKBERRY: {_hx_index:4,__enum__:"flixel.system.frontEnds.FlxPlatform",toString:$estr} - ,WINDOWS_PHONE: {_hx_index:5,__enum__:"flixel.system.frontEnds.FlxPlatform",toString:$estr} - ,IOS: ($_=function(device) { return {_hx_index:6,device:device,__enum__:"flixel.system.frontEnds.FlxPlatform",toString:$estr}; },$_.__params__ = ["device"],$_) - ,UNKNOWN: {_hx_index:7,__enum__:"flixel.system.frontEnds.FlxPlatform",toString:$estr} -}; -var flixel_system_frontEnds_FlxIOSDevice = $hxEnums["flixel.system.frontEnds.FlxIOSDevice"] = { __ename__ : "flixel.system.frontEnds.FlxIOSDevice", __constructs__ : ["IPHONE","IPAD","IPOD"] - ,IPHONE: {_hx_index:0,__enum__:"flixel.system.frontEnds.FlxIOSDevice",toString:$estr} - ,IPAD: {_hx_index:1,__enum__:"flixel.system.frontEnds.FlxIOSDevice",toString:$estr} - ,IPOD: {_hx_index:2,__enum__:"flixel.system.frontEnds.FlxIOSDevice",toString:$estr} -}; -var flixel_system_frontEnds_PluginFrontEnd = function() { - this.list = []; - this.add_flixel_util_FlxTimerManager(flixel_util_FlxTimer.globalManager = new flixel_util_FlxTimerManager()); - this.add_flixel_tweens_FlxTweenManager(flixel_tweens_FlxTween.globalManager = new flixel_tweens_FlxTweenManager()); -}; -$hxClasses["flixel.system.frontEnds.PluginFrontEnd"] = flixel_system_frontEnds_PluginFrontEnd; -flixel_system_frontEnds_PluginFrontEnd.__name__ = "flixel.system.frontEnds.PluginFrontEnd"; -flixel_system_frontEnds_PluginFrontEnd.prototype = { - add_flixel_tweens_FlxTweenManager: function(Plugin1) { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var plugin = _g1[_g]; - ++_g; - if(flixel_util_FlxStringUtil.getClassName(Plugin1,true) == flixel_util_FlxStringUtil.getClassName(plugin,true)) { - return Plugin1; - } - } - this.list.push(Plugin1); - return Plugin1; - } - ,add_flixel_util_FlxTimerManager: function(Plugin1) { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var plugin = _g1[_g]; - ++_g; - if(flixel_util_FlxStringUtil.getClassName(Plugin1,true) == flixel_util_FlxStringUtil.getClassName(plugin,true)) { - return Plugin1; - } - } - this.list.push(Plugin1); - return Plugin1; - } - ,list: null - ,get: function(ClassType) { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var plugin = _g1[_g]; - ++_g; - if(js_Boot.__instanceof(plugin,ClassType)) { - return plugin; - } - } - return null; - } - ,remove: function(Plugin1) { - var i = this.list.length - 1; - while(i >= 0) { - if(this.list[i] == Plugin1) { - this.list.splice(i,1); - return Plugin1; - } - --i; - } - return Plugin1; - } - ,removeType: function(ClassType) { - var results = false; - var i = this.list.length - 1; - while(i >= 0) { - if(js_Boot.__instanceof(this.list[i],ClassType)) { - this.list.splice(i,1); - results = true; - } - --i; - } - return results; - } - ,update: function(elapsed) { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var plugin = _g1[_g]; - ++_g; - if(plugin.exists && plugin.active) { - plugin.update(elapsed); - } - } - } - ,draw: function() { - var _g = 0; - var _g1 = this.list; - while(_g < _g1.length) { - var plugin = _g1[_g]; - ++_g; - if(plugin.exists && plugin.visible) { - plugin.draw(); - } - } - } - ,__class__: flixel_system_frontEnds_PluginFrontEnd -}; -var flixel_system_frontEnds_SoundFrontEnd = function() { - this.volume = 1; - this.list = new flixel_group_FlxTypedGroup(); - this.defaultSoundGroup = new flixel_system_FlxSoundGroup(); - this.defaultMusicGroup = new flixel_system_FlxSoundGroup(); - this.soundTrayEnabled = true; - this.muteKeys = [48,96]; - this.volumeDownKeys = [189,109]; - this.volumeUpKeys = [187,107]; - this.muted = false; - this.loadSavedPrefs(); -}; -$hxClasses["flixel.system.frontEnds.SoundFrontEnd"] = flixel_system_frontEnds_SoundFrontEnd; -flixel_system_frontEnds_SoundFrontEnd.__name__ = "flixel.system.frontEnds.SoundFrontEnd"; -flixel_system_frontEnds_SoundFrontEnd.prototype = { - music: null - ,muted: null - ,volumeHandler: null - ,volumeUpKeys: null - ,volumeDownKeys: null - ,muteKeys: null - ,soundTrayEnabled: null - ,defaultMusicGroup: null - ,defaultSoundGroup: null - ,list: null - ,volume: null - ,playMusic: function(Music,Volume,Looped,Group) { - if(Looped == null) { - Looped = true; - } - if(Volume == null) { - Volume = 1; - } - if(this.music == null) { - this.music = new flixel_system_FlxSound(); - } else if(this.music.active) { - var _this = this.music; - _this.cleanup(_this.autoDestroy,true); - } - this.music.loadEmbedded(Music,Looped); - this.music.set_volume(Volume); - this.music.persist = true; - this.music.set_group(Group == null ? this.defaultMusicGroup : Group); - this.music.play(); - } - ,load: function(EmbeddedSound,Volume,Looped,Group,AutoDestroy,AutoPlay,URL1,OnComplete) { - if(AutoPlay == null) { - AutoPlay = false; - } - if(AutoDestroy == null) { - AutoDestroy = false; - } - if(Looped == null) { - Looped = false; - } - if(Volume == null) { - Volume = 1; - } - if(EmbeddedSound == null && URL1 == null) { - return null; - } - var sound = this.list.recycle(flixel_system_FlxSound); - if(EmbeddedSound != null) { - sound.loadEmbedded(EmbeddedSound,Looped,AutoDestroy,OnComplete); - } else { - sound.loadStream(URL1,Looped,AutoDestroy,OnComplete); - } - sound.set_volume(Volume); - if(AutoPlay) { - sound.play(); - } - sound.set_group(Group == null ? this.defaultSoundGroup : Group); - return sound; - } - ,cache: function(EmbeddedSound) { - if(openfl_utils_Assets.exists(EmbeddedSound,"SOUND") || openfl_utils_Assets.exists(EmbeddedSound,"MUSIC")) { - return openfl_utils_Assets.getSound(EmbeddedSound,true); - } - return null; - } - ,cacheAll: function() { - var _g = 0; - var _g1 = openfl_utils_Assets.list("SOUND"); - while(_g < _g1.length) { - var id = _g1[_g]; - ++_g; - if(openfl_utils_Assets.exists(id,"SOUND") || openfl_utils_Assets.exists(id,"MUSIC")) { - openfl_utils_Assets.getSound(id,true); - } - } - } - ,play: function(EmbeddedSound,Volume,Looped,Group,AutoDestroy,OnComplete) { - if(AutoDestroy == null) { - AutoDestroy = true; - } - if(Looped == null) { - Looped = false; - } - if(Volume == null) { - Volume = 1; - } - if(typeof(EmbeddedSound) == "string") { - EmbeddedSound = openfl_utils_Assets.exists(EmbeddedSound,"SOUND") || openfl_utils_Assets.exists(EmbeddedSound,"MUSIC") ? openfl_utils_Assets.getSound(EmbeddedSound,true) : null; - } - var sound = this.list.recycle(flixel_system_FlxSound).loadEmbedded(EmbeddedSound,Looped,AutoDestroy,OnComplete); - sound.set_volume(Volume); - sound.set_group(Group == null ? this.defaultSoundGroup : Group); - return sound.play(); - } - ,stream: function(URL1,Volume,Looped,Group,AutoDestroy,OnComplete) { - if(AutoDestroy == null) { - AutoDestroy = true; - } - if(Looped == null) { - Looped = false; - } - if(Volume == null) { - Volume = 1; - } - return this.load(null,Volume,Looped,null,AutoDestroy,true,URL1,OnComplete); - } - ,pause: function() { - if(this.music != null && this.music.exists && this.music.active) { - this.music.pause(); - } - var _g = 0; - var _g1 = this.list.members; - while(_g < _g1.length) { - var sound = _g1[_g]; - ++_g; - if(sound != null && sound.exists && sound.active) { - sound.pause(); - } - } - } - ,resume: function() { - if(this.music != null && this.music.exists) { - this.music.resume(); - } - var _g = 0; - var _g1 = this.list.members; - while(_g < _g1.length) { - var sound = _g1[_g]; - ++_g; - if(sound != null && sound.exists) { - sound.resume(); - } - } - } - ,destroy: function(ForceDestroy) { - if(ForceDestroy == null) { - ForceDestroy = false; - } - if(this.music != null && (ForceDestroy || !this.music.persist)) { - this.destroySound(this.music); - this.music = null; - } - var _g = 0; - var _g1 = this.list.members; - while(_g < _g1.length) { - var sound = _g1[_g]; - ++_g; - if(sound != null && (ForceDestroy || !sound.persist)) { - this.destroySound(sound); - } - } - } - ,destroySound: function(sound) { - this.defaultMusicGroup.remove(sound); - this.defaultSoundGroup.remove(sound); - sound.destroy(); - } - ,toggleMuted: function() { - this.muted = !this.muted; - if(this.volumeHandler != null) { - this.volumeHandler(this.muted ? 0 : this.volume); - } - this.showSoundTray(); - } - ,changeVolume: function(Amount) { - this.muted = false; - var _g = this; - _g.set_volume(_g.volume + Amount); - this.showSoundTray(); - } - ,showSoundTray: function() { - if(flixel_FlxG.game.soundTray != null && this.soundTrayEnabled) { - flixel_FlxG.game.soundTray.show(); - } - } - ,update: function(elapsed) { - if(this.music != null && this.music.active) { - this.music.update(elapsed); - } - if(this.list != null && this.list.active) { - this.list.update(elapsed); - } - if(flixel_FlxG.keys.checkKeyArrayState(this.muteKeys,-1)) { - this.toggleMuted(); - } else if(flixel_FlxG.keys.checkKeyArrayState(this.volumeUpKeys,-1)) { - this.changeVolume(0.1); - } else if(flixel_FlxG.keys.checkKeyArrayState(this.volumeDownKeys,-1)) { - this.changeVolume(-0.1); - } - } - ,onFocusLost: function() { - if(this.music != null) { - this.music.onFocusLost(); - } - var _g = 0; - var _g1 = this.list.members; - while(_g < _g1.length) { - var sound = _g1[_g]; - ++_g; - if(sound != null) { - sound.onFocusLost(); - } - } - } - ,onFocus: function() { - if(this.music != null) { - this.music.onFocus(); - } - var _g = 0; - var _g1 = this.list.members; - while(_g < _g1.length) { - var sound = _g1[_g]; - ++_g; - if(sound != null) { - sound.onFocus(); - } - } - } - ,loadSavedPrefs: function() { - if(flixel_FlxG.save.data.volume != null) { - this.set_volume(flixel_FlxG.save.data.volume); - } - if(flixel_FlxG.save.data.mute != null) { - this.muted = flixel_FlxG.save.data.mute; - } - } - ,set_volume: function(Volume) { - var lowerBound = Volume < 0 ? 0 : Volume; - Volume = lowerBound > 1 ? 1 : lowerBound; - if(this.volumeHandler != null) { - var param = this.muted ? 0 : Volume; - this.volumeHandler(param); - } - return this.volume = Volume; - } - ,__class__: flixel_system_frontEnds_SoundFrontEnd - ,__properties__: {set_volume:"set_volume"} -}; -var flixel_system_frontEnds_VCRFrontEnd = function() { - this.stepRequested = false; - this.paused = false; -}; -$hxClasses["flixel.system.frontEnds.VCRFrontEnd"] = flixel_system_frontEnds_VCRFrontEnd; -flixel_system_frontEnds_VCRFrontEnd.__name__ = "flixel.system.frontEnds.VCRFrontEnd"; -flixel_system_frontEnds_VCRFrontEnd.prototype = { - paused: null - ,stepRequested: null - ,pause: function() { - if(!this.paused) { - if(!flixel_FlxG.mouse.useSystemCursor) { - openfl_ui_Mouse.show(); - } - this.paused = true; - } - } - ,resume: function() { - if(this.paused) { - if(!flixel_FlxG.mouse.useSystemCursor) { - openfl_ui_Mouse.hide(); - } - this.paused = false; - } - } - ,__class__: flixel_system_frontEnds_VCRFrontEnd -}; -var flixel_system_macros_FlxMacroUtil = function() { }; -$hxClasses["flixel.system.macros.FlxMacroUtil"] = flixel_system_macros_FlxMacroUtil; -flixel_system_macros_FlxMacroUtil.__name__ = "flixel.system.macros.FlxMacroUtil"; -var flixel_system_replay_CodeValuePair = function(code,value) { - this.code = code; - this.value = value; -}; -$hxClasses["flixel.system.replay.CodeValuePair"] = flixel_system_replay_CodeValuePair; -flixel_system_replay_CodeValuePair.__name__ = "flixel.system.replay.CodeValuePair"; -flixel_system_replay_CodeValuePair.prototype = { - code: null - ,value: null - ,__class__: flixel_system_replay_CodeValuePair -}; -var flixel_system_replay_MouseRecord = function(x,y,button,wheel) { - this.x = x; - this.y = y; - this.button = button; - this.wheel = wheel; -}; -$hxClasses["flixel.system.replay.MouseRecord"] = flixel_system_replay_MouseRecord; -flixel_system_replay_MouseRecord.__name__ = "flixel.system.replay.MouseRecord"; -flixel_system_replay_MouseRecord.prototype = { - x: null - ,y: null - ,button: null - ,wheel: null - ,__class__: flixel_system_replay_MouseRecord -}; -var flixel_system_ui_FlxFocusLostScreen = function() { - openfl_display_Sprite.call(this); - this.draw(); - var logo = new openfl_display_Sprite(); - flixel_system_FlxAssets.drawLogo(logo.get_graphics()); - logo.set_scaleX(logo.set_scaleY(0.2)); - logo.set_x(logo.set_y(5)); - logo.set_alpha(0.35); - this.addChild(logo); - this.set_visible(false); -}; -$hxClasses["flixel.system.ui.FlxFocusLostScreen"] = flixel_system_ui_FlxFocusLostScreen; -flixel_system_ui_FlxFocusLostScreen.__name__ = "flixel.system.ui.FlxFocusLostScreen"; -flixel_system_ui_FlxFocusLostScreen.__super__ = openfl_display_Sprite; -flixel_system_ui_FlxFocusLostScreen.prototype = $extend(openfl_display_Sprite.prototype,{ - draw: function() { - var gfx = this.get_graphics(); - var screenWidth = openfl_Lib.get_current().stage.stageWidth | 0; - var screenHeight = openfl_Lib.get_current().stage.stageHeight | 0; - gfx.clear(); - gfx.moveTo(0,0); - gfx.beginFill(0,0.5); - gfx.drawRect(0,0,screenWidth,screenHeight); - gfx.endFill(); - var halfWidth = screenWidth / 2 | 0; - var halfHeight = screenHeight / 2 | 0; - var helper = Math.min(halfWidth,halfHeight) / 3 | 0; - gfx.moveTo(halfWidth - helper,halfHeight - helper); - gfx.beginFill(16777215,0.65); - gfx.lineTo(halfWidth + helper,halfHeight); - gfx.lineTo(halfWidth - helper,halfHeight + helper); - gfx.lineTo(halfWidth - helper,halfHeight - helper); - gfx.endFill(); - this.set_x(-flixel_FlxG.scaleMode.offset.x); - this.set_y(-flixel_FlxG.scaleMode.offset.y); - } - ,__class__: flixel_system_ui_FlxFocusLostScreen -}); -var flixel_system_ui_FlxSoundTray = function() { - this._defaultScale = 2.0; - this._width = 80; - openfl_display_Sprite.call(this); - this.set_visible(false); - this.set_scaleX(this._defaultScale); - this.set_scaleY(this._defaultScale); - var tmp = new openfl_display_Bitmap(new openfl_display_BitmapData(this._width,30,true,2130706432)); - this.screenCenter(); - this.addChild(tmp); - var text = new openfl_text_TextField(); - text.set_width(tmp.get_width()); - text.set_height(tmp.get_height()); - text.set_multiline(true); - text.set_wordWrap(true); - text.set_selectable(false); - var dtf = new openfl_text_TextFormat(flixel_system_FlxAssets.FONT_DEFAULT,10,16777215); - dtf.align = 0; - text.set_defaultTextFormat(dtf); - this.addChild(text); - text.set_text("VOLUME"); - text.set_y(16); - var bx = 10; - var by = 14; - this._bars = []; - var _g = 0; - while(_g < 10) { - var i = _g++; - tmp = new openfl_display_Bitmap(new openfl_display_BitmapData(4,i + 1,false,-1)); - tmp.set_x(bx); - tmp.set_y(by); - this.addChild(tmp); - this._bars.push(tmp); - bx += 6; - --by; - } - this.set_y(-this.get_height()); - this.set_visible(false); -}; -$hxClasses["flixel.system.ui.FlxSoundTray"] = flixel_system_ui_FlxSoundTray; -flixel_system_ui_FlxSoundTray.__name__ = "flixel.system.ui.FlxSoundTray"; -flixel_system_ui_FlxSoundTray.__super__ = openfl_display_Sprite; -flixel_system_ui_FlxSoundTray.prototype = $extend(openfl_display_Sprite.prototype,{ - active: null - ,_timer: null - ,_bars: null - ,_width: null - ,_defaultScale: null - ,update: function(MS) { - if(this._timer > 0) { - this._timer -= MS / 1000; - } else if(this.get_y() > -this.get_height()) { - var _g = this; - _g.set_y(_g.get_y() - MS / 1000 * flixel_FlxG.height * 2); - if(this.get_y() <= -this.get_height()) { - this.set_visible(false); - this.active = false; - flixel_FlxG.save.data.mute = flixel_FlxG.sound.muted; - flixel_FlxG.save.data.volume = flixel_FlxG.sound.volume; - flixel_FlxG.save.flush(); - } - } - } - ,show: function(Silent) { - if(Silent == null) { - Silent = false; - } - if(!Silent) { - var extension = ""; - extension = ".ogg"; - var sound = openfl_utils_Assets.getSound("flixel/sounds/beep" + extension); - if(sound != null) { - flixel_FlxG.sound.load(sound).play(); - } - } - this._timer = 1; - this.set_y(0); - this.set_visible(true); - this.active = true; - var globalVolume = Math.round(flixel_FlxG.sound.volume * 10); - if(flixel_FlxG.sound.muted) { - globalVolume = 0; - } - var _g = 0; - var _g1 = this._bars.length; - while(_g < _g1) { - var i = _g++; - if(i < globalVolume) { - this._bars[i].set_alpha(1); - } else { - this._bars[i].set_alpha(0.5); - } - } - } - ,screenCenter: function() { - this.set_scaleX(this._defaultScale); - this.set_scaleY(this._defaultScale); - this.set_x(0.5 * (openfl_Lib.get_current().stage.stageWidth - this._width * this._defaultScale) - flixel_FlxG.game.get_x()); - } - ,__class__: flixel_system_ui_FlxSoundTray -}); -var flixel_system_ui_FlxSystemButton = function(Icon,UpHandler,ToggleMode) { - if(ToggleMode == null) { - ToggleMode = false; - } - this._mouseDown = false; - this.toggled = false; - this.toggleMode = false; - this.enabled = true; - openfl_display_Sprite.call(this); - if(Icon != null) { - this.changeIcon(Icon); - } - this.upHandler = UpHandler; - this.toggleMode = ToggleMode; - this.addEventListener("mouseUp",$bind(this,this.onMouseUp)); - this.addEventListener("mouseDown",$bind(this,this.onMouseDown)); - this.addEventListener("mouseOut",$bind(this,this.onMouseOut)); - this.addEventListener("mouseOver",$bind(this,this.onMouseOver)); -}; -$hxClasses["flixel.system.ui.FlxSystemButton"] = flixel_system_ui_FlxSystemButton; -flixel_system_ui_FlxSystemButton.__name__ = "flixel.system.ui.FlxSystemButton"; -flixel_system_ui_FlxSystemButton.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_system_ui_FlxSystemButton.__super__ = openfl_display_Sprite; -flixel_system_ui_FlxSystemButton.prototype = $extend(openfl_display_Sprite.prototype,{ - upHandler: null - ,enabled: null - ,toggleMode: null - ,toggled: null - ,_icon: null - ,_mouseDown: null - ,changeIcon: function(Icon) { - if(this._icon != null) { - this.removeChild(this._icon); - } - flixel_system_debug_DebuggerUtil.fixSize(Icon); - this._icon = new openfl_display_Bitmap(Icon); - this.addChild(this._icon); - } - ,destroy: function() { - this.removeEventListener("mouseUp",$bind(this,this.onMouseUp)); - this.removeEventListener("mouseDown",$bind(this,this.onMouseDown)); - this.removeEventListener("mouseOut",$bind(this,this.onMouseOut)); - this.removeEventListener("mouseOver",$bind(this,this.onMouseOver)); - this._icon = null; - this.upHandler = null; - } - ,onMouseUp: function(_) { - if(this.enabled && this._mouseDown) { - this.set_toggled(!this.toggled); - this._mouseDown = false; - if(this.upHandler != null) { - this.upHandler(); - } - } - } - ,onMouseDown: function(_) { - this._mouseDown = true; - } - ,onMouseOver: function(_) { - if(this.enabled) { - var _g = this; - _g.set_alpha(_g.get_alpha() - 0.2); - } - } - ,onMouseOut: function(_) { - if(this.enabled) { - var _g = this; - _g.set_alpha(_g.get_alpha() + 0.2); - } - } - ,set_toggled: function(Value) { - if(this.toggleMode) { - this.set_alpha(Value ? 0.3 : 1); - } - return this.toggled = Value; - } - ,__class__: flixel_system_ui_FlxSystemButton - ,__properties__: $extend(openfl_display_Sprite.prototype.__properties__,{set_toggled:"set_toggled"}) -}); -var flixel_text_FlxText = function(X,Y,FieldWidth,Text1,Size,EmbeddedFont) { - if(EmbeddedFont == null) { - EmbeddedFont = true; - } - if(Size == null) { - Size = 8; - } - if(FieldWidth == null) { - FieldWidth = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - this._hasBorderAlpha = false; - this._regen = true; - this._formatRanges = []; - this.borderQuality = 1; - this.borderSize = 1; - this.borderColor = 0; - this.borderStyle = flixel_text_FlxTextBorderStyle.NONE; - this.text = ""; - flixel_FlxSprite.call(this,X,Y); - if(Text1 == null || Text1 == "") { - this.set_text(""); - Text1 = " "; - } else { - this.set_text(Text1); - } - this.textField = new openfl_text_TextField(); - this.textField.set_selectable(false); - this.textField.set_multiline(true); - this.textField.set_wordWrap(true); - this._defaultFormat = new openfl_text_TextFormat(null,Size,16777215); - this.set_font(flixel_system_FlxAssets.FONT_DEFAULT); - this._formatAdjusted = new openfl_text_TextFormat(); - this.textField.set_defaultTextFormat(this._defaultFormat); - this.textField.set_text(Text1); - this.set_fieldWidth(FieldWidth); - this.textField.set_embedFonts(EmbeddedFont); - this.textField.set_sharpness(100); - this.textField.set_height(Text1.length <= 0 ? 1 : 10); - this.set_allowCollisions(0); - this.set_moves(false); - this.drawFrame(); - var X1 = 1; - var Y1 = 1; - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X1,Y1); - point._inPool = false; - this.shadowOffset = point; -}; -$hxClasses["flixel.text.FlxText"] = flixel_text_FlxText; -flixel_text_FlxText.__name__ = "flixel.text.FlxText"; -flixel_text_FlxText.__super__ = flixel_FlxSprite; -flixel_text_FlxText.prototype = $extend(flixel_FlxSprite.prototype,{ - text: null - ,borderStyle: null - ,borderColor: null - ,borderSize: null - ,borderQuality: null - ,textField: null - ,shadowOffset: null - ,_defaultFormat: null - ,_formatAdjusted: null - ,_formatRanges: null - ,_font: null - ,_regen: null - ,_borderPixels: null - ,_borderColorTransform: null - ,_hasBorderAlpha: null - ,destroy: function() { - this.textField = null; - this._font = null; - this._defaultFormat = null; - this._formatAdjusted = null; - this.shadowOffset = flixel_util_FlxDestroyUtil.put(this.shadowOffset); - flixel_FlxSprite.prototype.destroy.call(this); - } - ,drawFrame: function(Force) { - if(Force == null) { - Force = false; - } - this._regen = this._regen || Force; - flixel_FlxSprite.prototype.drawFrame.call(this,this._regen); - } - ,stampOnAtlas: function(atlas) { - this.regenGraphic(); - var node = atlas.addNode(this.graphic.bitmap,this.graphic.key); - var result = node != null; - if(node != null) { - this.set_frames(node.getImageFrame()); - } - return result; - } - ,applyMarkup: function(input,rules) { - if(rules == null || rules.length == 0) { - return this; - } - this.clearFormats(); - var rangeStarts = []; - var rangeEnds = []; - var rulesToApply = []; - var i = 0; - var _g = 0; - while(_g < rules.length) { - var rule = rules[_g]; - ++_g; - if(rule.marker == null || rule.format == null) { - continue; - } - var start = false; - var markerLength = _$UnicodeString_UnicodeString_$Impl_$.get_length(rule.marker); - if(input.indexOf(rule.marker) == -1) { - continue; - } - var _g1 = 0; - var _g11 = _$UnicodeString_UnicodeString_$Impl_$.get_length(input); - while(_g1 < _g11) { - var charIndex = _g1++; - if(!(_$UnicodeString_UnicodeString_$Impl_$.substr(input,charIndex,markerLength) == rule.marker)) { - continue; - } - if(start) { - start = false; - rangeEnds.push(charIndex); - } else { - start = true; - rangeStarts.push(charIndex); - rulesToApply.push(rule); - } - } - if(start) { - rangeEnds.push(-1); - } - ++i; - } - var _g12 = 0; - while(_g12 < rules.length) { - var rule1 = rules[_g12]; - ++_g12; - input = StringTools.replace(input,rule1.marker,""); - } - var _g2 = 0; - var _g3 = rangeStarts.length; - while(_g2 < _g3) { - var i1 = _g2++; - var delIndex = rangeStarts[i1]; - var markerLength1 = _$UnicodeString_UnicodeString_$Impl_$.get_length(rulesToApply[i1].marker); - var _g21 = 0; - var _g31 = rangeStarts.length; - while(_g21 < _g31) { - var j = _g21++; - if(rangeStarts[j] > delIndex) { - rangeStarts[j] -= markerLength1; - } - if(rangeEnds[j] > delIndex) { - rangeEnds[j] -= markerLength1; - } - } - delIndex = rangeEnds[i1]; - var _g4 = 0; - var _g5 = rangeStarts.length; - while(_g4 < _g5) { - var j1 = _g4++; - if(rangeStarts[j1] > delIndex) { - rangeStarts[j1] -= markerLength1; - } - if(rangeEnds[j1] > delIndex) { - rangeEnds[j1] -= markerLength1; - } - } - } - this.set_text(input); - var _g41 = 0; - var _g51 = rangeStarts.length; - while(_g41 < _g51) { - var i2 = _g41++; - this.addFormat(rulesToApply[i2].format,rangeStarts[i2],rangeEnds[i2]); - } - return this; - } - ,addFormat: function(Format,Start,End) { - if(End == null) { - End = -1; - } - if(Start == null) { - Start = -1; - } - this._formatRanges.push(new flixel_text__$FlxText_FlxTextFormatRange(Format,Start,End)); - this._formatRanges.sort(function(left,right) { - if(left.range.start < right.range.start) { - return -1; - } else { - return 1; - } - }); - this._regen = true; - return this; - } - ,removeFormat: function(Format,Start,End) { - var _g = 0; - var _g1 = this._formatRanges; - while(_g < _g1.length) { - var formatRange = _g1[_g]; - ++_g; - if(formatRange.format != Format) { - continue; - } - if(Start != null && End != null && (Start > formatRange.range.end || End < formatRange.range.start)) { - continue; - } - HxOverrides.remove(this._formatRanges,formatRange); - } - this._regen = true; - return this; - } - ,clearFormats: function() { - this._formatRanges = []; - this.textField.set_defaultTextFormat(this._defaultFormat); - this.textField.setTextFormat(this._defaultFormat); - this._regen = true; - return this; - } - ,setFormat: function(Font,Size,Color,Alignment,BorderStyle,BorderColor,EmbeddedFont) { - if(EmbeddedFont == null) { - EmbeddedFont = true; - } - if(BorderColor == null) { - BorderColor = 0; - } - if(Color == null) { - Color = -1; - } - if(Size == null) { - Size = 8; - } - BorderStyle = BorderStyle == null ? flixel_text_FlxTextBorderStyle.NONE : BorderStyle; - if(EmbeddedFont) { - this.set_font(Font); - } else if(Font != null) { - this.set_systemFont(Font); - } - this.set_size(Size); - this.set_color(Color); - if(Alignment != null) { - this.set_alignment(Alignment); - } - var Color1 = BorderColor; - if(Color1 == null) { - Color1 = 0; - } - this.set_borderStyle(BorderStyle); - this.set_borderColor(Color1); - this.set_borderSize(1); - this.set_borderQuality(1); - this.textField.set_defaultTextFormat(this._defaultFormat); - this.textField.setTextFormat(this._defaultFormat); - this._regen = true; - return this; - } - ,setBorderStyle: function(Style,Color,Size,Quality) { - if(Quality == null) { - Quality = 1; - } - if(Size == null) { - Size = 1; - } - if(Color == null) { - Color = 0; - } - this.set_borderStyle(Style); - this.set_borderColor(Color); - this.set_borderSize(Size); - this.set_borderQuality(Quality); - return this; - } - ,updateHitbox: function() { - this.regenGraphic(); - flixel_FlxSprite.prototype.updateHitbox.call(this); - } - ,set_fieldWidth: function(value) { - if(this.textField == null) { - return value; - } - if(value <= 0) { - this.set_wordWrap(false); - this.set_autoSize(true); - } else { - this.set_autoSize(false); - this.set_wordWrap(true); - this.textField.set_width(value); - } - this._regen = true; - return value; - } - ,get_fieldWidth: function() { - if(this.textField != null) { - return this.textField.get_width(); - } else { - return 0; - } - } - ,set_autoSize: function(value) { - if(this.textField != null) { - this.textField.set_autoSize(value ? 1 : 2); - this._regen = true; - } - return value; - } - ,get_autoSize: function() { - if(this.textField != null) { - return this.textField.get_autoSize() != 2; - } else { - return false; - } - } - ,set_text: function(Text1) { - this.text = Text1; - if(this.textField != null) { - var ot = this.textField.get_text(); - this.textField.set_text(Text1); - this._regen = this.textField.get_text() != ot || this._regen; - } - return Text1; - } - ,get_size: function() { - return this._defaultFormat.size | 0; - } - ,set_size: function(Size) { - this._defaultFormat.size = Size; - this.textField.set_defaultTextFormat(this._defaultFormat); - this.textField.setTextFormat(this._defaultFormat); - this._regen = true; - return Size; - } - ,set_color: function(Color) { - if(this._defaultFormat.color == (Color & 16777215)) { - return Color; - } - this._defaultFormat.color = Color & 16777215; - this.color = Color; - this.textField.set_defaultTextFormat(this._defaultFormat); - this.textField.setTextFormat(this._defaultFormat); - this._regen = true; - return Color; - } - ,get_font: function() { - return this._font; - } - ,set_font: function(Font) { - this.textField.set_embedFonts(true); - if(Font != null) { - var newFontName = Font; - if(openfl_utils_Assets.exists(Font,"FONT")) { - newFontName = openfl_utils_Assets.getFont(Font).name; - } - this._defaultFormat.font = newFontName; - } else { - this._defaultFormat.font = flixel_system_FlxAssets.FONT_DEFAULT; - } - this.textField.set_defaultTextFormat(this._defaultFormat); - this.textField.setTextFormat(this._defaultFormat); - this._regen = true; - return this._font = this._defaultFormat.font; - } - ,get_embedded: function() { - return this.textField.set_embedFonts(true); - } - ,get_systemFont: function() { - return this._defaultFormat.font; - } - ,set_systemFont: function(Font) { - this.textField.set_embedFonts(false); - this._defaultFormat.font = Font; - this.textField.set_defaultTextFormat(this._defaultFormat); - this.textField.setTextFormat(this._defaultFormat); - this._regen = true; - return Font; - } - ,get_bold: function() { - return this._defaultFormat.bold; - } - ,set_bold: function(value) { - if(this._defaultFormat.bold != value) { - this._defaultFormat.bold = value; - this.textField.set_defaultTextFormat(this._defaultFormat); - this.textField.setTextFormat(this._defaultFormat); - this._regen = true; - } - return value; - } - ,get_italic: function() { - return this._defaultFormat.italic; - } - ,set_italic: function(value) { - if(this._defaultFormat.italic != value) { - this._defaultFormat.italic = value; - this.textField.set_defaultTextFormat(this._defaultFormat); - this.textField.setTextFormat(this._defaultFormat); - this._regen = true; - } - return value; - } - ,get_wordWrap: function() { - return this.textField.get_wordWrap(); - } - ,set_wordWrap: function(value) { - if(this.textField.get_wordWrap() != value) { - this.textField.set_wordWrap(value); - this._regen = true; - } - return value; - } - ,get_alignment: function() { - return flixel_text__$FlxText_FlxTextAlign_$Impl_$.fromOpenFL(this._defaultFormat.align); - } - ,set_alignment: function(Alignment) { - this._defaultFormat.align = flixel_text__$FlxText_FlxTextAlign_$Impl_$.toOpenFL(Alignment); - this.textField.set_defaultTextFormat(this._defaultFormat); - this.textField.setTextFormat(this._defaultFormat); - this._regen = true; - return Alignment; - } - ,set_borderStyle: function(style) { - if(style != this.borderStyle) { - this._regen = true; - } - return this.borderStyle = style; - } - ,set_borderColor: function(Color) { - if(this.borderColor != Color && this.borderStyle != flixel_text_FlxTextBorderStyle.NONE) { - this._regen = true; - } - this._hasBorderAlpha = (Color >> 24 & 255) / 255 < 1; - return this.borderColor = Color; - } - ,set_borderSize: function(Value) { - if(Value != this.borderSize && this.borderStyle != flixel_text_FlxTextBorderStyle.NONE) { - this._regen = true; - } - return this.borderSize = Value; - } - ,set_borderQuality: function(Value) { - var lowerBound = Value < 0 ? 0 : Value; - Value = lowerBound > 1 ? 1 : lowerBound; - if(Value != this.borderQuality && this.borderStyle != flixel_text_FlxTextBorderStyle.NONE) { - this._regen = true; - } - return this.borderQuality = Value; - } - ,set_graphic: function(Value) { - var oldGraphic = this.graphic; - var graph = flixel_FlxSprite.prototype.set_graphic.call(this,Value); - flixel_FlxG.bitmap.removeIfNoUse(oldGraphic); - return graph; - } - ,get_width: function() { - this.regenGraphic(); - return flixel_FlxSprite.prototype.get_width.call(this); - } - ,get_height: function() { - this.regenGraphic(); - return flixel_FlxSprite.prototype.get_height.call(this); - } - ,updateColorTransform: function() { - if(this.colorTransform == null) { - this.colorTransform = new openfl_geom_ColorTransform(); - } - if(this.alpha != 1) { - this.colorTransform.alphaMultiplier = this.alpha; - this.useColorTransform = true; - } else { - this.colorTransform.alphaMultiplier = 1; - this.useColorTransform = false; - } - this.dirty = true; - } - ,regenGraphic: function() { - if(this.textField == null || !this._regen) { - return; - } - var oldWidth = 0; - var oldHeight = 4; - if(this.graphic != null) { - oldWidth = this.graphic.width; - oldHeight = this.graphic.height; - } - var newWidth = this.textField.get_width(); - var newHeight = this.textField.get_textHeight() + 4; - if(this.textField.get_textHeight() == 0) { - newHeight = oldHeight; - } - if(oldWidth != newWidth || oldHeight != newHeight) { - this.set_height(newHeight); - var key = flixel_FlxG.bitmap.getUniqueKey("text"); - this.makeGraphic(newWidth | 0,newHeight | 0,0,false,key); - if(this._hasBorderAlpha) { - this._borderPixels = this.graphic.bitmap.clone(); - } - this.frameHeight = this.get_height() | 0; - this.textField.set_height(this.get_height() * 1.2); - this._flashRect.x = 0; - this._flashRect.y = 0; - this._flashRect.width = newWidth; - this._flashRect.height = newHeight; - } else { - this.graphic.bitmap.fillRect(this._flashRect,0); - if(this._hasBorderAlpha) { - if(this._borderPixels == null) { - this._borderPixels = new openfl_display_BitmapData(this.frameWidth,this.frameHeight,true); - } else { - this._borderPixels.fillRect(this._flashRect,0); - } - } - } - if(this.textField != null && this.textField.get_text() != null && this.textField.get_text().length > 0) { - this.copyTextFormat(this._defaultFormat,this._formatAdjusted); - this._matrix.identity(); - this.applyBorderStyle(); - if(!(!this._hasBorderAlpha)) { - if(this._borderColorTransform == null) { - this._borderColorTransform = new openfl_geom_ColorTransform(); - } - this._borderColorTransform.alphaMultiplier = (this.borderColor >> 24 & 255) / 255; - this._borderPixels.colorTransform(this._borderPixels.rect,this._borderColorTransform); - this.graphic.bitmap.draw(this._borderPixels); - } - this.applyFormats(this._formatAdjusted,false); - this.drawTextFieldTo(this.graphic.bitmap); - } - this._regen = false; - this.set_frame(this.frame); - } - ,drawTextFieldTo: function(graphic) { - graphic.draw(this.textField,this._matrix); - } - ,draw: function() { - this.regenGraphic(); - flixel_FlxSprite.prototype.draw.call(this); - } - ,calcFrame: function(RunOnCpp) { - if(RunOnCpp == null) { - RunOnCpp = false; - } - if(this.textField == null) { - return; - } - if(flixel_FlxG.renderTile && !RunOnCpp) { - return; - } - this.regenGraphic(); - flixel_FlxSprite.prototype.calcFrame.call(this,RunOnCpp); - } - ,applyBorderStyle: function() { - var iterations = this.borderSize * this.borderQuality | 0; - if(iterations <= 0) { - iterations = 1; - } - var delta = this.borderSize / iterations; - switch(this.borderStyle._hx_index) { - case 0: - break; - case 1: - this.applyFormats(this._formatAdjusted,true); - var _g = 0; - var _g1 = iterations; - while(_g < _g1) { - var i = _g++; - var graphic = this._hasBorderAlpha ? this._borderPixels : this.graphic.bitmap; - this._matrix.translate(delta,delta); - this.drawTextFieldTo(graphic); - } - this._matrix.translate(-this.shadowOffset.x * this.borderSize,-this.shadowOffset.y * this.borderSize); - break; - case 2: - this.applyFormats(this._formatAdjusted,true); - var curDelta = delta; - var _g2 = 0; - var _g11 = iterations; - while(_g2 < _g11) { - var i1 = _g2++; - var graphic1 = this._hasBorderAlpha ? this._borderPixels : this.graphic.bitmap; - this._matrix.translate(-curDelta,-curDelta); - this.drawTextFieldTo(graphic1); - var graphic2 = this._hasBorderAlpha ? this._borderPixels : this.graphic.bitmap; - this._matrix.translate(curDelta,0); - this.drawTextFieldTo(graphic2); - var graphic3 = this._hasBorderAlpha ? this._borderPixels : this.graphic.bitmap; - this._matrix.translate(curDelta,0); - this.drawTextFieldTo(graphic3); - var graphic4 = this._hasBorderAlpha ? this._borderPixels : this.graphic.bitmap; - this._matrix.translate(0,curDelta); - this.drawTextFieldTo(graphic4); - var graphic5 = this._hasBorderAlpha ? this._borderPixels : this.graphic.bitmap; - this._matrix.translate(0,curDelta); - this.drawTextFieldTo(graphic5); - var graphic6 = this._hasBorderAlpha ? this._borderPixels : this.graphic.bitmap; - this._matrix.translate(-curDelta,0); - this.drawTextFieldTo(graphic6); - var graphic7 = this._hasBorderAlpha ? this._borderPixels : this.graphic.bitmap; - this._matrix.translate(-curDelta,0); - this.drawTextFieldTo(graphic7); - var graphic8 = this._hasBorderAlpha ? this._borderPixels : this.graphic.bitmap; - this._matrix.translate(0,-curDelta); - this.drawTextFieldTo(graphic8); - this._matrix.translate(curDelta,0); - curDelta += delta; - } - break; - case 3: - this.applyFormats(this._formatAdjusted,true); - var curDelta1 = delta; - var _g3 = 0; - var _g12 = iterations; - while(_g3 < _g12) { - var i2 = _g3++; - var graphic9 = this._hasBorderAlpha ? this._borderPixels : this.graphic.bitmap; - this._matrix.translate(-curDelta1,-curDelta1); - this.drawTextFieldTo(graphic9); - var graphic10 = this._hasBorderAlpha ? this._borderPixels : this.graphic.bitmap; - this._matrix.translate(curDelta1 * 2,0); - this.drawTextFieldTo(graphic10); - var graphic11 = this._hasBorderAlpha ? this._borderPixels : this.graphic.bitmap; - this._matrix.translate(0,curDelta1 * 2); - this.drawTextFieldTo(graphic11); - var graphic12 = this._hasBorderAlpha ? this._borderPixels : this.graphic.bitmap; - this._matrix.translate(-curDelta1 * 2,0); - this.drawTextFieldTo(graphic12); - this._matrix.translate(curDelta1,-curDelta1); - curDelta1 += delta; - } - break; - } - } - ,applyBorderTransparency: function() { - if(!this._hasBorderAlpha) { - return; - } - if(this._borderColorTransform == null) { - this._borderColorTransform = new openfl_geom_ColorTransform(); - } - this._borderColorTransform.alphaMultiplier = (this.borderColor >> 24 & 255) / 255; - this._borderPixels.colorTransform(this._borderPixels.rect,this._borderColorTransform); - this.graphic.bitmap.draw(this._borderPixels); - } - ,copyTextWithOffset: function(x,y) { - var graphic = this._hasBorderAlpha ? this._borderPixels : this.graphic.bitmap; - this._matrix.translate(x,y); - this.drawTextFieldTo(graphic); - } - ,applyFormats: function(FormatAdjusted,UseBorderColor) { - if(UseBorderColor == null) { - UseBorderColor = false; - } - this.copyTextFormat(this._defaultFormat,FormatAdjusted,false); - FormatAdjusted.color = UseBorderColor ? this.borderColor & 16777215 : this._defaultFormat.color; - this.textField.setTextFormat(FormatAdjusted); - var _g = 0; - var _g1 = this._formatRanges; - while(_g < _g1.length) { - var formatRange = _g1[_g]; - ++_g; - if(this.textField.get_text().length - 1 < formatRange.range.start) { - break; - } else { - var textFormat = formatRange.format.format; - this.copyTextFormat(textFormat,FormatAdjusted,false); - FormatAdjusted.color = UseBorderColor ? formatRange.format.borderColor & 16777215 : textFormat.color; - } - this.textField.setTextFormat(FormatAdjusted,formatRange.range.start,Math.min(formatRange.range.end,this.textField.get_text().length) | 0); - } - } - ,copyTextFormat: function(from,to,withAlign) { - if(withAlign == null) { - withAlign = true; - } - to.font = from.font; - to.bold = from.bold; - to.italic = from.italic; - to.size = from.size; - to.color = from.color; - if(withAlign) { - to.align = from.align; - } - } - ,dtfCopy: function() { - var dtf = this.textField.get_defaultTextFormat(); - return new openfl_text_TextFormat(dtf.font,dtf.size,dtf.color,dtf.bold,dtf.italic,dtf.underline,dtf.url,dtf.target,dtf.align); - } - ,updateDefaultFormat: function() { - this.textField.set_defaultTextFormat(this._defaultFormat); - this.textField.setTextFormat(this._defaultFormat); - this._regen = true; - } - ,set_frames: function(Frames) { - flixel_FlxSprite.prototype.set_frames.call(this,Frames); - this._regen = false; - return Frames; - } - ,__class__: flixel_text_FlxText - ,__properties__: $extend(flixel_FlxSprite.prototype.__properties__,{set_autoSize:"set_autoSize",get_autoSize:"get_autoSize",set_fieldWidth:"set_fieldWidth",get_fieldWidth:"get_fieldWidth",set_borderQuality:"set_borderQuality",set_borderSize:"set_borderSize",set_borderColor:"set_borderColor",set_borderStyle:"set_borderStyle",set_alignment:"set_alignment",get_alignment:"get_alignment",set_wordWrap:"set_wordWrap",get_wordWrap:"get_wordWrap",set_italic:"set_italic",get_italic:"get_italic",set_bold:"set_bold",get_bold:"get_bold",set_systemFont:"set_systemFont",get_systemFont:"get_systemFont",get_embedded:"get_embedded",set_font:"set_font",get_font:"get_font",set_size:"set_size",get_size:"get_size",set_text:"set_text"}) -}); -var flixel_text_FlxTextFormat = function(FontColor,Bold,Italic,BorderColor) { - this.format = new openfl_text_TextFormat(null,null,FontColor,Bold,Italic); - this.borderColor = BorderColor == null ? 0 : BorderColor; -}; -$hxClasses["flixel.text.FlxTextFormat"] = flixel_text_FlxTextFormat; -flixel_text_FlxTextFormat.__name__ = "flixel.text.FlxTextFormat"; -flixel_text_FlxTextFormat.prototype = { - borderColor: null - ,format: null - ,__class__: flixel_text_FlxTextFormat -}; -var flixel_text__$FlxText_FlxTextFormatRange = function(format,start,end) { - this.range = new flixel_util_helpers_FlxRange(start,end); - this.format = format; -}; -$hxClasses["flixel.text._FlxText.FlxTextFormatRange"] = flixel_text__$FlxText_FlxTextFormatRange; -flixel_text__$FlxText_FlxTextFormatRange.__name__ = "flixel.text._FlxText.FlxTextFormatRange"; -flixel_text__$FlxText_FlxTextFormatRange.prototype = { - range: null - ,format: null - ,__class__: flixel_text__$FlxText_FlxTextFormatRange -}; -var flixel_text_FlxTextFormatMarkerPair = function(format,marker) { - this.format = format; - this.marker = marker; -}; -$hxClasses["flixel.text.FlxTextFormatMarkerPair"] = flixel_text_FlxTextFormatMarkerPair; -flixel_text_FlxTextFormatMarkerPair.__name__ = "flixel.text.FlxTextFormatMarkerPair"; -flixel_text_FlxTextFormatMarkerPair.prototype = { - format: null - ,marker: null - ,__class__: flixel_text_FlxTextFormatMarkerPair -}; -var flixel_text_FlxTextBorderStyle = $hxEnums["flixel.text.FlxTextBorderStyle"] = { __ename__ : "flixel.text.FlxTextBorderStyle", __constructs__ : ["NONE","SHADOW","OUTLINE","OUTLINE_FAST"] - ,NONE: {_hx_index:0,__enum__:"flixel.text.FlxTextBorderStyle",toString:$estr} - ,SHADOW: {_hx_index:1,__enum__:"flixel.text.FlxTextBorderStyle",toString:$estr} - ,OUTLINE: {_hx_index:2,__enum__:"flixel.text.FlxTextBorderStyle",toString:$estr} - ,OUTLINE_FAST: {_hx_index:3,__enum__:"flixel.text.FlxTextBorderStyle",toString:$estr} -}; -var flixel_text__$FlxText_FlxTextAlign_$Impl_$ = {}; -$hxClasses["flixel.text._FlxText.FlxTextAlign_Impl_"] = flixel_text__$FlxText_FlxTextAlign_$Impl_$; -flixel_text__$FlxText_FlxTextAlign_$Impl_$.__name__ = "flixel.text._FlxText.FlxTextAlign_Impl_"; -flixel_text__$FlxText_FlxTextAlign_$Impl_$.fromOpenFL = function(align) { - switch(align) { - case 0: - return "center"; - case 2: - return "justify"; - case 3: - return "left"; - case 4: - return "right"; - default: - return "left"; - } -}; -flixel_text__$FlxText_FlxTextAlign_$Impl_$.toOpenFL = function(align) { - switch(align) { - case "center": - return 0; - case "justify": - return 2; - case "left": - return 3; - case "right": - return 4; - default: - return 3; - } -}; -var flixel_tile_FlxBaseTilemap = function() { - this._collideIndex = 0; - this._drawIndex = 0; - this._startingIndex = 0; - this._tileObjects = []; - this.totalTiles = 0; - this.heightInTiles = 0; - this.widthInTiles = 0; - this.auto = flixel_tile_FlxTilemapAutoTiling.OFF; - flixel_FlxObject.call(this); - this.flixelType = 3; - this.set_immovable(true); - this.set_moves(false); -}; -$hxClasses["flixel.tile.FlxBaseTilemap"] = flixel_tile_FlxBaseTilemap; -flixel_tile_FlxBaseTilemap.__name__ = "flixel.tile.FlxBaseTilemap"; -flixel_tile_FlxBaseTilemap.__super__ = flixel_FlxObject; -flixel_tile_FlxBaseTilemap.prototype = $extend(flixel_FlxObject.prototype,{ - auto: null - ,widthInTiles: null - ,heightInTiles: null - ,totalTiles: null - ,customTileRemap: null - ,_randomIndices: null - ,_randomChoices: null - ,_randomLambda: null - ,_tileObjects: null - ,_startingIndex: null - ,_data: null - ,_drawIndex: null - ,_collideIndex: null - ,updateTile: function(Index) { - throw new js__$Boot_HaxeError("updateTile must be implemented"); - } - ,cacheGraphics: function(TileWidth,TileHeight,TileGraphic) { - throw new js__$Boot_HaxeError("cacheGraphics must be implemented"); - } - ,initTileObjects: function() { - throw new js__$Boot_HaxeError("initTileObjects must be implemented"); - } - ,updateMap: function() { - throw new js__$Boot_HaxeError("updateMap must be implemented"); - } - ,computeDimensions: function() { - throw new js__$Boot_HaxeError("computeDimensions must be implemented"); - } - ,getTileIndexByCoords: function(Coord) { - throw new js__$Boot_HaxeError("getTileIndexByCoords must be implemented"); - } - ,getTileCoordsByIndex: function(Index,Midpoint) { - if(Midpoint == null) { - Midpoint = true; - } - throw new js__$Boot_HaxeError("getTileCoordsByIndex must be implemented"); - } - ,ray: function(Start,End,Result,Resolution) { - if(Resolution == null) { - Resolution = 1; - } - throw new js__$Boot_HaxeError("ray must be implemented"); - } - ,overlapsWithCallback: function(Object1,Callback,FlipCallbackParams,Position) { - if(FlipCallbackParams == null) { - FlipCallbackParams = false; - } - throw new js__$Boot_HaxeError("overlapsWithCallback must be implemented"); - } - ,setDirty: function(Dirty) { - if(Dirty == null) { - Dirty = true; - } - throw new js__$Boot_HaxeError("setDirty must be implemented"); - } - ,destroy: function() { - this._data = null; - flixel_FlxObject.prototype.destroy.call(this); - } - ,loadMapFromCSV: function(MapData,TileGraphic,TileWidth,TileHeight,AutoTile,StartingIndex,DrawIndex,CollideIndex) { - if(CollideIndex == null) { - CollideIndex = 1; - } - if(DrawIndex == null) { - DrawIndex = 1; - } - if(StartingIndex == null) { - StartingIndex = 0; - } - if(TileHeight == null) { - TileHeight = 0; - } - if(TileWidth == null) { - TileWidth = 0; - } - if(openfl_utils_Assets.exists(MapData)) { - MapData = openfl_utils_Assets.getText(MapData); - } - this._data = []; - var columns; - var regex = new EReg("[ \t]*((\r\n)|\r|\n)[ \t]*","g"); - var lines = regex.split(MapData); - var _g = []; - var _g1 = 0; - var _g2 = lines; - while(_g1 < _g2.length) { - var v = _g2[_g1]; - ++_g1; - if(v != "") { - _g.push(v); - } - } - var rows = _g; - this.heightInTiles = rows.length; - this.widthInTiles = 0; - var row = 0; - while(row < this.heightInTiles) { - var rowString = rows[row]; - if(StringTools.endsWith(rowString,",")) { - rowString = HxOverrides.substr(rowString,0,rowString.length - 1); - } - columns = rowString.split(","); - if(columns.length == 0) { - this.heightInTiles--; - continue; - } - if(this.widthInTiles == 0) { - this.widthInTiles = columns.length; - } - var column = 0; - while(column < this.widthInTiles) { - var columnString = columns[column]; - var curTile = Std.parseInt(columnString); - if(curTile == null) { - throw new js__$Boot_HaxeError("String in row " + row + ", column " + column + " is not a valid integer: \"" + columnString + "\""); - } - if(curTile < 0) { - curTile = 0; - } - this._data.push(curTile); - ++column; - } - ++row; - } - this.loadMapHelper(TileGraphic,TileWidth,TileHeight,AutoTile,StartingIndex,DrawIndex,CollideIndex); - return this; - } - ,loadMapFromArray: function(MapData,WidthInTiles,HeightInTiles,TileGraphic,TileWidth,TileHeight,AutoTile,StartingIndex,DrawIndex,CollideIndex) { - if(CollideIndex == null) { - CollideIndex = 1; - } - if(DrawIndex == null) { - DrawIndex = 1; - } - if(StartingIndex == null) { - StartingIndex = 0; - } - if(TileHeight == null) { - TileHeight = 0; - } - if(TileWidth == null) { - TileWidth = 0; - } - this.widthInTiles = WidthInTiles; - this.heightInTiles = HeightInTiles; - this._data = MapData.slice(); - this.loadMapHelper(TileGraphic,TileWidth,TileHeight,AutoTile,StartingIndex,DrawIndex,CollideIndex); - return this; - } - ,loadMapFrom2DArray: function(MapData,TileGraphic,TileWidth,TileHeight,AutoTile,StartingIndex,DrawIndex,CollideIndex) { - if(CollideIndex == null) { - CollideIndex = 1; - } - if(DrawIndex == null) { - DrawIndex = 1; - } - if(StartingIndex == null) { - StartingIndex = 0; - } - if(TileHeight == null) { - TileHeight = 0; - } - if(TileWidth == null) { - TileWidth = 0; - } - this.widthInTiles = MapData[0].length; - this.heightInTiles = MapData.length; - this._data = flixel_util_FlxArrayUtil.flatten2DArray_Int(MapData); - this.loadMapHelper(TileGraphic,TileWidth,TileHeight,AutoTile,StartingIndex,DrawIndex,CollideIndex); - return this; - } - ,loadMapFromGraphic: function(MapGraphic,Invert,Scale,ColorMap,TileGraphic,TileWidth,TileHeight,AutoTile,StartingIndex,DrawIndex,CollideIndex) { - if(CollideIndex == null) { - CollideIndex = 1; - } - if(DrawIndex == null) { - DrawIndex = 1; - } - if(StartingIndex == null) { - StartingIndex = 0; - } - if(TileHeight == null) { - TileHeight = 0; - } - if(TileWidth == null) { - TileWidth = 0; - } - if(Scale == null) { - Scale = 1; - } - if(Invert == null) { - Invert = false; - } - var mapBitmap = flixel_system_FlxAssets.resolveBitmapData(MapGraphic); - var mapData = flixel_util_FlxStringUtil.bitmapToCSV(mapBitmap,Invert,Scale,ColorMap); - return this.loadMapFromCSV(mapData,TileGraphic,TileWidth,TileHeight,AutoTile,StartingIndex,DrawIndex,CollideIndex); - } - ,loadMapHelper: function(TileGraphic,TileWidth,TileHeight,AutoTile,StartingIndex,DrawIndex,CollideIndex) { - if(CollideIndex == null) { - CollideIndex = 1; - } - if(DrawIndex == null) { - DrawIndex = 1; - } - if(StartingIndex == null) { - StartingIndex = 0; - } - if(TileHeight == null) { - TileHeight = 0; - } - if(TileWidth == null) { - TileWidth = 0; - } - this.totalTiles = this._data.length; - this.auto = AutoTile == null ? flixel_tile_FlxTilemapAutoTiling.OFF : AutoTile; - this._startingIndex = StartingIndex <= 0 ? 0 : StartingIndex; - if(this.auto != flixel_tile_FlxTilemapAutoTiling.OFF) { - this._startingIndex = 1; - DrawIndex = 1; - CollideIndex = 1; - } - this._drawIndex = DrawIndex; - this._collideIndex = CollideIndex; - this.applyAutoTile(); - this.applyCustomRemap(); - this.randomizeIndices(); - this.cacheGraphics(TileWidth,TileHeight,TileGraphic); - this.postGraphicLoad(); - } - ,postGraphicLoad: function() { - this.initTileObjects(); - this.computeDimensions(); - this.updateMap(); - } - ,applyAutoTile: function() { - if(this.auto != flixel_tile_FlxTilemapAutoTiling.OFF) { - var i = 0; - while(i < this.totalTiles) this.autoTile(i++); - } - } - ,applyCustomRemap: function() { - var i = 0; - if(this.customTileRemap != null) { - while(i < this.totalTiles) { - var oldIndex = this._data[i]; - var newIndex = oldIndex; - if(oldIndex < this.customTileRemap.length) { - newIndex = this.customTileRemap[oldIndex]; - } - this._data[i] = newIndex; - ++i; - } - } - } - ,randomizeIndices: function() { - var i = 0; - if(this._randomIndices != null) { - var randLambda = this._randomLambda != null ? this._randomLambda : function() { - return flixel_FlxG.random.float(); - }; - while(i < this.totalTiles) { - var oldIndex = this._data[i]; - var j = 0; - var newIndex = oldIndex; - var _g = 0; - var _g1 = this._randomIndices; - while(_g < _g1.length) { - var rand = _g1[_g]; - ++_g; - if(oldIndex == rand) { - var k = randLambda() * this._randomChoices[j].length | 0; - newIndex = this._randomChoices[j][k]; - } - ++j; - } - this._data[i] = newIndex; - ++i; - } - } - } - ,autoTile: function(Index) { - if(this._data[Index] == 0) { - return; - } - if(this.auto == flixel_tile_FlxTilemapAutoTiling.FULL) { - this.autoTileFull(Index); - return; - } - this._data[Index] = 0; - if(Index - this.widthInTiles < 0 || this._data[Index - this.widthInTiles] > 0) { - this._data[Index] += 1; - } - if(Index % this.widthInTiles >= this.widthInTiles - 1 || this._data[Index + 1] > 0) { - this._data[Index] += 2; - } - if((Index + this.widthInTiles | 0) >= this.totalTiles || this._data[Index + this.widthInTiles] > 0) { - this._data[Index] += 4; - } - if(Index % this.widthInTiles <= 0 || this._data[Index - 1] > 0) { - this._data[Index] += 8; - } - if(this.auto == flixel_tile_FlxTilemapAutoTiling.ALT && this._data[Index] == 15) { - if(Index % this.widthInTiles > 0 && (Index + this.widthInTiles | 0) < this.totalTiles && this._data[Index + this.widthInTiles - 1] <= 0) { - this._data[Index] = 1; - } - if(Index % this.widthInTiles > 0 && Index - this.widthInTiles >= 0 && this._data[Index - this.widthInTiles - 1] <= 0) { - this._data[Index] = 2; - } - if(Index % this.widthInTiles < this.widthInTiles - 1 && Index - this.widthInTiles >= 0 && this._data[Index - this.widthInTiles + 1] <= 0) { - this._data[Index] = 4; - } - if(Index % this.widthInTiles < this.widthInTiles - 1 && (Index + this.widthInTiles | 0) < this.totalTiles && this._data[Index + this.widthInTiles + 1] <= 0) { - this._data[Index] = 8; - } - } - this._data[Index] += 1; - } - ,autoTileFull: function(Index) { - this._data[Index] = 0; - var wallUp = Index - this.widthInTiles < 0; - var wallRight = Index % this.widthInTiles >= this.widthInTiles - 1; - var wallDown = (Index + this.widthInTiles | 0) >= this.totalTiles; - var wallLeft = Index % this.widthInTiles <= 0; - var up = wallUp || this._data[Index - this.widthInTiles] > 0; - var upRight = wallUp || wallRight || this._data[Index - this.widthInTiles + 1] > 0; - var right = wallRight || this._data[Index + 1] > 0; - var rightDown = wallRight || wallDown || this._data[Index + this.widthInTiles + 1] > 0; - var down = wallDown || this._data[Index + this.widthInTiles] > 0; - var downLeft = wallDown || wallLeft || this._data[Index + this.widthInTiles - 1] > 0; - var left = wallLeft || this._data[Index - 1] > 0; - var leftUp = wallLeft || wallUp || this._data[Index - this.widthInTiles - 1] > 0; - if(up) { - this._data[Index] += 1; - } - if(upRight && up && right) { - this._data[Index] += 2; - } - if(right) { - this._data[Index] += 4; - } - if(rightDown && right && down) { - this._data[Index] += 8; - } - if(down) { - this._data[Index] += 16; - } - if(downLeft && down && left) { - this._data[Index] += 32; - } - if(left) { - this._data[Index] += 64; - } - if(leftUp && left && up) { - this._data[Index] += 128; - } - this._data[Index] -= flixel_tile_FlxBaseTilemap.offsetAutoTile[this._data[Index]] - 1; - } - ,setCustomTileMappings: function(mappings,randomIndices,randomChoices,randomLambda) { - this.customTileRemap = mappings; - this._randomIndices = randomIndices; - this._randomChoices = randomChoices; - this._randomLambda = randomLambda; - if(this._randomIndices != null && (this._randomChoices == null || this._randomChoices.length == 0)) { - throw new js__$Boot_HaxeError("You must provide valid 'randomChoices' if you wish to randomize tilemap indices, please read documentation of 'setCustomTileMappings' function."); - } - } - ,getTile: function(X,Y) { - return this._data[Y * this.widthInTiles + X]; - } - ,getTileByIndex: function(Index) { - return this._data[Index]; - } - ,getTileCollisions: function(Index) { - return this._tileObjects[Index].allowCollisions; - } - ,getTileInstances: function(Index) { - var array = null; - var i = 0; - var l = this.widthInTiles * this.heightInTiles; - while(i < l) { - if(this._data[i] == Index) { - if(array == null) { - array = []; - } - array.push(i); - } - ++i; - } - return array; - } - ,setTile: function(X,Y,Tile,UpdateGraphics) { - if(UpdateGraphics == null) { - UpdateGraphics = true; - } - if(X >= this.widthInTiles || Y >= this.heightInTiles) { - return false; - } - return this.setTileByIndex(Y * this.widthInTiles + X,Tile,UpdateGraphics); - } - ,setTileByIndex: function(Index,Tile,UpdateGraphics) { - if(UpdateGraphics == null) { - UpdateGraphics = true; - } - if(Index >= this._data.length) { - return false; - } - var ok = true; - this._data[Index] = Tile; - if(!UpdateGraphics) { - return ok; - } - this.setDirty(); - if(this.auto == flixel_tile_FlxTilemapAutoTiling.OFF) { - this.updateTile(this._data[Index]); - return ok; - } - var i; - var row = (Index / this.widthInTiles | 0) - 1; - var rowLength = row + 3; - var column = Index % this.widthInTiles - 1; - var columnHeight = column + 3; - while(row < rowLength) { - column = columnHeight - 3; - while(column < columnHeight) { - if(row >= 0 && row < this.heightInTiles && column >= 0 && column < this.widthInTiles) { - i = row * this.widthInTiles + column; - this.autoTile(i); - this.updateTile(this._data[i]); - } - ++column; - } - ++row; - } - return ok; - } - ,setTileProperties: function(Tile,AllowCollisions,Callback,CallbackFilter,Range1) { - if(Range1 == null) { - Range1 = 1; - } - if(AllowCollisions == null) { - AllowCollisions = 4369; - } - if(Range1 <= 0) { - Range1 = 1; - } - var tile; - var i = Tile; - var l = Tile + Range1; - var maxIndex = this._tileObjects.length; - if(l > maxIndex) { - throw new js__$Boot_HaxeError("Index " + l + " exceeds the maximum tile index of " + maxIndex + ". Please verify the Tile (" + Tile + ") and Range (" + Range1 + ") parameters."); - } - while(i < l) { - tile = this._tileObjects[i++]; - tile.set_allowCollisions(AllowCollisions); - tile.callbackFunction = Callback; - tile.filter = CallbackFilter; - } - } - ,getData: function(Simple) { - if(Simple == null) { - Simple = false; - } - if(!Simple) { - return this._data; - } - var i = 0; - var l = this._data.length; - var data = []; - flixel_util_FlxArrayUtil.setLength_Int(data,l); - while(i < l) { - data[i] = this._tileObjects[this._data[i]].allowCollisions > 0 ? 1 : 0; - ++i; - } - return data; - } - ,findPath: function(Start,End,Simplify,RaySimplify,DiagonalPolicy) { - if(DiagonalPolicy == null) { - DiagonalPolicy = 2; - } - if(RaySimplify == null) { - RaySimplify = false; - } - if(Simplify == null) { - Simplify = true; - } - var startIndex = this.getTileIndexByCoords(Start); - var endIndex = this.getTileIndexByCoords(End); - if(startIndex < 0 || endIndex < 0) { - return null; - } - if(this._tileObjects[this._data[startIndex]].allowCollisions > 0 || this._tileObjects[this._data[endIndex]].allowCollisions > 0) { - return null; - } - var distances = this.computePathDistance(startIndex,endIndex,DiagonalPolicy); - if(distances == null) { - return null; - } - var points = []; - this.walkPath(distances,endIndex,points); - var node = points[points.length - 1]; - node.set_x(Start.x); - node.set_y(Start.y); - if(Start._weak) { - Start.put(); - } - node = points[0]; - node.set_x(End.x); - node.set_y(End.y); - if(End._weak) { - End.put(); - } - if(Simplify) { - this.simplifyPath(points); - } - if(RaySimplify) { - this.raySimplifyPath(points); - } - var path = []; - var i = points.length - 1; - while(i >= 0) { - node = points[i--]; - if(node != null) { - path.push(node); - } - } - return path; - } - ,computePathDistance: function(StartIndex,EndIndex,DiagonalPolicy,StopOnEnd) { - if(StopOnEnd == null) { - StopOnEnd = true; - } - var mapSize = this.widthInTiles * this.heightInTiles; - var distances = []; - flixel_util_FlxArrayUtil.setLength_Int(distances,mapSize); - var i = 0; - while(i < mapSize) { - if(this._tileObjects[this._data[i]].allowCollisions != 0) { - distances[i] = -2; - } else { - distances[i] = -1; - } - ++i; - } - distances[StartIndex] = 0; - var distance = 1; - var neighbors = [StartIndex]; - var current; - var currentIndex; - var left; - var right; - var up; - var down; - var currentLength; - var foundEnd = false; - while(neighbors.length > 0) { - current = neighbors; - neighbors = []; - i = 0; - currentLength = current.length; - while(i < currentLength) { - currentIndex = current[i++]; - if(currentIndex == (EndIndex | 0)) { - foundEnd = true; - if(StopOnEnd) { - neighbors = []; - break; - } - } - left = currentIndex % this.widthInTiles > 0; - right = currentIndex % this.widthInTiles < this.widthInTiles - 1; - up = currentIndex / this.widthInTiles > 0; - down = currentIndex / this.widthInTiles < this.heightInTiles - 1; - var index; - if(up) { - index = currentIndex - this.widthInTiles; - if(distances[index] == -1) { - distances[index] = distance; - neighbors.push(index); - } - } - if(right) { - index = currentIndex + 1; - if(distances[index] == -1) { - distances[index] = distance; - neighbors.push(index); - } - } - if(down) { - index = currentIndex + this.widthInTiles; - if(distances[index] == -1) { - distances[index] = distance; - neighbors.push(index); - } - } - if(left) { - index = currentIndex - 1; - if(distances[index] == -1) { - distances[index] = distance; - neighbors.push(index); - } - } - if(DiagonalPolicy != 0) { - var wideDiagonal = DiagonalPolicy == 2; - if(up && right) { - index = currentIndex - this.widthInTiles + 1; - if(wideDiagonal && distances[index] == -1 && distances[currentIndex - this.widthInTiles] >= -1 && distances[currentIndex + 1] >= -1) { - distances[index] = distance; - neighbors.push(index); - } else if(!wideDiagonal && distances[index] == -1) { - distances[index] = distance; - neighbors.push(index); - } - } - if(right && down) { - index = currentIndex + this.widthInTiles + 1; - if(wideDiagonal && distances[index] == -1 && distances[currentIndex + this.widthInTiles] >= -1 && distances[currentIndex + 1] >= -1) { - distances[index] = distance; - neighbors.push(index); - } else if(!wideDiagonal && distances[index] == -1) { - distances[index] = distance; - neighbors.push(index); - } - } - if(left && down) { - index = currentIndex + this.widthInTiles - 1; - if(wideDiagonal && distances[index] == -1 && distances[currentIndex + this.widthInTiles] >= -1 && distances[currentIndex - 1] >= -1) { - distances[index] = distance; - neighbors.push(index); - } else if(!wideDiagonal && distances[index] == -1) { - distances[index] = distance; - neighbors.push(index); - } - } - if(up && left) { - index = currentIndex - this.widthInTiles - 1; - if(wideDiagonal && distances[index] == -1 && distances[currentIndex - this.widthInTiles] >= -1 && distances[currentIndex - 1] >= -1) { - distances[index] = distance; - neighbors.push(index); - } else if(!wideDiagonal && distances[index] == -1) { - distances[index] = distance; - neighbors.push(index); - } - } - } - } - ++distance; - } - if(!foundEnd) { - distances = null; - } - return distances; - } - ,walkPath: function(Data,Start,Points) { - Points.push(this.getTileCoordsByIndex(Start)); - if(Data[Start] == 0) { - return; - } - var left = Start % this.widthInTiles > 0; - var right = Start % this.widthInTiles < this.widthInTiles - 1; - var up = Start / this.widthInTiles > 0; - var down = Start / this.widthInTiles < this.heightInTiles - 1; - var current = Data[Start]; - var i; - if(up) { - i = Start - this.widthInTiles; - if(i >= 0 && Data[i] >= 0 && Data[i] < current) { - this.walkPath(Data,i,Points); - return; - } - } - if(right) { - i = Start + 1; - if(i >= 0 && Data[i] >= 0 && Data[i] < current) { - this.walkPath(Data,i,Points); - return; - } - } - if(down) { - i = Start + this.widthInTiles; - if(i >= 0 && Data[i] >= 0 && Data[i] < current) { - this.walkPath(Data,i,Points); - return; - } - } - if(left) { - i = Start - 1; - if(i >= 0 && Data[i] >= 0 && Data[i] < current) { - this.walkPath(Data,i,Points); - return; - } - } - if(up && right) { - i = Start - this.widthInTiles + 1; - if(i >= 0 && Data[i] >= 0 && Data[i] < current) { - this.walkPath(Data,i,Points); - return; - } - } - if(right && down) { - i = Start + this.widthInTiles + 1; - if(i >= 0 && Data[i] >= 0 && Data[i] < current) { - this.walkPath(Data,i,Points); - return; - } - } - if(left && down) { - i = Start + this.widthInTiles - 1; - if(i >= 0 && Data[i] >= 0 && Data[i] < current) { - this.walkPath(Data,i,Points); - return; - } - } - if(up && left) { - i = Start - this.widthInTiles - 1; - if(i >= 0 && Data[i] >= 0 && Data[i] < current) { - this.walkPath(Data,i,Points); - return; - } - } - return; - } - ,simplifyPath: function(Points) { - var deltaPrevious; - var deltaNext; - var last = Points[0]; - var node; - var i = 1; - var l = Points.length - 1; - while(i < l) { - node = Points[i]; - deltaPrevious = (node.x - last.x) / (node.y - last.y); - deltaNext = (node.x - Points[i + 1].x) / (node.y - Points[i + 1].y); - if(last.x == Points[i + 1].x || last.y == Points[i + 1].y || deltaPrevious == deltaNext) { - Points[i] = null; - } else { - last = node; - } - ++i; - } - } - ,raySimplifyPath: function(Points) { - var source = Points[0]; - var lastIndex = -1; - var node; - var i = 1; - var l = Points.length; - while(i < l) { - node = Points[i++]; - if(node == null) { - continue; - } - if(this.ray(source,node,this._point)) { - if(lastIndex >= 0) { - Points[lastIndex] = null; - } - } else { - source = Points[lastIndex]; - } - lastIndex = i - 1; - } - } - ,overlaps: function(ObjectOrGroup,InScreenSpace,Camera) { - if(InScreenSpace == null) { - InScreenSpace = false; - } - var group = flixel_group_FlxTypedGroup.resolveGroup(ObjectOrGroup); - if(group != null) { - return flixel_group_FlxTypedGroup.overlaps($bind(this,this.tilemapOverlapsCallback),group,0,0,InScreenSpace,Camera); - } else if(ObjectOrGroup.flixelType == 1 || ObjectOrGroup.flixelType == 3 ? this.overlapsWithCallback(ObjectOrGroup) : this.overlaps(ObjectOrGroup,false,null)) { - return true; - } - return false; - } - ,tilemapOverlapsCallback: function(ObjectOrGroup,X,Y,InScreenSpace,Camera) { - if(InScreenSpace == null) { - InScreenSpace = false; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - if(ObjectOrGroup.flixelType == 1 || ObjectOrGroup.flixelType == 3) { - return this.overlapsWithCallback(ObjectOrGroup); - } else { - return this.overlaps(ObjectOrGroup,InScreenSpace,Camera); - } - } - ,overlapsAt: function(X,Y,ObjectOrGroup,InScreenSpace,Camera) { - if(InScreenSpace == null) { - InScreenSpace = false; - } - var group = flixel_group_FlxTypedGroup.resolveGroup(ObjectOrGroup); - if(group != null) { - return flixel_group_FlxTypedGroup.overlaps($bind(this,this.tilemapOverlapsAtCallback),group,X,Y,InScreenSpace,Camera); - } else if(ObjectOrGroup.flixelType == 1 || ObjectOrGroup.flixelType == 3 ? this.overlapsWithCallback(ObjectOrGroup,null,false,this._point.set(X,Y)) : this.overlapsAt(X,Y,ObjectOrGroup,InScreenSpace,Camera)) { - return true; - } - return false; - } - ,tilemapOverlapsAtCallback: function(ObjectOrGroup,X,Y,InScreenSpace,Camera) { - if(ObjectOrGroup.flixelType == 1 || ObjectOrGroup.flixelType == 3) { - return this.overlapsWithCallback(ObjectOrGroup,null,false,this._point.set(X,Y)); - } else { - return this.overlapsAt(X,Y,ObjectOrGroup,InScreenSpace,Camera); - } - } - ,overlapsPoint: function(WorldPoint,InScreenSpace,Camera) { - if(InScreenSpace == null) { - InScreenSpace = false; - } - if(InScreenSpace) { - if(Camera == null) { - Camera = flixel_FlxG.camera; - } - WorldPoint.subtractPoint(Camera.scroll); - if(WorldPoint._weak) { - WorldPoint.put(); - } - } - return this.tileAtPointAllowsCollisions(WorldPoint); - } - ,tileAtPointAllowsCollisions: function(point) { - var tileIndex = this.getTileIndexByCoords(point); - if(tileIndex < 0 || tileIndex >= this._data.length) { - return false; - } - return this._tileObjects[this._data[tileIndex]].allowCollisions > 0; - } - ,getBounds: function(Bounds) { - if(Bounds == null) { - var _this = flixel_math_FlxRect._pool.get(); - var X = 0; - var Y = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - var rect = _this; - rect._inPool = false; - Bounds = rect; - } - var X1 = this.x; - var Y1 = this.y; - var Width1 = this.get_width(); - var Height1 = this.get_height(); - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - Bounds.x = X1; - Bounds.y = Y1; - Bounds.width = Width1; - Bounds.height = Height1; - return Bounds; - } - ,__class__: flixel_tile_FlxBaseTilemap -}); -var flixel_tile_FlxTilemapAutoTiling = $hxEnums["flixel.tile.FlxTilemapAutoTiling"] = { __ename__ : "flixel.tile.FlxTilemapAutoTiling", __constructs__ : ["OFF","AUTO","ALT","FULL"] - ,OFF: {_hx_index:0,__enum__:"flixel.tile.FlxTilemapAutoTiling",toString:$estr} - ,AUTO: {_hx_index:1,__enum__:"flixel.tile.FlxTilemapAutoTiling",toString:$estr} - ,ALT: {_hx_index:2,__enum__:"flixel.tile.FlxTilemapAutoTiling",toString:$estr} - ,FULL: {_hx_index:3,__enum__:"flixel.tile.FlxTilemapAutoTiling",toString:$estr} -}; -var flixel_tile_FlxTileblock = function(X,Y,Width,Height) { - flixel_FlxSprite.call(this,X,Y); - this.makeGraphic(Width,Height,0,true); - this.set_active(false); - this.set_immovable(true); - this.set_moves(false); -}; -$hxClasses["flixel.tile.FlxTileblock"] = flixel_tile_FlxTileblock; -flixel_tile_FlxTileblock.__name__ = "flixel.tile.FlxTileblock"; -flixel_tile_FlxTileblock.__super__ = flixel_FlxSprite; -flixel_tile_FlxTileblock.prototype = $extend(flixel_FlxSprite.prototype,{ - tileSprite: null - ,destroy: function() { - this.tileSprite = flixel_util_FlxDestroyUtil.destroy(this.tileSprite); - flixel_FlxSprite.prototype.destroy.call(this); - } - ,loadFrames: function(tileFrames,empties) { - if(empties == null) { - empties = 0; - } - if(tileFrames == null) { - return this; - } - this.tileSprite = this.tileSprite == null ? new flixel_FlxSprite() : this.tileSprite; - this.tileSprite.set_frames(tileFrames); - var spriteWidth = this.tileSprite.get_width() | 0; - var spriteHeight = this.tileSprite.get_height() | 0; - var total = this.tileSprite.numFrames + empties; - var regen = false; - if(this.get_width() % this.tileSprite.get_width() != 0) { - this.set_width((this.get_width() / spriteWidth + 1 | 0) * spriteWidth); - regen = true; - } - if(this.get_height() % this.tileSprite.get_height() != 0) { - this.set_height((this.get_height() / spriteHeight + 1 | 0) * spriteHeight); - regen = true; - } - if(regen) { - this.makeGraphic(this.get_width() | 0,this.get_height() | 0,0,true); - } else { - flixel_util_FlxSpriteUtil.fill(this,0); - } - var row = 0; - var column; - var destinationX; - var destinationY = 0; - var widthInTiles = this.get_width() / spriteWidth | 0; - var heightInTiles = this.get_height() / spriteHeight | 0; - while(row < heightInTiles) { - destinationX = 0; - column = 0; - while(column < widthInTiles) { - if(flixel_FlxG.random.float() * total > empties) { - this.tileSprite.animation.randomFrame(); - this.tileSprite.drawFrame(); - this.stamp(this.tileSprite,destinationX,destinationY); - } - destinationX += spriteWidth; - ++column; - } - destinationY += spriteHeight; - ++row; - } - this.dirty = true; - return this; - } - ,loadTiles: function(TileGraphic,TileWidth,TileHeight,Empties) { - if(Empties == null) { - Empties = 0; - } - if(TileHeight == null) { - TileHeight = 0; - } - if(TileWidth == null) { - TileWidth = 0; - } - if(TileGraphic == null) { - return this; - } - var graph = flixel_FlxG.bitmap.add(TileGraphic); - if(graph == null) { - return this; - } - if(TileWidth == 0) { - TileWidth = graph.height; - TileWidth = TileWidth > graph.width ? graph.width : TileWidth; - } - if(TileHeight == 0) { - TileHeight = TileWidth; - TileHeight = TileHeight > graph.height ? graph.height : TileHeight; - } - var X = TileWidth; - var Y = TileHeight; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - var tileFrames = flixel_graphics_frames_FlxTileFrames.fromGraphic(graph,point); - return this.loadFrames(tileFrames,Empties); - } - ,setTile: function(x,y,index) { - this.tileSprite.animation.set_frameIndex(index); - this.stamp(this.tileSprite,x * (this.tileSprite.get_width() | 0),y * (this.tileSprite.get_height() | 0)); - this.dirty = true; - } - ,__class__: flixel_tile_FlxTileblock -}); -var flixel_tweens_FlxEase = function() { }; -$hxClasses["flixel.tweens.FlxEase"] = flixel_tweens_FlxEase; -flixel_tweens_FlxEase.__name__ = "flixel.tweens.FlxEase"; -flixel_tweens_FlxEase.linear = function(t) { - return t; -}; -flixel_tweens_FlxEase.quadIn = function(t) { - return t * t; -}; -flixel_tweens_FlxEase.quadOut = function(t) { - return -t * (t - 2); -}; -flixel_tweens_FlxEase.quadInOut = function(t) { - if(t <= .5) { - return t * t * 2; - } else { - return 1 - --t * t * 2; - } -}; -flixel_tweens_FlxEase.cubeIn = function(t) { - return t * t * t; -}; -flixel_tweens_FlxEase.cubeOut = function(t) { - return 1 + --t * t * t; -}; -flixel_tweens_FlxEase.cubeInOut = function(t) { - if(t <= .5) { - return t * t * t * 4; - } else { - return 1 + --t * t * t * 4; - } -}; -flixel_tweens_FlxEase.quartIn = function(t) { - return t * t * t * t; -}; -flixel_tweens_FlxEase.quartOut = function(t) { - return 1 - --t * t * t * t; -}; -flixel_tweens_FlxEase.quartInOut = function(t) { - if(t <= .5) { - return t * t * t * t * 8; - } else { - t = t * 2 - 2; - return (1 - t * t * t * t) / 2 + .5; - } -}; -flixel_tweens_FlxEase.quintIn = function(t) { - return t * t * t * t * t; -}; -flixel_tweens_FlxEase.quintOut = function(t) { - return --t * t * t * t * t + 1; -}; -flixel_tweens_FlxEase.quintInOut = function(t) { - if((t *= 2) < 1) { - return t * t * t * t * t / 2; - } else { - return ((t -= 2) * t * t * t * t + 2) / 2; - } -}; -flixel_tweens_FlxEase.smoothStepIn = function(t) { - var t1 = t / 2; - return 2 * (t1 * t1 * (t1 * -2 + 3)); -}; -flixel_tweens_FlxEase.smoothStepOut = function(t) { - var t1 = t / 2 + 0.5; - return 2 * (t1 * t1 * (t1 * -2 + 3)) - 1; -}; -flixel_tweens_FlxEase.smoothStepInOut = function(t) { - return t * t * (t * -2 + 3); -}; -flixel_tweens_FlxEase.smootherStepIn = function(t) { - var t1 = t / 2; - return 2 * (t1 * t1 * t1 * (t1 * (t1 * 6 - 15) + 10)); -}; -flixel_tweens_FlxEase.smootherStepOut = function(t) { - var t1 = t / 2 + 0.5; - return 2 * (t1 * t1 * t1 * (t1 * (t1 * 6 - 15) + 10)) - 1; -}; -flixel_tweens_FlxEase.smootherStepInOut = function(t) { - return t * t * t * (t * (t * 6 - 15) + 10); -}; -flixel_tweens_FlxEase.sineIn = function(t) { - return -Math.cos(flixel_tweens_FlxEase.PI2 * t) + 1; -}; -flixel_tweens_FlxEase.sineOut = function(t) { - return Math.sin(flixel_tweens_FlxEase.PI2 * t); -}; -flixel_tweens_FlxEase.sineInOut = function(t) { - return -Math.cos(Math.PI * t) / 2 + .5; -}; -flixel_tweens_FlxEase.bounceIn = function(t) { - t = 1 - t; - if(t < flixel_tweens_FlxEase.B1) { - return 1 - 7.5625 * t * t; - } - if(t < flixel_tweens_FlxEase.B2) { - return 1 - (7.5625 * (t - flixel_tweens_FlxEase.B3) * (t - flixel_tweens_FlxEase.B3) + .75); - } - if(t < flixel_tweens_FlxEase.B4) { - return 1 - (7.5625 * (t - flixel_tweens_FlxEase.B5) * (t - flixel_tweens_FlxEase.B5) + .9375); - } - return 1 - (7.5625 * (t - flixel_tweens_FlxEase.B6) * (t - flixel_tweens_FlxEase.B6) + .984375); -}; -flixel_tweens_FlxEase.bounceOut = function(t) { - if(t < flixel_tweens_FlxEase.B1) { - return 7.5625 * t * t; - } - if(t < flixel_tweens_FlxEase.B2) { - return 7.5625 * (t - flixel_tweens_FlxEase.B3) * (t - flixel_tweens_FlxEase.B3) + .75; - } - if(t < flixel_tweens_FlxEase.B4) { - return 7.5625 * (t - flixel_tweens_FlxEase.B5) * (t - flixel_tweens_FlxEase.B5) + .9375; - } - return 7.5625 * (t - flixel_tweens_FlxEase.B6) * (t - flixel_tweens_FlxEase.B6) + .984375; -}; -flixel_tweens_FlxEase.bounceInOut = function(t) { - if(t < .5) { - t = 1 - t * 2; - if(t < flixel_tweens_FlxEase.B1) { - return (1 - 7.5625 * t * t) / 2; - } - if(t < flixel_tweens_FlxEase.B2) { - return (1 - (7.5625 * (t - flixel_tweens_FlxEase.B3) * (t - flixel_tweens_FlxEase.B3) + .75)) / 2; - } - if(t < flixel_tweens_FlxEase.B4) { - return (1 - (7.5625 * (t - flixel_tweens_FlxEase.B5) * (t - flixel_tweens_FlxEase.B5) + .9375)) / 2; - } - return (1 - (7.5625 * (t - flixel_tweens_FlxEase.B6) * (t - flixel_tweens_FlxEase.B6) + .984375)) / 2; - } - t = t * 2 - 1; - if(t < flixel_tweens_FlxEase.B1) { - return 7.5625 * t * t / 2 + .5; - } - if(t < flixel_tweens_FlxEase.B2) { - return (7.5625 * (t - flixel_tweens_FlxEase.B3) * (t - flixel_tweens_FlxEase.B3) + .75) / 2 + .5; - } - if(t < flixel_tweens_FlxEase.B4) { - return (7.5625 * (t - flixel_tweens_FlxEase.B5) * (t - flixel_tweens_FlxEase.B5) + .9375) / 2 + .5; - } - return (7.5625 * (t - flixel_tweens_FlxEase.B6) * (t - flixel_tweens_FlxEase.B6) + .984375) / 2 + .5; -}; -flixel_tweens_FlxEase.circIn = function(t) { - return -(Math.sqrt(1 - t * t) - 1); -}; -flixel_tweens_FlxEase.circOut = function(t) { - return Math.sqrt(1 - (t - 1) * (t - 1)); -}; -flixel_tweens_FlxEase.circInOut = function(t) { - if(t <= .5) { - return (Math.sqrt(1 - t * t * 4) - 1) / -2; - } else { - return (Math.sqrt(1 - (t * 2 - 2) * (t * 2 - 2)) + 1) / 2; - } -}; -flixel_tweens_FlxEase.expoIn = function(t) { - return Math.pow(2,10 * (t - 1)); -}; -flixel_tweens_FlxEase.expoOut = function(t) { - return -Math.pow(2,-10 * t) + 1; -}; -flixel_tweens_FlxEase.expoInOut = function(t) { - if(t < .5) { - return Math.pow(2,10 * (t * 2 - 1)) / 2; - } else { - return (-Math.pow(2,-10 * (t * 2 - 1)) + 2) / 2; - } -}; -flixel_tweens_FlxEase.backIn = function(t) { - return t * t * (2.70158 * t - 1.70158); -}; -flixel_tweens_FlxEase.backOut = function(t) { - return 1 - --t * t * (-2.70158 * t - 1.70158); -}; -flixel_tweens_FlxEase.backInOut = function(t) { - t *= 2; - if(t < 1) { - return t * t * (2.70158 * t - 1.70158) / 2; - } - --t; - return (1 - --t * t * (-2.70158 * t - 1.70158)) / 2 + .5; -}; -flixel_tweens_FlxEase.elasticIn = function(t) { - return -(flixel_tweens_FlxEase.ELASTIC_AMPLITUDE * Math.pow(2,10 * --t) * Math.sin((t - flixel_tweens_FlxEase.ELASTIC_PERIOD / (2 * Math.PI) * Math.asin(1 / flixel_tweens_FlxEase.ELASTIC_AMPLITUDE)) * (2 * Math.PI) / flixel_tweens_FlxEase.ELASTIC_PERIOD)); -}; -flixel_tweens_FlxEase.elasticOut = function(t) { - return flixel_tweens_FlxEase.ELASTIC_AMPLITUDE * Math.pow(2,-10 * t) * Math.sin((t - flixel_tweens_FlxEase.ELASTIC_PERIOD / (2 * Math.PI) * Math.asin(1 / flixel_tweens_FlxEase.ELASTIC_AMPLITUDE)) * (2 * Math.PI) / flixel_tweens_FlxEase.ELASTIC_PERIOD) + 1; -}; -flixel_tweens_FlxEase.elasticInOut = function(t) { - if(t < 0.5) { - return -0.5 * (Math.pow(2,10 * (t -= 0.5)) * Math.sin((t - flixel_tweens_FlxEase.ELASTIC_PERIOD / 4) * (2 * Math.PI) / flixel_tweens_FlxEase.ELASTIC_PERIOD)); - } - return Math.pow(2,-10 * (t -= 0.5)) * Math.sin((t - flixel_tweens_FlxEase.ELASTIC_PERIOD / 4) * (2 * Math.PI) / flixel_tweens_FlxEase.ELASTIC_PERIOD) * 0.5 + 1; -}; -var flixel_tweens_FlxTween = function(Options,manager) { - this._waitingForRestart = false; - this._running = false; - this._delayToUse = 0; - this._secondsSinceStart = 0; - this.loopDelay = 0; - this.startDelay = 0; - this.executions = 0; - this.scale = 0; - this.duration = 0; - this.active = false; - Options = this.resolveTweenOptions(Options); - this.set_type(Options.type); - this.onStart = Options.onStart; - this.onUpdate = Options.onUpdate; - this.onComplete = Options.onComplete; - this.ease = Options.ease; - this.setDelays(Options.startDelay,Options.loopDelay); - this.manager = manager != null ? manager : flixel_tweens_FlxTween.globalManager; -}; -$hxClasses["flixel.tweens.FlxTween"] = flixel_tweens_FlxTween; -flixel_tweens_FlxTween.__name__ = "flixel.tweens.FlxTween"; -flixel_tweens_FlxTween.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_tweens_FlxTween.globalManager = null; -flixel_tweens_FlxTween.tween = function(Object1,Values,Duration,Options) { - if(Duration == null) { - Duration = 1; - } - return flixel_tweens_FlxTween.globalManager.tween(Object1,Values,Duration,Options); -}; -flixel_tweens_FlxTween.num = function(FromValue,ToValue,Duration,Options,TweenFunction) { - if(Duration == null) { - Duration = 1; - } - return flixel_tweens_FlxTween.globalManager.num(FromValue,ToValue,Duration,Options,TweenFunction); -}; -flixel_tweens_FlxTween.angle = function(Sprite,FromAngle,ToAngle,Duration,Options) { - if(Duration == null) { - Duration = 1; - } - return flixel_tweens_FlxTween.globalManager.angle(Sprite,FromAngle,ToAngle,Duration,Options); -}; -flixel_tweens_FlxTween.color = function(Sprite,Duration,FromColor,ToColor,Options) { - if(Duration == null) { - Duration = 1; - } - return flixel_tweens_FlxTween.globalManager.color(Sprite,Duration,FromColor,ToColor,Options); -}; -flixel_tweens_FlxTween.linearMotion = function(Object1,FromX,FromY,ToX,ToY,DurationOrSpeed,UseDuration,Options) { - if(UseDuration == null) { - UseDuration = true; - } - if(DurationOrSpeed == null) { - DurationOrSpeed = 1; - } - return flixel_tweens_FlxTween.globalManager.linearMotion(Object1,FromX,FromY,ToX,ToY,DurationOrSpeed,UseDuration,Options); -}; -flixel_tweens_FlxTween.quadMotion = function(Object1,FromX,FromY,ControlX,ControlY,ToX,ToY,DurationOrSpeed,UseDuration,Options) { - if(UseDuration == null) { - UseDuration = true; - } - if(DurationOrSpeed == null) { - DurationOrSpeed = 1; - } - return flixel_tweens_FlxTween.globalManager.quadMotion(Object1,FromX,FromY,ControlX,ControlY,ToX,ToY,DurationOrSpeed,UseDuration,Options); -}; -flixel_tweens_FlxTween.cubicMotion = function(Object1,FromX,FromY,aX,aY,bX,bY,ToX,ToY,Duration,Options) { - if(Duration == null) { - Duration = 1; - } - return flixel_tweens_FlxTween.globalManager.cubicMotion(Object1,FromX,FromY,aX,aY,bX,bY,ToX,ToY,Duration,Options); -}; -flixel_tweens_FlxTween.circularMotion = function(Object1,CenterX,CenterY,Radius,Angle,Clockwise,DurationOrSpeed,UseDuration,Options) { - if(UseDuration == null) { - UseDuration = true; - } - if(DurationOrSpeed == null) { - DurationOrSpeed = 1; - } - return flixel_tweens_FlxTween.globalManager.circularMotion(Object1,CenterX,CenterY,Radius,Angle,Clockwise,DurationOrSpeed,UseDuration,Options); -}; -flixel_tweens_FlxTween.linearPath = function(Object1,Points,DurationOrSpeed,UseDuration,Options) { - if(UseDuration == null) { - UseDuration = true; - } - if(DurationOrSpeed == null) { - DurationOrSpeed = 1; - } - return flixel_tweens_FlxTween.globalManager.linearPath(Object1,Points,DurationOrSpeed,UseDuration,Options); -}; -flixel_tweens_FlxTween.quadPath = function(Object1,Points,DurationOrSpeed,UseDuration,Options) { - if(UseDuration == null) { - UseDuration = true; - } - if(DurationOrSpeed == null) { - DurationOrSpeed = 1; - } - return flixel_tweens_FlxTween.globalManager.quadPath(Object1,Points,DurationOrSpeed,UseDuration,Options); -}; -flixel_tweens_FlxTween.prototype = { - manager: null - ,active: null - ,duration: null - ,ease: null - ,onStart: null - ,onUpdate: null - ,onComplete: null - ,type: null - ,finished: null - ,scale: null - ,backward: null - ,executions: null - ,startDelay: null - ,loopDelay: null - ,_secondsSinceStart: null - ,_delayToUse: null - ,_running: null - ,_waitingForRestart: null - ,_chainedTweens: null - ,_nextTweenInChain: null - ,resolveTweenOptions: function(Options) { - if(Options == null) { - Options = { type : 8}; - } - if(Options.type == null) { - Options.type = 8; - } - return Options; - } - ,destroy: function() { - this.onStart = null; - this.onUpdate = null; - this.onComplete = null; - this.ease = null; - this.manager = null; - this._chainedTweens = null; - this._nextTweenInChain = null; - } - ,then: function(tween) { - return this.addChainedTween(tween); - } - ,wait: function(delay) { - return this.addChainedTween(flixel_tweens_FlxTween.num(0,0,delay)); - } - ,addChainedTween: function(tween) { - tween.setVarsOnEnd(); - tween.manager.remove(tween,false); - if(this._chainedTweens == null) { - this._chainedTweens = []; - } - this._chainedTweens.push(tween); - return this; - } - ,update: function(elapsed) { - this._secondsSinceStart += elapsed; - var delay = this.executions > 0 ? this.loopDelay : this.startDelay; - if(this._secondsSinceStart < delay) { - return; - } - this.scale = Math.max(this._secondsSinceStart - delay,0) / this.duration; - if(this.ease != null) { - this.scale = this.ease(this.scale); - } - if(this.backward) { - this.scale = 1 - this.scale; - } - if(this._secondsSinceStart > delay && !this._running) { - this._running = true; - if(this.onStart != null) { - this.onStart(this); - } - } - if(this._secondsSinceStart >= this.duration + delay) { - this.scale = this.backward ? 0 : 1; - this.finished = true; - } else if(this.onUpdate != null) { - this.onUpdate(this); - } - } - ,start: function() { - this._waitingForRestart = false; - this._secondsSinceStart = 0; - this._delayToUse = this.executions > 0 ? this.loopDelay : this.startDelay; - if(this.duration == 0) { - this.set_active(false); - return this; - } - this.set_active(true); - this._running = false; - this.finished = false; - return this; - } - ,cancel: function() { - this.onEnd(); - if(this.manager != null) { - this.manager.remove(this); - } - } - ,cancelChain: function() { - if(this._nextTweenInChain != null) { - this._nextTweenInChain.cancelChain(); - } - if(this._chainedTweens != null) { - this._chainedTweens = null; - } - this.cancel(); - } - ,finish: function() { - this.executions++; - if(this.onComplete != null) { - this.onComplete(this); - } - var type = this.type & ~16; - if(type == 1 || type == 8) { - this.onEnd(); - this._secondsSinceStart = this.duration + this.startDelay; - if(type == 8 && this.manager != null) { - this.manager.remove(this); - } - } - if(type == 2 || type == 4) { - this._secondsSinceStart = (this._secondsSinceStart - this._delayToUse) % this.duration + this._delayToUse; - this.scale = Math.max(this._secondsSinceStart - this._delayToUse,0) / this.duration; - if(this.ease != null && this.scale > 0 && this.scale < 1) { - this.scale = this.ease(this.scale); - } - if(type == 4) { - this.backward = !this.backward; - if(this.backward) { - this.scale = 1 - this.scale; - } - } - this.restart(); - } - } - ,onEnd: function() { - this.setVarsOnEnd(); - this.processTweenChain(); - } - ,setVarsOnEnd: function() { - this.set_active(false); - this._running = false; - this.finished = true; - } - ,processTweenChain: function() { - if(this._chainedTweens == null || this._chainedTweens.length <= 0) { - return; - } - this._nextTweenInChain = this._chainedTweens.shift(); - this.doNextTween(this._nextTweenInChain); - this._chainedTweens = null; - } - ,doNextTween: function(tween) { - if(!tween.active) { - tween.start(); - this.manager.add_flixel_tweens_FlxTween(tween); - } - tween.setChain(this._chainedTweens); - } - ,setChain: function(previousChain) { - if(previousChain == null) { - return; - } - if(this._chainedTweens == null) { - this._chainedTweens = previousChain; - } else { - this._chainedTweens = this._chainedTweens.concat(previousChain); - } - } - ,restart: function() { - if(this.active) { - this.start(); - } else { - this._waitingForRestart = true; - } - } - ,setDelays: function(StartDelay,LoopDelay) { - this.set_startDelay(StartDelay != null ? StartDelay : 0); - this.set_loopDelay(LoopDelay != null ? LoopDelay : 0); - return this; - } - ,set_startDelay: function(value) { - var dly = Math.abs(value); - if(this.executions == 0) { - this._secondsSinceStart = this.duration * (Math.max(this._secondsSinceStart - this._delayToUse,0) / this.duration) + Math.max(dly - this.startDelay,0); - this._delayToUse = dly; - } - return this.startDelay = dly; - } - ,set_loopDelay: function(value) { - var dly = Math.abs(value); - if(this.executions > 0) { - this._secondsSinceStart = this.duration * (Math.max(this._secondsSinceStart - this._delayToUse,0) / this.duration) + Math.max(dly - this.loopDelay,0); - this._delayToUse = dly; - } - return this.loopDelay = dly; - } - ,get_percent: function() { - return Math.max(this._secondsSinceStart - this._delayToUse,0) / this.duration; - } - ,set_percent: function(value) { - return this._secondsSinceStart = this.duration * value + this._delayToUse; - } - ,set_type: function(value) { - if(value == 0) { - value = 8; - } else if(value == 16) { - value = 1 | 16; - } - this.backward = (value & 16) > 0; - return this.type = value; - } - ,set_active: function(active) { - this.active = active; - if(this._waitingForRestart) { - this.restart(); - } - return active; - } - ,__class__: flixel_tweens_FlxTween - ,__properties__: {set_loopDelay:"set_loopDelay",set_startDelay:"set_startDelay",set_percent:"set_percent",get_percent:"get_percent",set_type:"set_type",set_active:"set_active"} -}; -var flixel_tweens_FlxTweenManager = function() { - this._tweens = []; - flixel_FlxBasic.call(this); - this.set_visible(false); - flixel_FlxG.signals.preStateSwitch.add($bind(this,this.clear)); -}; -$hxClasses["flixel.tweens.FlxTweenManager"] = flixel_tweens_FlxTweenManager; -flixel_tweens_FlxTweenManager.__name__ = "flixel.tweens.FlxTweenManager"; -flixel_tweens_FlxTweenManager.__super__ = flixel_FlxBasic; -flixel_tweens_FlxTweenManager.prototype = $extend(flixel_FlxBasic.prototype,{ - add_flixel_tweens_motion_QuadPath: function(Tween,Start) { - if(Start == null) { - Start = false; - } - if(Tween == null) { - return null; - } - this._tweens.push(Tween); - if(Start) { - Tween.start(); - } - return Tween; - } - ,add_flixel_tweens_motion_LinearPath: function(Tween,Start) { - if(Start == null) { - Start = false; - } - if(Tween == null) { - return null; - } - this._tweens.push(Tween); - if(Start) { - Tween.start(); - } - return Tween; - } - ,add_flixel_tweens_motion_CircularMotion: function(Tween,Start) { - if(Start == null) { - Start = false; - } - if(Tween == null) { - return null; - } - this._tweens.push(Tween); - if(Start) { - Tween.start(); - } - return Tween; - } - ,add_flixel_tweens_motion_CubicMotion: function(Tween,Start) { - if(Start == null) { - Start = false; - } - if(Tween == null) { - return null; - } - this._tweens.push(Tween); - if(Start) { - Tween.start(); - } - return Tween; - } - ,add_flixel_tweens_motion_QuadMotion: function(Tween,Start) { - if(Start == null) { - Start = false; - } - if(Tween == null) { - return null; - } - this._tweens.push(Tween); - if(Start) { - Tween.start(); - } - return Tween; - } - ,add_flixel_tweens_motion_LinearMotion: function(Tween,Start) { - if(Start == null) { - Start = false; - } - if(Tween == null) { - return null; - } - this._tweens.push(Tween); - if(Start) { - Tween.start(); - } - return Tween; - } - ,add_flixel_tweens_misc_ColorTween: function(Tween,Start) { - if(Start == null) { - Start = false; - } - if(Tween == null) { - return null; - } - this._tweens.push(Tween); - if(Start) { - Tween.start(); - } - return Tween; - } - ,add_flixel_tweens_misc_AngleTween: function(Tween,Start) { - if(Start == null) { - Start = false; - } - if(Tween == null) { - return null; - } - this._tweens.push(Tween); - if(Start) { - Tween.start(); - } - return Tween; - } - ,add_flixel_tweens_misc_NumTween: function(Tween,Start) { - if(Start == null) { - Start = false; - } - if(Tween == null) { - return null; - } - this._tweens.push(Tween); - if(Start) { - Tween.start(); - } - return Tween; - } - ,add_flixel_tweens_misc_VarTween: function(Tween,Start) { - if(Start == null) { - Start = false; - } - if(Tween == null) { - return null; - } - this._tweens.push(Tween); - if(Start) { - Tween.start(); - } - return Tween; - } - ,add_flixel_tweens_FlxTween: function(Tween,Start) { - if(Start == null) { - Start = false; - } - if(Tween == null) { - return null; - } - this._tweens.push(Tween); - if(Start) { - Tween.start(); - } - return Tween; - } - ,_tweens: null - ,tween: function(Object1,Values,Duration,Options) { - if(Duration == null) { - Duration = 1; - } - var tween = new flixel_tweens_misc_VarTween(Options,this); - tween.tween(Object1,Values,Duration); - return this.add_flixel_tweens_misc_VarTween(tween); - } - ,num: function(FromValue,ToValue,Duration,Options,TweenFunction) { - if(Duration == null) { - Duration = 1; - } - var tween = new flixel_tweens_misc_NumTween(Options,this); - tween.tween(FromValue,ToValue,Duration,TweenFunction); - return this.add_flixel_tweens_misc_NumTween(tween); - } - ,angle: function(Sprite,FromAngle,ToAngle,Duration,Options) { - if(Duration == null) { - Duration = 1; - } - var tween = new flixel_tweens_misc_AngleTween(Options,this); - tween.tween(FromAngle,ToAngle,Duration,Sprite); - return this.add_flixel_tweens_misc_AngleTween(tween); - } - ,color: function(Sprite,Duration,FromColor,ToColor,Options) { - if(Duration == null) { - Duration = 1; - } - var tween = new flixel_tweens_misc_ColorTween(Options,this); - tween.tween(Duration,FromColor,ToColor,Sprite); - return this.add_flixel_tweens_misc_ColorTween(tween); - } - ,linearMotion: function(Object1,FromX,FromY,ToX,ToY,DurationOrSpeed,UseDuration,Options) { - if(UseDuration == null) { - UseDuration = true; - } - if(DurationOrSpeed == null) { - DurationOrSpeed = 1; - } - var tween = new flixel_tweens_motion_LinearMotion(Options,this); - tween.setObject(Object1); - tween.setMotion(FromX,FromY,ToX,ToY,DurationOrSpeed,UseDuration); - return this.add_flixel_tweens_motion_LinearMotion(tween); - } - ,quadMotion: function(Object1,FromX,FromY,ControlX,ControlY,ToX,ToY,DurationOrSpeed,UseDuration,Options) { - if(UseDuration == null) { - UseDuration = true; - } - if(DurationOrSpeed == null) { - DurationOrSpeed = 1; - } - var tween = new flixel_tweens_motion_QuadMotion(Options,this); - tween.setObject(Object1); - tween.setMotion(FromX,FromY,ControlX,ControlY,ToX,ToY,DurationOrSpeed,UseDuration); - return this.add_flixel_tweens_motion_QuadMotion(tween); - } - ,cubicMotion: function(Object1,FromX,FromY,aX,aY,bX,bY,ToX,ToY,Duration,Options) { - if(Duration == null) { - Duration = 1; - } - var tween = new flixel_tweens_motion_CubicMotion(Options,this); - tween.setObject(Object1); - tween.setMotion(FromX,FromY,aX,aY,bX,bY,ToX,ToY,Duration); - return this.add_flixel_tweens_motion_CubicMotion(tween); - } - ,circularMotion: function(Object1,CenterX,CenterY,Radius,Angle,Clockwise,DurationOrSpeed,UseDuration,Options) { - if(UseDuration == null) { - UseDuration = true; - } - if(DurationOrSpeed == null) { - DurationOrSpeed = 1; - } - var tween = new flixel_tweens_motion_CircularMotion(Options,this); - tween.setObject(Object1); - tween.setMotion(CenterX,CenterY,Radius,Angle,Clockwise,DurationOrSpeed,UseDuration); - return this.add_flixel_tweens_motion_CircularMotion(tween); - } - ,linearPath: function(Object1,Points,DurationOrSpeed,UseDuration,Options) { - if(UseDuration == null) { - UseDuration = true; - } - if(DurationOrSpeed == null) { - DurationOrSpeed = 1; - } - var tween = new flixel_tweens_motion_LinearPath(Options,this); - if(Points != null) { - var _g = 0; - while(_g < Points.length) { - var point = Points[_g]; - ++_g; - tween.addPoint(point.x,point.y); - } - } - tween.setObject(Object1); - tween.setMotion(DurationOrSpeed,UseDuration); - return this.add_flixel_tweens_motion_LinearPath(tween); - } - ,quadPath: function(Object1,Points,DurationOrSpeed,UseDuration,Options) { - if(UseDuration == null) { - UseDuration = true; - } - if(DurationOrSpeed == null) { - DurationOrSpeed = 1; - } - var tween = new flixel_tweens_motion_QuadPath(Options,this); - if(Points != null) { - var _g = 0; - while(_g < Points.length) { - var point = Points[_g]; - ++_g; - tween.addPoint(point.x,point.y); - } - } - tween.setObject(Object1); - tween.setMotion(DurationOrSpeed,UseDuration); - return this.add_flixel_tweens_motion_QuadPath(tween); - } - ,destroy: function() { - flixel_FlxBasic.prototype.destroy.call(this); - flixel_FlxG.signals.preStateSwitch.remove($bind(this,this.clear)); - } - ,update: function(elapsed) { - var finishedTweens = null; - var _g = 0; - var _g1 = this._tweens; - while(_g < _g1.length) { - var tween = _g1[_g]; - ++_g; - if(!tween.active) { - continue; - } - tween.update(elapsed); - if(tween.finished) { - if(finishedTweens == null) { - finishedTweens = []; - } - finishedTweens.push(tween); - } - } - if(finishedTweens != null) { - while(finishedTweens.length > 0) finishedTweens.shift().finish(); - } - } - ,remove: function(Tween,Destroy) { - if(Destroy == null) { - Destroy = true; - } - if(Tween == null) { - return null; - } - Tween.set_active(false); - if(Destroy) { - Tween.destroy(); - } - var array = this._tweens; - var index = array.indexOf(Tween); - if(index != -1) { - array[index] = array[array.length - 1]; - array.pop(); - } - return Tween; - } - ,clear: function() { - var _g = 0; - var _g1 = this._tweens; - while(_g < _g1.length) { - var tween = _g1[_g]; - ++_g; - if(tween != null) { - tween.set_active(false); - tween.destroy(); - } - } - this._tweens.splice(0,this._tweens.length); - } - ,completeAll: function() { - var _g = 0; - var _g1 = this._tweens; - while(_g < _g1.length) { - var tween = _g1[_g]; - ++_g; - if((tween.type & 2) == 0 && (tween.type & 4) == 0 && tween.active) { - tween.update(1.79e+308); - } - } - } - ,forEach: function(Function1) { - var _g = 0; - var _g1 = this._tweens; - while(_g < _g1.length) { - var tween = _g1[_g]; - ++_g; - Function1(tween); - } - } - ,__class__: flixel_tweens_FlxTweenManager -}); -var flixel_tweens_misc_AngleTween = function(Options,manager) { - flixel_tweens_FlxTween.call(this,Options,manager); -}; -$hxClasses["flixel.tweens.misc.AngleTween"] = flixel_tweens_misc_AngleTween; -flixel_tweens_misc_AngleTween.__name__ = "flixel.tweens.misc.AngleTween"; -flixel_tweens_misc_AngleTween.__super__ = flixel_tweens_FlxTween; -flixel_tweens_misc_AngleTween.prototype = $extend(flixel_tweens_FlxTween.prototype,{ - angle: null - ,sprite: null - ,_start: null - ,_range: null - ,destroy: function() { - flixel_tweens_FlxTween.prototype.destroy.call(this); - this.sprite = null; - } - ,tween: function(FromAngle,ToAngle,Duration,Sprite) { - this._start = this.angle = FromAngle; - this._range = ToAngle - this.angle; - this.duration = Duration; - this.sprite = Sprite; - if(this.sprite != null) { - this.sprite.set_angle(this.angle % 360); - } - this.start(); - return this; - } - ,update: function(elapsed) { - flixel_tweens_FlxTween.prototype.update.call(this,elapsed); - this.angle = this._start + this._range * this.scale; - if(this.sprite != null) { - var spriteAngle = this.angle % 360; - this.sprite.set_angle(spriteAngle); - } - } - ,__class__: flixel_tweens_misc_AngleTween -}); -var flixel_tweens_misc_ColorTween = function(Options,manager) { - flixel_tweens_FlxTween.call(this,Options,manager); -}; -$hxClasses["flixel.tweens.misc.ColorTween"] = flixel_tweens_misc_ColorTween; -flixel_tweens_misc_ColorTween.__name__ = "flixel.tweens.misc.ColorTween"; -flixel_tweens_misc_ColorTween.__super__ = flixel_tweens_FlxTween; -flixel_tweens_misc_ColorTween.prototype = $extend(flixel_tweens_FlxTween.prototype,{ - color: null - ,startColor: null - ,endColor: null - ,sprite: null - ,destroy: function() { - flixel_tweens_FlxTween.prototype.destroy.call(this); - this.sprite = null; - } - ,tween: function(Duration,FromColor,ToColor,Sprite) { - this.color = this.startColor = FromColor; - this.endColor = ToColor; - this.duration = Duration; - this.sprite = Sprite; - this.start(); - return this; - } - ,update: function(elapsed) { - flixel_tweens_FlxTween.prototype.update.call(this,elapsed); - var Color1 = this.startColor; - var Color2 = this.endColor; - var Factor = this.scale; - if(Factor == null) { - Factor = 0.5; - } - var r = ((Color2 >> 16 & 255) - (Color1 >> 16 & 255)) * Factor + (Color1 >> 16 & 255) | 0; - var g = ((Color2 >> 8 & 255) - (Color1 >> 8 & 255)) * Factor + (Color1 >> 8 & 255) | 0; - var b = ((Color2 & 255) - (Color1 & 255)) * Factor + (Color1 & 255) | 0; - var a = ((Color2 >> 24 & 255) - (Color1 >> 24 & 255)) * Factor + (Color1 >> 24 & 255) | 0; - var Alpha = a; - if(Alpha == null) { - Alpha = 255; - } - var color = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 255; - } - color &= -16711681; - color |= (r > 255 ? 255 : r < 0 ? 0 : r) << 16; - color &= -65281; - color |= (g > 255 ? 255 : g < 0 ? 0 : g) << 8; - color &= -256; - color |= b > 255 ? 255 : b < 0 ? 0 : b; - color &= 16777215; - color |= (Alpha1 > 255 ? 255 : Alpha1 < 0 ? 0 : Alpha1) << 24; - this.color = color; - if(this.sprite != null) { - this.sprite.set_color(this.color); - this.sprite.set_alpha((this.color >> 24 & 255) / 255); - } - } - ,__class__: flixel_tweens_misc_ColorTween -}); -var flixel_tweens_misc_NumTween = function(Options,manager) { - flixel_tweens_FlxTween.call(this,Options,manager); -}; -$hxClasses["flixel.tweens.misc.NumTween"] = flixel_tweens_misc_NumTween; -flixel_tweens_misc_NumTween.__name__ = "flixel.tweens.misc.NumTween"; -flixel_tweens_misc_NumTween.__super__ = flixel_tweens_FlxTween; -flixel_tweens_misc_NumTween.prototype = $extend(flixel_tweens_FlxTween.prototype,{ - value: null - ,_tweenFunction: null - ,_start: null - ,_range: null - ,destroy: function() { - flixel_tweens_FlxTween.prototype.destroy.call(this); - this._tweenFunction = null; - } - ,tween: function(fromValue,toValue,duration,tweenFunction) { - this._tweenFunction = tweenFunction; - this._start = this.value = fromValue; - this._range = toValue - this.value; - this.duration = duration; - this.start(); - return this; - } - ,update: function(elapsed) { - flixel_tweens_FlxTween.prototype.update.call(this,elapsed); - this.value = this._start + this._range * this.scale; - if(this._tweenFunction != null) { - this._tweenFunction(this.value); - } - } - ,__class__: flixel_tweens_misc_NumTween -}); -var flixel_tweens_misc_VarTween = function(options,manager) { - flixel_tweens_FlxTween.call(this,options,manager); -}; -$hxClasses["flixel.tweens.misc.VarTween"] = flixel_tweens_misc_VarTween; -flixel_tweens_misc_VarTween.__name__ = "flixel.tweens.misc.VarTween"; -flixel_tweens_misc_VarTween.__super__ = flixel_tweens_FlxTween; -flixel_tweens_misc_VarTween.prototype = $extend(flixel_tweens_FlxTween.prototype,{ - _object: null - ,_properties: null - ,_propertyInfos: null - ,tween: function(object,properties,duration) { - this._object = object; - this._properties = properties; - this._propertyInfos = []; - this.duration = duration; - this.start(); - return this; - } - ,update: function(elapsed) { - var delay = this.executions > 0 ? this.loopDelay : this.startDelay; - if(this._secondsSinceStart < delay) { - flixel_tweens_FlxTween.prototype.update.call(this,elapsed); - } else { - if(this._propertyInfos.length == 0) { - this.initializeVars(); - } - flixel_tweens_FlxTween.prototype.update.call(this,elapsed); - var _g = 0; - var _g1 = this._propertyInfos; - while(_g < _g1.length) { - var info = _g1[_g]; - ++_g; - Reflect.setProperty(info.object,info.field,info.startValue + info.range * this.scale); - } - } - } - ,initializeVars: function() { - var fieldPaths; - if(Reflect.isObject(this._properties)) { - fieldPaths = Reflect.fields(this._properties); - } else { - throw new js__$Boot_HaxeError("Unsupported properties container - use an object containing key/value pairs."); - } - var _g = 0; - while(_g < fieldPaths.length) { - var fieldPath = fieldPaths[_g]; - ++_g; - var target = this._object; - var path = fieldPath.split("."); - var field = path.pop(); - var _g1 = 0; - while(_g1 < path.length) { - var component = path[_g1]; - ++_g1; - target = Reflect.getProperty(target,component); - if(!Reflect.isObject(target)) { - throw new js__$Boot_HaxeError("The object does not have the property \"" + component + "\" in \"" + fieldPath + "\""); - } - } - if(Reflect.getProperty(target,field) == null) { - throw new js__$Boot_HaxeError("The object does not have the property \"" + field + "\""); - } - var value = Reflect.getProperty(target,field); - if(isNaN(value)) { - throw new js__$Boot_HaxeError("The property \"" + field + "\" is not numeric."); - } - var targetValue = Reflect.getProperty(this._properties,fieldPath); - this._propertyInfos.push({ object : target, field : field, startValue : value, range : targetValue - value}); - } - } - ,destroy: function() { - flixel_tweens_FlxTween.prototype.destroy.call(this); - this._object = null; - this._properties = null; - this._propertyInfos = null; - } - ,__class__: flixel_tweens_misc_VarTween -}); -var flixel_tweens_motion_Motion = function(Options,manager) { - this.y = 0; - this.x = 0; - flixel_tweens_FlxTween.call(this,Options,manager); -}; -$hxClasses["flixel.tweens.motion.Motion"] = flixel_tweens_motion_Motion; -flixel_tweens_motion_Motion.__name__ = "flixel.tweens.motion.Motion"; -flixel_tweens_motion_Motion.__super__ = flixel_tweens_FlxTween; -flixel_tweens_motion_Motion.prototype = $extend(flixel_tweens_FlxTween.prototype,{ - x: null - ,y: null - ,_object: null - ,_wasObjectImmovable: null - ,destroy: function() { - flixel_tweens_FlxTween.prototype.destroy.call(this); - this._object = null; - } - ,setObject: function(object) { - this._object = object; - this._wasObjectImmovable = this._object.immovable; - this._object.set_immovable(true); - return this; - } - ,update: function(elapsed) { - flixel_tweens_FlxTween.prototype.update.call(this,elapsed); - this.postUpdate(); - } - ,onEnd: function() { - this._object.set_immovable(this._wasObjectImmovable); - flixel_tweens_FlxTween.prototype.onEnd.call(this); - } - ,postUpdate: function() { - if(this._object != null) { - this._object.setPosition(this.x,this.y); - } - } - ,__class__: flixel_tweens_motion_Motion -}); -var flixel_tweens_motion_CircularMotion = function(Options,manager) { - this._angleFinish = 0; - this._angleStart = 0; - this._radius = 0; - this._centerY = 0; - this._centerX = 0; - this.angle = 0; - flixel_tweens_motion_Motion.call(this,Options,manager); -}; -$hxClasses["flixel.tweens.motion.CircularMotion"] = flixel_tweens_motion_CircularMotion; -flixel_tweens_motion_CircularMotion.__name__ = "flixel.tweens.motion.CircularMotion"; -flixel_tweens_motion_CircularMotion.__super__ = flixel_tweens_motion_Motion; -flixel_tweens_motion_CircularMotion.prototype = $extend(flixel_tweens_motion_Motion.prototype,{ - angle: null - ,_centerX: null - ,_centerY: null - ,_radius: null - ,_angleStart: null - ,_angleFinish: null - ,setMotion: function(CenterX,CenterY,Radius,Angle,Clockwise,DurationOrSpeed,UseDuration) { - if(UseDuration == null) { - UseDuration = true; - } - this._centerX = CenterX; - this._centerY = CenterY; - this._radius = Radius; - this.angle = this._angleStart = Angle * Math.PI / -180; - this._angleFinish = Math.PI * 2 * (Clockwise ? 1 : -1); - if(UseDuration) { - this.duration = DurationOrSpeed; - } else { - this.duration = this._radius * (Math.PI * 2) / DurationOrSpeed; - } - this.start(); - return this; - } - ,update: function(elapsed) { - flixel_tweens_motion_Motion.prototype.update.call(this,elapsed); - this.angle = this._angleStart + this._angleFinish * this.scale; - this.x = this._centerX + Math.cos(this.angle) * this._radius; - this.y = this._centerY + Math.sin(this.angle) * this._radius; - if(this.finished) { - this.postUpdate(); - } - } - ,get_circumference: function() { - return this._radius * (Math.PI * 2); - } - ,__class__: flixel_tweens_motion_CircularMotion - ,__properties__: $extend(flixel_tweens_motion_Motion.prototype.__properties__,{get_circumference:"get_circumference"}) -}); -var flixel_tweens_motion_CubicMotion = function(Options,manager) { - this._tt = 0; - this._ttt = 0; - this._bY = 0; - this._bX = 0; - this._aY = 0; - this._aX = 0; - this._toY = 0; - this._toX = 0; - this._fromY = 0; - this._fromX = 0; - flixel_tweens_motion_Motion.call(this,Options,manager); -}; -$hxClasses["flixel.tweens.motion.CubicMotion"] = flixel_tweens_motion_CubicMotion; -flixel_tweens_motion_CubicMotion.__name__ = "flixel.tweens.motion.CubicMotion"; -flixel_tweens_motion_CubicMotion.__super__ = flixel_tweens_motion_Motion; -flixel_tweens_motion_CubicMotion.prototype = $extend(flixel_tweens_motion_Motion.prototype,{ - _fromX: null - ,_fromY: null - ,_toX: null - ,_toY: null - ,_aX: null - ,_aY: null - ,_bX: null - ,_bY: null - ,_ttt: null - ,_tt: null - ,setMotion: function(fromX,fromY,aX,aY,bX,bY,toX,toY,duration) { - this.x = this._fromX = fromX; - this.y = this._fromY = fromY; - this._aX = aX; - this._aY = aY; - this._bX = bX; - this._bY = bY; - this._toX = toX; - this._toY = toY; - this.duration = duration; - this.start(); - return this; - } - ,update: function(elapsed) { - flixel_tweens_motion_Motion.prototype.update.call(this,elapsed); - this.x = this.scale * this.scale * this.scale * (this._toX + 3 * (this._aX - this._bX) - this._fromX) + 3 * this.scale * this.scale * (this._fromX - 2 * this._aX + this._bX) + 3 * this.scale * (this._aX - this._fromX) + this._fromX; - this.y = this.scale * this.scale * this.scale * (this._toY + 3 * (this._aY - this._bY) - this._fromY) + 3 * this.scale * this.scale * (this._fromY - 2 * this._aY + this._bY) + 3 * this.scale * (this._aY - this._fromY) + this._fromY; - if(this.finished) { - this.postUpdate(); - } - } - ,__class__: flixel_tweens_motion_CubicMotion -}); -var flixel_tweens_motion_LinearMotion = function(Options,manager) { - this._distance = -1; - this._moveY = 0; - this._moveX = 0; - this._fromY = 0; - this._fromX = 0; - flixel_tweens_motion_Motion.call(this,Options,manager); -}; -$hxClasses["flixel.tweens.motion.LinearMotion"] = flixel_tweens_motion_LinearMotion; -flixel_tweens_motion_LinearMotion.__name__ = "flixel.tweens.motion.LinearMotion"; -flixel_tweens_motion_LinearMotion.__super__ = flixel_tweens_motion_Motion; -flixel_tweens_motion_LinearMotion.prototype = $extend(flixel_tweens_motion_Motion.prototype,{ - _fromX: null - ,_fromY: null - ,_moveX: null - ,_moveY: null - ,_distance: null - ,setMotion: function(FromX,FromY,ToX,ToY,DurationOrSpeed,UseDuration) { - if(UseDuration == null) { - UseDuration = true; - } - this._distance = -1; - this.x = this._fromX = FromX; - this.y = this._fromY = FromY; - this._moveX = ToX - FromX; - this._moveY = ToY - FromY; - if(UseDuration) { - this.duration = DurationOrSpeed; - } else { - this.duration = this.get_distance() / DurationOrSpeed; - } - this.start(); - return this; - } - ,update: function(elapsed) { - flixel_tweens_motion_Motion.prototype.update.call(this,elapsed); - this.x = this._fromX + this._moveX * this.scale; - this.y = this._fromY + this._moveY * this.scale; - if(this.x == this._fromX + this._moveX && this.y == this._fromY + this._moveY && this.active && this._secondsSinceStart >= this.duration) { - this.finished = true; - } - if(this.finished) { - this.postUpdate(); - } - } - ,get_distance: function() { - if(this._distance >= 0) { - return this._distance; - } - return this._distance = Math.sqrt(this._moveX * this._moveX + this._moveY * this._moveY); - } - ,__class__: flixel_tweens_motion_LinearMotion - ,__properties__: $extend(flixel_tweens_motion_Motion.prototype.__properties__,{get_distance:"get_distance"}) -}); -var flixel_tweens_motion_LinearPath = function(Options,manager) { - this._index = 0; - this._speed = 0; - this.distance = 0; - flixel_tweens_motion_Motion.call(this,Options,manager); - this.points = []; - this._pointD = [0]; - this._pointT = [0]; -}; -$hxClasses["flixel.tweens.motion.LinearPath"] = flixel_tweens_motion_LinearPath; -flixel_tweens_motion_LinearPath.__name__ = "flixel.tweens.motion.LinearPath"; -flixel_tweens_motion_LinearPath.__super__ = flixel_tweens_motion_Motion; -flixel_tweens_motion_LinearPath.prototype = $extend(flixel_tweens_motion_Motion.prototype,{ - distance: null - ,points: null - ,_pointD: null - ,_pointT: null - ,_speed: null - ,_index: null - ,_last: null - ,_prevPoint: null - ,_nextPoint: null - ,destroy: function() { - flixel_tweens_motion_Motion.prototype.destroy.call(this); - var _g = 0; - var _g1 = this.points; - while(_g < _g1.length) { - var point = _g1[_g]; - ++_g; - point = flixel_util_FlxDestroyUtil.put(point); - } - this._last = flixel_util_FlxDestroyUtil.put(this._last); - this._prevPoint = flixel_util_FlxDestroyUtil.put(this._prevPoint); - this._nextPoint = flixel_util_FlxDestroyUtil.put(this._nextPoint); - } - ,setMotion: function(DurationOrSpeed,UseDuration) { - if(UseDuration == null) { - UseDuration = true; - } - this.updatePath(); - if(UseDuration) { - this.duration = DurationOrSpeed; - this._speed = this.distance / DurationOrSpeed; - } else { - this.duration = this.distance / DurationOrSpeed; - this._speed = DurationOrSpeed; - } - this.start(); - return this; - } - ,addPoint: function(x,y) { - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - if(this._last != null) { - this.distance += Math.sqrt((x - this._last.x) * (x - this._last.x) + (y - this._last.y) * (y - this._last.y)); - this._pointD[this.points.length] = this.distance; - } - var tmp = this.points; - var tmp1 = this.points.length; - var X = x; - var Y = y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - tmp[tmp1] = this._last = point; - return this; - } - ,getPoint: function(index) { - if(index == null) { - index = 0; - } - if(this.points.length == 0) { - throw new js__$Boot_HaxeError("No points have been added to the path yet."); - } - return this.points[index % this.points.length]; - } - ,start: function() { - this._index = this.backward ? this.points.length - 1 : 0; - flixel_tweens_motion_Motion.prototype.start.call(this); - return this; - } - ,update: function(elapsed) { - flixel_tweens_motion_Motion.prototype.update.call(this,elapsed); - var td; - var tt; - if(this.points == null) { - return; - } - if(!this.backward) { - if(this._index < this.points.length - 1) { - while(this.scale > this._pointT[this._index + 1]) { - this._index++; - if(this._index == this.points.length - 1) { - this._index -= 1; - break; - } - } - } - td = this._pointT[this._index]; - tt = this._pointT[this._index + 1] - td; - td = (this.scale - td) / tt; - this._prevPoint = this.points[this._index]; - this._nextPoint = this.points[this._index + 1]; - this.x = this._prevPoint.x + (this._nextPoint.x - this._prevPoint.x) * td; - this.y = this._prevPoint.y + (this._nextPoint.y - this._prevPoint.y) * td; - } else { - if(this._index > 0) { - while(this.scale < this._pointT[this._index - 1]) { - this._index -= 1; - if(this._index == 0) { - this._index += 1; - break; - } - } - } - td = this._pointT[this._index]; - tt = this._pointT[this._index - 1] - td; - td = (this.scale - td) / tt; - this._prevPoint = this.points[this._index]; - this._nextPoint = this.points[this._index - 1]; - this.x = this._prevPoint.x + (this._nextPoint.x - this._prevPoint.x) * td; - this.y = this._prevPoint.y + (this._nextPoint.y - this._prevPoint.y) * td; - } - flixel_tweens_motion_Motion.prototype.postUpdate.call(this); - } - ,updatePath: function() { - if(this.points.length < 2) { - throw new js__$Boot_HaxeError("A LinearPath must have at least 2 points to operate."); - } - if(this._pointD.length == this._pointT.length) { - return; - } - var i = 0; - while(i < this.points.length) this._pointT[i] = this._pointD[i++] / this.distance; - } - ,__class__: flixel_tweens_motion_LinearPath -}); -var flixel_tweens_motion_QuadMotion = function(Options,manager) { - this._controlY = 0; - this._controlX = 0; - this._toY = 0; - this._toX = 0; - this._fromY = 0; - this._fromX = 0; - this._distance = -1; - flixel_tweens_motion_Motion.call(this,Options,manager); -}; -$hxClasses["flixel.tweens.motion.QuadMotion"] = flixel_tweens_motion_QuadMotion; -flixel_tweens_motion_QuadMotion.__name__ = "flixel.tweens.motion.QuadMotion"; -flixel_tweens_motion_QuadMotion.__super__ = flixel_tweens_motion_Motion; -flixel_tweens_motion_QuadMotion.prototype = $extend(flixel_tweens_motion_Motion.prototype,{ - _distance: null - ,_fromX: null - ,_fromY: null - ,_toX: null - ,_toY: null - ,_controlX: null - ,_controlY: null - ,setMotion: function(FromX,FromY,ControlX,ControlY,ToX,ToY,DurationOrSpeed,UseDuration) { - if(UseDuration == null) { - UseDuration = true; - } - this._distance = -1; - this.x = this._fromX = FromX; - this.y = this._fromY = FromY; - this._controlX = ControlX; - this._controlY = ControlY; - this._toX = ToX; - this._toY = ToY; - if(UseDuration) { - this.duration = DurationOrSpeed; - } else { - this.duration = this.get_distance() / DurationOrSpeed; - } - this.start(); - return this; - } - ,update: function(elapsed) { - flixel_tweens_motion_Motion.prototype.update.call(this,elapsed); - this.x = this._fromX * (1 - this.scale) * (1 - this.scale) + this._controlX * 2 * (1 - this.scale) * this.scale + this._toX * this.scale * this.scale; - this.y = this._fromY * (1 - this.scale) * (1 - this.scale) + this._controlY * 2 * (1 - this.scale) * this.scale + this._toY * this.scale * this.scale; - if(this.finished) { - this.postUpdate(); - } - } - ,get_distance: function() { - if(this._distance >= 0) { - return this._distance; - } - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - var p1 = point; - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - var p2 = point1; - p1.set_x(this.x - 2 * this._controlX + this._toX); - p1.set_y(this.y - 2 * this._controlY + this._toY); - p2.set_x(2 * this._controlX - 2 * this.x); - p2.set_y(2 * this._controlY - 2 * this.y); - var a = 4 * (p1.x * p1.x + p1.y * p1.y); - var b = 4 * (p1.x * p2.x + p1.y * p2.y); - var c = p2.x * p2.x + p2.y * p2.y; - var abc = 2 * Math.sqrt(a + b + c); - var a2 = Math.sqrt(a); - var a32 = 2 * a * a2; - var c2 = 2 * Math.sqrt(c); - var ba = b / a2; - p1.put(); - p2.put(); - return (a32 * abc + a2 * b * (abc - c2) + (4 * c * a - b * b) * Math.log((2 * a2 + ba + abc) / (ba + c2))) / (4 * a32); - } - ,__class__: flixel_tweens_motion_QuadMotion - ,__properties__: $extend(flixel_tweens_motion_Motion.prototype.__properties__,{get_distance:"get_distance"}) -}); -var flixel_tweens_motion_QuadPath = function(Options,manager) { - this._updateCurve = true; - this._numSegs = 0; - this._index = 0; - this._speed = 0; - this._distance = 0; - flixel_tweens_motion_Motion.call(this,Options,manager); - this._points = []; - this._curveT = []; - this._curveD = []; -}; -$hxClasses["flixel.tweens.motion.QuadPath"] = flixel_tweens_motion_QuadPath; -flixel_tweens_motion_QuadPath.__name__ = "flixel.tweens.motion.QuadPath"; -flixel_tweens_motion_QuadPath.__super__ = flixel_tweens_motion_Motion; -flixel_tweens_motion_QuadPath.prototype = $extend(flixel_tweens_motion_Motion.prototype,{ - _points: null - ,_distance: null - ,_speed: null - ,_index: null - ,_numSegs: null - ,_updateCurve: null - ,_curveT: null - ,_curveD: null - ,_a: null - ,_b: null - ,_c: null - ,destroy: function() { - flixel_tweens_motion_Motion.prototype.destroy.call(this); - var _g = 0; - var _g1 = this._points; - while(_g < _g1.length) { - var point = _g1[_g]; - ++_g; - point = flixel_util_FlxDestroyUtil.put(point); - } - this._a = flixel_util_FlxDestroyUtil.put(this._a); - this._b = flixel_util_FlxDestroyUtil.put(this._b); - this._c = flixel_util_FlxDestroyUtil.put(this._c); - } - ,setMotion: function(DurationOrSpeed,UseDuration) { - if(UseDuration == null) { - UseDuration = true; - } - this.updatePath(); - if(UseDuration) { - this.duration = DurationOrSpeed; - this._speed = this._distance / DurationOrSpeed; - } else { - this.duration = this._distance / DurationOrSpeed; - this._speed = DurationOrSpeed; - } - this.start(); - return this; - } - ,addPoint: function(x,y) { - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - this._updateCurve = true; - var tmp = this._points; - var X = x; - var Y = y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - tmp.push(point); - return this; - } - ,getPoint: function(index) { - if(index == null) { - index = 0; - } - if(this._points.length == 0) { - throw new js__$Boot_HaxeError("No points have been added to the path yet."); - } - return this._points[index % this._points.length]; - } - ,start: function() { - this._index = this.backward ? this._numSegs - 1 : 0; - flixel_tweens_motion_Motion.prototype.start.call(this); - return this; - } - ,update: function(elapsed) { - flixel_tweens_motion_Motion.prototype.update.call(this,elapsed); - var td; - var tt; - if(!this.backward && this._points != null) { - if(this._index < this._numSegs - 1) { - while(this.scale > this._curveT[this._index + 1]) { - this._index++; - if(this._index == this._numSegs - 1) { - break; - } - } - } - td = this._curveT[this._index]; - tt = this._curveT[this._index + 1] - td; - td = (this.scale - td) / tt; - this._a = this._points[this._index * 2]; - this._b = this._points[this._index * 2 + 1]; - this._c = this._points[this._index * 2 + 2]; - this.x = this._a.x * (1 - td) * (1 - td) + this._b.x * 2 * (1 - td) * td + this._c.x * td * td; - this.y = this._a.y * (1 - td) * (1 - td) + this._b.y * 2 * (1 - td) * td + this._c.y * td * td; - } else if(this._points != null) { - if(this._index > 0) { - while(this.scale < this._curveT[this._index]) { - this._index--; - if(this._index == 0) { - break; - } - } - } - td = this._curveT[this._index + 1]; - tt = this._curveT[this._index] - td; - td = (this.scale - td) / tt; - this._a = this._points[this._index * 2 + 2]; - this._b = this._points[this._index * 2 + 1]; - this._c = this._points[this._index * 2]; - this.x = this._a.x * (1 - td) * (1 - td) + this._b.x * 2 * (1 - td) * td + this._c.x * td * td; - this.y = this._a.y * (1 - td) * (1 - td) + this._b.y * 2 * (1 - td) * td + this._c.y * td * td; - } - flixel_tweens_motion_Motion.prototype.postUpdate.call(this); - } - ,updatePath: function() { - if((this._points.length - 1) % 2 != 0 || this._points.length < 3) { - throw new js__$Boot_HaxeError("A QuadPath must have at least 3 points to operate and number of points must be a odd."); - } - if(!this._updateCurve) { - return; - } - this._updateCurve = false; - var i = 0; - var j = 0; - this._distance = 0; - this._numSegs = (this._points.length - 1) / 2 | 0; - while(i < this._numSegs) { - j = i * 2; - this._curveD[i] = this.getCurveLength(this._points[j],this._points[j + 1],this._points[j + 2]); - this._distance += this._curveD[i++]; - } - i = 0; - var d = 0; - while(i < this._numSegs) { - d += this._curveD[i]; - this._curveT[i++] = d / this._distance; - } - this._curveT[this._numSegs - 1] = 1; - this._curveT.unshift(0); - } - ,getCurveLength: function(start,control,finish) { - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - var p1 = point; - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - var p2 = point1; - p1.set_x(start.x - 2 * control.x + finish.x); - p1.set_y(start.y - 2 * control.y + finish.y); - p2.set_x(2 * control.x - 2 * start.x); - p2.set_y(2 * control.y - 2 * start.y); - var a = 4 * (p1.x * p1.x + p1.y * p1.y); - var b = 4 * (p1.x * p2.x + p1.y * p2.y); - var c = p2.x * p2.x + p2.y * p2.y; - var abc = 2 * Math.sqrt(a + b + c); - var a2 = Math.sqrt(a); - var a32 = 2 * a * a2; - var c2 = 2 * Math.sqrt(c); - var ba = b / a2; - p1.put(); - p2.put(); - return (a32 * abc + a2 * b * (abc - c2) + (4 * c * a - b * b) * Math.log((2 * a2 + ba + abc) / (ba + c2))) / (4 * a32); - } - ,__class__: flixel_tweens_motion_QuadPath -}); -var flixel_ui_FlxTypedButton_$flixel_$text_$FlxText = function(X,Y,OnClick) { - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - this.lastStatus = -1; - this.maxInputMovement = Infinity; - this.mouseButtons = [-1]; - this.allowSwiping = true; - this.statusAnimations = ["normal","highlight","pressed"]; - this.labelAlphas = [0.8,1.0,0.5]; - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - var point2 = flixel_math_FlxPoint._pool.get().set(0,1); - point2._inPool = false; - this.labelOffsets = [point,point1,point2]; - flixel_FlxSprite.call(this,X,Y); - this.loadDefaultGraphic(); - this.onUp = new flixel_ui__$FlxButton_FlxButtonEvent(OnClick); - this.onDown = new flixel_ui__$FlxButton_FlxButtonEvent(); - this.onOver = new flixel_ui__$FlxButton_FlxButtonEvent(); - this.onOut = new flixel_ui__$FlxButton_FlxButtonEvent(); - this.set_status(0); - this.scrollFactor.set(); - openfl_Lib.get_current().stage.addEventListener("mouseUp",$bind(this,this.onUpEventListener)); - this.input = new flixel_input_FlxInput(0); -}; -$hxClasses["flixel.ui.FlxTypedButton_flixel_text_FlxText"] = flixel_ui_FlxTypedButton_$flixel_$text_$FlxText; -flixel_ui_FlxTypedButton_$flixel_$text_$FlxText.__name__ = "flixel.ui.FlxTypedButton_flixel_text_FlxText"; -flixel_ui_FlxTypedButton_$flixel_$text_$FlxText.__interfaces__ = [flixel_input_IFlxInput]; -flixel_ui_FlxTypedButton_$flixel_$text_$FlxText.__super__ = flixel_FlxSprite; -flixel_ui_FlxTypedButton_$flixel_$text_$FlxText.prototype = $extend(flixel_FlxSprite.prototype,{ - label: null - ,labelOffsets: null - ,labelAlphas: null - ,statusAnimations: null - ,allowSwiping: null - ,mouseButtons: null - ,maxInputMovement: null - ,status: null - ,onUp: null - ,onDown: null - ,onOver: null - ,onOut: null - ,_spriteLabel: null - ,input: null - ,currentInput: null - ,lastStatus: null - ,graphicLoaded: function() { - flixel_FlxSprite.prototype.graphicLoaded.call(this); - this.setupAnimation("normal",0); - this.setupAnimation("highlight",1); - this.setupAnimation("pressed",2); - } - ,loadDefaultGraphic: function() { - this.loadGraphic("flixel/images/ui/button.png",true,80,20); - } - ,setupAnimation: function(animationName,frameIndex) { - frameIndex = Math.min(frameIndex,this.animation._sprite.numFrames - 1) | 0; - this.animation.add(animationName,[frameIndex]); - } - ,destroy: function() { - this.set_label(flixel_util_FlxDestroyUtil.destroy(this.label)); - this._spriteLabel = null; - this.onUp = flixel_util_FlxDestroyUtil.destroy(this.onUp); - this.onDown = flixel_util_FlxDestroyUtil.destroy(this.onDown); - this.onOver = flixel_util_FlxDestroyUtil.destroy(this.onOver); - this.onOut = flixel_util_FlxDestroyUtil.destroy(this.onOut); - this.labelOffsets = flixel_util_FlxDestroyUtil.putArray(this.labelOffsets); - this.labelAlphas = null; - this.currentInput = null; - this.input = null; - openfl_Lib.get_current().stage.removeEventListener("mouseUp",$bind(this,this.onUpEventListener)); - flixel_FlxSprite.prototype.destroy.call(this); - } - ,update: function(elapsed) { - flixel_FlxSprite.prototype.update.call(this,elapsed); - if(this.visible) { - this.updateButton(); - if(this.lastStatus != this.status) { - this.updateStatusAnimation(); - this.lastStatus = this.status; - } - } - this.input.update(); - } - ,updateStatusAnimation: function() { - this.animation.play(this.statusAnimations[this.status]); - } - ,draw: function() { - flixel_FlxSprite.prototype.draw.call(this); - if(this._spriteLabel != null && this._spriteLabel.visible) { - this._spriteLabel.set_cameras(this.get_cameras()); - this._spriteLabel.draw(); - } - } - ,stampOnAtlas: function(atlas) { - var buttonNode = atlas.addNode(this.graphic.bitmap,this.graphic.key); - var result = buttonNode != null; - if(buttonNode != null) { - var buttonFrames = this.frames; - var X = buttonFrames.tileSize.x; - var Y = buttonFrames.tileSize.y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - var tileSize = point; - var tileFrames = buttonNode.getTileFrames(tileSize); - this.set_frames(tileFrames); - } - if(result && this.label != null) { - var labelNode = atlas.addNode(this.label.graphic.bitmap,this.label.graphic.key); - result = result && labelNode != null; - if(labelNode != null) { - this.label.set_frames(labelNode.getImageFrame()); - } - } - return result; - } - ,updateButton: function() { - var overlapFound = this.checkMouseOverlap(); - if(!overlapFound) { - overlapFound = this.checkTouchOverlap(); - } - if(this.currentInput != null && this.currentInput.get_justReleased() && ((this.currentInput) instanceof flixel_input_touch_FlxTouch) && overlapFound) { - this.onUpHandler(); - } - if(this.status != 0 && (!overlapFound || this.currentInput != null && this.currentInput.get_justReleased())) { - this.onOutHandler(); - } - } - ,checkMouseOverlap: function() { - var _g = 0; - var _g1 = this.get_cameras(); - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - var _g2 = 0; - var _g11 = this.mouseButtons; - while(_g2 < _g11.length) { - var buttonID = _g11[_g2]; - ++_g2; - var button = flixel_input_mouse_FlxMouseButton.getByID(buttonID); - if(button != null && this.checkInput(flixel_FlxG.mouse,button,button.justPressedPosition,camera)) { - return true; - } - } - } - return false; - } - ,checkTouchOverlap: function() { - var _g = 0; - var _g1 = this.get_cameras(); - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - var _g2 = 0; - var _g11 = flixel_FlxG.touches.list; - while(_g2 < _g11.length) { - var touch = _g11[_g2]; - ++_g2; - if(this.checkInput(touch,touch,touch.justPressedPosition,camera)) { - return true; - } - } - } - return false; - } - ,checkInput: function(pointer,input,justPressedPosition,camera) { - var tmp; - if(this.maxInputMovement != Infinity) { - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - var point1 = point; - point1._weak = true; - tmp = justPressedPosition.distanceTo(pointer.getScreenPosition(null,point1)) > this.maxInputMovement; - } else { - tmp = false; - } - if(!(tmp && input == this.currentInput)) { - if(this.overlapsPoint(pointer.getWorldPosition(camera,this._point),true,camera)) { - this.updateStatus(input); - return true; - } - } - return false; - } - ,updateStatus: function(input) { - if(input.get_justPressed()) { - this.currentInput = input; - this.onDownHandler(); - } else if(this.status == 0) { - if(this.allowSwiping && input.get_pressed()) { - this.onDownHandler(); - } else { - this.onOverHandler(); - } - } - } - ,updateLabelPosition: function() { - if(this._spriteLabel != null) { - this._spriteLabel.set_x((this.pixelPerfectPosition ? Math.floor(this.x) : this.x) + this.labelOffsets[this.status].x); - this._spriteLabel.set_y((this.pixelPerfectPosition ? Math.floor(this.y) : this.y) + this.labelOffsets[this.status].y); - } - } - ,updateLabelAlpha: function() { - if(this._spriteLabel != null && this.labelAlphas.length > this.status) { - this._spriteLabel.set_alpha(this.alpha * this.labelAlphas[this.status]); - } - } - ,onUpEventListener: function(_) { - if(this.visible && this.exists && this.active && this.status == 2) { - this.onUpHandler(); - } - } - ,onUpHandler: function() { - this.set_status(0); - this.input.release(); - this.currentInput = null; - var _this = this.onUp; - if(_this.callback != null) { - _this.callback(); - } - if(_this.sound != null) { - _this.sound.play(true); - } - } - ,onDownHandler: function() { - this.set_status(2); - this.input.press(); - var _this = this.onDown; - if(_this.callback != null) { - _this.callback(); - } - if(_this.sound != null) { - _this.sound.play(true); - } - } - ,onOverHandler: function() { - if(!flixel_FlxG.mouse.enabled) { - this.set_status(0); - return; - } - this.set_status(1); - var _this = this.onOver; - if(_this.callback != null) { - _this.callback(); - } - if(_this.sound != null) { - _this.sound.play(true); - } - } - ,onOutHandler: function() { - this.set_status(0); - this.input.release(); - var _this = this.onOut; - if(_this.callback != null) { - _this.callback(); - } - if(_this.sound != null) { - _this.sound.play(true); - } - } - ,set_label: function(Value) { - if(Value != null) { - Value.scrollFactor.put(); - Value.scrollFactor = this.scrollFactor; - } - this.label = Value; - this._spriteLabel = this.label; - this.updateLabelPosition(); - return Value; - } - ,set_status: function(Value) { - this.status = Value; - this.updateLabelAlpha(); - return this.status; - } - ,set_alpha: function(Value) { - flixel_FlxSprite.prototype.set_alpha.call(this,Value); - this.updateLabelAlpha(); - return this.alpha; - } - ,set_x: function(Value) { - flixel_FlxSprite.prototype.set_x.call(this,Value); - this.updateLabelPosition(); - return this.x; - } - ,set_y: function(Value) { - flixel_FlxSprite.prototype.set_y.call(this,Value); - this.updateLabelPosition(); - return this.y; - } - ,get_justReleased: function() { - return this.input.current == -1; - } - ,get_released: function() { - var _this = this.input; - if(_this.current != 0) { - return _this.current == -1; - } else { - return true; - } - } - ,get_pressed: function() { - var _this = this.input; - if(_this.current != 1) { - return _this.current == 2; - } else { - return true; - } - } - ,get_justPressed: function() { - return this.input.current == 2; - } - ,__class__: flixel_ui_FlxTypedButton_$flixel_$text_$FlxText - ,__properties__: $extend(flixel_FlxSprite.prototype.__properties__,{get_justPressed:"get_justPressed",get_pressed:"get_pressed",get_released:"get_released",get_justReleased:"get_justReleased",set_status:"set_status",set_label:"set_label"}) -}); -var flixel_ui_FlxButton = function(X,Y,Text1,OnClick) { - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - flixel_ui_FlxTypedButton_$flixel_$text_$FlxText.call(this,X,Y,OnClick); - var _g = 0; - var _g1 = this.labelOffsets; - while(_g < _g1.length) { - var point = _g1[_g]; - ++_g; - point.set(point.x - 1,point.y + 3); - } - if(Text1 != null) { - this.set_label(new flixel_text_FlxText(this.x + this.labelOffsets[0].x,this.y + this.labelOffsets[0].y,80,Text1)); - this.label.setFormat(null,8,3355443,"center"); - this.label.set_alpha(this.labelAlphas[this.status]); - this.label.drawFrame(true); - } -}; -$hxClasses["flixel.ui.FlxButton"] = flixel_ui_FlxButton; -flixel_ui_FlxButton.__name__ = "flixel.ui.FlxButton"; -flixel_ui_FlxButton.__super__ = flixel_ui_FlxTypedButton_$flixel_$text_$FlxText; -flixel_ui_FlxButton.prototype = $extend(flixel_ui_FlxTypedButton_$flixel_$text_$FlxText.prototype,{ - resetHelpers: function() { - flixel_ui_FlxTypedButton_$flixel_$text_$FlxText.prototype.resetHelpers.call(this); - if(this.label != null) { - var tmp = this.label; - var tmp1 = this.get_width() | 0; - tmp.set_fieldWidth(this.label.frameWidth = tmp1); - this.label.set_size(this.label._defaultFormat.size | 0); - } - } - ,initLabel: function(Text1) { - if(Text1 != null) { - this.set_label(new flixel_text_FlxText(this.x + this.labelOffsets[0].x,this.y + this.labelOffsets[0].y,80,Text1)); - this.label.setFormat(null,8,3355443,"center"); - this.label.set_alpha(this.labelAlphas[this.status]); - this.label.drawFrame(true); - } - } - ,get_text: function() { - if(this.label != null) { - return this.label.text; - } else { - return null; - } - } - ,set_text: function(Text1) { - if(this.label == null) { - if(Text1 != null) { - this.set_label(new flixel_text_FlxText(this.x + this.labelOffsets[0].x,this.y + this.labelOffsets[0].y,80,Text1)); - this.label.setFormat(null,8,3355443,"center"); - this.label.set_alpha(this.labelAlphas[this.status]); - this.label.drawFrame(true); - } - } else { - this.label.set_text(Text1); - } - return Text1; - } - ,__class__: flixel_ui_FlxButton - ,__properties__: $extend(flixel_ui_FlxTypedButton_$flixel_$text_$FlxText.prototype.__properties__,{set_text:"set_text",get_text:"get_text"}) -}); -var flixel_ui_FlxTypedButton = function(X,Y,OnClick) { - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - this.lastStatus = -1; - this.maxInputMovement = Infinity; - this.mouseButtons = [-1]; - this.allowSwiping = true; - this.statusAnimations = ["normal","highlight","pressed"]; - this.labelAlphas = [0.8,1.0,0.5]; - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - var point1 = flixel_math_FlxPoint._pool.get().set(0,0); - point1._inPool = false; - var point2 = flixel_math_FlxPoint._pool.get().set(0,1); - point2._inPool = false; - this.labelOffsets = [point,point1,point2]; - flixel_FlxSprite.call(this,X,Y); - this.loadDefaultGraphic(); - this.onUp = new flixel_ui__$FlxButton_FlxButtonEvent(OnClick); - this.onDown = new flixel_ui__$FlxButton_FlxButtonEvent(); - this.onOver = new flixel_ui__$FlxButton_FlxButtonEvent(); - this.onOut = new flixel_ui__$FlxButton_FlxButtonEvent(); - this.set_status(0); - this.scrollFactor.set(); - openfl_Lib.get_current().stage.addEventListener("mouseUp",$bind(this,this.onUpEventListener)); - this.input = new flixel_input_FlxInput(0); -}; -$hxClasses["flixel.ui.FlxTypedButton"] = flixel_ui_FlxTypedButton; -flixel_ui_FlxTypedButton.__name__ = "flixel.ui.FlxTypedButton"; -flixel_ui_FlxTypedButton.__interfaces__ = [flixel_input_IFlxInput]; -flixel_ui_FlxTypedButton.__super__ = flixel_FlxSprite; -flixel_ui_FlxTypedButton.prototype = $extend(flixel_FlxSprite.prototype,{ - label: null - ,labelOffsets: null - ,labelAlphas: null - ,statusAnimations: null - ,allowSwiping: null - ,mouseButtons: null - ,maxInputMovement: null - ,status: null - ,onUp: null - ,onDown: null - ,onOver: null - ,onOut: null - ,_spriteLabel: null - ,input: null - ,currentInput: null - ,lastStatus: null - ,graphicLoaded: function() { - flixel_FlxSprite.prototype.graphicLoaded.call(this); - this.setupAnimation("normal",0); - this.setupAnimation("highlight",1); - this.setupAnimation("pressed",2); - } - ,loadDefaultGraphic: function() { - this.loadGraphic("flixel/images/ui/button.png",true,80,20); - } - ,setupAnimation: function(animationName,frameIndex) { - frameIndex = Math.min(frameIndex,this.animation._sprite.numFrames - 1) | 0; - this.animation.add(animationName,[frameIndex]); - } - ,destroy: function() { - this.set_label(flixel_util_FlxDestroyUtil.destroy(this.label)); - this._spriteLabel = null; - this.onUp = flixel_util_FlxDestroyUtil.destroy(this.onUp); - this.onDown = flixel_util_FlxDestroyUtil.destroy(this.onDown); - this.onOver = flixel_util_FlxDestroyUtil.destroy(this.onOver); - this.onOut = flixel_util_FlxDestroyUtil.destroy(this.onOut); - this.labelOffsets = flixel_util_FlxDestroyUtil.putArray(this.labelOffsets); - this.labelAlphas = null; - this.currentInput = null; - this.input = null; - openfl_Lib.get_current().stage.removeEventListener("mouseUp",$bind(this,this.onUpEventListener)); - flixel_FlxSprite.prototype.destroy.call(this); - } - ,update: function(elapsed) { - flixel_FlxSprite.prototype.update.call(this,elapsed); - if(this.visible) { - this.updateButton(); - if(this.lastStatus != this.status) { - this.updateStatusAnimation(); - this.lastStatus = this.status; - } - } - this.input.update(); - } - ,updateStatusAnimation: function() { - this.animation.play(this.statusAnimations[this.status]); - } - ,draw: function() { - flixel_FlxSprite.prototype.draw.call(this); - if(this._spriteLabel != null && this._spriteLabel.visible) { - this._spriteLabel.set_cameras(this.get_cameras()); - this._spriteLabel.draw(); - } - } - ,stampOnAtlas: function(atlas) { - var buttonNode = atlas.addNode(this.graphic.bitmap,this.graphic.key); - var result = buttonNode != null; - if(buttonNode != null) { - var buttonFrames = this.frames; - var X = buttonFrames.tileSize.x; - var Y = buttonFrames.tileSize.y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - var tileSize = point; - var tileFrames = buttonNode.getTileFrames(tileSize); - this.set_frames(tileFrames); - } - if(result && this.label != null) { - var labelNode = atlas.addNode(this.label.graphic.bitmap,this.label.graphic.key); - result = result && labelNode != null; - if(labelNode != null) { - this.label.set_frames(labelNode.getImageFrame()); - } - } - return result; - } - ,updateButton: function() { - var overlapFound = this.checkMouseOverlap(); - if(!overlapFound) { - overlapFound = this.checkTouchOverlap(); - } - if(this.currentInput != null && this.currentInput.get_justReleased() && ((this.currentInput) instanceof flixel_input_touch_FlxTouch) && overlapFound) { - this.onUpHandler(); - } - if(this.status != 0 && (!overlapFound || this.currentInput != null && this.currentInput.get_justReleased())) { - this.onOutHandler(); - } - } - ,checkMouseOverlap: function() { - var _g = 0; - var _g1 = this.get_cameras(); - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - var _g2 = 0; - var _g11 = this.mouseButtons; - while(_g2 < _g11.length) { - var buttonID = _g11[_g2]; - ++_g2; - var button = flixel_input_mouse_FlxMouseButton.getByID(buttonID); - if(button != null && this.checkInput(flixel_FlxG.mouse,button,button.justPressedPosition,camera)) { - return true; - } - } - } - return false; - } - ,checkTouchOverlap: function() { - var _g = 0; - var _g1 = this.get_cameras(); - while(_g < _g1.length) { - var camera = _g1[_g]; - ++_g; - var _g2 = 0; - var _g11 = flixel_FlxG.touches.list; - while(_g2 < _g11.length) { - var touch = _g11[_g2]; - ++_g2; - if(this.checkInput(touch,touch,touch.justPressedPosition,camera)) { - return true; - } - } - } - return false; - } - ,checkInput: function(pointer,input,justPressedPosition,camera) { - var tmp; - if(this.maxInputMovement != Infinity) { - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - var point1 = point; - point1._weak = true; - tmp = justPressedPosition.distanceTo(pointer.getScreenPosition(null,point1)) > this.maxInputMovement; - } else { - tmp = false; - } - if(!(tmp && input == this.currentInput)) { - if(this.overlapsPoint(pointer.getWorldPosition(camera,this._point),true,camera)) { - this.updateStatus(input); - return true; - } - } - return false; - } - ,updateStatus: function(input) { - if(input.get_justPressed()) { - this.currentInput = input; - this.onDownHandler(); - } else if(this.status == 0) { - if(this.allowSwiping && input.get_pressed()) { - this.onDownHandler(); - } else { - this.onOverHandler(); - } - } - } - ,updateLabelPosition: function() { - if(this._spriteLabel != null) { - this._spriteLabel.set_x((this.pixelPerfectPosition ? Math.floor(this.x) : this.x) + this.labelOffsets[this.status].x); - this._spriteLabel.set_y((this.pixelPerfectPosition ? Math.floor(this.y) : this.y) + this.labelOffsets[this.status].y); - } - } - ,updateLabelAlpha: function() { - if(this._spriteLabel != null && this.labelAlphas.length > this.status) { - this._spriteLabel.set_alpha(this.alpha * this.labelAlphas[this.status]); - } - } - ,onUpEventListener: function(_) { - if(this.visible && this.exists && this.active && this.status == 2) { - this.onUpHandler(); - } - } - ,onUpHandler: function() { - this.set_status(0); - this.input.release(); - this.currentInput = null; - var _this = this.onUp; - if(_this.callback != null) { - _this.callback(); - } - if(_this.sound != null) { - _this.sound.play(true); - } - } - ,onDownHandler: function() { - this.set_status(2); - this.input.press(); - var _this = this.onDown; - if(_this.callback != null) { - _this.callback(); - } - if(_this.sound != null) { - _this.sound.play(true); - } - } - ,onOverHandler: function() { - if(!flixel_FlxG.mouse.enabled) { - this.set_status(0); - return; - } - this.set_status(1); - var _this = this.onOver; - if(_this.callback != null) { - _this.callback(); - } - if(_this.sound != null) { - _this.sound.play(true); - } - } - ,onOutHandler: function() { - this.set_status(0); - this.input.release(); - var _this = this.onOut; - if(_this.callback != null) { - _this.callback(); - } - if(_this.sound != null) { - _this.sound.play(true); - } - } - ,set_label: function(Value) { - if(Value != null) { - Value.scrollFactor.put(); - Value.scrollFactor = this.scrollFactor; - } - this.label = Value; - this._spriteLabel = this.label; - this.updateLabelPosition(); - return Value; - } - ,set_status: function(Value) { - this.status = Value; - this.updateLabelAlpha(); - return this.status; - } - ,set_alpha: function(Value) { - flixel_FlxSprite.prototype.set_alpha.call(this,Value); - this.updateLabelAlpha(); - return this.alpha; - } - ,set_x: function(Value) { - flixel_FlxSprite.prototype.set_x.call(this,Value); - this.updateLabelPosition(); - return this.x; - } - ,set_y: function(Value) { - flixel_FlxSprite.prototype.set_y.call(this,Value); - this.updateLabelPosition(); - return this.y; - } - ,get_justReleased: function() { - return this.input.current == -1; - } - ,get_released: function() { - var _this = this.input; - if(_this.current != 0) { - return _this.current == -1; - } else { - return true; - } - } - ,get_pressed: function() { - var _this = this.input; - if(_this.current != 1) { - return _this.current == 2; - } else { - return true; - } - } - ,get_justPressed: function() { - return this.input.current == 2; - } - ,__class__: flixel_ui_FlxTypedButton - ,__properties__: $extend(flixel_FlxSprite.prototype.__properties__,{get_justPressed:"get_justPressed",get_pressed:"get_pressed",get_released:"get_released",get_justReleased:"get_justReleased",set_status:"set_status",set_label:"set_label"}) -}); -var flixel_ui__$FlxButton_FlxButtonEvent = function(Callback,sound) { - this.callback = Callback; - this.sound = sound; -}; -$hxClasses["flixel.ui._FlxButton.FlxButtonEvent"] = flixel_ui__$FlxButton_FlxButtonEvent; -flixel_ui__$FlxButton_FlxButtonEvent.__name__ = "flixel.ui._FlxButton.FlxButtonEvent"; -flixel_ui__$FlxButton_FlxButtonEvent.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_ui__$FlxButton_FlxButtonEvent.prototype = { - callback: null - ,sound: null - ,destroy: function() { - this.callback = null; - this.sound = flixel_util_FlxDestroyUtil.destroy(this.sound); - } - ,fire: function() { - if(this.callback != null) { - this.callback(); - } - if(this.sound != null) { - this.sound.play(true); - } - } - ,__class__: flixel_ui__$FlxButton_FlxButtonEvent -}; -var flixel_util_FlxArrayUtil = function() { }; -$hxClasses["flixel.util.FlxArrayUtil"] = flixel_util_FlxArrayUtil; -flixel_util_FlxArrayUtil.__name__ = "flixel.util.FlxArrayUtil"; -flixel_util_FlxArrayUtil.fastSplice_flixel_tweens_FlxTween = function(array,element) { - var index = array.indexOf(element); - if(index != -1) { - array[index] = array[array.length - 1]; - array.pop(); - return array; - } - return array; -}; -flixel_util_FlxArrayUtil.fastSplice_flixel_util_FlxTimer = function(array,element) { - var index = array.indexOf(element); - if(index != -1) { - array[index] = array[array.length - 1]; - array.pop(); - return array; - } - return array; -}; -flixel_util_FlxArrayUtil.setLength_Int = function(array,newLength) { - if(newLength < 0) { - return array; - } - var oldLength = array.length; - var diff = newLength - oldLength; - if(diff >= 0) { - return array; - } - diff = -diff; - var _g = 0; - var _g1 = diff; - while(_g < _g1) { - var i = _g++; - array.pop(); - } - return array; -}; -flixel_util_FlxArrayUtil.flatten2DArray_Int = function(array) { - var result = []; - var _g = 0; - while(_g < array.length) { - var innerArray = array[_g]; - ++_g; - var _g1 = 0; - while(_g1 < innerArray.length) { - var element = innerArray[_g1]; - ++_g1; - result.push(element); - } - } - return result; -}; -flixel_util_FlxArrayUtil.swapAndPop_fastSplice_T = function(array,index) { - array[index] = array[array.length - 1]; - array.pop(); - return array; -}; -flixel_util_FlxArrayUtil.setLength_flixel_group_FlxTypedGroup_T = function(array,newLength) { - if(newLength < 0) { - return array; - } - var oldLength = array.length; - var diff = newLength - oldLength; - if(diff >= 0) { - return array; - } - diff = -diff; - var _g = 0; - var _g1 = diff; - while(_g < _g1) { - var i = _g++; - array.pop(); - } - return array; -}; -flixel_util_FlxArrayUtil.clearArray = function(array,recursive) { - if(recursive == null) { - recursive = false; - } - if(array == null) { - return array; - } - if(recursive) { - while(array.length > 0) { - var thing = array.pop(); - if(((thing) instanceof Array)) { - flixel_util_FlxArrayUtil.clearArray(array,recursive); - } - } - } else { - while(array.length > 0) array.pop(); - } - return array; -}; -flixel_util_FlxArrayUtil.equals = function(array1,array2) { - if(array1 == null && array2 == null) { - return true; - } - if(array1 == null && array2 != null) { - return false; - } - if(array1 != null && array2 == null) { - return false; - } - if(array1.length != array2.length) { - return false; - } - var _g = 0; - var _g1 = array1.length; - while(_g < _g1) { - var i = _g++; - if(array1[i] != array2[i]) { - return false; - } - } - return true; -}; -flixel_util_FlxArrayUtil.last = function(array) { - if(array == null || array.length == 0) { - return null; - } - return array[array.length - 1]; -}; -flixel_util_FlxArrayUtil.safePush = function(array,element) { - if(array == null) { - array = []; - } - array.push(element); - return array; -}; -flixel_util_FlxArrayUtil.contains = function(array,element) { - return array.indexOf(element) != -1; -}; -var flixel_util_FlxAxes = $hxEnums["flixel.util.FlxAxes"] = { __ename__ : "flixel.util.FlxAxes", __constructs__ : ["X","Y","XY"] - ,X: {_hx_index:0,__enum__:"flixel.util.FlxAxes",toString:$estr} - ,Y: {_hx_index:1,__enum__:"flixel.util.FlxAxes",toString:$estr} - ,XY: {_hx_index:2,__enum__:"flixel.util.FlxAxes",toString:$estr} -}; -var openfl_geom_Rectangle = function(x,y,width,height) { - if(height == null) { - height = 0; - } - if(width == null) { - width = 0; - } - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - this.x = x; - this.y = y; - this.width = width; - this.height = height; -}; -$hxClasses["openfl.geom.Rectangle"] = openfl_geom_Rectangle; -openfl_geom_Rectangle.__name__ = "openfl.geom.Rectangle"; -openfl_geom_Rectangle.__limeRectangle = null; -openfl_geom_Rectangle.prototype = { - height: null - ,width: null - ,x: null - ,y: null - ,clone: function() { - return new openfl_geom_Rectangle(this.x,this.y,this.width,this.height); - } - ,contains: function(x,y) { - if(x >= this.x && y >= this.y && x < this.get_right()) { - return y < this.get_bottom(); - } else { - return false; - } - } - ,containsPoint: function(point) { - return this.contains(point.x,point.y); - } - ,containsRect: function(rect) { - if(rect.width <= 0 || rect.height <= 0) { - if(rect.x > this.x && rect.y > this.y && rect.get_right() < this.get_right()) { - return rect.get_bottom() < this.get_bottom(); - } else { - return false; - } - } else if(rect.x >= this.x && rect.y >= this.y && rect.get_right() <= this.get_right()) { - return rect.get_bottom() <= this.get_bottom(); - } else { - return false; - } - } - ,copyFrom: function(sourceRect) { - this.x = sourceRect.x; - this.y = sourceRect.y; - this.width = sourceRect.width; - this.height = sourceRect.height; - } - ,equals: function(toCompare) { - if(toCompare == this) { - return true; - } else if(toCompare != null && this.x == toCompare.x && this.y == toCompare.y && this.width == toCompare.width) { - return this.height == toCompare.height; - } else { - return false; - } - } - ,inflate: function(dx,dy) { - this.x -= dx; - this.width += dx * 2; - this.y -= dy; - this.height += dy * 2; - } - ,inflatePoint: function(point) { - this.inflate(point.x,point.y); - } - ,intersection: function(toIntersect) { - var x0 = this.x < toIntersect.x ? toIntersect.x : this.x; - var x1 = this.get_right() > toIntersect.get_right() ? toIntersect.get_right() : this.get_right(); - if(x1 <= x0) { - return new openfl_geom_Rectangle(); - } - var y0 = this.y < toIntersect.y ? toIntersect.y : this.y; - var y1 = this.get_bottom() > toIntersect.get_bottom() ? toIntersect.get_bottom() : this.get_bottom(); - if(y1 <= y0) { - return new openfl_geom_Rectangle(); - } - return new openfl_geom_Rectangle(x0,y0,x1 - x0,y1 - y0); - } - ,intersects: function(toIntersect) { - var x0 = this.x < toIntersect.x ? toIntersect.x : this.x; - var x1 = this.get_right() > toIntersect.get_right() ? toIntersect.get_right() : this.get_right(); - if(x1 <= x0) { - return false; - } - var y0 = this.y < toIntersect.y ? toIntersect.y : this.y; - var y1 = this.get_bottom() > toIntersect.get_bottom() ? toIntersect.get_bottom() : this.get_bottom(); - return y1 > y0; - } - ,isEmpty: function() { - if(!(this.width <= 0)) { - return this.height <= 0; - } else { - return true; - } - } - ,offset: function(dx,dy) { - this.x += dx; - this.y += dy; - } - ,offsetPoint: function(point) { - this.x += point.x; - this.y += point.y; - } - ,setEmpty: function() { - this.x = this.y = this.width = this.height = 0; - } - ,setTo: function(xa,ya,widtha,heighta) { - this.x = xa; - this.y = ya; - this.width = widtha; - this.height = heighta; - } - ,toString: function() { - return "(x=" + this.x + ", y=" + this.y + ", width=" + this.width + ", height=" + this.height + ")"; - } - ,union: function(toUnion) { - if(this.width == 0 || this.height == 0) { - return toUnion.clone(); - } else if(toUnion.width == 0 || toUnion.height == 0) { - return this.clone(); - } - var x0 = this.x > toUnion.x ? toUnion.x : this.x; - var x1 = this.get_right() < toUnion.get_right() ? toUnion.get_right() : this.get_right(); - var y0 = this.y > toUnion.y ? toUnion.y : this.y; - var y1 = this.get_bottom() < toUnion.get_bottom() ? toUnion.get_bottom() : this.get_bottom(); - return new openfl_geom_Rectangle(x0,y0,x1 - x0,y1 - y0); - } - ,__contract: function(x,y,width,height) { - if(this.width == 0 && this.height == 0) { - return; - } - var offsetX = 0.0; - var offsetY = 0.0; - var offsetRight = 0.0; - var offsetBottom = 0.0; - if(this.x < x) { - offsetX = x - this.x; - } - if(this.y < y) { - offsetY = y - this.y; - } - if(this.get_right() > x + width) { - offsetRight = x + width - this.get_right(); - } - if(this.get_bottom() > y + height) { - offsetBottom = y + height - this.get_bottom(); - } - this.x += offsetX; - this.y += offsetY; - this.width += offsetRight - offsetX; - this.height += offsetBottom - offsetY; - } - ,__expand: function(x,y,width,height) { - if(this.width == 0 && this.height == 0) { - this.x = x; - this.y = y; - this.width = width; - this.height = height; - return; - } - var cacheRight = this.get_right(); - var cacheBottom = this.get_bottom(); - if(this.x > x) { - this.x = x; - this.width = cacheRight - x; - } - if(this.y > y) { - this.y = y; - this.height = cacheBottom - y; - } - if(cacheRight < x + width) { - this.width = x + width - this.x; - } - if(cacheBottom < y + height) { - this.height = y + height - this.y; - } - } - ,__toLimeRectangle: function() { - if(openfl_geom_Rectangle.__limeRectangle == null) { - openfl_geom_Rectangle.__limeRectangle = new lime_math_Rectangle(); - } - openfl_geom_Rectangle.__limeRectangle.setTo(this.x,this.y,this.width,this.height); - return openfl_geom_Rectangle.__limeRectangle; - } - ,__transform: function(rect,m) { - var tx0 = m.a * this.x + m.c * this.y; - var tx1 = tx0; - var ty0 = m.b * this.x + m.d * this.y; - var ty1 = ty0; - var tx = m.a * (this.x + this.width) + m.c * this.y; - var ty = m.b * (this.x + this.width) + m.d * this.y; - if(tx < tx0) { - tx0 = tx; - } - if(ty < ty0) { - ty0 = ty; - } - if(tx > tx1) { - tx1 = tx; - } - if(ty > ty1) { - ty1 = ty; - } - tx = m.a * (this.x + this.width) + m.c * (this.y + this.height); - ty = m.b * (this.x + this.width) + m.d * (this.y + this.height); - if(tx < tx0) { - tx0 = tx; - } - if(ty < ty0) { - ty0 = ty; - } - if(tx > tx1) { - tx1 = tx; - } - if(ty > ty1) { - ty1 = ty; - } - tx = m.a * this.x + m.c * (this.y + this.height); - ty = m.b * this.x + m.d * (this.y + this.height); - if(tx < tx0) { - tx0 = tx; - } - if(ty < ty0) { - ty0 = ty; - } - if(tx > tx1) { - tx1 = tx; - } - if(ty > ty1) { - ty1 = ty; - } - rect.setTo(tx0 + m.tx,ty0 + m.ty,tx1 - tx0,ty1 - ty0); - } - ,get_bottom: function() { - return this.y + this.height; - } - ,set_bottom: function(b) { - this.height = b - this.y; - return b; - } - ,get_bottomRight: function() { - return new openfl_geom_Point(this.x + this.width,this.y + this.height); - } - ,set_bottomRight: function(p) { - this.width = p.x - this.x; - this.height = p.y - this.y; - return p.clone(); - } - ,get_left: function() { - return this.x; - } - ,set_left: function(l) { - this.width -= l - this.x; - this.x = l; - return l; - } - ,get_right: function() { - return this.x + this.width; - } - ,set_right: function(r) { - this.width = r - this.x; - return r; - } - ,get_size: function() { - return new openfl_geom_Point(this.width,this.height); - } - ,set_size: function(p) { - this.width = p.x; - this.height = p.y; - return p.clone(); - } - ,get_top: function() { - return this.y; - } - ,set_top: function(t) { - this.height -= t - this.y; - this.y = t; - return t; - } - ,get_topLeft: function() { - return new openfl_geom_Point(this.x,this.y); - } - ,set_topLeft: function(p) { - this.x = p.x; - this.y = p.y; - return p.clone(); - } - ,__class__: openfl_geom_Rectangle - ,__properties__: {set_topLeft:"set_topLeft",get_topLeft:"get_topLeft",set_top:"set_top",get_top:"get_top",set_size:"set_size",get_size:"get_size",set_right:"set_right",get_right:"get_right",set_left:"set_left",get_left:"get_left",set_bottomRight:"set_bottomRight",get_bottomRight:"get_bottomRight",set_bottom:"set_bottom",get_bottom:"get_bottom"} -}; -var flixel_util_FlxBitmapDataPool = function() { }; -$hxClasses["flixel.util.FlxBitmapDataPool"] = flixel_util_FlxBitmapDataPool; -flixel_util_FlxBitmapDataPool.__name__ = "flixel.util.FlxBitmapDataPool"; -flixel_util_FlxBitmapDataPool.__properties__ = {set_maxLength:"set_maxLength"}; -flixel_util_FlxBitmapDataPool.get = function(w,h,transparent,fillColor,exactSize) { - if(exactSize == null) { - exactSize = false; - } - if(transparent == null) { - transparent = true; - } - var res = null; - var node = flixel_util_FlxBitmapDataPool._head; - while(node != null) { - var bmd = node.bmd; - if(bmd.transparent == transparent && bmd.width >= w && bmd.height >= h && (!exactSize || exactSize && bmd.width == w && bmd.height == h)) { - res = bmd; - if(node.prev != null) { - node.prev.next = node.next; - } - if(node.next != null) { - node.next.prev = node.prev; - } - if(node == flixel_util_FlxBitmapDataPool._head) { - flixel_util_FlxBitmapDataPool._head = node.next; - } - if(node == flixel_util_FlxBitmapDataPool._tail) { - flixel_util_FlxBitmapDataPool._tail = node.prev; - } - node = null; - flixel_util_FlxBitmapDataPool.$length--; - break; - } - node = node.next; - } - if(res != null) { - if(fillColor != null) { - flixel_util_FlxBitmapDataPool._rect.x = 0; - flixel_util_FlxBitmapDataPool._rect.y = 0; - flixel_util_FlxBitmapDataPool._rect.width = w; - flixel_util_FlxBitmapDataPool._rect.height = h; - res.fillRect(flixel_util_FlxBitmapDataPool._rect,fillColor); - } - } else { - res = new openfl_display_BitmapData(w,h,transparent,fillColor != null ? fillColor : -1); - } - return res; -}; -flixel_util_FlxBitmapDataPool.put = function(bmd) { - if(flixel_util_FlxBitmapDataPool.$length >= flixel_util_FlxBitmapDataPool.maxLength) { - var last = flixel_util_FlxBitmapDataPool._tail; - last.bmd.dispose(); - if(last.prev != null) { - last.prev.next = null; - flixel_util_FlxBitmapDataPool._tail = last.prev; - } - last = null; - flixel_util_FlxBitmapDataPool.$length--; - } - var node = new flixel_util__$FlxBitmapDataPool_FlxBitmapDataPoolNode(bmd); - node.next = flixel_util_FlxBitmapDataPool._head; - if(flixel_util_FlxBitmapDataPool._head == null) { - flixel_util_FlxBitmapDataPool._head = flixel_util_FlxBitmapDataPool._tail = node; - } else { - flixel_util_FlxBitmapDataPool._head = node; - node.next.prev = node; - } - flixel_util_FlxBitmapDataPool.$length++; -}; -flixel_util_FlxBitmapDataPool.clear = function() { - var node = flixel_util_FlxBitmapDataPool._head; - while(node != null) { - var bmd = node.bmd; - bmd.dispose(); - bmd = null; - node = node.next; - } - flixel_util_FlxBitmapDataPool.$length = 0; - flixel_util_FlxBitmapDataPool._head = flixel_util_FlxBitmapDataPool._tail = null; -}; -flixel_util_FlxBitmapDataPool.set_maxLength = function(value) { - if(flixel_util_FlxBitmapDataPool.maxLength != value) { - var node = flixel_util_FlxBitmapDataPool._tail; - while(node != null && flixel_util_FlxBitmapDataPool.$length > value) { - var bmd = node.bmd; - bmd.dispose(); - bmd = null; - node = node.prev; - flixel_util_FlxBitmapDataPool.$length--; - } - } - return flixel_util_FlxBitmapDataPool.maxLength = value; -}; -var flixel_util__$FlxBitmapDataPool_FlxBitmapDataPoolNode = function(bmd,prev,next) { - this.bmd = bmd; - this.prev = prev; - this.next = next; -}; -$hxClasses["flixel.util._FlxBitmapDataPool.FlxBitmapDataPoolNode"] = flixel_util__$FlxBitmapDataPool_FlxBitmapDataPoolNode; -flixel_util__$FlxBitmapDataPool_FlxBitmapDataPoolNode.__name__ = "flixel.util._FlxBitmapDataPool.FlxBitmapDataPoolNode"; -flixel_util__$FlxBitmapDataPool_FlxBitmapDataPoolNode.prototype = { - bmd: null - ,prev: null - ,next: null - ,__class__: flixel_util__$FlxBitmapDataPool_FlxBitmapDataPoolNode -}; -var flixel_util_FlxBitmapDataUtil = function() { }; -$hxClasses["flixel.util.FlxBitmapDataUtil"] = flixel_util_FlxBitmapDataUtil; -flixel_util_FlxBitmapDataUtil.__name__ = "flixel.util.FlxBitmapDataUtil"; -flixel_util_FlxBitmapDataUtil.merge = function(sourceBitmapData,sourceRect,destBitmapData,destPoint,redMultiplier,greenMultiplier,blueMultiplier,alphaMultiplier) { - if(destPoint.x >= destBitmapData.width || destPoint.y >= destBitmapData.height || sourceRect.x >= sourceBitmapData.width || sourceRect.y >= sourceBitmapData.height || sourceRect.x + sourceRect.width <= 0 || sourceRect.y + sourceRect.height <= 0) { - return; - } - while(sourceRect.x + sourceRect.width > sourceBitmapData.width || sourceRect.y + sourceRect.height > sourceBitmapData.height || sourceRect.x < 0 || sourceRect.y < 0 || destPoint.x < 0 || destPoint.y < 0) { - if(sourceRect.x + sourceRect.width > sourceBitmapData.width) { - sourceRect.width = sourceBitmapData.width - sourceRect.x; - } - if(sourceRect.y + sourceRect.height > sourceBitmapData.height) { - sourceRect.height = sourceBitmapData.height - sourceRect.y; - } - if(sourceRect.x < 0) { - destPoint.x -= sourceRect.x; - sourceRect.width += sourceRect.x; - sourceRect.x = 0; - } - if(sourceRect.y < 0) { - destPoint.y -= sourceRect.y; - sourceRect.height += sourceRect.y; - sourceRect.y = 0; - } - if(destPoint.x >= destBitmapData.width || destPoint.y >= destBitmapData.height) { - return; - } - if(destPoint.x < 0) { - sourceRect.x -= destPoint.x; - sourceRect.width += destPoint.x; - destPoint.x = 0; - } - if(destPoint.y < 0) { - sourceRect.y -= destPoint.y; - sourceRect.height += destPoint.y; - destPoint.y = 0; - } - } - if(sourceRect.width <= 0 || sourceRect.height <= 0) { - return; - } - var startSourceX = Math.round(sourceRect.x); - var startSourceY = Math.round(sourceRect.y); - var width = Math.round(sourceRect.width); - var height = Math.round(sourceRect.height); - var sourceX = startSourceX; - var sourceY = startSourceY; - var destX = Math.round(destPoint.x); - var destY = Math.round(destPoint.y); - var currX = destX; - var currY = destY; - var sourceColor; - var destColor; - var resultRed; - var resultGreen; - var resultBlue; - var resultAlpha; - var resultColor = 0; - destBitmapData.lock(); - var _g = 0; - var _g1 = width; - while(_g < _g1) { - var i = _g++; - var _g2 = 0; - var _g11 = height; - while(_g2 < _g11) { - var j = _g2++; - sourceX = startSourceX + i; - sourceY = startSourceY + j; - currX = destX + i; - currY = destY + j; - sourceColor = sourceBitmapData.getPixel32(sourceX,sourceY); - destColor = destBitmapData.getPixel32(currX,currY); - resultRed = ((sourceColor >> 16 & 255) * redMultiplier + (destColor >> 16 & 255) * (256 - redMultiplier)) / 256 | 0; - resultGreen = ((sourceColor >> 8 & 255) * greenMultiplier + (destColor >> 8 & 255) * (256 - greenMultiplier)) / 256 | 0; - resultBlue = ((sourceColor & 255) * blueMultiplier + (destColor & 255) * (256 - blueMultiplier)) / 256 | 0; - resultAlpha = ((sourceColor >> 24 & 255) * alphaMultiplier + (destColor >> 24 & 255) * (256 - alphaMultiplier)) / 256 | 0; - var Alpha = resultAlpha; - if(Alpha == null) { - Alpha = 255; - } - var color = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 255; - } - color &= -16711681; - color |= (resultRed > 255 ? 255 : resultRed < 0 ? 0 : resultRed) << 16; - color &= -65281; - color |= (resultGreen > 255 ? 255 : resultGreen < 0 ? 0 : resultGreen) << 8; - color &= -256; - color |= resultBlue > 255 ? 255 : resultBlue < 0 ? 0 : resultBlue; - color &= 16777215; - color |= (Alpha1 > 255 ? 255 : Alpha1 < 0 ? 0 : Alpha1) << 24; - resultColor = color; - destBitmapData.setPixel32(currX,currY,resultColor); - } - } - destBitmapData.unlock(); -}; -flixel_util_FlxBitmapDataUtil.mergeColorComponent = function(source,dest,multiplier) { - return (source * multiplier + dest * (256 - multiplier)) / 256 | 0; -}; -flixel_util_FlxBitmapDataUtil.compare = function(Bitmap1,Bitmap2) { - if(Bitmap1 == Bitmap2) { - return 0; - } - if(Bitmap1.width != Bitmap2.width) { - return -3; - } else if(Bitmap1.height != Bitmap2.height) { - return -4; - } else { - var width = Bitmap1.width; - var height = Bitmap1.height; - var result = new openfl_display_BitmapData(width,height,true,0); - var identical = true; - var _g = 0; - var _g1 = width; - while(_g < _g1) { - var i = _g++; - var _g2 = 0; - var _g11 = height; - while(_g2 < _g11) { - var j = _g2++; - var pixel1 = Bitmap1.getPixel32(i,j); - var pixel2 = Bitmap2.getPixel32(i,j); - if(pixel1 != pixel2) { - identical = false; - if((pixel1 & 16777215) != (pixel2 & 16777215)) { - var diff = (pixel1 >> 16 & 255) - (pixel2 >> 16 & 255); - var Red = diff >= 0 ? diff : 256 + diff; - var diff1 = (pixel1 >> 8 & 255) - (pixel2 >> 8 & 255); - var Green = diff1 >= 0 ? diff1 : 256 + diff1; - var diff2 = (pixel1 & 255) - (pixel2 & 255); - var Blue = diff2 >= 0 ? diff2 : 256 + diff2; - var color = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var Alpha = 255; - if(Alpha == null) { - Alpha = 255; - } - color &= -16711681; - color |= (Red > 255 ? 255 : Red < 0 ? 0 : Red) << 16; - color &= -65281; - color |= (Green > 255 ? 255 : Green < 0 ? 0 : Green) << 8; - color &= -256; - color |= Blue > 255 ? 255 : Blue < 0 ? 0 : Blue; - color &= 16777215; - color |= (Alpha > 255 ? 255 : Alpha < 0 ? 0 : Alpha) << 24; - result.setPixel32(i,j,color); - } else { - var alpha1 = pixel1 >> 24 & 255; - var alpha2 = pixel2 >> 24 & 255; - if(alpha1 != alpha2) { - var diff3 = alpha1 - alpha2; - var Alpha1 = diff3 >= 0 ? diff3 : 256 + diff3; - if(Alpha1 == null) { - Alpha1 = 255; - } - var color1 = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var Alpha2 = Alpha1; - if(Alpha2 == null) { - Alpha2 = 255; - } - color1 &= -16711681; - color1 |= 16711680; - color1 &= -65281; - color1 |= 65280; - color1 &= -256; - color1 |= 255; - color1 &= 16777215; - color1 |= (Alpha2 > 255 ? 255 : Alpha2 < 0 ? 0 : Alpha2) << 24; - result.setPixel32(i,j,color1); - } - } - } - } - } - if(!identical) { - return result; - } - } - return 0; -}; -flixel_util_FlxBitmapDataUtil.getDiff = function(value1,value2) { - var diff = value1 - value2; - if(diff >= 0) { - return diff; - } else { - return 256 + diff; - } -}; -flixel_util_FlxBitmapDataUtil.getMemorySize = function(bitmapData) { - return bitmapData.width * bitmapData.height * 4; -}; -flixel_util_FlxBitmapDataUtil.replaceColor = function(bitmapData,color,newColor,fetchPositions,rect) { - if(fetchPositions == null) { - fetchPositions = false; - } - var positions = null; - if(fetchPositions) { - positions = []; - } - var startX = 0; - var startY = 0; - var columns = bitmapData.width; - var rows = bitmapData.height; - if(rect != null) { - startX = rect.x | 0; - startY = rect.y | 0; - columns = rect.width | 0; - rows = rect.height | 0; - } - columns = Math.max(columns,bitmapData.width) | 0; - rows = Math.max(rows,bitmapData.height) | 0; - var row = 0; - var column = 0; - var x; - var y; - var changed = false; - bitmapData.lock(); - while(row < rows) { - column = 0; - while(column < columns) { - x = startX + column; - y = startY + row; - if(bitmapData.getPixel32(x,y) == color) { - bitmapData.setPixel32(x,y,newColor); - changed = true; - if(fetchPositions) { - var X = x; - var Y = y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - positions.push(point); - } - } - ++column; - } - ++row; - } - bitmapData.unlock(); - if(changed && positions == null) { - positions = []; - } - return positions; -}; -flixel_util_FlxBitmapDataUtil.addSpacesAndBorders = function(bitmapData,frameSize,spacing,border,region) { - if(region == null) { - var X = 0; - var Y = 0; - var Width = bitmapData.width; - var Height = bitmapData.height; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _this = flixel_math_FlxRect._pool.get(); - var X1 = X; - var Y1 = Y; - var Width1 = Width; - var Height1 = Height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this.x = X1; - _this.y = Y1; - _this.width = Width1; - _this.height = Height1; - var rect = _this; - rect._inPool = false; - region = rect; - } - var frameWidth = region.width | 0; - var frameHeight = region.height | 0; - if(frameSize != null) { - frameWidth = frameSize.x | 0; - frameHeight = frameSize.y | 0; - } - var numHorizontalFrames = region.width / frameWidth | 0; - var numVerticalFrames = region.height / frameHeight | 0; - var spaceX = 0; - var spaceY = 0; - if(spacing != null) { - spaceX = spacing.x | 0; - spaceY = spacing.y | 0; - } - var borderX = 0; - var borderY = 0; - if(border != null) { - borderX = border.x | 0; - borderY = border.y | 0; - } - var result = new openfl_display_BitmapData(region.width + (numHorizontalFrames - 1) * spaceX + 2 * numHorizontalFrames * borderX | 0,region.height + (numVerticalFrames - 1) * spaceY + 2 * numVerticalFrames * borderY | 0,true,0); - result.lock(); - var tempRect = new openfl_geom_Rectangle(0,0,frameWidth,frameHeight); - var tempPoint = new openfl_geom_Point(); - var _g = 0; - var _g1 = numHorizontalFrames; - while(_g < _g1) { - var i = _g++; - tempPoint.x = i * (frameWidth + spaceX + 2 * borderX) + borderX; - tempRect.x = i * frameWidth + region.x; - var _g2 = 0; - var _g11 = numVerticalFrames; - while(_g2 < _g11) { - var j = _g2++; - tempPoint.y = j * (frameHeight + spaceY + 2 * borderY) + borderY; - tempRect.y = j * frameHeight + region.y; - result.copyPixels(bitmapData,tempRect,tempPoint); - } - } - result.unlock(); - flixel_util_FlxBitmapDataUtil.copyBorderPixels(result,frameWidth,frameHeight,spaceX,spaceY,borderX,borderY,numHorizontalFrames,numVerticalFrames); - return result; -}; -flixel_util_FlxBitmapDataUtil.copyBorderPixels = function(bitmapData,frameWidth,frameHeight,spaceX,spaceY,borderX,borderY,horizontalFrames,verticalFrames) { - var tempRect = new openfl_geom_Rectangle(0,0,1,bitmapData.height); - var tempPoint = new openfl_geom_Point(); - bitmapData.lock(); - var _g = 0; - var _g1 = horizontalFrames; - while(_g < _g1) { - var i = _g++; - tempRect.x = i * (frameWidth + 2 * borderX + spaceX) + borderX; - var _g2 = 0; - var _g11 = borderX; - while(_g2 < _g11) { - var j = _g2++; - tempPoint.x = tempRect.x - j - 1; - bitmapData.copyPixels(bitmapData,tempRect,tempPoint); - } - tempRect.x += frameWidth - 1; - var _g21 = 0; - var _g3 = borderX; - while(_g21 < _g3) { - var j1 = _g21++; - tempPoint.x = tempRect.x + j1 + 1; - bitmapData.copyPixels(bitmapData,tempRect,tempPoint); - } - } - tempPoint.setTo(0,0); - tempRect.setTo(0,0,bitmapData.width,1); - var _g22 = 0; - var _g31 = verticalFrames; - while(_g22 < _g31) { - var i1 = _g22++; - tempRect.y = i1 * (frameHeight + 2 * borderY + spaceY) + borderY; - var _g23 = 0; - var _g32 = borderY; - while(_g23 < _g32) { - var j2 = _g23++; - tempPoint.y = tempRect.y - j2 - 1; - bitmapData.copyPixels(bitmapData,tempRect,tempPoint); - } - tempRect.y += frameHeight - 1; - var _g4 = 0; - var _g5 = borderY; - while(_g4 < _g5) { - var j3 = _g4++; - tempPoint.y = tempRect.y + j3 + 1; - bitmapData.copyPixels(bitmapData,tempRect,tempPoint); - } - } - bitmapData.unlock(); - return bitmapData; -}; -flixel_util_FlxBitmapDataUtil.generateRotations = function(brush,rotations,antiAliasing,autoBuffer) { - if(autoBuffer == null) { - autoBuffer = false; - } - if(antiAliasing == null) { - antiAliasing = false; - } - if(rotations == null) { - rotations = 16; - } - var brushWidth = brush.width; - var brushHeight = brush.height; - var max = brushHeight > brushWidth ? brushHeight : brushWidth; - max = autoBuffer ? max * 1.5 | 0 : max; - var rows = Math.sqrt(rotations) | 0; - var columns = Math.ceil(rotations / rows); - var bakedRotationAngle = 360 / rotations; - var width = max * columns; - var height = max * rows; - var result = new openfl_display_BitmapData(width,height,true,0); - var row = 0; - var column = 0; - var bakedAngle = 0; - var halfBrushWidth = brushWidth * 0.5 | 0; - var halfBrushHeight = brushHeight * 0.5 | 0; - var midpointX = max * 0.5 | 0; - var midpointY = max * 0.5 | 0; - while(row < rows) { - column = 0; - while(column < columns) { - flixel_util_FlxBitmapDataUtil.matrix.identity(); - flixel_util_FlxBitmapDataUtil.matrix.translate(-halfBrushWidth,-halfBrushHeight); - flixel_util_FlxBitmapDataUtil.matrix.rotate(bakedAngle * (Math.PI / 180)); - flixel_util_FlxBitmapDataUtil.matrix.translate(max * column + midpointX,midpointY); - bakedAngle += bakedRotationAngle; - result.draw(brush,flixel_util_FlxBitmapDataUtil.matrix,null,null,null,antiAliasing); - ++column; - } - midpointY += max; - ++row; - } - return result; -}; -var flixel_util_FlxCollision = function() { }; -$hxClasses["flixel.util.FlxCollision"] = flixel_util_FlxCollision; -flixel_util_FlxCollision.__name__ = "flixel.util.FlxCollision"; -flixel_util_FlxCollision.pixelPerfectCheck = function(Contact,Target,AlphaTolerance,Camera) { - if(AlphaTolerance == null) { - AlphaTolerance = 1; - } - var considerRotation = Contact.angle != 0 || Target.angle != 0; - Camera = Camera != null ? Camera : flixel_FlxG.camera; - flixel_util_FlxCollision.pointA.set_x(Contact.x - (Camera.scroll.x * Contact.scrollFactor.x | 0) - Contact.offset.x); - flixel_util_FlxCollision.pointA.set_y(Contact.y - (Camera.scroll.y * Contact.scrollFactor.y | 0) - Contact.offset.y); - flixel_util_FlxCollision.pointB.set_x(Target.x - (Camera.scroll.x * Target.scrollFactor.x | 0) - Target.offset.x); - flixel_util_FlxCollision.pointB.set_y(Target.y - (Camera.scroll.y * Target.scrollFactor.y | 0) - Target.offset.y); - if(considerRotation) { - Contact.origin.copyTo(flixel_util_FlxCollision.centerA); - Target.origin.copyTo(flixel_util_FlxCollision.centerB); - var this1 = flixel_util_FlxCollision.centerA; - var lengthA = Math.sqrt(this1.x * this1.x + this1.y * this1.y); - flixel_util_FlxCollision.boundsA.x = flixel_util_FlxCollision.pointA.x + flixel_util_FlxCollision.centerA.x - lengthA; - flixel_util_FlxCollision.boundsA.y = flixel_util_FlxCollision.pointA.y + flixel_util_FlxCollision.centerA.y - lengthA; - flixel_util_FlxCollision.boundsA.width = lengthA * 2; - flixel_util_FlxCollision.boundsA.height = flixel_util_FlxCollision.boundsA.width; - var this2 = flixel_util_FlxCollision.centerB; - var lengthB = Math.sqrt(this2.x * this2.x + this2.y * this2.y); - flixel_util_FlxCollision.boundsB.x = flixel_util_FlxCollision.pointB.x + flixel_util_FlxCollision.centerB.x - lengthB; - flixel_util_FlxCollision.boundsB.y = flixel_util_FlxCollision.pointB.y + flixel_util_FlxCollision.centerB.y - lengthB; - flixel_util_FlxCollision.boundsB.width = lengthB * 2; - flixel_util_FlxCollision.boundsB.height = flixel_util_FlxCollision.boundsB.width; - } else { - flixel_util_FlxCollision.boundsA.x = flixel_util_FlxCollision.pointA.x; - flixel_util_FlxCollision.boundsA.y = flixel_util_FlxCollision.pointA.y; - flixel_util_FlxCollision.boundsA.width = Contact.frameWidth; - flixel_util_FlxCollision.boundsA.height = Contact.frameHeight; - flixel_util_FlxCollision.boundsB.x = flixel_util_FlxCollision.pointB.x; - flixel_util_FlxCollision.boundsB.y = flixel_util_FlxCollision.pointB.y; - flixel_util_FlxCollision.boundsB.width = Target.frameWidth; - flixel_util_FlxCollision.boundsB.height = Target.frameHeight; - } - var _this = flixel_util_FlxCollision.intersect; - _this.x = 0; - _this.y = 0; - _this.width = 0; - _this.height = 0; - flixel_util_FlxCollision.boundsA.intersection(flixel_util_FlxCollision.boundsB,_this); - var _this1 = flixel_util_FlxCollision.intersect; - if(_this1.width == 0 || _this1.height == 0 || flixel_util_FlxCollision.intersect.width < 1 || flixel_util_FlxCollision.intersect.height < 1) { - return false; - } - flixel_util_FlxCollision.matrixA.identity(); - flixel_util_FlxCollision.matrixA.translate(-(flixel_util_FlxCollision.intersect.x - flixel_util_FlxCollision.boundsA.x),-(flixel_util_FlxCollision.intersect.y - flixel_util_FlxCollision.boundsA.y)); - flixel_util_FlxCollision.matrixB.identity(); - flixel_util_FlxCollision.matrixB.translate(-(flixel_util_FlxCollision.intersect.x - flixel_util_FlxCollision.boundsB.x),-(flixel_util_FlxCollision.intersect.y - flixel_util_FlxCollision.boundsB.y)); - Contact.drawFrame(); - Target.drawFrame(); - var testA = Contact.framePixels; - var testB = Target.framePixels; - var overlapWidth = flixel_util_FlxCollision.intersect.width | 0; - var overlapHeight = flixel_util_FlxCollision.intersect.height | 0; - if(considerRotation) { - flixel_util_FlxCollision.testMatrix.identity(); - flixel_util_FlxCollision.testMatrix.translate(-Contact.origin.x,-Contact.origin.y); - flixel_util_FlxCollision.testMatrix.rotate(Contact.angle * (Math.PI / 180)); - flixel_util_FlxCollision.testMatrix.translate(flixel_util_FlxCollision.boundsA.width / 2,flixel_util_FlxCollision.boundsA.height / 2); - var testA2 = flixel_util_FlxBitmapDataPool.get(Math.floor(flixel_util_FlxCollision.boundsA.width),Math.floor(flixel_util_FlxCollision.boundsA.height),true,0,false); - testA2.draw(testA,flixel_util_FlxCollision.testMatrix,null,null,null,false); - testA = testA2; - flixel_util_FlxCollision.testMatrix.identity(); - flixel_util_FlxCollision.testMatrix.translate(-Target.origin.x,-Target.origin.y); - flixel_util_FlxCollision.testMatrix.rotate(Target.angle * (Math.PI / 180)); - flixel_util_FlxCollision.testMatrix.translate(flixel_util_FlxCollision.boundsB.width / 2,flixel_util_FlxCollision.boundsB.height / 2); - var testB2 = flixel_util_FlxBitmapDataPool.get(Math.floor(flixel_util_FlxCollision.boundsB.width),Math.floor(flixel_util_FlxCollision.boundsB.height),true,0,false); - testB2.draw(testB,flixel_util_FlxCollision.testMatrix,null,null,null,false); - testB = testB2; - } - flixel_util_FlxCollision.boundsA.x = -flixel_util_FlxCollision.matrixA.tx | 0; - flixel_util_FlxCollision.boundsA.y = -flixel_util_FlxCollision.matrixA.ty | 0; - flixel_util_FlxCollision.boundsA.width = overlapWidth; - flixel_util_FlxCollision.boundsA.height = overlapHeight; - flixel_util_FlxCollision.boundsB.x = -flixel_util_FlxCollision.matrixB.tx | 0; - flixel_util_FlxCollision.boundsB.y = -flixel_util_FlxCollision.matrixB.ty | 0; - flixel_util_FlxCollision.boundsB.width = overlapWidth; - flixel_util_FlxCollision.boundsB.height = overlapHeight; - var _this2 = flixel_util_FlxCollision.boundsA; - var FlashRect = flixel_util_FlxCollision.flashRect; - if(FlashRect == null) { - FlashRect = new openfl_geom_Rectangle(); - } - FlashRect.x = _this2.x; - FlashRect.y = _this2.y; - FlashRect.width = _this2.width; - FlashRect.height = _this2.height; - var pixelsA = testA.getPixels(flixel_util_FlxCollision.flashRect); - var _this3 = flixel_util_FlxCollision.boundsB; - var FlashRect1 = flixel_util_FlxCollision.flashRect; - if(FlashRect1 == null) { - FlashRect1 = new openfl_geom_Rectangle(); - } - FlashRect1.x = _this3.x; - FlashRect1.y = _this3.y; - FlashRect1.width = _this3.width; - FlashRect1.height = _this3.height; - var pixelsB = testB.getPixels(flixel_util_FlxCollision.flashRect); - var hit = false; - var alphaA = 0; - var alphaB = 0; - var overlapPixels = overlapWidth * overlapHeight; - var alphaIdx = 0; - var _g = 0; - var _g1 = Math.ceil(overlapPixels / 2); - while(_g < _g1) { - var i = _g++; - alphaIdx = i << 3; - pixelsA.position = pixelsB.position = alphaIdx; - alphaA = pixelsA.readUnsignedByte(); - alphaB = pixelsB.readUnsignedByte(); - if(alphaA >= AlphaTolerance && alphaB >= AlphaTolerance) { - hit = true; - break; - } - } - if(!hit) { - var _g2 = 0; - var _g3 = overlapPixels >> 1; - while(_g2 < _g3) { - var i1 = _g2++; - alphaIdx = (i1 << 3) + 4; - pixelsA.position = pixelsB.position = alphaIdx; - alphaA = pixelsA.readUnsignedByte(); - alphaB = pixelsB.readUnsignedByte(); - if(alphaA >= AlphaTolerance && alphaB >= AlphaTolerance) { - hit = true; - break; - } - } - } - if(considerRotation) { - flixel_util_FlxBitmapDataPool.put(testA); - flixel_util_FlxBitmapDataPool.put(testB); - } - return hit; -}; -flixel_util_FlxCollision.pixelPerfectPointCheck = function(PointX,PointY,Target,AlphaTolerance) { - if(AlphaTolerance == null) { - AlphaTolerance = 1; - } - if(!flixel_math_FlxMath.pointInCoordinates(PointX,PointY,Math.floor(Target.x),Math.floor(Target.y),Target.get_width() | 0,Target.get_height() | 0)) { - return false; - } - if(flixel_FlxG.renderTile) { - Target.drawFrame(); - } - var test = Target.framePixels; - var pixelAlpha = flixel_util__$FlxColor_FlxColor_$Impl_$._new(test.getPixel32(Math.floor(PointX - Target.x),Math.floor(PointY - Target.y))) >> 24 & 255; - if(flixel_FlxG.renderTile) { - pixelAlpha = pixelAlpha * Target.alpha | 0; - } - return pixelAlpha >= AlphaTolerance; -}; -flixel_util_FlxCollision.createCameraWall = function(Camera,PlaceOutside,Thickness,AdjustWorldBounds) { - if(AdjustWorldBounds == null) { - AdjustWorldBounds = false; - } - if(PlaceOutside == null) { - PlaceOutside = true; - } - var left = null; - var right = null; - var top = null; - var bottom = null; - if(PlaceOutside) { - left = new flixel_tile_FlxTileblock(Math.floor(Camera.x - Thickness),Math.floor(Camera.y + Thickness),Thickness,Camera.height - Thickness * 2); - right = new flixel_tile_FlxTileblock(Math.floor(Camera.x + Camera.width),Math.floor(Camera.y + Thickness),Thickness,Camera.height - Thickness * 2); - top = new flixel_tile_FlxTileblock(Math.floor(Camera.x - Thickness),Math.floor(Camera.y - Thickness),Camera.width + Thickness * 2,Thickness); - bottom = new flixel_tile_FlxTileblock(Math.floor(Camera.x - Thickness),Camera.height,Camera.width + Thickness * 2,Thickness); - if(AdjustWorldBounds) { - var _this = flixel_FlxG.worldBounds; - var X = Camera.x - Thickness; - var Y = Camera.y - Thickness; - var Width = Camera.width + Thickness * 2; - var Height = Camera.height + Thickness * 2; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - } - } else { - left = new flixel_tile_FlxTileblock(Math.floor(Camera.x),Math.floor(Camera.y + Thickness),Thickness,Camera.height - Thickness * 2); - right = new flixel_tile_FlxTileblock(Math.floor(Camera.x + Camera.width - Thickness),Math.floor(Camera.y + Thickness),Thickness,Camera.height - Thickness * 2); - top = new flixel_tile_FlxTileblock(Math.floor(Camera.x),Math.floor(Camera.y),Camera.width,Thickness); - bottom = new flixel_tile_FlxTileblock(Math.floor(Camera.x),Camera.height - Thickness,Camera.width,Thickness); - if(AdjustWorldBounds) { - var _this1 = flixel_FlxG.worldBounds; - var X1 = Camera.x; - var Y1 = Camera.y; - var Width1 = Camera.width; - var Height1 = Camera.height; - if(Height1 == null) { - Height1 = 0; - } - if(Width1 == null) { - Width1 = 0; - } - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - _this1.x = X1; - _this1.y = Y1; - _this1.width = Width1; - _this1.height = Height1; - } - } - var result = new flixel_group_FlxTypedGroup(); - result.add(left); - result.add(right); - result.add(top); - result.add(bottom); - return result; -}; -var flixel_util__$FlxColor_FlxColor_$Impl_$ = {}; -$hxClasses["flixel.util._FlxColor.FlxColor_Impl_"] = flixel_util__$FlxColor_FlxColor_$Impl_$; -flixel_util__$FlxColor_FlxColor_$Impl_$.__name__ = "flixel.util._FlxColor.FlxColor_Impl_"; -flixel_util__$FlxColor_FlxColor_$Impl_$.__properties__ = {set_lightness:"set_lightness",get_lightness:"get_lightness",set_brightness:"set_brightness",get_brightness:"get_brightness",set_saturation:"set_saturation",get_saturation:"get_saturation",set_hue:"set_hue",get_hue:"get_hue",set_black:"set_black",get_black:"get_black",set_yellow:"set_yellow",get_yellow:"get_yellow",set_magenta:"set_magenta",get_magenta:"get_magenta",set_cyan:"set_cyan",get_cyan:"get_cyan",set_alphaFloat:"set_alphaFloat",get_alphaFloat:"get_alphaFloat",set_greenFloat:"set_greenFloat",get_greenFloat:"get_greenFloat",set_blueFloat:"set_blueFloat",get_blueFloat:"get_blueFloat",set_redFloat:"set_redFloat",get_redFloat:"get_redFloat",set_alpha:"set_alpha",get_alpha:"get_alpha",set_green:"set_green",get_green:"get_green",set_blue:"set_blue",get_blue:"get_blue",set_red:"set_red",get_red:"get_red"}; -flixel_util__$FlxColor_FlxColor_$Impl_$.fromInt = function(Value) { - return flixel_util__$FlxColor_FlxColor_$Impl_$._new(Value); -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.fromRGB = function(Red,Green,Blue,Alpha) { - if(Alpha == null) { - Alpha = 255; - } - var color = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 255; - } - color &= -16711681; - color |= (Red > 255 ? 255 : Red < 0 ? 0 : Red) << 16; - color &= -65281; - color |= (Green > 255 ? 255 : Green < 0 ? 0 : Green) << 8; - color &= -256; - color |= Blue > 255 ? 255 : Blue < 0 ? 0 : Blue; - color &= 16777215; - color |= (Alpha1 > 255 ? 255 : Alpha1 < 0 ? 0 : Alpha1) << 24; - return color; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.fromRGBFloat = function(Red,Green,Blue,Alpha) { - if(Alpha == null) { - Alpha = 1; - } - var color = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 1; - } - var Value = Math.round(Red * 255); - color &= -16711681; - color |= (Value > 255 ? 255 : Value < 0 ? 0 : Value) << 16; - var Value1 = Math.round(Green * 255); - color &= -65281; - color |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 8; - var Value2 = Math.round(Blue * 255); - color &= -256; - color |= Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2; - var Value3 = Math.round(Alpha1 * 255); - color &= 16777215; - color |= (Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3) << 24; - return color; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.fromCMYK = function(Cyan,Magenta,Yellow,Black,Alpha) { - if(Alpha == null) { - Alpha = 1; - } - var color = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 1; - } - var Value = (1 - Cyan) * (1 - Black); - var Value1 = Math.round(Value * 255); - color &= -16711681; - color |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 16; - var Value2 = (1 - Magenta) * (1 - Black); - var Value3 = Math.round(Value2 * 255); - color &= -65281; - color |= (Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3) << 8; - var Value4 = (1 - Yellow) * (1 - Black); - var Value5 = Math.round(Value4 * 255); - color &= -256; - color |= Value5 > 255 ? 255 : Value5 < 0 ? 0 : Value5; - var Value6 = Math.round(Alpha1 * 255); - color &= 16777215; - color |= (Value6 > 255 ? 255 : Value6 < 0 ? 0 : Value6) << 24; - return color; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.fromHSB = function(Hue,Saturation,Brightness,Alpha) { - if(Alpha == null) { - Alpha = 1; - } - var color = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var chroma = Brightness * Saturation; - var match = Brightness - chroma; - var Hue1 = Hue; - var Chroma = chroma; - Hue1 %= 360; - var hueD = Hue1 / 60; - var mid = Chroma * (1 - Math.abs(hueD % 2 - 1)) + match; - Chroma += match; - switch(hueD | 0) { - case 0: - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 1; - } - var Value = Math.round(Chroma * 255); - color &= -16711681; - color |= (Value > 255 ? 255 : Value < 0 ? 0 : Value) << 16; - var Value1 = Math.round(mid * 255); - color &= -65281; - color |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 8; - var Value2 = Math.round(match * 255); - color &= -256; - color |= Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2; - var Value3 = Math.round(Alpha1 * 255); - color &= 16777215; - color |= (Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3) << 24; - break; - case 1: - var Alpha2 = Alpha; - if(Alpha2 == null) { - Alpha2 = 1; - } - var Value4 = Math.round(mid * 255); - color &= -16711681; - color |= (Value4 > 255 ? 255 : Value4 < 0 ? 0 : Value4) << 16; - var Value5 = Math.round(Chroma * 255); - color &= -65281; - color |= (Value5 > 255 ? 255 : Value5 < 0 ? 0 : Value5) << 8; - var Value6 = Math.round(match * 255); - color &= -256; - color |= Value6 > 255 ? 255 : Value6 < 0 ? 0 : Value6; - var Value7 = Math.round(Alpha2 * 255); - color &= 16777215; - color |= (Value7 > 255 ? 255 : Value7 < 0 ? 0 : Value7) << 24; - break; - case 2: - var Alpha3 = Alpha; - if(Alpha3 == null) { - Alpha3 = 1; - } - var Value8 = Math.round(match * 255); - color &= -16711681; - color |= (Value8 > 255 ? 255 : Value8 < 0 ? 0 : Value8) << 16; - var Value9 = Math.round(Chroma * 255); - color &= -65281; - color |= (Value9 > 255 ? 255 : Value9 < 0 ? 0 : Value9) << 8; - var Value10 = Math.round(mid * 255); - color &= -256; - color |= Value10 > 255 ? 255 : Value10 < 0 ? 0 : Value10; - var Value11 = Math.round(Alpha3 * 255); - color &= 16777215; - color |= (Value11 > 255 ? 255 : Value11 < 0 ? 0 : Value11) << 24; - break; - case 3: - var Alpha4 = Alpha; - if(Alpha4 == null) { - Alpha4 = 1; - } - var Value12 = Math.round(match * 255); - color &= -16711681; - color |= (Value12 > 255 ? 255 : Value12 < 0 ? 0 : Value12) << 16; - var Value13 = Math.round(mid * 255); - color &= -65281; - color |= (Value13 > 255 ? 255 : Value13 < 0 ? 0 : Value13) << 8; - var Value14 = Math.round(Chroma * 255); - color &= -256; - color |= Value14 > 255 ? 255 : Value14 < 0 ? 0 : Value14; - var Value15 = Math.round(Alpha4 * 255); - color &= 16777215; - color |= (Value15 > 255 ? 255 : Value15 < 0 ? 0 : Value15) << 24; - break; - case 4: - var Alpha5 = Alpha; - if(Alpha5 == null) { - Alpha5 = 1; - } - var Value16 = Math.round(mid * 255); - color &= -16711681; - color |= (Value16 > 255 ? 255 : Value16 < 0 ? 0 : Value16) << 16; - var Value17 = Math.round(match * 255); - color &= -65281; - color |= (Value17 > 255 ? 255 : Value17 < 0 ? 0 : Value17) << 8; - var Value18 = Math.round(Chroma * 255); - color &= -256; - color |= Value18 > 255 ? 255 : Value18 < 0 ? 0 : Value18; - var Value19 = Math.round(Alpha5 * 255); - color &= 16777215; - color |= (Value19 > 255 ? 255 : Value19 < 0 ? 0 : Value19) << 24; - break; - case 5: - var Alpha6 = Alpha; - if(Alpha6 == null) { - Alpha6 = 1; - } - var Value20 = Math.round(Chroma * 255); - color &= -16711681; - color |= (Value20 > 255 ? 255 : Value20 < 0 ? 0 : Value20) << 16; - var Value21 = Math.round(match * 255); - color &= -65281; - color |= (Value21 > 255 ? 255 : Value21 < 0 ? 0 : Value21) << 8; - var Value22 = Math.round(mid * 255); - color &= -256; - color |= Value22 > 255 ? 255 : Value22 < 0 ? 0 : Value22; - var Value23 = Math.round(Alpha6 * 255); - color &= 16777215; - color |= (Value23 > 255 ? 255 : Value23 < 0 ? 0 : Value23) << 24; - break; - } - return color; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.fromHSL = function(Hue,Saturation,Lightness,Alpha) { - if(Alpha == null) { - Alpha = 1; - } - var color = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var chroma = (1 - Math.abs(2 * Lightness - 1)) * Saturation; - var match = Lightness - chroma / 2; - var Hue1 = Hue; - var Chroma = chroma; - Hue1 %= 360; - var hueD = Hue1 / 60; - var mid = Chroma * (1 - Math.abs(hueD % 2 - 1)) + match; - Chroma += match; - switch(hueD | 0) { - case 0: - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 1; - } - var Value = Math.round(Chroma * 255); - color &= -16711681; - color |= (Value > 255 ? 255 : Value < 0 ? 0 : Value) << 16; - var Value1 = Math.round(mid * 255); - color &= -65281; - color |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 8; - var Value2 = Math.round(match * 255); - color &= -256; - color |= Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2; - var Value3 = Math.round(Alpha1 * 255); - color &= 16777215; - color |= (Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3) << 24; - break; - case 1: - var Alpha2 = Alpha; - if(Alpha2 == null) { - Alpha2 = 1; - } - var Value4 = Math.round(mid * 255); - color &= -16711681; - color |= (Value4 > 255 ? 255 : Value4 < 0 ? 0 : Value4) << 16; - var Value5 = Math.round(Chroma * 255); - color &= -65281; - color |= (Value5 > 255 ? 255 : Value5 < 0 ? 0 : Value5) << 8; - var Value6 = Math.round(match * 255); - color &= -256; - color |= Value6 > 255 ? 255 : Value6 < 0 ? 0 : Value6; - var Value7 = Math.round(Alpha2 * 255); - color &= 16777215; - color |= (Value7 > 255 ? 255 : Value7 < 0 ? 0 : Value7) << 24; - break; - case 2: - var Alpha3 = Alpha; - if(Alpha3 == null) { - Alpha3 = 1; - } - var Value8 = Math.round(match * 255); - color &= -16711681; - color |= (Value8 > 255 ? 255 : Value8 < 0 ? 0 : Value8) << 16; - var Value9 = Math.round(Chroma * 255); - color &= -65281; - color |= (Value9 > 255 ? 255 : Value9 < 0 ? 0 : Value9) << 8; - var Value10 = Math.round(mid * 255); - color &= -256; - color |= Value10 > 255 ? 255 : Value10 < 0 ? 0 : Value10; - var Value11 = Math.round(Alpha3 * 255); - color &= 16777215; - color |= (Value11 > 255 ? 255 : Value11 < 0 ? 0 : Value11) << 24; - break; - case 3: - var Alpha4 = Alpha; - if(Alpha4 == null) { - Alpha4 = 1; - } - var Value12 = Math.round(match * 255); - color &= -16711681; - color |= (Value12 > 255 ? 255 : Value12 < 0 ? 0 : Value12) << 16; - var Value13 = Math.round(mid * 255); - color &= -65281; - color |= (Value13 > 255 ? 255 : Value13 < 0 ? 0 : Value13) << 8; - var Value14 = Math.round(Chroma * 255); - color &= -256; - color |= Value14 > 255 ? 255 : Value14 < 0 ? 0 : Value14; - var Value15 = Math.round(Alpha4 * 255); - color &= 16777215; - color |= (Value15 > 255 ? 255 : Value15 < 0 ? 0 : Value15) << 24; - break; - case 4: - var Alpha5 = Alpha; - if(Alpha5 == null) { - Alpha5 = 1; - } - var Value16 = Math.round(mid * 255); - color &= -16711681; - color |= (Value16 > 255 ? 255 : Value16 < 0 ? 0 : Value16) << 16; - var Value17 = Math.round(match * 255); - color &= -65281; - color |= (Value17 > 255 ? 255 : Value17 < 0 ? 0 : Value17) << 8; - var Value18 = Math.round(Chroma * 255); - color &= -256; - color |= Value18 > 255 ? 255 : Value18 < 0 ? 0 : Value18; - var Value19 = Math.round(Alpha5 * 255); - color &= 16777215; - color |= (Value19 > 255 ? 255 : Value19 < 0 ? 0 : Value19) << 24; - break; - case 5: - var Alpha6 = Alpha; - if(Alpha6 == null) { - Alpha6 = 1; - } - var Value20 = Math.round(Chroma * 255); - color &= -16711681; - color |= (Value20 > 255 ? 255 : Value20 < 0 ? 0 : Value20) << 16; - var Value21 = Math.round(match * 255); - color &= -65281; - color |= (Value21 > 255 ? 255 : Value21 < 0 ? 0 : Value21) << 8; - var Value22 = Math.round(mid * 255); - color &= -256; - color |= Value22 > 255 ? 255 : Value22 < 0 ? 0 : Value22; - var Value23 = Math.round(Alpha6 * 255); - color &= 16777215; - color |= (Value23 > 255 ? 255 : Value23 < 0 ? 0 : Value23) << 24; - break; - } - return color; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.fromString = function(str) { - var result = null; - str = StringTools.trim(str); - if(flixel_util__$FlxColor_FlxColor_$Impl_$.COLOR_REGEX.match(str)) { - var hexColor = "0x" + flixel_util__$FlxColor_FlxColor_$Impl_$.COLOR_REGEX.matched(2); - result = flixel_util__$FlxColor_FlxColor_$Impl_$._new(Std.parseInt(hexColor)); - if(hexColor.length == 8) { - var Value = Math.round(255); - result &= 16777215; - result |= (Value > 255 ? 255 : Value < 0 ? 0 : Value) << 24; - } - } else { - str = str.toUpperCase(); - var key = flixel_util__$FlxColor_FlxColor_$Impl_$.colorLookup.keys(); - while(key.hasNext()) { - var key1 = key.next(); - if(key1.toUpperCase() == str) { - var _this = flixel_util__$FlxColor_FlxColor_$Impl_$.colorLookup; - result = flixel_util__$FlxColor_FlxColor_$Impl_$._new(__map_reserved[key1] != null ? _this.getReserved(key1) : _this.h[key1]); - break; - } - } - } - return result; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.getHSBColorWheel = function(Alpha) { - if(Alpha == null) { - Alpha = 255; - } - var _g = []; - var _g1 = 0; - while(_g1 < 360) { - var c = _g1++; - _g.push(flixel_util__$FlxColor_FlxColor_$Impl_$.fromHSB(c,1.0,1.0,Alpha)); - } - return _g; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.interpolate = function(Color1,Color2,Factor) { - if(Factor == null) { - Factor = 0.5; - } - var r = ((Color2 >> 16 & 255) - (Color1 >> 16 & 255)) * Factor + (Color1 >> 16 & 255) | 0; - var g = ((Color2 >> 8 & 255) - (Color1 >> 8 & 255)) * Factor + (Color1 >> 8 & 255) | 0; - var b = ((Color2 & 255) - (Color1 & 255)) * Factor + (Color1 & 255) | 0; - var a = ((Color2 >> 24 & 255) - (Color1 >> 24 & 255)) * Factor + (Color1 >> 24 & 255) | 0; - var Alpha = a; - if(Alpha == null) { - Alpha = 255; - } - var color = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 255; - } - color &= -16711681; - color |= (r > 255 ? 255 : r < 0 ? 0 : r) << 16; - color &= -65281; - color |= (g > 255 ? 255 : g < 0 ? 0 : g) << 8; - color &= -256; - color |= b > 255 ? 255 : b < 0 ? 0 : b; - color &= 16777215; - color |= (Alpha1 > 255 ? 255 : Alpha1 < 0 ? 0 : Alpha1) << 24; - return color; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.gradient = function(Color1,Color2,Steps,Ease) { - var output = []; - if(Ease == null) { - Ease = function(t) { - return t; - }; - } - var _g = 0; - var _g1 = Steps; - while(_g < _g1) { - var step = _g++; - var Factor = Ease(step / (Steps - 1)); - if(Factor == null) { - Factor = 0.5; - } - var r = ((Color2 >> 16 & 255) - (Color1 >> 16 & 255)) * Factor + (Color1 >> 16 & 255) | 0; - var g = ((Color2 >> 8 & 255) - (Color1 >> 8 & 255)) * Factor + (Color1 >> 8 & 255) | 0; - var b = ((Color2 & 255) - (Color1 & 255)) * Factor + (Color1 & 255) | 0; - var a = ((Color2 >> 24 & 255) - (Color1 >> 24 & 255)) * Factor + (Color1 >> 24 & 255) | 0; - var Alpha = a; - if(Alpha == null) { - Alpha = 255; - } - var color = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 255; - } - color &= -16711681; - color |= (r > 255 ? 255 : r < 0 ? 0 : r) << 16; - color &= -65281; - color |= (g > 255 ? 255 : g < 0 ? 0 : g) << 8; - color &= -256; - color |= b > 255 ? 255 : b < 0 ? 0 : b; - color &= 16777215; - color |= (Alpha1 > 255 ? 255 : Alpha1 < 0 ? 0 : Alpha1) << 24; - output[step] = color; - } - return output; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.multiply = function(lhs,rhs) { - var Red = (lhs >> 16 & 255) / 255 * ((rhs >> 16 & 255) / 255); - var Green = (lhs >> 8 & 255) / 255 * ((rhs >> 8 & 255) / 255); - var Blue = (lhs & 255) / 255 * ((rhs & 255) / 255); - var color = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var Alpha = 1; - if(Alpha == null) { - Alpha = 1; - } - var Value = Math.round(Red * 255); - color &= -16711681; - color |= (Value > 255 ? 255 : Value < 0 ? 0 : Value) << 16; - var Value1 = Math.round(Green * 255); - color &= -65281; - color |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 8; - var Value2 = Math.round(Blue * 255); - color &= -256; - color |= Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2; - var Value3 = Math.round(Alpha * 255); - color &= 16777215; - color |= (Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3) << 24; - return color; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.add = function(lhs,rhs) { - var Red = (lhs >> 16 & 255) + (rhs >> 16 & 255); - var Green = (lhs >> 8 & 255) + (rhs >> 8 & 255); - var Blue = (lhs & 255) + (rhs & 255); - var color = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var Alpha = 255; - if(Alpha == null) { - Alpha = 255; - } - color &= -16711681; - color |= (Red > 255 ? 255 : Red < 0 ? 0 : Red) << 16; - color &= -65281; - color |= (Green > 255 ? 255 : Green < 0 ? 0 : Green) << 8; - color &= -256; - color |= Blue > 255 ? 255 : Blue < 0 ? 0 : Blue; - color &= 16777215; - color |= (Alpha > 255 ? 255 : Alpha < 0 ? 0 : Alpha) << 24; - return color; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.subtract = function(lhs,rhs) { - var Red = (lhs >> 16 & 255) - (rhs >> 16 & 255); - var Green = (lhs >> 8 & 255) - (rhs >> 8 & 255); - var Blue = (lhs & 255) - (rhs & 255); - var color = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var Alpha = 255; - if(Alpha == null) { - Alpha = 255; - } - color &= -16711681; - color |= (Red > 255 ? 255 : Red < 0 ? 0 : Red) << 16; - color &= -65281; - color |= (Green > 255 ? 255 : Green < 0 ? 0 : Green) << 8; - color &= -256; - color |= Blue > 255 ? 255 : Blue < 0 ? 0 : Blue; - color &= 16777215; - color |= (Alpha > 255 ? 255 : Alpha < 0 ? 0 : Alpha) << 24; - return color; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.getComplementHarmony = function(this1) { - return flixel_util__$FlxColor_FlxColor_$Impl_$.fromHSB(flixel_math_FlxMath.wrap((flixel_util__$FlxColor_FlxColor_$Impl_$.get_hue(this1) | 0) + 180,0,350),Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)),(Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)) - Math.min((this1 >> 16 & 255) / 255,Math.min((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)),(this1 >> 24 & 255) / 255); -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.getAnalogousHarmony = function(this1,Threshold) { - if(Threshold == null) { - Threshold = 30; - } - var warmer = flixel_util__$FlxColor_FlxColor_$Impl_$.fromHSB(flixel_math_FlxMath.wrap((flixel_util__$FlxColor_FlxColor_$Impl_$.get_hue(this1) | 0) - Threshold,0,350),(Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)) - Math.min((this1 >> 16 & 255) / 255,Math.min((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)),Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)),(this1 >> 24 & 255) / 255); - var colder = flixel_util__$FlxColor_FlxColor_$Impl_$.fromHSB(flixel_math_FlxMath.wrap((flixel_util__$FlxColor_FlxColor_$Impl_$.get_hue(this1) | 0) + Threshold,0,350),(Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)) - Math.min((this1 >> 16 & 255) / 255,Math.min((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)),Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)),(this1 >> 24 & 255) / 255); - return { original : this1, warmer : warmer, colder : colder}; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.getSplitComplementHarmony = function(this1,Threshold) { - if(Threshold == null) { - Threshold = 30; - } - var oppositeHue = flixel_math_FlxMath.wrap((flixel_util__$FlxColor_FlxColor_$Impl_$.get_hue(this1) | 0) + 180,0,350); - var warmer = flixel_util__$FlxColor_FlxColor_$Impl_$.fromHSB(flixel_math_FlxMath.wrap(oppositeHue - Threshold,0,350),(Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)) - Math.min((this1 >> 16 & 255) / 255,Math.min((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)),Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)),(this1 >> 24 & 255) / 255); - var colder = flixel_util__$FlxColor_FlxColor_$Impl_$.fromHSB(flixel_math_FlxMath.wrap(oppositeHue + Threshold,0,350),(Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)) - Math.min((this1 >> 16 & 255) / 255,Math.min((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)),Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)),(this1 >> 24 & 255) / 255); - return { original : this1, warmer : warmer, colder : colder}; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.getTriadicHarmony = function(this1) { - var triadic1 = flixel_util__$FlxColor_FlxColor_$Impl_$.fromHSB(flixel_math_FlxMath.wrap((flixel_util__$FlxColor_FlxColor_$Impl_$.get_hue(this1) | 0) + 120,0,359),(Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)) - Math.min((this1 >> 16 & 255) / 255,Math.min((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)),Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)),(this1 >> 24 & 255) / 255); - var triadic2 = flixel_util__$FlxColor_FlxColor_$Impl_$.fromHSB(flixel_math_FlxMath.wrap((flixel_util__$FlxColor_FlxColor_$Impl_$.get_hue(triadic1) | 0) + 120,0,359),(Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)) - Math.min((this1 >> 16 & 255) / 255,Math.min((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)),Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)),(this1 >> 24 & 255) / 255); - return { color1 : this1, color2 : triadic1, color3 : triadic2}; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.to24Bit = function(this1) { - return this1 & 16777215; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.toHexString = function(this1,Alpha,Prefix) { - if(Prefix == null) { - Prefix = true; - } - if(Alpha == null) { - Alpha = true; - } - var tmp = Alpha ? StringTools.hex(this1 >> 24 & 255,2) : ""; - return (Prefix ? "0x" : "") + tmp + StringTools.hex(this1 >> 16 & 255,2) + StringTools.hex(this1 >> 8 & 255,2) + StringTools.hex(this1 & 255,2); -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.toWebString = function(this1) { - var Alpha = false; - var Prefix = false; - if(Prefix == null) { - Prefix = true; - } - if(Alpha == null) { - Alpha = true; - } - var tmp = Alpha ? StringTools.hex(this1 >> 24 & 255,2) : ""; - return "#" + ((Prefix ? "0x" : "") + tmp + StringTools.hex(this1 >> 16 & 255,2) + StringTools.hex(this1 >> 8 & 255,2) + StringTools.hex(this1 & 255,2)); -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.getColorInfo = function(this1) { - var result = "0x" + StringTools.hex(this1 >> 24 & 255,2) + StringTools.hex(this1 >> 16 & 255,2) + StringTools.hex(this1 >> 8 & 255,2) + StringTools.hex(this1 & 255,2) + "\n"; - result += "Alpha: " + (this1 >> 24 & 255) + " Red: " + (this1 >> 16 & 255) + " Green: " + (this1 >> 8 & 255) + " Blue: " + (this1 & 255) + "\n"; - result += "Hue: " + flixel_math_FlxMath.roundDecimal(flixel_util__$FlxColor_FlxColor_$Impl_$.get_hue(this1),2) + " Saturation: " + flixel_math_FlxMath.roundDecimal((Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)) - Math.min((this1 >> 16 & 255) / 255,Math.min((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)),2) + " Brightness: " + flixel_math_FlxMath.roundDecimal(Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)),2) + " Lightness: " + flixel_math_FlxMath.roundDecimal((Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)) + Math.min((this1 >> 16 & 255) / 255,Math.min((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) / 2,2); - return result; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.getDarkened = function(this1,Factor) { - if(Factor == null) { - Factor = 0.2; - } - var lowerBound = Factor < 0 ? 0 : Factor; - Factor = lowerBound > 1 ? 1 : lowerBound; - var output = this1; - var Value = (Math.max((output >> 16 & 255) / 255,Math.max((output >> 8 & 255) / 255,(output & 255) / 255)) + Math.min((output >> 16 & 255) / 255,Math.min((output >> 8 & 255) / 255,(output & 255) / 255))) / 2 * (1 - Factor); - var Hue = flixel_util__$FlxColor_FlxColor_$Impl_$.get_hue(output); - var Alpha = (output >> 24 & 255) / 255; - var chroma = (1 - Math.abs(2 * Value - 1)) * ((Math.max((output >> 16 & 255) / 255,Math.max((output >> 8 & 255) / 255,(output & 255) / 255)) - Math.min((output >> 16 & 255) / 255,Math.min((output >> 8 & 255) / 255,(output & 255) / 255))) / Math.max((output >> 16 & 255) / 255,Math.max((output >> 8 & 255) / 255,(output & 255) / 255))); - var match = Value - chroma / 2; - var Hue1 = Hue; - var Chroma = chroma; - Hue1 %= 360; - var hueD = Hue1 / 60; - var mid = Chroma * (1 - Math.abs(hueD % 2 - 1)) + match; - Chroma += match; - switch(hueD | 0) { - case 0: - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 1; - } - var Value1 = Math.round(Chroma * 255); - output &= -16711681; - output |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 16; - var Value2 = Math.round(mid * 255); - output &= -65281; - output |= (Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2) << 8; - var Value3 = Math.round(match * 255); - output &= -256; - output |= Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3; - var Value4 = Math.round(Alpha1 * 255); - output &= 16777215; - output |= (Value4 > 255 ? 255 : Value4 < 0 ? 0 : Value4) << 24; - break; - case 1: - var Alpha2 = Alpha; - if(Alpha2 == null) { - Alpha2 = 1; - } - var Value5 = Math.round(mid * 255); - output &= -16711681; - output |= (Value5 > 255 ? 255 : Value5 < 0 ? 0 : Value5) << 16; - var Value6 = Math.round(Chroma * 255); - output &= -65281; - output |= (Value6 > 255 ? 255 : Value6 < 0 ? 0 : Value6) << 8; - var Value7 = Math.round(match * 255); - output &= -256; - output |= Value7 > 255 ? 255 : Value7 < 0 ? 0 : Value7; - var Value8 = Math.round(Alpha2 * 255); - output &= 16777215; - output |= (Value8 > 255 ? 255 : Value8 < 0 ? 0 : Value8) << 24; - break; - case 2: - var Alpha3 = Alpha; - if(Alpha3 == null) { - Alpha3 = 1; - } - var Value9 = Math.round(match * 255); - output &= -16711681; - output |= (Value9 > 255 ? 255 : Value9 < 0 ? 0 : Value9) << 16; - var Value10 = Math.round(Chroma * 255); - output &= -65281; - output |= (Value10 > 255 ? 255 : Value10 < 0 ? 0 : Value10) << 8; - var Value11 = Math.round(mid * 255); - output &= -256; - output |= Value11 > 255 ? 255 : Value11 < 0 ? 0 : Value11; - var Value12 = Math.round(Alpha3 * 255); - output &= 16777215; - output |= (Value12 > 255 ? 255 : Value12 < 0 ? 0 : Value12) << 24; - break; - case 3: - var Alpha4 = Alpha; - if(Alpha4 == null) { - Alpha4 = 1; - } - var Value13 = Math.round(match * 255); - output &= -16711681; - output |= (Value13 > 255 ? 255 : Value13 < 0 ? 0 : Value13) << 16; - var Value14 = Math.round(mid * 255); - output &= -65281; - output |= (Value14 > 255 ? 255 : Value14 < 0 ? 0 : Value14) << 8; - var Value15 = Math.round(Chroma * 255); - output &= -256; - output |= Value15 > 255 ? 255 : Value15 < 0 ? 0 : Value15; - var Value16 = Math.round(Alpha4 * 255); - output &= 16777215; - output |= (Value16 > 255 ? 255 : Value16 < 0 ? 0 : Value16) << 24; - break; - case 4: - var Alpha5 = Alpha; - if(Alpha5 == null) { - Alpha5 = 1; - } - var Value17 = Math.round(mid * 255); - output &= -16711681; - output |= (Value17 > 255 ? 255 : Value17 < 0 ? 0 : Value17) << 16; - var Value18 = Math.round(match * 255); - output &= -65281; - output |= (Value18 > 255 ? 255 : Value18 < 0 ? 0 : Value18) << 8; - var Value19 = Math.round(Chroma * 255); - output &= -256; - output |= Value19 > 255 ? 255 : Value19 < 0 ? 0 : Value19; - var Value20 = Math.round(Alpha5 * 255); - output &= 16777215; - output |= (Value20 > 255 ? 255 : Value20 < 0 ? 0 : Value20) << 24; - break; - case 5: - var Alpha6 = Alpha; - if(Alpha6 == null) { - Alpha6 = 1; - } - var Value21 = Math.round(Chroma * 255); - output &= -16711681; - output |= (Value21 > 255 ? 255 : Value21 < 0 ? 0 : Value21) << 16; - var Value22 = Math.round(match * 255); - output &= -65281; - output |= (Value22 > 255 ? 255 : Value22 < 0 ? 0 : Value22) << 8; - var Value23 = Math.round(mid * 255); - output &= -256; - output |= Value23 > 255 ? 255 : Value23 < 0 ? 0 : Value23; - var Value24 = Math.round(Alpha6 * 255); - output &= 16777215; - output |= (Value24 > 255 ? 255 : Value24 < 0 ? 0 : Value24) << 24; - break; - } - return output; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.getLightened = function(this1,Factor) { - if(Factor == null) { - Factor = 0.2; - } - var lowerBound = Factor < 0 ? 0 : Factor; - Factor = lowerBound > 1 ? 1 : lowerBound; - var output = this1; - var Value = (Math.max((output >> 16 & 255) / 255,Math.max((output >> 8 & 255) / 255,(output & 255) / 255)) + Math.min((output >> 16 & 255) / 255,Math.min((output >> 8 & 255) / 255,(output & 255) / 255))) / 2 + (1 - (Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)) + Math.min((this1 >> 16 & 255) / 255,Math.min((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) / 2) * Factor; - var Hue = flixel_util__$FlxColor_FlxColor_$Impl_$.get_hue(output); - var Alpha = (output >> 24 & 255) / 255; - var chroma = (1 - Math.abs(2 * Value - 1)) * ((Math.max((output >> 16 & 255) / 255,Math.max((output >> 8 & 255) / 255,(output & 255) / 255)) - Math.min((output >> 16 & 255) / 255,Math.min((output >> 8 & 255) / 255,(output & 255) / 255))) / Math.max((output >> 16 & 255) / 255,Math.max((output >> 8 & 255) / 255,(output & 255) / 255))); - var match = Value - chroma / 2; - var Hue1 = Hue; - var Chroma = chroma; - Hue1 %= 360; - var hueD = Hue1 / 60; - var mid = Chroma * (1 - Math.abs(hueD % 2 - 1)) + match; - Chroma += match; - switch(hueD | 0) { - case 0: - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 1; - } - var Value1 = Math.round(Chroma * 255); - output &= -16711681; - output |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 16; - var Value2 = Math.round(mid * 255); - output &= -65281; - output |= (Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2) << 8; - var Value3 = Math.round(match * 255); - output &= -256; - output |= Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3; - var Value4 = Math.round(Alpha1 * 255); - output &= 16777215; - output |= (Value4 > 255 ? 255 : Value4 < 0 ? 0 : Value4) << 24; - break; - case 1: - var Alpha2 = Alpha; - if(Alpha2 == null) { - Alpha2 = 1; - } - var Value5 = Math.round(mid * 255); - output &= -16711681; - output |= (Value5 > 255 ? 255 : Value5 < 0 ? 0 : Value5) << 16; - var Value6 = Math.round(Chroma * 255); - output &= -65281; - output |= (Value6 > 255 ? 255 : Value6 < 0 ? 0 : Value6) << 8; - var Value7 = Math.round(match * 255); - output &= -256; - output |= Value7 > 255 ? 255 : Value7 < 0 ? 0 : Value7; - var Value8 = Math.round(Alpha2 * 255); - output &= 16777215; - output |= (Value8 > 255 ? 255 : Value8 < 0 ? 0 : Value8) << 24; - break; - case 2: - var Alpha3 = Alpha; - if(Alpha3 == null) { - Alpha3 = 1; - } - var Value9 = Math.round(match * 255); - output &= -16711681; - output |= (Value9 > 255 ? 255 : Value9 < 0 ? 0 : Value9) << 16; - var Value10 = Math.round(Chroma * 255); - output &= -65281; - output |= (Value10 > 255 ? 255 : Value10 < 0 ? 0 : Value10) << 8; - var Value11 = Math.round(mid * 255); - output &= -256; - output |= Value11 > 255 ? 255 : Value11 < 0 ? 0 : Value11; - var Value12 = Math.round(Alpha3 * 255); - output &= 16777215; - output |= (Value12 > 255 ? 255 : Value12 < 0 ? 0 : Value12) << 24; - break; - case 3: - var Alpha4 = Alpha; - if(Alpha4 == null) { - Alpha4 = 1; - } - var Value13 = Math.round(match * 255); - output &= -16711681; - output |= (Value13 > 255 ? 255 : Value13 < 0 ? 0 : Value13) << 16; - var Value14 = Math.round(mid * 255); - output &= -65281; - output |= (Value14 > 255 ? 255 : Value14 < 0 ? 0 : Value14) << 8; - var Value15 = Math.round(Chroma * 255); - output &= -256; - output |= Value15 > 255 ? 255 : Value15 < 0 ? 0 : Value15; - var Value16 = Math.round(Alpha4 * 255); - output &= 16777215; - output |= (Value16 > 255 ? 255 : Value16 < 0 ? 0 : Value16) << 24; - break; - case 4: - var Alpha5 = Alpha; - if(Alpha5 == null) { - Alpha5 = 1; - } - var Value17 = Math.round(mid * 255); - output &= -16711681; - output |= (Value17 > 255 ? 255 : Value17 < 0 ? 0 : Value17) << 16; - var Value18 = Math.round(match * 255); - output &= -65281; - output |= (Value18 > 255 ? 255 : Value18 < 0 ? 0 : Value18) << 8; - var Value19 = Math.round(Chroma * 255); - output &= -256; - output |= Value19 > 255 ? 255 : Value19 < 0 ? 0 : Value19; - var Value20 = Math.round(Alpha5 * 255); - output &= 16777215; - output |= (Value20 > 255 ? 255 : Value20 < 0 ? 0 : Value20) << 24; - break; - case 5: - var Alpha6 = Alpha; - if(Alpha6 == null) { - Alpha6 = 1; - } - var Value21 = Math.round(Chroma * 255); - output &= -16711681; - output |= (Value21 > 255 ? 255 : Value21 < 0 ? 0 : Value21) << 16; - var Value22 = Math.round(match * 255); - output &= -65281; - output |= (Value22 > 255 ? 255 : Value22 < 0 ? 0 : Value22) << 8; - var Value23 = Math.round(mid * 255); - output &= -256; - output |= Value23 > 255 ? 255 : Value23 < 0 ? 0 : Value23; - var Value24 = Math.round(Alpha6 * 255); - output &= 16777215; - output |= (Value24 > 255 ? 255 : Value24 < 0 ? 0 : Value24) << 24; - break; - } - return output; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.getInverted = function(this1) { - var oldAlpha = this1 >> 24 & 255; - var lhs = -1; - var Red = (lhs >> 16 & 255) - (this1 >> 16 & 255); - var Green = (lhs >> 8 & 255) - (this1 >> 8 & 255); - var Blue = (lhs & 255) - (this1 & 255); - var color = flixel_util__$FlxColor_FlxColor_$Impl_$._new(); - var Alpha = 255; - if(Alpha == null) { - Alpha = 255; - } - color &= -16711681; - color |= (Red > 255 ? 255 : Red < 0 ? 0 : Red) << 16; - color &= -65281; - color |= (Green > 255 ? 255 : Green < 0 ? 0 : Green) << 8; - color &= -256; - color |= Blue > 255 ? 255 : Blue < 0 ? 0 : Blue; - color &= 16777215; - color |= (Alpha > 255 ? 255 : Alpha < 0 ? 0 : Alpha) << 24; - var output = color; - output &= 16777215; - output |= (oldAlpha > 255 ? 255 : oldAlpha < 0 ? 0 : oldAlpha) << 24; - return output; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.setRGB = function(this1,Red,Green,Blue,Alpha) { - if(Alpha == null) { - Alpha = 255; - } - this1 &= -16711681; - this1 |= (Red > 255 ? 255 : Red < 0 ? 0 : Red) << 16; - this1 &= -65281; - this1 |= (Green > 255 ? 255 : Green < 0 ? 0 : Green) << 8; - this1 &= -256; - this1 |= Blue > 255 ? 255 : Blue < 0 ? 0 : Blue; - this1 &= 16777215; - this1 |= (Alpha > 255 ? 255 : Alpha < 0 ? 0 : Alpha) << 24; - return this1; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.setRGBFloat = function(this1,Red,Green,Blue,Alpha) { - if(Alpha == null) { - Alpha = 1; - } - var Value = Math.round(Red * 255); - this1 &= -16711681; - this1 |= (Value > 255 ? 255 : Value < 0 ? 0 : Value) << 16; - var Value1 = Math.round(Green * 255); - this1 &= -65281; - this1 |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 8; - var Value2 = Math.round(Blue * 255); - this1 &= -256; - this1 |= Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2; - var Value3 = Math.round(Alpha * 255); - this1 &= 16777215; - this1 |= (Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3) << 24; - return this1; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.setCMYK = function(this1,Cyan,Magenta,Yellow,Black,Alpha) { - if(Alpha == null) { - Alpha = 1; - } - var Value = (1 - Cyan) * (1 - Black); - var Value1 = Math.round(Value * 255); - this1 &= -16711681; - this1 |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 16; - var Value2 = (1 - Magenta) * (1 - Black); - var Value3 = Math.round(Value2 * 255); - this1 &= -65281; - this1 |= (Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3) << 8; - var Value4 = (1 - Yellow) * (1 - Black); - var Value5 = Math.round(Value4 * 255); - this1 &= -256; - this1 |= Value5 > 255 ? 255 : Value5 < 0 ? 0 : Value5; - var Value6 = Math.round(Alpha * 255); - this1 &= 16777215; - this1 |= (Value6 > 255 ? 255 : Value6 < 0 ? 0 : Value6) << 24; - return this1; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.setHSB = function(this1,Hue,Saturation,Brightness,Alpha) { - var chroma = Brightness * Saturation; - var match = Brightness - chroma; - var Hue1 = Hue; - var Chroma = chroma; - Hue1 %= 360; - var hueD = Hue1 / 60; - var mid = Chroma * (1 - Math.abs(hueD % 2 - 1)) + match; - Chroma += match; - switch(hueD | 0) { - case 0: - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 1; - } - var Value = Math.round(Chroma * 255); - this1 &= -16711681; - this1 |= (Value > 255 ? 255 : Value < 0 ? 0 : Value) << 16; - var Value1 = Math.round(mid * 255); - this1 &= -65281; - this1 |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 8; - var Value2 = Math.round(match * 255); - this1 &= -256; - this1 |= Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2; - var Value3 = Math.round(Alpha1 * 255); - this1 &= 16777215; - this1 |= (Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3) << 24; - break; - case 1: - var Alpha2 = Alpha; - if(Alpha2 == null) { - Alpha2 = 1; - } - var Value4 = Math.round(mid * 255); - this1 &= -16711681; - this1 |= (Value4 > 255 ? 255 : Value4 < 0 ? 0 : Value4) << 16; - var Value5 = Math.round(Chroma * 255); - this1 &= -65281; - this1 |= (Value5 > 255 ? 255 : Value5 < 0 ? 0 : Value5) << 8; - var Value6 = Math.round(match * 255); - this1 &= -256; - this1 |= Value6 > 255 ? 255 : Value6 < 0 ? 0 : Value6; - var Value7 = Math.round(Alpha2 * 255); - this1 &= 16777215; - this1 |= (Value7 > 255 ? 255 : Value7 < 0 ? 0 : Value7) << 24; - break; - case 2: - var Alpha3 = Alpha; - if(Alpha3 == null) { - Alpha3 = 1; - } - var Value8 = Math.round(match * 255); - this1 &= -16711681; - this1 |= (Value8 > 255 ? 255 : Value8 < 0 ? 0 : Value8) << 16; - var Value9 = Math.round(Chroma * 255); - this1 &= -65281; - this1 |= (Value9 > 255 ? 255 : Value9 < 0 ? 0 : Value9) << 8; - var Value10 = Math.round(mid * 255); - this1 &= -256; - this1 |= Value10 > 255 ? 255 : Value10 < 0 ? 0 : Value10; - var Value11 = Math.round(Alpha3 * 255); - this1 &= 16777215; - this1 |= (Value11 > 255 ? 255 : Value11 < 0 ? 0 : Value11) << 24; - break; - case 3: - var Alpha4 = Alpha; - if(Alpha4 == null) { - Alpha4 = 1; - } - var Value12 = Math.round(match * 255); - this1 &= -16711681; - this1 |= (Value12 > 255 ? 255 : Value12 < 0 ? 0 : Value12) << 16; - var Value13 = Math.round(mid * 255); - this1 &= -65281; - this1 |= (Value13 > 255 ? 255 : Value13 < 0 ? 0 : Value13) << 8; - var Value14 = Math.round(Chroma * 255); - this1 &= -256; - this1 |= Value14 > 255 ? 255 : Value14 < 0 ? 0 : Value14; - var Value15 = Math.round(Alpha4 * 255); - this1 &= 16777215; - this1 |= (Value15 > 255 ? 255 : Value15 < 0 ? 0 : Value15) << 24; - break; - case 4: - var Alpha5 = Alpha; - if(Alpha5 == null) { - Alpha5 = 1; - } - var Value16 = Math.round(mid * 255); - this1 &= -16711681; - this1 |= (Value16 > 255 ? 255 : Value16 < 0 ? 0 : Value16) << 16; - var Value17 = Math.round(match * 255); - this1 &= -65281; - this1 |= (Value17 > 255 ? 255 : Value17 < 0 ? 0 : Value17) << 8; - var Value18 = Math.round(Chroma * 255); - this1 &= -256; - this1 |= Value18 > 255 ? 255 : Value18 < 0 ? 0 : Value18; - var Value19 = Math.round(Alpha5 * 255); - this1 &= 16777215; - this1 |= (Value19 > 255 ? 255 : Value19 < 0 ? 0 : Value19) << 24; - break; - case 5: - var Alpha6 = Alpha; - if(Alpha6 == null) { - Alpha6 = 1; - } - var Value20 = Math.round(Chroma * 255); - this1 &= -16711681; - this1 |= (Value20 > 255 ? 255 : Value20 < 0 ? 0 : Value20) << 16; - var Value21 = Math.round(match * 255); - this1 &= -65281; - this1 |= (Value21 > 255 ? 255 : Value21 < 0 ? 0 : Value21) << 8; - var Value22 = Math.round(mid * 255); - this1 &= -256; - this1 |= Value22 > 255 ? 255 : Value22 < 0 ? 0 : Value22; - var Value23 = Math.round(Alpha6 * 255); - this1 &= 16777215; - this1 |= (Value23 > 255 ? 255 : Value23 < 0 ? 0 : Value23) << 24; - break; - } - return this1; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.setHSL = function(this1,Hue,Saturation,Lightness,Alpha) { - var chroma = (1 - Math.abs(2 * Lightness - 1)) * Saturation; - var match = Lightness - chroma / 2; - var Hue1 = Hue; - var Chroma = chroma; - Hue1 %= 360; - var hueD = Hue1 / 60; - var mid = Chroma * (1 - Math.abs(hueD % 2 - 1)) + match; - Chroma += match; - switch(hueD | 0) { - case 0: - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 1; - } - var Value = Math.round(Chroma * 255); - this1 &= -16711681; - this1 |= (Value > 255 ? 255 : Value < 0 ? 0 : Value) << 16; - var Value1 = Math.round(mid * 255); - this1 &= -65281; - this1 |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 8; - var Value2 = Math.round(match * 255); - this1 &= -256; - this1 |= Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2; - var Value3 = Math.round(Alpha1 * 255); - this1 &= 16777215; - this1 |= (Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3) << 24; - break; - case 1: - var Alpha2 = Alpha; - if(Alpha2 == null) { - Alpha2 = 1; - } - var Value4 = Math.round(mid * 255); - this1 &= -16711681; - this1 |= (Value4 > 255 ? 255 : Value4 < 0 ? 0 : Value4) << 16; - var Value5 = Math.round(Chroma * 255); - this1 &= -65281; - this1 |= (Value5 > 255 ? 255 : Value5 < 0 ? 0 : Value5) << 8; - var Value6 = Math.round(match * 255); - this1 &= -256; - this1 |= Value6 > 255 ? 255 : Value6 < 0 ? 0 : Value6; - var Value7 = Math.round(Alpha2 * 255); - this1 &= 16777215; - this1 |= (Value7 > 255 ? 255 : Value7 < 0 ? 0 : Value7) << 24; - break; - case 2: - var Alpha3 = Alpha; - if(Alpha3 == null) { - Alpha3 = 1; - } - var Value8 = Math.round(match * 255); - this1 &= -16711681; - this1 |= (Value8 > 255 ? 255 : Value8 < 0 ? 0 : Value8) << 16; - var Value9 = Math.round(Chroma * 255); - this1 &= -65281; - this1 |= (Value9 > 255 ? 255 : Value9 < 0 ? 0 : Value9) << 8; - var Value10 = Math.round(mid * 255); - this1 &= -256; - this1 |= Value10 > 255 ? 255 : Value10 < 0 ? 0 : Value10; - var Value11 = Math.round(Alpha3 * 255); - this1 &= 16777215; - this1 |= (Value11 > 255 ? 255 : Value11 < 0 ? 0 : Value11) << 24; - break; - case 3: - var Alpha4 = Alpha; - if(Alpha4 == null) { - Alpha4 = 1; - } - var Value12 = Math.round(match * 255); - this1 &= -16711681; - this1 |= (Value12 > 255 ? 255 : Value12 < 0 ? 0 : Value12) << 16; - var Value13 = Math.round(mid * 255); - this1 &= -65281; - this1 |= (Value13 > 255 ? 255 : Value13 < 0 ? 0 : Value13) << 8; - var Value14 = Math.round(Chroma * 255); - this1 &= -256; - this1 |= Value14 > 255 ? 255 : Value14 < 0 ? 0 : Value14; - var Value15 = Math.round(Alpha4 * 255); - this1 &= 16777215; - this1 |= (Value15 > 255 ? 255 : Value15 < 0 ? 0 : Value15) << 24; - break; - case 4: - var Alpha5 = Alpha; - if(Alpha5 == null) { - Alpha5 = 1; - } - var Value16 = Math.round(mid * 255); - this1 &= -16711681; - this1 |= (Value16 > 255 ? 255 : Value16 < 0 ? 0 : Value16) << 16; - var Value17 = Math.round(match * 255); - this1 &= -65281; - this1 |= (Value17 > 255 ? 255 : Value17 < 0 ? 0 : Value17) << 8; - var Value18 = Math.round(Chroma * 255); - this1 &= -256; - this1 |= Value18 > 255 ? 255 : Value18 < 0 ? 0 : Value18; - var Value19 = Math.round(Alpha5 * 255); - this1 &= 16777215; - this1 |= (Value19 > 255 ? 255 : Value19 < 0 ? 0 : Value19) << 24; - break; - case 5: - var Alpha6 = Alpha; - if(Alpha6 == null) { - Alpha6 = 1; - } - var Value20 = Math.round(Chroma * 255); - this1 &= -16711681; - this1 |= (Value20 > 255 ? 255 : Value20 < 0 ? 0 : Value20) << 16; - var Value21 = Math.round(match * 255); - this1 &= -65281; - this1 |= (Value21 > 255 ? 255 : Value21 < 0 ? 0 : Value21) << 8; - var Value22 = Math.round(mid * 255); - this1 &= -256; - this1 |= Value22 > 255 ? 255 : Value22 < 0 ? 0 : Value22; - var Value23 = Math.round(Alpha6 * 255); - this1 &= 16777215; - this1 |= (Value23 > 255 ? 255 : Value23 < 0 ? 0 : Value23) << 24; - break; - } - return this1; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.setHSChromaMatch = function(this1,Hue,Saturation,Chroma,Match,Alpha) { - Hue %= 360; - var hueD = Hue / 60; - var mid = Chroma * (1 - Math.abs(hueD % 2 - 1)) + Match; - Chroma += Match; - switch(hueD | 0) { - case 0: - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 1; - } - var Value = Math.round(Chroma * 255); - this1 &= -16711681; - this1 |= (Value > 255 ? 255 : Value < 0 ? 0 : Value) << 16; - var Value1 = Math.round(mid * 255); - this1 &= -65281; - this1 |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 8; - var Value2 = Math.round(Match * 255); - this1 &= -256; - this1 |= Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2; - var Value3 = Math.round(Alpha1 * 255); - this1 &= 16777215; - this1 |= (Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3) << 24; - break; - case 1: - var Alpha2 = Alpha; - if(Alpha2 == null) { - Alpha2 = 1; - } - var Value4 = Math.round(mid * 255); - this1 &= -16711681; - this1 |= (Value4 > 255 ? 255 : Value4 < 0 ? 0 : Value4) << 16; - var Value5 = Math.round(Chroma * 255); - this1 &= -65281; - this1 |= (Value5 > 255 ? 255 : Value5 < 0 ? 0 : Value5) << 8; - var Value6 = Math.round(Match * 255); - this1 &= -256; - this1 |= Value6 > 255 ? 255 : Value6 < 0 ? 0 : Value6; - var Value7 = Math.round(Alpha2 * 255); - this1 &= 16777215; - this1 |= (Value7 > 255 ? 255 : Value7 < 0 ? 0 : Value7) << 24; - break; - case 2: - var Alpha3 = Alpha; - if(Alpha3 == null) { - Alpha3 = 1; - } - var Value8 = Math.round(Match * 255); - this1 &= -16711681; - this1 |= (Value8 > 255 ? 255 : Value8 < 0 ? 0 : Value8) << 16; - var Value9 = Math.round(Chroma * 255); - this1 &= -65281; - this1 |= (Value9 > 255 ? 255 : Value9 < 0 ? 0 : Value9) << 8; - var Value10 = Math.round(mid * 255); - this1 &= -256; - this1 |= Value10 > 255 ? 255 : Value10 < 0 ? 0 : Value10; - var Value11 = Math.round(Alpha3 * 255); - this1 &= 16777215; - this1 |= (Value11 > 255 ? 255 : Value11 < 0 ? 0 : Value11) << 24; - break; - case 3: - var Alpha4 = Alpha; - if(Alpha4 == null) { - Alpha4 = 1; - } - var Value12 = Math.round(Match * 255); - this1 &= -16711681; - this1 |= (Value12 > 255 ? 255 : Value12 < 0 ? 0 : Value12) << 16; - var Value13 = Math.round(mid * 255); - this1 &= -65281; - this1 |= (Value13 > 255 ? 255 : Value13 < 0 ? 0 : Value13) << 8; - var Value14 = Math.round(Chroma * 255); - this1 &= -256; - this1 |= Value14 > 255 ? 255 : Value14 < 0 ? 0 : Value14; - var Value15 = Math.round(Alpha4 * 255); - this1 &= 16777215; - this1 |= (Value15 > 255 ? 255 : Value15 < 0 ? 0 : Value15) << 24; - break; - case 4: - var Alpha5 = Alpha; - if(Alpha5 == null) { - Alpha5 = 1; - } - var Value16 = Math.round(mid * 255); - this1 &= -16711681; - this1 |= (Value16 > 255 ? 255 : Value16 < 0 ? 0 : Value16) << 16; - var Value17 = Math.round(Match * 255); - this1 &= -65281; - this1 |= (Value17 > 255 ? 255 : Value17 < 0 ? 0 : Value17) << 8; - var Value18 = Math.round(Chroma * 255); - this1 &= -256; - this1 |= Value18 > 255 ? 255 : Value18 < 0 ? 0 : Value18; - var Value19 = Math.round(Alpha5 * 255); - this1 &= 16777215; - this1 |= (Value19 > 255 ? 255 : Value19 < 0 ? 0 : Value19) << 24; - break; - case 5: - var Alpha6 = Alpha; - if(Alpha6 == null) { - Alpha6 = 1; - } - var Value20 = Math.round(Chroma * 255); - this1 &= -16711681; - this1 |= (Value20 > 255 ? 255 : Value20 < 0 ? 0 : Value20) << 16; - var Value21 = Math.round(Match * 255); - this1 &= -65281; - this1 |= (Value21 > 255 ? 255 : Value21 < 0 ? 0 : Value21) << 8; - var Value22 = Math.round(mid * 255); - this1 &= -256; - this1 |= Value22 > 255 ? 255 : Value22 < 0 ? 0 : Value22; - var Value23 = Math.round(Alpha6 * 255); - this1 &= 16777215; - this1 |= (Value23 > 255 ? 255 : Value23 < 0 ? 0 : Value23) << 24; - break; - } - return this1; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$._new = function(Value) { - if(Value == null) { - Value = 0; - } - var this1 = Value; - return this1; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.getThis = function(this1) { - return this1; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.validate = function(this1) { -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.get_red = function(this1) { - return this1 >> 16 & 255; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.get_green = function(this1) { - return this1 >> 8 & 255; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.get_blue = function(this1) { - return this1 & 255; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.get_alpha = function(this1) { - return this1 >> 24 & 255; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.get_redFloat = function(this1) { - return (this1 >> 16 & 255) / 255; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.get_greenFloat = function(this1) { - return (this1 >> 8 & 255) / 255; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.get_blueFloat = function(this1) { - return (this1 & 255) / 255; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.get_alphaFloat = function(this1) { - return (this1 >> 24 & 255) / 255; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.set_red = function(this1,Value) { - this1 &= -16711681; - this1 |= (Value > 255 ? 255 : Value < 0 ? 0 : Value) << 16; - return Value; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.set_green = function(this1,Value) { - this1 &= -65281; - this1 |= (Value > 255 ? 255 : Value < 0 ? 0 : Value) << 8; - return Value; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.set_blue = function(this1,Value) { - this1 &= -256; - this1 |= Value > 255 ? 255 : Value < 0 ? 0 : Value; - return Value; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.set_alpha = function(this1,Value) { - this1 &= 16777215; - this1 |= (Value > 255 ? 255 : Value < 0 ? 0 : Value) << 24; - return Value; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.set_redFloat = function(this1,Value) { - var Value1 = Math.round(Value * 255); - this1 &= -16711681; - this1 |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 16; - return Value; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.set_greenFloat = function(this1,Value) { - var Value1 = Math.round(Value * 255); - this1 &= -65281; - this1 |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 8; - return Value; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.set_blueFloat = function(this1,Value) { - var Value1 = Math.round(Value * 255); - this1 &= -256; - this1 |= Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1; - return Value; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.set_alphaFloat = function(this1,Value) { - var Value1 = Math.round(Value * 255); - this1 &= 16777215; - this1 |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 24; - return Value; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.get_cyan = function(this1) { - return (1 - (this1 >> 16 & 255) / 255 - (1 - Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.get_magenta = function(this1) { - return (1 - (this1 >> 8 & 255) / 255 - (1 - Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.get_yellow = function(this1) { - return (1 - (this1 & 255) / 255 - (1 - Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.get_black = function(this1) { - return 1 - Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.set_cyan = function(this1,Value) { - var Magenta = (1 - (this1 >> 8 & 255) / 255 - (1 - Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); - var Yellow = (1 - (this1 & 255) / 255 - (1 - Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); - var Black = 1 - Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); - var Alpha = (this1 >> 24 & 255) / 255; - if(Alpha == null) { - Alpha = 1; - } - var Value1 = (1 - Value) * (1 - Black); - var Value2 = Math.round(Value1 * 255); - this1 &= -16711681; - this1 |= (Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2) << 16; - var Value3 = (1 - Magenta) * (1 - Black); - var Value4 = Math.round(Value3 * 255); - this1 &= -65281; - this1 |= (Value4 > 255 ? 255 : Value4 < 0 ? 0 : Value4) << 8; - var Value5 = (1 - Yellow) * (1 - Black); - var Value6 = Math.round(Value5 * 255); - this1 &= -256; - this1 |= Value6 > 255 ? 255 : Value6 < 0 ? 0 : Value6; - var Value7 = Math.round(Alpha * 255); - this1 &= 16777215; - this1 |= (Value7 > 255 ? 255 : Value7 < 0 ? 0 : Value7) << 24; - return Value; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.set_magenta = function(this1,Value) { - var Yellow = (1 - (this1 & 255) / 255 - (1 - Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); - var Black = 1 - Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); - var Alpha = (this1 >> 24 & 255) / 255; - if(Alpha == null) { - Alpha = 1; - } - var Value1 = (1 - (1 - (this1 >> 16 & 255) / 255 - (1 - Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) * (1 - Black); - var Value2 = Math.round(Value1 * 255); - this1 &= -16711681; - this1 |= (Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2) << 16; - var Value3 = (1 - Value) * (1 - Black); - var Value4 = Math.round(Value3 * 255); - this1 &= -65281; - this1 |= (Value4 > 255 ? 255 : Value4 < 0 ? 0 : Value4) << 8; - var Value5 = (1 - Yellow) * (1 - Black); - var Value6 = Math.round(Value5 * 255); - this1 &= -256; - this1 |= Value6 > 255 ? 255 : Value6 < 0 ? 0 : Value6; - var Value7 = Math.round(Alpha * 255); - this1 &= 16777215; - this1 |= (Value7 > 255 ? 255 : Value7 < 0 ? 0 : Value7) << 24; - return Value; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.set_yellow = function(this1,Value) { - var Magenta = (1 - (this1 >> 8 & 255) / 255 - (1 - Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); - var Black = 1 - Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); - var Alpha = (this1 >> 24 & 255) / 255; - if(Alpha == null) { - Alpha = 1; - } - var Value1 = (1 - (1 - (this1 >> 16 & 255) / 255 - (1 - Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) * (1 - Black); - var Value2 = Math.round(Value1 * 255); - this1 &= -16711681; - this1 |= (Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2) << 16; - var Value3 = (1 - Magenta) * (1 - Black); - var Value4 = Math.round(Value3 * 255); - this1 &= -65281; - this1 |= (Value4 > 255 ? 255 : Value4 < 0 ? 0 : Value4) << 8; - var Value5 = (1 - Value) * (1 - Black); - var Value6 = Math.round(Value5 * 255); - this1 &= -256; - this1 |= Value6 > 255 ? 255 : Value6 < 0 ? 0 : Value6; - var Value7 = Math.round(Alpha * 255); - this1 &= 16777215; - this1 |= (Value7 > 255 ? 255 : Value7 < 0 ? 0 : Value7) << 24; - return Value; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.set_black = function(this1,Value) { - var Magenta = (1 - (this1 >> 8 & 255) / 255 - (1 - Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); - var Yellow = (1 - (this1 & 255) / 255 - (1 - Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); - var Alpha = (this1 >> 24 & 255) / 255; - if(Alpha == null) { - Alpha = 1; - } - var Value1 = (1 - (1 - (this1 >> 16 & 255) / 255 - (1 - Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) * (1 - Value); - var Value2 = Math.round(Value1 * 255); - this1 &= -16711681; - this1 |= (Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2) << 16; - var Value3 = (1 - Magenta) * (1 - Value); - var Value4 = Math.round(Value3 * 255); - this1 &= -65281; - this1 |= (Value4 > 255 ? 255 : Value4 < 0 ? 0 : Value4) << 8; - var Value5 = (1 - Yellow) * (1 - Value); - var Value6 = Math.round(Value5 * 255); - this1 &= -256; - this1 |= Value6 > 255 ? 255 : Value6 < 0 ? 0 : Value6; - var Value7 = Math.round(Alpha * 255); - this1 &= 16777215; - this1 |= (Value7 > 255 ? 255 : Value7 < 0 ? 0 : Value7) << 24; - return Value; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.get_hue = function(this1) { - var hueRad = Math.atan2(Math.sqrt(3) * ((this1 >> 8 & 255) / 255 - (this1 & 255) / 255),2 * ((this1 >> 16 & 255) / 255) - (this1 >> 8 & 255) / 255 - (this1 & 255) / 255); - var hue = 0; - if(hueRad != 0) { - hue = 180 / Math.PI * Math.atan2(Math.sqrt(3) * ((this1 >> 8 & 255) / 255 - (this1 & 255) / 255),2 * ((this1 >> 16 & 255) / 255) - (this1 >> 8 & 255) / 255 - (this1 & 255) / 255); - } - if(hue < 0) { - return hue + 360; - } else { - return hue; - } -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.get_brightness = function(this1) { - return Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.get_saturation = function(this1) { - return (Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)) - Math.min((this1 >> 16 & 255) / 255,Math.min((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.get_lightness = function(this1) { - return (Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)) + Math.min((this1 >> 16 & 255) / 255,Math.min((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) / 2; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.set_hue = function(this1,Value) { - var Brightness = Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); - var Alpha = (this1 >> 24 & 255) / 255; - var chroma = Brightness * ((Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)) - Math.min((this1 >> 16 & 255) / 255,Math.min((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255))); - var match = Brightness - chroma; - var Hue = Value; - var Chroma = chroma; - Hue %= 360; - var hueD = Hue / 60; - var mid = Chroma * (1 - Math.abs(hueD % 2 - 1)) + match; - Chroma += match; - switch(hueD | 0) { - case 0: - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 1; - } - var Value1 = Math.round(Chroma * 255); - this1 &= -16711681; - this1 |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 16; - var Value2 = Math.round(mid * 255); - this1 &= -65281; - this1 |= (Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2) << 8; - var Value3 = Math.round(match * 255); - this1 &= -256; - this1 |= Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3; - var Value4 = Math.round(Alpha1 * 255); - this1 &= 16777215; - this1 |= (Value4 > 255 ? 255 : Value4 < 0 ? 0 : Value4) << 24; - break; - case 1: - var Alpha2 = Alpha; - if(Alpha2 == null) { - Alpha2 = 1; - } - var Value5 = Math.round(mid * 255); - this1 &= -16711681; - this1 |= (Value5 > 255 ? 255 : Value5 < 0 ? 0 : Value5) << 16; - var Value6 = Math.round(Chroma * 255); - this1 &= -65281; - this1 |= (Value6 > 255 ? 255 : Value6 < 0 ? 0 : Value6) << 8; - var Value7 = Math.round(match * 255); - this1 &= -256; - this1 |= Value7 > 255 ? 255 : Value7 < 0 ? 0 : Value7; - var Value8 = Math.round(Alpha2 * 255); - this1 &= 16777215; - this1 |= (Value8 > 255 ? 255 : Value8 < 0 ? 0 : Value8) << 24; - break; - case 2: - var Alpha3 = Alpha; - if(Alpha3 == null) { - Alpha3 = 1; - } - var Value9 = Math.round(match * 255); - this1 &= -16711681; - this1 |= (Value9 > 255 ? 255 : Value9 < 0 ? 0 : Value9) << 16; - var Value10 = Math.round(Chroma * 255); - this1 &= -65281; - this1 |= (Value10 > 255 ? 255 : Value10 < 0 ? 0 : Value10) << 8; - var Value11 = Math.round(mid * 255); - this1 &= -256; - this1 |= Value11 > 255 ? 255 : Value11 < 0 ? 0 : Value11; - var Value12 = Math.round(Alpha3 * 255); - this1 &= 16777215; - this1 |= (Value12 > 255 ? 255 : Value12 < 0 ? 0 : Value12) << 24; - break; - case 3: - var Alpha4 = Alpha; - if(Alpha4 == null) { - Alpha4 = 1; - } - var Value13 = Math.round(match * 255); - this1 &= -16711681; - this1 |= (Value13 > 255 ? 255 : Value13 < 0 ? 0 : Value13) << 16; - var Value14 = Math.round(mid * 255); - this1 &= -65281; - this1 |= (Value14 > 255 ? 255 : Value14 < 0 ? 0 : Value14) << 8; - var Value15 = Math.round(Chroma * 255); - this1 &= -256; - this1 |= Value15 > 255 ? 255 : Value15 < 0 ? 0 : Value15; - var Value16 = Math.round(Alpha4 * 255); - this1 &= 16777215; - this1 |= (Value16 > 255 ? 255 : Value16 < 0 ? 0 : Value16) << 24; - break; - case 4: - var Alpha5 = Alpha; - if(Alpha5 == null) { - Alpha5 = 1; - } - var Value17 = Math.round(mid * 255); - this1 &= -16711681; - this1 |= (Value17 > 255 ? 255 : Value17 < 0 ? 0 : Value17) << 16; - var Value18 = Math.round(match * 255); - this1 &= -65281; - this1 |= (Value18 > 255 ? 255 : Value18 < 0 ? 0 : Value18) << 8; - var Value19 = Math.round(Chroma * 255); - this1 &= -256; - this1 |= Value19 > 255 ? 255 : Value19 < 0 ? 0 : Value19; - var Value20 = Math.round(Alpha5 * 255); - this1 &= 16777215; - this1 |= (Value20 > 255 ? 255 : Value20 < 0 ? 0 : Value20) << 24; - break; - case 5: - var Alpha6 = Alpha; - if(Alpha6 == null) { - Alpha6 = 1; - } - var Value21 = Math.round(Chroma * 255); - this1 &= -16711681; - this1 |= (Value21 > 255 ? 255 : Value21 < 0 ? 0 : Value21) << 16; - var Value22 = Math.round(match * 255); - this1 &= -65281; - this1 |= (Value22 > 255 ? 255 : Value22 < 0 ? 0 : Value22) << 8; - var Value23 = Math.round(mid * 255); - this1 &= -256; - this1 |= Value23 > 255 ? 255 : Value23 < 0 ? 0 : Value23; - var Value24 = Math.round(Alpha6 * 255); - this1 &= 16777215; - this1 |= (Value24 > 255 ? 255 : Value24 < 0 ? 0 : Value24) << 24; - break; - } - return Value; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.set_saturation = function(this1,Value) { - var Hue = flixel_util__$FlxColor_FlxColor_$Impl_$.get_hue(this1); - var Brightness = Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); - var Alpha = (this1 >> 24 & 255) / 255; - var chroma = Brightness * Value; - var match = Brightness - chroma; - var Hue1 = Hue; - var Chroma = chroma; - Hue1 %= 360; - var hueD = Hue1 / 60; - var mid = Chroma * (1 - Math.abs(hueD % 2 - 1)) + match; - Chroma += match; - switch(hueD | 0) { - case 0: - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 1; - } - var Value1 = Math.round(Chroma * 255); - this1 &= -16711681; - this1 |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 16; - var Value2 = Math.round(mid * 255); - this1 &= -65281; - this1 |= (Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2) << 8; - var Value3 = Math.round(match * 255); - this1 &= -256; - this1 |= Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3; - var Value4 = Math.round(Alpha1 * 255); - this1 &= 16777215; - this1 |= (Value4 > 255 ? 255 : Value4 < 0 ? 0 : Value4) << 24; - break; - case 1: - var Alpha2 = Alpha; - if(Alpha2 == null) { - Alpha2 = 1; - } - var Value5 = Math.round(mid * 255); - this1 &= -16711681; - this1 |= (Value5 > 255 ? 255 : Value5 < 0 ? 0 : Value5) << 16; - var Value6 = Math.round(Chroma * 255); - this1 &= -65281; - this1 |= (Value6 > 255 ? 255 : Value6 < 0 ? 0 : Value6) << 8; - var Value7 = Math.round(match * 255); - this1 &= -256; - this1 |= Value7 > 255 ? 255 : Value7 < 0 ? 0 : Value7; - var Value8 = Math.round(Alpha2 * 255); - this1 &= 16777215; - this1 |= (Value8 > 255 ? 255 : Value8 < 0 ? 0 : Value8) << 24; - break; - case 2: - var Alpha3 = Alpha; - if(Alpha3 == null) { - Alpha3 = 1; - } - var Value9 = Math.round(match * 255); - this1 &= -16711681; - this1 |= (Value9 > 255 ? 255 : Value9 < 0 ? 0 : Value9) << 16; - var Value10 = Math.round(Chroma * 255); - this1 &= -65281; - this1 |= (Value10 > 255 ? 255 : Value10 < 0 ? 0 : Value10) << 8; - var Value11 = Math.round(mid * 255); - this1 &= -256; - this1 |= Value11 > 255 ? 255 : Value11 < 0 ? 0 : Value11; - var Value12 = Math.round(Alpha3 * 255); - this1 &= 16777215; - this1 |= (Value12 > 255 ? 255 : Value12 < 0 ? 0 : Value12) << 24; - break; - case 3: - var Alpha4 = Alpha; - if(Alpha4 == null) { - Alpha4 = 1; - } - var Value13 = Math.round(match * 255); - this1 &= -16711681; - this1 |= (Value13 > 255 ? 255 : Value13 < 0 ? 0 : Value13) << 16; - var Value14 = Math.round(mid * 255); - this1 &= -65281; - this1 |= (Value14 > 255 ? 255 : Value14 < 0 ? 0 : Value14) << 8; - var Value15 = Math.round(Chroma * 255); - this1 &= -256; - this1 |= Value15 > 255 ? 255 : Value15 < 0 ? 0 : Value15; - var Value16 = Math.round(Alpha4 * 255); - this1 &= 16777215; - this1 |= (Value16 > 255 ? 255 : Value16 < 0 ? 0 : Value16) << 24; - break; - case 4: - var Alpha5 = Alpha; - if(Alpha5 == null) { - Alpha5 = 1; - } - var Value17 = Math.round(mid * 255); - this1 &= -16711681; - this1 |= (Value17 > 255 ? 255 : Value17 < 0 ? 0 : Value17) << 16; - var Value18 = Math.round(match * 255); - this1 &= -65281; - this1 |= (Value18 > 255 ? 255 : Value18 < 0 ? 0 : Value18) << 8; - var Value19 = Math.round(Chroma * 255); - this1 &= -256; - this1 |= Value19 > 255 ? 255 : Value19 < 0 ? 0 : Value19; - var Value20 = Math.round(Alpha5 * 255); - this1 &= 16777215; - this1 |= (Value20 > 255 ? 255 : Value20 < 0 ? 0 : Value20) << 24; - break; - case 5: - var Alpha6 = Alpha; - if(Alpha6 == null) { - Alpha6 = 1; - } - var Value21 = Math.round(Chroma * 255); - this1 &= -16711681; - this1 |= (Value21 > 255 ? 255 : Value21 < 0 ? 0 : Value21) << 16; - var Value22 = Math.round(match * 255); - this1 &= -65281; - this1 |= (Value22 > 255 ? 255 : Value22 < 0 ? 0 : Value22) << 8; - var Value23 = Math.round(mid * 255); - this1 &= -256; - this1 |= Value23 > 255 ? 255 : Value23 < 0 ? 0 : Value23; - var Value24 = Math.round(Alpha6 * 255); - this1 &= 16777215; - this1 |= (Value24 > 255 ? 255 : Value24 < 0 ? 0 : Value24) << 24; - break; - } - return Value; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.set_brightness = function(this1,Value) { - var Hue = flixel_util__$FlxColor_FlxColor_$Impl_$.get_hue(this1); - var Alpha = (this1 >> 24 & 255) / 255; - var chroma = Value * ((Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)) - Math.min((this1 >> 16 & 255) / 255,Math.min((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255))); - var match = Value - chroma; - var Hue1 = Hue; - var Chroma = chroma; - Hue1 %= 360; - var hueD = Hue1 / 60; - var mid = Chroma * (1 - Math.abs(hueD % 2 - 1)) + match; - Chroma += match; - switch(hueD | 0) { - case 0: - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 1; - } - var Value1 = Math.round(Chroma * 255); - this1 &= -16711681; - this1 |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 16; - var Value2 = Math.round(mid * 255); - this1 &= -65281; - this1 |= (Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2) << 8; - var Value3 = Math.round(match * 255); - this1 &= -256; - this1 |= Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3; - var Value4 = Math.round(Alpha1 * 255); - this1 &= 16777215; - this1 |= (Value4 > 255 ? 255 : Value4 < 0 ? 0 : Value4) << 24; - break; - case 1: - var Alpha2 = Alpha; - if(Alpha2 == null) { - Alpha2 = 1; - } - var Value5 = Math.round(mid * 255); - this1 &= -16711681; - this1 |= (Value5 > 255 ? 255 : Value5 < 0 ? 0 : Value5) << 16; - var Value6 = Math.round(Chroma * 255); - this1 &= -65281; - this1 |= (Value6 > 255 ? 255 : Value6 < 0 ? 0 : Value6) << 8; - var Value7 = Math.round(match * 255); - this1 &= -256; - this1 |= Value7 > 255 ? 255 : Value7 < 0 ? 0 : Value7; - var Value8 = Math.round(Alpha2 * 255); - this1 &= 16777215; - this1 |= (Value8 > 255 ? 255 : Value8 < 0 ? 0 : Value8) << 24; - break; - case 2: - var Alpha3 = Alpha; - if(Alpha3 == null) { - Alpha3 = 1; - } - var Value9 = Math.round(match * 255); - this1 &= -16711681; - this1 |= (Value9 > 255 ? 255 : Value9 < 0 ? 0 : Value9) << 16; - var Value10 = Math.round(Chroma * 255); - this1 &= -65281; - this1 |= (Value10 > 255 ? 255 : Value10 < 0 ? 0 : Value10) << 8; - var Value11 = Math.round(mid * 255); - this1 &= -256; - this1 |= Value11 > 255 ? 255 : Value11 < 0 ? 0 : Value11; - var Value12 = Math.round(Alpha3 * 255); - this1 &= 16777215; - this1 |= (Value12 > 255 ? 255 : Value12 < 0 ? 0 : Value12) << 24; - break; - case 3: - var Alpha4 = Alpha; - if(Alpha4 == null) { - Alpha4 = 1; - } - var Value13 = Math.round(match * 255); - this1 &= -16711681; - this1 |= (Value13 > 255 ? 255 : Value13 < 0 ? 0 : Value13) << 16; - var Value14 = Math.round(mid * 255); - this1 &= -65281; - this1 |= (Value14 > 255 ? 255 : Value14 < 0 ? 0 : Value14) << 8; - var Value15 = Math.round(Chroma * 255); - this1 &= -256; - this1 |= Value15 > 255 ? 255 : Value15 < 0 ? 0 : Value15; - var Value16 = Math.round(Alpha4 * 255); - this1 &= 16777215; - this1 |= (Value16 > 255 ? 255 : Value16 < 0 ? 0 : Value16) << 24; - break; - case 4: - var Alpha5 = Alpha; - if(Alpha5 == null) { - Alpha5 = 1; - } - var Value17 = Math.round(mid * 255); - this1 &= -16711681; - this1 |= (Value17 > 255 ? 255 : Value17 < 0 ? 0 : Value17) << 16; - var Value18 = Math.round(match * 255); - this1 &= -65281; - this1 |= (Value18 > 255 ? 255 : Value18 < 0 ? 0 : Value18) << 8; - var Value19 = Math.round(Chroma * 255); - this1 &= -256; - this1 |= Value19 > 255 ? 255 : Value19 < 0 ? 0 : Value19; - var Value20 = Math.round(Alpha5 * 255); - this1 &= 16777215; - this1 |= (Value20 > 255 ? 255 : Value20 < 0 ? 0 : Value20) << 24; - break; - case 5: - var Alpha6 = Alpha; - if(Alpha6 == null) { - Alpha6 = 1; - } - var Value21 = Math.round(Chroma * 255); - this1 &= -16711681; - this1 |= (Value21 > 255 ? 255 : Value21 < 0 ? 0 : Value21) << 16; - var Value22 = Math.round(match * 255); - this1 &= -65281; - this1 |= (Value22 > 255 ? 255 : Value22 < 0 ? 0 : Value22) << 8; - var Value23 = Math.round(mid * 255); - this1 &= -256; - this1 |= Value23 > 255 ? 255 : Value23 < 0 ? 0 : Value23; - var Value24 = Math.round(Alpha6 * 255); - this1 &= 16777215; - this1 |= (Value24 > 255 ? 255 : Value24 < 0 ? 0 : Value24) << 24; - break; - } - return Value; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.set_lightness = function(this1,Value) { - var Hue = flixel_util__$FlxColor_FlxColor_$Impl_$.get_hue(this1); - var Alpha = (this1 >> 24 & 255) / 255; - var chroma = (1 - Math.abs(2 * Value - 1)) * ((Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)) - Math.min((this1 >> 16 & 255) / 255,Math.min((this1 >> 8 & 255) / 255,(this1 & 255) / 255))) / Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255))); - var match = Value - chroma / 2; - var Hue1 = Hue; - var Chroma = chroma; - Hue1 %= 360; - var hueD = Hue1 / 60; - var mid = Chroma * (1 - Math.abs(hueD % 2 - 1)) + match; - Chroma += match; - switch(hueD | 0) { - case 0: - var Alpha1 = Alpha; - if(Alpha1 == null) { - Alpha1 = 1; - } - var Value1 = Math.round(Chroma * 255); - this1 &= -16711681; - this1 |= (Value1 > 255 ? 255 : Value1 < 0 ? 0 : Value1) << 16; - var Value2 = Math.round(mid * 255); - this1 &= -65281; - this1 |= (Value2 > 255 ? 255 : Value2 < 0 ? 0 : Value2) << 8; - var Value3 = Math.round(match * 255); - this1 &= -256; - this1 |= Value3 > 255 ? 255 : Value3 < 0 ? 0 : Value3; - var Value4 = Math.round(Alpha1 * 255); - this1 &= 16777215; - this1 |= (Value4 > 255 ? 255 : Value4 < 0 ? 0 : Value4) << 24; - break; - case 1: - var Alpha2 = Alpha; - if(Alpha2 == null) { - Alpha2 = 1; - } - var Value5 = Math.round(mid * 255); - this1 &= -16711681; - this1 |= (Value5 > 255 ? 255 : Value5 < 0 ? 0 : Value5) << 16; - var Value6 = Math.round(Chroma * 255); - this1 &= -65281; - this1 |= (Value6 > 255 ? 255 : Value6 < 0 ? 0 : Value6) << 8; - var Value7 = Math.round(match * 255); - this1 &= -256; - this1 |= Value7 > 255 ? 255 : Value7 < 0 ? 0 : Value7; - var Value8 = Math.round(Alpha2 * 255); - this1 &= 16777215; - this1 |= (Value8 > 255 ? 255 : Value8 < 0 ? 0 : Value8) << 24; - break; - case 2: - var Alpha3 = Alpha; - if(Alpha3 == null) { - Alpha3 = 1; - } - var Value9 = Math.round(match * 255); - this1 &= -16711681; - this1 |= (Value9 > 255 ? 255 : Value9 < 0 ? 0 : Value9) << 16; - var Value10 = Math.round(Chroma * 255); - this1 &= -65281; - this1 |= (Value10 > 255 ? 255 : Value10 < 0 ? 0 : Value10) << 8; - var Value11 = Math.round(mid * 255); - this1 &= -256; - this1 |= Value11 > 255 ? 255 : Value11 < 0 ? 0 : Value11; - var Value12 = Math.round(Alpha3 * 255); - this1 &= 16777215; - this1 |= (Value12 > 255 ? 255 : Value12 < 0 ? 0 : Value12) << 24; - break; - case 3: - var Alpha4 = Alpha; - if(Alpha4 == null) { - Alpha4 = 1; - } - var Value13 = Math.round(match * 255); - this1 &= -16711681; - this1 |= (Value13 > 255 ? 255 : Value13 < 0 ? 0 : Value13) << 16; - var Value14 = Math.round(mid * 255); - this1 &= -65281; - this1 |= (Value14 > 255 ? 255 : Value14 < 0 ? 0 : Value14) << 8; - var Value15 = Math.round(Chroma * 255); - this1 &= -256; - this1 |= Value15 > 255 ? 255 : Value15 < 0 ? 0 : Value15; - var Value16 = Math.round(Alpha4 * 255); - this1 &= 16777215; - this1 |= (Value16 > 255 ? 255 : Value16 < 0 ? 0 : Value16) << 24; - break; - case 4: - var Alpha5 = Alpha; - if(Alpha5 == null) { - Alpha5 = 1; - } - var Value17 = Math.round(mid * 255); - this1 &= -16711681; - this1 |= (Value17 > 255 ? 255 : Value17 < 0 ? 0 : Value17) << 16; - var Value18 = Math.round(match * 255); - this1 &= -65281; - this1 |= (Value18 > 255 ? 255 : Value18 < 0 ? 0 : Value18) << 8; - var Value19 = Math.round(Chroma * 255); - this1 &= -256; - this1 |= Value19 > 255 ? 255 : Value19 < 0 ? 0 : Value19; - var Value20 = Math.round(Alpha5 * 255); - this1 &= 16777215; - this1 |= (Value20 > 255 ? 255 : Value20 < 0 ? 0 : Value20) << 24; - break; - case 5: - var Alpha6 = Alpha; - if(Alpha6 == null) { - Alpha6 = 1; - } - var Value21 = Math.round(Chroma * 255); - this1 &= -16711681; - this1 |= (Value21 > 255 ? 255 : Value21 < 0 ? 0 : Value21) << 16; - var Value22 = Math.round(match * 255); - this1 &= -65281; - this1 |= (Value22 > 255 ? 255 : Value22 < 0 ? 0 : Value22) << 8; - var Value23 = Math.round(mid * 255); - this1 &= -256; - this1 |= Value23 > 255 ? 255 : Value23 < 0 ? 0 : Value23; - var Value24 = Math.round(Alpha6 * 255); - this1 &= 16777215; - this1 |= (Value24 > 255 ? 255 : Value24 < 0 ? 0 : Value24) << 24; - break; - } - return Value; -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.maxColor = function(this1) { - return Math.max((this1 >> 16 & 255) / 255,Math.max((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.minColor = function(this1) { - return Math.min((this1 >> 16 & 255) / 255,Math.min((this1 >> 8 & 255) / 255,(this1 & 255) / 255)); -}; -flixel_util__$FlxColor_FlxColor_$Impl_$.boundChannel = function(this1,Value) { - if(Value > 255) { - return 255; - } else if(Value < 0) { - return 0; - } else { - return Value; - } -}; -var flixel_util_FlxColorTransformUtil = function() { }; -$hxClasses["flixel.util.FlxColorTransformUtil"] = flixel_util_FlxColorTransformUtil; -flixel_util_FlxColorTransformUtil.__name__ = "flixel.util.FlxColorTransformUtil"; -flixel_util_FlxColorTransformUtil.setMultipliers = function(transform,red,green,blue,alpha) { - transform.redMultiplier = red; - transform.greenMultiplier = green; - transform.blueMultiplier = blue; - transform.alphaMultiplier = alpha; - return transform; -}; -flixel_util_FlxColorTransformUtil.setOffsets = function(transform,red,green,blue,alpha) { - transform.redOffset = red; - transform.greenOffset = green; - transform.blueOffset = blue; - transform.alphaOffset = alpha; - return transform; -}; -flixel_util_FlxColorTransformUtil.hasRGBMultipliers = function(transform) { - if(!(transform.redMultiplier != 1 || transform.greenMultiplier != 1)) { - return transform.blueMultiplier != 1; - } else { - return true; - } -}; -flixel_util_FlxColorTransformUtil.hasRGBAMultipliers = function(transform) { - if(!flixel_util_FlxColorTransformUtil.hasRGBMultipliers(transform)) { - return transform.alphaMultiplier != 1; - } else { - return true; - } -}; -flixel_util_FlxColorTransformUtil.hasRGBOffsets = function(transform) { - if(!(transform.redOffset != 0 || transform.greenOffset != 0)) { - return transform.blueOffset != 0; - } else { - return true; - } -}; -flixel_util_FlxColorTransformUtil.hasRGBAOffsets = function(transform) { - if(!flixel_util_FlxColorTransformUtil.hasRGBOffsets(transform)) { - return transform.alphaOffset != 0; - } else { - return true; - } -}; -var flixel_util_FlxDestroyUtil = function() { }; -$hxClasses["flixel.util.FlxDestroyUtil"] = flixel_util_FlxDestroyUtil; -flixel_util_FlxDestroyUtil.__name__ = "flixel.util.FlxDestroyUtil"; -flixel_util_FlxDestroyUtil.destroy = function(object) { - if(object != null) { - object.destroy(); - } - return null; -}; -flixel_util_FlxDestroyUtil.destroyArray = function(array) { - if(array != null) { - var _g = 0; - while(_g < array.length) { - var e = array[_g]; - ++_g; - flixel_util_FlxDestroyUtil.destroy(e); - } - array.splice(0,array.length); - } - return null; -}; -flixel_util_FlxDestroyUtil.put = function(object) { - if(object != null) { - object.put(); - } - return null; -}; -flixel_util_FlxDestroyUtil.putArray = function(array) { - if(array != null) { - var _g = 0; - while(_g < array.length) { - var e = array[_g]; - ++_g; - flixel_util_FlxDestroyUtil.put(e); - } - array.splice(0,array.length); - } - return null; -}; -flixel_util_FlxDestroyUtil.dispose = function(bitmapData) { - if(bitmapData != null) { - bitmapData.dispose(); - } - return null; -}; -flixel_util_FlxDestroyUtil.disposeIfNotEqual = function(bitmapData,width,height) { - if(bitmapData != null && (bitmapData.width != width || bitmapData.height != height)) { - bitmapData.dispose(); - return null; - } else if(bitmapData != null) { - return bitmapData; - } - return null; -}; -flixel_util_FlxDestroyUtil.removeChild = function(parent,child) { - if(parent != null && child != null && parent.contains(child)) { - parent.removeChild(child); - } - return null; -}; -var flixel_util_FlxHorizontalAlign = $hxEnums["flixel.util.FlxHorizontalAlign"] = { __ename__ : "flixel.util.FlxHorizontalAlign", __constructs__ : ["LEFT","CENTER","RIGHT"] - ,LEFT: {_hx_index:0,__enum__:"flixel.util.FlxHorizontalAlign",toString:$estr} - ,CENTER: {_hx_index:1,__enum__:"flixel.util.FlxHorizontalAlign",toString:$estr} - ,RIGHT: {_hx_index:2,__enum__:"flixel.util.FlxHorizontalAlign",toString:$estr} -}; -var flixel_util_FlxPath = function(Nodes) { - this._firstUpdate = false; - this._wasObjectImmovable = null; - this._autoRotate = false; - this._inc = 1; - this.finished = false; - this.nodeIndex = 0; - this.active = false; - this.autoCenter = true; - this.angle = 0; - this.speed = 0; - if(Nodes != null) { - this._nodes = Nodes.slice(); - } else { - this._nodes = []; - } -}; -$hxClasses["flixel.util.FlxPath"] = flixel_util_FlxPath; -flixel_util_FlxPath.__name__ = "flixel.util.FlxPath"; -flixel_util_FlxPath.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_util_FlxPath.prototype = { - _nodes: null - ,speed: null - ,angle: null - ,autoCenter: null - ,active: null - ,onComplete: null - ,nodeIndex: null - ,finished: null - ,_mode: null - ,_inc: null - ,_autoRotate: null - ,_wasObjectImmovable: null - ,_firstUpdate: null - ,object: null - ,reset: function() { - this.autoCenter = true; - return this; - } - ,setProperties: function(Speed,Mode,AutoRotate) { - if(AutoRotate == null) { - AutoRotate = false; - } - if(Mode == null) { - Mode = 0; - } - if(Speed == null) { - Speed = 100; - } - this.speed = Math.abs(Speed); - this._mode = Mode; - this._autoRotate = AutoRotate; - return this; - } - ,start: function(Nodes,Speed,Mode,AutoRotate,NodesAsReference) { - if(NodesAsReference == null) { - NodesAsReference = false; - } - if(AutoRotate == null) { - AutoRotate = false; - } - if(Mode == null) { - Mode = 0; - } - if(Speed == null) { - Speed = 100; - } - if(Nodes != null) { - if(NodesAsReference) { - this._nodes = Nodes; - } else { - this._nodes = Nodes.slice(); - } - } - this.setProperties(Speed,Mode,AutoRotate); - if(this._nodes.length > 0) { - this.restart(); - } - return this; - } - ,restart: function() { - this.finished = false; - this._firstUpdate = true; - this.active = this._nodes.length > 0; - if(!this.active) { - return this; - } - if(this._mode == 1 || this._mode == 256) { - this.nodeIndex = this._nodes.length - 1; - this._inc = -1; - } else { - this.nodeIndex = 0; - this._inc = 1; - } - return this; - } - ,setNode: function(NodeIndex) { - if(NodeIndex < 0) { - NodeIndex = 0; - } else if(NodeIndex > this._nodes.length - 1) { - NodeIndex = this._nodes.length - 1; - } - this.nodeIndex = NodeIndex; - this.advancePath(); - return this; - } - ,update: function(elapsed) { - if(this.object == null) { - return; - } - if(this._firstUpdate) { - this._wasObjectImmovable = this.object.immovable; - this.object.set_immovable(true); - this._firstUpdate = false; - } - flixel_util_FlxPath._point.set_x(this.object.x); - flixel_util_FlxPath._point.set_y(this.object.y); - if(this.autoCenter) { - var _this = flixel_util_FlxPath._point; - var X = this.object.get_width() * 0.5; - var Y = this.object.get_height() * 0.5; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var _g = _this; - _g.set_x(_g.x + X); - var _g1 = _this; - _g1.set_y(_g1.y + Y); - } - var node = this._nodes[this.nodeIndex]; - var deltaX = node.x - flixel_util_FlxPath._point.x; - var deltaY = node.y - flixel_util_FlxPath._point.y; - var horizontalOnly = (this._mode & 65536) > 0; - var verticalOnly = (this._mode & 1048576) > 0; - if(horizontalOnly) { - if((deltaX > 0 ? deltaX : -deltaX) < this.speed * elapsed) { - node = this.advancePath(); - } - } else if(verticalOnly) { - if((deltaY > 0 ? deltaY : -deltaY) < this.speed * elapsed) { - node = this.advancePath(); - } - } else if(Math.sqrt(deltaX * deltaX + deltaY * deltaY) < this.speed * elapsed) { - node = this.advancePath(); - } - if(this.object != null && this.speed != 0) { - flixel_util_FlxPath._point.set_x(this.object.x); - flixel_util_FlxPath._point.set_y(this.object.y); - if(this.autoCenter) { - var _this1 = flixel_util_FlxPath._point; - var X1 = this.object.get_width() * 0.5; - var Y1 = this.object.get_height() * 0.5; - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var _g2 = _this1; - _g2.set_x(_g2.x + X1); - var _g3 = _this1; - _g3.set_y(_g3.y + Y1); - } - var _this2 = flixel_util_FlxPath._point; - var result = Math.abs(_this2.x - node.x) <= 0.0000001 && Math.abs(_this2.y - node.y) <= 0.0000001; - if(node._weak) { - node.put(); - } - if(!result) { - this.calculateVelocity(node,horizontalOnly,verticalOnly); - } else { - this.object.velocity.set(); - } - if(this._autoRotate) { - this.object.angularVelocity = 0; - this.object.angularAcceleration = 0; - this.object.set_angle(this.angle); - } - if(this.finished) { - this.cancel(); - } - } - } - ,calculateVelocity: function(node,horizontalOnly,verticalOnly) { - if(horizontalOnly || flixel_util_FlxPath._point.y == node.y) { - this.object.velocity.set_x(flixel_util_FlxPath._point.x < node.x ? this.speed : -this.speed); - this.angle = this.object.velocity.x < 0 ? -90 : 90; - if(!horizontalOnly) { - this.object.velocity.set_y(0); - } - } else if(verticalOnly || flixel_util_FlxPath._point.x == node.x) { - this.object.velocity.set_y(flixel_util_FlxPath._point.y < node.y ? this.speed : -this.speed); - this.angle = this.object.velocity.y < 0 ? 0 : 180; - if(!verticalOnly) { - this.object.velocity.set_x(0); - } - } else { - this.object.velocity.set_x(flixel_util_FlxPath._point.x < node.x ? this.speed : -this.speed); - this.object.velocity.set_y(flixel_util_FlxPath._point.y < node.y ? this.speed : -this.speed); - this.angle = flixel_util_FlxPath._point.angleBetween(node); - this.object.velocity.set(0,-this.speed); - var tmp = this.object.velocity; - var X = 0; - var Y = 0; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var X1 = X; - var Y1 = Y; - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X1,Y1); - point._inPool = false; - var point1 = point; - point1._weak = true; - tmp.rotate(point1,this.angle); - } - } - ,advancePath: function(Snap) { - if(Snap == null) { - Snap = true; - } - if(Snap) { - var oldNode = this._nodes[this.nodeIndex]; - if(oldNode != null) { - if((this._mode & 1048576) == 0) { - this.object.set_x(oldNode.x); - if(this.autoCenter) { - var _g = this.object; - _g.set_x(_g.x - this.object.get_width() * 0.5); - } - } - if((this._mode & 65536) == 0) { - this.object.set_y(oldNode.y); - if(this.autoCenter) { - var _g1 = this.object; - _g1.set_y(_g1.y - this.object.get_height() * 0.5); - } - } - } - } - var callComplete = false; - this.nodeIndex += this._inc; - if((this._mode & 1) > 0) { - if(this.nodeIndex < 0) { - this.nodeIndex = 0; - callComplete = true; - this.onEnd(); - } - } else if((this._mode & 16) > 0) { - if(this.nodeIndex >= this._nodes.length) { - callComplete = true; - this.nodeIndex = 0; - } - } else if((this._mode & 256) > 0) { - if(this.nodeIndex < 0) { - this.nodeIndex = this._nodes.length - 1; - callComplete = true; - if(this.nodeIndex < 0) { - this.nodeIndex = 0; - } - } - } else if((this._mode & 4096) > 0) { - if(this._inc > 0) { - if(this.nodeIndex >= this._nodes.length) { - this.nodeIndex = this._nodes.length - 2; - callComplete = true; - if(this.nodeIndex < 0) { - this.nodeIndex = 0; - } - this._inc = -this._inc; - } - } else if(this.nodeIndex < 0) { - this.nodeIndex = 1; - callComplete = true; - if(this.nodeIndex >= this._nodes.length) { - this.nodeIndex = this._nodes.length - 1; - } - if(this.nodeIndex < 0) { - this.nodeIndex = 0; - } - this._inc = -this._inc; - } - } else if(this.nodeIndex >= this._nodes.length) { - this.nodeIndex = this._nodes.length - 1; - callComplete = true; - this.onEnd(); - } - if(callComplete && this.onComplete != null) { - this.onComplete(this); - } - return this._nodes[this.nodeIndex]; - } - ,cancel: function() { - this.onEnd(); - if(this.object != null) { - this.object.velocity.set(0,0); - } - return this; - } - ,onEnd: function() { - this.finished = true; - this.active = false; - if(this._wasObjectImmovable != null) { - this.object.set_immovable(this._wasObjectImmovable); - } - this._wasObjectImmovable = null; - } - ,destroy: function() { - flixel_util_FlxDestroyUtil.putArray(this._nodes); - this._nodes = null; - this.object = null; - this.onComplete = null; - } - ,add: function(X,Y) { - var tmp = this._nodes; - var X1 = X; - var Y1 = Y; - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X1,Y1); - point._inPool = false; - tmp.push(point); - return this; - } - ,addAt: function(X,Y,Index) { - if(Index < 0) { - return this; - } - var _this = this._nodes; - var X1 = X; - var Y1 = Y; - if(Y1 == null) { - Y1 = 0; - } - if(X1 == null) { - X1 = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X1,Y1); - point._inPool = false; - _this.splice(Index,0,point); - return this; - } - ,addPoint: function(Node1,AsReference) { - if(AsReference == null) { - AsReference = false; - } - if(AsReference) { - this._nodes.push(Node1); - } else { - var tmp = this._nodes; - var X = Node1.x; - var Y = Node1.y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - tmp.push(point); - } - return this; - } - ,addPointAt: function(Node1,Index,AsReference) { - if(AsReference == null) { - AsReference = false; - } - if(Index < 0) { - return this; - } - if(AsReference) { - this._nodes.splice(Index,0,Node1); - } else { - var _this = this._nodes; - var X = Node1.x; - var Y = Node1.y; - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - var point = flixel_math_FlxPoint._pool.get().set(X,Y); - point._inPool = false; - _this.splice(Index,0,point); - } - return this; - } - ,remove: function(Node1) { - var index = this._nodes.indexOf(Node1); - if(index >= 0) { - return this._nodes.splice(index,1)[0]; - } - return null; - } - ,removeAt: function(Index) { - if(this._nodes.length <= 0) { - return null; - } - if(Index >= this._nodes.length - 1) { - this._nodes.pop(); - } - return this._nodes.splice(Index,1)[0]; - } - ,head: function() { - if(this._nodes.length > 0) { - return this._nodes[0]; - } - return null; - } - ,tail: function() { - if(this._nodes.length > 0) { - return this._nodes[this._nodes.length - 1]; - } - return null; - } - ,get_nodes: function() { - return this._nodes; - } - ,set_nodes: function(Nodes) { - if(Nodes != null) { - this._nodes = Nodes; - } - return this._nodes; - } - ,__class__: flixel_util_FlxPath - ,__properties__: {set_nodes:"set_nodes",get_nodes:"get_nodes"} -}; -var flixel_util_FlxPool = function(classObj) { - this._count = 0; - this._pool = []; - this._class = classObj; -}; -$hxClasses["flixel.util.FlxPool"] = flixel_util_FlxPool; -flixel_util_FlxPool.__name__ = "flixel.util.FlxPool"; -flixel_util_FlxPool.__interfaces__ = [flixel_util_IFlxPool]; -flixel_util_FlxPool.prototype = { - _pool: null - ,_class: null - ,_count: null - ,get: function() { - if(this._count == 0) { - return Type.createInstance(this._class,[]); - } - return this._pool[--this._count]; - } - ,put: function(obj) { - if(obj != null) { - var i = this._pool.indexOf(obj); - if(i == -1 || i >= this._count) { - obj.destroy(); - this._pool[this._count++] = obj; - } - } - } - ,putUnsafe: function(obj) { - if(obj != null) { - obj.destroy(); - this._pool[this._count++] = obj; - } - } - ,preAllocate: function(numObjects) { - while(numObjects-- > 0) this._pool[this._count++] = Type.createInstance(this._class,[]); - } - ,clear: function() { - this._count = 0; - var oldPool = this._pool; - this._pool = []; - return oldPool; - } - ,get_length: function() { - return this._count; - } - ,__class__: flixel_util_FlxPool - ,__properties__: {get_length:"get_length"} -}; -var flixel_util_FlxPool_$flixel_$util_$LabelValuePair = function(classObj) { - this._count = 0; - this._pool = []; - this._class = classObj; -}; -$hxClasses["flixel.util.FlxPool_flixel_util_LabelValuePair"] = flixel_util_FlxPool_$flixel_$util_$LabelValuePair; -flixel_util_FlxPool_$flixel_$util_$LabelValuePair.__name__ = "flixel.util.FlxPool_flixel_util_LabelValuePair"; -flixel_util_FlxPool_$flixel_$util_$LabelValuePair.__interfaces__ = [flixel_util_IFlxPool]; -flixel_util_FlxPool_$flixel_$util_$LabelValuePair.prototype = { - _pool: null - ,_class: null - ,_count: null - ,get: function() { - if(this._count == 0) { - return Type.createInstance(this._class,[]); - } - return this._pool[--this._count]; - } - ,put: function(obj) { - if(obj != null) { - var i = this._pool.indexOf(obj); - if(i == -1 || i >= this._count) { - obj.label = null; - obj.value = null; - this._pool[this._count++] = obj; - } - } - } - ,putUnsafe: function(obj) { - if(obj != null) { - obj.label = null; - obj.value = null; - this._pool[this._count++] = obj; - } - } - ,preAllocate: function(numObjects) { - while(numObjects-- > 0) this._pool[this._count++] = Type.createInstance(this._class,[]); - } - ,clear: function() { - this._count = 0; - var oldPool = this._pool; - this._pool = []; - return oldPool; - } - ,get_length: function() { - return this._count; - } - ,__class__: flixel_util_FlxPool_$flixel_$util_$LabelValuePair - ,__properties__: {get_length:"get_length"} -}; -var flixel_util_FlxSaveStatus = $hxEnums["flixel.util.FlxSaveStatus"] = { __ename__ : "flixel.util.FlxSaveStatus", __constructs__ : ["SUCCESS","PENDING","ERROR"] - ,SUCCESS: {_hx_index:0,__enum__:"flixel.util.FlxSaveStatus",toString:$estr} - ,PENDING: {_hx_index:1,__enum__:"flixel.util.FlxSaveStatus",toString:$estr} - ,ERROR: {_hx_index:2,__enum__:"flixel.util.FlxSaveStatus",toString:$estr} -}; -var flixel_util__$FlxSignal_FlxTypedSignal_$Impl_$ = {}; -$hxClasses["flixel.util._FlxSignal.FlxTypedSignal_Impl_"] = flixel_util__$FlxSignal_FlxTypedSignal_$Impl_$; -flixel_util__$FlxSignal_FlxTypedSignal_$Impl_$.__name__ = "flixel.util._FlxSignal.FlxTypedSignal_Impl_"; -flixel_util__$FlxSignal_FlxTypedSignal_$Impl_$.__properties__ = {get_dispatch:"get_dispatch"}; -flixel_util__$FlxSignal_FlxTypedSignal_$Impl_$.add = function(this1,listener) { - this1.add(listener); -}; -flixel_util__$FlxSignal_FlxTypedSignal_$Impl_$.addOnce = function(this1,listener) { - this1.addOnce(listener); -}; -flixel_util__$FlxSignal_FlxTypedSignal_$Impl_$.remove = function(this1,listener) { - this1.remove(listener); -}; -flixel_util__$FlxSignal_FlxTypedSignal_$Impl_$.has = function(this1,listener) { - return this1.has(listener); -}; -flixel_util__$FlxSignal_FlxTypedSignal_$Impl_$.removeAll = function(this1) { - this1.removeAll(); -}; -flixel_util__$FlxSignal_FlxTypedSignal_$Impl_$.get_dispatch = function(this1) { - return this1.dispatch; -}; -flixel_util__$FlxSignal_FlxTypedSignal_$Impl_$.toSignal0 = function(signal) { - return new flixel_util__$FlxSignal_FlxSignal0(); -}; -flixel_util__$FlxSignal_FlxTypedSignal_$Impl_$.toSignal1 = function(signal) { - return new flixel_util__$FlxSignal_FlxSignal1(); -}; -flixel_util__$FlxSignal_FlxTypedSignal_$Impl_$.toSignal2 = function(signal) { - return new flixel_util__$FlxSignal_FlxSignal2(); -}; -flixel_util__$FlxSignal_FlxTypedSignal_$Impl_$.toSignal3 = function(signal) { - return new flixel_util__$FlxSignal_FlxSignal3(); -}; -flixel_util__$FlxSignal_FlxTypedSignal_$Impl_$.toSignal4 = function(signal) { - return new flixel_util__$FlxSignal_FlxSignal4(); -}; -var flixel_util__$FlxSignal_FlxSignalHandler = function(listener,dispatchOnce) { - this.dispatchOnce = false; - this.listener = listener; - this.dispatchOnce = dispatchOnce; -}; -$hxClasses["flixel.util._FlxSignal.FlxSignalHandler"] = flixel_util__$FlxSignal_FlxSignalHandler; -flixel_util__$FlxSignal_FlxSignalHandler.__name__ = "flixel.util._FlxSignal.FlxSignalHandler"; -flixel_util__$FlxSignal_FlxSignalHandler.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_util__$FlxSignal_FlxSignalHandler.prototype = { - listener: null - ,dispatchOnce: null - ,destroy: function() { - this.listener = null; - } - ,__class__: flixel_util__$FlxSignal_FlxSignalHandler -}; -var flixel_util_IFlxSignal = function() { }; -$hxClasses["flixel.util.IFlxSignal"] = flixel_util_IFlxSignal; -flixel_util_IFlxSignal.__name__ = "flixel.util.IFlxSignal"; -flixel_util_IFlxSignal.__isInterface__ = true; -flixel_util_IFlxSignal.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_util_IFlxSignal.prototype = { - dispatch: null - ,add: null - ,addOnce: null - ,remove: null - ,removeAll: null - ,has: null - ,__class__: flixel_util_IFlxSignal -}; -var flixel_util__$FlxSignal_FlxBaseSignal = function() { - this.processingListeners = false; - this.handlers = []; - this.pendingRemove = []; -}; -$hxClasses["flixel.util._FlxSignal.FlxBaseSignal"] = flixel_util__$FlxSignal_FlxBaseSignal; -flixel_util__$FlxSignal_FlxBaseSignal.__name__ = "flixel.util._FlxSignal.FlxBaseSignal"; -flixel_util__$FlxSignal_FlxBaseSignal.__interfaces__ = [flixel_util_IFlxSignal]; -flixel_util__$FlxSignal_FlxBaseSignal.prototype = { - dispatch: null - ,handlers: null - ,pendingRemove: null - ,processingListeners: null - ,add: function(listener) { - if(listener != null) { - this.registerListener(listener,false); - } - } - ,addOnce: function(listener) { - if(listener != null) { - this.registerListener(listener,true); - } - } - ,remove: function(listener) { - if(listener != null) { - var handler = this.getHandler(listener); - if(handler != null) { - if(this.processingListeners) { - this.pendingRemove.push(handler); - } else { - HxOverrides.remove(this.handlers,handler); - handler.destroy(); - } - } - } - } - ,has: function(listener) { - if(listener == null) { - return false; - } - return this.getHandler(listener) != null; - } - ,removeAll: function() { - flixel_util_FlxDestroyUtil.destroyArray(this.handlers); - } - ,destroy: function() { - flixel_util_FlxDestroyUtil.destroyArray(this.handlers); - this.handlers = null; - this.pendingRemove = null; - } - ,registerListener: function(listener,dispatchOnce) { - var handler = this.getHandler(listener); - if(handler == null) { - handler = new flixel_util__$FlxSignal_FlxSignalHandler(listener,dispatchOnce); - this.handlers.push(handler); - return handler; - } else if(handler.dispatchOnce != dispatchOnce) { - throw new js__$Boot_HaxeError("You cannot addOnce() then add() the same listener without removing the relationship first."); - } else { - return handler; - } - } - ,getHandler: function(listener) { - var _g = 0; - var _g1 = this.handlers; - while(_g < _g1.length) { - var handler = _g1[_g]; - ++_g; - if(handler.listener == listener) { - return handler; - } - } - return null; - } - ,__class__: flixel_util__$FlxSignal_FlxBaseSignal -}; -var flixel_util__$FlxSignal_FlxSignal0 = function() { - flixel_util__$FlxSignal_FlxBaseSignal.call(this); - this.dispatch = $bind(this,this.dispatch0); -}; -$hxClasses["flixel.util._FlxSignal.FlxSignal0"] = flixel_util__$FlxSignal_FlxSignal0; -flixel_util__$FlxSignal_FlxSignal0.__name__ = "flixel.util._FlxSignal.FlxSignal0"; -flixel_util__$FlxSignal_FlxSignal0.__super__ = flixel_util__$FlxSignal_FlxBaseSignal; -flixel_util__$FlxSignal_FlxSignal0.prototype = $extend(flixel_util__$FlxSignal_FlxBaseSignal.prototype,{ - dispatch0: function() { - this.processingListeners = true; - var _g = 0; - var _g1 = this.handlers; - while(_g < _g1.length) { - var handler = _g1[_g]; - ++_g; - handler.listener(); - if(handler.dispatchOnce) { - this.remove(handler.listener); - } - } - this.processingListeners = false; - var _g2 = 0; - var _g3 = this.pendingRemove; - while(_g2 < _g3.length) { - var handler1 = _g3[_g2]; - ++_g2; - this.remove(handler1.listener); - } - if(this.pendingRemove.length > 0) { - this.pendingRemove = []; - } - } - ,__class__: flixel_util__$FlxSignal_FlxSignal0 -}); -var flixel_util__$FlxSignal_FlxSignal1 = function() { - flixel_util__$FlxSignal_FlxBaseSignal.call(this); - this.dispatch = $bind(this,this.dispatch1); -}; -$hxClasses["flixel.util._FlxSignal.FlxSignal1"] = flixel_util__$FlxSignal_FlxSignal1; -flixel_util__$FlxSignal_FlxSignal1.__name__ = "flixel.util._FlxSignal.FlxSignal1"; -flixel_util__$FlxSignal_FlxSignal1.__super__ = flixel_util__$FlxSignal_FlxBaseSignal; -flixel_util__$FlxSignal_FlxSignal1.prototype = $extend(flixel_util__$FlxSignal_FlxBaseSignal.prototype,{ - dispatch1: function(value1) { - this.processingListeners = true; - var _g = 0; - var _g1 = this.handlers; - while(_g < _g1.length) { - var handler = _g1[_g]; - ++_g; - handler.listener(value1); - if(handler.dispatchOnce) { - this.remove(handler.listener); - } - } - this.processingListeners = false; - var _g2 = 0; - var _g3 = this.pendingRemove; - while(_g2 < _g3.length) { - var handler1 = _g3[_g2]; - ++_g2; - this.remove(handler1.listener); - } - if(this.pendingRemove.length > 0) { - this.pendingRemove = []; - } - } - ,__class__: flixel_util__$FlxSignal_FlxSignal1 -}); -var flixel_util__$FlxSignal_FlxSignal2 = function() { - flixel_util__$FlxSignal_FlxBaseSignal.call(this); - this.dispatch = $bind(this,this.dispatch2); -}; -$hxClasses["flixel.util._FlxSignal.FlxSignal2"] = flixel_util__$FlxSignal_FlxSignal2; -flixel_util__$FlxSignal_FlxSignal2.__name__ = "flixel.util._FlxSignal.FlxSignal2"; -flixel_util__$FlxSignal_FlxSignal2.__super__ = flixel_util__$FlxSignal_FlxBaseSignal; -flixel_util__$FlxSignal_FlxSignal2.prototype = $extend(flixel_util__$FlxSignal_FlxBaseSignal.prototype,{ - dispatch2: function(value1,value2) { - this.processingListeners = true; - var _g = 0; - var _g1 = this.handlers; - while(_g < _g1.length) { - var handler = _g1[_g]; - ++_g; - handler.listener(value1,value2); - if(handler.dispatchOnce) { - this.remove(handler.listener); - } - } - this.processingListeners = false; - var _g2 = 0; - var _g3 = this.pendingRemove; - while(_g2 < _g3.length) { - var handler1 = _g3[_g2]; - ++_g2; - this.remove(handler1.listener); - } - if(this.pendingRemove.length > 0) { - this.pendingRemove = []; - } - } - ,__class__: flixel_util__$FlxSignal_FlxSignal2 -}); -var flixel_util__$FlxSignal_FlxSignal3 = function() { - flixel_util__$FlxSignal_FlxBaseSignal.call(this); - this.dispatch = $bind(this,this.dispatch3); -}; -$hxClasses["flixel.util._FlxSignal.FlxSignal3"] = flixel_util__$FlxSignal_FlxSignal3; -flixel_util__$FlxSignal_FlxSignal3.__name__ = "flixel.util._FlxSignal.FlxSignal3"; -flixel_util__$FlxSignal_FlxSignal3.__super__ = flixel_util__$FlxSignal_FlxBaseSignal; -flixel_util__$FlxSignal_FlxSignal3.prototype = $extend(flixel_util__$FlxSignal_FlxBaseSignal.prototype,{ - dispatch3: function(value1,value2,value3) { - this.processingListeners = true; - var _g = 0; - var _g1 = this.handlers; - while(_g < _g1.length) { - var handler = _g1[_g]; - ++_g; - handler.listener(value1,value2,value3); - if(handler.dispatchOnce) { - this.remove(handler.listener); - } - } - this.processingListeners = false; - var _g2 = 0; - var _g3 = this.pendingRemove; - while(_g2 < _g3.length) { - var handler1 = _g3[_g2]; - ++_g2; - this.remove(handler1.listener); - } - if(this.pendingRemove.length > 0) { - this.pendingRemove = []; - } - } - ,__class__: flixel_util__$FlxSignal_FlxSignal3 -}); -var flixel_util__$FlxSignal_FlxSignal4 = function() { - flixel_util__$FlxSignal_FlxBaseSignal.call(this); - this.dispatch = $bind(this,this.dispatch4); -}; -$hxClasses["flixel.util._FlxSignal.FlxSignal4"] = flixel_util__$FlxSignal_FlxSignal4; -flixel_util__$FlxSignal_FlxSignal4.__name__ = "flixel.util._FlxSignal.FlxSignal4"; -flixel_util__$FlxSignal_FlxSignal4.__super__ = flixel_util__$FlxSignal_FlxBaseSignal; -flixel_util__$FlxSignal_FlxSignal4.prototype = $extend(flixel_util__$FlxSignal_FlxBaseSignal.prototype,{ - dispatch4: function(value1,value2,value3,value4) { - this.processingListeners = true; - var _g = 0; - var _g1 = this.handlers; - while(_g < _g1.length) { - var handler = _g1[_g]; - ++_g; - handler.listener(value1,value2,value3,value4); - if(handler.dispatchOnce) { - this.remove(handler.listener); - } - } - this.processingListeners = false; - var _g2 = 0; - var _g3 = this.pendingRemove; - while(_g2 < _g3.length) { - var handler1 = _g3[_g2]; - ++_g2; - this.remove(handler1.listener); - } - if(this.pendingRemove.length > 0) { - this.pendingRemove = []; - } - } - ,__class__: flixel_util__$FlxSignal_FlxSignal4 -}); -var flixel_util__$FlxSignal_Macro = function() { }; -$hxClasses["flixel.util._FlxSignal.Macro"] = flixel_util__$FlxSignal_Macro; -flixel_util__$FlxSignal_Macro.__name__ = "flixel.util._FlxSignal.Macro"; -var flixel_util_FlxSort = function() { }; -$hxClasses["flixel.util.FlxSort"] = flixel_util_FlxSort; -flixel_util_FlxSort.__name__ = "flixel.util.FlxSort"; -flixel_util_FlxSort.byY = function(Order,Obj1,Obj2) { - var Value1 = Obj1.y; - var Value2 = Obj2.y; - var result = 0; - if(Value1 < Value2) { - result = Order; - } else if(Value1 > Value2) { - result = -Order; - } - return result; -}; -flixel_util_FlxSort.byValues = function(Order,Value1,Value2) { - var result = 0; - if(Value1 < Value2) { - result = Order; - } else if(Value1 > Value2) { - result = -Order; - } - return result; -}; -var flixel_util_FlxSpriteUtil = function() { }; -$hxClasses["flixel.util.FlxSpriteUtil"] = flixel_util_FlxSpriteUtil; -flixel_util_FlxSpriteUtil.__name__ = "flixel.util.FlxSpriteUtil"; -flixel_util_FlxSpriteUtil.alphaMask = function(output,source,mask) { - var data = flixel_system_FlxAssets.resolveBitmapData(source); - var maskData = flixel_system_FlxAssets.resolveBitmapData(mask); - if(data == null || maskData == null) { - return null; - } - data = data.clone(); - data.copyChannel(maskData,new openfl_geom_Rectangle(0,0,data.width,data.height),new openfl_geom_Point(),8,8); - output.set_pixels(data); - return output; -}; -flixel_util_FlxSpriteUtil.alphaMaskFlxSprite = function(sprite,mask,output) { - sprite.drawFrame(); - var data = sprite.get_pixels().clone(); - data.copyChannel(mask.get_pixels(),new openfl_geom_Rectangle(0,0,sprite.get_width(),sprite.get_height()),new openfl_geom_Point(),8,8); - output.set_pixels(data); - return output; -}; -flixel_util_FlxSpriteUtil.screenWrap = function(sprite,Left,Right,Top,Bottom) { - if(Bottom == null) { - Bottom = true; - } - if(Top == null) { - Top = true; - } - if(Right == null) { - Right = true; - } - if(Left == null) { - Left = true; - } - if(Left && sprite.x + sprite.frameWidth / 2 <= 0) { - sprite.set_x(flixel_FlxG.width); - } else if(Right && sprite.x >= flixel_FlxG.width) { - sprite.set_x(0); - } - if(Top && sprite.y + sprite.frameHeight / 2 <= 0) { - sprite.set_y(flixel_FlxG.height); - } else if(Bottom && sprite.y >= flixel_FlxG.height) { - sprite.set_y(0); - } - return sprite; -}; -flixel_util_FlxSpriteUtil.bound = function(sprite,MinX,MaxX,MinY,MaxY) { - if(MaxY == null) { - MaxY = 0; - } - if(MinY == null) { - MinY = 0; - } - if(MaxX == null) { - MaxX = 0; - } - if(MinX == null) { - MinX = 0; - } - if(MaxX <= 0) { - MaxX = flixel_FlxG.width; - } - if(MaxY <= 0) { - MaxY = flixel_FlxG.height; - } - MaxX -= sprite.frameWidth; - MaxY -= sprite.frameHeight; - var Value = sprite.x; - var lowerBound = MinX != null && Value < MinX ? MinX : Value; - sprite.set_x(MaxX != null && lowerBound > MaxX ? MaxX : lowerBound); - var Value1 = sprite.y; - var lowerBound1 = MinY != null && Value1 < MinY ? MinY : Value1; - sprite.set_y(MaxY != null && lowerBound1 > MaxY ? MaxY : lowerBound1); - return sprite; -}; -flixel_util_FlxSpriteUtil.space = function(objects,startX,startY,horizontalSpacing,verticalSpacing,spaceFromBounds,position) { - if(spaceFromBounds == null) { - spaceFromBounds = false; - } - var prevWidth = 0; - var runningX = 0; - if(horizontalSpacing != null) { - if(spaceFromBounds) { - prevWidth = objects[0].get_width(); - } - runningX = startX; - } else { - runningX = objects[0].x; - } - var prevHeight = 0; - var runningY = 0; - if(verticalSpacing != null) { - if(spaceFromBounds) { - prevHeight = objects[0].get_height(); - } - runningY = startY; - } else { - runningY = objects[0].y; - } - if(position != null) { - position(objects[0],runningX,runningY); - } else { - objects[0].set_x(runningX); - objects[0].set_y(runningY); - } - var curX = 0; - var curY = 0; - var _g = 1; - var _g1 = objects.length; - while(_g < _g1) { - var i = _g++; - var object = objects[i]; - if(horizontalSpacing != null) { - curX = runningX + prevWidth + horizontalSpacing; - runningX = curX; - } else { - curX = object.x; - } - if(verticalSpacing != null) { - curY = runningY + prevHeight + verticalSpacing; - runningY = curY; - } else { - curY = object.y; - } - if(position != null) { - position(object,curX,curY); - } else { - object.set_x(curX); - object.set_y(curY); - } - if(spaceFromBounds) { - prevWidth = object.get_width(); - prevHeight = object.get_height(); - } - } -}; -flixel_util_FlxSpriteUtil.drawLine = function(sprite,StartX,StartY,EndX,EndY,lineStyle,drawStyle) { - var lineStyle1 = lineStyle; - if(lineStyle1 == null) { - lineStyle1 = { thickness : 1, color : -1}; - } - if(lineStyle1.thickness == null) { - lineStyle1.thickness = 1; - } - if(lineStyle1.color == null) { - lineStyle1.color = -1; - } - lineStyle = lineStyle1; - flixel_util_FlxSpriteUtil.flashGfx.clear(); - if(lineStyle != null) { - var color = lineStyle.color == null ? -16777216 : lineStyle.color; - if(lineStyle.thickness == null) { - lineStyle.thickness = 1; - } - if(lineStyle.pixelHinting == null) { - lineStyle.pixelHinting = false; - } - if(lineStyle.miterLimit == null) { - lineStyle.miterLimit = 3; - } - flixel_util_FlxSpriteUtil.flashGfx.lineStyle(lineStyle.thickness,color & 16777215,(color >> 24 & 255) / 255,lineStyle.pixelHinting,lineStyle.scaleMode,lineStyle.capsStyle,lineStyle.jointStyle,lineStyle.miterLimit); - } - if(0 != 0) { - flixel_util_FlxSpriteUtil.flashGfx.beginFill(0 & 16777215,(0 >> 24 & 255) / 255); - } - flixel_util_FlxSpriteUtil.flashGfx.moveTo(StartX,StartY); - flixel_util_FlxSpriteUtil.flashGfx.lineTo(EndX,EndY); - flixel_util_FlxSpriteUtil.flashGfx.endFill(); - flixel_util_FlxSpriteUtil.updateSpriteGraphic(sprite,drawStyle); - return sprite; -}; -flixel_util_FlxSpriteUtil.drawCurve = function(sprite,StartX,StartY,EndX,EndY,ControlX,ControlY,FillColor,lineStyle,drawStyle) { - if(FillColor == null) { - FillColor = 0; - } - var lineStyle1 = lineStyle; - if(lineStyle1 == null) { - lineStyle1 = { thickness : 1, color : -1}; - } - if(lineStyle1.thickness == null) { - lineStyle1.thickness = 1; - } - if(lineStyle1.color == null) { - lineStyle1.color = -1; - } - lineStyle = lineStyle1; - flixel_util_FlxSpriteUtil.flashGfx.clear(); - if(lineStyle != null) { - var color = lineStyle.color == null ? -16777216 : lineStyle.color; - if(lineStyle.thickness == null) { - lineStyle.thickness = 1; - } - if(lineStyle.pixelHinting == null) { - lineStyle.pixelHinting = false; - } - if(lineStyle.miterLimit == null) { - lineStyle.miterLimit = 3; - } - flixel_util_FlxSpriteUtil.flashGfx.lineStyle(lineStyle.thickness,color & 16777215,(color >> 24 & 255) / 255,lineStyle.pixelHinting,lineStyle.scaleMode,lineStyle.capsStyle,lineStyle.jointStyle,lineStyle.miterLimit); - } - if(FillColor != 0) { - flixel_util_FlxSpriteUtil.flashGfx.beginFill(FillColor & 16777215,(FillColor >> 24 & 255) / 255); - } - flixel_util_FlxSpriteUtil.flashGfx.moveTo(StartX,StartY); - flixel_util_FlxSpriteUtil.flashGfx.curveTo(EndX,EndY,ControlX,ControlY); - flixel_util_FlxSpriteUtil.flashGfx.endFill(); - flixel_util_FlxSpriteUtil.updateSpriteGraphic(sprite,drawStyle); - return sprite; -}; -flixel_util_FlxSpriteUtil.drawRect = function(sprite,X,Y,Width,Height,FillColor,lineStyle,drawStyle) { - if(FillColor == null) { - FillColor = -1; - } - flixel_util_FlxSpriteUtil.flashGfx.clear(); - if(lineStyle != null) { - var color = lineStyle.color == null ? -16777216 : lineStyle.color; - if(lineStyle.thickness == null) { - lineStyle.thickness = 1; - } - if(lineStyle.pixelHinting == null) { - lineStyle.pixelHinting = false; - } - if(lineStyle.miterLimit == null) { - lineStyle.miterLimit = 3; - } - flixel_util_FlxSpriteUtil.flashGfx.lineStyle(lineStyle.thickness,color & 16777215,(color >> 24 & 255) / 255,lineStyle.pixelHinting,lineStyle.scaleMode,lineStyle.capsStyle,lineStyle.jointStyle,lineStyle.miterLimit); - } - if(FillColor != 0) { - flixel_util_FlxSpriteUtil.flashGfx.beginFill(FillColor & 16777215,(FillColor >> 24 & 255) / 255); - } - flixel_util_FlxSpriteUtil.flashGfx.drawRect(X,Y,Width,Height); - flixel_util_FlxSpriteUtil.flashGfx.endFill(); - flixel_util_FlxSpriteUtil.updateSpriteGraphic(sprite,drawStyle); - return sprite; -}; -flixel_util_FlxSpriteUtil.drawRoundRect = function(sprite,X,Y,Width,Height,EllipseWidth,EllipseHeight,FillColor,lineStyle,drawStyle) { - if(FillColor == null) { - FillColor = -1; - } - flixel_util_FlxSpriteUtil.flashGfx.clear(); - if(lineStyle != null) { - var color = lineStyle.color == null ? -16777216 : lineStyle.color; - if(lineStyle.thickness == null) { - lineStyle.thickness = 1; - } - if(lineStyle.pixelHinting == null) { - lineStyle.pixelHinting = false; - } - if(lineStyle.miterLimit == null) { - lineStyle.miterLimit = 3; - } - flixel_util_FlxSpriteUtil.flashGfx.lineStyle(lineStyle.thickness,color & 16777215,(color >> 24 & 255) / 255,lineStyle.pixelHinting,lineStyle.scaleMode,lineStyle.capsStyle,lineStyle.jointStyle,lineStyle.miterLimit); - } - if(FillColor != 0) { - flixel_util_FlxSpriteUtil.flashGfx.beginFill(FillColor & 16777215,(FillColor >> 24 & 255) / 255); - } - flixel_util_FlxSpriteUtil.flashGfx.drawRoundRect(X,Y,Width,Height,EllipseWidth,EllipseHeight); - flixel_util_FlxSpriteUtil.flashGfx.endFill(); - flixel_util_FlxSpriteUtil.updateSpriteGraphic(sprite,drawStyle); - return sprite; -}; -flixel_util_FlxSpriteUtil.drawCircle = function(sprite,X,Y,Radius,FillColor,lineStyle,drawStyle) { - if(FillColor == null) { - FillColor = -1; - } - if(Radius == null) { - Radius = -1; - } - if(Y == null) { - Y = -1; - } - if(X == null) { - X = -1; - } - if(X == -1 || Y == -1) { - var midPoint = sprite.getGraphicMidpoint(); - if(X == -1) { - X = midPoint.x - sprite.x; - } - if(Y == -1) { - Y = midPoint.y - sprite.y; - } - midPoint.put(); - } - if(Radius < 1) { - var minVal = Math.min(sprite.frameWidth,sprite.frameHeight); - Radius = minVal / 2; - } - flixel_util_FlxSpriteUtil.flashGfx.clear(); - if(lineStyle != null) { - var color = lineStyle.color == null ? -16777216 : lineStyle.color; - if(lineStyle.thickness == null) { - lineStyle.thickness = 1; - } - if(lineStyle.pixelHinting == null) { - lineStyle.pixelHinting = false; - } - if(lineStyle.miterLimit == null) { - lineStyle.miterLimit = 3; - } - flixel_util_FlxSpriteUtil.flashGfx.lineStyle(lineStyle.thickness,color & 16777215,(color >> 24 & 255) / 255,lineStyle.pixelHinting,lineStyle.scaleMode,lineStyle.capsStyle,lineStyle.jointStyle,lineStyle.miterLimit); - } - if(FillColor != 0) { - flixel_util_FlxSpriteUtil.flashGfx.beginFill(FillColor & 16777215,(FillColor >> 24 & 255) / 255); - } - flixel_util_FlxSpriteUtil.flashGfx.drawCircle(X,Y,Radius); - flixel_util_FlxSpriteUtil.flashGfx.endFill(); - flixel_util_FlxSpriteUtil.updateSpriteGraphic(sprite,drawStyle); - return sprite; -}; -flixel_util_FlxSpriteUtil.drawEllipse = function(sprite,X,Y,Width,Height,FillColor,lineStyle,drawStyle) { - if(FillColor == null) { - FillColor = -1; - } - flixel_util_FlxSpriteUtil.flashGfx.clear(); - if(lineStyle != null) { - var color = lineStyle.color == null ? -16777216 : lineStyle.color; - if(lineStyle.thickness == null) { - lineStyle.thickness = 1; - } - if(lineStyle.pixelHinting == null) { - lineStyle.pixelHinting = false; - } - if(lineStyle.miterLimit == null) { - lineStyle.miterLimit = 3; - } - flixel_util_FlxSpriteUtil.flashGfx.lineStyle(lineStyle.thickness,color & 16777215,(color >> 24 & 255) / 255,lineStyle.pixelHinting,lineStyle.scaleMode,lineStyle.capsStyle,lineStyle.jointStyle,lineStyle.miterLimit); - } - if(FillColor != 0) { - flixel_util_FlxSpriteUtil.flashGfx.beginFill(FillColor & 16777215,(FillColor >> 24 & 255) / 255); - } - flixel_util_FlxSpriteUtil.flashGfx.drawEllipse(X,Y,Width,Height); - flixel_util_FlxSpriteUtil.flashGfx.endFill(); - flixel_util_FlxSpriteUtil.updateSpriteGraphic(sprite,drawStyle); - return sprite; -}; -flixel_util_FlxSpriteUtil.drawTriangle = function(sprite,X,Y,Height,FillColor,lineStyle,drawStyle) { - if(FillColor == null) { - FillColor = -1; - } - flixel_util_FlxSpriteUtil.flashGfx.clear(); - if(lineStyle != null) { - var color = lineStyle.color == null ? -16777216 : lineStyle.color; - if(lineStyle.thickness == null) { - lineStyle.thickness = 1; - } - if(lineStyle.pixelHinting == null) { - lineStyle.pixelHinting = false; - } - if(lineStyle.miterLimit == null) { - lineStyle.miterLimit = 3; - } - flixel_util_FlxSpriteUtil.flashGfx.lineStyle(lineStyle.thickness,color & 16777215,(color >> 24 & 255) / 255,lineStyle.pixelHinting,lineStyle.scaleMode,lineStyle.capsStyle,lineStyle.jointStyle,lineStyle.miterLimit); - } - if(FillColor != 0) { - flixel_util_FlxSpriteUtil.flashGfx.beginFill(FillColor & 16777215,(FillColor >> 24 & 255) / 255); - } - flixel_util_FlxSpriteUtil.flashGfx.moveTo(X + Height / 2,Y); - flixel_util_FlxSpriteUtil.flashGfx.lineTo(X + Height,Height + Y); - flixel_util_FlxSpriteUtil.flashGfx.lineTo(X,Height + Y); - flixel_util_FlxSpriteUtil.flashGfx.lineTo(X + Height / 2,Y); - flixel_util_FlxSpriteUtil.flashGfx.endFill(); - flixel_util_FlxSpriteUtil.updateSpriteGraphic(sprite,drawStyle); - return sprite; -}; -flixel_util_FlxSpriteUtil.drawPolygon = function(sprite,Vertices,FillColor,lineStyle,drawStyle) { - if(FillColor == null) { - FillColor = -1; - } - flixel_util_FlxSpriteUtil.flashGfx.clear(); - if(lineStyle != null) { - var color = lineStyle.color == null ? -16777216 : lineStyle.color; - if(lineStyle.thickness == null) { - lineStyle.thickness = 1; - } - if(lineStyle.pixelHinting == null) { - lineStyle.pixelHinting = false; - } - if(lineStyle.miterLimit == null) { - lineStyle.miterLimit = 3; - } - flixel_util_FlxSpriteUtil.flashGfx.lineStyle(lineStyle.thickness,color & 16777215,(color >> 24 & 255) / 255,lineStyle.pixelHinting,lineStyle.scaleMode,lineStyle.capsStyle,lineStyle.jointStyle,lineStyle.miterLimit); - } - if(FillColor != 0) { - flixel_util_FlxSpriteUtil.flashGfx.beginFill(FillColor & 16777215,(FillColor >> 24 & 255) / 255); - } - var p = Vertices.shift(); - flixel_util_FlxSpriteUtil.flashGfx.moveTo(p.x,p.y); - var _g = 0; - while(_g < Vertices.length) { - var p1 = Vertices[_g]; - ++_g; - flixel_util_FlxSpriteUtil.flashGfx.lineTo(p1.x,p1.y); - } - flixel_util_FlxSpriteUtil.flashGfx.endFill(); - flixel_util_FlxSpriteUtil.updateSpriteGraphic(sprite,drawStyle); - Vertices.unshift(p); - return sprite; -}; -flixel_util_FlxSpriteUtil.beginDraw = function(FillColor,lineStyle) { - flixel_util_FlxSpriteUtil.flashGfx.clear(); - if(lineStyle != null) { - var color = lineStyle.color == null ? -16777216 : lineStyle.color; - if(lineStyle.thickness == null) { - lineStyle.thickness = 1; - } - if(lineStyle.pixelHinting == null) { - lineStyle.pixelHinting = false; - } - if(lineStyle.miterLimit == null) { - lineStyle.miterLimit = 3; - } - flixel_util_FlxSpriteUtil.flashGfx.lineStyle(lineStyle.thickness,color & 16777215,(color >> 24 & 255) / 255,lineStyle.pixelHinting,lineStyle.scaleMode,lineStyle.capsStyle,lineStyle.jointStyle,lineStyle.miterLimit); - } - if(FillColor != 0) { - flixel_util_FlxSpriteUtil.flashGfx.beginFill(FillColor & 16777215,(FillColor >> 24 & 255) / 255); - } -}; -flixel_util_FlxSpriteUtil.endDraw = function(sprite,drawStyle) { - flixel_util_FlxSpriteUtil.flashGfx.endFill(); - flixel_util_FlxSpriteUtil.updateSpriteGraphic(sprite,drawStyle); - return sprite; -}; -flixel_util_FlxSpriteUtil.updateSpriteGraphic = function(sprite,drawStyle) { - if(drawStyle == null) { - drawStyle = { smoothing : false}; - } else if(drawStyle.smoothing == null) { - drawStyle.smoothing = false; - } - sprite.get_pixels().draw(flixel_util_FlxSpriteUtil.flashGfxSprite,drawStyle.matrix,drawStyle.colorTransform,drawStyle.blendMode,drawStyle.clipRect,drawStyle.smoothing); - sprite.dirty = true; - return sprite; -}; -flixel_util_FlxSpriteUtil.setLineStyle = function(lineStyle) { - if(lineStyle != null) { - var color = lineStyle.color == null ? -16777216 : lineStyle.color; - if(lineStyle.thickness == null) { - lineStyle.thickness = 1; - } - if(lineStyle.pixelHinting == null) { - lineStyle.pixelHinting = false; - } - if(lineStyle.miterLimit == null) { - lineStyle.miterLimit = 3; - } - flixel_util_FlxSpriteUtil.flashGfx.lineStyle(lineStyle.thickness,color & 16777215,(color >> 24 & 255) / 255,lineStyle.pixelHinting,lineStyle.scaleMode,lineStyle.capsStyle,lineStyle.jointStyle,lineStyle.miterLimit); - } -}; -flixel_util_FlxSpriteUtil.getDefaultLineStyle = function(lineStyle) { - if(lineStyle == null) { - lineStyle = { thickness : 1, color : -1}; - } - if(lineStyle.thickness == null) { - lineStyle.thickness = 1; - } - if(lineStyle.color == null) { - lineStyle.color = -1; - } - return lineStyle; -}; -flixel_util_FlxSpriteUtil.fill = function(sprite,FillColor) { - sprite.get_pixels().fillRect(sprite.get_pixels().rect,FillColor); - if(sprite.get_pixels() != sprite.framePixels) { - sprite.dirty = true; - } - return sprite; -}; -flixel_util_FlxSpriteUtil.flicker = function(Object1,Duration,Interval,EndVisibility,ForceRestart,CompletionCallback,ProgressCallback) { - if(ForceRestart == null) { - ForceRestart = true; - } - if(EndVisibility == null) { - EndVisibility = true; - } - if(Interval == null) { - Interval = 0.04; - } - if(Duration == null) { - Duration = 1; - } - return flixel_effects_FlxFlicker.flicker(Object1,Duration,Interval,EndVisibility,ForceRestart,CompletionCallback,ProgressCallback); -}; -flixel_util_FlxSpriteUtil.isFlickering = function(Object1) { - return flixel_effects_FlxFlicker.isFlickering(Object1); -}; -flixel_util_FlxSpriteUtil.stopFlickering = function(Object1) { - flixel_effects_FlxFlicker.stopFlickering(Object1); - return Object1; -}; -flixel_util_FlxSpriteUtil.fadeIn = function(sprite,Duration,ResetAlpha,OnComplete) { - if(Duration == null) { - Duration = 1; - } - if(ResetAlpha) { - sprite.set_alpha(0); - } - var sprite1 = sprite; - var tmp = function(f) { - flixel_util_FlxSpriteUtil.alphaTween(sprite1,f); - }; - flixel_tweens_FlxTween.num(sprite.alpha,1,Duration,{ onComplete : OnComplete},tmp); - return sprite; -}; -flixel_util_FlxSpriteUtil.fadeOut = function(sprite,Duration,OnComplete) { - if(Duration == null) { - Duration = 1; - } - var sprite1 = sprite; - var tmp = function(f) { - flixel_util_FlxSpriteUtil.alphaTween(sprite1,f); - }; - flixel_tweens_FlxTween.num(sprite.alpha,0,Duration,{ onComplete : OnComplete},tmp); - return sprite; -}; -flixel_util_FlxSpriteUtil.alphaTween = function(sprite,f) { - sprite.set_alpha(f); -}; -var flixel_util_FlxStringUtil = function() { }; -$hxClasses["flixel.util.FlxStringUtil"] = flixel_util_FlxStringUtil; -flixel_util_FlxStringUtil.__name__ = "flixel.util.FlxStringUtil"; -flixel_util_FlxStringUtil.formatTicks = function(StartTicks,EndTicks) { - return Math.abs(EndTicks - StartTicks) / 1000 + "s"; -}; -flixel_util_FlxStringUtil.formatTime = function(Seconds,ShowMS) { - if(ShowMS == null) { - ShowMS = false; - } - var timeString = (Seconds / 60 | 0) + ":"; - var timeStringHelper = (Seconds | 0) % 60; - if(timeStringHelper < 10) { - timeString += "0"; - } - timeString += timeStringHelper; - if(ShowMS) { - timeString += "."; - timeStringHelper = (Seconds - (Seconds | 0)) * 100 | 0; - if(timeStringHelper < 10) { - timeString += "0"; - } - timeString += timeStringHelper; - } - return timeString; -}; -flixel_util_FlxStringUtil.formatArray = function(AnyArray) { - var string = ""; - if(AnyArray != null && AnyArray.length > 0) { - string = Std.string(AnyArray[0]); - var i = 1; - var l = AnyArray.length; - while(i < l) string += ", " + Std.string(AnyArray[i++]); - } - return string; -}; -flixel_util_FlxStringUtil.formatStringMap = function(AnyMap) { - var string = ""; - var key = AnyMap.keys(); - while(key.hasNext()) { - var key1 = key.next(); - string += key1 == null ? "null" : "" + key1; - string += ", "; - } - return string.substring(0,string.length - 2); -}; -flixel_util_FlxStringUtil.formatMoney = function(Amount,ShowDecimal,EnglishStyle) { - if(EnglishStyle == null) { - EnglishStyle = true; - } - if(ShowDecimal == null) { - ShowDecimal = true; - } - var isNegative = Amount < 0; - Amount = Math.abs(Amount); - var string = ""; - var comma = ""; - var amount = Math.floor(Amount); - while(amount > 0) { - if(string.length > 0 && comma.length <= 0) { - comma = EnglishStyle ? "," : "."; - } - var zeroes = ""; - var helper = amount - Math.floor(amount / 1000) * 1000; - amount = Math.floor(amount / 1000); - if(amount > 0) { - if(helper < 100) { - zeroes += "0"; - } - if(helper < 10) { - zeroes += "0"; - } - } - string = zeroes + helper + comma + string; - } - if(string == "") { - string = "0"; - } - if(ShowDecimal) { - amount = Math.floor(Amount * 100) - Math.floor(Amount) * 100; - string += EnglishStyle ? "." : ","; - if(amount < 10) { - string += "0"; - } - string += amount; - } - if(isNegative) { - string = "-" + string; - } - return string; -}; -flixel_util_FlxStringUtil.formatBytes = function(Bytes,Precision) { - if(Precision == null) { - Precision = 2; - } - var units = ["Bytes","kB","MB","GB","TB","PB"]; - var curUnit = 0; - while(Bytes >= 1024 && curUnit < units.length - 1) { - Bytes /= 1024; - ++curUnit; - } - return flixel_math_FlxMath.roundDecimal(Bytes,Precision) + units[curUnit]; -}; -flixel_util_FlxStringUtil.filterDigits = function(Input) { - var output_b = ""; - var _g = 0; - var _g1 = Input.length; - while(_g < _g1) { - var i = _g++; - var c = HxOverrides.cca(Input,i); - if(c >= 48 && c <= 57) { - output_b += String.fromCodePoint(c); - } - } - return output_b; -}; -flixel_util_FlxStringUtil.htmlFormat = function(Text1,Size,Color,Bold,Italic,Underlined) { - if(Underlined == null) { - Underlined = false; - } - if(Italic == null) { - Italic = false; - } - if(Bold == null) { - Bold = false; - } - if(Color == null) { - Color = "FFFFFF"; - } - if(Size == null) { - Size = 12; - } - var prefix = ""; - var suffix = ""; - if(Bold) { - prefix = "" + prefix; - suffix += ""; - } - if(Italic) { - prefix = "" + prefix; - suffix += ""; - } - if(Underlined) { - prefix = "" + prefix; - suffix += ""; - } - return prefix + Text1 + suffix; -}; -flixel_util_FlxStringUtil.getClassName = function(objectOrClass,simple) { - if(simple == null) { - simple = false; - } - var cl; - if(js_Boot.__instanceof(objectOrClass,Class)) { - cl = objectOrClass; - } else { - cl = js_Boot.getClass(objectOrClass); - } - return flixel_util_FlxStringUtil.formatPackage(cl.__name__,simple); -}; -flixel_util_FlxStringUtil.getEnumName = function(enumValueOrEnum,simple) { - if(simple == null) { - simple = false; - } - var e; - if(js_Boot.__instanceof(enumValueOrEnum,Enum)) { - e = enumValueOrEnum; - } else { - e = Type.getEnum(enumValueOrEnum); - } - return flixel_util_FlxStringUtil.formatPackage(e.__ename__,simple); -}; -flixel_util_FlxStringUtil.formatPackage = function(s,simple) { - if(s == null) { - return null; - } - s = StringTools.replace(s,"::","."); - if(simple) { - s = HxOverrides.substr(s,s.lastIndexOf(".") + 1,null); - } - return s; -}; -flixel_util_FlxStringUtil.getHost = function(url) { - var hostFromURL = new EReg("^(?:[a-z][a-z0-9+\\-.]*://)?(?:[a-z0-9\\-._~%!$&'()*+,;=]+@)?([a-z0-9\\-._~%]{3,}|\\[[a-f0-9:.]+\\])?(?::[0-9]+)?","i"); - if(hostFromURL.match(url)) { - var host = hostFromURL.matched(1); - if(host != null) { - return decodeURIComponent(host.split("+").join(" ")).toLowerCase(); - } else { - return ""; - } - } - return ""; -}; -flixel_util_FlxStringUtil.getDomain = function(url) { - var host = flixel_util_FlxStringUtil.getHost(url); - var isLocalhostOrIpAddress = new EReg("^(localhost|[0-9.]+|\\[[a-f0-9:.]+\\])$","i"); - var domainFromHost = new EReg("^(?:[a-z0-9\\-]+\\.)*([a-z0-9\\-]+\\.[a-z0-9\\-]+)$","i"); - if(!isLocalhostOrIpAddress.match(host) && domainFromHost.match(host)) { - var domain = domainFromHost.matched(1); - if(domain != null) { - return domain.toLowerCase(); - } else { - return ""; - } - } - return ""; -}; -flixel_util_FlxStringUtil.sameClassName = function(Obj1,Obj2,Simple) { - if(Simple == null) { - Simple = true; - } - return flixel_util_FlxStringUtil.getClassName(Obj1,Simple) == flixel_util_FlxStringUtil.getClassName(Obj2,Simple); -}; -flixel_util_FlxStringUtil.toIntArray = function(Data) { - if(Data != null && Data != "") { - var strArray = Data.split(","); - var iArray = []; - var _g = 0; - while(_g < strArray.length) { - var str = strArray[_g]; - ++_g; - iArray.push(Std.parseInt(str)); - } - return iArray; - } - return null; -}; -flixel_util_FlxStringUtil.toFloatArray = function(Data) { - if(Data != null && Data != "") { - var strArray = Data.split(","); - var fArray = []; - var _g = 0; - while(_g < strArray.length) { - var str = strArray[_g]; - ++_g; - fArray.push(parseFloat(str)); - } - return fArray; - } - return null; -}; -flixel_util_FlxStringUtil.arrayToCSV = function(Data,Width,Invert) { - if(Invert == null) { - Invert = false; - } - var row = 0; - var column; - var csv = ""; - var height = Data.length / Width | 0; - var index; - var offset = 0; - while(row < height) { - column = 0; - while(column < Width) { - index = Data[offset]; - if(Invert) { - if(index == 0) { - index = 1; - } else if(index == 1) { - index = 0; - } - } - if(column == 0) { - if(row == 0) { - csv += index; - } else { - csv += "\n" + index; - } - } else { - csv += ", " + index; - } - ++column; - ++offset; - } - ++row; - } - return csv; -}; -flixel_util_FlxStringUtil.bitmapToCSV = function(Bitmap,Invert,Scale,ColorMap) { - if(Scale == null) { - Scale = 1; - } - if(Invert == null) { - Invert = false; - } - if(Scale < 1) { - Scale = 1; - } - if(Scale > 1) { - var bd = Bitmap; - Bitmap = new openfl_display_BitmapData(Bitmap.width * Scale,Bitmap.height * Scale); - var bdW = bd.width; - var bdH = bd.height; - var pCol = 0; - var _g = 0; - var _g1 = bdW; - while(_g < _g1) { - var i = _g++; - var _g2 = 0; - var _g11 = bdH; - while(_g2 < _g11) { - var j = _g2++; - pCol = bd.getPixel(i,j); - var _g3 = 0; - var _g12 = Scale; - while(_g3 < _g12) { - var k = _g3++; - var _g4 = 0; - var _g13 = Scale; - while(_g4 < _g13) { - var m = _g4++; - Bitmap.setPixel(i * Scale + k,j * Scale + m,pCol); - } - } - } - } - } - if(ColorMap != null) { - var _g5 = 0; - var _g14 = ColorMap.length; - while(_g5 < _g14) { - var i1 = _g5++; - ColorMap[i1] = ColorMap[i1] & 16777215; - } - } - var row = 0; - var column; - var pixel; - var csv = ""; - var bitmapWidth = Bitmap.width; - var bitmapHeight = Bitmap.height; - while(row < bitmapHeight) { - column = 0; - while(column < bitmapWidth) { - pixel = Bitmap.getPixel(column,row); - if(ColorMap != null) { - pixel = ColorMap.indexOf(pixel); - } else if(Invert && pixel > 0 || !Invert && pixel == 0) { - pixel = 1; - } else { - pixel = 0; - } - if(column == 0) { - if(row == 0) { - csv += pixel; - } else { - csv += "\n" + pixel; - } - } else { - csv += ", " + pixel; - } - ++column; - } - ++row; - } - return csv; -}; -flixel_util_FlxStringUtil.imageToCSV = function(ImageFile,Invert,Scale,ColorMap) { - if(Scale == null) { - Scale = 1; - } - if(Invert == null) { - Invert = false; - } - var tempBitmapData; - if(typeof(ImageFile) == "string") { - var id = ImageFile; - tempBitmapData = openfl_utils_Assets.exists(id) ? openfl_utils_Assets.getBitmapData(id,false) : null; - } else { - tempBitmapData = Type.createInstance(ImageFile,[]).bitmapData; - } - return flixel_util_FlxStringUtil.bitmapToCSV(tempBitmapData,Invert,Scale,ColorMap); -}; -flixel_util_FlxStringUtil.getDebugString = function(LabelValuePairs) { - var output = "("; - var _g = 0; - while(_g < LabelValuePairs.length) { - var pair = LabelValuePairs[_g]; - ++_g; - output += pair.label + ": "; - var value = pair.value; - if(typeof(value) == "number") { - value = flixel_math_FlxMath.roundDecimal(value,flixel_FlxG.debugger.precision); - } - output += Std.string(value) + " | "; - flixel_util_LabelValuePair._pool.put(pair); - } - output = StringTools.trim(HxOverrides.substr(output,0,output.length - 2)); - return output + ")"; -}; -flixel_util_FlxStringUtil.contains = function(s,str) { - return s.indexOf(str) != -1; -}; -flixel_util_FlxStringUtil.remove = function(s,sub) { - return StringTools.replace(s,sub,""); -}; -flixel_util_FlxStringUtil.insert = function(s,pos,insertion) { - return s.substring(0,pos) + insertion + HxOverrides.substr(s,pos,null); -}; -flixel_util_FlxStringUtil.sortAlphabetically = function(list) { - list.sort(function(a,b) { - a = a.toLowerCase(); - b = b.toLowerCase(); - if(a < b) { - return -1; - } - if(a > b) { - return 1; - } - return 0; - }); - return list; -}; -flixel_util_FlxStringUtil.isNullOrEmpty = function(s) { - if(s != null) { - return s.length == 0; - } else { - return true; - } -}; -var flixel_util_LabelValuePair = function() { -}; -$hxClasses["flixel.util.LabelValuePair"] = flixel_util_LabelValuePair; -flixel_util_LabelValuePair.__name__ = "flixel.util.LabelValuePair"; -flixel_util_LabelValuePair.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_util_LabelValuePair.weak = function(label,value) { - var _this = flixel_util_LabelValuePair._pool.get(); - _this.label = label; - _this.value = value; - return _this; -}; -flixel_util_LabelValuePair.prototype = { - label: null - ,value: null - ,create: function(label,value) { - this.label = label; - this.value = value; - return this; - } - ,put: function() { - flixel_util_LabelValuePair._pool.put(this); - } - ,destroy: function() { - this.label = null; - this.value = null; - } - ,__class__: flixel_util_LabelValuePair -}; -var flixel_util_FlxTimer = function(manager) { - this._inManager = false; - this._loopsCounter = 0; - this._timeCounter = 0; - this.finished = false; - this.active = false; - this.loops = 0; - this.time = 0; - this.manager = manager != null ? manager : flixel_util_FlxTimer.globalManager; -}; -$hxClasses["flixel.util.FlxTimer"] = flixel_util_FlxTimer; -flixel_util_FlxTimer.__name__ = "flixel.util.FlxTimer"; -flixel_util_FlxTimer.__interfaces__ = [flixel_util_IFlxDestroyable]; -flixel_util_FlxTimer.globalManager = null; -flixel_util_FlxTimer.prototype = { - manager: null - ,time: null - ,loops: null - ,active: null - ,finished: null - ,onComplete: null - ,_timeCounter: null - ,_loopsCounter: null - ,_inManager: null - ,destroy: function() { - this.onComplete = null; - } - ,start: function(Time,OnComplete,Loops) { - if(Loops == null) { - Loops = 1; - } - if(Time == null) { - Time = 1; - } - if(this.manager != null && !this._inManager) { - this.manager.add(this); - this._inManager = true; - } - this.active = true; - this.finished = false; - this.time = Math.abs(Time); - if(Loops < 0) { - Loops *= -1; - } - this.loops = Loops; - this.onComplete = OnComplete; - this._timeCounter = 0; - this._loopsCounter = 0; - return this; - } - ,reset: function(NewTime) { - if(NewTime == null) { - NewTime = -1; - } - if(NewTime < 0) { - NewTime = this.time; - } - this.start(NewTime,this.onComplete,this.loops); - return this; - } - ,cancel: function() { - this.finished = true; - this.active = false; - if(this.manager != null && this._inManager) { - this.manager.remove(this); - this._inManager = false; - } - } - ,update: function(elapsed) { - this._timeCounter += elapsed; - while(this._timeCounter >= this.time && this.active && !this.finished) { - this._timeCounter -= this.time; - this._loopsCounter++; - if(this.loops > 0 && this._loopsCounter >= this.loops) { - this.finished = true; - } - } - } - ,onLoopFinished: function() { - if(this.finished) { - this.cancel(); - } - if(this.onComplete != null) { - this.onComplete(this); - } - } - ,get_timeLeft: function() { - return this.time - this._timeCounter; - } - ,get_elapsedTime: function() { - return this._timeCounter; - } - ,get_loopsLeft: function() { - return this.loops - this._loopsCounter; - } - ,get_elapsedLoops: function() { - return this._loopsCounter; - } - ,get_progress: function() { - if(this.time > 0) { - return this._timeCounter / this.time; - } else { - return 0; - } - } - ,__class__: flixel_util_FlxTimer - ,__properties__: {get_progress:"get_progress",get_elapsedLoops:"get_elapsedLoops",get_loopsLeft:"get_loopsLeft",get_elapsedTime:"get_elapsedTime",get_timeLeft:"get_timeLeft"} -}; -var flixel_util_FlxTimerManager = function() { - this._timers = []; - flixel_FlxBasic.call(this); - this.set_visible(false); - flixel_FlxG.signals.preStateSwitch.add($bind(this,this.clear)); -}; -$hxClasses["flixel.util.FlxTimerManager"] = flixel_util_FlxTimerManager; -flixel_util_FlxTimerManager.__name__ = "flixel.util.FlxTimerManager"; -flixel_util_FlxTimerManager.__super__ = flixel_FlxBasic; -flixel_util_FlxTimerManager.prototype = $extend(flixel_FlxBasic.prototype,{ - _timers: null - ,destroy: function() { - flixel_util_FlxArrayUtil.clearArray(this._timers); - this._timers = null; - flixel_FlxG.signals.preStateSwitch.remove($bind(this,this.clear)); - flixel_FlxBasic.prototype.destroy.call(this); - } - ,update: function(elapsed) { - var loopedTimers = null; - var _g = 0; - var _g1 = this._timers; - while(_g < _g1.length) { - var timer = _g1[_g]; - ++_g; - if(timer.active && !timer.finished && timer.time >= 0) { - var timerLoops = timer._loopsCounter; - timer.update(elapsed); - if(timerLoops != timer._loopsCounter) { - if(loopedTimers == null) { - loopedTimers = []; - } - loopedTimers.push(timer); - } - } - } - if(loopedTimers != null) { - while(loopedTimers.length > 0) loopedTimers.shift().onLoopFinished(); - } - } - ,add: function(Timer) { - this._timers.push(Timer); - } - ,remove: function(Timer) { - var array = this._timers; - var index = array.indexOf(Timer); - if(index != -1) { - array[index] = array[array.length - 1]; - array.pop(); - } - } - ,completeAll: function() { - var timersToFinish = []; - var _g = 0; - var _g1 = this._timers; - while(_g < _g1.length) { - var timer = _g1[_g]; - ++_g; - if(timer.loops > 0 && timer.active) { - timersToFinish.push(timer); - } - } - var _g2 = 0; - while(_g2 < timersToFinish.length) { - var timer1 = timersToFinish[_g2]; - ++_g2; - while(!timer1.finished) { - timer1.update(timer1.time - timer1._timeCounter); - timer1.onLoopFinished(); - } - } - } - ,clear: function() { - flixel_util_FlxArrayUtil.clearArray(this._timers); - } - ,forEach: function(Function1) { - var _g = 0; - var _g1 = this._timers; - while(_g < _g1.length) { - var timer = _g1[_g]; - ++_g; - Function1(timer); - } - } - ,__class__: flixel_util_FlxTimerManager -}); -var flixel_util_FlxUnicodeUtil = function() { }; -$hxClasses["flixel.util.FlxUnicodeUtil"] = flixel_util_FlxUnicodeUtil; -flixel_util_FlxUnicodeUtil.__name__ = "flixel.util.FlxUnicodeUtil"; -flixel_util_FlxUnicodeUtil.uLength = function(s) { - return _$UnicodeString_UnicodeString_$Impl_$.get_length(s); -}; -flixel_util_FlxUnicodeUtil.uEquals = function(a,b) { - return a == b; -}; -flixel_util_FlxUnicodeUtil.uSub = function(s,pos,len) { - return _$UnicodeString_UnicodeString_$Impl_$.substr(s,pos,len); -}; -flixel_util_FlxUnicodeUtil.uCharCodeAt = function(s,index) { - return _$UnicodeString_UnicodeString_$Impl_$.charCodeAt(s,index); -}; -var flixel_util__$FlxUnicodeUtil_UnicodeBuffer_$Impl_$ = {}; -$hxClasses["flixel.util._FlxUnicodeUtil.UnicodeBuffer_Impl_"] = flixel_util__$FlxUnicodeUtil_UnicodeBuffer_$Impl_$; -flixel_util__$FlxUnicodeUtil_UnicodeBuffer_$Impl_$.__name__ = "flixel.util._FlxUnicodeUtil.UnicodeBuffer_Impl_"; -flixel_util__$FlxUnicodeUtil_UnicodeBuffer_$Impl_$._new = function(s) { - if(s == null) { - s = ""; - } - var this1 = s; - return this1; -}; -flixel_util__$FlxUnicodeUtil_UnicodeBuffer_$Impl_$.addChar = function(this1,c) { - var s = this1 + String.fromCodePoint(c); - if(s == null) { - s = ""; - } - var this2 = s; - return this2; -}; -flixel_util__$FlxUnicodeUtil_UnicodeBuffer_$Impl_$.toString = function(this1) { - return this1; -}; -var flixel_util_FlxVerticalAlign = $hxEnums["flixel.util.FlxVerticalAlign"] = { __ename__ : "flixel.util.FlxVerticalAlign", __constructs__ : ["TOP","CENTER","BOTTOM"] - ,TOP: {_hx_index:0,__enum__:"flixel.util.FlxVerticalAlign",toString:$estr} - ,CENTER: {_hx_index:1,__enum__:"flixel.util.FlxVerticalAlign",toString:$estr} - ,BOTTOM: {_hx_index:2,__enum__:"flixel.util.FlxVerticalAlign",toString:$estr} -}; -var flixel_util_helpers_FlxRange = function(start,end) { - this.active = true; - this.start = start; - this.end = end == null ? start : end; -}; -$hxClasses["flixel.util.helpers.FlxRange"] = flixel_util_helpers_FlxRange; -flixel_util_helpers_FlxRange.__name__ = "flixel.util.helpers.FlxRange"; -flixel_util_helpers_FlxRange.prototype = { - start: null - ,end: null - ,active: null - ,set: function(start,end) { - this.start = start; - this.end = end == null ? start : end; - return this; - } - ,equals: function(OtherFlxRange) { - if(this.start == OtherFlxRange.start) { - return this.end == OtherFlxRange.end; - } else { - return false; - } - } - ,toString: function() { - var value = this.start; - var _this = flixel_util_LabelValuePair._pool.get(); - _this.label = "start"; - _this.value = value; - var value1 = this.end; - var _this1 = flixel_util_LabelValuePair._pool.get(); - _this1.label = "end"; - _this1.value = value1; - return flixel_util_FlxStringUtil.getDebugString([_this,_this1]); - } - ,__class__: flixel_util_helpers_FlxRange -}; -var haxe_StackItem = $hxEnums["haxe.StackItem"] = { __ename__ : "haxe.StackItem", __constructs__ : ["CFunction","Module","FilePos","Method","LocalFunction"] - ,CFunction: {_hx_index:0,__enum__:"haxe.StackItem",toString:$estr} - ,Module: ($_=function(m) { return {_hx_index:1,m:m,__enum__:"haxe.StackItem",toString:$estr}; },$_.__params__ = ["m"],$_) - ,FilePos: ($_=function(s,file,line,column) { return {_hx_index:2,s:s,file:file,line:line,column:column,__enum__:"haxe.StackItem",toString:$estr}; },$_.__params__ = ["s","file","line","column"],$_) - ,Method: ($_=function(classname,method) { return {_hx_index:3,classname:classname,method:method,__enum__:"haxe.StackItem",toString:$estr}; },$_.__params__ = ["classname","method"],$_) - ,LocalFunction: ($_=function(v) { return {_hx_index:4,v:v,__enum__:"haxe.StackItem",toString:$estr}; },$_.__params__ = ["v"],$_) -}; -var haxe_CallStack = function() { }; -$hxClasses["haxe.CallStack"] = haxe_CallStack; -haxe_CallStack.__name__ = "haxe.CallStack"; -haxe_CallStack.lastException = null; -haxe_CallStack.getStack = function(e) { - if(e == null) { - return []; - } - var oldValue = Error.prepareStackTrace; - Error.prepareStackTrace = function(error,callsites) { - var stack = []; - var _g = 0; - while(_g < callsites.length) { - var site = callsites[_g]; - ++_g; - if(haxe_CallStack.wrapCallSite != null) { - site = haxe_CallStack.wrapCallSite(site); - } - var method = null; - var fullName = site.getFunctionName(); - if(fullName != null) { - var idx = fullName.lastIndexOf("."); - if(idx >= 0) { - var className = HxOverrides.substr(fullName,0,idx); - var methodName = HxOverrides.substr(fullName,idx + 1,null); - method = haxe_StackItem.Method(className,methodName); - } - } - var fileName = site.getFileName(); - var fileAddr = fileName == null ? -1 : fileName.indexOf("file:"); - if(haxe_CallStack.wrapCallSite != null && fileAddr > 0) { - fileName = HxOverrides.substr(fileName,fileAddr + 6,null); - } - stack.push(haxe_StackItem.FilePos(method,fileName,site.getLineNumber(),site.getColumnNumber())); - } - return stack; - }; - var a = haxe_CallStack.makeStack(e.stack); - Error.prepareStackTrace = oldValue; - return a; -}; -haxe_CallStack.wrapCallSite = null; -haxe_CallStack.callStack = function() { - try { - throw new Error(); - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - var a = haxe_CallStack.getStack(e); - a.shift(); - return a; - } -}; -haxe_CallStack.exceptionStack = function() { - return haxe_CallStack.getStack(haxe_CallStack.lastException); -}; -haxe_CallStack.toString = function(stack) { - var b = new StringBuf(); - var _g = 0; - while(_g < stack.length) { - var s = stack[_g]; - ++_g; - b.b += "\nCalled from "; - haxe_CallStack.itemToString(b,s); - } - return b.b; -}; -haxe_CallStack.itemToString = function(b,s) { - switch(s._hx_index) { - case 0: - b.b += "a C function"; - break; - case 1: - var m = s.m; - b.b += "module "; - b.b += m == null ? "null" : "" + m; - break; - case 2: - var col = s.column; - var line = s.line; - var file = s.file; - var s1 = s.s; - if(s1 != null) { - haxe_CallStack.itemToString(b,s1); - b.b += " ("; - } - b.b += file == null ? "null" : "" + file; - b.b += " line "; - b.b += line == null ? "null" : "" + line; - if(col != null) { - b.b += " column "; - b.b += col == null ? "null" : "" + col; - } - if(s1 != null) { - b.b += ")"; - } - break; - case 3: - var meth = s.method; - var cname = s.classname; - b.b += Std.string(cname == null ? "" : cname); - b.b += "."; - b.b += meth == null ? "null" : "" + meth; - break; - case 4: - var n = s.v; - b.b += "local function #"; - b.b += n == null ? "null" : "" + n; - break; - } -}; -haxe_CallStack.makeStack = function(s) { - if(s == null) { - return []; - } else if(typeof(s) == "string") { - var stack = s.split("\n"); - if(stack[0] == "Error") { - stack.shift(); - } - var m = []; - var rie10 = new EReg("^ at ([A-Za-z0-9_. ]+) \\(([^)]+):([0-9]+):([0-9]+)\\)$",""); - var _g = 0; - while(_g < stack.length) { - var line = stack[_g]; - ++_g; - if(rie10.match(line)) { - var path = rie10.matched(1).split("."); - var meth = path.pop(); - var file = rie10.matched(2); - var line1 = Std.parseInt(rie10.matched(3)); - var column = Std.parseInt(rie10.matched(4)); - m.push(haxe_StackItem.FilePos(meth == "Anonymous function" ? haxe_StackItem.LocalFunction() : meth == "Global code" ? null : haxe_StackItem.Method(path.join("."),meth),file,line1,column)); - } else { - m.push(haxe_StackItem.Module(StringTools.trim(line))); - } - } - return m; - } else { - return s; - } -}; -var haxe__$Int64__$_$_$Int64 = function(high,low) { - this.high = high; - this.low = low; -}; -$hxClasses["haxe._Int64.___Int64"] = haxe__$Int64__$_$_$Int64; -haxe__$Int64__$_$_$Int64.__name__ = "haxe._Int64.___Int64"; -haxe__$Int64__$_$_$Int64.prototype = { - high: null - ,low: null - ,__class__: haxe__$Int64__$_$_$Int64 -}; -var haxe_Resource = function() { }; -$hxClasses["haxe.Resource"] = haxe_Resource; -haxe_Resource.__name__ = "haxe.Resource"; -haxe_Resource.content = null; -haxe_Resource.getString = function(name) { - var _g = 0; - var _g1 = haxe_Resource.content; - while(_g < _g1.length) { - var x = _g1[_g]; - ++_g; - if(x.name == name) { - if(x.str != null) { - return x.str; - } - var b = haxe_crypto_Base64.decode(x.data); - return b.toString(); - } - } - return null; -}; -haxe_Resource.getBytes = function(name) { - var _g = 0; - var _g1 = haxe_Resource.content; - while(_g < _g1.length) { - var x = _g1[_g]; - ++_g; - if(x.name == name) { - if(x.str != null) { - return haxe_io_Bytes.ofString(x.str); - } - return haxe_crypto_Base64.decode(x.data); - } - } - return null; -}; -var haxe_Serializer = function() { - this.buf = new StringBuf(); - this.cache = []; - this.useCache = haxe_Serializer.USE_CACHE; - this.useEnumIndex = haxe_Serializer.USE_ENUM_INDEX; - this.shash = new haxe_ds_StringMap(); - this.scount = 0; -}; -$hxClasses["haxe.Serializer"] = haxe_Serializer; -haxe_Serializer.__name__ = "haxe.Serializer"; -haxe_Serializer.run = function(v) { - var s = new haxe_Serializer(); - s.serialize(v); - return s.toString(); -}; -haxe_Serializer.prototype = { - buf: null - ,cache: null - ,shash: null - ,scount: null - ,useCache: null - ,useEnumIndex: null - ,toString: function() { - return this.buf.b; - } - ,serializeString: function(s) { - var _this = this.shash; - var x = __map_reserved[s] != null ? _this.getReserved(s) : _this.h[s]; - if(x != null) { - this.buf.b += "R"; - this.buf.b += x == null ? "null" : "" + x; - return; - } - var _this1 = this.shash; - var value = this.scount++; - if(__map_reserved[s] != null) { - _this1.setReserved(s,value); - } else { - _this1.h[s] = value; - } - this.buf.b += "y"; - s = encodeURIComponent(s); - this.buf.b += Std.string(s.length); - this.buf.b += ":"; - this.buf.b += s == null ? "null" : "" + s; - } - ,serializeRef: function(v) { - var vt = typeof(v); - var _g = 0; - var _g1 = this.cache.length; - while(_g < _g1) { - var i = _g++; - var ci = this.cache[i]; - if(typeof(ci) == vt && ci == v) { - this.buf.b += "r"; - this.buf.b += i == null ? "null" : "" + i; - return true; - } - } - this.cache.push(v); - return false; - } - ,serializeFields: function(v) { - var _g = 0; - var _g1 = Reflect.fields(v); - while(_g < _g1.length) { - var f = _g1[_g]; - ++_g; - this.serializeString(f); - this.serialize(Reflect.field(v,f)); - } - this.buf.b += "g"; - } - ,serialize: function(v) { - var _g = Type.typeof(v); - switch(_g._hx_index) { - case 0: - this.buf.b += "n"; - break; - case 1: - var v1 = v; - if(v1 == 0) { - this.buf.b += "z"; - return; - } - this.buf.b += "i"; - this.buf.b += v1 == null ? "null" : "" + v1; - break; - case 2: - var v2 = v; - if(isNaN(v2)) { - this.buf.b += "k"; - } else if(!isFinite(v2)) { - this.buf.b += v2 < 0 ? "m" : "p"; - } else { - this.buf.b += "d"; - this.buf.b += v2 == null ? "null" : "" + v2; - } - break; - case 3: - this.buf.b += v ? "t" : "f"; - break; - case 4: - if(js_Boot.__instanceof(v,Class)) { - var className = v.__name__; - this.buf.b += "A"; - this.serializeString(className); - } else if(js_Boot.__instanceof(v,Enum)) { - this.buf.b += "B"; - this.serializeString(v.__ename__); - } else { - if(this.useCache && this.serializeRef(v)) { - return; - } - this.buf.b += "o"; - this.serializeFields(v); - } - break; - case 5: - throw new js__$Boot_HaxeError("Cannot serialize function"); - case 6: - var c = _g.c; - if(c == String) { - this.serializeString(v); - return; - } - if(this.useCache && this.serializeRef(v)) { - return; - } - switch(c) { - case Array: - var ucount = 0; - this.buf.b += "a"; - var l = v["length"]; - var _g1 = 0; - var _g11 = l; - while(_g1 < _g11) { - var i = _g1++; - if(v[i] == null) { - ++ucount; - } else { - if(ucount > 0) { - if(ucount == 1) { - this.buf.b += "n"; - } else { - this.buf.b += "u"; - this.buf.b += ucount == null ? "null" : "" + ucount; - } - ucount = 0; - } - this.serialize(v[i]); - } - } - if(ucount > 0) { - if(ucount == 1) { - this.buf.b += "n"; - } else { - this.buf.b += "u"; - this.buf.b += ucount == null ? "null" : "" + ucount; - } - } - this.buf.b += "h"; - break; - case Date: - var d = v; - this.buf.b += "v"; - this.buf.b += Std.string(d.getTime()); - break; - case haxe_ds_IntMap: - this.buf.b += "q"; - var v3 = v; - var k = v3.keys(); - while(k.hasNext()) { - var k1 = k.next(); - this.buf.b += ":"; - this.buf.b += k1 == null ? "null" : "" + k1; - this.serialize(v3.h[k1]); - } - this.buf.b += "h"; - break; - case haxe_ds_List: - this.buf.b += "l"; - var v4 = v; - var _g_head = v4.h; - while(_g_head != null) { - var val = _g_head.item; - _g_head = _g_head.next; - var i1 = val; - this.serialize(i1); - } - this.buf.b += "h"; - break; - case haxe_ds_ObjectMap: - this.buf.b += "M"; - var v5 = v; - var k2 = v5.keys(); - while(k2.hasNext()) { - var k3 = k2.next(); - var id = Reflect.field(k3,"__id__"); - Reflect.deleteField(k3,"__id__"); - this.serialize(k3); - k3["__id__"] = id; - this.serialize(v5.h[k3.__id__]); - } - this.buf.b += "h"; - break; - case haxe_ds_StringMap: - this.buf.b += "b"; - var v6 = v; - var k4 = v6.keys(); - while(k4.hasNext()) { - var k5 = k4.next(); - this.serializeString(k5); - this.serialize(__map_reserved[k5] != null ? v6.getReserved(k5) : v6.h[k5]); - } - this.buf.b += "h"; - break; - case haxe_io_Bytes: - var v7 = v; - this.buf.b += "s"; - this.buf.b += Std.string(Math.ceil(v7.length * 8 / 6)); - this.buf.b += ":"; - var i2 = 0; - var max = v7.length - 2; - var b64 = haxe_Serializer.BASE64_CODES; - if(b64 == null) { - var this1 = new Array(haxe_Serializer.BASE64.length); - b64 = this1; - var _g2 = 0; - var _g12 = haxe_Serializer.BASE64.length; - while(_g2 < _g12) { - var i3 = _g2++; - b64[i3] = HxOverrides.cca(haxe_Serializer.BASE64,i3); - } - haxe_Serializer.BASE64_CODES = b64; - } - while(i2 < max) { - var b1 = v7.b[i2++]; - var b2 = v7.b[i2++]; - var b3 = v7.b[i2++]; - this.buf.b += String.fromCodePoint(b64[b1 >> 2]); - this.buf.b += String.fromCodePoint(b64[(b1 << 4 | b2 >> 4) & 63]); - this.buf.b += String.fromCodePoint(b64[(b2 << 2 | b3 >> 6) & 63]); - this.buf.b += String.fromCodePoint(b64[b3 & 63]); - } - if(i2 == max) { - var b11 = v7.b[i2++]; - var b21 = v7.b[i2++]; - this.buf.b += String.fromCodePoint(b64[b11 >> 2]); - this.buf.b += String.fromCodePoint(b64[(b11 << 4 | b21 >> 4) & 63]); - this.buf.b += String.fromCodePoint(b64[b21 << 2 & 63]); - } else if(i2 == max + 1) { - var b12 = v7.b[i2++]; - this.buf.b += String.fromCodePoint(b64[b12 >> 2]); - this.buf.b += String.fromCodePoint(b64[b12 << 4 & 63]); - } - break; - default: - if(this.useCache) { - this.cache.pop(); - } - if(v.hxSerialize != null) { - this.buf.b += "C"; - this.serializeString(c.__name__); - if(this.useCache) { - this.cache.push(v); - } - v.hxSerialize(this); - this.buf.b += "g"; - } else { - this.buf.b += "c"; - this.serializeString(c.__name__); - if(this.useCache) { - this.cache.push(v); - } - this.serializeFields(v); - } - } - break; - case 7: - var e = _g.e; - if(this.useCache) { - if(this.serializeRef(v)) { - return; - } - this.cache.pop(); - } - this.buf.b += Std.string(this.useEnumIndex ? "j" : "w"); - this.serializeString(e.__ename__); - if(this.useEnumIndex) { - this.buf.b += ":"; - this.buf.b += Std.string(v._hx_index); - } else { - var e1 = v; - this.serializeString($hxEnums[e1.__enum__].__constructs__[e1._hx_index]); - } - this.buf.b += ":"; - var params = Type.enumParameters(v); - this.buf.b += Std.string(params.length); - var _g3 = 0; - while(_g3 < params.length) { - var p = params[_g3]; - ++_g3; - this.serialize(p); - } - if(this.useCache) { - this.cache.push(v); - } - break; - default: - throw new js__$Boot_HaxeError("Cannot serialize " + Std.string(v)); - } - } - ,__class__: haxe_Serializer -}; -var haxe_Timer = function(time_ms) { - var me = this; - this.id = setInterval(function() { - me.run(); - },time_ms); -}; -$hxClasses["haxe.Timer"] = haxe_Timer; -haxe_Timer.__name__ = "haxe.Timer"; -haxe_Timer.delay = function(f,time_ms) { - var t = new haxe_Timer(time_ms); - t.run = function() { - t.stop(); - f(); - }; - return t; -}; -haxe_Timer.measure = function(f,pos) { - var t0 = new Date().getTime() / 1000; - var r = f(); - haxe_Log.trace(new Date().getTime() / 1000 - t0 + "s",pos); - return r; -}; -haxe_Timer.stamp = function() { - return new Date().getTime() / 1000; -}; -haxe_Timer.prototype = { - id: null - ,stop: function() { - if(this.id == null) { - return; - } - clearInterval(this.id); - this.id = null; - } - ,run: function() { - } - ,__class__: haxe_Timer -}; -var haxe__$Unserializer_DefaultResolver = function() { -}; -$hxClasses["haxe._Unserializer.DefaultResolver"] = haxe__$Unserializer_DefaultResolver; -haxe__$Unserializer_DefaultResolver.__name__ = "haxe._Unserializer.DefaultResolver"; -haxe__$Unserializer_DefaultResolver.prototype = { - resolveClass: function(name) { - return $hxClasses[name]; - } - ,resolveEnum: function(name) { - return $hxEnums[name]; - } - ,__class__: haxe__$Unserializer_DefaultResolver -}; -var haxe_Unserializer = function(buf) { - this.buf = buf; - this.length = buf.length; - this.pos = 0; - this.scache = []; - this.cache = []; - var r = haxe_Unserializer.DEFAULT_RESOLVER; - if(r == null) { - r = new haxe__$Unserializer_DefaultResolver(); - haxe_Unserializer.DEFAULT_RESOLVER = r; - } - this.resolver = r; -}; -$hxClasses["haxe.Unserializer"] = haxe_Unserializer; -haxe_Unserializer.__name__ = "haxe.Unserializer"; -haxe_Unserializer.initCodes = function() { - var codes = []; - var _g = 0; - var _g1 = haxe_Unserializer.BASE64.length; - while(_g < _g1) { - var i = _g++; - codes[haxe_Unserializer.BASE64.charCodeAt(i)] = i; - } - return codes; -}; -haxe_Unserializer.run = function(v) { - return new haxe_Unserializer(v).unserialize(); -}; -haxe_Unserializer.prototype = { - buf: null - ,pos: null - ,length: null - ,cache: null - ,scache: null - ,resolver: null - ,setResolver: function(r) { - if(r == null) { - if(haxe__$Unserializer_NullResolver.instance == null) { - haxe__$Unserializer_NullResolver.instance = new haxe__$Unserializer_NullResolver(); - } - this.resolver = haxe__$Unserializer_NullResolver.instance; - } else { - this.resolver = r; - } - } - ,readDigits: function() { - var k = 0; - var s = false; - var fpos = this.pos; - while(true) { - var c = this.buf.charCodeAt(this.pos); - if(c != c) { - break; - } - if(c == 45) { - if(this.pos != fpos) { - break; - } - s = true; - this.pos++; - continue; - } - if(c < 48 || c > 57) { - break; - } - k = k * 10 + (c - 48); - this.pos++; - } - if(s) { - k *= -1; - } - return k; - } - ,readFloat: function() { - var p1 = this.pos; - while(true) { - var c = this.buf.charCodeAt(this.pos); - if(c != c) { - break; - } - if(c >= 43 && c < 58 || c == 101 || c == 69) { - this.pos++; - } else { - break; - } - } - return parseFloat(HxOverrides.substr(this.buf,p1,this.pos - p1)); - } - ,unserializeObject: function(o) { - while(true) { - if(this.pos >= this.length) { - throw new js__$Boot_HaxeError("Invalid object"); - } - if(this.buf.charCodeAt(this.pos) == 103) { - break; - } - var k = this.unserialize(); - if(typeof(k) != "string") { - throw new js__$Boot_HaxeError("Invalid object key"); - } - var v = this.unserialize(); - o[k] = v; - } - this.pos++; - } - ,unserializeEnum: function(edecl,tag) { - if(this.buf.charCodeAt(this.pos++) != 58) { - throw new js__$Boot_HaxeError("Invalid enum format"); - } - var nargs = this.readDigits(); - if(nargs == 0) { - return Type.createEnum(edecl,tag); - } - var args = []; - while(nargs-- > 0) args.push(this.unserialize()); - return Type.createEnum(edecl,tag,args); - } - ,unserialize: function() { - switch(this.buf.charCodeAt(this.pos++)) { - case 65: - var name = this.unserialize(); - var cl = this.resolver.resolveClass(name); - if(cl == null) { - throw new js__$Boot_HaxeError("Class not found " + name); - } - return cl; - case 66: - var name1 = this.unserialize(); - var e = this.resolver.resolveEnum(name1); - if(e == null) { - throw new js__$Boot_HaxeError("Enum not found " + name1); - } - return e; - case 67: - var name2 = this.unserialize(); - var cl1 = this.resolver.resolveClass(name2); - if(cl1 == null) { - throw new js__$Boot_HaxeError("Class not found " + name2); - } - var o = Object.create(cl1.prototype); - this.cache.push(o); - o.hxUnserialize(this); - if(this.buf.charCodeAt(this.pos++) != 103) { - throw new js__$Boot_HaxeError("Invalid custom data"); - } - return o; - case 77: - var h = new haxe_ds_ObjectMap(); - this.cache.push(h); - var buf = this.buf; - while(this.buf.charCodeAt(this.pos) != 104) { - var s = this.unserialize(); - h.set(s,this.unserialize()); - } - this.pos++; - return h; - case 82: - var n = this.readDigits(); - if(n < 0 || n >= this.scache.length) { - throw new js__$Boot_HaxeError("Invalid string reference"); - } - return this.scache[n]; - case 97: - var buf1 = this.buf; - var a = []; - this.cache.push(a); - while(true) { - var c = this.buf.charCodeAt(this.pos); - if(c == 104) { - this.pos++; - break; - } - if(c == 117) { - this.pos++; - var n1 = this.readDigits(); - a[a.length + n1 - 1] = null; - } else { - a.push(this.unserialize()); - } - } - return a; - case 98: - var h1 = new haxe_ds_StringMap(); - this.cache.push(h1); - var buf2 = this.buf; - while(this.buf.charCodeAt(this.pos) != 104) { - var s1 = this.unserialize(); - var value = this.unserialize(); - if(__map_reserved[s1] != null) { - h1.setReserved(s1,value); - } else { - h1.h[s1] = value; - } - } - this.pos++; - return h1; - case 99: - var name3 = this.unserialize(); - var cl2 = this.resolver.resolveClass(name3); - if(cl2 == null) { - throw new js__$Boot_HaxeError("Class not found " + name3); - } - var o1 = Object.create(cl2.prototype); - this.cache.push(o1); - this.unserializeObject(o1); - return o1; - case 100: - return this.readFloat(); - case 102: - return false; - case 105: - return this.readDigits(); - case 106: - var name4 = this.unserialize(); - var edecl = this.resolver.resolveEnum(name4); - if(edecl == null) { - throw new js__$Boot_HaxeError("Enum not found " + name4); - } - this.pos++; - var index = this.readDigits(); - var tag = edecl.__constructs__.slice()[index]; - if(tag == null) { - throw new js__$Boot_HaxeError("Unknown enum index " + name4 + "@" + index); - } - var e1 = this.unserializeEnum(edecl,tag); - this.cache.push(e1); - return e1; - case 107: - return NaN; - case 108: - var l = new haxe_ds_List(); - this.cache.push(l); - var buf3 = this.buf; - while(this.buf.charCodeAt(this.pos) != 104) l.add(this.unserialize()); - this.pos++; - return l; - case 109: - return -Infinity; - case 110: - return null; - case 111: - var o2 = { }; - this.cache.push(o2); - this.unserializeObject(o2); - return o2; - case 112: - return Infinity; - case 113: - var h2 = new haxe_ds_IntMap(); - this.cache.push(h2); - var buf4 = this.buf; - var c1 = this.buf.charCodeAt(this.pos++); - while(c1 == 58) { - var i = this.readDigits(); - var value1 = this.unserialize(); - h2.h[i] = value1; - c1 = this.buf.charCodeAt(this.pos++); - } - if(c1 != 104) { - throw new js__$Boot_HaxeError("Invalid IntMap format"); - } - return h2; - case 114: - var n2 = this.readDigits(); - if(n2 < 0 || n2 >= this.cache.length) { - throw new js__$Boot_HaxeError("Invalid reference"); - } - return this.cache[n2]; - case 115: - var len = this.readDigits(); - var buf5 = this.buf; - if(this.buf.charCodeAt(this.pos++) != 58 || this.length - this.pos < len) { - throw new js__$Boot_HaxeError("Invalid bytes length"); - } - var codes = haxe_Unserializer.CODES; - if(codes == null) { - codes = haxe_Unserializer.initCodes(); - haxe_Unserializer.CODES = codes; - } - var i1 = this.pos; - var rest = len & 3; - var size = (len >> 2) * 3 + (rest >= 2 ? rest - 1 : 0); - var max = i1 + (len - rest); - var bytes = new haxe_io_Bytes(new ArrayBuffer(size)); - var bpos = 0; - while(i1 < max) { - var c11 = codes[buf5.charCodeAt(i1++)]; - var c2 = codes[buf5.charCodeAt(i1++)]; - bytes.b[bpos++] = (c11 << 2 | c2 >> 4) & 255; - var c3 = codes[buf5.charCodeAt(i1++)]; - bytes.b[bpos++] = (c2 << 4 | c3 >> 2) & 255; - var c4 = codes[buf5.charCodeAt(i1++)]; - bytes.b[bpos++] = (c3 << 6 | c4) & 255; - } - if(rest >= 2) { - var c12 = codes[buf5.charCodeAt(i1++)]; - var c21 = codes[buf5.charCodeAt(i1++)]; - bytes.b[bpos++] = (c12 << 2 | c21 >> 4) & 255; - if(rest == 3) { - var c31 = codes[buf5.charCodeAt(i1++)]; - bytes.b[bpos++] = (c21 << 4 | c31 >> 2) & 255; - } - } - this.pos += len; - this.cache.push(bytes); - return bytes; - case 116: - return true; - case 118: - var d; - if(this.buf.charCodeAt(this.pos) >= 48 && this.buf.charCodeAt(this.pos) <= 57 && this.buf.charCodeAt(this.pos + 1) >= 48 && this.buf.charCodeAt(this.pos + 1) <= 57 && this.buf.charCodeAt(this.pos + 2) >= 48 && this.buf.charCodeAt(this.pos + 2) <= 57 && this.buf.charCodeAt(this.pos + 3) >= 48 && this.buf.charCodeAt(this.pos + 3) <= 57 && this.buf.charCodeAt(this.pos + 4) == 45) { - d = HxOverrides.strDate(HxOverrides.substr(this.buf,this.pos,19)); - this.pos += 19; - } else { - d = new Date(this.readFloat()); - } - this.cache.push(d); - return d; - case 119: - var name5 = this.unserialize(); - var edecl1 = this.resolver.resolveEnum(name5); - if(edecl1 == null) { - throw new js__$Boot_HaxeError("Enum not found " + name5); - } - var e2 = this.unserializeEnum(edecl1,this.unserialize()); - this.cache.push(e2); - return e2; - case 120: - throw js__$Boot_HaxeError.wrap(this.unserialize()); - case 121: - var len1 = this.readDigits(); - if(this.buf.charCodeAt(this.pos++) != 58 || this.length - this.pos < len1) { - throw new js__$Boot_HaxeError("Invalid string length"); - } - var s2 = HxOverrides.substr(this.buf,this.pos,len1); - this.pos += len1; - s2 = decodeURIComponent(s2.split("+").join(" ")); - this.scache.push(s2); - return s2; - case 122: - return 0; - default: - } - this.pos--; - throw new js__$Boot_HaxeError("Invalid char " + this.buf.charAt(this.pos) + " at position " + this.pos); - } - ,__class__: haxe_Unserializer -}; -var haxe__$Unserializer_NullResolver = function() { -}; -$hxClasses["haxe._Unserializer.NullResolver"] = haxe__$Unserializer_NullResolver; -haxe__$Unserializer_NullResolver.__name__ = "haxe._Unserializer.NullResolver"; -haxe__$Unserializer_NullResolver.instance = null; -haxe__$Unserializer_NullResolver.prototype = { - resolveClass: function(name) { - return null; - } - ,resolveEnum: function(name) { - return null; - } - ,__class__: haxe__$Unserializer_NullResolver -}; -var haxe_crypto_Adler32 = function() { - this.a1 = 1; - this.a2 = 0; -}; -$hxClasses["haxe.crypto.Adler32"] = haxe_crypto_Adler32; -haxe_crypto_Adler32.__name__ = "haxe.crypto.Adler32"; -haxe_crypto_Adler32.read = function(i) { - var a = new haxe_crypto_Adler32(); - var a2a = i.readByte(); - var a2b = i.readByte(); - var a1a = i.readByte(); - var a1b = i.readByte(); - a.a1 = a1a << 8 | a1b; - a.a2 = a2a << 8 | a2b; - return a; -}; -haxe_crypto_Adler32.prototype = { - a1: null - ,a2: null - ,update: function(b,pos,len) { - var a1 = this.a1; - var a2 = this.a2; - var _g = pos; - var _g1 = pos + len; - while(_g < _g1) { - var p = _g++; - var c = b.b[p]; - a1 = (a1 + c) % 65521; - a2 = (a2 + a1) % 65521; - } - this.a1 = a1; - this.a2 = a2; - } - ,equals: function(a) { - if(a.a1 == this.a1) { - return a.a2 == this.a2; - } else { - return false; - } - } - ,__class__: haxe_crypto_Adler32 -}; -var haxe_crypto_Base64 = function() { }; -$hxClasses["haxe.crypto.Base64"] = haxe_crypto_Base64; -haxe_crypto_Base64.__name__ = "haxe.crypto.Base64"; -haxe_crypto_Base64.decode = function(str,complement) { - if(complement == null) { - complement = true; - } - if(complement) { - while(HxOverrides.cca(str,str.length - 1) == 61) str = HxOverrides.substr(str,0,-1); - } - return new haxe_crypto_BaseCode(haxe_crypto_Base64.BYTES).decodeBytes(haxe_io_Bytes.ofString(str)); -}; -var haxe_crypto_BaseCode = function(base) { - var len = base.length; - var nbits = 1; - while(len > 1 << nbits) ++nbits; - if(nbits > 8 || len != 1 << nbits) { - throw new js__$Boot_HaxeError("BaseCode : base length must be a power of two."); - } - this.base = base; - this.nbits = nbits; -}; -$hxClasses["haxe.crypto.BaseCode"] = haxe_crypto_BaseCode; -haxe_crypto_BaseCode.__name__ = "haxe.crypto.BaseCode"; -haxe_crypto_BaseCode.prototype = { - base: null - ,nbits: null - ,tbl: null - ,initTable: function() { - var tbl = []; - var _g = 0; - while(_g < 256) { - var i = _g++; - tbl[i] = -1; - } - var _g1 = 0; - var _g2 = this.base.length; - while(_g1 < _g2) { - var i1 = _g1++; - tbl[this.base.b[i1]] = i1; - } - this.tbl = tbl; - } - ,decodeBytes: function(b) { - var nbits = this.nbits; - var base = this.base; - if(this.tbl == null) { - this.initTable(); - } - var tbl = this.tbl; - var size = b.length * nbits >> 3; - var out = new haxe_io_Bytes(new ArrayBuffer(size)); - var buf = 0; - var curbits = 0; - var pin = 0; - var pout = 0; - while(pout < size) { - while(curbits < 8) { - curbits += nbits; - buf <<= nbits; - var i = tbl[b.b[pin++]]; - if(i == -1) { - throw new js__$Boot_HaxeError("BaseCode : invalid encoded char"); - } - buf |= i; - } - curbits -= 8; - out.b[pout++] = buf >> curbits & 255 & 255; - } - return out; - } - ,__class__: haxe_crypto_BaseCode -}; -var haxe_ds_ArraySort = function() { }; -$hxClasses["haxe.ds.ArraySort"] = haxe_ds_ArraySort; -haxe_ds_ArraySort.__name__ = "haxe.ds.ArraySort"; -haxe_ds_ArraySort.sort = function(a,cmp) { - haxe_ds_ArraySort.rec(a,cmp,0,a.length); -}; -haxe_ds_ArraySort.rec = function(a,cmp,from,to) { - var middle = from + to >> 1; - if(to - from < 12) { - if(to <= from) { - return; - } - var _g = from + 1; - var _g1 = to; - while(_g < _g1) { - var i = _g++; - var j = i; - while(j > from) { - if(cmp(a[j],a[j - 1]) < 0) { - haxe_ds_ArraySort.swap(a,j - 1,j); - } else { - break; - } - --j; - } - } - return; - } - haxe_ds_ArraySort.rec(a,cmp,from,middle); - haxe_ds_ArraySort.rec(a,cmp,middle,to); - haxe_ds_ArraySort.doMerge(a,cmp,from,middle,to,middle - from,to - middle); -}; -haxe_ds_ArraySort.doMerge = function(a,cmp,from,pivot,to,len1,len2) { - var first_cut; - var second_cut; - var len11; - var len22; - if(len1 == 0 || len2 == 0) { - return; - } - if(len1 + len2 == 2) { - if(cmp(a[pivot],a[from]) < 0) { - haxe_ds_ArraySort.swap(a,pivot,from); - } - return; - } - if(len1 > len2) { - len11 = len1 >> 1; - first_cut = from + len11; - second_cut = haxe_ds_ArraySort.lower(a,cmp,pivot,to,first_cut); - len22 = second_cut - pivot; - } else { - len22 = len2 >> 1; - second_cut = pivot + len22; - first_cut = haxe_ds_ArraySort.upper(a,cmp,from,pivot,second_cut); - len11 = first_cut - from; - } - haxe_ds_ArraySort.rotate(a,cmp,first_cut,pivot,second_cut); - var new_mid = first_cut + len22; - haxe_ds_ArraySort.doMerge(a,cmp,from,first_cut,new_mid,len11,len22); - haxe_ds_ArraySort.doMerge(a,cmp,new_mid,second_cut,to,len1 - len11,len2 - len22); -}; -haxe_ds_ArraySort.rotate = function(a,cmp,from,mid,to) { - if(from == mid || mid == to) { - return; - } - var n = haxe_ds_ArraySort.gcd(to - from,mid - from); - while(n-- != 0) { - var val = a[from + n]; - var shift = mid - from; - var p1 = from + n; - var p2 = from + n + shift; - while(p2 != from + n) { - a[p1] = a[p2]; - p1 = p2; - if(to - p2 > shift) { - p2 += shift; - } else { - p2 = from + (shift - (to - p2)); - } - } - a[p1] = val; - } -}; -haxe_ds_ArraySort.gcd = function(m,n) { - while(n != 0) { - var t = m % n; - m = n; - n = t; - } - return m; -}; -haxe_ds_ArraySort.upper = function(a,cmp,from,to,val) { - var len = to - from; - var half; - var mid; - while(len > 0) { - half = len >> 1; - mid = from + half; - if(cmp(a[val],a[mid]) < 0) { - len = half; - } else { - from = mid + 1; - len = len - half - 1; - } - } - return from; -}; -haxe_ds_ArraySort.lower = function(a,cmp,from,to,val) { - var len = to - from; - var half; - var mid; - while(len > 0) { - half = len >> 1; - mid = from + half; - if(cmp(a[mid],a[val]) < 0) { - from = mid + 1; - len = len - half - 1; - } else { - len = half; - } - } - return from; -}; -haxe_ds_ArraySort.swap = function(a,i,j) { - var tmp = a[i]; - a[i] = a[j]; - a[j] = tmp; -}; -var haxe_ds_BalancedTree = function() { -}; -$hxClasses["haxe.ds.BalancedTree"] = haxe_ds_BalancedTree; -haxe_ds_BalancedTree.__name__ = "haxe.ds.BalancedTree"; -haxe_ds_BalancedTree.__interfaces__ = [haxe_IMap]; -haxe_ds_BalancedTree.prototype = { - root: null - ,set: function(key,value) { - this.root = this.setLoop(key,value,this.root); - } - ,get: function(key) { - var node = this.root; - while(node != null) { - var c = this.compare(key,node.key); - if(c == 0) { - return node.value; - } - if(c < 0) { - node = node.left; - } else { - node = node.right; - } - } - return null; - } - ,remove: function(key) { - try { - this.root = this.removeLoop(key,this.root); - return true; - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - if(typeof(e1) == "string") { - var e2 = e1; - return false; - } else { - throw e; - } - } - } - ,exists: function(key) { - var node = this.root; - while(node != null) { - var c = this.compare(key,node.key); - if(c == 0) { - return true; - } else if(c < 0) { - node = node.left; - } else { - node = node.right; - } - } - return false; - } - ,setLoop: function(k,v,node) { - if(node == null) { - return new haxe_ds_TreeNode(null,k,v,null); - } - var c = this.compare(k,node.key); - if(c == 0) { - return new haxe_ds_TreeNode(node.left,k,v,node.right,node == null ? 0 : node._height); - } else if(c < 0) { - var nl = this.setLoop(k,v,node.left); - return this.balance(nl,node.key,node.value,node.right); - } else { - var nr = this.setLoop(k,v,node.right); - return this.balance(node.left,node.key,node.value,nr); - } - } - ,removeLoop: function(k,node) { - if(node == null) { - throw new js__$Boot_HaxeError("Not_found"); - } - var c = this.compare(k,node.key); - if(c == 0) { - return this.merge(node.left,node.right); - } else if(c < 0) { - return this.balance(this.removeLoop(k,node.left),node.key,node.value,node.right); - } else { - return this.balance(node.left,node.key,node.value,this.removeLoop(k,node.right)); - } - } - ,merge: function(t1,t2) { - if(t1 == null) { - return t2; - } - if(t2 == null) { - return t1; - } - var t = this.minBinding(t2); - return this.balance(t1,t.key,t.value,this.removeMinBinding(t2)); - } - ,minBinding: function(t) { - if(t == null) { - throw new js__$Boot_HaxeError("Not_found"); - } else if(t.left == null) { - return t; - } else { - return this.minBinding(t.left); - } - } - ,removeMinBinding: function(t) { - if(t.left == null) { - return t.right; - } else { - return this.balance(this.removeMinBinding(t.left),t.key,t.value,t.right); - } - } - ,balance: function(l,k,v,r) { - var hl = l == null ? 0 : l._height; - var hr = r == null ? 0 : r._height; - if(hl > hr + 2) { - var _this = l.left; - var _this1 = l.right; - if((_this == null ? 0 : _this._height) >= (_this1 == null ? 0 : _this1._height)) { - return new haxe_ds_TreeNode(l.left,l.key,l.value,new haxe_ds_TreeNode(l.right,k,v,r)); - } else { - return new haxe_ds_TreeNode(new haxe_ds_TreeNode(l.left,l.key,l.value,l.right.left),l.right.key,l.right.value,new haxe_ds_TreeNode(l.right.right,k,v,r)); - } - } else if(hr > hl + 2) { - var _this2 = r.right; - var _this3 = r.left; - if((_this2 == null ? 0 : _this2._height) > (_this3 == null ? 0 : _this3._height)) { - return new haxe_ds_TreeNode(new haxe_ds_TreeNode(l,k,v,r.left),r.key,r.value,r.right); - } else { - return new haxe_ds_TreeNode(new haxe_ds_TreeNode(l,k,v,r.left.left),r.left.key,r.left.value,new haxe_ds_TreeNode(r.left.right,r.key,r.value,r.right)); - } - } else { - return new haxe_ds_TreeNode(l,k,v,r,(hl > hr ? hl : hr) + 1); - } - } - ,compare: function(k1,k2) { - return Reflect.compare(k1,k2); - } - ,__class__: haxe_ds_BalancedTree -}; -var haxe_ds_TreeNode = function(l,k,v,r,h) { - if(h == null) { - h = -1; - } - this.left = l; - this.key = k; - this.value = v; - this.right = r; - if(h == -1) { - var tmp; - var _this = this.left; - var _this1 = this.right; - if((_this == null ? 0 : _this._height) > (_this1 == null ? 0 : _this1._height)) { - var _this2 = this.left; - tmp = _this2 == null ? 0 : _this2._height; - } else { - var _this3 = this.right; - tmp = _this3 == null ? 0 : _this3._height; - } - this._height = tmp + 1; - } else { - this._height = h; - } -}; -$hxClasses["haxe.ds.TreeNode"] = haxe_ds_TreeNode; -haxe_ds_TreeNode.__name__ = "haxe.ds.TreeNode"; -haxe_ds_TreeNode.prototype = { - left: null - ,right: null - ,key: null - ,value: null - ,_height: null - ,__class__: haxe_ds_TreeNode -}; -var haxe_ds_EnumValueMap = function() { - haxe_ds_BalancedTree.call(this); -}; -$hxClasses["haxe.ds.EnumValueMap"] = haxe_ds_EnumValueMap; -haxe_ds_EnumValueMap.__name__ = "haxe.ds.EnumValueMap"; -haxe_ds_EnumValueMap.__interfaces__ = [haxe_IMap]; -haxe_ds_EnumValueMap.__super__ = haxe_ds_BalancedTree; -haxe_ds_EnumValueMap.prototype = $extend(haxe_ds_BalancedTree.prototype,{ - compare: function(k1,k2) { - var d = k1._hx_index - k2._hx_index; - if(d != 0) { - return d; - } - var p1 = Type.enumParameters(k1); - var p2 = Type.enumParameters(k2); - if(p1.length == 0 && p2.length == 0) { - return 0; - } - return this.compareArgs(p1,p2); - } - ,compareArgs: function(a1,a2) { - var ld = a1.length - a2.length; - if(ld != 0) { - return ld; - } - var _g = 0; - var _g1 = a1.length; - while(_g < _g1) { - var i = _g++; - var d = this.compareArg(a1[i],a2[i]); - if(d != 0) { - return d; - } - } - return 0; - } - ,compareArg: function(v1,v2) { - if(Reflect.isEnumValue(v1) && Reflect.isEnumValue(v2)) { - return this.compare(v1,v2); - } else if(((v1) instanceof Array) && ((v2) instanceof Array)) { - return this.compareArgs(v1,v2); - } else { - return Reflect.compare(v1,v2); - } - } - ,__class__: haxe_ds_EnumValueMap -}); -var haxe_ds_GenericCell = function(elt,next) { - this.elt = elt; - this.next = next; -}; -$hxClasses["haxe.ds.GenericCell"] = haxe_ds_GenericCell; -haxe_ds_GenericCell.__name__ = "haxe.ds.GenericCell"; -haxe_ds_GenericCell.prototype = { - elt: null - ,next: null - ,__class__: haxe_ds_GenericCell -}; -var haxe_ds_GenericStack = function() { -}; -$hxClasses["haxe.ds.GenericStack"] = haxe_ds_GenericStack; -haxe_ds_GenericStack.__name__ = "haxe.ds.GenericStack"; -haxe_ds_GenericStack.prototype = { - head: null - ,__class__: haxe_ds_GenericStack -}; -var haxe_ds__$List_ListNode = function(item,next) { - this.item = item; - this.next = next; -}; -$hxClasses["haxe.ds._List.ListNode"] = haxe_ds__$List_ListNode; -haxe_ds__$List_ListNode.__name__ = "haxe.ds._List.ListNode"; -haxe_ds__$List_ListNode.prototype = { - item: null - ,next: null - ,__class__: haxe_ds__$List_ListNode -}; -var haxe_ds__$List_ListIterator = function(head) { - this.head = head; -}; -$hxClasses["haxe.ds._List.ListIterator"] = haxe_ds__$List_ListIterator; -haxe_ds__$List_ListIterator.__name__ = "haxe.ds._List.ListIterator"; -haxe_ds__$List_ListIterator.prototype = { - head: null - ,hasNext: function() { - return this.head != null; - } - ,next: function() { - var val = this.head.item; - this.head = this.head.next; - return val; - } - ,__class__: haxe_ds__$List_ListIterator -}; -var haxe_ds__$StringMap_StringMapIterator = function(map,keys) { - this.map = map; - this.keys = keys; - this.index = 0; - this.count = keys.length; -}; -$hxClasses["haxe.ds._StringMap.StringMapIterator"] = haxe_ds__$StringMap_StringMapIterator; -haxe_ds__$StringMap_StringMapIterator.__name__ = "haxe.ds._StringMap.StringMapIterator"; -haxe_ds__$StringMap_StringMapIterator.prototype = { - map: null - ,keys: null - ,index: null - ,count: null - ,hasNext: function() { - return this.index < this.count; - } - ,next: function() { - var _this = this.map; - var key = this.keys[this.index++]; - if(__map_reserved[key] != null) { - return _this.getReserved(key); - } else { - return _this.h[key]; - } - } - ,__class__: haxe_ds__$StringMap_StringMapIterator -}; -var haxe_io_BytesBuffer = function() { - this.pos = 0; - this.size = 0; -}; -$hxClasses["haxe.io.BytesBuffer"] = haxe_io_BytesBuffer; -haxe_io_BytesBuffer.__name__ = "haxe.io.BytesBuffer"; -haxe_io_BytesBuffer.prototype = { - buffer: null - ,view: null - ,u8: null - ,pos: null - ,size: null - ,addByte: function(byte) { - if(this.pos == this.size) { - this.grow(1); - } - this.view.setUint8(this.pos++,byte); - } - ,add: function(src) { - if(this.pos + src.length > this.size) { - this.grow(src.length); - } - if(this.size == 0) { - return; - } - var sub = new Uint8Array(src.b.buffer,src.b.byteOffset,src.length); - this.u8.set(sub,this.pos); - this.pos += src.length; - } - ,addBytes: function(src,pos,len) { - if(pos < 0 || len < 0 || pos + len > src.length) { - throw new js__$Boot_HaxeError(haxe_io_Error.OutsideBounds); - } - if(this.pos + len > this.size) { - this.grow(len); - } - if(this.size == 0) { - return; - } - var sub = new Uint8Array(src.b.buffer,src.b.byteOffset + pos,len); - this.u8.set(sub,this.pos); - this.pos += len; - } - ,grow: function(delta) { - var req = this.pos + delta; - var nsize = this.size == 0 ? 16 : this.size; - while(nsize < req) nsize = nsize * 3 >> 1; - var nbuf = new ArrayBuffer(nsize); - var nu8 = new Uint8Array(nbuf); - if(this.size > 0) { - nu8.set(this.u8); - } - this.size = nsize; - this.buffer = nbuf; - this.u8 = nu8; - this.view = new DataView(this.buffer); - } - ,getBytes: function() { - if(this.size == 0) { - return new haxe_io_Bytes(new ArrayBuffer(0)); - } - var b = new haxe_io_Bytes(this.buffer); - b.length = this.pos; - return b; - } - ,__class__: haxe_io_BytesBuffer -}; -var haxe_io_Input = function() { }; -$hxClasses["haxe.io.Input"] = haxe_io_Input; -haxe_io_Input.__name__ = "haxe.io.Input"; -haxe_io_Input.prototype = { - bigEndian: null - ,readByte: function() { - throw new js__$Boot_HaxeError("Not implemented"); - } - ,readBytes: function(s,pos,len) { - var k = len; - var b = s.b; - if(pos < 0 || len < 0 || pos + len > s.length) { - throw new js__$Boot_HaxeError(haxe_io_Error.OutsideBounds); - } - try { - while(k > 0) { - b[pos] = this.readByte(); - ++pos; - --k; - } - } catch( eof ) { - haxe_CallStack.lastException = eof; - var eof1 = ((eof) instanceof js__$Boot_HaxeError) ? eof.val : eof; - if(((eof1) instanceof haxe_io_Eof)) { - var eof2 = eof1; - } else { - throw eof; - } - } - return len - k; - } - ,readFullBytes: function(s,pos,len) { - while(len > 0) { - var k = this.readBytes(s,pos,len); - if(k == 0) { - throw new js__$Boot_HaxeError(haxe_io_Error.Blocked); - } - pos += k; - len -= k; - } - } - ,read: function(nbytes) { - var s = new haxe_io_Bytes(new ArrayBuffer(nbytes)); - var p = 0; - while(nbytes > 0) { - var k = this.readBytes(s,p,nbytes); - if(k == 0) { - throw new js__$Boot_HaxeError(haxe_io_Error.Blocked); - } - p += k; - nbytes -= k; - } - return s; - } - ,readInt16: function() { - var ch1 = this.readByte(); - var ch2 = this.readByte(); - var n = this.bigEndian ? ch2 | ch1 << 8 : ch1 | ch2 << 8; - if((n & 32768) != 0) { - return n - 65536; - } - return n; - } - ,readUInt16: function() { - var ch1 = this.readByte(); - var ch2 = this.readByte(); - if(this.bigEndian) { - return ch2 | ch1 << 8; - } else { - return ch1 | ch2 << 8; - } - } - ,readInt32: function() { - var ch1 = this.readByte(); - var ch2 = this.readByte(); - var ch3 = this.readByte(); - var ch4 = this.readByte(); - if(this.bigEndian) { - return ch4 | ch3 << 8 | ch2 << 16 | ch1 << 24; - } else { - return ch1 | ch2 << 8 | ch3 << 16 | ch4 << 24; - } - } - ,readString: function(len,encoding) { - var b = new haxe_io_Bytes(new ArrayBuffer(len)); - this.readFullBytes(b,0,len); - return b.getString(0,len,encoding); - } - ,__class__: haxe_io_Input -}; -var haxe_io_BytesInput = function(b,pos,len) { - if(pos == null) { - pos = 0; - } - if(len == null) { - len = b.length - pos; - } - if(pos < 0 || len < 0 || pos + len > b.length) { - throw new js__$Boot_HaxeError(haxe_io_Error.OutsideBounds); - } - this.b = b.b; - this.pos = pos; - this.len = len; - this.totlen = len; -}; -$hxClasses["haxe.io.BytesInput"] = haxe_io_BytesInput; -haxe_io_BytesInput.__name__ = "haxe.io.BytesInput"; -haxe_io_BytesInput.__super__ = haxe_io_Input; -haxe_io_BytesInput.prototype = $extend(haxe_io_Input.prototype,{ - b: null - ,pos: null - ,len: null - ,totlen: null - ,readByte: function() { - if(this.len == 0) { - throw new js__$Boot_HaxeError(new haxe_io_Eof()); - } - this.len--; - return this.b[this.pos++]; - } - ,readBytes: function(buf,pos,len) { - if(pos < 0 || len < 0 || pos + len > buf.length) { - throw new js__$Boot_HaxeError(haxe_io_Error.OutsideBounds); - } - if(this.len == 0 && len > 0) { - throw new js__$Boot_HaxeError(new haxe_io_Eof()); - } - if(this.len < len) { - len = this.len; - } - var b1 = this.b; - var b2 = buf.b; - var _g = 0; - var _g1 = len; - while(_g < _g1) { - var i = _g++; - b2[pos + i] = b1[this.pos + i]; - } - this.pos += len; - this.len -= len; - return len; - } - ,__class__: haxe_io_BytesInput -}); -var haxe_io_Output = function() { }; -$hxClasses["haxe.io.Output"] = haxe_io_Output; -haxe_io_Output.__name__ = "haxe.io.Output"; -var haxe_io_BytesOutput = function() { - this.b = new haxe_io_BytesBuffer(); -}; -$hxClasses["haxe.io.BytesOutput"] = haxe_io_BytesOutput; -haxe_io_BytesOutput.__name__ = "haxe.io.BytesOutput"; -haxe_io_BytesOutput.__super__ = haxe_io_Output; -haxe_io_BytesOutput.prototype = $extend(haxe_io_Output.prototype,{ - b: null - ,writeByte: function(c) { - this.b.addByte(c); - } - ,getBytes: function() { - return this.b.getBytes(); - } - ,__class__: haxe_io_BytesOutput -}); -var haxe_io_Encoding = $hxEnums["haxe.io.Encoding"] = { __ename__ : "haxe.io.Encoding", __constructs__ : ["UTF8","RawNative"] - ,UTF8: {_hx_index:0,__enum__:"haxe.io.Encoding",toString:$estr} - ,RawNative: {_hx_index:1,__enum__:"haxe.io.Encoding",toString:$estr} -}; -var haxe_io_Eof = function() { -}; -$hxClasses["haxe.io.Eof"] = haxe_io_Eof; -haxe_io_Eof.__name__ = "haxe.io.Eof"; -haxe_io_Eof.prototype = { - toString: function() { - return "Eof"; - } - ,__class__: haxe_io_Eof -}; -var haxe_io_Error = $hxEnums["haxe.io.Error"] = { __ename__ : "haxe.io.Error", __constructs__ : ["Blocked","Overflow","OutsideBounds","Custom"] - ,Blocked: {_hx_index:0,__enum__:"haxe.io.Error",toString:$estr} - ,Overflow: {_hx_index:1,__enum__:"haxe.io.Error",toString:$estr} - ,OutsideBounds: {_hx_index:2,__enum__:"haxe.io.Error",toString:$estr} - ,Custom: ($_=function(e) { return {_hx_index:3,e:e,__enum__:"haxe.io.Error",toString:$estr}; },$_.__params__ = ["e"],$_) -}; -var haxe_io_FPHelper = function() { }; -$hxClasses["haxe.io.FPHelper"] = haxe_io_FPHelper; -haxe_io_FPHelper.__name__ = "haxe.io.FPHelper"; -haxe_io_FPHelper.i32ToFloat = function(i) { - haxe_io_FPHelper.helper.setInt32(0,i,true); - return haxe_io_FPHelper.helper.getFloat32(0,true); -}; -haxe_io_FPHelper.floatToI32 = function(f) { - haxe_io_FPHelper.helper.setFloat32(0,f,true); - return haxe_io_FPHelper.helper.getInt32(0,true); -}; -haxe_io_FPHelper.i64ToDouble = function(low,high) { - haxe_io_FPHelper.helper.setInt32(0,low,true); - haxe_io_FPHelper.helper.setInt32(4,high,true); - return haxe_io_FPHelper.helper.getFloat64(0,true); -}; -haxe_io_FPHelper.doubleToI64 = function(v) { - var i64 = haxe_io_FPHelper.i64tmp; - haxe_io_FPHelper.helper.setFloat64(0,v,true); - i64.low = haxe_io_FPHelper.helper.getInt32(0,true); - i64.high = haxe_io_FPHelper.helper.getInt32(4,true); - return i64; -}; -var haxe_io_Path = function(path) { - switch(path) { - case ".":case "..": - this.dir = path; - this.file = ""; - return; - } - var c1 = path.lastIndexOf("/"); - var c2 = path.lastIndexOf("\\"); - if(c1 < c2) { - this.dir = HxOverrides.substr(path,0,c2); - path = HxOverrides.substr(path,c2 + 1,null); - this.backslash = true; - } else if(c2 < c1) { - this.dir = HxOverrides.substr(path,0,c1); - path = HxOverrides.substr(path,c1 + 1,null); - } else { - this.dir = null; - } - var cp = path.lastIndexOf("."); - if(cp != -1) { - this.ext = HxOverrides.substr(path,cp + 1,null); - this.file = HxOverrides.substr(path,0,cp); - } else { - this.ext = null; - this.file = path; - } -}; -$hxClasses["haxe.io.Path"] = haxe_io_Path; -haxe_io_Path.__name__ = "haxe.io.Path"; -haxe_io_Path.directory = function(path) { - var s = new haxe_io_Path(path); - if(s.dir == null) { - return ""; - } - return s.dir; -}; -haxe_io_Path.prototype = { - dir: null - ,file: null - ,ext: null - ,backslash: null - ,__class__: haxe_io_Path -}; -var haxe_io_StringInput = function(s) { - haxe_io_BytesInput.call(this,haxe_io_Bytes.ofString(s)); -}; -$hxClasses["haxe.io.StringInput"] = haxe_io_StringInput; -haxe_io_StringInput.__name__ = "haxe.io.StringInput"; -haxe_io_StringInput.__super__ = haxe_io_BytesInput; -haxe_io_StringInput.prototype = $extend(haxe_io_BytesInput.prototype,{ - __class__: haxe_io_StringInput -}); -var haxe_xml__$Access_AttribAccess_$Impl_$ = {}; -$hxClasses["haxe.xml._Access.AttribAccess_Impl_"] = haxe_xml__$Access_AttribAccess_$Impl_$; -haxe_xml__$Access_AttribAccess_$Impl_$.__name__ = "haxe.xml._Access.AttribAccess_Impl_"; -haxe_xml__$Access_AttribAccess_$Impl_$.resolve = function(this1,name) { - if(this1.nodeType == Xml.Document) { - throw new js__$Boot_HaxeError("Cannot access document attribute " + name); - } - var v = this1.get(name); - if(v == null) { - if(this1.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element but found " + _$Xml_XmlType_$Impl_$.toString(this1.nodeType)); - } - throw new js__$Boot_HaxeError(this1.nodeName + " is missing attribute " + name); - } - return v; -}; -var haxe_xml__$Access_HasAttribAccess_$Impl_$ = {}; -$hxClasses["haxe.xml._Access.HasAttribAccess_Impl_"] = haxe_xml__$Access_HasAttribAccess_$Impl_$; -haxe_xml__$Access_HasAttribAccess_$Impl_$.__name__ = "haxe.xml._Access.HasAttribAccess_Impl_"; -haxe_xml__$Access_HasAttribAccess_$Impl_$.resolve = function(this1,name) { - if(this1.nodeType == Xml.Document) { - throw new js__$Boot_HaxeError("Cannot access document attribute " + name); - } - return this1.exists(name); -}; -var haxe_xml__$Access_NodeListAccess_$Impl_$ = {}; -$hxClasses["haxe.xml._Access.NodeListAccess_Impl_"] = haxe_xml__$Access_NodeListAccess_$Impl_$; -haxe_xml__$Access_NodeListAccess_$Impl_$.__name__ = "haxe.xml._Access.NodeListAccess_Impl_"; -haxe_xml__$Access_NodeListAccess_$Impl_$.resolve = function(this1,name) { - var l = []; - var x = this1.elementsNamed(name); - while(x.hasNext()) { - var x1 = x.next(); - if(x1.nodeType != Xml.Document && x1.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Invalid nodeType " + _$Xml_XmlType_$Impl_$.toString(x1.nodeType)); - } - var this2 = x1; - l.push(this2); - } - return l; -}; -var haxe_xml_XmlParserException = function(message,xml,position) { - this.xml = xml; - this.message = message; - this.position = position; - this.lineNumber = 1; - this.positionAtLine = 0; - var _g = 0; - var _g1 = position; - while(_g < _g1) { - var i = _g++; - var c = xml.charCodeAt(i); - if(c == 10) { - this.lineNumber++; - this.positionAtLine = 0; - } else if(c != 13) { - this.positionAtLine++; - } - } -}; -$hxClasses["haxe.xml.XmlParserException"] = haxe_xml_XmlParserException; -haxe_xml_XmlParserException.__name__ = "haxe.xml.XmlParserException"; -haxe_xml_XmlParserException.prototype = { - message: null - ,lineNumber: null - ,positionAtLine: null - ,position: null - ,xml: null - ,toString: function() { - var c = js_Boot.getClass(this); - return c.__name__ + ": " + this.message + " at line " + this.lineNumber + " char " + this.positionAtLine; - } - ,__class__: haxe_xml_XmlParserException -}; -var haxe_xml_Parser = function() { }; -$hxClasses["haxe.xml.Parser"] = haxe_xml_Parser; -haxe_xml_Parser.__name__ = "haxe.xml.Parser"; -haxe_xml_Parser.parse = function(str,strict) { - if(strict == null) { - strict = false; - } - var doc = Xml.createDocument(); - haxe_xml_Parser.doParse(str,strict,0,doc); - return doc; -}; -haxe_xml_Parser.doParse = function(str,strict,p,parent) { - if(p == null) { - p = 0; - } - var xml = null; - var state = 1; - var next = 1; - var aname = null; - var start = 0; - var nsubs = 0; - var nbrackets = 0; - var c = str.charCodeAt(p); - var buf = new StringBuf(); - var escapeNext = 1; - var attrValQuote = -1; - while(c == c) { - switch(state) { - case 0: - switch(c) { - case 9:case 10:case 13:case 32: - break; - default: - state = next; - continue; - } - break; - case 1: - if(c == 60) { - state = 0; - next = 2; - } else { - start = p; - state = 13; - continue; - } - break; - case 2: - switch(c) { - case 33: - if(str.charCodeAt(p + 1) == 91) { - p += 2; - if(HxOverrides.substr(str,p,6).toUpperCase() != "CDATA[") { - throw new js__$Boot_HaxeError(new haxe_xml_XmlParserException("Expected = 97 && c <= 122 || c >= 65 && c <= 90 || c >= 48 && c <= 57 || c == 58 || c == 46 || c == 95 || c == 45)) { - if(p == start) { - throw new js__$Boot_HaxeError(new haxe_xml_XmlParserException("Expected node name",str,p)); - } - xml = Xml.createElement(HxOverrides.substr(str,start,p - start)); - parent.addChild(xml); - ++nsubs; - state = 0; - next = 4; - continue; - } - break; - case 4: - switch(c) { - case 47: - state = 11; - break; - case 62: - state = 9; - break; - default: - state = 5; - start = p; - continue; - } - break; - case 5: - if(!(c >= 97 && c <= 122 || c >= 65 && c <= 90 || c >= 48 && c <= 57 || c == 58 || c == 46 || c == 95 || c == 45)) { - if(start == p) { - throw new js__$Boot_HaxeError(new haxe_xml_XmlParserException("Expected attribute name",str,p)); - } - var tmp = HxOverrides.substr(str,start,p - start); - aname = tmp; - if(xml.exists(aname)) { - throw new js__$Boot_HaxeError(new haxe_xml_XmlParserException("Duplicate attribute [" + aname + "]",str,p)); - } - state = 0; - next = 6; - continue; - } - break; - case 6: - if(c == 61) { - state = 0; - next = 7; - } else { - throw new js__$Boot_HaxeError(new haxe_xml_XmlParserException("Expected =",str,p)); - } - break; - case 7: - switch(c) { - case 34:case 39: - buf = new StringBuf(); - state = 8; - start = p + 1; - attrValQuote = c; - break; - default: - throw new js__$Boot_HaxeError(new haxe_xml_XmlParserException("Expected \"",str,p)); - } - break; - case 8: - switch(c) { - case 38: - var len = p - start; - buf.b += len == null ? HxOverrides.substr(str,start,null) : HxOverrides.substr(str,start,len); - state = 18; - escapeNext = 8; - start = p + 1; - break; - case 60:case 62: - if(strict) { - throw new js__$Boot_HaxeError(new haxe_xml_XmlParserException("Invalid unescaped " + String.fromCodePoint(c) + " in attribute value",str,p)); - } else if(c == attrValQuote) { - var len1 = p - start; - buf.b += len1 == null ? HxOverrides.substr(str,start,null) : HxOverrides.substr(str,start,len1); - var val = buf.b; - buf = new StringBuf(); - xml.set(aname,val); - state = 0; - next = 4; - } - break; - default: - if(c == attrValQuote) { - var len2 = p - start; - buf.b += len2 == null ? HxOverrides.substr(str,start,null) : HxOverrides.substr(str,start,len2); - var val1 = buf.b; - buf = new StringBuf(); - xml.set(aname,val1); - state = 0; - next = 4; - } - } - break; - case 9: - p = haxe_xml_Parser.doParse(str,strict,p,xml); - start = p; - state = 1; - break; - case 10: - if(!(c >= 97 && c <= 122 || c >= 65 && c <= 90 || c >= 48 && c <= 57 || c == 58 || c == 46 || c == 95 || c == 45)) { - if(start == p) { - throw new js__$Boot_HaxeError(new haxe_xml_XmlParserException("Expected node name",str,p)); - } - var v = HxOverrides.substr(str,start,p - start); - if(parent == null || parent.nodeType != 0) { - throw new js__$Boot_HaxeError(new haxe_xml_XmlParserException("Unexpected , tag is not open",str,p)); - } - if(parent.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element but found " + _$Xml_XmlType_$Impl_$.toString(parent.nodeType)); - } - if(v != parent.nodeName) { - if(parent.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element but found " + _$Xml_XmlType_$Impl_$.toString(parent.nodeType)); - } - throw new js__$Boot_HaxeError(new haxe_xml_XmlParserException("Expected ",str,p)); - } - state = 0; - next = 12; - continue; - } - break; - case 11: - if(c == 62) { - state = 1; - } else { - throw new js__$Boot_HaxeError(new haxe_xml_XmlParserException("Expected >",str,p)); - } - break; - case 12: - if(c == 62) { - if(nsubs == 0) { - parent.addChild(Xml.createPCData("")); - } - return p; - } else { - throw new js__$Boot_HaxeError(new haxe_xml_XmlParserException("Expected >",str,p)); - } - break; - case 13: - if(c == 60) { - var len3 = p - start; - buf.b += len3 == null ? HxOverrides.substr(str,start,null) : HxOverrides.substr(str,start,len3); - var child = Xml.createPCData(buf.b); - buf = new StringBuf(); - parent.addChild(child); - ++nsubs; - state = 0; - next = 2; - } else if(c == 38) { - var len4 = p - start; - buf.b += len4 == null ? HxOverrides.substr(str,start,null) : HxOverrides.substr(str,start,len4); - state = 18; - escapeNext = 13; - start = p + 1; - } - break; - case 14: - if(c == 63 && str.charCodeAt(p + 1) == 62) { - ++p; - var str1 = HxOverrides.substr(str,start + 1,p - start - 2); - parent.addChild(Xml.createProcessingInstruction(str1)); - ++nsubs; - state = 1; - } - break; - case 15: - if(c == 45 && str.charCodeAt(p + 1) == 45 && str.charCodeAt(p + 2) == 62) { - parent.addChild(Xml.createComment(HxOverrides.substr(str,start,p - start))); - ++nsubs; - p += 2; - state = 1; - } - break; - case 16: - if(c == 91) { - ++nbrackets; - } else if(c == 93) { - --nbrackets; - } else if(c == 62 && nbrackets == 0) { - parent.addChild(Xml.createDocType(HxOverrides.substr(str,start,p - start))); - ++nsubs; - state = 1; - } - break; - case 17: - if(c == 93 && str.charCodeAt(p + 1) == 93 && str.charCodeAt(p + 2) == 62) { - var child1 = Xml.createCData(HxOverrides.substr(str,start,p - start)); - parent.addChild(child1); - ++nsubs; - p += 2; - state = 1; - } - break; - case 18: - if(c == 59) { - var s = HxOverrides.substr(str,start,p - start); - if(s.charCodeAt(0) == 35) { - var c1 = s.charCodeAt(1) == 120 ? Std.parseInt("0" + HxOverrides.substr(s,1,s.length - 1)) : Std.parseInt(HxOverrides.substr(s,1,s.length - 1)); - buf.b += String.fromCodePoint(c1); - } else { - var _this = haxe_xml_Parser.escapes; - if(!(__map_reserved[s] != null ? _this.existsReserved(s) : _this.h.hasOwnProperty(s))) { - if(strict) { - throw new js__$Boot_HaxeError(new haxe_xml_XmlParserException("Undefined entity: " + s,str,p)); - } - buf.b += Std.string("&" + s + ";"); - } else { - var _this1 = haxe_xml_Parser.escapes; - var x = __map_reserved[s] != null ? _this1.getReserved(s) : _this1.h[s]; - buf.b += Std.string(x); - } - } - start = p + 1; - state = escapeNext; - } else if(!(c >= 97 && c <= 122 || c >= 65 && c <= 90 || c >= 48 && c <= 57 || c == 58 || c == 46 || c == 95 || c == 45) && c != 35) { - if(strict) { - throw new js__$Boot_HaxeError(new haxe_xml_XmlParserException("Invalid character in entity: " + String.fromCodePoint(c),str,p)); - } - buf.b += String.fromCodePoint(38); - var len5 = p - start; - buf.b += len5 == null ? HxOverrides.substr(str,start,null) : HxOverrides.substr(str,start,len5); - --p; - start = p + 1; - state = escapeNext; - } - break; - } - c = str.charCodeAt(++p); - } - if(state == 1) { - start = p; - state = 13; - } - if(state == 13) { - if(parent.nodeType == 0) { - if(parent.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element but found " + _$Xml_XmlType_$Impl_$.toString(parent.nodeType)); - } - throw new js__$Boot_HaxeError(new haxe_xml_XmlParserException("Unclosed node <" + parent.nodeName + ">",str,p)); - } - if(p != start || nsubs == 0) { - var len6 = p - start; - buf.b += len6 == null ? HxOverrides.substr(str,start,null) : HxOverrides.substr(str,start,len6); - parent.addChild(Xml.createPCData(buf.b)); - ++nsubs; - } - return p; - } - if(!strict && state == 18 && escapeNext == 13) { - buf.b += String.fromCodePoint(38); - var len7 = p - start; - buf.b += len7 == null ? HxOverrides.substr(str,start,null) : HxOverrides.substr(str,start,len7); - parent.addChild(Xml.createPCData(buf.b)); - ++nsubs; - return p; - } - throw new js__$Boot_HaxeError(new haxe_xml_XmlParserException("Unexpected end",str,p)); -}; -var haxe_xml_Printer = function(pretty) { - this.output = new StringBuf(); - this.pretty = pretty; -}; -$hxClasses["haxe.xml.Printer"] = haxe_xml_Printer; -haxe_xml_Printer.__name__ = "haxe.xml.Printer"; -haxe_xml_Printer.print = function(xml,pretty) { - if(pretty == null) { - pretty = false; - } - var printer = new haxe_xml_Printer(pretty); - printer.writeNode(xml,""); - return printer.output.b; -}; -haxe_xml_Printer.prototype = { - output: null - ,pretty: null - ,writeNode: function(value,tabs) { - switch(value.nodeType) { - case 0: - this.output.b += Std.string(tabs + "<"); - if(value.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element but found " + _$Xml_XmlType_$Impl_$.toString(value.nodeType)); - } - this.output.b += Std.string(value.nodeName); - var attribute = value.attributes(); - while(attribute.hasNext()) { - var attribute1 = attribute.next(); - this.output.b += Std.string(" " + attribute1 + "=\""); - var input = StringTools.htmlEscape(value.get(attribute1),true); - this.output.b += Std.string(input); - this.output.b += "\""; - } - if(this.hasChildren(value)) { - this.output.b += ">"; - if(this.pretty) { - this.output.b += "\n"; - } - if(value.nodeType != Xml.Document && value.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element or Document but found " + _$Xml_XmlType_$Impl_$.toString(value.nodeType)); - } - var child = HxOverrides.iter(value.children); - while(child.hasNext()) { - var child1 = child.next(); - this.writeNode(child1,this.pretty ? tabs + "\t" : tabs); - } - this.output.b += Std.string(tabs + ""; - if(this.pretty) { - this.output.b += "\n"; - } - } else { - this.output.b += "/>"; - if(this.pretty) { - this.output.b += "\n"; - } - } - break; - case 1: - if(value.nodeType == Xml.Document || value.nodeType == Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, unexpected " + _$Xml_XmlType_$Impl_$.toString(value.nodeType)); - } - var nodeValue = value.nodeValue; - if(nodeValue.length != 0) { - var input1 = tabs + StringTools.htmlEscape(nodeValue); - this.output.b += Std.string(input1); - if(this.pretty) { - this.output.b += "\n"; - } - } - break; - case 2: - this.output.b += Std.string(tabs + ""; - if(this.pretty) { - this.output.b += "\n"; - } - break; - case 3: - if(value.nodeType == Xml.Document || value.nodeType == Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, unexpected " + _$Xml_XmlType_$Impl_$.toString(value.nodeType)); - } - var commentContent = value.nodeValue; - var _this_r = new RegExp("[\n\r\t]+","g".split("u").join("")); - commentContent = commentContent.replace(_this_r,""); - commentContent = ""; - this.output.b += tabs == null ? "null" : "" + tabs; - var input2 = StringTools.trim(commentContent); - this.output.b += Std.string(input2); - if(this.pretty) { - this.output.b += "\n"; - } - break; - case 4: - if(value.nodeType == Xml.Document || value.nodeType == Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, unexpected " + _$Xml_XmlType_$Impl_$.toString(value.nodeType)); - } - this.output.b += Std.string(""); - if(this.pretty) { - this.output.b += "\n"; - } - break; - case 5: - if(value.nodeType == Xml.Document || value.nodeType == Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, unexpected " + _$Xml_XmlType_$Impl_$.toString(value.nodeType)); - } - this.output.b += Std.string(""); - if(this.pretty) { - this.output.b += "\n"; - } - break; - case 6: - if(value.nodeType != Xml.Document && value.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element or Document but found " + _$Xml_XmlType_$Impl_$.toString(value.nodeType)); - } - var child2 = HxOverrides.iter(value.children); - while(child2.hasNext()) { - var child3 = child2.next(); - this.writeNode(child3,tabs); - } - break; - } - } - ,hasChildren: function(value) { - if(value.nodeType != Xml.Document && value.nodeType != Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, expected Element or Document but found " + _$Xml_XmlType_$Impl_$.toString(value.nodeType)); - } - var child = HxOverrides.iter(value.children); - while(child.hasNext()) { - var child1 = child.next(); - switch(child1.nodeType) { - case 0:case 1: - return true; - case 2:case 3: - if(child1.nodeType == Xml.Document || child1.nodeType == Xml.Element) { - throw new js__$Boot_HaxeError("Bad node type, unexpected " + _$Xml_XmlType_$Impl_$.toString(child1.nodeType)); - } - if(StringTools.ltrim(child1.nodeValue).length != 0) { - return true; - } - break; - default: - } - } - return false; - } - ,__class__: haxe_xml_Printer -}; -var haxe_zip_ExtraField = $hxEnums["haxe.zip.ExtraField"] = { __ename__ : "haxe.zip.ExtraField", __constructs__ : ["FUnknown","FInfoZipUnicodePath","FUtf8"] - ,FUnknown: ($_=function(tag,bytes) { return {_hx_index:0,tag:tag,bytes:bytes,__enum__:"haxe.zip.ExtraField",toString:$estr}; },$_.__params__ = ["tag","bytes"],$_) - ,FInfoZipUnicodePath: ($_=function(name,crc) { return {_hx_index:1,name:name,crc:crc,__enum__:"haxe.zip.ExtraField",toString:$estr}; },$_.__params__ = ["name","crc"],$_) - ,FUtf8: {_hx_index:2,__enum__:"haxe.zip.ExtraField",toString:$estr} -}; -var haxe_zip_Huffman = $hxEnums["haxe.zip.Huffman"] = { __ename__ : "haxe.zip.Huffman", __constructs__ : ["Found","NeedBit","NeedBits"] - ,Found: ($_=function(i) { return {_hx_index:0,i:i,__enum__:"haxe.zip.Huffman",toString:$estr}; },$_.__params__ = ["i"],$_) - ,NeedBit: ($_=function(left,right) { return {_hx_index:1,left:left,right:right,__enum__:"haxe.zip.Huffman",toString:$estr}; },$_.__params__ = ["left","right"],$_) - ,NeedBits: ($_=function(n,table) { return {_hx_index:2,n:n,table:table,__enum__:"haxe.zip.Huffman",toString:$estr}; },$_.__params__ = ["n","table"],$_) -}; -var haxe_zip_HuffTools = function() { -}; -$hxClasses["haxe.zip.HuffTools"] = haxe_zip_HuffTools; -haxe_zip_HuffTools.__name__ = "haxe.zip.HuffTools"; -haxe_zip_HuffTools.prototype = { - treeDepth: function(t) { - switch(t._hx_index) { - case 0: - var _g = t.i; - return 0; - case 1: - var b = t.right; - var a = t.left; - var da = this.treeDepth(a); - var db = this.treeDepth(b); - return 1 + (da < db ? da : db); - case 2: - var _g2 = t.table; - var _g1 = t.n; - throw new js__$Boot_HaxeError("assert"); - } - } - ,treeCompress: function(t) { - var d = this.treeDepth(t); - if(d == 0) { - return t; - } - if(d == 1) { - if(t._hx_index == 1) { - var b = t.right; - var a = t.left; - return haxe_zip_Huffman.NeedBit(this.treeCompress(a),this.treeCompress(b)); - } else { - throw new js__$Boot_HaxeError("assert"); - } - } - var size = 1 << d; - var table = []; - var _g = 0; - var _g1 = size; - while(_g < _g1) { - var i = _g++; - table.push(haxe_zip_Huffman.Found(-1)); - } - this.treeWalk(table,0,0,d,t); - return haxe_zip_Huffman.NeedBits(d,table); - } - ,treeWalk: function(table,p,cd,d,t) { - if(t._hx_index == 1) { - var b = t.right; - var a = t.left; - if(d > 0) { - this.treeWalk(table,p,cd + 1,d - 1,a); - this.treeWalk(table,p | 1 << cd,cd + 1,d - 1,b); - } else { - table[p] = this.treeCompress(t); - } - } else { - table[p] = this.treeCompress(t); - } - } - ,treeMake: function(bits,maxbits,v,len) { - if(len > maxbits) { - throw new js__$Boot_HaxeError("Invalid huffman"); - } - var idx = v << 5 | len; - if(bits.h.hasOwnProperty(idx)) { - return haxe_zip_Huffman.Found(bits.h[idx]); - } - v <<= 1; - ++len; - return haxe_zip_Huffman.NeedBit(this.treeMake(bits,maxbits,v,len),this.treeMake(bits,maxbits,v | 1,len)); - } - ,make: function(lengths,pos,nlengths,maxbits) { - if(nlengths == 1) { - return haxe_zip_Huffman.NeedBit(haxe_zip_Huffman.Found(0),haxe_zip_Huffman.Found(0)); - } - var counts = []; - var tmp = []; - if(maxbits > 32) { - throw new js__$Boot_HaxeError("Invalid huffman"); - } - var _g = 0; - var _g1 = maxbits; - while(_g < _g1) { - var i = _g++; - counts.push(0); - tmp.push(0); - } - var _g2 = 0; - var _g3 = nlengths; - while(_g2 < _g3) { - var i1 = _g2++; - var p = lengths[i1 + pos]; - if(p >= maxbits) { - throw new js__$Boot_HaxeError("Invalid huffman"); - } - counts[p]++; - } - var code = 0; - var _g4 = 1; - var _g5 = maxbits - 1; - while(_g4 < _g5) { - var i2 = _g4++; - code = code + counts[i2] << 1; - tmp[i2] = code; - } - var bits = new haxe_ds_IntMap(); - var _g6 = 0; - var _g7 = nlengths; - while(_g6 < _g7) { - var i3 = _g6++; - var l = lengths[i3 + pos]; - if(l != 0) { - var n = tmp[l - 1]; - tmp[l - 1] = n + 1; - bits.h[n << 5 | l] = i3; - } - } - return this.treeCompress(haxe_zip_Huffman.NeedBit(this.treeMake(bits,maxbits,0,1),this.treeMake(bits,maxbits,1,1))); - } - ,__class__: haxe_zip_HuffTools -}; -var haxe_zip__$InflateImpl_Window = function(hasCrc) { - this.buffer = new haxe_io_Bytes(new ArrayBuffer(65536)); - this.pos = 0; - if(hasCrc) { - this.crc = new haxe_crypto_Adler32(); - } -}; -$hxClasses["haxe.zip._InflateImpl.Window"] = haxe_zip__$InflateImpl_Window; -haxe_zip__$InflateImpl_Window.__name__ = "haxe.zip._InflateImpl.Window"; -haxe_zip__$InflateImpl_Window.prototype = { - buffer: null - ,pos: null - ,crc: null - ,slide: function() { - if(this.crc != null) { - this.crc.update(this.buffer,0,32768); - } - var b = new haxe_io_Bytes(new ArrayBuffer(65536)); - this.pos -= 32768; - b.blit(0,this.buffer,32768,this.pos); - this.buffer = b; - } - ,addBytes: function(b,p,len) { - if(this.pos + len > 65536) { - this.slide(); - } - this.buffer.blit(this.pos,b,p,len); - this.pos += len; - } - ,addByte: function(c) { - if(this.pos == 65536) { - this.slide(); - } - this.buffer.b[this.pos] = c & 255; - this.pos++; - } - ,getLastChar: function() { - return this.buffer.b[this.pos - 1]; - } - ,available: function() { - return this.pos; - } - ,checksum: function() { - if(this.crc != null) { - this.crc.update(this.buffer,0,this.pos); - } - return this.crc; - } - ,__class__: haxe_zip__$InflateImpl_Window -}; -var haxe_zip__$InflateImpl_State = $hxEnums["haxe.zip._InflateImpl.State"] = { __ename__ : "haxe.zip._InflateImpl.State", __constructs__ : ["Head","Block","CData","Flat","Crc","Dist","DistOne","Done"] - ,Head: {_hx_index:0,__enum__:"haxe.zip._InflateImpl.State",toString:$estr} - ,Block: {_hx_index:1,__enum__:"haxe.zip._InflateImpl.State",toString:$estr} - ,CData: {_hx_index:2,__enum__:"haxe.zip._InflateImpl.State",toString:$estr} - ,Flat: {_hx_index:3,__enum__:"haxe.zip._InflateImpl.State",toString:$estr} - ,Crc: {_hx_index:4,__enum__:"haxe.zip._InflateImpl.State",toString:$estr} - ,Dist: {_hx_index:5,__enum__:"haxe.zip._InflateImpl.State",toString:$estr} - ,DistOne: {_hx_index:6,__enum__:"haxe.zip._InflateImpl.State",toString:$estr} - ,Done: {_hx_index:7,__enum__:"haxe.zip._InflateImpl.State",toString:$estr} -}; -var haxe_zip_InflateImpl = function(i,header,crc) { - if(crc == null) { - crc = true; - } - if(header == null) { - header = true; - } - this.isFinal = false; - this.htools = new haxe_zip_HuffTools(); - this.huffman = this.buildFixedHuffman(); - this.huffdist = null; - this.len = 0; - this.dist = 0; - this.state = header ? haxe_zip__$InflateImpl_State.Head : haxe_zip__$InflateImpl_State.Block; - this.input = i; - this.bits = 0; - this.nbits = 0; - this.needed = 0; - this.output = null; - this.outpos = 0; - this.lengths = []; - this.lengths.push(-1); - this.lengths.push(-1); - this.lengths.push(-1); - this.lengths.push(-1); - this.lengths.push(-1); - this.lengths.push(-1); - this.lengths.push(-1); - this.lengths.push(-1); - this.lengths.push(-1); - this.lengths.push(-1); - this.lengths.push(-1); - this.lengths.push(-1); - this.lengths.push(-1); - this.lengths.push(-1); - this.lengths.push(-1); - this.lengths.push(-1); - this.lengths.push(-1); - this.lengths.push(-1); - this.lengths.push(-1); - this.window = new haxe_zip__$InflateImpl_Window(crc); -}; -$hxClasses["haxe.zip.InflateImpl"] = haxe_zip_InflateImpl; -haxe_zip_InflateImpl.__name__ = "haxe.zip.InflateImpl"; -haxe_zip_InflateImpl.prototype = { - nbits: null - ,bits: null - ,state: null - ,isFinal: null - ,huffman: null - ,huffdist: null - ,htools: null - ,len: null - ,dist: null - ,needed: null - ,output: null - ,outpos: null - ,input: null - ,lengths: null - ,window: null - ,buildFixedHuffman: function() { - if(haxe_zip_InflateImpl.FIXED_HUFFMAN != null) { - return haxe_zip_InflateImpl.FIXED_HUFFMAN; - } - var a = []; - var _g = 0; - while(_g < 288) { - var n = _g++; - a.push(n <= 143 ? 8 : n <= 255 ? 9 : n <= 279 ? 7 : 8); - } - haxe_zip_InflateImpl.FIXED_HUFFMAN = this.htools.make(a,0,288,10); - return haxe_zip_InflateImpl.FIXED_HUFFMAN; - } - ,readBytes: function(b,pos,len) { - this.needed = len; - this.outpos = pos; - this.output = b; - if(len > 0) { - while(this.inflateLoop()) { - } - } - return len - this.needed; - } - ,getBits: function(n) { - while(this.nbits < n) { - this.bits |= this.input.readByte() << this.nbits; - this.nbits += 8; - } - var b = this.bits & (1 << n) - 1; - this.nbits -= n; - this.bits >>= n; - return b; - } - ,getBit: function() { - if(this.nbits == 0) { - this.nbits = 8; - this.bits = this.input.readByte(); - } - var b = (this.bits & 1) == 1; - this.nbits--; - this.bits >>= 1; - return b; - } - ,getRevBits: function(n) { - if(n == 0) { - return 0; - } else if(this.getBit()) { - return 1 << n - 1 | this.getRevBits(n - 1); - } else { - return this.getRevBits(n - 1); - } - } - ,resetBits: function() { - this.bits = 0; - this.nbits = 0; - } - ,addBytes: function(b,p,len) { - this.window.addBytes(b,p,len); - this.output.blit(this.outpos,b,p,len); - this.needed -= len; - this.outpos += len; - } - ,addByte: function(b) { - this.window.addByte(b); - this.output.b[this.outpos] = b & 255; - this.needed--; - this.outpos++; - } - ,addDistOne: function(n) { - var c = this.window.getLastChar(); - var _g = 0; - var _g1 = n; - while(_g < _g1) { - var i = _g++; - this.addByte(c); - } - } - ,addDist: function(d,len) { - this.addBytes(this.window.buffer,this.window.pos - d,len); - } - ,applyHuffman: function(h) { - switch(h._hx_index) { - case 0: - var n = h.i; - return n; - case 1: - var b = h.right; - var a = h.left; - return this.applyHuffman(this.getBit() ? b : a); - case 2: - var tbl = h.table; - var n1 = h.n; - return this.applyHuffman(tbl[this.getBits(n1)]); - } - } - ,inflateLengths: function(a,max) { - var i = 0; - var prev = 0; - while(i < max) { - var n = this.applyHuffman(this.huffman); - switch(n) { - case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15: - prev = n; - a[i] = n; - ++i; - break; - case 16: - var end = i + 3 + this.getBits(2); - if(end > max) { - throw new js__$Boot_HaxeError("Invalid data"); - } - while(i < end) { - a[i] = prev; - ++i; - } - break; - case 17: - i += 3 + this.getBits(3); - if(i > max) { - throw new js__$Boot_HaxeError("Invalid data"); - } - break; - case 18: - i += 11 + this.getBits(7); - if(i > max) { - throw new js__$Boot_HaxeError("Invalid data"); - } - break; - default: - throw new js__$Boot_HaxeError("Invalid data"); - } - } - } - ,inflateLoop: function() { - switch(this.state._hx_index) { - case 0: - var cmf = this.input.readByte(); - var cm = cmf & 15; - var cinfo = cmf >> 4; - if(cm != 8) { - throw new js__$Boot_HaxeError("Invalid data"); - } - var flg = this.input.readByte(); - var fdict = (flg & 32) != 0; - if(((cmf << 8) + flg) % 31 != 0) { - throw new js__$Boot_HaxeError("Invalid data"); - } - if(fdict) { - throw new js__$Boot_HaxeError("Unsupported dictionary"); - } - this.state = haxe_zip__$InflateImpl_State.Block; - return true; - case 1: - this.isFinal = this.getBit(); - switch(this.getBits(2)) { - case 0: - this.len = this.input.readUInt16(); - var nlen = this.input.readUInt16(); - if(nlen != 65535 - this.len) { - throw new js__$Boot_HaxeError("Invalid data"); - } - this.state = haxe_zip__$InflateImpl_State.Flat; - var r = this.inflateLoop(); - this.resetBits(); - return r; - case 1: - this.huffman = this.buildFixedHuffman(); - this.huffdist = null; - this.state = haxe_zip__$InflateImpl_State.CData; - return true; - case 2: - var hlit = this.getBits(5) + 257; - var hdist = this.getBits(5) + 1; - var hclen = this.getBits(4) + 4; - var _g = 0; - var _g1 = hclen; - while(_g < _g1) { - var i = _g++; - this.lengths[haxe_zip_InflateImpl.CODE_LENGTHS_POS[i]] = this.getBits(3); - } - var _g2 = hclen; - var _g3 = 19; - while(_g2 < _g3) { - var i1 = _g2++; - this.lengths[haxe_zip_InflateImpl.CODE_LENGTHS_POS[i1]] = 0; - } - this.huffman = this.htools.make(this.lengths,0,19,8); - var lengths = []; - var _g4 = 0; - var _g5 = hlit + hdist; - while(_g4 < _g5) { - var i2 = _g4++; - lengths.push(0); - } - this.inflateLengths(lengths,hlit + hdist); - this.huffdist = this.htools.make(lengths,hlit,hdist,16); - this.huffman = this.htools.make(lengths,0,hlit,16); - this.state = haxe_zip__$InflateImpl_State.CData; - return true; - default: - throw new js__$Boot_HaxeError("Invalid data"); - } - break; - case 2: - var n = this.applyHuffman(this.huffman); - if(n < 256) { - this.addByte(n); - return this.needed > 0; - } else if(n == 256) { - this.state = this.isFinal ? haxe_zip__$InflateImpl_State.Crc : haxe_zip__$InflateImpl_State.Block; - return true; - } else { - n -= 257; - var extra_bits = haxe_zip_InflateImpl.LEN_EXTRA_BITS_TBL[n]; - if(extra_bits == -1) { - throw new js__$Boot_HaxeError("Invalid data"); - } - this.len = haxe_zip_InflateImpl.LEN_BASE_VAL_TBL[n] + this.getBits(extra_bits); - var dist_code = this.huffdist == null ? this.getRevBits(5) : this.applyHuffman(this.huffdist); - extra_bits = haxe_zip_InflateImpl.DIST_EXTRA_BITS_TBL[dist_code]; - if(extra_bits == -1) { - throw new js__$Boot_HaxeError("Invalid data"); - } - this.dist = haxe_zip_InflateImpl.DIST_BASE_VAL_TBL[dist_code] + this.getBits(extra_bits); - if(this.dist > this.window.available()) { - throw new js__$Boot_HaxeError("Invalid data"); - } - this.state = this.dist == 1 ? haxe_zip__$InflateImpl_State.DistOne : haxe_zip__$InflateImpl_State.Dist; - return true; - } - break; - case 3: - var rlen = this.len < this.needed ? this.len : this.needed; - var bytes = this.input.read(rlen); - this.len -= rlen; - this.addBytes(bytes,0,rlen); - if(this.len == 0) { - this.state = this.isFinal ? haxe_zip__$InflateImpl_State.Crc : haxe_zip__$InflateImpl_State.Block; - } - return this.needed > 0; - case 4: - var calc = this.window.checksum(); - if(calc == null) { - this.state = haxe_zip__$InflateImpl_State.Done; - return true; - } - var crc = haxe_crypto_Adler32.read(this.input); - if(!calc.equals(crc)) { - throw new js__$Boot_HaxeError("Invalid CRC"); - } - this.state = haxe_zip__$InflateImpl_State.Done; - return true; - case 5: - while(this.len > 0 && this.needed > 0) { - var rdist = this.len < this.dist ? this.len : this.dist; - var rlen1 = this.needed < rdist ? this.needed : rdist; - this.addDist(this.dist,rlen1); - this.len -= rlen1; - } - if(this.len == 0) { - this.state = haxe_zip__$InflateImpl_State.CData; - } - return this.needed > 0; - case 6: - var rlen2 = this.len < this.needed ? this.len : this.needed; - this.addDistOne(rlen2); - this.len -= rlen2; - if(this.len == 0) { - this.state = haxe_zip__$InflateImpl_State.CData; - } - return this.needed > 0; - case 7: - return false; - } - } - ,__class__: haxe_zip_InflateImpl -}; -var haxe_zip_Reader = function(i) { - this.i = i; -}; -$hxClasses["haxe.zip.Reader"] = haxe_zip_Reader; -haxe_zip_Reader.__name__ = "haxe.zip.Reader"; -haxe_zip_Reader.readZip = function(i) { - var r = new haxe_zip_Reader(i); - return r.read(); -}; -haxe_zip_Reader.unzip = function(f) { - if(!f.compressed) { - return f.data; - } - throw new js__$Boot_HaxeError("No uncompress support"); -}; -haxe_zip_Reader.prototype = { - i: null - ,readZipDate: function() { - var t = this.i.readUInt16(); - var hour = t >> 11 & 31; - var min = t >> 5 & 63; - var sec = t & 31; - var d = this.i.readUInt16(); - var year = d >> 9; - var month = d >> 5 & 15; - var day = d & 31; - return new Date(year + 1980,month - 1,day,hour,min,sec << 1); - } - ,readExtraFields: function(length) { - var fields = new haxe_ds_List(); - while(length > 0) { - if(length < 4) { - throw new js__$Boot_HaxeError("Invalid extra fields data"); - } - var tag = this.i.readUInt16(); - var len = this.i.readUInt16(); - if(length < len) { - throw new js__$Boot_HaxeError("Invalid extra fields data"); - } - if(tag == 28789) { - var version = this.i.readByte(); - if(version != 1) { - var data = new haxe_io_BytesBuffer(); - data.addByte(version); - data.add(this.i.read(len - 1)); - fields.add(haxe_zip_ExtraField.FUnknown(tag,data.getBytes())); - } else { - var crc = this.i.readInt32(); - var name = this.i.read(len - 5).toString(); - fields.add(haxe_zip_ExtraField.FInfoZipUnicodePath(name,crc)); - } - } else { - fields.add(haxe_zip_ExtraField.FUnknown(tag,this.i.read(len))); - } - length -= 4 + len; - } - return fields; - } - ,readEntryHeader: function() { - var i = this.i; - var h = i.readInt32(); - if(h == 33639248 || h == 101010256) { - return null; - } - if(h != 67324752) { - throw new js__$Boot_HaxeError("Invalid Zip Data"); - } - var version = i.readUInt16(); - var flags = i.readUInt16(); - var utf8 = (flags & 2048) != 0; - var compression = i.readUInt16(); - var compressed = compression != 0; - if(compressed && compression != 8) { - throw new js__$Boot_HaxeError("Unsupported compression " + compression); - } - var mtime = this.readZipDate(); - var crc32 = i.readInt32(); - var csize = i.readInt32(); - var usize = i.readInt32(); - var fnamelen = i.readInt16(); - var elen = i.readInt16(); - var fname = i.readString(fnamelen); - var fields = this.readExtraFields(elen); - if(utf8) { - fields.push(haxe_zip_ExtraField.FUtf8); - } - var data = null; - if((flags & 8) != 0) { - csize = -1; - } - return { fileName : fname, fileSize : usize, fileTime : mtime, compressed : compressed, dataSize : csize, data : data, crc32 : crc32, extraFields : fields}; - } - ,read: function() { - var l = new haxe_ds_List(); - var buf = null; - var tmp = null; - while(true) { - var e = this.readEntryHeader(); - if(e == null) { - break; - } - if(e.dataSize < 0) { - var bufSize = 65536; - if(tmp == null) { - tmp = new haxe_io_Bytes(new ArrayBuffer(bufSize)); - } - var out = new haxe_io_BytesBuffer(); - var z = new haxe_zip_InflateImpl(this.i,false,false); - while(true) { - var n = z.readBytes(tmp,0,bufSize); - out.addBytes(tmp,0,n); - if(n < bufSize) { - break; - } - } - e.data = out.getBytes(); - e.crc32 = this.i.readInt32(); - if(e.crc32 == 134695760) { - e.crc32 = this.i.readInt32(); - } - e.dataSize = this.i.readInt32(); - e.fileSize = this.i.readInt32(); - e.dataSize = e.fileSize; - e.compressed = false; - } else { - e.data = this.i.read(e.dataSize); - } - l.add(e); - } - return l; - } - ,__class__: haxe_zip_Reader -}; -var hscript_Const = $hxEnums["hscript.Const"] = { __ename__ : "hscript.Const", __constructs__ : ["CInt","CFloat","CString"] - ,CInt: ($_=function(v) { return {_hx_index:0,v:v,__enum__:"hscript.Const",toString:$estr}; },$_.__params__ = ["v"],$_) - ,CFloat: ($_=function(f) { return {_hx_index:1,f:f,__enum__:"hscript.Const",toString:$estr}; },$_.__params__ = ["f"],$_) - ,CString: ($_=function(s) { return {_hx_index:2,s:s,__enum__:"hscript.Const",toString:$estr}; },$_.__params__ = ["s"],$_) -}; -var hscript_Expr = $hxEnums["hscript.Expr"] = { __ename__ : "hscript.Expr", __constructs__ : ["EConst","EIdent","EVar","EParent","EBlock","EField","EBinop","EUnop","ECall","EIf","EWhile","EFor","EBreak","EContinue","EFunction","EReturn","EArray","EArrayDecl","ENew","EThrow","ETry","EObject","ETernary","ESwitch","EDoWhile","EMeta","ECheckType"] - ,EConst: ($_=function(c) { return {_hx_index:0,c:c,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["c"],$_) - ,EIdent: ($_=function(v) { return {_hx_index:1,v:v,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["v"],$_) - ,EVar: ($_=function(n,t,e) { return {_hx_index:2,n:n,t:t,e:e,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["n","t","e"],$_) - ,EParent: ($_=function(e) { return {_hx_index:3,e:e,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["e"],$_) - ,EBlock: ($_=function(e) { return {_hx_index:4,e:e,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["e"],$_) - ,EField: ($_=function(e,f) { return {_hx_index:5,e:e,f:f,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["e","f"],$_) - ,EBinop: ($_=function(op,e1,e2) { return {_hx_index:6,op:op,e1:e1,e2:e2,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["op","e1","e2"],$_) - ,EUnop: ($_=function(op,prefix,e) { return {_hx_index:7,op:op,prefix:prefix,e:e,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["op","prefix","e"],$_) - ,ECall: ($_=function(e,params) { return {_hx_index:8,e:e,params:params,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["e","params"],$_) - ,EIf: ($_=function(cond,e1,e2) { return {_hx_index:9,cond:cond,e1:e1,e2:e2,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["cond","e1","e2"],$_) - ,EWhile: ($_=function(cond,e) { return {_hx_index:10,cond:cond,e:e,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["cond","e"],$_) - ,EFor: ($_=function(v,it,e) { return {_hx_index:11,v:v,it:it,e:e,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["v","it","e"],$_) - ,EBreak: {_hx_index:12,__enum__:"hscript.Expr",toString:$estr} - ,EContinue: {_hx_index:13,__enum__:"hscript.Expr",toString:$estr} - ,EFunction: ($_=function(args,e,name,ret) { return {_hx_index:14,args:args,e:e,name:name,ret:ret,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["args","e","name","ret"],$_) - ,EReturn: ($_=function(e) { return {_hx_index:15,e:e,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["e"],$_) - ,EArray: ($_=function(e,index) { return {_hx_index:16,e:e,index:index,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["e","index"],$_) - ,EArrayDecl: ($_=function(e) { return {_hx_index:17,e:e,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["e"],$_) - ,ENew: ($_=function(cl,params) { return {_hx_index:18,cl:cl,params:params,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["cl","params"],$_) - ,EThrow: ($_=function(e) { return {_hx_index:19,e:e,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["e"],$_) - ,ETry: ($_=function(e,v,t,ecatch) { return {_hx_index:20,e:e,v:v,t:t,ecatch:ecatch,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["e","v","t","ecatch"],$_) - ,EObject: ($_=function(fl) { return {_hx_index:21,fl:fl,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["fl"],$_) - ,ETernary: ($_=function(cond,e1,e2) { return {_hx_index:22,cond:cond,e1:e1,e2:e2,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["cond","e1","e2"],$_) - ,ESwitch: ($_=function(e,cases,defaultExpr) { return {_hx_index:23,e:e,cases:cases,defaultExpr:defaultExpr,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["e","cases","defaultExpr"],$_) - ,EDoWhile: ($_=function(cond,e) { return {_hx_index:24,cond:cond,e:e,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["cond","e"],$_) - ,EMeta: ($_=function(name,args,e) { return {_hx_index:25,name:name,args:args,e:e,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["name","args","e"],$_) - ,ECheckType: ($_=function(e,t) { return {_hx_index:26,e:e,t:t,__enum__:"hscript.Expr",toString:$estr}; },$_.__params__ = ["e","t"],$_) -}; -var hscript_CType = $hxEnums["hscript.CType"] = { __ename__ : "hscript.CType", __constructs__ : ["CTPath","CTFun","CTAnon","CTParent","CTOpt","CTNamed"] - ,CTPath: ($_=function(path,params) { return {_hx_index:0,path:path,params:params,__enum__:"hscript.CType",toString:$estr}; },$_.__params__ = ["path","params"],$_) - ,CTFun: ($_=function(args,ret) { return {_hx_index:1,args:args,ret:ret,__enum__:"hscript.CType",toString:$estr}; },$_.__params__ = ["args","ret"],$_) - ,CTAnon: ($_=function(fields) { return {_hx_index:2,fields:fields,__enum__:"hscript.CType",toString:$estr}; },$_.__params__ = ["fields"],$_) - ,CTParent: ($_=function(t) { return {_hx_index:3,t:t,__enum__:"hscript.CType",toString:$estr}; },$_.__params__ = ["t"],$_) - ,CTOpt: ($_=function(t) { return {_hx_index:4,t:t,__enum__:"hscript.CType",toString:$estr}; },$_.__params__ = ["t"],$_) - ,CTNamed: ($_=function(n,t) { return {_hx_index:5,n:n,t:t,__enum__:"hscript.CType",toString:$estr}; },$_.__params__ = ["n","t"],$_) -}; -var hscript_Error = $hxEnums["hscript.Error"] = { __ename__ : "hscript.Error", __constructs__ : ["EInvalidChar","EUnexpected","EUnterminatedString","EUnterminatedComment","EInvalidPreprocessor","EUnknownVariable","EInvalidIterator","EInvalidOp","EInvalidAccess","ECustom"] - ,EInvalidChar: ($_=function(c) { return {_hx_index:0,c:c,__enum__:"hscript.Error",toString:$estr}; },$_.__params__ = ["c"],$_) - ,EUnexpected: ($_=function(s) { return {_hx_index:1,s:s,__enum__:"hscript.Error",toString:$estr}; },$_.__params__ = ["s"],$_) - ,EUnterminatedString: {_hx_index:2,__enum__:"hscript.Error",toString:$estr} - ,EUnterminatedComment: {_hx_index:3,__enum__:"hscript.Error",toString:$estr} - ,EInvalidPreprocessor: ($_=function(msg) { return {_hx_index:4,msg:msg,__enum__:"hscript.Error",toString:$estr}; },$_.__params__ = ["msg"],$_) - ,EUnknownVariable: ($_=function(v) { return {_hx_index:5,v:v,__enum__:"hscript.Error",toString:$estr}; },$_.__params__ = ["v"],$_) - ,EInvalidIterator: ($_=function(v) { return {_hx_index:6,v:v,__enum__:"hscript.Error",toString:$estr}; },$_.__params__ = ["v"],$_) - ,EInvalidOp: ($_=function(op) { return {_hx_index:7,op:op,__enum__:"hscript.Error",toString:$estr}; },$_.__params__ = ["op"],$_) - ,EInvalidAccess: ($_=function(f) { return {_hx_index:8,f:f,__enum__:"hscript.Error",toString:$estr}; },$_.__params__ = ["f"],$_) - ,ECustom: ($_=function(msg) { return {_hx_index:9,msg:msg,__enum__:"hscript.Error",toString:$estr}; },$_.__params__ = ["msg"],$_) -}; -var hscript_ModuleDecl = $hxEnums["hscript.ModuleDecl"] = { __ename__ : "hscript.ModuleDecl", __constructs__ : ["DPackage","DImport","DClass","DTypedef"] - ,DPackage: ($_=function(path) { return {_hx_index:0,path:path,__enum__:"hscript.ModuleDecl",toString:$estr}; },$_.__params__ = ["path"],$_) - ,DImport: ($_=function(path,everything) { return {_hx_index:1,path:path,everything:everything,__enum__:"hscript.ModuleDecl",toString:$estr}; },$_.__params__ = ["path","everything"],$_) - ,DClass: ($_=function(c) { return {_hx_index:2,c:c,__enum__:"hscript.ModuleDecl",toString:$estr}; },$_.__params__ = ["c"],$_) - ,DTypedef: ($_=function(c) { return {_hx_index:3,c:c,__enum__:"hscript.ModuleDecl",toString:$estr}; },$_.__params__ = ["c"],$_) -}; -var hscript_FieldAccess = $hxEnums["hscript.FieldAccess"] = { __ename__ : "hscript.FieldAccess", __constructs__ : ["APublic","APrivate","AInline","AOverride","AStatic","AMacro"] - ,APublic: {_hx_index:0,__enum__:"hscript.FieldAccess",toString:$estr} - ,APrivate: {_hx_index:1,__enum__:"hscript.FieldAccess",toString:$estr} - ,AInline: {_hx_index:2,__enum__:"hscript.FieldAccess",toString:$estr} - ,AOverride: {_hx_index:3,__enum__:"hscript.FieldAccess",toString:$estr} - ,AStatic: {_hx_index:4,__enum__:"hscript.FieldAccess",toString:$estr} - ,AMacro: {_hx_index:5,__enum__:"hscript.FieldAccess",toString:$estr} -}; -var hscript_FieldKind = $hxEnums["hscript.FieldKind"] = { __ename__ : "hscript.FieldKind", __constructs__ : ["KFunction","KVar"] - ,KFunction: ($_=function(f) { return {_hx_index:0,f:f,__enum__:"hscript.FieldKind",toString:$estr}; },$_.__params__ = ["f"],$_) - ,KVar: ($_=function(v) { return {_hx_index:1,v:v,__enum__:"hscript.FieldKind",toString:$estr}; },$_.__params__ = ["v"],$_) -}; -var hscript__$Interp_Stop = $hxEnums["hscript._Interp.Stop"] = { __ename__ : "hscript._Interp.Stop", __constructs__ : ["SBreak","SContinue","SReturn"] - ,SBreak: {_hx_index:0,__enum__:"hscript._Interp.Stop",toString:$estr} - ,SContinue: {_hx_index:1,__enum__:"hscript._Interp.Stop",toString:$estr} - ,SReturn: {_hx_index:2,__enum__:"hscript._Interp.Stop",toString:$estr} -}; -var hscript_Token = $hxEnums["hscript.Token"] = { __ename__ : "hscript.Token", __constructs__ : ["TEof","TConst","TId","TOp","TPOpen","TPClose","TBrOpen","TBrClose","TDot","TComma","TSemicolon","TBkOpen","TBkClose","TQuestion","TDoubleDot","TMeta","TPrepro"] - ,TEof: {_hx_index:0,__enum__:"hscript.Token",toString:$estr} - ,TConst: ($_=function(c) { return {_hx_index:1,c:c,__enum__:"hscript.Token",toString:$estr}; },$_.__params__ = ["c"],$_) - ,TId: ($_=function(s) { return {_hx_index:2,s:s,__enum__:"hscript.Token",toString:$estr}; },$_.__params__ = ["s"],$_) - ,TOp: ($_=function(s) { return {_hx_index:3,s:s,__enum__:"hscript.Token",toString:$estr}; },$_.__params__ = ["s"],$_) - ,TPOpen: {_hx_index:4,__enum__:"hscript.Token",toString:$estr} - ,TPClose: {_hx_index:5,__enum__:"hscript.Token",toString:$estr} - ,TBrOpen: {_hx_index:6,__enum__:"hscript.Token",toString:$estr} - ,TBrClose: {_hx_index:7,__enum__:"hscript.Token",toString:$estr} - ,TDot: {_hx_index:8,__enum__:"hscript.Token",toString:$estr} - ,TComma: {_hx_index:9,__enum__:"hscript.Token",toString:$estr} - ,TSemicolon: {_hx_index:10,__enum__:"hscript.Token",toString:$estr} - ,TBkOpen: {_hx_index:11,__enum__:"hscript.Token",toString:$estr} - ,TBkClose: {_hx_index:12,__enum__:"hscript.Token",toString:$estr} - ,TQuestion: {_hx_index:13,__enum__:"hscript.Token",toString:$estr} - ,TDoubleDot: {_hx_index:14,__enum__:"hscript.Token",toString:$estr} - ,TMeta: ($_=function(s) { return {_hx_index:15,s:s,__enum__:"hscript.Token",toString:$estr}; },$_.__params__ = ["s"],$_) - ,TPrepro: ($_=function(s) { return {_hx_index:16,s:s,__enum__:"hscript.Token",toString:$estr}; },$_.__params__ = ["s"],$_) -}; -var hscript_Parser = function() { - this.uid = 0; - this.preprocesorValues = new haxe_ds_StringMap(); - this.line = 1; - this.opChars = "+*/-=!><&|^%~"; - this.identChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_"; - var priorities = [["%"],["*","/"],["+","-"],["<<",">>",">>>"],["|","&","^"],["==","!=",">","<",">=","<="],["..."],["&&"],["||"],["=","+=","-=","*=","/=","%=","<<=",">>=",">>>=","|=","&=","^=","=>"]]; - this.opPriority = new haxe_ds_StringMap(); - this.opRightAssoc = new haxe_ds_StringMap(); - this.unops = new haxe_ds_StringMap(); - var _g = 0; - var _g1 = priorities.length; - while(_g < _g1) { - var i = _g++; - var _g2 = 0; - var _g11 = priorities[i]; - while(_g2 < _g11.length) { - var x = _g11[_g2]; - ++_g2; - var _this = this.opPriority; - if(__map_reserved[x] != null) { - _this.setReserved(x,i); - } else { - _this.h[x] = i; - } - if(i == 9) { - var _this1 = this.opRightAssoc; - if(__map_reserved[x] != null) { - _this1.setReserved(x,true); - } else { - _this1.h[x] = true; - } - } - } - } - var x1 = "!"; - var _this2 = this.unops; - var value = x1 == "++" || x1 == "--"; - if(__map_reserved[x1] != null) { - _this2.setReserved(x1,value); - } else { - _this2.h[x1] = value; - } - var x2 = "++"; - var _this3 = this.unops; - var value1 = x2 == "++" || x2 == "--"; - if(__map_reserved[x2] != null) { - _this3.setReserved(x2,value1); - } else { - _this3.h[x2] = value1; - } - var x3 = "--"; - var _this4 = this.unops; - var value2 = x3 == "++" || x3 == "--"; - if(__map_reserved[x3] != null) { - _this4.setReserved(x3,value2); - } else { - _this4.h[x3] = value2; - } - var x4 = "-"; - var _this5 = this.unops; - var value3 = x4 == "++" || x4 == "--"; - if(__map_reserved[x4] != null) { - _this5.setReserved(x4,value3); - } else { - _this5.h[x4] = value3; - } - var x5 = "~"; - var _this6 = this.unops; - var value4 = x5 == "++" || x5 == "--"; - if(__map_reserved[x5] != null) { - _this6.setReserved(x5,value4); - } else { - _this6.h[x5] = value4; - } -}; -$hxClasses["hscript.Parser"] = hscript_Parser; -hscript_Parser.__name__ = "hscript.Parser"; -hscript_Parser.prototype = { - line: null - ,opChars: null - ,identChars: null - ,opPriority: null - ,opRightAssoc: null - ,unops: null - ,preprocesorValues: null - ,allowJSON: null - ,allowTypes: null - ,allowMetadata: null - ,input: null - ,char: null - ,ops: null - ,idents: null - ,uid: null - ,tokens: null - ,error: function(err,pmin,pmax) { - throw new js__$Boot_HaxeError(err); - } - ,invalidChar: function(c) { - throw new js__$Boot_HaxeError(hscript_Error.EInvalidChar(c)); - } - ,initParser: function(origin) { - this.preprocStack = []; - this.tokens = new haxe_ds_GenericStack(); - this.char = -1; - this.ops = []; - this.idents = []; - this.uid = 0; - var _g = 0; - var _g1 = this.opChars.length; - while(_g < _g1) { - var i = _g++; - this.ops[HxOverrides.cca(this.opChars,i)] = true; - } - var _g2 = 0; - var _g3 = this.identChars.length; - while(_g2 < _g3) { - var i1 = _g2++; - this.idents[HxOverrides.cca(this.identChars,i1)] = true; - } - } - ,parseString: function(s,origin) { - if(origin == null) { - origin = "hscript"; - } - return this.parse(new haxe_io_StringInput(s),origin); - } - ,parse: function(s,origin) { - if(origin == null) { - origin = "hscript"; - } - this.initParser(origin); - this.input = s; - var a = []; - while(true) { - var tk = this.token(); - if(tk == hscript_Token.TEof) { - break; - } - var _this = this.tokens; - _this.head = new haxe_ds_GenericCell(tk,_this.head); - this.parseFullExpr(a); - } - if(a.length == 1) { - return a[0]; - } else { - return hscript_Expr.EBlock(a); - } - } - ,unexpected: function(tk) { - throw new js__$Boot_HaxeError(hscript_Error.EUnexpected(this.tokenString(tk))); - } - ,push: function(tk) { - var _this = this.tokens; - _this.head = new haxe_ds_GenericCell(tk,_this.head); - } - ,ensure: function(tk) { - var t = this.token(); - if(t != tk) { - this.unexpected(t); - } - } - ,ensureToken: function(tk) { - var t = this.token(); - if(!Type.enumEq(t,tk)) { - this.unexpected(t); - } - } - ,maybe: function(tk) { - var t = this.token(); - if(Type.enumEq(t,tk)) { - return true; - } - var _this = this.tokens; - _this.head = new haxe_ds_GenericCell(t,_this.head); - return false; - } - ,getIdent: function() { - var tk = this.token(); - if(tk == null) { - this.unexpected(tk); - return null; - } else if(tk._hx_index == 2) { - var id = tk.s; - return id; - } else { - this.unexpected(tk); - return null; - } - } - ,expr: function(e) { - return e; - } - ,pmin: function(e) { - return 0; - } - ,pmax: function(e) { - return 0; - } - ,mk: function(e,pmin,pmax) { - return e; - } - ,isBlock: function(e) { - switch(e._hx_index) { - case 2: - var _g20 = e.n; - var e1 = e.e; - var t = e.t; - if(e1 != null) { - return this.isBlock(e1); - } else if(t != null) { - if(t == null) { - return false; - } else if(t._hx_index == 2) { - var _g = t.fields; - return true; - } else { - return false; - } - } else { - return false; - } - break; - case 4: - var _g10 = e.e; - return true; - case 6: - var _g28 = e.e1; - var _g27 = e.op; - var e2 = e.e2; - return this.isBlock(e2); - case 7: - var _g7 = e.op; - var e3 = e.e; - var prefix = e.prefix; - if(!prefix) { - return this.isBlock(e3); - } else { - return false; - } - break; - case 9: - var _g1 = e.cond; - var e21 = e.e2; - var e11 = e.e1; - if(e21 != null) { - return this.isBlock(e21); - } else { - return this.isBlock(e11); - } - break; - case 10: - var _g11 = e.cond; - var e4 = e.e; - return this.isBlock(e4); - case 11: - var _g17 = e.it; - var _g16 = e.v; - var e5 = e.e; - return this.isBlock(e5); - case 14: - var _g26 = e.ret; - var _g25 = e.name; - var _g23 = e.args; - var e6 = e.e; - return this.isBlock(e6); - case 15: - var e7 = e.e; - if(e7 != null) { - return this.isBlock(e7); - } else { - return false; - } - break; - case 20: - var _g5 = e.t; - var _g4 = e.v; - var _g3 = e.e; - var e8 = e.ecatch; - return this.isBlock(e8); - case 21: - var _g19 = e.fl; - return true; - case 23: - var _g15 = e.defaultExpr; - var _g14 = e.cases; - var _g13 = e.e; - return true; - case 24: - var _g30 = e.cond; - var e9 = e.e; - return this.isBlock(e9); - case 25: - var _g34 = e.args; - var _g33 = e.name; - var e10 = e.e; - return this.isBlock(e10); - default: - return false; - } - } - ,parseFullExpr: function(exprs) { - var e = this.parseExpr(); - exprs.push(e); - var tk = this.token(); - while(true) { - var tmp; - if(tk == hscript_Token.TComma) { - if(e._hx_index == 2) { - var _g2 = e.e; - var _g1 = e.t; - var _g = e.n; - tmp = true; - } else { - tmp = false; - } - } else { - tmp = false; - } - if(!tmp) { - break; - } - e = this.parseStructure("var"); - exprs.push(e); - tk = this.token(); - } - if(tk != hscript_Token.TSemicolon && tk != hscript_Token.TEof) { - if(this.isBlock(e)) { - var _this = this.tokens; - _this.head = new haxe_ds_GenericCell(tk,_this.head); - } else { - this.unexpected(tk); - } - } - } - ,parseObject: function(p1) { - var fl = []; - _hx_loop1: while(true) { - var tk = this.token(); - var id = null; - if(tk == null) { - this.unexpected(tk); - } else { - switch(tk._hx_index) { - case 1: - var c = tk.c; - if(!this.allowJSON) { - this.unexpected(tk); - } - if(c._hx_index == 2) { - var s = c.s; - id = s; - } else { - this.unexpected(tk); - } - break; - case 2: - var i = tk.s; - id = i; - break; - case 7: - break _hx_loop1; - default: - this.unexpected(tk); - } - } - var t = this.token(); - if(t != hscript_Token.TDoubleDot) { - this.unexpected(t); - } - fl.push({ name : id, e : this.parseExpr()}); - tk = this.token(); - if(tk == null) { - this.unexpected(tk); - } else { - switch(tk._hx_index) { - case 7: - break _hx_loop1; - case 9: - break; - default: - this.unexpected(tk); - } - } - } - return this.parseExprNext(hscript_Expr.EObject(fl)); - } - ,parseExpr: function() { - var tk = this.token(); - if(tk == null) { - return this.unexpected(tk); - } else { - switch(tk._hx_index) { - case 1: - var c = tk.c; - return this.parseExprNext(hscript_Expr.EConst(c)); - case 2: - var id = tk.s; - var e = this.parseStructure(id); - if(e == null) { - e = hscript_Expr.EIdent(id); - } - return this.parseExprNext(e); - case 3: - var op = tk.s; - var _this = this.unops; - if(__map_reserved[op] != null ? _this.existsReserved(op) : _this.h.hasOwnProperty(op)) { - var start = 0; - var e1 = this.parseExpr(); - if(op == "-") { - if(e1._hx_index == 0) { - var _g = e1.c; - switch(_g._hx_index) { - case 0: - var i = _g.v; - return hscript_Expr.EConst(hscript_Const.CInt(-i)); - case 1: - var f = _g.f; - return hscript_Expr.EConst(hscript_Const.CFloat(-f)); - default: - } - } - } - return this.makeUnop(op,e1); - } - return this.unexpected(tk); - case 4: - var e2 = this.parseExpr(); - tk = this.token(); - if(tk != null) { - switch(tk._hx_index) { - case 5: - return this.parseExprNext(hscript_Expr.EParent(e2)); - case 9: - if(e2._hx_index == 1) { - var v = e2.v; - return this.parseLambda([{ name : v}],0); - } - break; - case 14: - var t = this.parseType(); - tk = this.token(); - if(tk != null) { - switch(tk._hx_index) { - case 5: - return this.parseExprNext(hscript_Expr.ECheckType(e2,t)); - case 9: - if(e2._hx_index == 1) { - var v1 = e2.v; - return this.parseLambda([{ name : v1, t : t}],0); - } - break; - default: - } - } - break; - default: - } - } - return this.unexpected(tk); - case 6: - tk = this.token(); - if(tk == null) { - var _this1 = this.tokens; - _this1.head = new haxe_ds_GenericCell(tk,_this1.head); - } else { - switch(tk._hx_index) { - case 1: - var c1 = tk.c; - if(this.allowJSON) { - if(c1._hx_index == 2) { - var _g1 = c1.s; - var tk2 = this.token(); - var _this2 = this.tokens; - _this2.head = new haxe_ds_GenericCell(tk2,_this2.head); - var _this3 = this.tokens; - _this3.head = new haxe_ds_GenericCell(tk,_this3.head); - if(tk2 != null) { - if(tk2._hx_index == 14) { - return this.parseExprNext(this.parseObject(0)); - } - } - } else { - var _this4 = this.tokens; - _this4.head = new haxe_ds_GenericCell(tk,_this4.head); - } - } else { - var _this5 = this.tokens; - _this5.head = new haxe_ds_GenericCell(tk,_this5.head); - } - break; - case 2: - var _g11 = tk.s; - var tk21 = this.token(); - var _this6 = this.tokens; - _this6.head = new haxe_ds_GenericCell(tk21,_this6.head); - var _this7 = this.tokens; - _this7.head = new haxe_ds_GenericCell(tk,_this7.head); - if(tk21 != null) { - if(tk21._hx_index == 14) { - return this.parseExprNext(this.parseObject(0)); - } - } - break; - case 7: - return this.parseExprNext(hscript_Expr.EObject([])); - default: - var _this8 = this.tokens; - _this8.head = new haxe_ds_GenericCell(tk,_this8.head); - } - } - var a = []; - while(true) { - this.parseFullExpr(a); - tk = this.token(); - if(tk == hscript_Token.TBrClose) { - break; - } - var _this9 = this.tokens; - _this9.head = new haxe_ds_GenericCell(tk,_this9.head); - } - return hscript_Expr.EBlock(a); - case 11: - var a1 = []; - tk = this.token(); - while(tk != hscript_Token.TBkClose) { - var _this10 = this.tokens; - _this10.head = new haxe_ds_GenericCell(tk,_this10.head); - a1.push(this.parseExpr()); - tk = this.token(); - if(tk == hscript_Token.TComma) { - tk = this.token(); - } - } - if(a1.length == 1) { - var _g2 = a1[0]; - switch(_g2._hx_index) { - case 10: - var _g21 = _g2.e; - var _g12 = _g2.cond; - var tmp = "__a_" + this.uid++; - var e3 = hscript_Expr.EBlock([hscript_Expr.EVar(tmp,null,hscript_Expr.EArrayDecl([])),this.mapCompr(tmp,a1[0]),hscript_Expr.EIdent(tmp)]); - return this.parseExprNext(e3); - case 11: - var _g5 = _g2.e; - var _g4 = _g2.it; - var _g3 = _g2.v; - var tmp1 = "__a_" + this.uid++; - var e4 = hscript_Expr.EBlock([hscript_Expr.EVar(tmp1,null,hscript_Expr.EArrayDecl([])),this.mapCompr(tmp1,a1[0]),hscript_Expr.EIdent(tmp1)]); - return this.parseExprNext(e4); - case 24: - var _g7 = _g2.e; - var _g6 = _g2.cond; - var tmp2 = "__a_" + this.uid++; - var e5 = hscript_Expr.EBlock([hscript_Expr.EVar(tmp2,null,hscript_Expr.EArrayDecl([])),this.mapCompr(tmp2,a1[0]),hscript_Expr.EIdent(tmp2)]); - return this.parseExprNext(e5); - default: - } - } - return this.parseExprNext(hscript_Expr.EArrayDecl(a1)); - case 15: - var id1 = tk.s; - if(this.allowMetadata) { - var args = this.parseMetaArgs(); - return hscript_Expr.EMeta(id1,args,this.parseExpr()); - } else { - return this.unexpected(tk); - } - break; - default: - return this.unexpected(tk); - } - } - } - ,parseLambda: function(args,pmin) { - _hx_loop1: while(true) { - var id = this.getIdent(); - var t = this.maybe(hscript_Token.TDoubleDot) ? this.parseType() : null; - args.push({ name : id, t : t}); - var tk = this.token(); - if(tk == null) { - this.unexpected(tk); - } else { - switch(tk._hx_index) { - case 5: - break _hx_loop1; - case 9: - break; - default: - this.unexpected(tk); - } - } - } - var t1 = this.token(); - if(!Type.enumEq(t1,hscript_Token.TOp("->"))) { - this.unexpected(t1); - } - var eret = this.parseExpr(); - return hscript_Expr.EFunction(args,hscript_Expr.EReturn(eret)); - } - ,parseMetaArgs: function() { - var tk = this.token(); - if(tk != hscript_Token.TPOpen) { - var _this = this.tokens; - _this.head = new haxe_ds_GenericCell(tk,_this.head); - return null; - } - var args = []; - tk = this.token(); - if(tk != hscript_Token.TPClose) { - var _this1 = this.tokens; - _this1.head = new haxe_ds_GenericCell(tk,_this1.head); - _hx_loop1: while(true) { - args.push(this.parseExpr()); - var _g = this.token(); - if(_g == null) { - var tk1 = _g; - this.unexpected(tk1); - } else { - switch(_g._hx_index) { - case 5: - break _hx_loop1; - case 9: - break; - default: - var tk2 = _g; - this.unexpected(tk2); - } - } - } - } - return args; - } - ,mapCompr: function(tmp,e) { - var edef; - switch(e._hx_index) { - case 3: - var e2 = e.e; - edef = hscript_Expr.EParent(this.mapCompr(tmp,e2)); - break; - case 4: - var _g5 = e.e; - if(_g5.length == 1) { - var e1 = _g5[0]; - edef = hscript_Expr.EBlock([this.mapCompr(tmp,e1)]); - } else { - edef = hscript_Expr.ECall(hscript_Expr.EField(hscript_Expr.EIdent(tmp),"push"),[e]); - } - break; - case 9: - var e21 = e.e2; - var e11 = e.e1; - var cond = e.cond; - edef = e21 == null ? hscript_Expr.EIf(cond,this.mapCompr(tmp,e11),null) : hscript_Expr.ECall(hscript_Expr.EField(hscript_Expr.EIdent(tmp),"push"),[e]); - break; - case 10: - var e22 = e.e; - var cond1 = e.cond; - edef = hscript_Expr.EWhile(cond1,this.mapCompr(tmp,e22)); - break; - case 11: - var e23 = e.e; - var it = e.it; - var v = e.v; - edef = hscript_Expr.EFor(v,it,this.mapCompr(tmp,e23)); - break; - case 24: - var e24 = e.e; - var cond2 = e.cond; - edef = hscript_Expr.EDoWhile(cond2,this.mapCompr(tmp,e24)); - break; - default: - edef = hscript_Expr.ECall(hscript_Expr.EField(hscript_Expr.EIdent(tmp),"push"),[e]); - } - return edef; - } - ,makeUnop: function(op,e) { - switch(e._hx_index) { - case 6: - var e2 = e.e2; - var e1 = e.e1; - var bop = e.op; - return hscript_Expr.EBinop(bop,this.makeUnop(op,e1),e2); - case 22: - var e3 = e.e2; - var e21 = e.e1; - var e11 = e.cond; - return hscript_Expr.ETernary(this.makeUnop(op,e11),e21,e3); - default: - return hscript_Expr.EUnop(op,true,e); - } - } - ,makeBinop: function(op,e1,e) { - switch(e._hx_index) { - case 6: - var e3 = e.e2; - var e2 = e.e1; - var op2 = e.op; - var tmp; - var _this = this.opPriority; - var tmp1 = __map_reserved[op] != null ? _this.getReserved(op) : _this.h[op]; - var _this1 = this.opPriority; - if(tmp1 <= (__map_reserved[op2] != null ? _this1.getReserved(op2) : _this1.h[op2])) { - var _this2 = this.opRightAssoc; - tmp = !(__map_reserved[op] != null ? _this2.existsReserved(op) : _this2.h.hasOwnProperty(op)); - } else { - tmp = false; - } - if(tmp) { - return hscript_Expr.EBinop(op2,this.makeBinop(op,e1,e2),e3); - } else { - return hscript_Expr.EBinop(op,e1,e); - } - break; - case 22: - var e4 = e.e2; - var e31 = e.e1; - var e21 = e.cond; - var _this3 = this.opRightAssoc; - if(__map_reserved[op] != null ? _this3.existsReserved(op) : _this3.h.hasOwnProperty(op)) { - return hscript_Expr.EBinop(op,e1,e); - } else { - return hscript_Expr.ETernary(this.makeBinop(op,e1,e21),e31,e4); - } - break; - default: - return hscript_Expr.EBinop(op,e1,e); - } - } - ,parseStructure: function(id) { - switch(id) { - case "break": - return hscript_Expr.EBreak; - case "continue": - return hscript_Expr.EContinue; - case "do": - var e = this.parseExpr(); - var tk = this.token(); - if(tk == null) { - this.unexpected(tk); - } else if(tk._hx_index == 2) { - if(tk.s != "while") { - this.unexpected(tk); - } - } else { - this.unexpected(tk); - } - var econd = this.parseExpr(); - return hscript_Expr.EDoWhile(econd,e); - case "else": - return this.unexpected(hscript_Token.TId(id)); - case "for": - var t = this.token(); - if(t != hscript_Token.TPOpen) { - this.unexpected(t); - } - var vname = this.getIdent(); - var t1 = this.token(); - if(!Type.enumEq(t1,hscript_Token.TId("in"))) { - this.unexpected(t1); - } - var eiter = this.parseExpr(); - var t2 = this.token(); - if(t2 != hscript_Token.TPClose) { - this.unexpected(t2); - } - var e1 = this.parseExpr(); - return hscript_Expr.EFor(vname,eiter,e1); - case "function": - var tk1 = this.token(); - var name = null; - if(tk1 == null) { - var _this = this.tokens; - _this.head = new haxe_ds_GenericCell(tk1,_this.head); - } else if(tk1._hx_index == 2) { - var id1 = tk1.s; - name = id1; - } else { - var _this1 = this.tokens; - _this1.head = new haxe_ds_GenericCell(tk1,_this1.head); - } - var inf = this.parseFunctionDecl(); - return hscript_Expr.EFunction(inf.args,inf.body,name,inf.ret); - case "if": - var t3 = this.token(); - if(t3 != hscript_Token.TPOpen) { - this.unexpected(t3); - } - var cond = this.parseExpr(); - var t4 = this.token(); - if(t4 != hscript_Token.TPClose) { - this.unexpected(t4); - } - var e11 = this.parseExpr(); - var e2 = null; - var semic = false; - var tk2 = this.token(); - if(tk2 == hscript_Token.TSemicolon) { - semic = true; - tk2 = this.token(); - } - if(Type.enumEq(tk2,hscript_Token.TId("else"))) { - e2 = this.parseExpr(); - } else { - var _this2 = this.tokens; - _this2.head = new haxe_ds_GenericCell(tk2,_this2.head); - if(semic) { - var _this3 = this.tokens; - _this3.head = new haxe_ds_GenericCell(hscript_Token.TSemicolon,_this3.head); - } - } - return hscript_Expr.EIf(cond,e11,e2); - case "inline": - if(!this.maybe(hscript_Token.TId("function"))) { - this.unexpected(hscript_Token.TId("inline")); - } - return this.parseStructure("function"); - case "new": - var a = []; - a.push(this.getIdent()); - var next = true; - while(next) { - var tk3 = this.token(); - if(tk3 == null) { - this.unexpected(tk3); - } else { - switch(tk3._hx_index) { - case 4: - next = false; - break; - case 8: - a.push(this.getIdent()); - break; - default: - this.unexpected(tk3); - } - } - } - var args = this.parseExprList(hscript_Token.TPClose); - return hscript_Expr.ENew(a.join("."),args); - case "return": - var tk4 = this.token(); - var _this4 = this.tokens; - _this4.head = new haxe_ds_GenericCell(tk4,_this4.head); - var e3 = tk4 == hscript_Token.TSemicolon ? null : this.parseExpr(); - return hscript_Expr.EReturn(e3); - case "switch": - var e4 = this.parseExpr(); - var def = null; - var cases = []; - var t5 = this.token(); - if(t5 != hscript_Token.TBrOpen) { - this.unexpected(t5); - } - _hx_loop2: while(true) { - var tk5 = this.token(); - if(tk5 == null) { - this.unexpected(tk5); - } else { - switch(tk5._hx_index) { - case 2: - switch(tk5.s) { - case "case": - var c = { values : [], expr : null}; - cases.push(c); - _hx_loop3: while(true) { - var e5 = this.parseExpr(); - c.values.push(e5); - tk5 = this.token(); - if(tk5 == null) { - this.unexpected(tk5); - } else { - switch(tk5._hx_index) { - case 9: - break; - case 14: - break _hx_loop3; - default: - this.unexpected(tk5); - } - } - } - var exprs = []; - _hx_loop4: while(true) { - tk5 = this.token(); - var _this5 = this.tokens; - _this5.head = new haxe_ds_GenericCell(tk5,_this5.head); - if(tk5 == null) { - this.parseFullExpr(exprs); - } else { - switch(tk5._hx_index) { - case 2: - switch(tk5.s) { - case "case":case "default": - break _hx_loop4; - default: - this.parseFullExpr(exprs); - } - break; - case 7: - break _hx_loop4; - default: - this.parseFullExpr(exprs); - } - } - } - c.expr = exprs.length == 1 ? exprs[0] : exprs.length == 0 ? hscript_Expr.EBlock([]) : hscript_Expr.EBlock(exprs); - break; - case "default": - if(def != null) { - this.unexpected(tk5); - } - var t6 = this.token(); - if(t6 != hscript_Token.TDoubleDot) { - this.unexpected(t6); - } - var exprs1 = []; - _hx_loop5: while(true) { - tk5 = this.token(); - var _this6 = this.tokens; - _this6.head = new haxe_ds_GenericCell(tk5,_this6.head); - if(tk5 == null) { - this.parseFullExpr(exprs1); - } else { - switch(tk5._hx_index) { - case 2: - switch(tk5.s) { - case "case":case "default": - break _hx_loop5; - default: - this.parseFullExpr(exprs1); - } - break; - case 7: - break _hx_loop5; - default: - this.parseFullExpr(exprs1); - } - } - } - def = exprs1.length == 1 ? exprs1[0] : exprs1.length == 0 ? hscript_Expr.EBlock([]) : hscript_Expr.EBlock(exprs1); - break; - default: - this.unexpected(tk5); - } - break; - case 7: - break _hx_loop2; - default: - this.unexpected(tk5); - } - } - } - return hscript_Expr.ESwitch(e4,cases,def); - case "throw": - var e6 = this.parseExpr(); - return hscript_Expr.EThrow(e6); - case "try": - var e7 = this.parseExpr(); - var t7 = this.token(); - if(!Type.enumEq(t7,hscript_Token.TId("catch"))) { - this.unexpected(t7); - } - var t8 = this.token(); - if(t8 != hscript_Token.TPOpen) { - this.unexpected(t8); - } - var vname1 = this.getIdent(); - var t9 = this.token(); - if(t9 != hscript_Token.TDoubleDot) { - this.unexpected(t9); - } - var t10 = null; - if(this.allowTypes) { - t10 = this.parseType(); - } else { - var t11 = this.token(); - if(!Type.enumEq(t11,hscript_Token.TId("Dynamic"))) { - this.unexpected(t11); - } - } - var t12 = this.token(); - if(t12 != hscript_Token.TPClose) { - this.unexpected(t12); - } - var ec = this.parseExpr(); - return hscript_Expr.ETry(e7,vname1,t10,ec); - case "var": - var ident = this.getIdent(); - var tk6 = this.token(); - var t13 = null; - if(tk6 == hscript_Token.TDoubleDot && this.allowTypes) { - t13 = this.parseType(); - tk6 = this.token(); - } - var e8 = null; - if(Type.enumEq(tk6,hscript_Token.TOp("="))) { - e8 = this.parseExpr(); - } else { - var _this7 = this.tokens; - _this7.head = new haxe_ds_GenericCell(tk6,_this7.head); - } - return hscript_Expr.EVar(ident,t13,e8); - case "while": - var econd1 = this.parseExpr(); - var e9 = this.parseExpr(); - return hscript_Expr.EWhile(econd1,e9); - default: - return null; - } - } - ,parseExprNext: function(e1) { - var tk = this.token(); - if(tk == null) { - var _this = this.tokens; - _this.head = new haxe_ds_GenericCell(tk,_this.head); - return e1; - } else { - switch(tk._hx_index) { - case 3: - var op = tk.s; - if(op == "->") { - switch(e1._hx_index) { - case 1: - var i = e1.v; - var eret = this.parseExpr(); - return hscript_Expr.EFunction([{ name : i}],hscript_Expr.EReturn(eret)); - case 3: - var _hx_tmp = e1.e; - if(_hx_tmp._hx_index == 1) { - var i1 = _hx_tmp.v; - var eret1 = this.parseExpr(); - return hscript_Expr.EFunction([{ name : i1}],hscript_Expr.EReturn(eret1)); - } - break; - case 26: - var _hx_tmp1 = e1.e; - if(_hx_tmp1._hx_index == 1) { - var t = e1.t; - var i2 = _hx_tmp1.v; - var eret2 = this.parseExpr(); - return hscript_Expr.EFunction([{ name : i2, t : t}],hscript_Expr.EReturn(eret2)); - } - break; - default: - } - this.unexpected(tk); - } - var _this1 = this.unops; - if(__map_reserved[op] != null ? _this1.getReserved(op) : _this1.h[op]) { - var tmp; - if(!this.isBlock(e1)) { - if(e1._hx_index == 3) { - var _g = e1.e; - tmp = true; - } else { - tmp = false; - } - } else { - tmp = true; - } - if(tmp) { - var _this2 = this.tokens; - _this2.head = new haxe_ds_GenericCell(tk,_this2.head); - return e1; - } - return this.parseExprNext(hscript_Expr.EUnop(op,false,e1)); - } - return this.makeBinop(op,e1,this.parseExpr()); - case 4: - return this.parseExprNext(hscript_Expr.ECall(e1,this.parseExprList(hscript_Token.TPClose))); - case 8: - var field = this.getIdent(); - return this.parseExprNext(hscript_Expr.EField(e1,field)); - case 11: - var e2 = this.parseExpr(); - var t1 = this.token(); - if(t1 != hscript_Token.TBkClose) { - this.unexpected(t1); - } - return this.parseExprNext(hscript_Expr.EArray(e1,e2)); - case 13: - var e21 = this.parseExpr(); - var t2 = this.token(); - if(t2 != hscript_Token.TDoubleDot) { - this.unexpected(t2); - } - var e3 = this.parseExpr(); - return hscript_Expr.ETernary(e1,e21,e3); - default: - var _this3 = this.tokens; - _this3.head = new haxe_ds_GenericCell(tk,_this3.head); - return e1; - } - } - } - ,parseFunctionArgs: function() { - var args = []; - var tk = this.token(); - if(tk != hscript_Token.TPClose) { - var done = false; - while(!done) { - var name = null; - var opt = false; - if(tk != null) { - if(tk._hx_index == 13) { - opt = true; - tk = this.token(); - } - } - if(tk == null) { - this.unexpected(tk); - } else if(tk._hx_index == 2) { - var id = tk.s; - name = id; - } else { - this.unexpected(tk); - } - var arg = { name : name}; - args.push(arg); - if(opt) { - arg.opt = true; - } - if(this.allowTypes) { - if(this.maybe(hscript_Token.TDoubleDot)) { - arg.t = this.parseType(); - } - if(this.maybe(hscript_Token.TOp("="))) { - arg.value = this.parseExpr(); - } - } - tk = this.token(); - if(tk == null) { - this.unexpected(tk); - } else { - switch(tk._hx_index) { - case 5: - done = true; - break; - case 9: - tk = this.token(); - break; - default: - this.unexpected(tk); - } - } - } - } - return args; - } - ,parseFunctionDecl: function() { - var t = this.token(); - if(t != hscript_Token.TPOpen) { - this.unexpected(t); - } - var args = this.parseFunctionArgs(); - var ret = null; - if(this.allowTypes) { - var tk = this.token(); - if(tk != hscript_Token.TDoubleDot) { - var _this = this.tokens; - _this.head = new haxe_ds_GenericCell(tk,_this.head); - } else { - ret = this.parseType(); - } - } - return { args : args, ret : ret, body : this.parseExpr()}; - } - ,parsePath: function() { - var path = [this.getIdent()]; - while(true) { - var t = this.token(); - if(t != hscript_Token.TDot) { - var _this = this.tokens; - _this.head = new haxe_ds_GenericCell(t,_this.head); - break; - } - path.push(this.getIdent()); - } - return path; - } - ,parseType: function() { - var _gthis = this; - var t = this.token(); - if(t == null) { - return this.unexpected(t); - } else { - switch(t._hx_index) { - case 2: - var v = t.s; - var _this = this.tokens; - _this.head = new haxe_ds_GenericCell(t,_this.head); - var path = this.parsePath(); - var params = null; - t = this.token(); - if(t == null) { - var _this1 = this.tokens; - _this1.head = new haxe_ds_GenericCell(t,_this1.head); - } else if(t._hx_index == 3) { - var op = t.s; - if(op == "<") { - params = []; - _hx_loop1: while(true) { - params.push(this.parseType()); - t = this.token(); - if(t != null) { - switch(t._hx_index) { - case 3: - var op1 = t.s; - if(op1 == ">") { - break _hx_loop1; - } - if(HxOverrides.cca(op1,0) == 62) { - var _this2 = this.tokens; - _this2.head = new haxe_ds_GenericCell(hscript_Token.TOp(HxOverrides.substr(op1,1,null)),_this2.head); - break _hx_loop1; - } - break; - case 9: - continue; - default: - } - } - this.unexpected(t); - } - } else { - var _this3 = this.tokens; - _this3.head = new haxe_ds_GenericCell(t,_this3.head); - } - } else { - var _this4 = this.tokens; - _this4.head = new haxe_ds_GenericCell(t,_this4.head); - } - return this.parseTypeNext(hscript_CType.CTPath(path,params)); - case 4: - var a = this.token(); - var b = this.token(); - var _this5 = this.tokens; - _this5.head = new haxe_ds_GenericCell(b,_this5.head); - var _this6 = this.tokens; - _this6.head = new haxe_ds_GenericCell(a,_this6.head); - var withReturn = function(args) { - var _g = _gthis.token(); - if(_g == null) { - var t1 = _g; - _gthis.unexpected(t1); - } else if(_g._hx_index == 3) { - if(_g.s != "->") { - var t2 = _g; - _gthis.unexpected(t2); - } - } else { - var t3 = _g; - _gthis.unexpected(t3); - } - return hscript_CType.CTFun(args,_gthis.parseType()); - }; - if(a == null) { - var t4 = this.parseType(); - var _g1 = this.token(); - if(_g1 == null) { - var t5 = _g1; - return this.unexpected(t5); - } else { - switch(_g1._hx_index) { - case 5: - return this.parseTypeNext(hscript_CType.CTParent(t4)); - case 9: - var args1 = [t4]; - while(true) { - args1.push(this.parseType()); - if(!this.maybe(hscript_Token.TComma)) { - break; - } - } - var t6 = this.token(); - if(t6 != hscript_Token.TPClose) { - this.unexpected(t6); - } - return withReturn(args1); - default: - var t7 = _g1; - return this.unexpected(t7); - } - } - } else { - switch(a._hx_index) { - case 2: - var _g2 = a.s; - if(b == null) { - var t8 = this.parseType(); - var _g3 = this.token(); - if(_g3 == null) { - var t9 = _g3; - return this.unexpected(t9); - } else { - switch(_g3._hx_index) { - case 5: - return this.parseTypeNext(hscript_CType.CTParent(t8)); - case 9: - var args2 = [t8]; - while(true) { - args2.push(this.parseType()); - if(!this.maybe(hscript_Token.TComma)) { - break; - } - } - var t10 = this.token(); - if(t10 != hscript_Token.TPClose) { - this.unexpected(t10); - } - return withReturn(args2); - default: - var t11 = _g3; - return this.unexpected(t11); - } - } - } else if(b._hx_index == 14) { - var _g4 = []; - var _g11 = 0; - var _g21 = this.parseFunctionArgs(); - while(_g11 < _g21.length) { - var arg = _g21[_g11]; - ++_g11; - var _g12 = arg.value; - if(_g12 != null) { - var v1 = _g12; - throw new js__$Boot_HaxeError(hscript_Error.ECustom("Default values not allowed in function types")); - } - _g4.push(hscript_CType.CTNamed(arg.name,arg.opt ? hscript_CType.CTOpt(arg.t) : arg.t)); - } - var args3 = _g4; - return withReturn(args3); - } else { - var t12 = this.parseType(); - var _g5 = this.token(); - if(_g5 == null) { - var t13 = _g5; - return this.unexpected(t13); - } else { - switch(_g5._hx_index) { - case 5: - return this.parseTypeNext(hscript_CType.CTParent(t12)); - case 9: - var args4 = [t12]; - while(true) { - args4.push(this.parseType()); - if(!this.maybe(hscript_Token.TComma)) { - break; - } - } - var t14 = this.token(); - if(t14 != hscript_Token.TPClose) { - this.unexpected(t14); - } - return withReturn(args4); - default: - var t15 = _g5; - return this.unexpected(t15); - } - } - } - break; - case 5: - var _g6 = []; - var _g13 = 0; - var _g22 = this.parseFunctionArgs(); - while(_g13 < _g22.length) { - var arg1 = _g22[_g13]; - ++_g13; - var _g14 = arg1.value; - if(_g14 != null) { - var v2 = _g14; - throw new js__$Boot_HaxeError(hscript_Error.ECustom("Default values not allowed in function types")); - } - _g6.push(hscript_CType.CTNamed(arg1.name,arg1.opt ? hscript_CType.CTOpt(arg1.t) : arg1.t)); - } - var args5 = _g6; - return withReturn(args5); - default: - var t16 = this.parseType(); - var _g7 = this.token(); - if(_g7 == null) { - var t17 = _g7; - return this.unexpected(t17); - } else { - switch(_g7._hx_index) { - case 5: - return this.parseTypeNext(hscript_CType.CTParent(t16)); - case 9: - var args6 = [t16]; - while(true) { - args6.push(this.parseType()); - if(!this.maybe(hscript_Token.TComma)) { - break; - } - } - var t18 = this.token(); - if(t18 != hscript_Token.TPClose) { - this.unexpected(t18); - } - return withReturn(args6); - default: - var t19 = _g7; - return this.unexpected(t19); - } - } - } - } - break; - case 6: - var fields = []; - var meta = null; - _hx_loop8: while(true) { - t = this.token(); - if(t == null) { - this.unexpected(t); - } else { - switch(t._hx_index) { - case 2: - var _g8 = t.s; - if(_g8 == "var") { - var name = this.getIdent(); - var t20 = this.token(); - if(t20 != hscript_Token.TDoubleDot) { - this.unexpected(t20); - } - fields.push({ name : name, t : this.parseType(), meta : meta}); - meta = null; - var t21 = this.token(); - if(t21 != hscript_Token.TSemicolon) { - this.unexpected(t21); - } - } else { - var name1 = _g8; - var t22 = this.token(); - if(t22 != hscript_Token.TDoubleDot) { - this.unexpected(t22); - } - fields.push({ name : name1, t : this.parseType(), meta : meta}); - t = this.token(); - if(t == null) { - this.unexpected(t); - } else { - switch(t._hx_index) { - case 7: - break _hx_loop8; - case 9: - break; - default: - this.unexpected(t); - } - } - } - break; - case 7: - break _hx_loop8; - case 15: - var name2 = t.s; - if(meta == null) { - meta = []; - } - meta.push({ name : name2, params : this.parseMetaArgs()}); - break; - default: - this.unexpected(t); - } - } - } - return this.parseTypeNext(hscript_CType.CTAnon(fields)); - default: - return this.unexpected(t); - } - } - } - ,parseTypeNext: function(t) { - var tk = this.token(); - if(tk == null) { - var _this = this.tokens; - _this.head = new haxe_ds_GenericCell(tk,_this.head); - return t; - } else if(tk._hx_index == 3) { - var op = tk.s; - if(op != "->") { - var _this1 = this.tokens; - _this1.head = new haxe_ds_GenericCell(tk,_this1.head); - return t; - } - } else { - var _this2 = this.tokens; - _this2.head = new haxe_ds_GenericCell(tk,_this2.head); - return t; - } - var t2 = this.parseType(); - if(t2._hx_index == 1) { - var _g2 = t2.ret; - var args = t2.args; - args.unshift(t); - return t2; - } else { - return hscript_CType.CTFun([t],t2); - } - } - ,parseExprList: function(etk) { - var args = []; - var tk = this.token(); - if(tk == etk) { - return args; - } - var _this = this.tokens; - _this.head = new haxe_ds_GenericCell(tk,_this.head); - while(true) { - args.push(this.parseExpr()); - tk = this.token(); - if(tk == null) { - if(tk == etk) { - break; - } - this.unexpected(tk); - } else if(tk._hx_index != 9) { - if(tk == etk) { - break; - } - this.unexpected(tk); - } - } - return args; - } - ,parseModule: function(content,origin) { - if(origin == null) { - origin = "hscript"; - } - this.initParser(origin); - this.input = new haxe_io_StringInput(content); - this.allowTypes = true; - this.allowMetadata = true; - var decls = []; - while(true) { - var tk = this.token(); - if(tk == hscript_Token.TEof) { - break; - } - var _this = this.tokens; - _this.head = new haxe_ds_GenericCell(tk,_this.head); - decls.push(this.parseModuleDecl()); - } - return decls; - } - ,parseMetadata: function() { - var meta = []; - while(true) { - var tk = this.token(); - if(tk == null) { - var _this = this.tokens; - _this.head = new haxe_ds_GenericCell(tk,_this.head); - break; - } else if(tk._hx_index == 15) { - var name = tk.s; - meta.push({ name : name, params : this.parseMetaArgs()}); - } else { - var _this1 = this.tokens; - _this1.head = new haxe_ds_GenericCell(tk,_this1.head); - break; - } - } - return meta; - } - ,parseParams: function() { - if(this.maybe(hscript_Token.TOp("<"))) { - throw new js__$Boot_HaxeError(hscript_Error.EInvalidOp("Unsupported class type parameters")); - } - return { }; - } - ,parseModuleDecl: function() { - var meta = this.parseMetadata(); - var ident = this.getIdent(); - var isPrivate = false; - var isExtern = false; - _hx_loop1: while(true) { - switch(ident) { - case "extern": - isExtern = true; - break; - case "private": - isPrivate = true; - break; - default: - break _hx_loop1; - } - ident = this.getIdent(); - } - switch(ident) { - case "class": - var name = this.getIdent(); - var params = this.parseParams(); - var extend = null; - var implement = []; - _hx_loop2: while(true) { - var t = this.token(); - if(t == null) { - var _this = this.tokens; - _this.head = new haxe_ds_GenericCell(t,_this.head); - break; - } else if(t._hx_index == 2) { - switch(t.s) { - case "extends": - extend = this.parseType(); - break; - case "implements": - implement.push(this.parseType()); - break; - default: - var _this1 = this.tokens; - _this1.head = new haxe_ds_GenericCell(t,_this1.head); - break _hx_loop2; - } - } else { - var _this2 = this.tokens; - _this2.head = new haxe_ds_GenericCell(t,_this2.head); - break; - } - } - var fields = []; - var t1 = this.token(); - if(t1 != hscript_Token.TBrOpen) { - this.unexpected(t1); - } - while(!this.maybe(hscript_Token.TBrClose)) fields.push(this.parseField()); - return hscript_ModuleDecl.DClass({ name : name, meta : meta, params : params, extend : extend, implement : implement, fields : fields, isPrivate : isPrivate, isExtern : isExtern}); - case "import": - var path = [this.getIdent()]; - var star = false; - while(true) { - var t2 = this.token(); - if(t2 != hscript_Token.TDot) { - var _this3 = this.tokens; - _this3.head = new haxe_ds_GenericCell(t2,_this3.head); - break; - } - t2 = this.token(); - if(t2 == null) { - this.unexpected(t2); - } else { - switch(t2._hx_index) { - case 2: - var id = t2.s; - path.push(id); - break; - case 3: - if(t2.s == "*") { - star = true; - } else { - this.unexpected(t2); - } - break; - default: - this.unexpected(t2); - } - } - } - var t3 = this.token(); - if(t3 != hscript_Token.TSemicolon) { - this.unexpected(t3); - } - return hscript_ModuleDecl.DImport(path,star); - case "package": - var path1 = this.parsePath(); - var t4 = this.token(); - if(t4 != hscript_Token.TSemicolon) { - this.unexpected(t4); - } - return hscript_ModuleDecl.DPackage(path1); - case "typedef": - var name1 = this.getIdent(); - var params1 = this.parseParams(); - var t5 = this.token(); - if(!Type.enumEq(t5,hscript_Token.TOp("="))) { - this.unexpected(t5); - } - var t6 = this.parseType(); - return hscript_ModuleDecl.DTypedef({ name : name1, meta : meta, params : params1, isPrivate : isPrivate, t : t6}); - default: - this.unexpected(hscript_Token.TId(ident)); - } - return null; - } - ,parseField: function() { - var meta = this.parseMetadata(); - var access = []; - while(true) { - var id = this.getIdent(); - switch(id) { - case "function": - var name = this.getIdent(); - var inf = this.parseFunctionDecl(); - return { name : name, meta : meta, access : access, kind : hscript_FieldKind.KFunction({ args : inf.args, expr : inf.body, ret : inf.ret})}; - case "inline": - access.push(hscript_FieldAccess.AInline); - break; - case "macro": - access.push(hscript_FieldAccess.AMacro); - break; - case "override": - access.push(hscript_FieldAccess.AOverride); - break; - case "private": - access.push(hscript_FieldAccess.APrivate); - break; - case "public": - access.push(hscript_FieldAccess.APublic); - break; - case "static": - access.push(hscript_FieldAccess.AStatic); - break; - case "var": - var name1 = this.getIdent(); - var get = null; - var set = null; - if(this.maybe(hscript_Token.TPOpen)) { - get = this.getIdent(); - var t = this.token(); - if(t != hscript_Token.TComma) { - this.unexpected(t); - } - set = this.getIdent(); - var t1 = this.token(); - if(t1 != hscript_Token.TPClose) { - this.unexpected(t1); - } - } - var type = this.maybe(hscript_Token.TDoubleDot) ? this.parseType() : null; - var expr = this.maybe(hscript_Token.TOp("=")) ? this.parseExpr() : null; - if(expr != null) { - if(this.isBlock(expr)) { - this.maybe(hscript_Token.TSemicolon); - } else { - var t2 = this.token(); - if(t2 != hscript_Token.TSemicolon) { - this.unexpected(t2); - } - } - } else { - var tmp; - if(type != null) { - if(type == null) { - tmp = false; - } else if(type._hx_index == 2) { - var _g = type.fields; - tmp = true; - } else { - tmp = false; - } - } else { - tmp = false; - } - if(tmp) { - this.maybe(hscript_Token.TSemicolon); - } else { - var t3 = this.token(); - if(t3 != hscript_Token.TSemicolon) { - this.unexpected(t3); - } - } - } - return { name : name1, meta : meta, access : access, kind : hscript_FieldKind.KVar({ get : get, set : set, type : type, expr : expr})}; - default: - this.unexpected(hscript_Token.TId(id)); - } - } - } - ,incPos: function() { - } - ,readChar: function() { - try { - return this.input.readByte(); - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - return 0; - } - } - ,readString: function(until) { - var c = 0; - var b = new haxe_io_BytesOutput(); - var esc = false; - var old = this.line; - var s = this.input; - while(true) { - try { - c = s.readByte(); - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - this.line = old; - throw new js__$Boot_HaxeError(hscript_Error.EUnterminatedString); - } - if(esc) { - esc = false; - switch(c) { - case 34:case 39:case 92: - b.writeByte(c); - break; - case 47: - if(this.allowJSON) { - b.writeByte(c); - } else { - this.invalidChar(c); - } - break; - case 110: - b.writeByte(10); - break; - case 114: - b.writeByte(13); - break; - case 116: - b.writeByte(9); - break; - case 117: - if(!this.allowJSON) { - this.invalidChar(c); - } - var code = null; - try { - code = s.readString(4); - } catch( e2 ) { - haxe_CallStack.lastException = e2; - var e3 = ((e2) instanceof js__$Boot_HaxeError) ? e2.val : e2; - this.line = old; - throw new js__$Boot_HaxeError(hscript_Error.EUnterminatedString); - } - var k = 0; - k <<= 4; - var char = HxOverrides.cca(code,0); - if(char == null) { - this.invalidChar(char); - } else { - switch(char) { - case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57: - k += char - 48; - break; - case 65:case 66:case 67:case 68:case 69:case 70: - k += char - 55; - break; - case 97:case 98:case 99:case 100:case 101:case 102: - k += char - 87; - break; - default: - this.invalidChar(char); - } - } - k <<= 4; - var char1 = HxOverrides.cca(code,1); - if(char1 == null) { - this.invalidChar(char1); - } else { - switch(char1) { - case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57: - k += char1 - 48; - break; - case 65:case 66:case 67:case 68:case 69:case 70: - k += char1 - 55; - break; - case 97:case 98:case 99:case 100:case 101:case 102: - k += char1 - 87; - break; - default: - this.invalidChar(char1); - } - } - k <<= 4; - var char2 = HxOverrides.cca(code,2); - if(char2 == null) { - this.invalidChar(char2); - } else { - switch(char2) { - case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57: - k += char2 - 48; - break; - case 65:case 66:case 67:case 68:case 69:case 70: - k += char2 - 55; - break; - case 97:case 98:case 99:case 100:case 101:case 102: - k += char2 - 87; - break; - default: - this.invalidChar(char2); - } - } - k <<= 4; - var char3 = HxOverrides.cca(code,3); - if(char3 == null) { - this.invalidChar(char3); - } else { - switch(char3) { - case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57: - k += char3 - 48; - break; - case 65:case 66:case 67:case 68:case 69:case 70: - k += char3 - 55; - break; - case 97:case 98:case 99:case 100:case 101:case 102: - k += char3 - 87; - break; - default: - this.invalidChar(char3); - } - } - if(k <= 127) { - b.writeByte(k); - } else if(k <= 2047) { - b.writeByte(192 | k >> 6); - b.writeByte(128 | k & 63); - } else { - b.writeByte(224 | k >> 12); - b.writeByte(128 | k >> 6 & 63); - b.writeByte(128 | k & 63); - } - break; - default: - this.invalidChar(c); - } - } else if(c == 92) { - esc = true; - } else if(c == until) { - break; - } else { - if(c == 10) { - this.line++; - } - b.writeByte(c); - } - } - return b.getBytes().toString(); - } - ,token: function() { - if(this.tokens.head != null) { - var _this = this.tokens; - var k = _this.head; - if(k == null) { - return null; - } else { - _this.head = k.next; - return k.elt; - } - } - var char; - if(this.char < 0) { - char = this.readChar(); - } else { - char = this.char; - this.char = -1; - } - while(true) { - switch(char) { - case 0: - return hscript_Token.TEof; - case 10: - this.line++; - break; - case 9:case 13:case 32: - break; - case 35: - char = this.readChar(); - if(this.idents[char]) { - var id = String.fromCodePoint(char); - while(true) { - char = this.readChar(); - if(!this.idents[char]) { - this.char = char; - return this.preprocess(id); - } - id += String.fromCodePoint(char); - } - } - this.invalidChar(char); - break; - case 34:case 39: - return hscript_Token.TConst(hscript_Const.CString(this.readString(char))); - case 40: - return hscript_Token.TPOpen; - case 41: - return hscript_Token.TPClose; - case 44: - return hscript_Token.TComma; - case 46: - char = this.readChar(); - switch(char) { - case 46: - char = this.readChar(); - if(char != 46) { - this.invalidChar(char); - } - return hscript_Token.TOp("..."); - case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57: - var n = char - 48; - var exp = 1; - while(true) { - char = this.readChar(); - exp *= 10; - switch(char) { - case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57: - n = n * 10 + (char - 48); - break; - default: - this.char = char; - return hscript_Token.TConst(hscript_Const.CFloat(n / exp)); - } - } - break; - default: - this.char = char; - return hscript_Token.TDot; - } - break; - case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57: - var n1 = (char - 48) * 1.0; - var exp1 = 0.; - while(true) { - char = this.readChar(); - exp1 *= 10; - switch(char) { - case 46: - if(exp1 > 0) { - if(exp1 == 10 && this.readChar() == 46) { - var _this1 = this.tokens; - _this1.head = new haxe_ds_GenericCell(hscript_Token.TOp("..."),_this1.head); - var i = n1 | 0; - return hscript_Token.TConst(i == n1 ? hscript_Const.CInt(i) : hscript_Const.CFloat(n1)); - } - this.invalidChar(char); - } - exp1 = 1.; - break; - case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57: - n1 = n1 * 10 + (char - 48); - break; - case 69:case 101: - var tk = this.token(); - var pow = null; - if(tk == null) { - var _this2 = this.tokens; - _this2.head = new haxe_ds_GenericCell(tk,_this2.head); - } else { - switch(tk._hx_index) { - case 1: - var _g = tk.c; - if(_g._hx_index == 0) { - var e = _g.v; - pow = e; - } else { - var _this3 = this.tokens; - _this3.head = new haxe_ds_GenericCell(tk,_this3.head); - } - break; - case 3: - if(tk.s == "-") { - tk = this.token(); - if(tk == null) { - var _this4 = this.tokens; - _this4.head = new haxe_ds_GenericCell(tk,_this4.head); - } else if(tk._hx_index == 1) { - var _g1 = tk.c; - if(_g1._hx_index == 0) { - var e1 = _g1.v; - pow = -e1; - } else { - var _this5 = this.tokens; - _this5.head = new haxe_ds_GenericCell(tk,_this5.head); - } - } else { - var _this6 = this.tokens; - _this6.head = new haxe_ds_GenericCell(tk,_this6.head); - } - } else { - var _this7 = this.tokens; - _this7.head = new haxe_ds_GenericCell(tk,_this7.head); - } - break; - default: - var _this8 = this.tokens; - _this8.head = new haxe_ds_GenericCell(tk,_this8.head); - } - } - if(pow == null) { - this.invalidChar(char); - } - return hscript_Token.TConst(hscript_Const.CFloat(Math.pow(10,pow) / exp1 * n1 * 10)); - case 120: - if(n1 > 0 || exp1 > 0) { - this.invalidChar(char); - } - var n2 = 0; - while(true) { - char = this.readChar(); - switch(char) { - case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57: - n2 = (n2 << 4) + char - 48; - break; - case 65:case 66:case 67:case 68:case 69:case 70: - n2 = (n2 << 4) + (char - 55); - break; - case 97:case 98:case 99:case 100:case 101:case 102: - n2 = (n2 << 4) + (char - 87); - break; - default: - this.char = char; - return hscript_Token.TConst(hscript_Const.CInt(n2)); - } - } - break; - default: - this.char = char; - var i1 = n1 | 0; - return hscript_Token.TConst(exp1 > 0 ? hscript_Const.CFloat(n1 * 10 / exp1) : i1 == n1 ? hscript_Const.CInt(i1) : hscript_Const.CFloat(n1)); - } - } - break; - case 58: - return hscript_Token.TDoubleDot; - case 59: - return hscript_Token.TSemicolon; - case 61: - char = this.readChar(); - if(char == 61) { - return hscript_Token.TOp("=="); - } else if(char == 62) { - return hscript_Token.TOp("=>"); - } - this.char = char; - return hscript_Token.TOp("="); - case 63: - return hscript_Token.TQuestion; - case 64: - char = this.readChar(); - if(this.idents[char] || char == 58) { - var id1 = String.fromCodePoint(char); - while(true) { - char = this.readChar(); - if(!this.idents[char]) { - this.char = char; - return hscript_Token.TMeta(id1); - } - id1 += String.fromCodePoint(char); - } - } - this.invalidChar(char); - break; - case 91: - return hscript_Token.TBkOpen; - case 93: - return hscript_Token.TBkClose; - case 123: - return hscript_Token.TBrOpen; - case 125: - return hscript_Token.TBrClose; - default: - if(this.ops[char]) { - var op = String.fromCodePoint(char); - var prev = -1; - while(true) { - char = this.readChar(); - if(!this.ops[char] || prev == 61) { - if(HxOverrides.cca(op,0) == 47) { - return this.tokenComment(op,char); - } - this.char = char; - return hscript_Token.TOp(op); - } - prev = char; - op += String.fromCodePoint(char); - } - } - if(this.idents[char]) { - var id2 = String.fromCodePoint(char); - while(true) { - char = this.readChar(); - if(!this.idents[char]) { - this.char = char; - return hscript_Token.TId(id2); - } - id2 += String.fromCodePoint(char); - } - } - this.invalidChar(char); - } - char = this.readChar(); - } - } - ,preprocValue: function(id) { - var _this = this.preprocesorValues; - if(__map_reserved[id] != null) { - return _this.getReserved(id); - } else { - return _this.h[id]; - } - } - ,preprocStack: null - ,parsePreproCond: function() { - var tk = this.token(); - if(tk == null) { - return this.unexpected(tk); - } else { - switch(tk._hx_index) { - case 2: - var id = tk.s; - return hscript_Expr.EIdent(id); - case 3: - if(tk.s == "!") { - return hscript_Expr.EUnop("!",true,this.parsePreproCond()); - } else { - return this.unexpected(tk); - } - break; - case 4: - var _this = this.tokens; - _this.head = new haxe_ds_GenericCell(hscript_Token.TPOpen,_this.head); - return this.parseExpr(); - default: - return this.unexpected(tk); - } - } - } - ,evalPreproCond: function(e) { - switch(e._hx_index) { - case 1: - var id = e.v; - return this.preprocValue(id) != null; - case 3: - var e1 = e.e; - return this.evalPreproCond(e1); - case 6: - var _g6 = e.e2; - var _g5 = e.e1; - switch(e.op) { - case "&&": - var e2 = _g6; - var e11 = _g5; - if(this.evalPreproCond(e11)) { - return this.evalPreproCond(e2); - } else { - return false; - } - break; - case "||": - var e21 = _g6; - var e12 = _g5; - if(!this.evalPreproCond(e12)) { - return this.evalPreproCond(e21); - } else { - return true; - } - break; - default: - throw new js__$Boot_HaxeError(hscript_Error.EInvalidPreprocessor("Can't eval " + $hxEnums[e.__enum__].__constructs__[e._hx_index])); - } - break; - case 7: - var _g1 = e.prefix; - if(e.op == "!") { - var e3 = e.e; - return !this.evalPreproCond(e3); - } else { - throw new js__$Boot_HaxeError(hscript_Error.EInvalidPreprocessor("Can't eval " + $hxEnums[e.__enum__].__constructs__[e._hx_index])); - } - break; - default: - throw new js__$Boot_HaxeError(hscript_Error.EInvalidPreprocessor("Can't eval " + $hxEnums[e.__enum__].__constructs__[e._hx_index])); - } - } - ,preprocess: function(id) { - switch(id) { - case "else":case "elseif": - if(this.preprocStack.length > 0) { - if(this.preprocStack[this.preprocStack.length - 1].r) { - this.preprocStack[this.preprocStack.length - 1].r = false; - this.skipTokens(); - return this.token(); - } else if(id == "else") { - this.preprocStack.pop(); - this.preprocStack.push({ r : true}); - return this.token(); - } else { - this.preprocStack.pop(); - return this.preprocess("if"); - } - } else { - return hscript_Token.TPrepro(id); - } - break; - case "end": - if(this.preprocStack.length > 0) { - this.preprocStack.pop(); - return this.token(); - } else { - return hscript_Token.TPrepro(id); - } - break; - case "if": - var e = this.parsePreproCond(); - if(this.evalPreproCond(e)) { - this.preprocStack.push({ r : true}); - return this.token(); - } - this.preprocStack.push({ r : false}); - this.skipTokens(); - return this.token(); - default: - return hscript_Token.TPrepro(id); - } - } - ,skipTokens: function() { - var spos = this.preprocStack.length - 1; - var obj = this.preprocStack[spos]; - var pos = 0; - while(true) { - var tk = this.token(); - if(tk == hscript_Token.TEof) { - throw new js__$Boot_HaxeError(hscript_Error.EInvalidPreprocessor("Unclosed")); - } - if(this.preprocStack[spos] != obj) { - var _this = this.tokens; - _this.head = new haxe_ds_GenericCell(tk,_this.head); - break; - } - } - } - ,tokenComment: function(op,char) { - var c = HxOverrides.cca(op,1); - var s = this.input; - if(c == 47) { - try { - while(char != 13 && char != 10) char = s.readByte(); - this.char = char; - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - } - return this.token(); - } - if(c == 42) { - var old = this.line; - if(op == "/**/") { - this.char = char; - return this.token(); - } - try { - while(true) { - while(char != 42) { - if(char == 10) { - this.line++; - } - char = s.readByte(); - } - char = s.readByte(); - if(char == 47) { - break; - } - } - } catch( e2 ) { - haxe_CallStack.lastException = e2; - var e3 = ((e2) instanceof js__$Boot_HaxeError) ? e2.val : e2; - this.line = old; - throw new js__$Boot_HaxeError(hscript_Error.EUnterminatedComment); - } - return this.token(); - } - this.char = char; - return hscript_Token.TOp(op); - } - ,constString: function(c) { - switch(c._hx_index) { - case 0: - var v = c.v; - if(v == null) { - return "null"; - } else { - return "" + v; - } - break; - case 1: - var f = c.f; - if(f == null) { - return "null"; - } else { - return "" + f; - } - break; - case 2: - var s = c.s; - return s; - } - } - ,tokenString: function(t) { - switch(t._hx_index) { - case 0: - return ""; - case 1: - var c = t.c; - return this.constString(c); - case 2: - var s = t.s; - return s; - case 3: - var s1 = t.s; - return s1; - case 4: - return "("; - case 5: - return ")"; - case 6: - return "{"; - case 7: - return "}"; - case 8: - return "."; - case 9: - return ","; - case 10: - return ";"; - case 11: - return "["; - case 12: - return "]"; - case 13: - return "?"; - case 14: - return ":"; - case 15: - var id = t.s; - return "@" + id; - case 16: - var id1 = t.s; - return "#" + id1; - } - } - ,__class__: hscript_Parser -}; -var hscript_Tools = function() { }; -$hxClasses["hscript.Tools"] = hscript_Tools; -hscript_Tools.__name__ = "hscript.Tools"; -hscript_Tools.iter = function(e,f) { - switch(e._hx_index) { - case 0: - var _g19 = e.c; - break; - case 1: - var _g27 = e.v; - break; - case 2: - var _g32 = e.t; - var _g31 = e.n; - var e1 = e.e; - if(e1 != null) { - f(e1); - } - break; - case 3: - var e2 = e.e; - f(e2); - break; - case 4: - var el = e.e; - var _g = 0; - while(_g < el.length) { - var e3 = el[_g]; - ++_g; - f(e3); - } - break; - case 5: - var _g49 = e.f; - var e4 = e.e; - f(e4); - break; - case 6: - var _g36 = e.op; - var e21 = e.e2; - var e11 = e.e1; - f(e11); - f(e21); - break; - case 7: - var _g13 = e.prefix; - var _g12 = e.op; - var e5 = e.e; - f(e5); - break; - case 8: - var args = e.params; - var e6 = e.e; - f(e6); - var _g1 = 0; - while(_g1 < args.length) { - var a = args[_g1]; - ++_g1; - f(a); - } - break; - case 9: - var e22 = e.e2; - var e12 = e.e1; - var c = e.cond; - f(c); - f(e12); - if(e22 != null) { - f(e22); - } - break; - case 10: - var e7 = e.e; - var c1 = e.cond; - f(c1); - f(e7); - break; - case 11: - var _g28 = e.v; - var e8 = e.e; - var it = e.it; - f(it); - f(e8); - break; - case 12:case 13: - break; - case 14: - var _g44 = e.ret; - var _g43 = e.name; - var _g41 = e.args; - var e9 = e.e; - f(e9); - break; - case 15: - var e10 = e.e; - if(e10 != null) { - f(e10); - } - break; - case 16: - var i = e.index; - var e13 = e.e; - f(e13); - f(i); - break; - case 17: - var el1 = e.e; - var _g2 = 0; - while(_g2 < el1.length) { - var e14 = el1[_g2]; - ++_g2; - f(e14); - } - break; - case 18: - var _g17 = e.cl; - var el2 = e.params; - var _g3 = 0; - while(_g3 < el2.length) { - var e15 = el2[_g3]; - ++_g3; - f(e15); - } - break; - case 19: - var e16 = e.e; - f(e16); - break; - case 20: - var _g5 = e.t; - var _g4 = e.v; - var c2 = e.ecatch; - var e17 = e.e; - f(e17); - f(c2); - break; - case 21: - var fl = e.fl; - var _g6 = 0; - while(_g6 < fl.length) { - var fi = fl[_g6]; - ++_g6; - f(fi.e); - } - break; - case 22: - var e23 = e.e2; - var e18 = e.e1; - var c3 = e.cond; - f(c3); - f(e18); - f(e23); - break; - case 23: - var def = e.defaultExpr; - var cases = e.cases; - var e19 = e.e; - f(e19); - var _g7 = 0; - while(_g7 < cases.length) { - var c4 = cases[_g7]; - ++_g7; - var _g8 = 0; - var _g11 = c4.values; - while(_g8 < _g11.length) { - var v = _g11[_g8]; - ++_g8; - f(v); - } - f(c4.expr); - } - if(def != null) { - f(def); - } - break; - case 24: - var e20 = e.e; - var c5 = e.cond; - f(c5); - f(e20); - break; - case 25: - var e24 = e.e; - var args1 = e.args; - var name = e.name; - if(args1 != null) { - var _g9 = 0; - while(_g9 < args1.length) { - var a1 = args1[_g9]; - ++_g9; - f(a1); - } - } - f(e24); - break; - case 26: - var _g46 = e.t; - var e25 = e.e; - f(e25); - break; - } -}; -hscript_Tools.map = function(e,f) { - var edef; - switch(e._hx_index) { - case 0: - var _g19 = e.c; - edef = e; - break; - case 1: - var _g27 = e.v; - edef = e; - break; - case 2: - var e1 = e.e; - var t = e.t; - var n = e.n; - edef = hscript_Expr.EVar(n,t,e1 != null ? f(e1) : null); - break; - case 3: - var e2 = e.e; - edef = hscript_Expr.EParent(f(e2)); - break; - case 4: - var el = e.e; - var _g = []; - var _g1 = 0; - while(_g1 < el.length) { - var e3 = el[_g1]; - ++_g1; - _g.push(f(e3)); - } - edef = hscript_Expr.EBlock(_g); - break; - case 5: - var fi = e.f; - var e4 = e.e; - edef = hscript_Expr.EField(f(e4),fi); - break; - case 6: - var e21 = e.e2; - var e11 = e.e1; - var op = e.op; - edef = hscript_Expr.EBinop(op,f(e11),f(e21)); - break; - case 7: - var e5 = e.e; - var pre = e.prefix; - var op1 = e.op; - edef = hscript_Expr.EUnop(op1,pre,f(e5)); - break; - case 8: - var args = e.params; - var e6 = e.e; - var edef1 = f(e6); - var _g2 = []; - var _g11 = 0; - while(_g11 < args.length) { - var a = args[_g11]; - ++_g11; - _g2.push(f(a)); - } - edef = hscript_Expr.ECall(edef1,_g2); - break; - case 9: - var e22 = e.e2; - var e12 = e.e1; - var c = e.cond; - edef = hscript_Expr.EIf(f(c),f(e12),e22 != null ? f(e22) : null); - break; - case 10: - var e7 = e.e; - var c1 = e.cond; - edef = hscript_Expr.EWhile(f(c1),f(e7)); - break; - case 11: - var e8 = e.e; - var it = e.it; - var v = e.v; - edef = hscript_Expr.EFor(v,f(it),f(e8)); - break; - case 12:case 13: - edef = e; - break; - case 14: - var t1 = e.ret; - var name = e.name; - var e9 = e.e; - var args1 = e.args; - edef = hscript_Expr.EFunction(args1,f(e9),name,t1); - break; - case 15: - var e10 = e.e; - edef = hscript_Expr.EReturn(e10 != null ? f(e10) : null); - break; - case 16: - var i = e.index; - var e13 = e.e; - edef = hscript_Expr.EArray(f(e13),f(i)); - break; - case 17: - var el1 = e.e; - var _g3 = []; - var _g12 = 0; - while(_g12 < el1.length) { - var e14 = el1[_g12]; - ++_g12; - _g3.push(f(e14)); - } - edef = hscript_Expr.EArrayDecl(_g3); - break; - case 18: - var el2 = e.params; - var cl = e.cl; - var _g4 = []; - var _g13 = 0; - while(_g13 < el2.length) { - var e15 = el2[_g13]; - ++_g13; - _g4.push(f(e15)); - } - edef = hscript_Expr.ENew(cl,_g4); - break; - case 19: - var e16 = e.e; - edef = hscript_Expr.EThrow(f(e16)); - break; - case 20: - var c2 = e.ecatch; - var t2 = e.t; - var v1 = e.v; - var e17 = e.e; - edef = hscript_Expr.ETry(f(e17),v1,t2,f(c2)); - break; - case 21: - var fl = e.fl; - var _g5 = []; - var _g14 = 0; - while(_g14 < fl.length) { - var fi1 = fl[_g14]; - ++_g14; - _g5.push({ name : fi1.name, e : f(fi1.e)}); - } - edef = hscript_Expr.EObject(_g5); - break; - case 22: - var e23 = e.e2; - var e18 = e.e1; - var c3 = e.cond; - edef = hscript_Expr.ETernary(f(c3),f(e18),f(e23)); - break; - case 23: - var def = e.defaultExpr; - var cases = e.cases; - var e19 = e.e; - var edef2 = f(e19); - var _g6 = []; - var _g15 = 0; - while(_g15 < cases.length) { - var c4 = cases[_g15]; - ++_g15; - var _g16 = []; - var _g21 = 0; - var _g31 = c4.values; - while(_g21 < _g31.length) { - var v2 = _g31[_g21]; - ++_g21; - _g16.push(f(v2)); - } - _g6.push({ values : _g16, expr : f(c4.expr)}); - } - edef = hscript_Expr.ESwitch(edef2,_g6,def == null ? null : f(def)); - break; - case 24: - var e20 = e.e; - var c5 = e.cond; - edef = hscript_Expr.EDoWhile(f(c5),f(e20)); - break; - case 25: - var e24 = e.e; - var args2 = e.args; - var name1 = e.name; - var edef3; - if(args2 == null) { - edef3 = null; - } else { - var _g7 = []; - var _g17 = 0; - while(_g17 < args2.length) { - var a1 = args2[_g17]; - ++_g17; - _g7.push(f(a1)); - } - edef3 = _g7; - } - edef = hscript_Expr.EMeta(name1,edef3,f(e24)); - break; - case 26: - var t3 = e.t; - var e25 = e.e; - edef = hscript_Expr.ECheckType(f(e25),t3); - break; - } - return edef; -}; -hscript_Tools.expr = function(e) { - return e; -}; -hscript_Tools.mk = function(e,p) { - return e; -}; -var js_Browser = function() { }; -$hxClasses["js.Browser"] = js_Browser; -js_Browser.__name__ = "js.Browser"; -js_Browser.getLocalStorage = function() { - try { - var s = window.localStorage; - s.getItem(""); - if(s.length == 0) { - var key = "_hx_" + Math.random(); - s.setItem(key,key); - s.removeItem(key); - } - return s; - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - return null; - } -}; -var js_html__$CanvasElement_CanvasUtil = function() { }; -$hxClasses["js.html._CanvasElement.CanvasUtil"] = js_html__$CanvasElement_CanvasUtil; -js_html__$CanvasElement_CanvasUtil.__name__ = "js.html._CanvasElement.CanvasUtil"; -js_html__$CanvasElement_CanvasUtil.getContextWebGL = function(canvas,attribs) { - var name = "webgl"; - var ctx = canvas.getContext(name,attribs); - if(ctx != null) { - return ctx; - } - var name1 = "experimental-webgl"; - var ctx1 = canvas.getContext(name1,attribs); - if(ctx1 != null) { - return ctx1; - } - return null; -}; -var js_lib__$ArrayBuffer_ArrayBufferCompat = function() { }; -$hxClasses["js.lib._ArrayBuffer.ArrayBufferCompat"] = js_lib__$ArrayBuffer_ArrayBufferCompat; -js_lib__$ArrayBuffer_ArrayBufferCompat.__name__ = "js.lib._ArrayBuffer.ArrayBufferCompat"; -js_lib__$ArrayBuffer_ArrayBufferCompat.sliceImpl = function(begin,end) { - var u = new Uint8Array(this,begin,end == null ? null : end - begin); - var resultArray = new Uint8Array(u.byteLength); - resultArray.set(u); - return resultArray.buffer; -}; -var lime__$internal_backend_html5_GameDeviceData = function() { - this.connected = true; - this.buttons = []; - this.axes = []; -}; -$hxClasses["lime._internal.backend.html5.GameDeviceData"] = lime__$internal_backend_html5_GameDeviceData; -lime__$internal_backend_html5_GameDeviceData.__name__ = "lime._internal.backend.html5.GameDeviceData"; -lime__$internal_backend_html5_GameDeviceData.prototype = { - connected: null - ,id: null - ,isGamepad: null - ,buttons: null - ,axes: null - ,__class__: lime__$internal_backend_html5_GameDeviceData -}; -var lime__$internal_backend_html5_HTML5AudioSource = function(parent) { - this.parent = parent; - this.id = -1; - this.gain = 1; - this.position = new lime_math_Vector4(); -}; -$hxClasses["lime._internal.backend.html5.HTML5AudioSource"] = lime__$internal_backend_html5_HTML5AudioSource; -lime__$internal_backend_html5_HTML5AudioSource.__name__ = "lime._internal.backend.html5.HTML5AudioSource"; -lime__$internal_backend_html5_HTML5AudioSource.prototype = { - completed: null - ,gain: null - ,id: null - ,length: null - ,loops: null - ,parent: null - ,playing: null - ,position: null - ,dispose: function() { - } - ,init: function() { - } - ,play: function() { - if(this.playing || this.parent.buffer == null || this.parent.buffer.__srcHowl == null) { - return; - } - this.playing = true; - var time = this.getCurrentTime(); - this.completed = false; - var cacheVolume = this.parent.buffer.__srcHowl._volume; - this.parent.buffer.__srcHowl._volume = this.parent.get_gain(); - this.id = this.parent.buffer.__srcHowl.play(); - this.parent.buffer.__srcHowl._volume = cacheVolume; - this.setPosition(this.parent.get_position()); - this.parent.buffer.__srcHowl.on("end",$bind(this,this.howl_onEnd),this.id); - this.setCurrentTime(time); - } - ,pause: function() { - this.playing = false; - if(this.parent.buffer != null && this.parent.buffer.__srcHowl != null) { - this.parent.buffer.__srcHowl.pause(this.id); - } - } - ,stop: function() { - this.playing = false; - if(this.parent.buffer != null && this.parent.buffer.__srcHowl != null) { - this.parent.buffer.__srcHowl.stop(this.id); - this.parent.buffer.__srcHowl.off("end",$bind(this,this.howl_onEnd),this.id); - } - } - ,howl_onEnd: function() { - this.playing = false; - if(this.loops > 0) { - this.loops--; - this.stop(); - this.play(); - return; - } else if(this.parent.buffer != null && this.parent.buffer.__srcHowl != null) { - this.parent.buffer.__srcHowl.stop(this.id); - this.parent.buffer.__srcHowl.off("end",$bind(this,this.howl_onEnd),this.id); - } - this.completed = true; - this.parent.onComplete.dispatch(); - } - ,getCurrentTime: function() { - if(this.id == -1) { - return 0; - } - if(this.completed) { - return this.getLength(); - } else if(this.parent.buffer != null && this.parent.buffer.__srcHowl != null) { - var time = (this.parent.buffer.__srcHowl.seek(this.id) * 1000 | 0) - this.parent.offset; - if(time < 0) { - return 0; - } - return time; - } - return 0; - } - ,setCurrentTime: function(value) { - if(this.parent.buffer != null && this.parent.buffer.__srcHowl != null) { - var pos = (value + this.parent.offset) / 1000; - if(pos < 0) { - pos = 0; - } - this.parent.buffer.__srcHowl.seek(pos,this.id); - } - return value; - } - ,getGain: function() { - return this.gain; - } - ,setGain: function(value) { - if(this.parent.buffer != null && this.parent.buffer.__srcHowl != null && this.id != -1) { - this.parent.buffer.__srcHowl.volume(value,this.id); - } - return this.gain = value; - } - ,getLength: function() { - if(this.length != 0) { - return this.length; - } - if(this.parent.buffer != null && this.parent.buffer.__srcHowl != null) { - return this.parent.buffer.__srcHowl.duration() * 1000 | 0; - } - return 0; - } - ,setLength: function(value) { - return this.length = value; - } - ,getLoops: function() { - return this.loops; - } - ,setLoops: function(value) { - return this.loops = value; - } - ,getPosition: function() { - return this.position; - } - ,setPosition: function(value) { - this.position.x = value.x; - this.position.y = value.y; - this.position.z = value.z; - this.position.w = value.w; - if(this.parent.buffer.__srcHowl != null && this.parent.buffer.__srcHowl.pos != null) { - this.parent.buffer.__srcHowl.pos(this.position.x,this.position.y,this.position.z,this.id); - } - return this.position; - } - ,__class__: lime__$internal_backend_html5_HTML5AudioSource -}; -var lime__$internal_backend_html5_HTML5HTTPRequest = function() { - this.validStatus0 = new EReg("Tizen","gi").match(window.navigator.userAgent); -}; -$hxClasses["lime._internal.backend.html5.HTML5HTTPRequest"] = lime__$internal_backend_html5_HTML5HTTPRequest; -lime__$internal_backend_html5_HTML5HTTPRequest.__name__ = "lime._internal.backend.html5.HTML5HTTPRequest"; -lime__$internal_backend_html5_HTML5HTTPRequest.originElement = null; -lime__$internal_backend_html5_HTML5HTTPRequest.originHostname = null; -lime__$internal_backend_html5_HTML5HTTPRequest.originPort = null; -lime__$internal_backend_html5_HTML5HTTPRequest.originProtocol = null; -lime__$internal_backend_html5_HTML5HTTPRequest.supportsImageProgress = null; -lime__$internal_backend_html5_HTML5HTTPRequest.loadImage = function(uri) { - var promise = new lime_app_Promise(); - if(lime__$internal_backend_html5_HTML5HTTPRequest.activeRequests < lime__$internal_backend_html5_HTML5HTTPRequest.requestLimit) { - lime__$internal_backend_html5_HTML5HTTPRequest.activeRequests++; - lime__$internal_backend_html5_HTML5HTTPRequest.__loadImage(uri,promise,0); - } else { - lime__$internal_backend_html5_HTML5HTTPRequest.requestQueue.add({ instance : null, uri : uri, promise : promise, type : "IMAGE", options : 0}); - } - return promise.future; -}; -lime__$internal_backend_html5_HTML5HTTPRequest.loadImageFromBytes = function(bytes,type) { - var uri = URL.createObjectURL(new Blob([bytes.b.bufferValue],{ type : type})); - if(uri != null) { - var promise = new lime_app_Promise(); - if(lime__$internal_backend_html5_HTML5HTTPRequest.activeRequests < lime__$internal_backend_html5_HTML5HTTPRequest.requestLimit) { - lime__$internal_backend_html5_HTML5HTTPRequest.activeRequests++; - lime__$internal_backend_html5_HTML5HTTPRequest.__loadImage(uri,promise,1); - } else { - lime__$internal_backend_html5_HTML5HTTPRequest.requestQueue.add({ instance : null, uri : uri, promise : promise, type : "IMAGE", options : 1}); - } - return promise.future; - } else { - return lime__$internal_backend_html5_HTML5HTTPRequest.loadImage("data:" + type + ";base64," + lime__$internal_format_Base64.encode(bytes)); - } -}; -lime__$internal_backend_html5_HTML5HTTPRequest.processQueue = function() { - if(lime__$internal_backend_html5_HTML5HTTPRequest.activeRequests < lime__$internal_backend_html5_HTML5HTTPRequest.requestLimit && lime__$internal_backend_html5_HTML5HTTPRequest.requestQueue.length > 0) { - lime__$internal_backend_html5_HTML5HTTPRequest.activeRequests++; - var queueItem = lime__$internal_backend_html5_HTML5HTTPRequest.requestQueue.pop(); - switch(queueItem.type) { - case "BINARY": - queueItem.instance.__loadData(queueItem.uri,queueItem.promise); - break; - case "IMAGE": - lime__$internal_backend_html5_HTML5HTTPRequest.__loadImage(queueItem.uri,queueItem.promise,queueItem.options); - break; - case "TEXT": - queueItem.instance.__loadText(queueItem.uri,queueItem.promise); - break; - default: - lime__$internal_backend_html5_HTML5HTTPRequest.activeRequests--; - } - } -}; -lime__$internal_backend_html5_HTML5HTTPRequest.__createBlobURIFromBytes = function(bytes,type) { - return URL.createObjectURL(new Blob([bytes.b.bufferValue],{ type : type})); -}; -lime__$internal_backend_html5_HTML5HTTPRequest.__fixHostname = function(hostname) { - if(hostname == null) { - return ""; - } else { - return hostname; - } -}; -lime__$internal_backend_html5_HTML5HTTPRequest.__fixPort = function(port,protocol) { - if(port == null || port == "") { - switch(protocol) { - case "ftp:": - return "21"; - case "gopher:": - return "70"; - case "http:": - return "80"; - case "https:": - return "443"; - case "ws:": - return "80"; - case "wss:": - return "443"; - default: - return ""; - } - } - return port; -}; -lime__$internal_backend_html5_HTML5HTTPRequest.__fixProtocol = function(protocol) { - if(protocol == null || protocol == "") { - return "http:"; - } else { - return protocol; - } -}; -lime__$internal_backend_html5_HTML5HTTPRequest.__isInMemoryURI = function(uri) { - if(!StringTools.startsWith(uri,"data:")) { - return StringTools.startsWith(uri,"blob:"); - } else { - return true; - } -}; -lime__$internal_backend_html5_HTML5HTTPRequest.__isSameOrigin = function(path) { - if(path == null || path == "") { - return true; - } - if(lime__$internal_backend_html5_HTML5HTTPRequest.__isInMemoryURI(path)) { - return true; - } - if(lime__$internal_backend_html5_HTML5HTTPRequest.originElement == null) { - lime__$internal_backend_html5_HTML5HTTPRequest.originElement = window.document.createElement("a"); - lime__$internal_backend_html5_HTML5HTTPRequest.originHostname = lime__$internal_backend_html5_HTML5HTTPRequest.__fixHostname(window.location.hostname); - lime__$internal_backend_html5_HTML5HTTPRequest.originProtocol = lime__$internal_backend_html5_HTML5HTTPRequest.__fixProtocol(window.location.protocol); - lime__$internal_backend_html5_HTML5HTTPRequest.originPort = lime__$internal_backend_html5_HTML5HTTPRequest.__fixPort(window.location.port,lime__$internal_backend_html5_HTML5HTTPRequest.originProtocol); - } - var a = lime__$internal_backend_html5_HTML5HTTPRequest.originElement; - a.href = path; - if(a.hostname == "") { - a.href = a.href; - } - var hostname = lime__$internal_backend_html5_HTML5HTTPRequest.__fixHostname(a.hostname); - var protocol = lime__$internal_backend_html5_HTML5HTTPRequest.__fixProtocol(a.protocol); - var port = lime__$internal_backend_html5_HTML5HTTPRequest.__fixPort(a.port,protocol); - var sameHost = hostname == "" || hostname == lime__$internal_backend_html5_HTML5HTTPRequest.originHostname; - var samePort = port == "" || port == lime__$internal_backend_html5_HTML5HTTPRequest.originPort; - if(protocol != "file:" && sameHost) { - return samePort; - } else { - return false; - } -}; -lime__$internal_backend_html5_HTML5HTTPRequest.__loadImage = function(uri,promise,options) { - var image = new Image(); - if(!lime__$internal_backend_html5_HTML5HTTPRequest.__isSameOrigin(uri)) { - image.crossOrigin = "Anonymous"; - } - if(lime__$internal_backend_html5_HTML5HTTPRequest.supportsImageProgress == null) { - lime__$internal_backend_html5_HTML5HTTPRequest.supportsImageProgress = 'onprogress' in image; - } - if(lime__$internal_backend_html5_HTML5HTTPRequest.supportsImageProgress || lime__$internal_backend_html5_HTML5HTTPRequest.__isInMemoryURI(uri)) { - image.addEventListener("load",function(event) { - lime__$internal_backend_html5_HTML5HTTPRequest.__revokeBlobURI(uri,options); - var buffer = new lime_graphics_ImageBuffer(null,image.width,image.height); - buffer.__srcImage = image; - lime__$internal_backend_html5_HTML5HTTPRequest.activeRequests--; - lime__$internal_backend_html5_HTML5HTTPRequest.processQueue(); - promise.complete(new lime_graphics_Image(buffer)); - },false); - image.addEventListener("progress",function(event1) { - promise.progress(event1.loaded,event1.total); - },false); - image.addEventListener("error",function(event2) { - lime__$internal_backend_html5_HTML5HTTPRequest.__revokeBlobURI(uri,options); - lime__$internal_backend_html5_HTML5HTTPRequest.activeRequests--; - lime__$internal_backend_html5_HTML5HTTPRequest.processQueue(); - promise.error(event2.detail); - },false); - image.src = uri; - } else { - var request = new XMLHttpRequest(); - request.onload = function(_) { - lime__$internal_backend_html5_HTML5HTTPRequest.activeRequests--; - lime__$internal_backend_html5_HTML5HTTPRequest.processQueue(); - var img = new lime_graphics_Image(); - img.__fromBytes(haxe_io_Bytes.ofData(request.response),function(img1) { - promise.complete(img1); - }); - }; - request.onerror = function(event3) { - promise.error(event3.message); - }; - request.onprogress = function(event4) { - if(event4.lengthComputable) { - promise.progress(event4.loaded,event4.total); - } - }; - request.open("GET",uri,true); - request.responseType = "arraybuffer"; - request.overrideMimeType("text/plain; charset=x-user-defined"); - request.send(null); - } -}; -lime__$internal_backend_html5_HTML5HTTPRequest.__revokeBlobURI = function(uri,options) { - if((options & 1) != 0) { - URL.revokeObjectURL(uri); - } -}; -lime__$internal_backend_html5_HTML5HTTPRequest.prototype = { - binary: null - ,parent: null - ,request: null - ,validStatus0: null - ,cancel: function() { - if(this.request != null) { - this.request.abort(); - } - } - ,init: function(parent) { - this.parent = parent; - } - ,load: function(uri,progress,readyStateChange) { - this.request = new XMLHttpRequest(); - if(this.parent.method == "POST") { - this.request.upload.addEventListener("progress",progress,false); - } else { - this.request.addEventListener("progress",progress,false); - } - this.request.onreadystatechange = readyStateChange; - var query = ""; - if(this.parent.data == null) { - var key = this.parent.formData.keys(); - while(key.hasNext()) { - var key1 = key.next(); - if(query.length > 0) { - query += "&"; - } - var _this = this.parent.formData; - var value = __map_reserved[key1] != null ? _this.getReserved(key1) : _this.h[key1]; - if(key1.indexOf("[]") > -1 && ((value) instanceof Array)) { - var _g = []; - var x = $getIterator(value); - while(x.hasNext()) { - var x1 = x.next(); - _g.push(encodeURIComponent(x1)); - } - var arrayValue = _g.join("&" + key1 + "="); - query += encodeURIComponent(key1) + "=" + arrayValue; - } else { - var query1 = encodeURIComponent(key1) + "="; - var s = Std.string(value); - query += query1 + encodeURIComponent(s); - } - } - if(this.parent.method == "GET" && query != "") { - if(uri.indexOf("?") > -1) { - uri += "&" + query; - } else { - uri += "?" + query; - } - query = ""; - } - } - this.request.open(Std.string(this.parent.method),uri,true); - if(this.parent.timeout > 0) { - this.request.timeout = this.parent.timeout; - } - if(this.binary) { - this.request.responseType = "arraybuffer"; - } - var contentType = null; - var _g1 = 0; - var _g11 = this.parent.headers; - while(_g1 < _g11.length) { - var header = _g11[_g1]; - ++_g1; - if(header.name == "Content-Type") { - contentType = header.value; - } else { - this.request.setRequestHeader(header.name,header.value); - } - } - if(this.parent.contentType != null) { - contentType = this.parent.contentType; - } - if(contentType == null) { - if(this.parent.data != null) { - contentType = "application/octet-stream"; - } else if(query != "") { - contentType = "application/x-www-form-urlencoded"; - } - } - if(contentType != null) { - this.request.setRequestHeader("Content-Type",contentType); - } - if(this.parent.withCredentials) { - this.request.withCredentials = true; - } - if(this.parent.data != null) { - this.request.send(this.parent.data.b.bufferValue); - } else { - this.request.send(query); - } - } - ,loadData: function(uri) { - var promise = new lime_app_Promise(); - if(lime__$internal_backend_html5_HTML5HTTPRequest.activeRequests < lime__$internal_backend_html5_HTML5HTTPRequest.requestLimit) { - lime__$internal_backend_html5_HTML5HTTPRequest.activeRequests++; - this.__loadData(uri,promise); - } else { - lime__$internal_backend_html5_HTML5HTTPRequest.requestQueue.add({ instance : this, uri : uri, promise : promise, type : "BINARY", options : 0}); - } - return promise.future; - } - ,loadText: function(uri) { - var promise = new lime_app_Promise(); - if(lime__$internal_backend_html5_HTML5HTTPRequest.activeRequests < lime__$internal_backend_html5_HTML5HTTPRequest.requestLimit) { - lime__$internal_backend_html5_HTML5HTTPRequest.activeRequests++; - this.__loadText(uri,promise); - } else { - lime__$internal_backend_html5_HTML5HTTPRequest.requestQueue.add({ instance : this, uri : uri, promise : promise, type : "TEXT", options : 0}); - } - return promise.future; - } - ,processResponse: function() { - if(this.parent.enableResponseHeaders) { - this.parent.responseHeaders = []; - var name; - var value; - var _g = 0; - var _g1 = this.request.getAllResponseHeaders().split("\n"); - while(_g < _g1.length) { - var line = _g1[_g]; - ++_g; - name = StringTools.trim(HxOverrides.substr(line,0,line.indexOf(":"))); - value = StringTools.trim(HxOverrides.substr(line,line.indexOf(":") + 1,null)); - if(name != "") { - this.parent.responseHeaders.push(new lime_net_HTTPRequestHeader(name,value)); - } - } - } - this.parent.responseStatus = this.request.status; - } - ,__loadData: function(uri,promise) { - var _gthis = this; - var progress = function(event) { - promise.progress(event.loaded,event.total); - }; - var readyStateChange = function(event1) { - if(_gthis.request.readyState != 4) { - return; - } - if(_gthis.request.status != null && (_gthis.request.status >= 200 && _gthis.request.status < 400 || _gthis.validStatus0 && _gthis.request.status == 0)) { - var bytes = null; - if(_gthis.request.responseType == "") { - if(_gthis.request.responseText != null) { - bytes = haxe_io_Bytes.ofString(_gthis.request.responseText); - } - } else if(_gthis.request.response != null) { - bytes = haxe_io_Bytes.ofData(_gthis.request.response); - } - _gthis.processResponse(); - promise.complete(bytes); - } else { - _gthis.processResponse(); - promise.error(_gthis.request.status); - } - _gthis.request = null; - lime__$internal_backend_html5_HTML5HTTPRequest.activeRequests--; - lime__$internal_backend_html5_HTML5HTTPRequest.processQueue(); - }; - this.binary = true; - this.load(uri,progress,readyStateChange); - } - ,__loadText: function(uri,promise) { - var _gthis = this; - var progress = function(event) { - promise.progress(event.loaded,event.total); - }; - var readyStateChange = function(event1) { - if(_gthis.request.readyState != 4) { - return; - } - if(_gthis.request.status != null && (_gthis.request.status >= 200 && _gthis.request.status <= 400 || _gthis.validStatus0 && _gthis.request.status == 0)) { - _gthis.processResponse(); - promise.complete(_gthis.request.responseText); - } else { - _gthis.processResponse(); - promise.error(_gthis.request.status); - } - _gthis.request = null; - lime__$internal_backend_html5_HTML5HTTPRequest.activeRequests--; - lime__$internal_backend_html5_HTML5HTTPRequest.processQueue(); - }; - this.binary = false; - this.load(uri,progress,readyStateChange); - } - ,__class__: lime__$internal_backend_html5_HTML5HTTPRequest -}; -var lime__$internal_backend_html5_HTML5Window = function(parent) { - this.unusedTouchesPool = new haxe_ds_List(); - this.scale = 1.0; - this.currentTouches = new haxe_ds_IntMap(); - this.parent = parent; - this.cursor = lime_ui_MouseCursor.DEFAULT; - this.cacheMouseX = 0; - this.cacheMouseY = 0; - var attributes = parent.__attributes; - if(!Object.prototype.hasOwnProperty.call(attributes,"context")) { - attributes.context = { }; - } - this.renderType = attributes.context.type; - if(Object.prototype.hasOwnProperty.call(attributes,"element")) { - parent.element = attributes.element; - } - var element = parent.element; - if(Object.prototype.hasOwnProperty.call(attributes,"allowHighDPI") && attributes.allowHighDPI && this.renderType != "dom") { - this.scale = window.devicePixelRatio; - } - parent.__scale = this.scale; - this.setWidth = Object.prototype.hasOwnProperty.call(attributes,"width") ? attributes.width : 0; - this.setHeight = Object.prototype.hasOwnProperty.call(attributes,"height") ? attributes.height : 0; - parent.__width = this.setWidth; - parent.__height = this.setHeight; - parent.id = lime__$internal_backend_html5_HTML5Window.windowID++; - if(((element) instanceof HTMLCanvasElement)) { - this.canvas = element; - } else if(this.renderType == "dom") { - this.div = window.document.createElement("div"); - } else { - this.canvas = window.document.createElement("canvas"); - } - if(this.canvas != null) { - var style = this.canvas.style; - style.setProperty("-webkit-transform","translateZ(0)",null); - style.setProperty("transform","translateZ(0)",null); - } else if(this.div != null) { - var style1 = this.div.style; - style1.setProperty("-webkit-transform","translate3D(0,0,0)",null); - style1.setProperty("transform","translate3D(0,0,0)",null); - style1.position = "relative"; - style1.overflow = "hidden"; - style1.setProperty("-webkit-user-select","none",null); - style1.setProperty("-moz-user-select","none",null); - style1.setProperty("-ms-user-select","none",null); - style1.setProperty("-o-user-select","none",null); - } - if(parent.__width == 0 && parent.__height == 0) { - if(element != null) { - parent.__width = element.clientWidth; - parent.__height = element.clientHeight; - } else { - parent.__width = window.innerWidth; - parent.__height = window.innerHeight; - } - this.cacheElementWidth = parent.__width; - this.cacheElementHeight = parent.__height; - this.resizeElement = true; - } - if(this.canvas != null) { - this.canvas.width = Math.round(parent.__width * this.scale); - this.canvas.height = Math.round(parent.__height * this.scale); - this.canvas.style.width = parent.__width + "px"; - this.canvas.style.height = parent.__height + "px"; - } else { - this.div.style.width = parent.__width + "px"; - this.div.style.height = parent.__height + "px"; - } - if(Object.prototype.hasOwnProperty.call(attributes,"resizable") && attributes.resizable || !Object.prototype.hasOwnProperty.call(attributes,"width") && this.setWidth == 0 && this.setHeight == 0) { - parent.__resizable = true; - } - this.updateSize(); - if(element != null) { - if(this.canvas != null) { - if(element != this.canvas) { - element.appendChild(this.canvas); - } - } else { - element.appendChild(this.div); - } - var events = ["mousedown","mouseenter","mouseleave","mousemove","mouseup","wheel"]; - var _g = 0; - while(_g < events.length) { - var event = events[_g]; - ++_g; - element.addEventListener(event,$bind(this,this.handleMouseEvent),true); - } - element.addEventListener("contextmenu",$bind(this,this.handleContextMenuEvent),true); - element.addEventListener("dragstart",$bind(this,this.handleDragEvent),true); - element.addEventListener("dragover",$bind(this,this.handleDragEvent),true); - element.addEventListener("drop",$bind(this,this.handleDragEvent),true); - element.addEventListener("touchstart",$bind(this,this.handleTouchEvent),true); - element.addEventListener("touchmove",$bind(this,this.handleTouchEvent),true); - element.addEventListener("touchend",$bind(this,this.handleTouchEvent),true); - element.addEventListener("touchcancel",$bind(this,this.handleTouchEvent),true); - element.addEventListener("gamepadconnected",$bind(this,this.handleGamepadEvent),true); - element.addEventListener("gamepaddisconnected",$bind(this,this.handleGamepadEvent),true); - } - this.createContext(); - if(parent.context.type == "webgl") { - this.canvas.addEventListener("webglcontextlost",$bind(this,this.handleContextEvent),false); - this.canvas.addEventListener("webglcontextrestored",$bind(this,this.handleContextEvent),false); - } -}; -$hxClasses["lime._internal.backend.html5.HTML5Window"] = lime__$internal_backend_html5_HTML5Window; -lime__$internal_backend_html5_HTML5Window.__name__ = "lime._internal.backend.html5.HTML5Window"; -lime__$internal_backend_html5_HTML5Window.textArea = null; -lime__$internal_backend_html5_HTML5Window.textInput = null; -lime__$internal_backend_html5_HTML5Window.prototype = { - canvas: null - ,div: null - ,cacheElementHeight: null - ,cacheElementWidth: null - ,cacheMouseX: null - ,cacheMouseY: null - ,cursor: null - ,currentTouches: null - ,isFullscreen: null - ,parent: null - ,primaryTouch: null - ,renderType: null - ,requestedFullscreen: null - ,resizeElement: null - ,scale: null - ,setHeight: null - ,setWidth: null - ,textInputEnabled: null - ,unusedTouchesPool: null - ,alert: function(message,title) { - if(message != null) { - window.alert(Std.string(message)); - } - } - ,close: function() { - this.parent.application.__removeWindow(this.parent); - } - ,createContext: function() { - var context = new lime_graphics_RenderContext(); - var contextAttributes = this.parent.__attributes.context; - context.window = this.parent; - context.attributes = contextAttributes; - if(this.div != null) { - context.dom = this.div; - context.type = "dom"; - context.version = ""; - } else if(this.canvas != null) { - var webgl = null; - var forceCanvas = this.renderType == "canvas"; - var forceWebGL = this.renderType == "opengl" || this.renderType == "opengles" || this.renderType == "webgl"; - var allowWebGL2 = !Object.prototype.hasOwnProperty.call(contextAttributes,"version") || contextAttributes.version != "1"; - var isWebGL2 = false; - if(forceWebGL || !forceCanvas && (!Object.prototype.hasOwnProperty.call(contextAttributes,"hardware") || contextAttributes.hardware)) { - var transparentBackground = Object.prototype.hasOwnProperty.call(contextAttributes,"background") && contextAttributes.background == null; - var colorDepth = Object.prototype.hasOwnProperty.call(contextAttributes,"colorDepth") ? contextAttributes.colorDepth : 16; - var options = Object.prototype.hasOwnProperty.call(contextAttributes,"antialiasing") && contextAttributes.antialiasing > 0; - var options1 = Object.prototype.hasOwnProperty.call(contextAttributes,"depth") ? contextAttributes.depth : true; - var options2 = Object.prototype.hasOwnProperty.call(contextAttributes,"stencil") && contextAttributes.stencil; - var options3 = { alpha : transparentBackground || colorDepth > 16, antialias : options, depth : options1, premultipliedAlpha : true, stencil : options2, preserveDrawingBuffer : false, failIfMajorPerformanceCaveat : true}; - var glContextType = ["webgl","experimental-webgl"]; - if(allowWebGL2) { - glContextType.unshift("webgl2"); - } - var _g = 0; - while(_g < glContextType.length) { - var name = glContextType[_g]; - ++_g; - webgl = this.canvas.getContext(name,options3); - if(webgl != null && name == "webgl2") { - isWebGL2 = true; - } - if(webgl != null) { - break; - } - } - } - if(webgl == null) { - context.canvas2D = this.canvas.getContext("2d"); - context.type = "canvas"; - context.version = ""; - } else { - context.webgl = lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.fromWebGL2RenderContext(webgl); - if(isWebGL2) { - context.webgl2 = webgl; - } - if(lime_graphics_opengl_GL.context == null) { - lime_graphics_opengl_GL.context = webgl; - lime_graphics_opengl_GL.type = "webgl"; - lime_graphics_opengl_GL.version = isWebGL2 ? 2 : 1; - } - context.type = "webgl"; - context.version = isWebGL2 ? "2" : "1"; - } - } - this.parent.context = context; - } - ,focus: function() { - } - ,getCursor: function() { - return this.cursor; - } - ,getDisplay: function() { - return lime_system_System.getDisplay(0); - } - ,getDisplayMode: function() { - return lime_system_System.getDisplay(0).currentMode; - } - ,getFrameRate: function() { - if(this.parent.application == null) { - return 0; - } - if(this.parent.application.__backend.framePeriod < 0) { - return 60; - } else if(this.parent.application.__backend.framePeriod == 1000) { - return 0; - } else { - return 1000 / this.parent.application.__backend.framePeriod; - } - } - ,getMouseLock: function() { - return false; - } - ,getTextInputEnabled: function() { - return this.textInputEnabled; - } - ,handleContextEvent: function(event) { - switch(event.type) { - case "webglcontextlost": - if(event.cancelable) { - event.preventDefault(); - } - var tmp = lime_graphics_opengl_GL.context != null; - this.parent.context = null; - this.parent.onRenderContextLost.dispatch(); - break; - case "webglcontextrestored": - this.createContext(); - this.parent.onRenderContextRestored.dispatch(this.parent.context); - break; - default: - } - } - ,handleContextMenuEvent: function(event) { - if((this.parent.onMouseUp.canceled || this.parent.onMouseDown.canceled) && event.cancelable) { - event.preventDefault(); - } - } - ,handleCutOrCopyEvent: function(event) { - event.clipboardData.setData("text/plain",lime_system_Clipboard.get_text()); - if(event.cancelable) { - event.preventDefault(); - } - } - ,handleDragEvent: function(event) { - switch(event.type) { - case "dragover": - event.preventDefault(); - return false; - case "dragstart": - if((js_Boot.__cast(event.target , HTMLElement)).nodeName.toLowerCase() == "img" && event.cancelable) { - event.preventDefault(); - return false; - } - break; - case "drop": - if(event.dataTransfer != null && event.dataTransfer.files.length > 0) { - this.parent.onDropFile.dispatch(event.dataTransfer.files); - event.preventDefault(); - return false; - } - break; - } - return true; - } - ,handleFocusEvent: function(event) { - var _gthis = this; - if(this.textInputEnabled) { - if(event.relatedTarget == null || this.isDescendent(event.relatedTarget)) { - haxe_Timer.delay(function() { - if(_gthis.textInputEnabled) { - lime__$internal_backend_html5_HTML5Window.textInput.focus(); - } - },20); - } - } - } - ,handleFullscreenEvent: function(event) { - var fullscreenElement = document.fullscreenElement || document.mozFullScreenElement || document.webkitFullscreenElement || document.msFullscreenElement; - if(fullscreenElement != null) { - this.isFullscreen = true; - this.parent.__fullscreen = true; - if(this.requestedFullscreen) { - this.requestedFullscreen = false; - this.parent.onFullscreen.dispatch(); - } - } else { - this.isFullscreen = false; - this.parent.__fullscreen = false; - this.parent.onRestore.dispatch(); - var changeEvents = ["fullscreenchange","mozfullscreenchange","webkitfullscreenchange","MSFullscreenChange"]; - var errorEvents = ["fullscreenerror","mozfullscreenerror","webkitfullscreenerror","MSFullscreenError"]; - var _g = 0; - var _g1 = changeEvents.length; - while(_g < _g1) { - var i = _g++; - window.document.removeEventListener(changeEvents[i],$bind(this,this.handleFullscreenEvent),false); - window.document.removeEventListener(errorEvents[i],$bind(this,this.handleFullscreenEvent),false); - } - } - } - ,handleGamepadEvent: function(event) { - switch(event.type) { - case "gamepadconnected": - lime_ui_Joystick.__connect(event.gamepad.index); - if(event.gamepad.mapping == "standard") { - lime_ui_Gamepad.__connect(event.gamepad.index); - } - break; - case "gamepaddisconnected": - lime_ui_Joystick.__disconnect(event.gamepad.index); - lime_ui_Gamepad.__disconnect(event.gamepad.index); - break; - default: - } - } - ,handleInputEvent: function(event) { - if(lime__$internal_backend_html5_HTML5Window.textInput.value != lime__$internal_backend_html5_HTML5Window.dummyCharacter) { - var value = StringTools.replace(lime__$internal_backend_html5_HTML5Window.textInput.value,lime__$internal_backend_html5_HTML5Window.dummyCharacter,""); - if(value.length > 0) { - this.parent.onTextInput.dispatch(value); - } - lime__$internal_backend_html5_HTML5Window.textInput.value = lime__$internal_backend_html5_HTML5Window.dummyCharacter; - } - } - ,handleMouseEvent: function(event) { - var x = 0.0; - var y = 0.0; - if(event.type != "wheel") { - if(this.parent.element != null) { - if(this.canvas != null) { - var rect = this.canvas.getBoundingClientRect(); - x = (event.clientX - rect.left) * (this.parent.__width / rect.width); - y = (event.clientY - rect.top) * (this.parent.__height / rect.height); - } else if(this.div != null) { - var rect1 = this.div.getBoundingClientRect(); - x = event.clientX - rect1.left; - y = event.clientY - rect1.top; - } else { - var rect2 = this.parent.element.getBoundingClientRect(); - x = (event.clientX - rect2.left) * (this.parent.__width / rect2.width); - y = (event.clientY - rect2.top) * (this.parent.__height / rect2.height); - } - } else { - x = event.clientX; - y = event.clientY; - } - switch(event.type) { - case "mousedown": - if(event.currentTarget == this.parent.element) { - window.addEventListener("mouseup",$bind(this,this.handleMouseEvent)); - } - this.parent.onMouseDown.dispatch(x,y,event.button); - if(this.parent.onMouseDown.canceled && event.cancelable) { - event.preventDefault(); - } - break; - case "mouseenter": - if(event.target == this.parent.element) { - this.parent.onEnter.dispatch(); - if(this.parent.onEnter.canceled && event.cancelable) { - event.preventDefault(); - } - } - break; - case "mouseleave": - if(event.target == this.parent.element) { - this.parent.onLeave.dispatch(); - if(this.parent.onLeave.canceled && event.cancelable) { - event.preventDefault(); - } - } - break; - case "mousemove": - if(x != this.cacheMouseX || y != this.cacheMouseY) { - this.parent.onMouseMove.dispatch(x,y); - this.parent.onMouseMoveRelative.dispatch(x - this.cacheMouseX,y - this.cacheMouseY); - if((this.parent.onMouseMove.canceled || this.parent.onMouseMoveRelative.canceled) && event.cancelable) { - event.preventDefault(); - } - } - break; - case "mouseup": - window.removeEventListener("mouseup",$bind(this,this.handleMouseEvent)); - if(event.currentTarget == this.parent.element) { - event.stopPropagation(); - } - this.parent.onMouseUp.dispatch(x,y,event.button); - if(this.parent.onMouseUp.canceled && event.cancelable) { - event.preventDefault(); - } - break; - default: - } - this.cacheMouseX = x; - this.cacheMouseY = y; - } else { - var deltaMode; - switch(event.deltaMode) { - case 0: - deltaMode = lime_ui_MouseWheelMode.PIXELS; - break; - case 1: - deltaMode = lime_ui_MouseWheelMode.LINES; - break; - case 2: - deltaMode = lime_ui_MouseWheelMode.PAGES; - break; - default: - deltaMode = lime_ui_MouseWheelMode.UNKNOWN; - } - this.parent.onMouseWheel.dispatch(event.deltaX,-event.deltaY,deltaMode); - if(this.parent.onMouseWheel.canceled && event.cancelable) { - event.preventDefault(); - } - } - } - ,handlePasteEvent: function(event) { - if(event.clipboardData.types.indexOf("text/plain") > -1) { - var text = event.clipboardData.getData("text/plain"); - lime_system_Clipboard.set_text(text); - if(this.textInputEnabled) { - this.parent.onTextInput.dispatch(text); - } - if(event.cancelable) { - event.preventDefault(); - } - } - } - ,handleResizeEvent: function(event) { - this.primaryTouch = null; - this.updateSize(); - } - ,handleTouchEvent: function(event) { - if(event.cancelable) { - event.preventDefault(); - } - var rect = null; - if(this.parent.element != null) { - if(this.canvas != null) { - rect = this.canvas.getBoundingClientRect(); - } else if(this.div != null) { - rect = this.div.getBoundingClientRect(); - } else { - rect = this.parent.element.getBoundingClientRect(); - } - } - var windowWidth = this.setWidth; - var windowHeight = this.setHeight; - if(windowWidth == 0 || windowHeight == 0) { - if(rect != null) { - windowWidth = rect.width; - windowHeight = rect.height; - } else { - windowWidth = 1; - windowHeight = 1; - } - } - var touch; - var x; - var y; - var cacheX; - var cacheY; - var _g = 0; - var _g1 = event.changedTouches; - while(_g < _g1.length) { - var data = _g1[_g]; - ++_g; - x = 0.0; - y = 0.0; - if(rect != null) { - x = (data.clientX - rect.left) * (windowWidth / rect.width); - y = (data.clientY - rect.top) * (windowHeight / rect.height); - } else { - x = data.clientX; - y = data.clientY; - } - if(event.type == "touchstart") { - touch = this.unusedTouchesPool.pop(); - if(touch == null) { - touch = new lime_ui_Touch(x / windowWidth,y / windowHeight,data.identifier,0,0,data.force,this.parent.id); - } else { - touch.x = x / windowWidth; - touch.y = y / windowHeight; - touch.id = data.identifier; - touch.dx = 0; - touch.dy = 0; - touch.pressure = data.force; - touch.device = this.parent.id; - } - this.currentTouches.h[data.identifier] = touch; - lime_ui_Touch.onStart.dispatch(touch); - if(this.primaryTouch == null) { - this.primaryTouch = touch; - } - if(touch == this.primaryTouch) { - this.parent.onMouseDown.dispatch(x,y,0); - } - } else { - touch = this.currentTouches.h[data.identifier]; - if(touch != null) { - cacheX = touch.x; - cacheY = touch.y; - touch.x = x / windowWidth; - touch.y = y / windowHeight; - touch.dx = touch.x - cacheX; - touch.dy = touch.y - cacheY; - touch.pressure = data.force; - switch(event.type) { - case "touchcancel": - lime_ui_Touch.onCancel.dispatch(touch); - this.currentTouches.remove(data.identifier); - this.unusedTouchesPool.add(touch); - if(touch == this.primaryTouch) { - this.primaryTouch = null; - } - break; - case "touchend": - lime_ui_Touch.onEnd.dispatch(touch); - this.currentTouches.remove(data.identifier); - this.unusedTouchesPool.add(touch); - if(touch == this.primaryTouch) { - this.parent.onMouseUp.dispatch(x,y,0); - this.primaryTouch = null; - } - break; - case "touchmove": - lime_ui_Touch.onMove.dispatch(touch); - if(touch == this.primaryTouch) { - this.parent.onMouseMove.dispatch(x,y); - } - break; - default: - } - } - } - } - } - ,isDescendent: function(node) { - if(node == this.parent.element) { - return true; - } - while(node != null) { - if(node.parentNode == this.parent.element) { - return true; - } - node = node.parentNode; - } - return false; - } - ,move: function(x,y) { - } - ,readPixels: function(rect) { - if(this.canvas != null) { - var stageRect = new lime_math_Rectangle(0,0,this.canvas.width,this.canvas.height); - if(rect == null) { - rect = stageRect; - } else { - rect.intersection(stageRect,rect); - } - if(rect.width > 0 && rect.height > 0) { - var canvas2 = window.document.createElement("canvas"); - canvas2.width = rect.width | 0; - canvas2.height = rect.height | 0; - var context = canvas2.getContext("2d"); - context.drawImage(this.canvas,-rect.x,-rect.y); - return lime_graphics_Image.fromCanvas(canvas2); - } - } - return null; - } - ,resize: function(width,height) { - } - ,setBorderless: function(value) { - return value; - } - ,setClipboard: function(value) { - if(lime__$internal_backend_html5_HTML5Window.textArea == null) { - lime__$internal_backend_html5_HTML5Window.textArea = window.document.createElement("textarea"); - lime__$internal_backend_html5_HTML5Window.textArea.style.height = "0px"; - lime__$internal_backend_html5_HTML5Window.textArea.style.left = "-100px"; - lime__$internal_backend_html5_HTML5Window.textArea.style.opacity = "0"; - lime__$internal_backend_html5_HTML5Window.textArea.style.position = "fixed"; - lime__$internal_backend_html5_HTML5Window.textArea.style.top = "-100px"; - lime__$internal_backend_html5_HTML5Window.textArea.style.width = "0px"; - window.document.body.appendChild(lime__$internal_backend_html5_HTML5Window.textArea); - } - lime__$internal_backend_html5_HTML5Window.textArea.value = value; - lime__$internal_backend_html5_HTML5Window.textArea.focus(); - lime__$internal_backend_html5_HTML5Window.textArea.select(); - if(window.document.queryCommandEnabled("copy")) { - window.document.execCommand("copy"); - } - } - ,setCursor: function(value) { - if(this.cursor != value) { - if(value == null) { - this.parent.element.style.cursor = "none"; - } else { - var tmp; - switch(value._hx_index) { - case 0: - tmp = "default"; - break; - case 1: - tmp = "crosshair"; - break; - case 3: - tmp = "move"; - break; - case 4: - tmp = "pointer"; - break; - case 5: - tmp = "nesw-resize"; - break; - case 6: - tmp = "ns-resize"; - break; - case 7: - tmp = "nwse-resize"; - break; - case 8: - tmp = "ew-resize"; - break; - case 9: - tmp = "text"; - break; - case 10: - tmp = "wait"; - break; - case 11: - tmp = "wait"; - break; - default: - tmp = "auto"; - } - this.parent.element.style.cursor = tmp; - } - this.cursor = value; - } - return this.cursor; - } - ,setDisplayMode: function(value) { - return value; - } - ,setFrameRate: function(value) { - if(this.parent.application != null) { - if(value >= 60) { - if(this.parent == this.parent.application.__window) { - this.parent.application.__backend.framePeriod = -1; - } - } else if(value > 0) { - if(this.parent == this.parent.application.__window) { - this.parent.application.__backend.framePeriod = 1000 / value; - } - } else if(this.parent == this.parent.application.__window) { - this.parent.application.__backend.framePeriod = 1000; - } - } - return value; - } - ,setFullscreen: function(value) { - if(value) { - if(!this.requestedFullscreen && !this.isFullscreen) { - this.requestedFullscreen = true; - if(($_=this.parent.element,$bind($_,$_.requestFullscreen))) { - document.addEventListener("fullscreenchange",$bind(this,this.handleFullscreenEvent),false); - document.addEventListener("fullscreenerror",$bind(this,this.handleFullscreenEvent),false); - this.parent.element.requestFullscreen(); - } else if(this.parent.element.mozRequestFullScreen) { - document.addEventListener("mozfullscreenchange",$bind(this,this.handleFullscreenEvent),false); - document.addEventListener("mozfullscreenerror",$bind(this,this.handleFullscreenEvent),false); - this.parent.element.mozRequestFullScreen(); - } else if(this.parent.element.webkitRequestFullscreen) { - document.addEventListener("webkitfullscreenchange",$bind(this,this.handleFullscreenEvent),false); - document.addEventListener("webkitfullscreenerror",$bind(this,this.handleFullscreenEvent),false); - this.parent.element.webkitRequestFullscreen(); - } else if(this.parent.element.msRequestFullscreen) { - document.addEventListener("MSFullscreenChange",$bind(this,this.handleFullscreenEvent),false); - document.addEventListener("MSFullscreenError",$bind(this,this.handleFullscreenEvent),false); - this.parent.element.msRequestFullscreen(); - } - } - } else if(this.isFullscreen) { - this.requestedFullscreen = false; - if(document.exitFullscreen) { - document.exitFullscreen(); - } else if(document.mozCancelFullScreen) { - document.mozCancelFullScreen(); - } else if(document.webkitExitFullscreen) { - document.webkitExitFullscreen(); - } else if(document.msExitFullscreen) { - document.msExitFullscreen(); - } - } - return value; - } - ,setIcon: function(image) { - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(image); - var link = window.document.querySelector("link[rel*='icon']"); - if(link == null) { - link = window.document.createElement("link"); - } - link.type = "image/x-icon"; - link.rel = "shortcut icon"; - link.href = image.buffer.get_src().toDataURL("image/x-icon"); - window.document.getElementsByTagName("head")[0].appendChild(link); - } - ,setMaximized: function(value) { - return false; - } - ,setMinimized: function(value) { - return false; - } - ,setMouseLock: function(value) { - } - ,setResizable: function(value) { - return value; - } - ,setTextInputEnabled: function(value) { - if(value) { - if(lime__$internal_backend_html5_HTML5Window.textInput == null) { - lime__$internal_backend_html5_HTML5Window.textInput = window.document.createElement("input"); - lime__$internal_backend_html5_HTML5Window.textInput.type = "text"; - lime__$internal_backend_html5_HTML5Window.textInput.style.position = "absolute"; - lime__$internal_backend_html5_HTML5Window.textInput.style.opacity = "0"; - lime__$internal_backend_html5_HTML5Window.textInput.style.color = "transparent"; - lime__$internal_backend_html5_HTML5Window.textInput.value = lime__$internal_backend_html5_HTML5Window.dummyCharacter; - lime__$internal_backend_html5_HTML5Window.textInput.autocapitalize = "off"; - lime__$internal_backend_html5_HTML5Window.textInput.autocorrect = "off"; - lime__$internal_backend_html5_HTML5Window.textInput.autocomplete = "off"; - lime__$internal_backend_html5_HTML5Window.textInput.style.left = "0px"; - lime__$internal_backend_html5_HTML5Window.textInput.style.top = "50%"; - if(new EReg("(iPad|iPhone|iPod).*OS 8_","gi").match(window.navigator.userAgent)) { - lime__$internal_backend_html5_HTML5Window.textInput.style.fontSize = "0px"; - lime__$internal_backend_html5_HTML5Window.textInput.style.width = "0px"; - lime__$internal_backend_html5_HTML5Window.textInput.style.height = "0px"; - } else { - lime__$internal_backend_html5_HTML5Window.textInput.style.width = "1px"; - lime__$internal_backend_html5_HTML5Window.textInput.style.height = "1px"; - } - lime__$internal_backend_html5_HTML5Window.textInput.style.pointerEvents = "none"; - lime__$internal_backend_html5_HTML5Window.textInput.style.zIndex = "-10000000"; - } - if(lime__$internal_backend_html5_HTML5Window.textInput.parentNode == null) { - this.parent.element.appendChild(lime__$internal_backend_html5_HTML5Window.textInput); - } - if(!this.textInputEnabled) { - lime__$internal_backend_html5_HTML5Window.textInput.addEventListener("input",$bind(this,this.handleInputEvent),true); - lime__$internal_backend_html5_HTML5Window.textInput.addEventListener("blur",$bind(this,this.handleFocusEvent),true); - lime__$internal_backend_html5_HTML5Window.textInput.addEventListener("cut",$bind(this,this.handleCutOrCopyEvent),true); - lime__$internal_backend_html5_HTML5Window.textInput.addEventListener("copy",$bind(this,this.handleCutOrCopyEvent),true); - lime__$internal_backend_html5_HTML5Window.textInput.addEventListener("paste",$bind(this,this.handlePasteEvent),true); - } - lime__$internal_backend_html5_HTML5Window.textInput.focus(); - lime__$internal_backend_html5_HTML5Window.textInput.select(); - } else if(lime__$internal_backend_html5_HTML5Window.textInput != null) { - lime__$internal_backend_html5_HTML5Window.textInput.removeEventListener("input",$bind(this,this.handleInputEvent),true); - lime__$internal_backend_html5_HTML5Window.textInput.removeEventListener("blur",$bind(this,this.handleFocusEvent),true); - lime__$internal_backend_html5_HTML5Window.textInput.removeEventListener("cut",$bind(this,this.handleCutOrCopyEvent),true); - lime__$internal_backend_html5_HTML5Window.textInput.removeEventListener("copy",$bind(this,this.handleCutOrCopyEvent),true); - lime__$internal_backend_html5_HTML5Window.textInput.removeEventListener("paste",$bind(this,this.handlePasteEvent),true); - lime__$internal_backend_html5_HTML5Window.textInput.blur(); - } - return this.textInputEnabled = value; - } - ,setTitle: function(value) { - if(value != null) { - window.document.title = value; - } - return value; - } - ,updateSize: function() { - if(!this.parent.__resizable) { - return; - } - var elementWidth; - var elementHeight; - if(this.parent.element != null) { - elementWidth = this.parent.element.clientWidth; - elementHeight = this.parent.element.clientHeight; - } else { - elementWidth = window.innerWidth; - elementHeight = window.innerHeight; - } - if(elementWidth != this.cacheElementWidth || elementHeight != this.cacheElementHeight) { - this.cacheElementWidth = elementWidth; - this.cacheElementHeight = elementHeight; - var stretch = this.resizeElement || this.setWidth == 0 && this.setHeight == 0; - if(this.parent.element != null && (this.div == null || this.div != null && stretch)) { - if(stretch) { - if(this.parent.__width != elementWidth || this.parent.__height != elementHeight) { - this.parent.__width = elementWidth; - this.parent.__height = elementHeight; - if(this.canvas != null) { - if(this.parent.element != this.canvas) { - this.canvas.width = Math.round(elementWidth * this.scale); - this.canvas.height = Math.round(elementHeight * this.scale); - this.canvas.style.width = elementWidth + "px"; - this.canvas.style.height = elementHeight + "px"; - } - } else { - this.div.style.width = elementWidth + "px"; - this.div.style.height = elementHeight + "px"; - } - this.parent.onResize.dispatch(elementWidth,elementHeight); - } - } else { - var scaleX = this.setWidth != 0 ? elementWidth / this.setWidth : 1; - var scaleY = this.setHeight != 0 ? elementHeight / this.setHeight : 1; - var targetWidth = elementWidth; - var targetHeight = elementHeight; - var marginLeft = 0; - var marginTop = 0; - if(scaleX < scaleY) { - targetHeight = Math.floor(this.setHeight * scaleX); - marginTop = Math.floor((elementHeight - targetHeight) / 2); - } else { - targetWidth = Math.floor(this.setWidth * scaleY); - marginLeft = Math.floor((elementWidth - targetWidth) / 2); - } - if(this.canvas != null) { - if(this.parent.element != this.canvas) { - this.canvas.style.width = targetWidth + "px"; - this.canvas.style.height = targetHeight + "px"; - this.canvas.style.marginLeft = marginLeft + "px"; - this.canvas.style.marginTop = marginTop + "px"; - } - } else { - this.div.style.width = targetWidth + "px"; - this.div.style.height = targetHeight + "px"; - this.div.style.marginLeft = marginLeft + "px"; - this.div.style.marginTop = marginTop + "px"; - } - } - } - } - } - ,warpMouse: function(x,y) { - } - ,__class__: lime__$internal_backend_html5_HTML5Window -}; -var lime__$internal_backend_native_NativeCFFI = function() { }; -$hxClasses["lime._internal.backend.native.NativeCFFI"] = lime__$internal_backend_native_NativeCFFI; -lime__$internal_backend_native_NativeCFFI.__name__ = "lime._internal.backend.native.NativeCFFI"; -var lime__$internal_format_BMP = function() { }; -$hxClasses["lime._internal.format.BMP"] = lime__$internal_format_BMP; -lime__$internal_format_BMP.__name__ = "lime._internal.format.BMP"; -lime__$internal_format_BMP.encode = function(image,type) { - if(image.get_premultiplied() || image.get_format() != 0) { - image = image.clone(); - image.set_premultiplied(false); - image.set_format(0); - } - if(type == null) { - type = lime__$internal_format_BMPType.RGB; - } - var fileHeaderLength = 14; - var infoHeaderLength = 40; - var pixelValuesLength = image.width * image.height * 4; - if(type != null) { - switch(type._hx_index) { - case 0: - pixelValuesLength = (image.width * 3 + image.width * 3 % 4) * image.height; - break; - case 1: - infoHeaderLength = 108; - break; - case 2: - fileHeaderLength = 0; - pixelValuesLength += image.width * image.height; - break; - } - } - var data = new haxe_io_Bytes(new ArrayBuffer(fileHeaderLength + infoHeaderLength + pixelValuesLength)); - var position = 0; - if(fileHeaderLength > 0) { - data.b[position++] = 66; - data.b[position++] = 77; - data.setInt32(position,data.length); - position += 4; - data.setUInt16(position,0); - position += 2; - data.setUInt16(position,0); - position += 2; - data.setInt32(position,fileHeaderLength + infoHeaderLength); - position += 4; - } - data.setInt32(position,infoHeaderLength); - position += 4; - data.setInt32(position,image.width); - position += 4; - data.setInt32(position,type == lime__$internal_format_BMPType.ICO ? image.height * 2 : image.height); - position += 4; - data.setUInt16(position,1); - position += 2; - data.setUInt16(position,type == lime__$internal_format_BMPType.RGB ? 24 : 32); - position += 2; - data.setInt32(position,type == lime__$internal_format_BMPType.BITFIELD ? 3 : 0); - position += 4; - data.setInt32(position,pixelValuesLength); - position += 4; - data.setInt32(position,11824); - position += 4; - data.setInt32(position,11824); - position += 4; - data.setInt32(position,0); - position += 4; - data.setInt32(position,0); - position += 4; - if(type == lime__$internal_format_BMPType.BITFIELD) { - data.setInt32(position,16711680); - position += 4; - data.setInt32(position,65280); - position += 4; - data.setInt32(position,255); - position += 4; - data.setInt32(position,-16777216); - position += 4; - data.b[position++] = 32; - data.b[position++] = 110; - data.b[position++] = 105; - data.b[position++] = 87; - var _g = 0; - while(_g < 48) { - var i = _g++; - data.b[position++] = 0; - } - } - var pixels = image.getPixels(new lime_math_Rectangle(0,0,image.width,image.height),1); - var readPosition = 0; - var a; - var r; - var g; - var b; - if(type != null) { - switch(type._hx_index) { - case 0: - var _g1 = 0; - var _g11 = image.height; - while(_g1 < _g11) { - var y = _g1++; - readPosition = (image.height - 1 - y) * 4 * image.width; - var _g2 = 0; - var _g12 = image.width; - while(_g2 < _g12) { - var x = _g2++; - a = pixels.b[readPosition++]; - r = pixels.b[readPosition++]; - g = pixels.b[readPosition++]; - b = pixels.b[readPosition++]; - data.b[position++] = b & 255; - data.b[position++] = g & 255; - data.b[position++] = r & 255; - } - var _g21 = 0; - var _g3 = image.width * 3 % 4; - while(_g21 < _g3) { - var i1 = _g21++; - data.b[position++] = 0; - } - } - break; - case 1: - var _g4 = 0; - var _g13 = image.height; - while(_g4 < _g13) { - var y1 = _g4++; - readPosition = (image.height - 1 - y1) * 4 * image.width; - var _g5 = 0; - var _g14 = image.width; - while(_g5 < _g14) { - var x1 = _g5++; - a = pixels.b[readPosition++]; - r = pixels.b[readPosition++]; - g = pixels.b[readPosition++]; - b = pixels.b[readPosition++]; - data.b[position++] = b & 255; - data.b[position++] = g & 255; - data.b[position++] = r & 255; - data.b[position++] = a & 255; - } - } - break; - case 2: - var andMask = new haxe_io_Bytes(new ArrayBuffer(image.width * image.height)); - var maskPosition = 0; - var _g6 = 0; - var _g15 = image.height; - while(_g6 < _g15) { - var y2 = _g6++; - readPosition = (image.height - 1 - y2) * 4 * image.width; - var _g7 = 0; - var _g16 = image.width; - while(_g7 < _g16) { - var x2 = _g7++; - a = pixels.b[readPosition++]; - r = pixels.b[readPosition++]; - g = pixels.b[readPosition++]; - b = pixels.b[readPosition++]; - data.b[position++] = b & 255; - data.b[position++] = g & 255; - data.b[position++] = r & 255; - data.b[position++] = a & 255; - andMask.b[maskPosition++] = 0; - } - } - data.blit(position,andMask,0,image.width * image.height); - break; - } - } - return data; -}; -var lime__$internal_format_BMPType = $hxEnums["lime._internal.format.BMPType"] = { __ename__ : "lime._internal.format.BMPType", __constructs__ : ["RGB","BITFIELD","ICO"] - ,RGB: {_hx_index:0,__enum__:"lime._internal.format.BMPType",toString:$estr} - ,BITFIELD: {_hx_index:1,__enum__:"lime._internal.format.BMPType",toString:$estr} - ,ICO: {_hx_index:2,__enum__:"lime._internal.format.BMPType",toString:$estr} -}; -var lime__$internal_format_Base64 = function() { }; -$hxClasses["lime._internal.format.Base64"] = lime__$internal_format_Base64; -lime__$internal_format_Base64.__name__ = "lime._internal.format.Base64"; -lime__$internal_format_Base64.decode = function(source) { - return haxe_crypto_Base64.decode(source); -}; -lime__$internal_format_Base64.encode = function(source) { - var result = []; - var dictionary = lime__$internal_format_Base64.DICTIONARY; - var extendedDictionary = lime__$internal_format_Base64.EXTENDED_DICTIONARY; - var numBytes = source.length; - var numInputTriplets = Math.floor(numBytes / 3); - var numChunksToWrite = numInputTriplets * 2; - result.length = Math.ceil(numBytes / 3) * 2; - var numBytesRead = 0; - var numChunksWritten = 0; - var inputTriplet; - while(numChunksWritten < numChunksToWrite) { - inputTriplet = source.b[numBytesRead] << 16 | source.b[numBytesRead + 1] << 8 | source.b[numBytesRead + 2]; - result[numChunksWritten] = extendedDictionary[inputTriplet >> 12 & 4095]; - result[numChunksWritten + 1] = extendedDictionary[inputTriplet & 4095]; - numBytesRead += 3; - numChunksWritten += 2; - } - switch(numBytes - numInputTriplets * 3) { - case 1: - inputTriplet = source.b[numBytesRead] << 16; - result[numChunksWritten] = extendedDictionary[inputTriplet >> 12 & 4095]; - result[numChunksWritten + 1] = "=="; - break; - case 2: - inputTriplet = source.b[numBytesRead] << 16 | source.b[numBytesRead + 1] << 8; - result[numChunksWritten] = extendedDictionary[inputTriplet >> 12 & 4095]; - result[numChunksWritten + 1] = dictionary[inputTriplet >> 6 & 63] + "="; - break; - default: - } - return result.join(""); -}; -var lime__$internal_format_Deflate = function() { }; -$hxClasses["lime._internal.format.Deflate"] = lime__$internal_format_Deflate; -lime__$internal_format_Deflate.__name__ = "lime._internal.format.Deflate"; -lime__$internal_format_Deflate.compress = function(bytes) { - var data = pako.deflateRaw(bytes.b.bufferValue); - return haxe_io_Bytes.ofData(data); -}; -lime__$internal_format_Deflate.decompress = function(bytes) { - var data = pako.inflateRaw(bytes.b.bufferValue); - return haxe_io_Bytes.ofData(data); -}; -var lime__$internal_format_GZip = function() { }; -$hxClasses["lime._internal.format.GZip"] = lime__$internal_format_GZip; -lime__$internal_format_GZip.__name__ = "lime._internal.format.GZip"; -lime__$internal_format_GZip.compress = function(bytes) { - var data = pako.gzip(bytes.b.bufferValue); - return haxe_io_Bytes.ofData(data); -}; -lime__$internal_format_GZip.decompress = function(bytes) { - var data = pako.ungzip(bytes.b.bufferValue); - return haxe_io_Bytes.ofData(data); -}; -var lime__$internal_format_JPEG = function() { }; -$hxClasses["lime._internal.format.JPEG"] = lime__$internal_format_JPEG; -lime__$internal_format_JPEG.__name__ = "lime._internal.format.JPEG"; -lime__$internal_format_JPEG.decodeBytes = function(bytes,decodeData) { - if(decodeData == null) { - decodeData = true; - } - return null; -}; -lime__$internal_format_JPEG.decodeFile = function(path,decodeData) { - if(decodeData == null) { - decodeData = true; - } - return null; -}; -lime__$internal_format_JPEG.encode = function(image,quality) { - if(image.get_premultiplied() || image.get_format() != 0) { - image = image.clone(); - image.set_premultiplied(false); - image.set_format(0); - } - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(image,false); - if(image.buffer.__srcCanvas != null) { - var data = image.buffer.__srcCanvas.toDataURL("image/jpeg",quality / 100); - var buffer = window.atob(data.split(";base64,")[1]); - var bytes = new haxe_io_Bytes(new ArrayBuffer(buffer.length)); - var _g = 0; - var _g1 = buffer.length; - while(_g < _g1) { - var i = _g++; - bytes.b[i] = HxOverrides.cca(buffer,i) & 255; - } - return bytes; - } - return null; -}; -var lime__$internal_format_LZMA = function() { }; -$hxClasses["lime._internal.format.LZMA"] = lime__$internal_format_LZMA; -lime__$internal_format_LZMA.__name__ = "lime._internal.format.LZMA"; -lime__$internal_format_LZMA.compress = function(bytes) { - return null; -}; -lime__$internal_format_LZMA.decompress = function(bytes) { - return null; -}; -var lime__$internal_format_PNG = function() { }; -$hxClasses["lime._internal.format.PNG"] = lime__$internal_format_PNG; -lime__$internal_format_PNG.__name__ = "lime._internal.format.PNG"; -lime__$internal_format_PNG.decodeBytes = function(bytes,decodeData) { - if(decodeData == null) { - decodeData = true; - } - return null; -}; -lime__$internal_format_PNG.decodeFile = function(path,decodeData) { - if(decodeData == null) { - decodeData = true; - } - return null; -}; -lime__$internal_format_PNG.encode = function(image) { - if(image.get_premultiplied() || image.get_format() != 0) { - image = image.clone(); - image.set_premultiplied(false); - image.set_format(0); - } - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(image,false); - if(image.buffer.__srcCanvas != null) { - var data = image.buffer.__srcCanvas.toDataURL("image/png"); - var buffer = window.atob(data.split(";base64,")[1]); - var bytes = new haxe_io_Bytes(new ArrayBuffer(buffer.length)); - var _g = 0; - var _g1 = buffer.length; - while(_g < _g1) { - var i = _g++; - bytes.b[i] = HxOverrides.cca(buffer,i) & 255; - } - return bytes; - } - return null; -}; -var lime__$internal_format_Zlib = function() { }; -$hxClasses["lime._internal.format.Zlib"] = lime__$internal_format_Zlib; -lime__$internal_format_Zlib.__name__ = "lime._internal.format.Zlib"; -lime__$internal_format_Zlib.compress = function(bytes) { - var data = pako.deflate(bytes.b.bufferValue); - return haxe_io_Bytes.ofData(data); -}; -lime__$internal_format_Zlib.decompress = function(bytes) { - var data = pako.inflate(bytes.b.bufferValue); - return haxe_io_Bytes.ofData(data); -}; -var lime__$internal_graphics_ImageCanvasUtil = function() { }; -$hxClasses["lime._internal.graphics.ImageCanvasUtil"] = lime__$internal_graphics_ImageCanvasUtil; -lime__$internal_graphics_ImageCanvasUtil.__name__ = "lime._internal.graphics.ImageCanvasUtil"; -lime__$internal_graphics_ImageCanvasUtil.colorTransform = function(image,rect,colorMatrix) { - lime__$internal_graphics_ImageCanvasUtil.convertToData(image); - lime__$internal_graphics_ImageDataUtil.colorTransform(image,rect,colorMatrix); -}; -lime__$internal_graphics_ImageCanvasUtil.convertToCanvas = function(image,clear) { - if(clear == null) { - clear = false; - } - var buffer = image.buffer; - if(buffer.__srcImage != null) { - if(buffer.__srcCanvas == null) { - lime__$internal_graphics_ImageCanvasUtil.createCanvas(image,buffer.__srcImage.width,buffer.__srcImage.height); - buffer.__srcContext.drawImage(buffer.__srcImage,0,0); - } - buffer.__srcImage = null; - } else if(buffer.__srcCanvas == null && buffer.data != null) { - image.set_transparent(true); - lime__$internal_graphics_ImageCanvasUtil.createCanvas(image,buffer.width,buffer.height); - lime__$internal_graphics_ImageCanvasUtil.createImageData(image); - buffer.__srcContext.putImageData(buffer.__srcImageData,0,0); - } else if(image.type == lime_graphics_ImageType.DATA && buffer.__srcImageData != null && image.dirty) { - buffer.__srcContext.putImageData(buffer.__srcImageData,0,0); - image.dirty = false; - } - if(clear) { - buffer.data = null; - buffer.__srcImageData = null; - } else if(buffer.data == null && buffer.__srcImageData != null) { - buffer.data = buffer.__srcImageData.data; - } - image.type = lime_graphics_ImageType.CANVAS; -}; -lime__$internal_graphics_ImageCanvasUtil.convertToData = function(image,clear) { - if(clear == null) { - clear = false; - } - var buffer = image.buffer; - if(buffer.__srcImage != null) { - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(image); - } - if(buffer.__srcCanvas != null && buffer.data == null) { - lime__$internal_graphics_ImageCanvasUtil.createImageData(image); - if(image.type == lime_graphics_ImageType.CANVAS) { - image.dirty = false; - } - } else if(image.type == lime_graphics_ImageType.CANVAS && buffer.__srcCanvas != null && image.dirty) { - if(buffer.__srcImageData == null) { - lime__$internal_graphics_ImageCanvasUtil.createImageData(image); - } else { - buffer.__srcImageData = buffer.__srcContext.getImageData(0,0,buffer.width,buffer.height); - var elements = buffer.__srcImageData.data.buffer; - var array = null; - var vector = null; - var view = null; - var buffer1 = null; - var len = null; - var this1; - if(elements != null) { - this1 = new Uint8Array(elements); - } else if(array != null) { - this1 = new Uint8Array(array); - } else if(vector != null) { - this1 = new Uint8Array(vector.__array); - } else if(view != null) { - this1 = new Uint8Array(view); - } else if(buffer1 != null) { - if(len == null) { - this1 = new Uint8Array(buffer1,0); - } else { - this1 = new Uint8Array(buffer1,0,len); - } - } else { - this1 = null; - } - buffer.data = this1; - } - image.dirty = false; - } - if(clear) { - image.buffer.__srcCanvas = null; - image.buffer.__srcContext = null; - } - image.type = lime_graphics_ImageType.DATA; -}; -lime__$internal_graphics_ImageCanvasUtil.copyChannel = function(image,sourceImage,sourceRect,destPoint,sourceChannel,destChannel) { - lime__$internal_graphics_ImageCanvasUtil.convertToData(sourceImage); - lime__$internal_graphics_ImageCanvasUtil.convertToData(image); - lime__$internal_graphics_ImageDataUtil.copyChannel(image,sourceImage,sourceRect,destPoint,sourceChannel,destChannel); -}; -lime__$internal_graphics_ImageCanvasUtil.copyPixels = function(image,sourceImage,sourceRect,destPoint,alphaImage,alphaPoint,mergeAlpha) { - if(mergeAlpha == null) { - mergeAlpha = false; - } - if(destPoint == null || destPoint.x >= image.width || destPoint.y >= image.height || sourceRect == null || sourceRect.width < 1 || sourceRect.height < 1) { - return; - } - if(alphaImage != null && alphaImage.get_transparent()) { - if(alphaPoint == null) { - alphaPoint = new lime_math_Vector2(); - } - var tempData = sourceImage.clone(); - tempData.copyChannel(alphaImage,new lime_math_Rectangle(sourceRect.x + alphaPoint.x,sourceRect.y + alphaPoint.y,sourceRect.width,sourceRect.height),new lime_math_Vector2(sourceRect.x,sourceRect.y),lime_graphics_ImageChannel.ALPHA,lime_graphics_ImageChannel.ALPHA); - sourceImage = tempData; - } - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(image,true); - if(!mergeAlpha) { - if(image.get_transparent() && sourceImage.get_transparent()) { - image.buffer.__srcContext.clearRect(destPoint.x + image.offsetX,destPoint.y + image.offsetY,sourceRect.width + image.offsetX,sourceRect.height + image.offsetY); - } - } - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(sourceImage); - if(sourceImage.buffer.get_src() != null) { - image.buffer.__srcContext.globalCompositeOperation = "source-over"; - image.buffer.__srcContext.drawImage(sourceImage.buffer.get_src(),sourceRect.x + sourceImage.offsetX | 0,sourceRect.y + sourceImage.offsetY | 0,sourceRect.width | 0,sourceRect.height | 0,destPoint.x + image.offsetX | 0,destPoint.y + image.offsetY | 0,sourceRect.width | 0,sourceRect.height | 0); - } - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageCanvasUtil.createCanvas = function(image,width,height) { - var buffer = image.buffer; - if(buffer.__srcCanvas == null) { - buffer.__srcCanvas = window.document.createElement("canvas"); - buffer.__srcCanvas.width = width; - buffer.__srcCanvas.height = height; - if(!image.get_transparent()) { - if(!image.get_transparent()) { - buffer.__srcCanvas.setAttribute("moz-opaque","true"); - } - buffer.__srcContext = buffer.__srcCanvas.getContext ("2d", { alpha: false }); - } else { - buffer.__srcContext = buffer.__srcCanvas.getContext("2d"); - } - } -}; -lime__$internal_graphics_ImageCanvasUtil.createImageData = function(image) { - var buffer = image.buffer; - if(buffer.__srcImageData == null) { - if(buffer.data == null) { - buffer.__srcImageData = buffer.__srcContext.getImageData(0,0,buffer.width,buffer.height); - } else { - buffer.__srcImageData = buffer.__srcContext.createImageData(buffer.width,buffer.height); - buffer.__srcImageData.data.set(buffer.data); - } - var elements = buffer.__srcImageData.data.buffer; - var array = null; - var vector = null; - var view = null; - var buffer1 = null; - var len = null; - var this1; - if(elements != null) { - this1 = new Uint8Array(elements); - } else if(array != null) { - this1 = new Uint8Array(array); - } else if(vector != null) { - this1 = new Uint8Array(vector.__array); - } else if(view != null) { - this1 = new Uint8Array(view); - } else if(buffer1 != null) { - if(len == null) { - this1 = new Uint8Array(buffer1,0); - } else { - this1 = new Uint8Array(buffer1,0,len); - } - } else { - this1 = null; - } - buffer.data = this1; - } -}; -lime__$internal_graphics_ImageCanvasUtil.fillRect = function(image,rect,color,format) { - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(image); - var r; - var g; - var b; - var a; - if(format == 1) { - r = color >> 16 & 255; - g = color >> 8 & 255; - b = color & 255; - a = image.get_transparent() ? color >> 24 & 255 : 255; - } else { - r = color >> 24 & 255; - g = color >> 16 & 255; - b = color >> 8 & 255; - a = image.get_transparent() ? color & 255 : 255; - } - if(rect.x == 0 && rect.y == 0 && rect.width == image.width && rect.height == image.height) { - if(image.get_transparent() && a == 0) { - image.buffer.__srcCanvas.width = image.buffer.width; - return; - } - } - if(a < 255) { - image.buffer.__srcContext.clearRect(rect.x + image.offsetX,rect.y + image.offsetY,rect.width + image.offsetX,rect.height + image.offsetY); - } - if(a > 0) { - image.buffer.__srcContext.fillStyle = "rgba(" + r + ", " + g + ", " + b + ", " + a / 255 + ")"; - image.buffer.__srcContext.fillRect(rect.x + image.offsetX,rect.y + image.offsetY,rect.width + image.offsetX,rect.height + image.offsetY); - } - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageCanvasUtil.floodFill = function(image,x,y,color,format) { - lime__$internal_graphics_ImageCanvasUtil.convertToData(image); - lime__$internal_graphics_ImageDataUtil.floodFill(image,x,y,color,format); -}; -lime__$internal_graphics_ImageCanvasUtil.getPixel = function(image,x,y,format) { - lime__$internal_graphics_ImageCanvasUtil.convertToData(image); - return lime__$internal_graphics_ImageDataUtil.getPixel(image,x,y,format); -}; -lime__$internal_graphics_ImageCanvasUtil.getPixel32 = function(image,x,y,format) { - lime__$internal_graphics_ImageCanvasUtil.convertToData(image); - return lime__$internal_graphics_ImageDataUtil.getPixel32(image,x,y,format); -}; -lime__$internal_graphics_ImageCanvasUtil.getPixels = function(image,rect,format) { - lime__$internal_graphics_ImageCanvasUtil.convertToData(image); - return lime__$internal_graphics_ImageDataUtil.getPixels(image,rect,format); -}; -lime__$internal_graphics_ImageCanvasUtil.merge = function(image,sourceImage,sourceRect,destPoint,redMultiplier,greenMultiplier,blueMultiplier,alphaMultiplier) { - lime__$internal_graphics_ImageCanvasUtil.convertToData(sourceImage); - lime__$internal_graphics_ImageCanvasUtil.convertToData(image); - lime__$internal_graphics_ImageDataUtil.merge(image,sourceImage,sourceRect,destPoint,redMultiplier,greenMultiplier,blueMultiplier,alphaMultiplier); -}; -lime__$internal_graphics_ImageCanvasUtil.resize = function(image,newWidth,newHeight) { - var buffer = image.buffer; - if(buffer.__srcCanvas == null) { - lime__$internal_graphics_ImageCanvasUtil.createCanvas(image,newWidth,newHeight); - buffer.__srcContext.drawImage(buffer.get_src(),0,0,newWidth,newHeight); - } else { - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(image,true); - var sourceCanvas = buffer.__srcCanvas; - buffer.__srcCanvas = null; - lime__$internal_graphics_ImageCanvasUtil.createCanvas(image,newWidth,newHeight); - buffer.__srcContext.drawImage(sourceCanvas,0,0,newWidth,newHeight); - } - buffer.__srcImageData = null; - buffer.data = null; - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageCanvasUtil.scroll = function(image,x,y) { - if(x % image.width == 0 && y % image.height == 0) { - return; - } - var copy = image.clone(); - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(image,true); - image.buffer.__srcContext.clearRect(x,y,image.width,image.height); - image.buffer.__srcContext.drawImage(copy.get_src(),x,y); - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageCanvasUtil.setPixel = function(image,x,y,color,format) { - lime__$internal_graphics_ImageCanvasUtil.convertToData(image); - lime__$internal_graphics_ImageDataUtil.setPixel(image,x,y,color,format); -}; -lime__$internal_graphics_ImageCanvasUtil.setPixel32 = function(image,x,y,color,format) { - lime__$internal_graphics_ImageCanvasUtil.convertToData(image); - lime__$internal_graphics_ImageDataUtil.setPixel32(image,x,y,color,format); -}; -lime__$internal_graphics_ImageCanvasUtil.setPixels = function(image,rect,bytePointer,format,endian) { - lime__$internal_graphics_ImageCanvasUtil.convertToData(image); - lime__$internal_graphics_ImageDataUtil.setPixels(image,rect,bytePointer,format,endian); -}; -lime__$internal_graphics_ImageCanvasUtil.sync = function(image,clear) { - if(image == null) { - return; - } - if(image.type == lime_graphics_ImageType.CANVAS && (image.buffer.__srcCanvas != null || image.buffer.data != null)) { - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(image,clear); - } else if(image.type == lime_graphics_ImageType.DATA) { - lime__$internal_graphics_ImageCanvasUtil.convertToData(image,clear); - } -}; -var lime__$internal_graphics_ImageDataUtil = function() { }; -$hxClasses["lime._internal.graphics.ImageDataUtil"] = lime__$internal_graphics_ImageDataUtil; -lime__$internal_graphics_ImageDataUtil.__name__ = "lime._internal.graphics.ImageDataUtil"; -lime__$internal_graphics_ImageDataUtil.displaceMap = function(target,source,map,mapPoint,componentX,componentY,smooth) { - var targetData = target.buffer.data; - var sourceData = source.buffer.data; - var mapData = map.buffer.data; - var targetFormat = target.buffer.format; - var sourceFormat = source.buffer.format; - var mapFormat = map.buffer.format; - var targetPremultiplied = target.get_premultiplied(); - var sourcePremultiplied = source.get_premultiplied(); - var mapPremultiplied = map.get_premultiplied(); - var sourceView = new lime__$internal_graphics__$ImageDataUtil_ImageDataView(source); - var mapView = new lime__$internal_graphics__$ImageDataUtil_ImageDataView(map); - var row; - var sourceOffset; - var sourcePixel; - var mapPixel; - var targetPixel; - var mapPixelX; - var mapPixelY; - var mapPixelA; - var s1; - var s2; - var s3; - var s4; - var mPointXFloor; - var mPointYFloor; - var disOffsetXFloor; - var disOffsetYFloor; - var disX; - var disY; - var _g = 0; - var _g1 = sourceView.height; - while(_g < _g1) { - var y = _g++; - row = sourceView.byteOffset + sourceView.stride * y; - var _g2 = 0; - var _g11 = sourceView.width; - while(_g2 < _g11) { - var x = _g2++; - sourceOffset = row + x * 4; - mPointXFloor = mapPoint.x | 0; - mPointYFloor = mapPoint.y | 0; - if(smooth) { - var offset = sourceView.byteOffset + sourceView.stride * (y - mPointYFloor + 1) + (x - mPointXFloor) * 4; - var format = mapFormat; - var premultiplied = mapPremultiplied; - if(premultiplied == null) { - premultiplied = false; - } - if(format == null) { - format = 0; - } - switch(format) { - case 0: - s1 = (mapData[offset] & 255) << 24 | (mapData[offset + 1] & 255) << 16 | (mapData[offset + 2] & 255) << 8 | mapData[offset + 3] & 255; - break; - case 1: - s1 = (mapData[offset + 1] & 255) << 24 | (mapData[offset + 2] & 255) << 16 | (mapData[offset + 3] & 255) << 8 | mapData[offset] & 255; - break; - case 2: - s1 = (mapData[offset + 2] & 255) << 24 | (mapData[offset + 1] & 255) << 16 | (mapData[offset] & 255) << 8 | mapData[offset + 3] & 255; - break; - } - if(premultiplied) { - if((s1 & 255) != 0 && (s1 & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (s1 & 255); - s1 = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s1 >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s1 >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s1 >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | s1 & 255 & 255; - } - } - var offset1 = sourceView.byteOffset + sourceView.stride * (y - mPointYFloor) + (x - mPointXFloor + 1) * 4; - var format1 = mapFormat; - var premultiplied1 = mapPremultiplied; - if(premultiplied1 == null) { - premultiplied1 = false; - } - if(format1 == null) { - format1 = 0; - } - switch(format1) { - case 0: - s2 = (mapData[offset1] & 255) << 24 | (mapData[offset1 + 1] & 255) << 16 | (mapData[offset1 + 2] & 255) << 8 | mapData[offset1 + 3] & 255; - break; - case 1: - s2 = (mapData[offset1 + 1] & 255) << 24 | (mapData[offset1 + 2] & 255) << 16 | (mapData[offset1 + 3] & 255) << 8 | mapData[offset1] & 255; - break; - case 2: - s2 = (mapData[offset1 + 2] & 255) << 24 | (mapData[offset1 + 1] & 255) << 16 | (mapData[offset1] & 255) << 8 | mapData[offset1 + 3] & 255; - break; - } - if(premultiplied1) { - if((s2 & 255) != 0 && (s2 & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (s2 & 255); - s2 = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s2 >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s2 >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s2 >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | s2 & 255 & 255; - } - } - var offset2 = sourceView.byteOffset + sourceView.stride * (y - mPointYFloor + 1) + (x - mPointXFloor + 1) * 4; - var format2 = mapFormat; - var premultiplied2 = mapPremultiplied; - if(premultiplied2 == null) { - premultiplied2 = false; - } - if(format2 == null) { - format2 = 0; - } - switch(format2) { - case 0: - s3 = (mapData[offset2] & 255) << 24 | (mapData[offset2 + 1] & 255) << 16 | (mapData[offset2 + 2] & 255) << 8 | mapData[offset2 + 3] & 255; - break; - case 1: - s3 = (mapData[offset2 + 1] & 255) << 24 | (mapData[offset2 + 2] & 255) << 16 | (mapData[offset2 + 3] & 255) << 8 | mapData[offset2] & 255; - break; - case 2: - s3 = (mapData[offset2 + 2] & 255) << 24 | (mapData[offset2 + 1] & 255) << 16 | (mapData[offset2] & 255) << 8 | mapData[offset2 + 3] & 255; - break; - } - if(premultiplied2) { - if((s3 & 255) != 0 && (s3 & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (s3 & 255); - s3 = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s3 >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s3 >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s3 >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | s3 & 255 & 255; - } - } - var offset3 = sourceView.byteOffset + sourceView.stride * (y - mPointYFloor) + (x - mPointXFloor) * 4; - var format3 = mapFormat; - var premultiplied3 = mapPremultiplied; - if(premultiplied3 == null) { - premultiplied3 = false; - } - if(format3 == null) { - format3 = 0; - } - switch(format3) { - case 0: - s4 = (mapData[offset3] & 255) << 24 | (mapData[offset3 + 1] & 255) << 16 | (mapData[offset3 + 2] & 255) << 8 | mapData[offset3 + 3] & 255; - break; - case 1: - s4 = (mapData[offset3 + 1] & 255) << 24 | (mapData[offset3 + 2] & 255) << 16 | (mapData[offset3 + 3] & 255) << 8 | mapData[offset3] & 255; - break; - case 2: - s4 = (mapData[offset3 + 2] & 255) << 24 | (mapData[offset3 + 1] & 255) << 16 | (mapData[offset3] & 255) << 8 | mapData[offset3 + 3] & 255; - break; - } - if(premultiplied3) { - if((s4 & 255) != 0 && (s4 & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (s4 & 255); - s4 = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s4 >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s4 >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s4 >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | s4 & 255 & 255; - } - } - mapPixel = lime__$internal_graphics_ImageDataUtil.bilinear(s1,s2,s3,s4,mapPoint.x - mPointXFloor,mapPoint.y - mPointYFloor); - } else { - var offset4 = mapView.byteOffset + mapView.stride * (y - mPointYFloor) + (x - mPointXFloor) * 4; - var format4 = mapFormat; - var premultiplied4 = mapPremultiplied; - if(premultiplied4 == null) { - premultiplied4 = false; - } - if(format4 == null) { - format4 = 0; - } - switch(format4) { - case 0: - mapPixel = (mapData[offset4] & 255) << 24 | (mapData[offset4 + 1] & 255) << 16 | (mapData[offset4 + 2] & 255) << 8 | mapData[offset4 + 3] & 255; - break; - case 1: - mapPixel = (mapData[offset4 + 1] & 255) << 24 | (mapData[offset4 + 2] & 255) << 16 | (mapData[offset4 + 3] & 255) << 8 | mapData[offset4] & 255; - break; - case 2: - mapPixel = (mapData[offset4 + 2] & 255) << 24 | (mapData[offset4 + 1] & 255) << 16 | (mapData[offset4] & 255) << 8 | mapData[offset4 + 3] & 255; - break; - } - if(premultiplied4) { - if((mapPixel & 255) != 0 && (mapPixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (mapPixel & 255); - mapPixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((mapPixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((mapPixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((mapPixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | mapPixel & 255 & 255; - } - } - } - mapPixelA = (mapPixel & 255) / 255.0; - mapPixelX = ((mapPixel >>> 24 & 255) - 128) / 255.0 * mapPixelA; - mapPixelY = ((mapPixel >>> 16 & 255) - 128) / 255.0 * mapPixelA; - disX = mapPixelX * componentX.x + mapPixelY * componentY.x; - disY = mapPixelX * componentX.y + mapPixelY * componentY.y; - disOffsetXFloor = Math.floor(disX * sourceView.width); - disOffsetYFloor = Math.floor(disY * sourceView.height); - if(smooth) { - var offset5 = sourceView.byteOffset + sourceView.stride * (y + disOffsetYFloor + 1) + (x + disOffsetXFloor) * 4; - var format5 = sourceFormat; - var premultiplied5 = sourcePremultiplied; - if(premultiplied5 == null) { - premultiplied5 = false; - } - if(format5 == null) { - format5 = 0; - } - switch(format5) { - case 0: - s1 = (sourceData[offset5] & 255) << 24 | (sourceData[offset5 + 1] & 255) << 16 | (sourceData[offset5 + 2] & 255) << 8 | sourceData[offset5 + 3] & 255; - break; - case 1: - s1 = (sourceData[offset5 + 1] & 255) << 24 | (sourceData[offset5 + 2] & 255) << 16 | (sourceData[offset5 + 3] & 255) << 8 | sourceData[offset5] & 255; - break; - case 2: - s1 = (sourceData[offset5 + 2] & 255) << 24 | (sourceData[offset5 + 1] & 255) << 16 | (sourceData[offset5] & 255) << 8 | sourceData[offset5 + 3] & 255; - break; - } - if(premultiplied5) { - if((s1 & 255) != 0 && (s1 & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (s1 & 255); - s1 = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s1 >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s1 >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s1 >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | s1 & 255 & 255; - } - } - var offset6 = sourceView.byteOffset + sourceView.stride * (y + disOffsetYFloor) + (x + disOffsetXFloor + 1) * 4; - var format6 = sourceFormat; - var premultiplied6 = sourcePremultiplied; - if(premultiplied6 == null) { - premultiplied6 = false; - } - if(format6 == null) { - format6 = 0; - } - switch(format6) { - case 0: - s2 = (sourceData[offset6] & 255) << 24 | (sourceData[offset6 + 1] & 255) << 16 | (sourceData[offset6 + 2] & 255) << 8 | sourceData[offset6 + 3] & 255; - break; - case 1: - s2 = (sourceData[offset6 + 1] & 255) << 24 | (sourceData[offset6 + 2] & 255) << 16 | (sourceData[offset6 + 3] & 255) << 8 | sourceData[offset6] & 255; - break; - case 2: - s2 = (sourceData[offset6 + 2] & 255) << 24 | (sourceData[offset6 + 1] & 255) << 16 | (sourceData[offset6] & 255) << 8 | sourceData[offset6 + 3] & 255; - break; - } - if(premultiplied6) { - if((s2 & 255) != 0 && (s2 & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (s2 & 255); - s2 = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s2 >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s2 >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s2 >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | s2 & 255 & 255; - } - } - var offset7 = sourceView.byteOffset + sourceView.stride * (y + disOffsetYFloor + 1) + (x + disOffsetXFloor + 1) * 4; - var format7 = sourceFormat; - var premultiplied7 = sourcePremultiplied; - if(premultiplied7 == null) { - premultiplied7 = false; - } - if(format7 == null) { - format7 = 0; - } - switch(format7) { - case 0: - s3 = (sourceData[offset7] & 255) << 24 | (sourceData[offset7 + 1] & 255) << 16 | (sourceData[offset7 + 2] & 255) << 8 | sourceData[offset7 + 3] & 255; - break; - case 1: - s3 = (sourceData[offset7 + 1] & 255) << 24 | (sourceData[offset7 + 2] & 255) << 16 | (sourceData[offset7 + 3] & 255) << 8 | sourceData[offset7] & 255; - break; - case 2: - s3 = (sourceData[offset7 + 2] & 255) << 24 | (sourceData[offset7 + 1] & 255) << 16 | (sourceData[offset7] & 255) << 8 | sourceData[offset7 + 3] & 255; - break; - } - if(premultiplied7) { - if((s3 & 255) != 0 && (s3 & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (s3 & 255); - s3 = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s3 >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s3 >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s3 >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | s3 & 255 & 255; - } - } - var offset8 = sourceView.byteOffset + sourceView.stride * (y + disOffsetYFloor) + (x + disOffsetXFloor) * 4; - var format8 = sourceFormat; - var premultiplied8 = sourcePremultiplied; - if(premultiplied8 == null) { - premultiplied8 = false; - } - if(format8 == null) { - format8 = 0; - } - switch(format8) { - case 0: - s4 = (sourceData[offset8] & 255) << 24 | (sourceData[offset8 + 1] & 255) << 16 | (sourceData[offset8 + 2] & 255) << 8 | sourceData[offset8 + 3] & 255; - break; - case 1: - s4 = (sourceData[offset8 + 1] & 255) << 24 | (sourceData[offset8 + 2] & 255) << 16 | (sourceData[offset8 + 3] & 255) << 8 | sourceData[offset8] & 255; - break; - case 2: - s4 = (sourceData[offset8 + 2] & 255) << 24 | (sourceData[offset8 + 1] & 255) << 16 | (sourceData[offset8] & 255) << 8 | sourceData[offset8 + 3] & 255; - break; - } - if(premultiplied8) { - if((s4 & 255) != 0 && (s4 & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (s4 & 255); - s4 = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s4 >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s4 >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((s4 >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | s4 & 255 & 255; - } - } - sourcePixel = lime__$internal_graphics_ImageDataUtil.bilinear(s1,s2,s3,s4,disX * sourceView.width - disOffsetXFloor,disY * sourceView.height - disOffsetYFloor); - } else { - var offset9 = sourceView.byteOffset + sourceView.stride * (y + disOffsetYFloor) + (x + disOffsetXFloor) * 4; - var format9 = sourceFormat; - var premultiplied9 = sourcePremultiplied; - if(premultiplied9 == null) { - premultiplied9 = false; - } - if(format9 == null) { - format9 = 0; - } - switch(format9) { - case 0: - sourcePixel = (sourceData[offset9] & 255) << 24 | (sourceData[offset9 + 1] & 255) << 16 | (sourceData[offset9 + 2] & 255) << 8 | sourceData[offset9 + 3] & 255; - break; - case 1: - sourcePixel = (sourceData[offset9 + 1] & 255) << 24 | (sourceData[offset9 + 2] & 255) << 16 | (sourceData[offset9 + 3] & 255) << 8 | sourceData[offset9] & 255; - break; - case 2: - sourcePixel = (sourceData[offset9 + 2] & 255) << 24 | (sourceData[offset9 + 1] & 255) << 16 | (sourceData[offset9] & 255) << 8 | sourceData[offset9 + 3] & 255; - break; - } - if(premultiplied9) { - if((sourcePixel & 255) != 0 && (sourcePixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (sourcePixel & 255); - sourcePixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | sourcePixel & 255 & 255; - } - } - } - var format10 = targetFormat; - var premultiplied10 = targetPremultiplied; - if(premultiplied10 == null) { - premultiplied10 = false; - } - if(format10 == null) { - format10 = 0; - } - if(premultiplied10) { - if((sourcePixel & 255) == 0) { - if(sourcePixel != 0) { - sourcePixel = 0; - } - } else if((sourcePixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[sourcePixel & 255]; - sourcePixel = ((sourcePixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((sourcePixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((sourcePixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | sourcePixel & 255 & 255; - } - } - switch(format10) { - case 0: - targetData[sourceOffset] = sourcePixel >>> 24 & 255; - targetData[sourceOffset + 1] = sourcePixel >>> 16 & 255; - targetData[sourceOffset + 2] = sourcePixel >>> 8 & 255; - targetData[sourceOffset + 3] = sourcePixel & 255; - break; - case 1: - targetData[sourceOffset] = sourcePixel & 255; - targetData[sourceOffset + 1] = sourcePixel >>> 24 & 255; - targetData[sourceOffset + 2] = sourcePixel >>> 16 & 255; - targetData[sourceOffset + 3] = sourcePixel >>> 8 & 255; - break; - case 2: - targetData[sourceOffset] = sourcePixel >>> 8 & 255; - targetData[sourceOffset + 1] = sourcePixel >>> 16 & 255; - targetData[sourceOffset + 2] = sourcePixel >>> 24 & 255; - targetData[sourceOffset + 3] = sourcePixel & 255; - break; - } - } - } - target.dirty = true; - target.version++; -}; -lime__$internal_graphics_ImageDataUtil.bilinear = function(s1,s2,s3,s4,su,sv) { - return lime__$internal_graphics_ImageDataUtil.lerpRGBA(lime__$internal_graphics_ImageDataUtil.lerpRGBA(s4,s2,su),lime__$internal_graphics_ImageDataUtil.lerpRGBA(s1,s3,su),sv); -}; -lime__$internal_graphics_ImageDataUtil.lerpRGBA = function(v0,v1,x) { - var this1 = 0; - var result = this1; - var value = Math.floor(lime__$internal_graphics_ImageDataUtil.lerp(v0 >>> 24 & 255,v1 >>> 24 & 255,x)); - result = (value & 255) << 24 | (result >>> 16 & 255 & 255) << 16 | (result >>> 8 & 255 & 255) << 8 | result & 255 & 255; - var value1 = Math.floor(lime__$internal_graphics_ImageDataUtil.lerp(v0 >>> 16 & 255,v1 >>> 16 & 255,x)); - result = (result >>> 24 & 255 & 255) << 24 | (value1 & 255) << 16 | (result >>> 8 & 255 & 255) << 8 | result & 255 & 255; - var value2 = Math.floor(lime__$internal_graphics_ImageDataUtil.lerp(v0 >>> 8 & 255,v1 >>> 8 & 255,x)); - result = (result >>> 24 & 255 & 255) << 24 | (result >>> 16 & 255 & 255) << 16 | (value2 & 255) << 8 | result & 255 & 255; - var value3 = Math.floor(lime__$internal_graphics_ImageDataUtil.lerp(v0 & 255,v1 & 255,x)); - result = (result >>> 24 & 255 & 255) << 24 | (result >>> 16 & 255 & 255) << 16 | (result >>> 8 & 255 & 255) << 8 | value3 & 255; - return result; -}; -lime__$internal_graphics_ImageDataUtil.lerp4f = function(v0,v1,x) { - return new lime_math_Vector4(lime__$internal_graphics_ImageDataUtil.lerp(v0.x,v1.x,x),lime__$internal_graphics_ImageDataUtil.lerp(v0.y,v1.y,x),lime__$internal_graphics_ImageDataUtil.lerp(v0.z,v1.z,x),lime__$internal_graphics_ImageDataUtil.lerp(v0.w,v1.w,x)); -}; -lime__$internal_graphics_ImageDataUtil.lerp = function(v0,v1,x) { - return (1.0 - x) * v0 + x * v1; -}; -lime__$internal_graphics_ImageDataUtil.colorTransform = function(image,rect,colorMatrix) { - var data = image.buffer.data; - if(data == null) { - return; - } - var format = image.buffer.format; - var premultiplied = image.buffer.premultiplied; - var dataView = new lime__$internal_graphics__$ImageDataUtil_ImageDataView(image,rect); - var alphaTable = lime_math__$ColorMatrix_ColorMatrix_$Impl_$.getAlphaTable(colorMatrix); - var redTable = lime_math__$ColorMatrix_ColorMatrix_$Impl_$.getRedTable(colorMatrix); - var greenTable = lime_math__$ColorMatrix_ColorMatrix_$Impl_$.getGreenTable(colorMatrix); - var blueTable = lime_math__$ColorMatrix_ColorMatrix_$Impl_$.getBlueTable(colorMatrix); - var row; - var offset; - var pixel; - var _g = 0; - var _g1 = dataView.height; - while(_g < _g1) { - var y = _g++; - row = dataView.byteOffset + dataView.stride * y; - var _g2 = 0; - var _g11 = dataView.width; - while(_g2 < _g11) { - var x = _g2++; - offset = row + x * 4; - var format1 = format; - var premultiplied1 = premultiplied; - if(premultiplied1 == null) { - premultiplied1 = false; - } - if(format1 == null) { - format1 = 0; - } - switch(format1) { - case 0: - pixel = (data[offset] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset + 2] & 255) << 8 | data[offset + 3] & 255; - break; - case 1: - pixel = (data[offset + 1] & 255) << 24 | (data[offset + 2] & 255) << 16 | (data[offset + 3] & 255) << 8 | data[offset] & 255; - break; - case 2: - pixel = (data[offset + 2] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset] & 255) << 8 | data[offset + 3] & 255; - break; - } - if(premultiplied1) { - if((pixel & 255) != 0 && (pixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (pixel & 255); - pixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | pixel & 255 & 255; - } - } - pixel = (redTable[pixel >>> 24 & 255] & 255) << 24 | (greenTable[pixel >>> 16 & 255] & 255) << 16 | (blueTable[pixel >>> 8 & 255] & 255) << 8 | alphaTable[pixel & 255] & 255; - var format2 = format; - var premultiplied2 = premultiplied; - if(premultiplied2 == null) { - premultiplied2 = false; - } - if(format2 == null) { - format2 = 0; - } - if(premultiplied2) { - if((pixel & 255) == 0) { - if(pixel != 0) { - pixel = 0; - } - } else if((pixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[pixel & 255]; - pixel = ((pixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((pixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((pixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | pixel & 255 & 255; - } - } - switch(format2) { - case 0: - data[offset] = pixel >>> 24 & 255; - data[offset + 1] = pixel >>> 16 & 255; - data[offset + 2] = pixel >>> 8 & 255; - data[offset + 3] = pixel & 255; - break; - case 1: - data[offset] = pixel & 255; - data[offset + 1] = pixel >>> 24 & 255; - data[offset + 2] = pixel >>> 16 & 255; - data[offset + 3] = pixel >>> 8 & 255; - break; - case 2: - data[offset] = pixel >>> 8 & 255; - data[offset + 1] = pixel >>> 16 & 255; - data[offset + 2] = pixel >>> 24 & 255; - data[offset + 3] = pixel & 255; - break; - } - } - } - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageDataUtil.copyChannel = function(image,sourceImage,sourceRect,destPoint,sourceChannel,destChannel) { - var destIdx; - switch(destChannel._hx_index) { - case 0: - destIdx = 0; - break; - case 1: - destIdx = 1; - break; - case 2: - destIdx = 2; - break; - case 3: - destIdx = 3; - break; - } - var srcIdx; - switch(sourceChannel._hx_index) { - case 0: - srcIdx = 0; - break; - case 1: - srcIdx = 1; - break; - case 2: - srcIdx = 2; - break; - case 3: - srcIdx = 3; - break; - } - var srcData = sourceImage.buffer.data; - var destData = image.buffer.data; - if(srcData == null || destData == null) { - return; - } - var srcView = new lime__$internal_graphics__$ImageDataUtil_ImageDataView(sourceImage,sourceRect); - var destView = new lime__$internal_graphics__$ImageDataUtil_ImageDataView(image,new lime_math_Rectangle(destPoint.x,destPoint.y,srcView.width,srcView.height)); - var srcFormat = sourceImage.buffer.format; - var destFormat = image.buffer.format; - var srcPremultiplied = sourceImage.buffer.premultiplied; - var destPremultiplied = image.buffer.premultiplied; - var srcPosition; - var destPosition; - var srcPixel; - var destPixel; - var value = 0; - var _g = 0; - var _g1 = destView.height; - while(_g < _g1) { - var y = _g++; - srcPosition = srcView.byteOffset + srcView.stride * y; - destPosition = destView.byteOffset + destView.stride * y; - var _g2 = 0; - var _g11 = destView.width; - while(_g2 < _g11) { - var x = _g2++; - var format = srcFormat; - var premultiplied = srcPremultiplied; - if(premultiplied == null) { - premultiplied = false; - } - if(format == null) { - format = 0; - } - switch(format) { - case 0: - srcPixel = (srcData[srcPosition] & 255) << 24 | (srcData[srcPosition + 1] & 255) << 16 | (srcData[srcPosition + 2] & 255) << 8 | srcData[srcPosition + 3] & 255; - break; - case 1: - srcPixel = (srcData[srcPosition + 1] & 255) << 24 | (srcData[srcPosition + 2] & 255) << 16 | (srcData[srcPosition + 3] & 255) << 8 | srcData[srcPosition] & 255; - break; - case 2: - srcPixel = (srcData[srcPosition + 2] & 255) << 24 | (srcData[srcPosition + 1] & 255) << 16 | (srcData[srcPosition] & 255) << 8 | srcData[srcPosition + 3] & 255; - break; - } - if(premultiplied) { - if((srcPixel & 255) != 0 && (srcPixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (srcPixel & 255); - srcPixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((srcPixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((srcPixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((srcPixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | srcPixel & 255 & 255; - } - } - var format1 = destFormat; - var premultiplied1 = destPremultiplied; - if(premultiplied1 == null) { - premultiplied1 = false; - } - if(format1 == null) { - format1 = 0; - } - switch(format1) { - case 0: - destPixel = (destData[destPosition] & 255) << 24 | (destData[destPosition + 1] & 255) << 16 | (destData[destPosition + 2] & 255) << 8 | destData[destPosition + 3] & 255; - break; - case 1: - destPixel = (destData[destPosition + 1] & 255) << 24 | (destData[destPosition + 2] & 255) << 16 | (destData[destPosition + 3] & 255) << 8 | destData[destPosition] & 255; - break; - case 2: - destPixel = (destData[destPosition + 2] & 255) << 24 | (destData[destPosition + 1] & 255) << 16 | (destData[destPosition] & 255) << 8 | destData[destPosition + 3] & 255; - break; - } - if(premultiplied1) { - if((destPixel & 255) != 0 && (destPixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (destPixel & 255); - destPixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((destPixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((destPixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((destPixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | destPixel & 255 & 255; - } - } - switch(srcIdx) { - case 0: - value = srcPixel >>> 24 & 255; - break; - case 1: - value = srcPixel >>> 16 & 255; - break; - case 2: - value = srcPixel >>> 8 & 255; - break; - case 3: - value = srcPixel & 255; - break; - } - switch(destIdx) { - case 0: - destPixel = (value & 255) << 24 | (destPixel >>> 16 & 255 & 255) << 16 | (destPixel >>> 8 & 255 & 255) << 8 | destPixel & 255 & 255; - break; - case 1: - destPixel = (destPixel >>> 24 & 255 & 255) << 24 | (value & 255) << 16 | (destPixel >>> 8 & 255 & 255) << 8 | destPixel & 255 & 255; - break; - case 2: - destPixel = (destPixel >>> 24 & 255 & 255) << 24 | (destPixel >>> 16 & 255 & 255) << 16 | (value & 255) << 8 | destPixel & 255 & 255; - break; - case 3: - destPixel = (destPixel >>> 24 & 255 & 255) << 24 | (destPixel >>> 16 & 255 & 255) << 16 | (destPixel >>> 8 & 255 & 255) << 8 | value & 255; - break; - } - var format2 = destFormat; - var premultiplied2 = destPremultiplied; - if(premultiplied2 == null) { - premultiplied2 = false; - } - if(format2 == null) { - format2 = 0; - } - if(premultiplied2) { - if((destPixel & 255) == 0) { - if(destPixel != 0) { - destPixel = 0; - } - } else if((destPixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[destPixel & 255]; - destPixel = ((destPixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((destPixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((destPixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | destPixel & 255 & 255; - } - } - switch(format2) { - case 0: - destData[destPosition] = destPixel >>> 24 & 255; - destData[destPosition + 1] = destPixel >>> 16 & 255; - destData[destPosition + 2] = destPixel >>> 8 & 255; - destData[destPosition + 3] = destPixel & 255; - break; - case 1: - destData[destPosition] = destPixel & 255; - destData[destPosition + 1] = destPixel >>> 24 & 255; - destData[destPosition + 2] = destPixel >>> 16 & 255; - destData[destPosition + 3] = destPixel >>> 8 & 255; - break; - case 2: - destData[destPosition] = destPixel >>> 8 & 255; - destData[destPosition + 1] = destPixel >>> 16 & 255; - destData[destPosition + 2] = destPixel >>> 24 & 255; - destData[destPosition + 3] = destPixel & 255; - break; - } - srcPosition += 4; - destPosition += 4; - } - } - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageDataUtil.copyPixels = function(image,sourceImage,sourceRect,destPoint,alphaImage,alphaPoint,mergeAlpha) { - if(mergeAlpha == null) { - mergeAlpha = false; - } - if(image.width == sourceImage.width && image.height == sourceImage.height && sourceRect.width == sourceImage.width && sourceRect.height == sourceImage.height && sourceRect.x == 0 && sourceRect.y == 0 && destPoint.x == 0 && destPoint.y == 0 && alphaImage == null && alphaPoint == null && mergeAlpha == false && image.get_format() == sourceImage.get_format()) { - image.buffer.data.set(sourceImage.buffer.data); - } else { - var sourceData = sourceImage.buffer.data; - var destData = image.buffer.data; - if(sourceData == null || destData == null) { - return; - } - var sourceView = new lime__$internal_graphics__$ImageDataUtil_ImageDataView(sourceImage,sourceRect); - var destRect = new lime_math_Rectangle(destPoint.x,destPoint.y,sourceView.width,sourceView.height); - var destView = new lime__$internal_graphics__$ImageDataUtil_ImageDataView(image,destRect); - var sourceFormat = sourceImage.buffer.format; - var destFormat = image.buffer.format; - var sourcePosition; - var destPosition; - var sourceAlpha; - var destAlpha; - var oneMinusSourceAlpha; - var blendAlpha; - var sourcePixel; - var destPixel; - var sourcePremultiplied = sourceImage.buffer.premultiplied; - var destPremultiplied = image.buffer.premultiplied; - var sourceBytesPerPixel = sourceImage.buffer.bitsPerPixel / 8 | 0; - var destBytesPerPixel = image.buffer.bitsPerPixel / 8 | 0; - var useAlphaImage = alphaImage != null && alphaImage.get_transparent(); - var blend = mergeAlpha || useAlphaImage && !image.get_transparent() || !mergeAlpha && !image.get_transparent() && sourceImage.get_transparent(); - if(!useAlphaImage) { - if(blend) { - var _g = 0; - var _g1 = destView.height; - while(_g < _g1) { - var y = _g++; - sourcePosition = sourceView.byteOffset + sourceView.stride * y; - destPosition = destView.byteOffset + destView.stride * y; - var _g2 = 0; - var _g11 = destView.width; - while(_g2 < _g11) { - var x = _g2++; - var format = sourceFormat; - var premultiplied = sourcePremultiplied; - if(premultiplied == null) { - premultiplied = false; - } - if(format == null) { - format = 0; - } - switch(format) { - case 0: - sourcePixel = (sourceData[sourcePosition] & 255) << 24 | (sourceData[sourcePosition + 1] & 255) << 16 | (sourceData[sourcePosition + 2] & 255) << 8 | sourceData[sourcePosition + 3] & 255; - break; - case 1: - sourcePixel = (sourceData[sourcePosition + 1] & 255) << 24 | (sourceData[sourcePosition + 2] & 255) << 16 | (sourceData[sourcePosition + 3] & 255) << 8 | sourceData[sourcePosition] & 255; - break; - case 2: - sourcePixel = (sourceData[sourcePosition + 2] & 255) << 24 | (sourceData[sourcePosition + 1] & 255) << 16 | (sourceData[sourcePosition] & 255) << 8 | sourceData[sourcePosition + 3] & 255; - break; - } - if(premultiplied) { - if((sourcePixel & 255) != 0 && (sourcePixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (sourcePixel & 255); - sourcePixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | sourcePixel & 255 & 255; - } - } - var format1 = destFormat; - var premultiplied1 = destPremultiplied; - if(premultiplied1 == null) { - premultiplied1 = false; - } - if(format1 == null) { - format1 = 0; - } - switch(format1) { - case 0: - destPixel = (destData[destPosition] & 255) << 24 | (destData[destPosition + 1] & 255) << 16 | (destData[destPosition + 2] & 255) << 8 | destData[destPosition + 3] & 255; - break; - case 1: - destPixel = (destData[destPosition + 1] & 255) << 24 | (destData[destPosition + 2] & 255) << 16 | (destData[destPosition + 3] & 255) << 8 | destData[destPosition] & 255; - break; - case 2: - destPixel = (destData[destPosition + 2] & 255) << 24 | (destData[destPosition + 1] & 255) << 16 | (destData[destPosition] & 255) << 8 | destData[destPosition + 3] & 255; - break; - } - if(premultiplied1) { - if((destPixel & 255) != 0 && (destPixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (destPixel & 255); - destPixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((destPixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((destPixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((destPixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | destPixel & 255 & 255; - } - } - sourceAlpha = (sourcePixel & 255) / 255.0; - destAlpha = (destPixel & 255) / 255.0; - oneMinusSourceAlpha = 1 - sourceAlpha; - blendAlpha = sourceAlpha + destAlpha * oneMinusSourceAlpha; - if(blendAlpha == 0) { - destPixel = 0; - } else { - var value = lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round(((sourcePixel >>> 24 & 255) * sourceAlpha + (destPixel >>> 24 & 255) * destAlpha * oneMinusSourceAlpha) / blendAlpha)]; - destPixel = (value & 255) << 24 | (destPixel >>> 16 & 255 & 255) << 16 | (destPixel >>> 8 & 255 & 255) << 8 | destPixel & 255 & 255; - var value1 = lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round(((sourcePixel >>> 16 & 255) * sourceAlpha + (destPixel >>> 16 & 255) * destAlpha * oneMinusSourceAlpha) / blendAlpha)]; - destPixel = (destPixel >>> 24 & 255 & 255) << 24 | (value1 & 255) << 16 | (destPixel >>> 8 & 255 & 255) << 8 | destPixel & 255 & 255; - var value2 = lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round(((sourcePixel >>> 8 & 255) * sourceAlpha + (destPixel >>> 8 & 255) * destAlpha * oneMinusSourceAlpha) / blendAlpha)]; - destPixel = (destPixel >>> 24 & 255 & 255) << 24 | (destPixel >>> 16 & 255 & 255) << 16 | (value2 & 255) << 8 | destPixel & 255 & 255; - var value3 = lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round(blendAlpha * 255.0)]; - destPixel = (destPixel >>> 24 & 255 & 255) << 24 | (destPixel >>> 16 & 255 & 255) << 16 | (destPixel >>> 8 & 255 & 255) << 8 | value3 & 255; - } - var format2 = destFormat; - var premultiplied2 = destPremultiplied; - if(premultiplied2 == null) { - premultiplied2 = false; - } - if(format2 == null) { - format2 = 0; - } - if(premultiplied2) { - if((destPixel & 255) == 0) { - if(destPixel != 0) { - destPixel = 0; - } - } else if((destPixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[destPixel & 255]; - destPixel = ((destPixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((destPixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((destPixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | destPixel & 255 & 255; - } - } - switch(format2) { - case 0: - destData[destPosition] = destPixel >>> 24 & 255; - destData[destPosition + 1] = destPixel >>> 16 & 255; - destData[destPosition + 2] = destPixel >>> 8 & 255; - destData[destPosition + 3] = destPixel & 255; - break; - case 1: - destData[destPosition] = destPixel & 255; - destData[destPosition + 1] = destPixel >>> 24 & 255; - destData[destPosition + 2] = destPixel >>> 16 & 255; - destData[destPosition + 3] = destPixel >>> 8 & 255; - break; - case 2: - destData[destPosition] = destPixel >>> 8 & 255; - destData[destPosition + 1] = destPixel >>> 16 & 255; - destData[destPosition + 2] = destPixel >>> 24 & 255; - destData[destPosition + 3] = destPixel & 255; - break; - } - sourcePosition += 4; - destPosition += 4; - } - } - } else if(sourceFormat == destFormat && sourcePremultiplied == destPremultiplied && sourceBytesPerPixel == destBytesPerPixel) { - var _g3 = 0; - var _g12 = destView.height; - while(_g3 < _g12) { - var y1 = _g3++; - sourcePosition = sourceView.byteOffset + sourceView.stride * y1; - destPosition = destView.byteOffset + destView.stride * y1; - destData.set(sourceData.subarray(sourcePosition,sourcePosition + destView.width * destBytesPerPixel),destPosition); - } - } else { - var _g4 = 0; - var _g13 = destView.height; - while(_g4 < _g13) { - var y2 = _g4++; - sourcePosition = sourceView.byteOffset + sourceView.stride * y2; - destPosition = destView.byteOffset + destView.stride * y2; - var _g5 = 0; - var _g14 = destView.width; - while(_g5 < _g14) { - var x1 = _g5++; - var format3 = sourceFormat; - var premultiplied3 = sourcePremultiplied; - if(premultiplied3 == null) { - premultiplied3 = false; - } - if(format3 == null) { - format3 = 0; - } - switch(format3) { - case 0: - sourcePixel = (sourceData[sourcePosition] & 255) << 24 | (sourceData[sourcePosition + 1] & 255) << 16 | (sourceData[sourcePosition + 2] & 255) << 8 | sourceData[sourcePosition + 3] & 255; - break; - case 1: - sourcePixel = (sourceData[sourcePosition + 1] & 255) << 24 | (sourceData[sourcePosition + 2] & 255) << 16 | (sourceData[sourcePosition + 3] & 255) << 8 | sourceData[sourcePosition] & 255; - break; - case 2: - sourcePixel = (sourceData[sourcePosition + 2] & 255) << 24 | (sourceData[sourcePosition + 1] & 255) << 16 | (sourceData[sourcePosition] & 255) << 8 | sourceData[sourcePosition + 3] & 255; - break; - } - if(premultiplied3) { - if((sourcePixel & 255) != 0 && (sourcePixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (sourcePixel & 255); - sourcePixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | sourcePixel & 255 & 255; - } - } - var format4 = destFormat; - var premultiplied4 = destPremultiplied; - if(premultiplied4 == null) { - premultiplied4 = false; - } - if(format4 == null) { - format4 = 0; - } - if(premultiplied4) { - if((sourcePixel & 255) == 0) { - if(sourcePixel != 0) { - sourcePixel = 0; - } - } else if((sourcePixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[sourcePixel & 255]; - sourcePixel = ((sourcePixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((sourcePixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((sourcePixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | sourcePixel & 255 & 255; - } - } - switch(format4) { - case 0: - destData[destPosition] = sourcePixel >>> 24 & 255; - destData[destPosition + 1] = sourcePixel >>> 16 & 255; - destData[destPosition + 2] = sourcePixel >>> 8 & 255; - destData[destPosition + 3] = sourcePixel & 255; - break; - case 1: - destData[destPosition] = sourcePixel & 255; - destData[destPosition + 1] = sourcePixel >>> 24 & 255; - destData[destPosition + 2] = sourcePixel >>> 16 & 255; - destData[destPosition + 3] = sourcePixel >>> 8 & 255; - break; - case 2: - destData[destPosition] = sourcePixel >>> 8 & 255; - destData[destPosition + 1] = sourcePixel >>> 16 & 255; - destData[destPosition + 2] = sourcePixel >>> 24 & 255; - destData[destPosition + 3] = sourcePixel & 255; - break; - } - sourcePosition += 4; - destPosition += 4; - } - } - } - } else { - var alphaData = alphaImage.buffer.data; - var alphaFormat = alphaImage.buffer.format; - var alphaPosition; - var alphaPixel; - var alphaView = new lime__$internal_graphics__$ImageDataUtil_ImageDataView(alphaImage,new lime_math_Rectangle(sourceView.x + (alphaPoint == null ? 0 : alphaPoint.x),sourceView.y + (alphaPoint == null ? 0 : alphaPoint.y),sourceView.width,sourceView.height)); - destView.clip(destPoint.x | 0,destPoint.y | 0,alphaView.width,alphaView.height); - if(blend) { - var _g6 = 0; - var _g15 = destView.height; - while(_g6 < _g15) { - var y3 = _g6++; - sourcePosition = sourceView.byteOffset + sourceView.stride * y3; - destPosition = destView.byteOffset + destView.stride * y3; - alphaPosition = alphaView.byteOffset + alphaView.stride * y3; - var _g7 = 0; - var _g16 = destView.width; - while(_g7 < _g16) { - var x2 = _g7++; - var format5 = sourceFormat; - var premultiplied5 = sourcePremultiplied; - if(premultiplied5 == null) { - premultiplied5 = false; - } - if(format5 == null) { - format5 = 0; - } - switch(format5) { - case 0: - sourcePixel = (sourceData[sourcePosition] & 255) << 24 | (sourceData[sourcePosition + 1] & 255) << 16 | (sourceData[sourcePosition + 2] & 255) << 8 | sourceData[sourcePosition + 3] & 255; - break; - case 1: - sourcePixel = (sourceData[sourcePosition + 1] & 255) << 24 | (sourceData[sourcePosition + 2] & 255) << 16 | (sourceData[sourcePosition + 3] & 255) << 8 | sourceData[sourcePosition] & 255; - break; - case 2: - sourcePixel = (sourceData[sourcePosition + 2] & 255) << 24 | (sourceData[sourcePosition + 1] & 255) << 16 | (sourceData[sourcePosition] & 255) << 8 | sourceData[sourcePosition + 3] & 255; - break; - } - if(premultiplied5) { - if((sourcePixel & 255) != 0 && (sourcePixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (sourcePixel & 255); - sourcePixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | sourcePixel & 255 & 255; - } - } - var format6 = destFormat; - var premultiplied6 = destPremultiplied; - if(premultiplied6 == null) { - premultiplied6 = false; - } - if(format6 == null) { - format6 = 0; - } - switch(format6) { - case 0: - destPixel = (destData[destPosition] & 255) << 24 | (destData[destPosition + 1] & 255) << 16 | (destData[destPosition + 2] & 255) << 8 | destData[destPosition + 3] & 255; - break; - case 1: - destPixel = (destData[destPosition + 1] & 255) << 24 | (destData[destPosition + 2] & 255) << 16 | (destData[destPosition + 3] & 255) << 8 | destData[destPosition] & 255; - break; - case 2: - destPixel = (destData[destPosition + 2] & 255) << 24 | (destData[destPosition + 1] & 255) << 16 | (destData[destPosition] & 255) << 8 | destData[destPosition + 3] & 255; - break; - } - if(premultiplied6) { - if((destPixel & 255) != 0 && (destPixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (destPixel & 255); - destPixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((destPixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((destPixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((destPixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | destPixel & 255 & 255; - } - } - var format7 = alphaFormat; - var premultiplied7 = false; - if(premultiplied7 == null) { - premultiplied7 = false; - } - if(format7 == null) { - format7 = 0; - } - switch(format7) { - case 0: - alphaPixel = (alphaData[alphaPosition] & 255) << 24 | (alphaData[alphaPosition + 1] & 255) << 16 | (alphaData[alphaPosition + 2] & 255) << 8 | alphaData[alphaPosition + 3] & 255; - break; - case 1: - alphaPixel = (alphaData[alphaPosition + 1] & 255) << 24 | (alphaData[alphaPosition + 2] & 255) << 16 | (alphaData[alphaPosition + 3] & 255) << 8 | alphaData[alphaPosition] & 255; - break; - case 2: - alphaPixel = (alphaData[alphaPosition + 2] & 255) << 24 | (alphaData[alphaPosition + 1] & 255) << 16 | (alphaData[alphaPosition] & 255) << 8 | alphaData[alphaPosition + 3] & 255; - break; - } - if(premultiplied7) { - if((alphaPixel & 255) != 0 && (alphaPixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (alphaPixel & 255); - alphaPixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((alphaPixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((alphaPixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((alphaPixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | alphaPixel & 255 & 255; - } - } - sourceAlpha = (alphaPixel & 255) / 255.0 * ((sourcePixel & 255) / 255.0); - if(sourceAlpha > 0) { - destAlpha = (destPixel & 255) / 255.0; - oneMinusSourceAlpha = 1 - sourceAlpha; - blendAlpha = sourceAlpha + destAlpha * oneMinusSourceAlpha; - var value4 = lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round(((sourcePixel >>> 24 & 255) * sourceAlpha + (destPixel >>> 24 & 255) * destAlpha * oneMinusSourceAlpha) / blendAlpha)]; - destPixel = (value4 & 255) << 24 | (destPixel >>> 16 & 255 & 255) << 16 | (destPixel >>> 8 & 255 & 255) << 8 | destPixel & 255 & 255; - var value5 = lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round(((sourcePixel >>> 16 & 255) * sourceAlpha + (destPixel >>> 16 & 255) * destAlpha * oneMinusSourceAlpha) / blendAlpha)]; - destPixel = (destPixel >>> 24 & 255 & 255) << 24 | (value5 & 255) << 16 | (destPixel >>> 8 & 255 & 255) << 8 | destPixel & 255 & 255; - var value6 = lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round(((sourcePixel >>> 8 & 255) * sourceAlpha + (destPixel >>> 8 & 255) * destAlpha * oneMinusSourceAlpha) / blendAlpha)]; - destPixel = (destPixel >>> 24 & 255 & 255) << 24 | (destPixel >>> 16 & 255 & 255) << 16 | (value6 & 255) << 8 | destPixel & 255 & 255; - var value7 = lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round(blendAlpha * 255.0)]; - destPixel = (destPixel >>> 24 & 255 & 255) << 24 | (destPixel >>> 16 & 255 & 255) << 16 | (destPixel >>> 8 & 255 & 255) << 8 | value7 & 255; - var format8 = destFormat; - var premultiplied8 = destPremultiplied; - if(premultiplied8 == null) { - premultiplied8 = false; - } - if(format8 == null) { - format8 = 0; - } - if(premultiplied8) { - if((destPixel & 255) == 0) { - if(destPixel != 0) { - destPixel = 0; - } - } else if((destPixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[destPixel & 255]; - destPixel = ((destPixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((destPixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((destPixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | destPixel & 255 & 255; - } - } - switch(format8) { - case 0: - destData[destPosition] = destPixel >>> 24 & 255; - destData[destPosition + 1] = destPixel >>> 16 & 255; - destData[destPosition + 2] = destPixel >>> 8 & 255; - destData[destPosition + 3] = destPixel & 255; - break; - case 1: - destData[destPosition] = destPixel & 255; - destData[destPosition + 1] = destPixel >>> 24 & 255; - destData[destPosition + 2] = destPixel >>> 16 & 255; - destData[destPosition + 3] = destPixel >>> 8 & 255; - break; - case 2: - destData[destPosition] = destPixel >>> 8 & 255; - destData[destPosition + 1] = destPixel >>> 16 & 255; - destData[destPosition + 2] = destPixel >>> 24 & 255; - destData[destPosition + 3] = destPixel & 255; - break; - } - } - sourcePosition += 4; - destPosition += 4; - alphaPosition += 4; - } - } - } else { - var _g8 = 0; - var _g17 = destView.height; - while(_g8 < _g17) { - var y4 = _g8++; - sourcePosition = sourceView.byteOffset + sourceView.stride * y4; - destPosition = destView.byteOffset + destView.stride * y4; - alphaPosition = alphaView.byteOffset + alphaView.stride * y4; - var _g9 = 0; - var _g18 = destView.width; - while(_g9 < _g18) { - var x3 = _g9++; - var format9 = sourceFormat; - var premultiplied9 = sourcePremultiplied; - if(premultiplied9 == null) { - premultiplied9 = false; - } - if(format9 == null) { - format9 = 0; - } - switch(format9) { - case 0: - sourcePixel = (sourceData[sourcePosition] & 255) << 24 | (sourceData[sourcePosition + 1] & 255) << 16 | (sourceData[sourcePosition + 2] & 255) << 8 | sourceData[sourcePosition + 3] & 255; - break; - case 1: - sourcePixel = (sourceData[sourcePosition + 1] & 255) << 24 | (sourceData[sourcePosition + 2] & 255) << 16 | (sourceData[sourcePosition + 3] & 255) << 8 | sourceData[sourcePosition] & 255; - break; - case 2: - sourcePixel = (sourceData[sourcePosition + 2] & 255) << 24 | (sourceData[sourcePosition + 1] & 255) << 16 | (sourceData[sourcePosition] & 255) << 8 | sourceData[sourcePosition + 3] & 255; - break; - } - if(premultiplied9) { - if((sourcePixel & 255) != 0 && (sourcePixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (sourcePixel & 255); - sourcePixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | sourcePixel & 255 & 255; - } - } - var format10 = alphaFormat; - var premultiplied10 = false; - if(premultiplied10 == null) { - premultiplied10 = false; - } - if(format10 == null) { - format10 = 0; - } - switch(format10) { - case 0: - alphaPixel = (alphaData[alphaPosition] & 255) << 24 | (alphaData[alphaPosition + 1] & 255) << 16 | (alphaData[alphaPosition + 2] & 255) << 8 | alphaData[alphaPosition + 3] & 255; - break; - case 1: - alphaPixel = (alphaData[alphaPosition + 1] & 255) << 24 | (alphaData[alphaPosition + 2] & 255) << 16 | (alphaData[alphaPosition + 3] & 255) << 8 | alphaData[alphaPosition] & 255; - break; - case 2: - alphaPixel = (alphaData[alphaPosition + 2] & 255) << 24 | (alphaData[alphaPosition + 1] & 255) << 16 | (alphaData[alphaPosition] & 255) << 8 | alphaData[alphaPosition + 3] & 255; - break; - } - if(premultiplied10) { - if((alphaPixel & 255) != 0 && (alphaPixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (alphaPixel & 255); - alphaPixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((alphaPixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((alphaPixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((alphaPixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | alphaPixel & 255 & 255; - } - } - var value8 = Math.round((sourcePixel & 255) * ((alphaPixel & 255) / 255)); - sourcePixel = (sourcePixel >>> 24 & 255 & 255) << 24 | (sourcePixel >>> 16 & 255 & 255) << 16 | (sourcePixel >>> 8 & 255 & 255) << 8 | value8 & 255; - var format11 = destFormat; - var premultiplied11 = destPremultiplied; - if(premultiplied11 == null) { - premultiplied11 = false; - } - if(format11 == null) { - format11 = 0; - } - if(premultiplied11) { - if((sourcePixel & 255) == 0) { - if(sourcePixel != 0) { - sourcePixel = 0; - } - } else if((sourcePixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[sourcePixel & 255]; - sourcePixel = ((sourcePixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((sourcePixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((sourcePixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | sourcePixel & 255 & 255; - } - } - switch(format11) { - case 0: - destData[destPosition] = sourcePixel >>> 24 & 255; - destData[destPosition + 1] = sourcePixel >>> 16 & 255; - destData[destPosition + 2] = sourcePixel >>> 8 & 255; - destData[destPosition + 3] = sourcePixel & 255; - break; - case 1: - destData[destPosition] = sourcePixel & 255; - destData[destPosition + 1] = sourcePixel >>> 24 & 255; - destData[destPosition + 2] = sourcePixel >>> 16 & 255; - destData[destPosition + 3] = sourcePixel >>> 8 & 255; - break; - case 2: - destData[destPosition] = sourcePixel >>> 8 & 255; - destData[destPosition + 1] = sourcePixel >>> 16 & 255; - destData[destPosition + 2] = sourcePixel >>> 24 & 255; - destData[destPosition + 3] = sourcePixel & 255; - break; - } - sourcePosition += 4; - destPosition += 4; - alphaPosition += 4; - } - } - } - } - } - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageDataUtil.fillRect = function(image,rect,color,format) { - var fillColor; - switch(format) { - case 1: - var argb = color; - var this1 = 0; - var rgba = this1; - rgba = (argb >>> 16 & 255 & 255) << 24 | (argb >>> 8 & 255 & 255) << 16 | (argb & 255 & 255) << 8 | argb >>> 24 & 255 & 255; - fillColor = rgba; - break; - case 2: - var bgra = color; - var this2 = 0; - var rgba1 = this2; - rgba1 = (bgra >>> 8 & 255 & 255) << 24 | (bgra >>> 16 & 255 & 255) << 16 | (bgra >>> 24 & 255 & 255) << 8 | bgra & 255 & 255; - fillColor = rgba1; - break; - default: - fillColor = color; - } - if(!image.get_transparent()) { - fillColor = (fillColor >>> 24 & 255 & 255) << 24 | (fillColor >>> 16 & 255 & 255) << 16 | (fillColor >>> 8 & 255 & 255) << 8 | 255; - } - var data = image.buffer.data; - if(data == null) { - return; - } - var format1 = image.buffer.format; - var premultiplied = image.buffer.premultiplied; - if(premultiplied) { - if((fillColor & 255) == 0) { - if(fillColor != 0) { - fillColor = 0; - } - } else if((fillColor & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[fillColor & 255]; - fillColor = ((fillColor >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((fillColor >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((fillColor >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | fillColor & 255 & 255; - } - } - var dataView = new lime__$internal_graphics__$ImageDataUtil_ImageDataView(image,rect); - var row; - var _g = 0; - var _g1 = dataView.height; - while(_g < _g1) { - var y = _g++; - row = dataView.byteOffset + dataView.stride * y; - var _g2 = 0; - var _g11 = dataView.width; - while(_g2 < _g11) { - var x = _g2++; - var offset = row + x * 4; - var format2 = format1; - var premultiplied1 = false; - if(premultiplied1 == null) { - premultiplied1 = false; - } - if(format2 == null) { - format2 = 0; - } - if(premultiplied1) { - if((fillColor & 255) == 0) { - if(fillColor != 0) { - fillColor = 0; - } - } else if((fillColor & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[fillColor & 255]; - fillColor = ((fillColor >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((fillColor >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((fillColor >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | fillColor & 255 & 255; - } - } - switch(format2) { - case 0: - data[offset] = fillColor >>> 24 & 255; - data[offset + 1] = fillColor >>> 16 & 255; - data[offset + 2] = fillColor >>> 8 & 255; - data[offset + 3] = fillColor & 255; - break; - case 1: - data[offset] = fillColor & 255; - data[offset + 1] = fillColor >>> 24 & 255; - data[offset + 2] = fillColor >>> 16 & 255; - data[offset + 3] = fillColor >>> 8 & 255; - break; - case 2: - data[offset] = fillColor >>> 8 & 255; - data[offset + 1] = fillColor >>> 16 & 255; - data[offset + 2] = fillColor >>> 24 & 255; - data[offset + 3] = fillColor & 255; - break; - } - } - } - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageDataUtil.floodFill = function(image,x,y,color,format) { - var data = image.buffer.data; - if(data == null) { - return; - } - if(format == 1) { - color = (color & 16777215) << 8 | color >> 24 & 255; - } - var format1 = image.buffer.format; - var premultiplied = image.buffer.premultiplied; - var fillColor = color; - var hitColor; - var offset = (y + image.offsetY) * (image.buffer.width * 4) + (x + image.offsetX) * 4; - var format2 = format1; - var premultiplied1 = premultiplied; - if(premultiplied1 == null) { - premultiplied1 = false; - } - if(format2 == null) { - format2 = 0; - } - switch(format2) { - case 0: - hitColor = (data[offset] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset + 2] & 255) << 8 | data[offset + 3] & 255; - break; - case 1: - hitColor = (data[offset + 1] & 255) << 24 | (data[offset + 2] & 255) << 16 | (data[offset + 3] & 255) << 8 | data[offset] & 255; - break; - case 2: - hitColor = (data[offset + 2] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset] & 255) << 8 | data[offset + 3] & 255; - break; - } - if(premultiplied1) { - if((hitColor & 255) != 0 && (hitColor & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (hitColor & 255); - hitColor = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((hitColor >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((hitColor >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((hitColor >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | hitColor & 255 & 255; - } - } - if(!image.get_transparent()) { - fillColor = (fillColor >>> 24 & 255 & 255) << 24 | (fillColor >>> 16 & 255 & 255) << 16 | (fillColor >>> 8 & 255 & 255) << 8 | 255; - hitColor = (hitColor >>> 24 & 255 & 255) << 24 | (hitColor >>> 16 & 255 & 255) << 16 | (hitColor >>> 8 & 255 & 255) << 8 | 255; - } - if(fillColor == hitColor) { - return; - } - if(premultiplied) { - if((fillColor & 255) == 0) { - if(fillColor != 0) { - fillColor = 0; - } - } else if((fillColor & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[fillColor & 255]; - fillColor = ((fillColor >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((fillColor >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((fillColor >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | fillColor & 255 & 255; - } - } - var dx = [0,-1,1,0]; - var dy = [-1,0,0,1]; - var minX = -image.offsetX; - var minY = -image.offsetY; - var maxX = minX + image.width; - var maxY = minY + image.height; - var queue = []; - queue.push(x); - queue.push(y); - var curPointX; - var curPointY; - var nextPointX; - var nextPointY; - var nextPointOffset; - var readColor; - while(queue.length > 0) { - curPointY = queue.pop(); - curPointX = queue.pop(); - var _g = 0; - while(_g < 4) { - var i = _g++; - nextPointX = curPointX + dx[i]; - nextPointY = curPointY + dy[i]; - if(nextPointX < minX || nextPointY < minY || nextPointX >= maxX || nextPointY >= maxY) { - continue; - } - nextPointOffset = (nextPointY * image.width + nextPointX) * 4; - var format3 = format1; - var premultiplied2 = premultiplied; - if(premultiplied2 == null) { - premultiplied2 = false; - } - if(format3 == null) { - format3 = 0; - } - switch(format3) { - case 0: - readColor = (data[nextPointOffset] & 255) << 24 | (data[nextPointOffset + 1] & 255) << 16 | (data[nextPointOffset + 2] & 255) << 8 | data[nextPointOffset + 3] & 255; - break; - case 1: - readColor = (data[nextPointOffset + 1] & 255) << 24 | (data[nextPointOffset + 2] & 255) << 16 | (data[nextPointOffset + 3] & 255) << 8 | data[nextPointOffset] & 255; - break; - case 2: - readColor = (data[nextPointOffset + 2] & 255) << 24 | (data[nextPointOffset + 1] & 255) << 16 | (data[nextPointOffset] & 255) << 8 | data[nextPointOffset + 3] & 255; - break; - } - if(premultiplied2) { - if((readColor & 255) != 0 && (readColor & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (readColor & 255); - readColor = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((readColor >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((readColor >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((readColor >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | readColor & 255 & 255; - } - } - if(readColor == hitColor) { - var format4 = format1; - var premultiplied3 = false; - if(premultiplied3 == null) { - premultiplied3 = false; - } - if(format4 == null) { - format4 = 0; - } - if(premultiplied3) { - if((fillColor & 255) == 0) { - if(fillColor != 0) { - fillColor = 0; - } - } else if((fillColor & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[fillColor & 255]; - fillColor = ((fillColor >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((fillColor >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((fillColor >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | fillColor & 255 & 255; - } - } - switch(format4) { - case 0: - data[nextPointOffset] = fillColor >>> 24 & 255; - data[nextPointOffset + 1] = fillColor >>> 16 & 255; - data[nextPointOffset + 2] = fillColor >>> 8 & 255; - data[nextPointOffset + 3] = fillColor & 255; - break; - case 1: - data[nextPointOffset] = fillColor & 255; - data[nextPointOffset + 1] = fillColor >>> 24 & 255; - data[nextPointOffset + 2] = fillColor >>> 16 & 255; - data[nextPointOffset + 3] = fillColor >>> 8 & 255; - break; - case 2: - data[nextPointOffset] = fillColor >>> 8 & 255; - data[nextPointOffset + 1] = fillColor >>> 16 & 255; - data[nextPointOffset + 2] = fillColor >>> 24 & 255; - data[nextPointOffset + 3] = fillColor & 255; - break; - } - queue.push(nextPointX); - queue.push(nextPointY); - } - } - } - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageDataUtil.gaussianBlur = function(image,sourceImage,sourceRect,destPoint,blurX,blurY,quality,strength,color) { - if(strength == null) { - strength = 1; - } - if(quality == null) { - quality = 1; - } - if(blurY == null) { - blurY = 4; - } - if(blurX == null) { - blurX = 4; - } - var imagePremultiplied = image.get_premultiplied(); - if(imagePremultiplied) { - image.set_premultiplied(false); - } - lime__$internal_graphics_StackBlur.blur(image,sourceImage,sourceRect,destPoint,blurX,blurY,quality); - image.dirty = true; - image.version++; - if(imagePremultiplied) { - image.set_premultiplied(true); - } - return image; -}; -lime__$internal_graphics_ImageDataUtil.getColorBoundsRect = function(image,mask,color,findColor,format) { - var left = image.width + 1; - var right = 0; - var top = image.height + 1; - var bottom = 0; - var _color; - var _mask; - switch(format) { - case 1: - var argb = color; - var this1 = 0; - var rgba = this1; - rgba = (argb >>> 16 & 255 & 255) << 24 | (argb >>> 8 & 255 & 255) << 16 | (argb & 255 & 255) << 8 | argb >>> 24 & 255 & 255; - _color = rgba; - var argb1 = mask; - var this2 = 0; - var rgba1 = this2; - rgba1 = (argb1 >>> 16 & 255 & 255) << 24 | (argb1 >>> 8 & 255 & 255) << 16 | (argb1 & 255 & 255) << 8 | argb1 >>> 24 & 255 & 255; - _mask = rgba1; - break; - case 2: - var bgra = color; - var this3 = 0; - var rgba2 = this3; - rgba2 = (bgra >>> 8 & 255 & 255) << 24 | (bgra >>> 16 & 255 & 255) << 16 | (bgra >>> 24 & 255 & 255) << 8 | bgra & 255 & 255; - _color = rgba2; - var bgra1 = mask; - var this4 = 0; - var rgba3 = this4; - rgba3 = (bgra1 >>> 8 & 255 & 255) << 24 | (bgra1 >>> 16 & 255 & 255) << 16 | (bgra1 >>> 24 & 255 & 255) << 8 | bgra1 & 255 & 255; - _mask = rgba3; - break; - default: - _color = color; - _mask = mask; - } - if(!image.get_transparent()) { - _color = (_color >>> 24 & 255 & 255) << 24 | (_color >>> 16 & 255 & 255) << 16 | (_color >>> 8 & 255 & 255) << 8 | 255; - _mask = (_mask >>> 24 & 255 & 255) << 24 | (_mask >>> 16 & 255 & 255) << 16 | (_mask >>> 8 & 255 & 255) << 8 | 255; - } - var pixel; - var hit; - var _g = 0; - var _g1 = image.width; - while(_g < _g1) { - var x = _g++; - hit = false; - var _g2 = 0; - var _g11 = image.height; - while(_g2 < _g11) { - var y = _g2++; - pixel = image.getPixel32(x,y,0); - hit = findColor ? (pixel & _mask) == _color : (pixel & _mask) != _color; - if(hit) { - if(x < left) { - left = x; - } - break; - } - } - if(hit) { - break; - } - } - var ix; - var _g21 = 0; - var _g3 = image.width; - while(_g21 < _g3) { - var x1 = _g21++; - ix = image.width - 1 - x1; - hit = false; - var _g22 = 0; - var _g31 = image.height; - while(_g22 < _g31) { - var y1 = _g22++; - pixel = image.getPixel32(ix,y1,0); - hit = findColor ? (pixel & _mask) == _color : (pixel & _mask) != _color; - if(hit) { - if(ix > right) { - right = ix; - } - break; - } - } - if(hit) { - break; - } - } - var _g4 = 0; - var _g5 = image.height; - while(_g4 < _g5) { - var y2 = _g4++; - hit = false; - var _g41 = 0; - var _g51 = image.width; - while(_g41 < _g51) { - var x2 = _g41++; - pixel = image.getPixel32(x2,y2,0); - hit = findColor ? (pixel & _mask) == _color : (pixel & _mask) != _color; - if(hit) { - if(y2 < top) { - top = y2; - } - break; - } - } - if(hit) { - break; - } - } - var iy; - var _g6 = 0; - var _g7 = image.height; - while(_g6 < _g7) { - var y3 = _g6++; - iy = image.height - 1 - y3; - hit = false; - var _g61 = 0; - var _g71 = image.width; - while(_g61 < _g71) { - var x3 = _g61++; - pixel = image.getPixel32(x3,iy,0); - hit = findColor ? (pixel & _mask) == _color : (pixel & _mask) != _color; - if(hit) { - if(iy > bottom) { - bottom = iy; - } - break; - } - } - if(hit) { - break; - } - } - var w = right - left; - var h = bottom - top; - if(w > 0) { - ++w; - } - if(h > 0) { - ++h; - } - if(w < 0) { - w = 0; - } - if(h < 0) { - h = 0; - } - if(left == right) { - w = 1; - } - if(top == bottom) { - h = 1; - } - if(left > image.width) { - left = 0; - } - if(top > image.height) { - top = 0; - } - return new lime_math_Rectangle(left,top,w,h); -}; -lime__$internal_graphics_ImageDataUtil.getPixel = function(image,x,y,format) { - var pixel; - var data = image.buffer.data; - var offset = 4 * (y + image.offsetY) * image.buffer.width + (x + image.offsetX) * 4; - var format1 = image.buffer.format; - var premultiplied = image.buffer.premultiplied; - if(premultiplied == null) { - premultiplied = false; - } - if(format1 == null) { - format1 = 0; - } - switch(format1) { - case 0: - pixel = (data[offset] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset + 2] & 255) << 8 | data[offset + 3] & 255; - break; - case 1: - pixel = (data[offset + 1] & 255) << 24 | (data[offset + 2] & 255) << 16 | (data[offset + 3] & 255) << 8 | data[offset] & 255; - break; - case 2: - pixel = (data[offset + 2] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset] & 255) << 8 | data[offset + 3] & 255; - break; - } - if(premultiplied) { - if((pixel & 255) != 0 && (pixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (pixel & 255); - pixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | pixel & 255 & 255; - } - } - pixel = (pixel >>> 24 & 255 & 255) << 24 | (pixel >>> 16 & 255 & 255) << 16 | (pixel >>> 8 & 255 & 255) << 8 | 0; - switch(format) { - case 1: - var this1 = 0; - var argb = this1; - argb = (pixel & 255 & 255) << 24 | (pixel >>> 24 & 255 & 255) << 16 | (pixel >>> 16 & 255 & 255) << 8 | pixel >>> 8 & 255 & 255; - return argb; - case 2: - var this2 = 0; - var bgra = this2; - bgra = (pixel >>> 8 & 255 & 255) << 24 | (pixel >>> 16 & 255 & 255) << 16 | (pixel >>> 24 & 255 & 255) << 8 | pixel & 255 & 255; - return bgra; - default: - return pixel; - } -}; -lime__$internal_graphics_ImageDataUtil.getPixel32 = function(image,x,y,format) { - var pixel; - var data = image.buffer.data; - var offset = 4 * (y + image.offsetY) * image.buffer.width + (x + image.offsetX) * 4; - var format1 = image.buffer.format; - var premultiplied = image.buffer.premultiplied; - if(premultiplied == null) { - premultiplied = false; - } - if(format1 == null) { - format1 = 0; - } - switch(format1) { - case 0: - pixel = (data[offset] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset + 2] & 255) << 8 | data[offset + 3] & 255; - break; - case 1: - pixel = (data[offset + 1] & 255) << 24 | (data[offset + 2] & 255) << 16 | (data[offset + 3] & 255) << 8 | data[offset] & 255; - break; - case 2: - pixel = (data[offset + 2] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset] & 255) << 8 | data[offset + 3] & 255; - break; - } - if(premultiplied) { - if((pixel & 255) != 0 && (pixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (pixel & 255); - pixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | pixel & 255 & 255; - } - } - switch(format) { - case 1: - var this1 = 0; - var argb = this1; - argb = (pixel & 255 & 255) << 24 | (pixel >>> 24 & 255 & 255) << 16 | (pixel >>> 16 & 255 & 255) << 8 | pixel >>> 8 & 255 & 255; - return argb; - case 2: - var this2 = 0; - var bgra = this2; - bgra = (pixel >>> 8 & 255 & 255) << 24 | (pixel >>> 16 & 255 & 255) << 16 | (pixel >>> 24 & 255 & 255) << 8 | pixel & 255 & 255; - return bgra; - default: - return pixel; - } -}; -lime__$internal_graphics_ImageDataUtil.getPixels = function(image,rect,format) { - if(image.buffer.data == null) { - return null; - } - var length = rect.width * rect.height | 0; - var bytes = new haxe_io_Bytes(new ArrayBuffer(length * 4)); - var data = image.buffer.data; - var sourceFormat = image.buffer.format; - var premultiplied = image.buffer.premultiplied; - var dataView = new lime__$internal_graphics__$ImageDataUtil_ImageDataView(image,rect); - var position; - var argb; - var bgra; - var pixel; - var destPosition = 0; - var _g = 0; - var _g1 = dataView.height; - while(_g < _g1) { - var y = _g++; - position = dataView.byteOffset + dataView.stride * y; - var _g2 = 0; - var _g11 = dataView.width; - while(_g2 < _g11) { - var x = _g2++; - var format1 = sourceFormat; - var premultiplied1 = premultiplied; - if(premultiplied1 == null) { - premultiplied1 = false; - } - if(format1 == null) { - format1 = 0; - } - switch(format1) { - case 0: - pixel = (data[position] & 255) << 24 | (data[position + 1] & 255) << 16 | (data[position + 2] & 255) << 8 | data[position + 3] & 255; - break; - case 1: - pixel = (data[position + 1] & 255) << 24 | (data[position + 2] & 255) << 16 | (data[position + 3] & 255) << 8 | data[position] & 255; - break; - case 2: - pixel = (data[position + 2] & 255) << 24 | (data[position + 1] & 255) << 16 | (data[position] & 255) << 8 | data[position + 3] & 255; - break; - } - if(premultiplied1) { - if((pixel & 255) != 0 && (pixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (pixel & 255); - pixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | pixel & 255 & 255; - } - } - switch(format) { - case 1: - var this1 = 0; - var argb1 = this1; - argb1 = (pixel & 255 & 255) << 24 | (pixel >>> 24 & 255 & 255) << 16 | (pixel >>> 16 & 255 & 255) << 8 | pixel >>> 8 & 255 & 255; - argb = argb1; - pixel = argb; - break; - case 2: - var this2 = 0; - var bgra1 = this2; - bgra1 = (pixel >>> 8 & 255 & 255) << 24 | (pixel >>> 16 & 255 & 255) << 16 | (pixel >>> 24 & 255 & 255) << 8 | pixel & 255 & 255; - bgra = bgra1; - pixel = bgra; - break; - default: - } - bytes.b[destPosition++] = pixel >>> 24 & 255 & 255; - bytes.b[destPosition++] = pixel >>> 16 & 255 & 255; - bytes.b[destPosition++] = pixel >>> 8 & 255 & 255; - bytes.b[destPosition++] = pixel & 255 & 255; - position += 4; - } - } - return bytes; -}; -lime__$internal_graphics_ImageDataUtil.merge = function(image,sourceImage,sourceRect,destPoint,redMultiplier,greenMultiplier,blueMultiplier,alphaMultiplier) { - if(image.buffer.data == null || sourceImage.buffer.data == null) { - return; - } - var sourceView = new lime__$internal_graphics__$ImageDataUtil_ImageDataView(sourceImage,sourceRect); - var destView = new lime__$internal_graphics__$ImageDataUtil_ImageDataView(image,new lime_math_Rectangle(destPoint.x,destPoint.y,sourceView.width,sourceView.height)); - var sourceData = sourceImage.buffer.data; - var destData = image.buffer.data; - var sourceFormat = sourceImage.buffer.format; - var destFormat = image.buffer.format; - var sourcePremultiplied = sourceImage.buffer.premultiplied; - var destPremultiplied = image.buffer.premultiplied; - var sourcePosition; - var destPosition; - var sourcePixel; - var destPixel; - var _g = 0; - var _g1 = destView.height; - while(_g < _g1) { - var y = _g++; - sourcePosition = sourceView.byteOffset + sourceView.stride * y; - destPosition = destView.byteOffset + destView.stride * y; - var _g2 = 0; - var _g11 = destView.width; - while(_g2 < _g11) { - var x = _g2++; - var format = sourceFormat; - var premultiplied = sourcePremultiplied; - if(premultiplied == null) { - premultiplied = false; - } - if(format == null) { - format = 0; - } - switch(format) { - case 0: - sourcePixel = (sourceData[sourcePosition] & 255) << 24 | (sourceData[sourcePosition + 1] & 255) << 16 | (sourceData[sourcePosition + 2] & 255) << 8 | sourceData[sourcePosition + 3] & 255; - break; - case 1: - sourcePixel = (sourceData[sourcePosition + 1] & 255) << 24 | (sourceData[sourcePosition + 2] & 255) << 16 | (sourceData[sourcePosition + 3] & 255) << 8 | sourceData[sourcePosition] & 255; - break; - case 2: - sourcePixel = (sourceData[sourcePosition + 2] & 255) << 24 | (sourceData[sourcePosition + 1] & 255) << 16 | (sourceData[sourcePosition] & 255) << 8 | sourceData[sourcePosition + 3] & 255; - break; - } - if(premultiplied) { - if((sourcePixel & 255) != 0 && (sourcePixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (sourcePixel & 255); - sourcePixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | sourcePixel & 255 & 255; - } - } - var format1 = destFormat; - var premultiplied1 = destPremultiplied; - if(premultiplied1 == null) { - premultiplied1 = false; - } - if(format1 == null) { - format1 = 0; - } - switch(format1) { - case 0: - destPixel = (destData[destPosition] & 255) << 24 | (destData[destPosition + 1] & 255) << 16 | (destData[destPosition + 2] & 255) << 8 | destData[destPosition + 3] & 255; - break; - case 1: - destPixel = (destData[destPosition + 1] & 255) << 24 | (destData[destPosition + 2] & 255) << 16 | (destData[destPosition + 3] & 255) << 8 | destData[destPosition] & 255; - break; - case 2: - destPixel = (destData[destPosition + 2] & 255) << 24 | (destData[destPosition + 1] & 255) << 16 | (destData[destPosition] & 255) << 8 | destData[destPosition + 3] & 255; - break; - } - if(premultiplied1) { - if((destPixel & 255) != 0 && (destPixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (destPixel & 255); - destPixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((destPixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((destPixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((destPixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | destPixel & 255 & 255; - } - } - var value = ((sourcePixel >>> 24 & 255) * redMultiplier + (destPixel >>> 24 & 255) * (256 - redMultiplier)) / 256 | 0; - destPixel = (value & 255) << 24 | (destPixel >>> 16 & 255 & 255) << 16 | (destPixel >>> 8 & 255 & 255) << 8 | destPixel & 255 & 255; - var value1 = ((sourcePixel >>> 16 & 255) * greenMultiplier + (destPixel >>> 16 & 255) * (256 - greenMultiplier)) / 256 | 0; - destPixel = (destPixel >>> 24 & 255 & 255) << 24 | (value1 & 255) << 16 | (destPixel >>> 8 & 255 & 255) << 8 | destPixel & 255 & 255; - var value2 = ((sourcePixel >>> 8 & 255) * blueMultiplier + (destPixel >>> 8 & 255) * (256 - blueMultiplier)) / 256 | 0; - destPixel = (destPixel >>> 24 & 255 & 255) << 24 | (destPixel >>> 16 & 255 & 255) << 16 | (value2 & 255) << 8 | destPixel & 255 & 255; - var value3 = ((sourcePixel & 255) * alphaMultiplier + (destPixel & 255) * (256 - alphaMultiplier)) / 256 | 0; - destPixel = (destPixel >>> 24 & 255 & 255) << 24 | (destPixel >>> 16 & 255 & 255) << 16 | (destPixel >>> 8 & 255 & 255) << 8 | value3 & 255; - var format2 = destFormat; - var premultiplied2 = destPremultiplied; - if(premultiplied2 == null) { - premultiplied2 = false; - } - if(format2 == null) { - format2 = 0; - } - if(premultiplied2) { - if((destPixel & 255) == 0) { - if(destPixel != 0) { - destPixel = 0; - } - } else if((destPixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[destPixel & 255]; - destPixel = ((destPixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((destPixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((destPixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | destPixel & 255 & 255; - } - } - switch(format2) { - case 0: - destData[destPosition] = destPixel >>> 24 & 255; - destData[destPosition + 1] = destPixel >>> 16 & 255; - destData[destPosition + 2] = destPixel >>> 8 & 255; - destData[destPosition + 3] = destPixel & 255; - break; - case 1: - destData[destPosition] = destPixel & 255; - destData[destPosition + 1] = destPixel >>> 24 & 255; - destData[destPosition + 2] = destPixel >>> 16 & 255; - destData[destPosition + 3] = destPixel >>> 8 & 255; - break; - case 2: - destData[destPosition] = destPixel >>> 8 & 255; - destData[destPosition + 1] = destPixel >>> 16 & 255; - destData[destPosition + 2] = destPixel >>> 24 & 255; - destData[destPosition + 3] = destPixel & 255; - break; - } - sourcePosition += 4; - destPosition += 4; - } - } - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageDataUtil.multiplyAlpha = function(image) { - var data = image.buffer.data; - if(data == null || !image.buffer.transparent) { - return; - } - var format = image.buffer.format; - var length = data.length / 4 | 0; - var pixel; - var _g = 0; - var _g1 = length; - while(_g < _g1) { - var i = _g++; - var offset = i * 4; - var format1 = format; - var premultiplied = false; - if(premultiplied == null) { - premultiplied = false; - } - if(format1 == null) { - format1 = 0; - } - switch(format1) { - case 0: - pixel = (data[offset] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset + 2] & 255) << 8 | data[offset + 3] & 255; - break; - case 1: - pixel = (data[offset + 1] & 255) << 24 | (data[offset + 2] & 255) << 16 | (data[offset + 3] & 255) << 8 | data[offset] & 255; - break; - case 2: - pixel = (data[offset + 2] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset] & 255) << 8 | data[offset + 3] & 255; - break; - } - if(premultiplied) { - if((pixel & 255) != 0 && (pixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (pixel & 255); - pixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | pixel & 255 & 255; - } - } - var offset1 = i * 4; - var format2 = format; - var premultiplied1 = true; - if(premultiplied1 == null) { - premultiplied1 = false; - } - if(format2 == null) { - format2 = 0; - } - if(premultiplied1) { - if((pixel & 255) == 0) { - if(pixel != 0) { - pixel = 0; - } - } else if((pixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[pixel & 255]; - pixel = ((pixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((pixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((pixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | pixel & 255 & 255; - } - } - switch(format2) { - case 0: - data[offset1] = pixel >>> 24 & 255; - data[offset1 + 1] = pixel >>> 16 & 255; - data[offset1 + 2] = pixel >>> 8 & 255; - data[offset1 + 3] = pixel & 255; - break; - case 1: - data[offset1] = pixel & 255; - data[offset1 + 1] = pixel >>> 24 & 255; - data[offset1 + 2] = pixel >>> 16 & 255; - data[offset1 + 3] = pixel >>> 8 & 255; - break; - case 2: - data[offset1] = pixel >>> 8 & 255; - data[offset1 + 1] = pixel >>> 16 & 255; - data[offset1 + 2] = pixel >>> 24 & 255; - data[offset1 + 3] = pixel & 255; - break; - } - } - image.buffer.premultiplied = true; - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageDataUtil.resize = function(image,newWidth,newHeight) { - var buffer = image.buffer; - if(buffer.width == newWidth && buffer.height == newHeight) { - return; - } - var elements = newWidth * newHeight * 4; - var array = null; - var vector = null; - var view = null; - var buffer1 = null; - var len = null; - var this1; - if(elements != null) { - this1 = new Uint8Array(elements); - } else if(array != null) { - this1 = new Uint8Array(array); - } else if(vector != null) { - this1 = new Uint8Array(vector.__array); - } else if(view != null) { - this1 = new Uint8Array(view); - } else if(buffer1 != null) { - if(len == null) { - this1 = new Uint8Array(buffer1,0); - } else { - this1 = new Uint8Array(buffer1,0,len); - } - } else { - this1 = null; - } - var newBuffer = new lime_graphics_ImageBuffer(this1,newWidth,newHeight); - var imageWidth = image.width; - var imageHeight = image.height; - var data = image.get_data(); - var newData = newBuffer.data; - var sourceIndex; - var sourceIndexX; - var sourceIndexY; - var sourceIndexXY; - var index; - var sourceX; - var sourceY; - var u; - var v; - var uRatio; - var vRatio; - var uOpposite; - var vOpposite; - var _g = 0; - var _g1 = newHeight; - while(_g < _g1) { - var y = _g++; - var _g2 = 0; - var _g11 = newWidth; - while(_g2 < _g11) { - var x = _g2++; - u = (x + 0.5) / newWidth * imageWidth - 0.5; - v = (y + 0.5) / newHeight * imageHeight - 0.5; - sourceX = u | 0; - sourceY = v | 0; - sourceIndex = (sourceY * imageWidth + sourceX) * 4; - sourceIndexX = sourceX < imageWidth - 1 ? sourceIndex + 4 : sourceIndex; - sourceIndexY = sourceY < imageHeight - 1 ? sourceIndex + imageWidth * 4 : sourceIndex; - sourceIndexXY = sourceIndexX != sourceIndex ? sourceIndexY + 4 : sourceIndexY; - index = (y * newWidth + x) * 4; - uRatio = u - sourceX; - vRatio = v - sourceY; - uOpposite = 1 - uRatio; - vOpposite = 1 - vRatio; - newData[index] = (_$UInt_UInt_$Impl_$.toFloat(data[sourceIndex]) * uOpposite + _$UInt_UInt_$Impl_$.toFloat(data[sourceIndexX]) * uRatio) * vOpposite + (_$UInt_UInt_$Impl_$.toFloat(data[sourceIndexY]) * uOpposite + _$UInt_UInt_$Impl_$.toFloat(data[sourceIndexXY]) * uRatio) * vRatio | 0; - newData[index + 1] = (_$UInt_UInt_$Impl_$.toFloat(data[sourceIndex + 1]) * uOpposite + _$UInt_UInt_$Impl_$.toFloat(data[sourceIndexX + 1]) * uRatio) * vOpposite + (_$UInt_UInt_$Impl_$.toFloat(data[sourceIndexY + 1]) * uOpposite + _$UInt_UInt_$Impl_$.toFloat(data[sourceIndexXY + 1]) * uRatio) * vRatio | 0; - newData[index + 2] = (_$UInt_UInt_$Impl_$.toFloat(data[sourceIndex + 2]) * uOpposite + _$UInt_UInt_$Impl_$.toFloat(data[sourceIndexX + 2]) * uRatio) * vOpposite + (_$UInt_UInt_$Impl_$.toFloat(data[sourceIndexY + 2]) * uOpposite + _$UInt_UInt_$Impl_$.toFloat(data[sourceIndexXY + 2]) * uRatio) * vRatio | 0; - if(data[sourceIndexX + 3] == 0 || data[sourceIndexY + 3] == 0 || data[sourceIndexXY + 3] == 0) { - newData[index + 3] = 0; - } else { - newData[index + 3] = data[sourceIndex + 3]; - } - } - } - buffer.data = newBuffer.data; - buffer.width = newWidth; - buffer.height = newHeight; - buffer.__srcImage = null; - buffer.__srcImageData = null; - buffer.__srcCanvas = null; - buffer.__srcContext = null; - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageDataUtil.resizeBuffer = function(image,newWidth,newHeight) { - var buffer = image.buffer; - var data = image.get_data(); - var elements = newWidth * newHeight * 4; - var array = null; - var vector = null; - var view = null; - var buffer1 = null; - var len = null; - var this1; - if(elements != null) { - this1 = new Uint8Array(elements); - } else if(array != null) { - this1 = new Uint8Array(array); - } else if(vector != null) { - this1 = new Uint8Array(vector.__array); - } else if(view != null) { - this1 = new Uint8Array(view); - } else if(buffer1 != null) { - if(len == null) { - this1 = new Uint8Array(buffer1,0); - } else { - this1 = new Uint8Array(buffer1,0,len); - } - } else { - this1 = null; - } - var newData = this1; - var sourceIndex; - var index; - var _g = 0; - var _g1 = buffer.height; - while(_g < _g1) { - var y = _g++; - var _g2 = 0; - var _g11 = buffer.width; - while(_g2 < _g11) { - var x = _g2++; - sourceIndex = (y * buffer.width + x) * 4; - index = (y * newWidth + x) * 4; - newData[index] = data[sourceIndex]; - newData[index + 1] = data[sourceIndex + 1]; - newData[index + 2] = data[sourceIndex + 2]; - newData[index + 3] = data[sourceIndex + 3]; - } - } - buffer.data = newData; - buffer.width = newWidth; - buffer.height = newHeight; - buffer.__srcImage = null; - buffer.__srcImageData = null; - buffer.__srcCanvas = null; - buffer.__srcContext = null; - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageDataUtil.setFormat = function(image,format) { - var data = image.buffer.data; - if(data == null) { - return; - } - var index; - var a16; - var length = data.length / 4 | 0; - var r1; - var g1; - var b1; - var a1; - var r2; - var g2; - var b2; - var a2; - var r; - var g; - var b; - var a; - switch(image.get_format()) { - case 0: - r1 = 0; - g1 = 1; - b1 = 2; - a1 = 3; - break; - case 1: - r1 = 1; - g1 = 2; - b1 = 3; - a1 = 0; - break; - case 2: - r1 = 2; - g1 = 1; - b1 = 0; - a1 = 3; - break; - } - switch(format) { - case 0: - r2 = 0; - g2 = 1; - b2 = 2; - a2 = 3; - break; - case 1: - r2 = 1; - g2 = 2; - b2 = 3; - a2 = 0; - break; - case 2: - r2 = 2; - g2 = 1; - b2 = 0; - a2 = 3; - break; - } - var _g1 = 0; - var _g2 = length; - while(_g1 < _g2) { - var i = _g1++; - index = i * 4; - r = data[index + r1]; - g = data[index + g1]; - b = data[index + b1]; - a = data[index + a1]; - data[index + r2] = r; - data[index + g2] = g; - data[index + b2] = b; - data[index + a2] = a; - } - image.buffer.format = format; - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageDataUtil.setPixel = function(image,x,y,color,format) { - var pixel; - switch(format) { - case 1: - var argb = color; - var this1 = 0; - var rgba = this1; - rgba = (argb >>> 16 & 255 & 255) << 24 | (argb >>> 8 & 255 & 255) << 16 | (argb & 255 & 255) << 8 | argb >>> 24 & 255 & 255; - pixel = rgba; - break; - case 2: - var bgra = color; - var this2 = 0; - var rgba1 = this2; - rgba1 = (bgra >>> 8 & 255 & 255) << 24 | (bgra >>> 16 & 255 & 255) << 16 | (bgra >>> 24 & 255 & 255) << 8 | bgra & 255 & 255; - pixel = rgba1; - break; - default: - pixel = color; - } - var this3 = 0; - var source = this3; - var data = image.buffer.data; - var offset = 4 * (y + image.offsetY) * image.buffer.width + (x + image.offsetX) * 4; - var format1 = image.buffer.format; - var premultiplied = image.buffer.premultiplied; - if(premultiplied == null) { - premultiplied = false; - } - if(format1 == null) { - format1 = 0; - } - switch(format1) { - case 0: - source = (data[offset] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset + 2] & 255) << 8 | data[offset + 3] & 255; - break; - case 1: - source = (data[offset + 1] & 255) << 24 | (data[offset + 2] & 255) << 16 | (data[offset + 3] & 255) << 8 | data[offset] & 255; - break; - case 2: - source = (data[offset + 2] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset] & 255) << 8 | data[offset + 3] & 255; - break; - } - if(premultiplied) { - if((source & 255) != 0 && (source & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (source & 255); - source = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((source >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((source >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((source >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | source & 255 & 255; - } - } - var value = source & 255; - pixel = (pixel >>> 24 & 255 & 255) << 24 | (pixel >>> 16 & 255 & 255) << 16 | (pixel >>> 8 & 255 & 255) << 8 | value & 255; - var data1 = image.buffer.data; - var offset1 = 4 * (y + image.offsetY) * image.buffer.width + (x + image.offsetX) * 4; - var format2 = image.buffer.format; - var premultiplied1 = image.buffer.premultiplied; - if(premultiplied1 == null) { - premultiplied1 = false; - } - if(format2 == null) { - format2 = 0; - } - if(premultiplied1) { - if((pixel & 255) == 0) { - if(pixel != 0) { - pixel = 0; - } - } else if((pixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[pixel & 255]; - pixel = ((pixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((pixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((pixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | pixel & 255 & 255; - } - } - switch(format2) { - case 0: - data1[offset1] = pixel >>> 24 & 255; - data1[offset1 + 1] = pixel >>> 16 & 255; - data1[offset1 + 2] = pixel >>> 8 & 255; - data1[offset1 + 3] = pixel & 255; - break; - case 1: - data1[offset1] = pixel & 255; - data1[offset1 + 1] = pixel >>> 24 & 255; - data1[offset1 + 2] = pixel >>> 16 & 255; - data1[offset1 + 3] = pixel >>> 8 & 255; - break; - case 2: - data1[offset1] = pixel >>> 8 & 255; - data1[offset1 + 1] = pixel >>> 16 & 255; - data1[offset1 + 2] = pixel >>> 24 & 255; - data1[offset1 + 3] = pixel & 255; - break; - } - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageDataUtil.setPixel32 = function(image,x,y,color,format) { - var pixel; - switch(format) { - case 1: - var argb = color; - var this1 = 0; - var rgba = this1; - rgba = (argb >>> 16 & 255 & 255) << 24 | (argb >>> 8 & 255 & 255) << 16 | (argb & 255 & 255) << 8 | argb >>> 24 & 255 & 255; - pixel = rgba; - break; - case 2: - var bgra = color; - var this2 = 0; - var rgba1 = this2; - rgba1 = (bgra >>> 8 & 255 & 255) << 24 | (bgra >>> 16 & 255 & 255) << 16 | (bgra >>> 24 & 255 & 255) << 8 | bgra & 255 & 255; - pixel = rgba1; - break; - default: - pixel = color; - } - if(!image.get_transparent()) { - pixel = (pixel >>> 24 & 255 & 255) << 24 | (pixel >>> 16 & 255 & 255) << 16 | (pixel >>> 8 & 255 & 255) << 8 | 255; - } - var data = image.buffer.data; - var offset = 4 * (y + image.offsetY) * image.buffer.width + (x + image.offsetX) * 4; - var format1 = image.buffer.format; - var premultiplied = image.buffer.premultiplied; - if(premultiplied == null) { - premultiplied = false; - } - if(format1 == null) { - format1 = 0; - } - if(premultiplied) { - if((pixel & 255) == 0) { - if(pixel != 0) { - pixel = 0; - } - } else if((pixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[pixel & 255]; - pixel = ((pixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((pixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((pixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | pixel & 255 & 255; - } - } - switch(format1) { - case 0: - data[offset] = pixel >>> 24 & 255; - data[offset + 1] = pixel >>> 16 & 255; - data[offset + 2] = pixel >>> 8 & 255; - data[offset + 3] = pixel & 255; - break; - case 1: - data[offset] = pixel & 255; - data[offset + 1] = pixel >>> 24 & 255; - data[offset + 2] = pixel >>> 16 & 255; - data[offset + 3] = pixel >>> 8 & 255; - break; - case 2: - data[offset] = pixel >>> 8 & 255; - data[offset + 1] = pixel >>> 16 & 255; - data[offset + 2] = pixel >>> 24 & 255; - data[offset + 3] = pixel & 255; - break; - } - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageDataUtil.setPixels = function(image,rect,bytePointer,format,endian) { - if(image.buffer.data == null) { - return; - } - var data = image.buffer.data; - var sourceFormat = image.buffer.format; - var premultiplied = image.buffer.premultiplied; - var dataView = new lime__$internal_graphics__$ImageDataUtil_ImageDataView(image,rect); - var row; - var color; - var pixel; - var transparent = image.get_transparent(); - var bytes = bytePointer.bytes; - var dataPosition = bytePointer.offset; - var littleEndian = endian != lime_system_Endian.BIG_ENDIAN; - var _g = 0; - var _g1 = dataView.height; - while(_g < _g1) { - var y = _g++; - row = dataView.byteOffset + dataView.stride * y; - var _g2 = 0; - var _g11 = dataView.width; - while(_g2 < _g11) { - var x = _g2++; - if(littleEndian) { - color = bytes.getInt32(dataPosition); - } else { - color = bytes.b[dataPosition + 3] | bytes.b[dataPosition + 2] << 8 | bytes.b[dataPosition + 1] << 16 | bytes.b[dataPosition] << 24; - } - dataPosition += 4; - switch(format) { - case 1: - var argb = color; - var this1 = 0; - var rgba = this1; - rgba = (argb >>> 16 & 255 & 255) << 24 | (argb >>> 8 & 255 & 255) << 16 | (argb & 255 & 255) << 8 | argb >>> 24 & 255 & 255; - pixel = rgba; - break; - case 2: - var bgra = color; - var this2 = 0; - var rgba1 = this2; - rgba1 = (bgra >>> 8 & 255 & 255) << 24 | (bgra >>> 16 & 255 & 255) << 16 | (bgra >>> 24 & 255 & 255) << 8 | bgra & 255 & 255; - pixel = rgba1; - break; - default: - pixel = color; - } - if(!transparent) { - pixel = (pixel >>> 24 & 255 & 255) << 24 | (pixel >>> 16 & 255 & 255) << 16 | (pixel >>> 8 & 255 & 255) << 8 | 255; - } - var offset = row + x * 4; - var format1 = sourceFormat; - var premultiplied1 = premultiplied; - if(premultiplied1 == null) { - premultiplied1 = false; - } - if(format1 == null) { - format1 = 0; - } - if(premultiplied1) { - if((pixel & 255) == 0) { - if(pixel != 0) { - pixel = 0; - } - } else if((pixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[pixel & 255]; - pixel = ((pixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((pixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((pixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | pixel & 255 & 255; - } - } - switch(format1) { - case 0: - data[offset] = pixel >>> 24 & 255; - data[offset + 1] = pixel >>> 16 & 255; - data[offset + 2] = pixel >>> 8 & 255; - data[offset + 3] = pixel & 255; - break; - case 1: - data[offset] = pixel & 255; - data[offset + 1] = pixel >>> 24 & 255; - data[offset + 2] = pixel >>> 16 & 255; - data[offset + 3] = pixel >>> 8 & 255; - break; - case 2: - data[offset] = pixel >>> 8 & 255; - data[offset + 1] = pixel >>> 16 & 255; - data[offset + 2] = pixel >>> 24 & 255; - data[offset + 3] = pixel & 255; - break; - } - } - } - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageDataUtil.threshold = function(image,sourceImage,sourceRect,destPoint,operation,threshold,color,mask,copySource,format) { - var _color; - var _mask; - var _threshold; - switch(format) { - case 1: - var argb = color; - var this1 = 0; - var rgba = this1; - rgba = (argb >>> 16 & 255 & 255) << 24 | (argb >>> 8 & 255 & 255) << 16 | (argb & 255 & 255) << 8 | argb >>> 24 & 255 & 255; - _color = rgba; - var argb1 = mask; - var this2 = 0; - var rgba1 = this2; - rgba1 = (argb1 >>> 16 & 255 & 255) << 24 | (argb1 >>> 8 & 255 & 255) << 16 | (argb1 & 255 & 255) << 8 | argb1 >>> 24 & 255 & 255; - _mask = rgba1; - var argb2 = threshold; - var this3 = 0; - var rgba2 = this3; - rgba2 = (argb2 >>> 16 & 255 & 255) << 24 | (argb2 >>> 8 & 255 & 255) << 16 | (argb2 & 255 & 255) << 8 | argb2 >>> 24 & 255 & 255; - _threshold = rgba2; - break; - case 2: - var bgra = color; - var this4 = 0; - var rgba3 = this4; - rgba3 = (bgra >>> 8 & 255 & 255) << 24 | (bgra >>> 16 & 255 & 255) << 16 | (bgra >>> 24 & 255 & 255) << 8 | bgra & 255 & 255; - _color = rgba3; - var bgra1 = mask; - var this5 = 0; - var rgba4 = this5; - rgba4 = (bgra1 >>> 8 & 255 & 255) << 24 | (bgra1 >>> 16 & 255 & 255) << 16 | (bgra1 >>> 24 & 255 & 255) << 8 | bgra1 & 255 & 255; - _mask = rgba4; - var bgra2 = threshold; - var this6 = 0; - var rgba5 = this6; - rgba5 = (bgra2 >>> 8 & 255 & 255) << 24 | (bgra2 >>> 16 & 255 & 255) << 16 | (bgra2 >>> 24 & 255 & 255) << 8 | bgra2 & 255 & 255; - _threshold = rgba5; - break; - default: - _color = color; - _mask = mask; - _threshold = threshold; - } - var _operation; - switch(operation) { - case "!=": - _operation = 0; - break; - case "<": - _operation = 2; - break; - case "<=": - _operation = 3; - break; - case "==": - _operation = 1; - break; - case ">": - _operation = 4; - break; - case ">=": - _operation = 5; - break; - default: - _operation = -1; - } - if(_operation == -1) { - return 0; - } - var srcData = sourceImage.buffer.data; - var destData = image.buffer.data; - if(srcData == null || destData == null) { - return 0; - } - var hits = 0; - var srcView = new lime__$internal_graphics__$ImageDataUtil_ImageDataView(sourceImage,sourceRect); - var destView = new lime__$internal_graphics__$ImageDataUtil_ImageDataView(image,new lime_math_Rectangle(destPoint.x,destPoint.y,srcView.width,srcView.height)); - var srcFormat = sourceImage.buffer.format; - var destFormat = image.buffer.format; - var srcPremultiplied = sourceImage.buffer.premultiplied; - var destPremultiplied = image.buffer.premultiplied; - var srcPosition; - var destPosition; - var srcPixel; - var destPixel; - var pixelMask; - var test; - var value; - var _g = 0; - var _g1 = destView.height; - while(_g < _g1) { - var y = _g++; - srcPosition = srcView.byteOffset + srcView.stride * y; - destPosition = destView.byteOffset + destView.stride * y; - var _g2 = 0; - var _g11 = destView.width; - while(_g2 < _g11) { - var x = _g2++; - var format1 = srcFormat; - var premultiplied = srcPremultiplied; - if(premultiplied == null) { - premultiplied = false; - } - if(format1 == null) { - format1 = 0; - } - switch(format1) { - case 0: - srcPixel = (srcData[srcPosition] & 255) << 24 | (srcData[srcPosition + 1] & 255) << 16 | (srcData[srcPosition + 2] & 255) << 8 | srcData[srcPosition + 3] & 255; - break; - case 1: - srcPixel = (srcData[srcPosition + 1] & 255) << 24 | (srcData[srcPosition + 2] & 255) << 16 | (srcData[srcPosition + 3] & 255) << 8 | srcData[srcPosition] & 255; - break; - case 2: - srcPixel = (srcData[srcPosition + 2] & 255) << 24 | (srcData[srcPosition + 1] & 255) << 16 | (srcData[srcPosition] & 255) << 8 | srcData[srcPosition + 3] & 255; - break; - } - if(premultiplied) { - if((srcPixel & 255) != 0 && (srcPixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (srcPixel & 255); - srcPixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((srcPixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((srcPixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((srcPixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | srcPixel & 255 & 255; - } - } - pixelMask = srcPixel & _mask; - var tmp1 = pixelMask >>> 24 & 255; - var tmp2 = _threshold >>> 24 & 255; - if(tmp1 != tmp2) { - value = _$UInt_UInt_$Impl_$.gt(tmp1,tmp2) ? 1 : -1; - } else { - tmp1 = pixelMask >>> 16 & 255; - tmp2 = _threshold >>> 16 & 255; - if(tmp1 != tmp2) { - value = _$UInt_UInt_$Impl_$.gt(tmp1,tmp2) ? 1 : -1; - } else { - tmp1 = pixelMask >>> 8 & 255; - tmp2 = _threshold >>> 8 & 255; - if(tmp1 != tmp2) { - value = _$UInt_UInt_$Impl_$.gt(tmp1,tmp2) ? 1 : -1; - } else { - tmp1 = pixelMask & 255; - tmp2 = _threshold & 255; - value = tmp1 != tmp2 ? _$UInt_UInt_$Impl_$.gt(tmp1,tmp2) ? 1 : -1 : 0; - } - } - } - switch(_operation) { - case 0: - test = value != 0; - break; - case 1: - test = value == 0; - break; - case 2: - test = value == -1; - break; - case 3: - test = value == 0 || value == -1; - break; - case 4: - test = value == 1; - break; - case 5: - test = value == 0 || value == 1; - break; - default: - test = false; - } - if(test) { - var format2 = destFormat; - var premultiplied1 = destPremultiplied; - if(premultiplied1 == null) { - premultiplied1 = false; - } - if(format2 == null) { - format2 = 0; - } - if(premultiplied1) { - if((_color & 255) == 0) { - if(_color != 0) { - _color = 0; - } - } else if((_color & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[_color & 255]; - _color = ((_color >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((_color >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((_color >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | _color & 255 & 255; - } - } - switch(format2) { - case 0: - destData[destPosition] = _color >>> 24 & 255; - destData[destPosition + 1] = _color >>> 16 & 255; - destData[destPosition + 2] = _color >>> 8 & 255; - destData[destPosition + 3] = _color & 255; - break; - case 1: - destData[destPosition] = _color & 255; - destData[destPosition + 1] = _color >>> 24 & 255; - destData[destPosition + 2] = _color >>> 16 & 255; - destData[destPosition + 3] = _color >>> 8 & 255; - break; - case 2: - destData[destPosition] = _color >>> 8 & 255; - destData[destPosition + 1] = _color >>> 16 & 255; - destData[destPosition + 2] = _color >>> 24 & 255; - destData[destPosition + 3] = _color & 255; - break; - } - ++hits; - } else if(copySource) { - var format3 = destFormat; - var premultiplied2 = destPremultiplied; - if(premultiplied2 == null) { - premultiplied2 = false; - } - if(format3 == null) { - format3 = 0; - } - if(premultiplied2) { - if((srcPixel & 255) == 0) { - if(srcPixel != 0) { - srcPixel = 0; - } - } else if((srcPixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[srcPixel & 255]; - srcPixel = ((srcPixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((srcPixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((srcPixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | srcPixel & 255 & 255; - } - } - switch(format3) { - case 0: - destData[destPosition] = srcPixel >>> 24 & 255; - destData[destPosition + 1] = srcPixel >>> 16 & 255; - destData[destPosition + 2] = srcPixel >>> 8 & 255; - destData[destPosition + 3] = srcPixel & 255; - break; - case 1: - destData[destPosition] = srcPixel & 255; - destData[destPosition + 1] = srcPixel >>> 24 & 255; - destData[destPosition + 2] = srcPixel >>> 16 & 255; - destData[destPosition + 3] = srcPixel >>> 8 & 255; - break; - case 2: - destData[destPosition] = srcPixel >>> 8 & 255; - destData[destPosition + 1] = srcPixel >>> 16 & 255; - destData[destPosition + 2] = srcPixel >>> 24 & 255; - destData[destPosition + 3] = srcPixel & 255; - break; - } - } - srcPosition += 4; - destPosition += 4; - } - } - if(hits > 0) { - image.dirty = true; - image.version++; - } - return hits; -}; -lime__$internal_graphics_ImageDataUtil.unmultiplyAlpha = function(image) { - var data = image.buffer.data; - if(data == null) { - return; - } - var format = image.buffer.format; - var length = data.length / 4 | 0; - var pixel; - var _g = 0; - var _g1 = length; - while(_g < _g1) { - var i = _g++; - var offset = i * 4; - var format1 = format; - var premultiplied = true; - if(premultiplied == null) { - premultiplied = false; - } - if(format1 == null) { - format1 = 0; - } - switch(format1) { - case 0: - pixel = (data[offset] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset + 2] & 255) << 8 | data[offset + 3] & 255; - break; - case 1: - pixel = (data[offset + 1] & 255) << 24 | (data[offset + 2] & 255) << 16 | (data[offset + 3] & 255) << 8 | data[offset] & 255; - break; - case 2: - pixel = (data[offset + 2] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset] & 255) << 8 | data[offset + 3] & 255; - break; - } - if(premultiplied) { - if((pixel & 255) != 0 && (pixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (pixel & 255); - pixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((pixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | pixel & 255 & 255; - } - } - var offset1 = i * 4; - var format2 = format; - var premultiplied1 = false; - if(premultiplied1 == null) { - premultiplied1 = false; - } - if(format2 == null) { - format2 = 0; - } - if(premultiplied1) { - if((pixel & 255) == 0) { - if(pixel != 0) { - pixel = 0; - } - } else if((pixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[pixel & 255]; - pixel = ((pixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((pixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((pixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | pixel & 255 & 255; - } - } - switch(format2) { - case 0: - data[offset1] = pixel >>> 24 & 255; - data[offset1 + 1] = pixel >>> 16 & 255; - data[offset1 + 2] = pixel >>> 8 & 255; - data[offset1 + 3] = pixel & 255; - break; - case 1: - data[offset1] = pixel & 255; - data[offset1 + 1] = pixel >>> 24 & 255; - data[offset1 + 2] = pixel >>> 16 & 255; - data[offset1 + 3] = pixel >>> 8 & 255; - break; - case 2: - data[offset1] = pixel >>> 8 & 255; - data[offset1 + 1] = pixel >>> 16 & 255; - data[offset1 + 2] = pixel >>> 24 & 255; - data[offset1 + 3] = pixel & 255; - break; - } - } - image.buffer.premultiplied = false; - image.dirty = true; - image.version++; -}; -lime__$internal_graphics_ImageDataUtil.__boxBlur = function(imgA,imgB,w,h,bx,by) { - imgB.set(imgA); - var bx1 = bx | 0; - var by1 = by | 0; - lime__$internal_graphics_ImageDataUtil.__boxBlurH(imgB,imgA,w,h,bx1,0); - lime__$internal_graphics_ImageDataUtil.__boxBlurH(imgB,imgA,w,h,bx1,1); - lime__$internal_graphics_ImageDataUtil.__boxBlurH(imgB,imgA,w,h,bx1,2); - lime__$internal_graphics_ImageDataUtil.__boxBlurH(imgB,imgA,w,h,bx1,3); - var iarr = 1 / (by1 + by1 + 1); - var ws = w * 4; - var ti; - var li; - var ri; - var fv; - var lv; - var val; - var _g = 0; - var _g1 = w; - while(_g < _g1) { - var i = _g++; - ti = i * 4; - li = ti; - ri = ti + by1 * ws; - fv = imgA[ti]; - lv = imgA[ti + ws * (h - 1)]; - val = (by1 + 1) * fv; - var _g2 = 0; - var _g11 = by1; - while(_g2 < _g11) { - var j = _g2++; - val = val + imgA[ti + j * ws]; - } - var _g21 = 0; - var _g3 = by1 + 1; - while(_g21 < _g3) { - var j1 = _g21++; - val = val + (imgA[ri] - fv); - imgB[ti] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val) * iarr); - ri += ws; - ti += ws; - } - var _g4 = by1 + 1; - var _g5 = h - by1; - while(_g4 < _g5) { - var j2 = _g4++; - val = val + (imgA[ri] - imgA[li]); - imgB[ti] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val) * iarr); - li += ws; - ri += ws; - ti += ws; - } - var _g6 = h - by1; - var _g7 = h; - while(_g6 < _g7) { - var j3 = _g6++; - val = val + (lv - imgA[li]); - imgB[ti] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val) * iarr); - li += ws; - ti += ws; - } - } - var iarr1 = 1 / (by1 + by1 + 1); - var ws1 = w * 4; - var ti1; - var li1; - var ri1; - var fv1; - var lv1; - var val1; - var _g8 = 0; - var _g12 = w; - while(_g8 < _g12) { - var i1 = _g8++; - ti1 = i1 * 4 + 1; - li1 = ti1; - ri1 = ti1 + by1 * ws1; - fv1 = imgA[ti1]; - lv1 = imgA[ti1 + ws1 * (h - 1)]; - val1 = (by1 + 1) * fv1; - var _g9 = 0; - var _g13 = by1; - while(_g9 < _g13) { - var j4 = _g9++; - val1 = val1 + imgA[ti1 + j4 * ws1]; - } - var _g22 = 0; - var _g31 = by1 + 1; - while(_g22 < _g31) { - var j5 = _g22++; - val1 = val1 + (imgA[ri1] - fv1); - imgB[ti1] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val1) * iarr1); - ri1 += ws1; - ti1 += ws1; - } - var _g41 = by1 + 1; - var _g51 = h - by1; - while(_g41 < _g51) { - var j6 = _g41++; - val1 = val1 + (imgA[ri1] - imgA[li1]); - imgB[ti1] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val1) * iarr1); - li1 += ws1; - ri1 += ws1; - ti1 += ws1; - } - var _g61 = h - by1; - var _g71 = h; - while(_g61 < _g71) { - var j7 = _g61++; - val1 = val1 + (lv1 - imgA[li1]); - imgB[ti1] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val1) * iarr1); - li1 += ws1; - ti1 += ws1; - } - } - var iarr2 = 1 / (by1 + by1 + 1); - var ws2 = w * 4; - var ti2; - var li2; - var ri2; - var fv2; - var lv2; - var val2; - var _g10 = 0; - var _g14 = w; - while(_g10 < _g14) { - var i2 = _g10++; - ti2 = i2 * 4 + 2; - li2 = ti2; - ri2 = ti2 + by1 * ws2; - fv2 = imgA[ti2]; - lv2 = imgA[ti2 + ws2 * (h - 1)]; - val2 = (by1 + 1) * fv2; - var _g15 = 0; - var _g16 = by1; - while(_g15 < _g16) { - var j8 = _g15++; - val2 = val2 + imgA[ti2 + j8 * ws2]; - } - var _g23 = 0; - var _g32 = by1 + 1; - while(_g23 < _g32) { - var j9 = _g23++; - val2 = val2 + (imgA[ri2] - fv2); - imgB[ti2] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val2) * iarr2); - ri2 += ws2; - ti2 += ws2; - } - var _g42 = by1 + 1; - var _g52 = h - by1; - while(_g42 < _g52) { - var j10 = _g42++; - val2 = val2 + (imgA[ri2] - imgA[li2]); - imgB[ti2] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val2) * iarr2); - li2 += ws2; - ri2 += ws2; - ti2 += ws2; - } - var _g62 = h - by1; - var _g72 = h; - while(_g62 < _g72) { - var j11 = _g62++; - val2 = val2 + (lv2 - imgA[li2]); - imgB[ti2] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val2) * iarr2); - li2 += ws2; - ti2 += ws2; - } - } - var iarr3 = 1 / (by1 + by1 + 1); - var ws3 = w * 4; - var ti3; - var li3; - var ri3; - var fv3; - var lv3; - var val3; - var _g17 = 0; - var _g18 = w; - while(_g17 < _g18) { - var i3 = _g17++; - ti3 = i3 * 4 + 3; - li3 = ti3; - ri3 = ti3 + by1 * ws3; - fv3 = imgA[ti3]; - lv3 = imgA[ti3 + ws3 * (h - 1)]; - val3 = (by1 + 1) * fv3; - var _g19 = 0; - var _g110 = by1; - while(_g19 < _g110) { - var j12 = _g19++; - val3 = val3 + imgA[ti3 + j12 * ws3]; - } - var _g24 = 0; - var _g33 = by1 + 1; - while(_g24 < _g33) { - var j13 = _g24++; - val3 = val3 + (imgA[ri3] - fv3); - imgB[ti3] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val3) * iarr3); - ri3 += ws3; - ti3 += ws3; - } - var _g43 = by1 + 1; - var _g53 = h - by1; - while(_g43 < _g53) { - var j14 = _g43++; - val3 = val3 + (imgA[ri3] - imgA[li3]); - imgB[ti3] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val3) * iarr3); - li3 += ws3; - ri3 += ws3; - ti3 += ws3; - } - var _g63 = h - by1; - var _g73 = h; - while(_g63 < _g73) { - var j15 = _g63++; - val3 = val3 + (lv3 - imgA[li3]); - imgB[ti3] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val3) * iarr3); - li3 += ws3; - ti3 += ws3; - } - } -}; -lime__$internal_graphics_ImageDataUtil.__boxBlurH = function(imgA,imgB,w,h,r,off) { - var iarr = 1 / (r + r + 1); - var ti; - var li; - var ri; - var fv; - var lv; - var val; - var _g = 0; - var _g1 = h; - while(_g < _g1) { - var i = _g++; - ti = i * w; - li = ti; - ri = ti + r; - fv = imgA[ti * 4 + off]; - lv = imgA[(ti + w - 1) * 4 + off]; - val = (r + 1) * fv; - var _g2 = 0; - var _g11 = r; - while(_g2 < _g11) { - var j = _g2++; - val = val + imgA[(ti + j) * 4 + off]; - } - var _g21 = 0; - var _g3 = r + 1; - while(_g21 < _g3) { - var j1 = _g21++; - val = val + (imgA[ri * 4 + off] - fv); - imgB[ti * 4 + off] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val) * iarr); - ++ri; - ++ti; - } - var _g4 = r + 1; - var _g5 = w - r; - while(_g4 < _g5) { - var j2 = _g4++; - val = val + (imgA[ri * 4 + off] - imgA[li * 4 + off]); - imgB[ti * 4 + off] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val) * iarr); - ++ri; - ++li; - ++ti; - } - var _g6 = w - r; - var _g7 = w; - while(_g6 < _g7) { - var j3 = _g6++; - val = val + (lv - imgA[li * 4 + off]); - imgB[ti * 4 + off] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val) * iarr); - ++li; - ++ti; - } - } -}; -lime__$internal_graphics_ImageDataUtil.__boxBlurT = function(imgA,imgB,w,h,r,off) { - var iarr = 1 / (r + r + 1); - var ws = w * 4; - var ti; - var li; - var ri; - var fv; - var lv; - var val; - var _g = 0; - var _g1 = w; - while(_g < _g1) { - var i = _g++; - ti = i * 4 + off; - li = ti; - ri = ti + r * ws; - fv = imgA[ti]; - lv = imgA[ti + ws * (h - 1)]; - val = (r + 1) * fv; - var _g2 = 0; - var _g11 = r; - while(_g2 < _g11) { - var j = _g2++; - val = val + imgA[ti + j * ws]; - } - var _g21 = 0; - var _g3 = r + 1; - while(_g21 < _g3) { - var j1 = _g21++; - val = val + (imgA[ri] - fv); - imgB[ti] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val) * iarr); - ri += ws; - ti += ws; - } - var _g4 = r + 1; - var _g5 = h - r; - while(_g4 < _g5) { - var j2 = _g4++; - val = val + (imgA[ri] - imgA[li]); - imgB[ti] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val) * iarr); - li += ws; - ri += ws; - ti += ws; - } - var _g6 = h - r; - var _g7 = h; - while(_g6 < _g7) { - var j3 = _g6++; - val = val + (lv - imgA[li]); - imgB[ti] = Math.round(_$UInt_UInt_$Impl_$.toFloat(val) * iarr); - li += ws; - ti += ws; - } - } -}; -lime__$internal_graphics_ImageDataUtil.__calculateSourceOffset = function(sourceRect,destPoint,destX,destY) { - var sourceX = destX - (destPoint.x | 0); - var sourceY = destY - (destPoint.y | 0); - var offset = 0; - if(sourceX < 0 || sourceY < 0 || sourceX >= sourceRect.width || sourceY >= sourceRect.height) { - offset = -1; - } else { - offset = 4 * (sourceY * (sourceRect.width | 0) + sourceX); - } - return offset; -}; -lime__$internal_graphics_ImageDataUtil.__getBoxesForGaussianBlur = function(sigma,n) { - var wIdeal = Math.sqrt(12 * sigma * sigma / n + 1); - var wl = Math.floor(wIdeal); - if(wl % 2 == 0) { - --wl; - } - var wu = wl + 2; - var mIdeal = (12 * sigma * sigma - n * wl * wl - 4 * n * wl - 3 * n) / (-4 * wl - 4); - var m = Math.round(mIdeal); - var sizes = []; - var _g = 0; - var _g1 = n; - while(_g < _g1) { - var i = _g++; - sizes.push(i < m ? wl : wu); - } - return sizes; -}; -lime__$internal_graphics_ImageDataUtil.__pixelCompare = function(n1,n2) { - var tmp1 = n1 >>> 24 & 255; - var tmp2 = n2 >>> 24 & 255; - if(tmp1 != tmp2) { - if(_$UInt_UInt_$Impl_$.gt(tmp1,tmp2)) { - return 1; - } else { - return -1; - } - } else { - tmp1 = n1 >>> 16 & 255; - tmp2 = n2 >>> 16 & 255; - if(tmp1 != tmp2) { - if(_$UInt_UInt_$Impl_$.gt(tmp1,tmp2)) { - return 1; - } else { - return -1; - } - } else { - tmp1 = n1 >>> 8 & 255; - tmp2 = n2 >>> 8 & 255; - if(tmp1 != tmp2) { - if(_$UInt_UInt_$Impl_$.gt(tmp1,tmp2)) { - return 1; - } else { - return -1; - } - } else { - tmp1 = n1 & 255; - tmp2 = n2 & 255; - if(tmp1 != tmp2) { - if(_$UInt_UInt_$Impl_$.gt(tmp1,tmp2)) { - return 1; - } else { - return -1; - } - } else { - return 0; - } - } - } - } -}; -lime__$internal_graphics_ImageDataUtil.__translatePixel = function(imgB,sourceRect,destRect,destPoint,destX,destY,strength) { - var d = 4 * (destY * (destRect.width | 0) + destX); - var s = lime__$internal_graphics_ImageDataUtil.__calculateSourceOffset(sourceRect,destPoint,destX,destY); - if(s < 0) { - imgB[d] = imgB[d + 1] = imgB[d + 2] = imgB[d + 3] = 0; - } else { - imgB[d] = imgB[s]; - imgB[d + 1] = imgB[s + 1]; - imgB[d + 2] = imgB[s + 2]; - var a = _$UInt_UInt_$Impl_$.toFloat(imgB[s + 3]) * strength | 0; - imgB[d + 3] = a < 0 ? 0 : a > 255 ? 255 : a; - } -}; -var lime__$internal_graphics__$ImageDataUtil_ImageDataView = function(image,rect) { - this.image = image; - if(rect == null) { - this.rect = image.get_rect(); - } else { - if(rect.x < 0) { - rect.x = 0; - } - if(rect.y < 0) { - rect.y = 0; - } - if(rect.x + rect.width > image.width) { - rect.width = image.width - rect.x; - } - if(rect.y + rect.height > image.height) { - rect.height = image.height - rect.y; - } - if(rect.width < 0) { - rect.width = 0; - } - if(rect.height < 0) { - rect.height = 0; - } - this.rect = rect; - } - this.stride = image.buffer.get_stride(); - this.__update(); -}; -$hxClasses["lime._internal.graphics._ImageDataUtil.ImageDataView"] = lime__$internal_graphics__$ImageDataUtil_ImageDataView; -lime__$internal_graphics__$ImageDataUtil_ImageDataView.__name__ = "lime._internal.graphics._ImageDataUtil.ImageDataView"; -lime__$internal_graphics__$ImageDataUtil_ImageDataView.prototype = { - x: null - ,y: null - ,height: null - ,width: null - ,byteOffset: null - ,image: null - ,rect: null - ,stride: null - ,tempRect: null - ,clip: function(x,y,width,height) { - if(this.tempRect == null) { - this.tempRect = new lime_math_Rectangle(); - } - this.tempRect.setTo(x,y,width,height); - this.rect.intersection(this.tempRect,this.rect); - this.__update(); - } - ,hasRow: function(y) { - if(y >= 0) { - return y < this.height; - } else { - return false; - } - } - ,offset: function(x,y) { - if(x < 0) { - this.rect.x += x; - if(this.rect.x < 0) { - this.rect.x = 0; - } - } else { - this.rect.x += x; - this.rect.width -= x; - } - if(y < 0) { - this.rect.y += y; - if(this.rect.y < 0) { - this.rect.y = 0; - } - } else { - this.rect.y += y; - this.rect.height -= y; - } - this.__update(); - } - ,row: function(y) { - return this.byteOffset + this.stride * y; - } - ,__update: function() { - this.x = Math.ceil(this.rect.x); - this.y = Math.ceil(this.rect.y); - this.width = Math.floor(this.rect.width); - this.height = Math.floor(this.rect.height); - this.byteOffset = this.stride * (this.y + this.image.offsetY) + (this.x + this.image.offsetX) * 4; - } - ,__class__: lime__$internal_graphics__$ImageDataUtil_ImageDataView -}; -var lime__$internal_graphics_StackBlur = function() { }; -$hxClasses["lime._internal.graphics.StackBlur"] = lime__$internal_graphics_StackBlur; -lime__$internal_graphics_StackBlur.__name__ = "lime._internal.graphics.StackBlur"; -lime__$internal_graphics_StackBlur.blur = function(dest,source,sourceRect,destPoint,blurX,blurY,quality) { - dest.copyPixels(source,sourceRect,destPoint); - lime__$internal_graphics_StackBlur.__stackBlurCanvasRGBA(dest,sourceRect.width | 0,sourceRect.height | 0,blurX,blurY,quality); -}; -lime__$internal_graphics_StackBlur.__stackBlurCanvasRGBA = function(image,width,height,blurX,blurY,quality) { - var radiusX = Math.round(blurX) >> 1; - var radiusY = Math.round(blurY) >> 1; - if(lime__$internal_graphics_StackBlur.MUL_TABLE == null) { - return; - } - if(radiusX >= lime__$internal_graphics_StackBlur.MUL_TABLE.length) { - radiusX = lime__$internal_graphics_StackBlur.MUL_TABLE.length - 1; - } - if(radiusY >= lime__$internal_graphics_StackBlur.MUL_TABLE.length) { - radiusY = lime__$internal_graphics_StackBlur.MUL_TABLE.length - 1; - } - if(radiusX < 0 || radiusY < 0) { - return; - } - var iterations = quality; - if(iterations < 1) { - iterations = 1; - } - if(iterations > 3) { - iterations = 3; - } - var px = image.get_data(); - var x; - var y; - var i; - var p; - var yp; - var yi; - var yw; - var r; - var g; - var b; - var a; - var pr; - var pg; - var pb; - var pa; - var f; - var divx = radiusX + radiusX + 1; - var divy = radiusY + radiusY + 1; - var w = width; - var h = height; - var w1 = w - 1; - var h1 = h - 1; - var rxp1 = radiusX + 1; - var ryp1 = radiusY + 1; - var ssx = new lime__$internal_graphics_BlurStack(); - var sx = ssx; - var _g = 1; - var _g1 = divx; - while(_g < _g1) { - var i1 = _g++; - sx = sx.n = new lime__$internal_graphics_BlurStack(); - } - sx.n = ssx; - var ssy = new lime__$internal_graphics_BlurStack(); - var sy = ssy; - var _g2 = 1; - var _g3 = divy; - while(_g2 < _g3) { - var i2 = _g2++; - sy = sy.n = new lime__$internal_graphics_BlurStack(); - } - sy.n = ssy; - var si = null; - var mtx = lime__$internal_graphics_StackBlur.MUL_TABLE[radiusX]; - var stx = lime__$internal_graphics_StackBlur.SHG_TABLE[radiusX]; - var mty = lime__$internal_graphics_StackBlur.MUL_TABLE[radiusY]; - var sty = lime__$internal_graphics_StackBlur.SHG_TABLE[radiusY]; - while(iterations > 0) { - --iterations; - yi = 0; - yw = yi; - var ms = mtx; - var ss = stx; - y = h; - while(true) { - pr = px[yi]; - r = rxp1 * pr; - pg = px[yi + 1]; - g = rxp1 * pg; - pb = px[yi + 2]; - b = rxp1 * pb; - pa = px[yi + 3]; - a = rxp1 * pa; - sx = ssx; - i = rxp1; - while(true) { - sx.r = pr; - sx.g = pg; - sx.b = pb; - sx.a = pa; - sx = sx.n; - if(!(--i > -1)) { - break; - } - } - var _g4 = 1; - var _g5 = rxp1; - while(_g4 < _g5) { - var i3 = _g4++; - p = yi + ((w1 < i3 ? w1 : i3) << 2); - r += sx.r = px[p]; - g += sx.g = px[p + 1]; - b += sx.b = px[p + 2]; - a += sx.a = px[p + 3]; - sx = sx.n; - } - si = ssx; - var _g6 = 0; - var _g7 = w; - while(_g6 < _g7) { - var x1 = _g6++; - px[yi++] = r * ms >>> ss; - px[yi++] = g * ms >>> ss; - px[yi++] = b * ms >>> ss; - px[yi++] = a * ms >>> ss; - p = x1 + radiusX + 1; - p = yw + (p < w1 ? p : w1) << 2; - r -= si.r - (si.r = px[p]); - g -= si.g - (si.g = px[p + 1]); - b -= si.b - (si.b = px[p + 2]); - a -= si.a - (si.a = px[p + 3]); - si = si.n; - } - yw += w; - if(!(--y > 0)) { - break; - } - } - ms = mty; - ss = sty; - var _g41 = 0; - var _g51 = w; - while(_g41 < _g51) { - var x2 = _g41++; - yi = x2 << 2; - pr = px[yi]; - r = ryp1 * pr; - pg = px[yi + 1]; - g = ryp1 * pg; - pb = px[yi + 2]; - b = ryp1 * pb; - pa = px[yi + 3]; - a = ryp1 * pa; - sy = ssy; - var _g42 = 0; - var _g52 = ryp1; - while(_g42 < _g52) { - var i4 = _g42++; - sy.r = pr; - sy.g = pg; - sy.b = pb; - sy.a = pa; - sy = sy.n; - } - yp = w; - var _g61 = 1; - var _g71 = radiusY + 1; - while(_g61 < _g71) { - var i5 = _g61++; - yi = yp + x2 << 2; - r += sy.r = px[yi]; - g += sy.g = px[yi + 1]; - b += sy.b = px[yi + 2]; - a += sy.a = px[yi + 3]; - sy = sy.n; - if(i5 < h1) { - yp += w; - } - } - yi = x2; - si = ssy; - if(iterations > 0) { - var _g8 = 0; - var _g9 = h; - while(_g8 < _g9) { - var y1 = _g8++; - p = yi << 2; - pa = a * ms >>> ss; - px[p + 3] = pa; - if(pa > 0) { - px[p] = r * ms >>> ss; - px[p + 1] = g * ms >>> ss; - px[p + 2] = b * ms >>> ss; - } else { - px[p] = px[p + 1] = px[p + 2] = 0; - } - p = y1 + ryp1; - p = x2 + (p < h1 ? p : h1) * w << 2; - r -= si.r - (si.r = px[p]); - g -= si.g - (si.g = px[p + 1]); - b -= si.b - (si.b = px[p + 2]); - a -= si.a - (si.a = px[p + 3]); - si = si.n; - yi += w; - } - } else { - var _g81 = 0; - var _g91 = h; - while(_g81 < _g91) { - var y2 = _g81++; - p = yi << 2; - pa = a * ms >>> ss; - px[p + 3] = pa; - if(pa > 0) { - f = 255 / pa; - pr = (r * ms >>> ss) * f | 0; - pg = (g * ms >>> ss) * f | 0; - pb = (b * ms >>> ss) * f | 0; - px[p] = pr > 255 ? 255 : pr; - px[p + 1] = pg > 255 ? 255 : pg; - px[p + 2] = pb > 255 ? 255 : pb; - } else { - px[p] = px[p + 1] = px[p + 2] = 0; - } - p = y2 + ryp1; - p = x2 + (p < h1 ? p : h1) * w << 2; - r -= si.r - (si.r = px[p]); - g -= si.g - (si.g = px[p + 1]); - b -= si.b - (si.b = px[p + 2]); - a -= si.a - (si.a = px[p + 3]); - si = si.n; - yi += w; - } - } - } - } -}; -var lime__$internal_graphics_BlurStack = function() { - this.r = 0; - this.g = 0; - this.b = 0; - this.a = 0; - this.n = null; -}; -$hxClasses["lime._internal.graphics.BlurStack"] = lime__$internal_graphics_BlurStack; -lime__$internal_graphics_BlurStack.__name__ = "lime._internal.graphics.BlurStack"; -lime__$internal_graphics_BlurStack.prototype = { - r: null - ,g: null - ,b: null - ,a: null - ,n: null - ,__class__: lime__$internal_graphics_BlurStack -}; -var lime__$internal_macros_AssetsMacro = function() { }; -$hxClasses["lime._internal.macros.AssetsMacro"] = lime__$internal_macros_AssetsMacro; -lime__$internal_macros_AssetsMacro.__name__ = "lime._internal.macros.AssetsMacro"; -var lime_app_Event = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app.Event"] = lime_app_Event; -lime_app_Event.__name__ = "lime.app.Event"; -lime_app_Event.prototype = { - canceled: null - ,__listeners: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,dispatch: null - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__class__: lime_app_Event -}; -var lime_app_Future = function(work,async) { - if(async == null) { - async = false; - } - if(work != null) { - if(async) { - var promise = new lime_app_Promise(); - promise.future = this; - lime_app__$Future_FutureWork.queue({ promise : promise, work : work}); - } else { - try { - this.value = work(); - this.isComplete = true; - } catch( e ) { - haxe_CallStack.lastException = e; - this.error = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - this.isError = true; - } - } - } -}; -$hxClasses["lime.app.Future"] = lime_app_Future; -lime_app_Future.__name__ = "lime.app.Future"; -lime_app_Future.ofEvents = function(onComplete,onError,onProgress) { - var promise = new lime_app_Promise(); - onComplete.add(function(data) { - promise.complete(data); - },true); - if(onError != null) { - onError.add(function(error) { - promise.error(error); - },true); - } - if(onProgress != null) { - onProgress.add(function(progress,total) { - promise.progress(progress,total); - },true); - } - return promise.future; -}; -lime_app_Future.withError = function(error) { - var future = new lime_app_Future(); - future.isError = true; - future.error = error; - return future; -}; -lime_app_Future.withValue = function(value) { - var future = new lime_app_Future(); - future.isComplete = true; - future.value = value; - return future; -}; -lime_app_Future.prototype = { - error: null - ,isComplete: null - ,isError: null - ,value: null - ,__completeListeners: null - ,__errorListeners: null - ,__progressListeners: null - ,onComplete: function(listener) { - if(listener != null) { - if(this.isComplete) { - listener(this.value); - } else if(!this.isError) { - if(this.__completeListeners == null) { - this.__completeListeners = []; - } - this.__completeListeners.push(listener); - } - } - return this; - } - ,onError: function(listener) { - if(listener != null) { - if(this.isError) { - listener(this.error); - } else if(!this.isComplete) { - if(this.__errorListeners == null) { - this.__errorListeners = []; - } - this.__errorListeners.push(listener); - } - } - return this; - } - ,onProgress: function(listener) { - if(listener != null) { - if(this.__progressListeners == null) { - this.__progressListeners = []; - } - this.__progressListeners.push(listener); - } - return this; - } - ,ready: function(waitTime) { - if(waitTime == null) { - waitTime = -1; - } - if(this.isComplete || this.isError) { - return this; - } else { - lime_utils_Log.warn("Cannot block thread in JavaScript",{ fileName : "lime/app/Future.hx", lineNumber : 209, className : "lime.app.Future", methodName : "ready"}); - return this; - } - } - ,result: function(waitTime) { - if(waitTime == null) { - waitTime = -1; - } - this.ready(waitTime); - if(this.isComplete) { - return this.value; - } else { - return null; - } - } - ,then: function(next) { - if(this.isComplete) { - return next(this.value); - } else if(this.isError) { - var future = new lime_app_Future(); - future.isError = true; - future.error = this.error; - return future; - } else { - var promise = new lime_app_Promise(); - this.onError($bind(promise,promise.error)); - this.onProgress($bind(promise,promise.progress)); - this.onComplete(function(val) { - var future1 = next(val); - future1.onError($bind(promise,promise.error)); - future1.onComplete($bind(promise,promise.complete)); - }); - return promise.future; - } - } - ,__class__: lime_app_Future -}; -var lime_app__$Future_FutureWork = function() { }; -$hxClasses["lime.app._Future.FutureWork"] = lime_app__$Future_FutureWork; -lime_app__$Future_FutureWork.__name__ = "lime.app._Future.FutureWork"; -lime_app__$Future_FutureWork.threadPool = null; -lime_app__$Future_FutureWork.queue = function(state) { - if(lime_app__$Future_FutureWork.threadPool == null) { - lime_app__$Future_FutureWork.threadPool = new lime_system_ThreadPool(); - lime_app__$Future_FutureWork.threadPool.doWork.add(lime_app__$Future_FutureWork.threadPool_doWork); - lime_app__$Future_FutureWork.threadPool.onComplete.add(lime_app__$Future_FutureWork.threadPool_onComplete); - lime_app__$Future_FutureWork.threadPool.onError.add(lime_app__$Future_FutureWork.threadPool_onError); - } - lime_app__$Future_FutureWork.threadPool.queue(state); -}; -lime_app__$Future_FutureWork.threadPool_doWork = function(state) { - try { - var result = state.work(); - lime_app__$Future_FutureWork.threadPool.sendComplete({ promise : state.promise, result : result}); - } catch( e ) { - haxe_CallStack.lastException = e; - lime_app__$Future_FutureWork.threadPool.sendError({ promise : state.promise, error : ((e) instanceof js__$Boot_HaxeError) ? e.val : e}); - } -}; -lime_app__$Future_FutureWork.threadPool_onComplete = function(state) { - state.promise.complete(state.result); -}; -lime_app__$Future_FutureWork.threadPool_onError = function(state) { - state.promise.error(state.error); -}; -var lime_app_Promise = function() { - this.future = new lime_app_Future(); -}; -$hxClasses["lime.app.Promise"] = lime_app_Promise; -lime_app_Promise.__name__ = "lime.app.Promise"; -lime_app_Promise.prototype = { - future: null - ,isComplete: null - ,isError: null - ,complete: function(data) { - if(!this.future.isError) { - this.future.isComplete = true; - this.future.value = data; - if(this.future.__completeListeners != null) { - var _g = 0; - var _g1 = this.future.__completeListeners; - while(_g < _g1.length) { - var listener = _g1[_g]; - ++_g; - listener(data); - } - this.future.__completeListeners = null; - } - } - return this; - } - ,completeWith: function(future) { - future.onComplete($bind(this,this.complete)); - future.onError($bind(this,this.error)); - future.onProgress($bind(this,this.progress)); - return this; - } - ,error: function(msg) { - if(!this.future.isComplete) { - this.future.isError = true; - this.future.error = msg; - if(this.future.__errorListeners != null) { - var _g = 0; - var _g1 = this.future.__errorListeners; - while(_g < _g1.length) { - var listener = _g1[_g]; - ++_g; - listener(msg); - } - this.future.__errorListeners = null; - } - } - return this; - } - ,progress: function(progress,total) { - if(!this.future.isError && !this.future.isComplete) { - if(this.future.__progressListeners != null) { - var _g = 0; - var _g1 = this.future.__progressListeners; - while(_g < _g1.length) { - var listener = _g1[_g]; - ++_g; - listener(progress,total); - } - } - } - return this; - } - ,get_isComplete: function() { - return this.future.isComplete; - } - ,get_isError: function() { - return this.future.isError; - } - ,__class__: lime_app_Promise - ,__properties__: {get_isError:"get_isError",get_isComplete:"get_isComplete"} -}; -var lime_app__$Event_$Dynamic_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_Dynamic_Void"] = lime_app__$Event_$Dynamic_$Void; -lime_app__$Event_$Dynamic_$Void.__name__ = "lime.app._Event_Dynamic_Void"; -lime_app__$Event_$Dynamic_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$Dynamic_$Void -}; -var lime_app__$Event_$Float_$Float_$Float_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_Float_Float_Float_Void"] = lime_app__$Event_$Float_$Float_$Float_$Void; -lime_app__$Event_$Float_$Float_$Float_$Void.__name__ = "lime.app._Event_Float_Float_Float_Void"; -lime_app__$Event_$Float_$Float_$Float_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a,a1,a2) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a,a1,a2); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$Float_$Float_$Float_$Void -}; -var lime_app__$Event_$Float_$Float_$Int_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_Float_Float_Int_Void"] = lime_app__$Event_$Float_$Float_$Int_$Void; -lime_app__$Event_$Float_$Float_$Int_$Void.__name__ = "lime.app._Event_Float_Float_Int_Void"; -lime_app__$Event_$Float_$Float_$Int_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a,a1,a2) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a,a1,a2); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$Float_$Float_$Int_$Void -}; -var lime_app__$Event_$Float_$Float_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_Float_Float_Void"] = lime_app__$Event_$Float_$Float_$Void; -lime_app__$Event_$Float_$Float_$Void.__name__ = "lime.app._Event_Float_Float_Void"; -lime_app__$Event_$Float_$Float_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a,a1) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a,a1); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$Float_$Float_$Void -}; -var lime_app__$Event_$Float_$Float_$lime_$ui_$MouseButton_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_Float_Float_lime_ui_MouseButton_Void"] = lime_app__$Event_$Float_$Float_$lime_$ui_$MouseButton_$Void; -lime_app__$Event_$Float_$Float_$lime_$ui_$MouseButton_$Void.__name__ = "lime.app._Event_Float_Float_lime_ui_MouseButton_Void"; -lime_app__$Event_$Float_$Float_$lime_$ui_$MouseButton_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a,a1,a2) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a,a1,a2); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$Float_$Float_$lime_$ui_$MouseButton_$Void -}; -var lime_app__$Event_$Float_$Float_$lime_$ui_$MouseWheelMode_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_Float_Float_lime_ui_MouseWheelMode_Void"] = lime_app__$Event_$Float_$Float_$lime_$ui_$MouseWheelMode_$Void; -lime_app__$Event_$Float_$Float_$lime_$ui_$MouseWheelMode_$Void.__name__ = "lime.app._Event_Float_Float_lime_ui_MouseWheelMode_Void"; -lime_app__$Event_$Float_$Float_$lime_$ui_$MouseWheelMode_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a,a1,a2) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a,a1,a2); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$Float_$Float_$lime_$ui_$MouseWheelMode_$Void -}; -var lime_app__$Event_$Int_$Float_$Float_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_Int_Float_Float_Void"] = lime_app__$Event_$Int_$Float_$Float_$Void; -lime_app__$Event_$Int_$Float_$Float_$Void.__name__ = "lime.app._Event_Int_Float_Float_Void"; -lime_app__$Event_$Int_$Float_$Float_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a,a1,a2) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a,a1,a2); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$Int_$Float_$Float_$Void -}; -var lime_app__$Event_$Int_$Float_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_Int_Float_Void"] = lime_app__$Event_$Int_$Float_$Void; -lime_app__$Event_$Int_$Float_$Void.__name__ = "lime.app._Event_Int_Float_Void"; -lime_app__$Event_$Int_$Float_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a,a1) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a,a1); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$Int_$Float_$Void -}; -var lime_app__$Event_$Int_$Int_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_Int_Int_Void"] = lime_app__$Event_$Int_$Int_$Void; -lime_app__$Event_$Int_$Int_$Void.__name__ = "lime.app._Event_Int_Int_Void"; -lime_app__$Event_$Int_$Int_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a,a1) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a,a1); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$Int_$Int_$Void -}; -var lime_app__$Event_$Int_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_Int_Void"] = lime_app__$Event_$Int_$Void; -lime_app__$Event_$Int_$Void.__name__ = "lime.app._Event_Int_Void"; -lime_app__$Event_$Int_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$Int_$Void -}; -var lime_app__$Event_$Int_$lime_$ui_$JoystickHatPosition_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_Int_lime_ui_JoystickHatPosition_Void"] = lime_app__$Event_$Int_$lime_$ui_$JoystickHatPosition_$Void; -lime_app__$Event_$Int_$lime_$ui_$JoystickHatPosition_$Void.__name__ = "lime.app._Event_Int_lime_ui_JoystickHatPosition_Void"; -lime_app__$Event_$Int_$lime_$ui_$JoystickHatPosition_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a,a1) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a,a1); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$Int_$lime_$ui_$JoystickHatPosition_$Void -}; -var lime_app__$Event_$String_$Int_$Int_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_String_Int_Int_Void"] = lime_app__$Event_$String_$Int_$Int_$Void; -lime_app__$Event_$String_$Int_$Int_$Void.__name__ = "lime.app._Event_String_Int_Int_Void"; -lime_app__$Event_$String_$Int_$Int_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a,a1,a2) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a,a1,a2); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$String_$Int_$Int_$Void -}; -var lime_app__$Event_$String_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_String_Void"] = lime_app__$Event_$String_$Void; -lime_app__$Event_$String_$Void.__name__ = "lime.app._Event_String_Void"; -lime_app__$Event_$String_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$String_$Void -}; -var lime_app__$Event_$Void_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_Void_Void"] = lime_app__$Event_$Void_$Void; -lime_app__$Event_$Void_$Void.__name__ = "lime.app._Event_Void_Void"; -lime_app__$Event_$Void_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function() { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$Void_$Void -}; -var lime_app__$Event_$lime_$graphics_$RenderContext_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_lime_graphics_RenderContext_Void"] = lime_app__$Event_$lime_$graphics_$RenderContext_$Void; -lime_app__$Event_$lime_$graphics_$RenderContext_$Void.__name__ = "lime.app._Event_lime_graphics_RenderContext_Void"; -lime_app__$Event_$lime_$graphics_$RenderContext_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$lime_$graphics_$RenderContext_$Void -}; -var lime_app__$Event_$lime_$ui_$GamepadAxis_$Float_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_lime_ui_GamepadAxis_Float_Void"] = lime_app__$Event_$lime_$ui_$GamepadAxis_$Float_$Void; -lime_app__$Event_$lime_$ui_$GamepadAxis_$Float_$Void.__name__ = "lime.app._Event_lime_ui_GamepadAxis_Float_Void"; -lime_app__$Event_$lime_$ui_$GamepadAxis_$Float_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a,a1) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a,a1); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$lime_$ui_$GamepadAxis_$Float_$Void -}; -var lime_app__$Event_$lime_$ui_$GamepadButton_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_lime_ui_GamepadButton_Void"] = lime_app__$Event_$lime_$ui_$GamepadButton_$Void; -lime_app__$Event_$lime_$ui_$GamepadButton_$Void.__name__ = "lime.app._Event_lime_ui_GamepadButton_Void"; -lime_app__$Event_$lime_$ui_$GamepadButton_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$lime_$ui_$GamepadButton_$Void -}; -var lime_app__$Event_$lime_$ui_$Gamepad_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_lime_ui_Gamepad_Void"] = lime_app__$Event_$lime_$ui_$Gamepad_$Void; -lime_app__$Event_$lime_$ui_$Gamepad_$Void.__name__ = "lime.app._Event_lime_ui_Gamepad_Void"; -lime_app__$Event_$lime_$ui_$Gamepad_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$lime_$ui_$Gamepad_$Void -}; -var lime_app__$Event_$lime_$ui_$Joystick_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_lime_ui_Joystick_Void"] = lime_app__$Event_$lime_$ui_$Joystick_$Void; -lime_app__$Event_$lime_$ui_$Joystick_$Void.__name__ = "lime.app._Event_lime_ui_Joystick_Void"; -lime_app__$Event_$lime_$ui_$Joystick_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$lime_$ui_$Joystick_$Void -}; -var lime_app__$Event_$lime_$ui_$KeyCode_$lime_$ui_$KeyModifier_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_lime_ui_KeyCode_lime_ui_KeyModifier_Void"] = lime_app__$Event_$lime_$ui_$KeyCode_$lime_$ui_$KeyModifier_$Void; -lime_app__$Event_$lime_$ui_$KeyCode_$lime_$ui_$KeyModifier_$Void.__name__ = "lime.app._Event_lime_ui_KeyCode_lime_ui_KeyModifier_Void"; -lime_app__$Event_$lime_$ui_$KeyCode_$lime_$ui_$KeyModifier_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a,a1) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a,a1); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$lime_$ui_$KeyCode_$lime_$ui_$KeyModifier_$Void -}; -var lime_app__$Event_$lime_$ui_$Touch_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_lime_ui_Touch_Void"] = lime_app__$Event_$lime_$ui_$Touch_$Void; -lime_app__$Event_$lime_$ui_$Touch_$Void.__name__ = "lime.app._Event_lime_ui_Touch_Void"; -lime_app__$Event_$lime_$ui_$Touch_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$lime_$ui_$Touch_$Void -}; -var lime_app__$Event_$lime_$ui_$Window_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_lime_ui_Window_Void"] = lime_app__$Event_$lime_$ui_$Window_$Void; -lime_app__$Event_$lime_$ui_$Window_$Void.__name__ = "lime.app._Event_lime_ui_Window_Void"; -lime_app__$Event_$lime_$ui_$Window_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$lime_$ui_$Window_$Void -}; -var lime_app__$Event_$ofEvents_$T_$Void = function() { - this.canceled = false; - this.__listeners = []; - this.__priorities = []; - this.__repeat = []; -}; -$hxClasses["lime.app._Event_ofEvents_T_Void"] = lime_app__$Event_$ofEvents_$T_$Void; -lime_app__$Event_$ofEvents_$T_$Void.__name__ = "lime.app._Event_ofEvents_T_Void"; -lime_app__$Event_$ofEvents_$T_$Void.prototype = { - canceled: null - ,__repeat: null - ,__priorities: null - ,add: function(listener,once,priority) { - if(priority == null) { - priority = 0; - } - if(once == null) { - once = false; - } - var _g = 0; - var _g1 = this.__priorities.length; - while(_g < _g1) { - var i = _g++; - if(priority > this.__priorities[i]) { - this.__listeners.splice(i,0,listener); - this.__priorities.splice(i,0,priority); - this.__repeat.splice(i,0,!once); - return; - } - } - this.__listeners.push(listener); - this.__priorities.push(priority); - this.__repeat.push(!once); - } - ,cancel: function() { - this.canceled = true; - } - ,has: function(listener) { - var _g = 0; - var _g1 = this.__listeners; - while(_g < _g1.length) { - var l = _g1[_g]; - ++_g; - if(Reflect.compareMethods(l,listener)) { - return true; - } - } - return false; - } - ,remove: function(listener) { - var i = this.__listeners.length; - while(--i >= 0) if(Reflect.compareMethods(this.__listeners[i],listener)) { - this.__listeners.splice(i,1); - this.__priorities.splice(i,1); - this.__repeat.splice(i,1); - } - } - ,__listeners: null - ,dispatch: function(a) { - this.canceled = false; - var listeners = this.__listeners; - var repeat = this.__repeat; - var i = 0; - while(i < listeners.length) { - listeners[i](a); - if(!repeat[i]) { - this.remove(listeners[i]); - } else { - ++i; - } - if(this.canceled) { - break; - } - } - } - ,__class__: lime_app__$Event_$ofEvents_$T_$Void -}; -var lime_graphics__$CairoRenderContext_CairoRenderContext_$Impl_$ = {}; -$hxClasses["lime.graphics._CairoRenderContext.CairoRenderContext_Impl_"] = lime_graphics__$CairoRenderContext_CairoRenderContext_$Impl_$; -lime_graphics__$CairoRenderContext_CairoRenderContext_$Impl_$.__name__ = "lime.graphics._CairoRenderContext.CairoRenderContext_Impl_"; -lime_graphics__$CairoRenderContext_CairoRenderContext_$Impl_$.fromRenderContext = function(context) { - return context.cairo; -}; -var lime_graphics__$Canvas2DRenderContext_Canvas2DRenderContext_$Impl_$ = {}; -$hxClasses["lime.graphics._Canvas2DRenderContext.Canvas2DRenderContext_Impl_"] = lime_graphics__$Canvas2DRenderContext_Canvas2DRenderContext_$Impl_$; -lime_graphics__$Canvas2DRenderContext_Canvas2DRenderContext_$Impl_$.__name__ = "lime.graphics._Canvas2DRenderContext.Canvas2DRenderContext_Impl_"; -lime_graphics__$Canvas2DRenderContext_Canvas2DRenderContext_$Impl_$.fromRenderContext = function(context) { - return context.canvas2D; -}; -var lime_graphics__$DOMRenderContext_DOMRenderContext_$Impl_$ = {}; -$hxClasses["lime.graphics._DOMRenderContext.DOMRenderContext_Impl_"] = lime_graphics__$DOMRenderContext_DOMRenderContext_$Impl_$; -lime_graphics__$DOMRenderContext_DOMRenderContext_$Impl_$.__name__ = "lime.graphics._DOMRenderContext.DOMRenderContext_Impl_"; -lime_graphics__$DOMRenderContext_DOMRenderContext_$Impl_$.fromRenderContext = function(context) { - return context.dom; -}; -var lime_graphics__$FlashRenderContext_FlashRenderContext_$Impl_$ = {}; -$hxClasses["lime.graphics._FlashRenderContext.FlashRenderContext_Impl_"] = lime_graphics__$FlashRenderContext_FlashRenderContext_$Impl_$; -lime_graphics__$FlashRenderContext_FlashRenderContext_$Impl_$.__name__ = "lime.graphics._FlashRenderContext.FlashRenderContext_Impl_"; -lime_graphics__$FlashRenderContext_FlashRenderContext_$Impl_$.fromRenderContext = function(context) { - return null; -}; -var lime_graphics_Image = function(buffer,offsetX,offsetY,width,height,color,type) { - if(height == null) { - height = -1; - } - if(width == null) { - width = -1; - } - if(offsetY == null) { - offsetY = 0; - } - if(offsetX == null) { - offsetX = 0; - } - this.offsetX = offsetX; - this.offsetY = offsetY; - this.width = width; - this.height = height; - this.version = 0; - if(type == null) { - type = lime_graphics_ImageType.CANVAS; - } - this.type = type; - if(buffer == null) { - if(width > 0 && height > 0) { - switch(this.type._hx_index) { - case 0: - this.buffer = new lime_graphics_ImageBuffer(null,width,height); - lime__$internal_graphics_ImageCanvasUtil.createCanvas(this,width,height); - if(color != null && color != 0) { - this.fillRect(new lime_math_Rectangle(0,0,width,height),color); - } - break; - case 1: - var elements = width * height * 4; - var array = null; - var vector = null; - var view = null; - var buffer1 = null; - var len = null; - var this1; - if(elements != null) { - this1 = new Uint8Array(elements); - } else if(array != null) { - this1 = new Uint8Array(array); - } else if(vector != null) { - this1 = new Uint8Array(vector.__array); - } else if(view != null) { - this1 = new Uint8Array(view); - } else if(buffer1 != null) { - if(len == null) { - this1 = new Uint8Array(buffer1,0); - } else { - this1 = new Uint8Array(buffer1,0,len); - } - } else { - this1 = null; - } - this.buffer = new lime_graphics_ImageBuffer(this1,width,height); - if(color != null && color != 0) { - this.fillRect(new lime_math_Rectangle(0,0,width,height),color); - } - break; - case 2: - break; - default: - } - } - } else { - this.__fromImageBuffer(buffer); - } -}; -$hxClasses["lime.graphics.Image"] = lime_graphics_Image; -lime_graphics_Image.__name__ = "lime.graphics.Image"; -lime_graphics_Image.fromBase64 = function(base64,type) { - if(base64 == null) { - return null; - } - var image = new lime_graphics_Image(); - image.__fromBase64(base64,type); - return image; -}; -lime_graphics_Image.fromBitmapData = function(bitmapData) { - if(bitmapData == null) { - return null; - } - return bitmapData.image; -}; -lime_graphics_Image.fromBytes = function(bytes) { - if(bytes == null) { - return null; - } - var image = new lime_graphics_Image(); - if(image.__fromBytes(bytes)) { - return image; - } else { - return null; - } -}; -lime_graphics_Image.fromCanvas = function(canvas) { - if(canvas == null) { - return null; - } - var buffer = new lime_graphics_ImageBuffer(null,canvas.width,canvas.height); - buffer.set_src(canvas); - var image = new lime_graphics_Image(buffer); - image.type = lime_graphics_ImageType.CANVAS; - return image; -}; -lime_graphics_Image.fromFile = function(path) { - if(path == null) { - return null; - } - var image = new lime_graphics_Image(); - if(image.__fromFile(path)) { - return image; - } else { - return null; - } -}; -lime_graphics_Image.fromImageElement = function(image) { - if(image == null) { - return null; - } - var buffer = new lime_graphics_ImageBuffer(null,image.width,image.height); - buffer.set_src(image); - var _image = new lime_graphics_Image(buffer); - _image.type = lime_graphics_ImageType.CANVAS; - return _image; -}; -lime_graphics_Image.loadFromBase64 = function(base64,type) { - if(base64 == null || type == null) { - return lime_app_Future.withValue(null); - } - return lime__$internal_backend_html5_HTML5HTTPRequest.loadImage("data:" + type + ";base64," + base64); -}; -lime_graphics_Image.loadFromBytes = function(bytes) { - if(bytes == null) { - return lime_app_Future.withValue(null); - } - var type = ""; - if(lime_graphics_Image.__isPNG(bytes)) { - type = "image/png"; - } else if(lime_graphics_Image.__isJPG(bytes)) { - type = "image/jpeg"; - } else if(lime_graphics_Image.__isGIF(bytes)) { - type = "image/gif"; - } else if(lime_graphics_Image.__isWebP(bytes)) { - type = "image/webp"; - } else { - return lime_app_Future.withValue(null); - } - return lime__$internal_backend_html5_HTML5HTTPRequest.loadImageFromBytes(bytes,type); -}; -lime_graphics_Image.loadFromFile = function(path) { - if(path == null) { - return lime_app_Future.withValue(null); - } - return lime__$internal_backend_html5_HTML5HTTPRequest.loadImage(path); -}; -lime_graphics_Image.__isGIF = function(bytes) { - if(bytes == null || bytes.length < 6) { - return false; - } - var header = bytes.getString(0,6); - if(header != "GIF87a") { - return header == "GIF89a"; - } else { - return true; - } -}; -lime_graphics_Image.__isJPG = function(bytes) { - if(bytes == null || bytes.length < 4) { - return false; - } - if(bytes.b[0] == 255 && bytes.b[1] == 216 && bytes.b[bytes.length - 2] == 255) { - return bytes.b[bytes.length - 1] == 217; - } else { - return false; - } -}; -lime_graphics_Image.__isPNG = function(bytes) { - if(bytes == null || bytes.length < 8) { - return false; - } - if(bytes.b[0] == 137 && bytes.b[1] == 80 && bytes.b[2] == 78 && bytes.b[3] == 71 && bytes.b[4] == 13 && bytes.b[5] == 10 && bytes.b[6] == 26) { - return bytes.b[7] == 10; - } else { - return false; - } -}; -lime_graphics_Image.__isWebP = function(bytes) { - if(bytes == null || bytes.length < 16) { - return false; - } - if(bytes.getString(0,4) == "RIFF") { - return bytes.getString(8,4) == "WEBP"; - } else { - return false; - } -}; -lime_graphics_Image.prototype = { - buffer: null - ,dirty: null - ,height: null - ,offsetX: null - ,offsetY: null - ,rect: null - ,type: null - ,version: null - ,width: null - ,x: null - ,y: null - ,clone: function() { - if(this.buffer != null) { - if(this.type == lime_graphics_ImageType.CANVAS) { - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(this); - } else { - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - } - var image = new lime_graphics_Image(this.buffer.clone(),this.offsetX,this.offsetY,this.width,this.height,null,this.type); - image.version = this.version; - return image; - } else { - return new lime_graphics_Image(null,this.offsetX,this.offsetY,this.width,this.height,null,this.type); - } - } - ,colorTransform: function(rect,colorMatrix) { - rect = this.__clipRect(rect); - if(this.buffer == null || rect == null) { - return; - } - switch(this.type._hx_index) { - case 0: - lime__$internal_graphics_ImageCanvasUtil.colorTransform(this,rect,colorMatrix); - break; - case 1: - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - lime__$internal_graphics_ImageDataUtil.colorTransform(this,rect,colorMatrix); - break; - case 2: - rect.offset(this.offsetX,this.offsetY); - this.buffer.__srcBitmapData.colorTransform(rect.__toFlashRectangle(),lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__toFlashColorTransform(colorMatrix)); - break; - default: - } - } - ,copyChannel: function(sourceImage,sourceRect,destPoint,sourceChannel,destChannel) { - sourceRect = this.__clipRect(sourceRect); - if(this.buffer == null || sourceRect == null) { - return; - } - if(destChannel == lime_graphics_ImageChannel.ALPHA && !this.get_transparent()) { - return; - } - if(sourceRect.width <= 0 || sourceRect.height <= 0) { - return; - } - if(sourceRect.x + sourceRect.width > sourceImage.width) { - sourceRect.width = sourceImage.width - sourceRect.x; - } - if(sourceRect.y + sourceRect.height > sourceImage.height) { - sourceRect.height = sourceImage.height - sourceRect.y; - } - switch(this.type._hx_index) { - case 0: - lime__$internal_graphics_ImageCanvasUtil.copyChannel(this,sourceImage,sourceRect,destPoint,sourceChannel,destChannel); - break; - case 1: - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - lime__$internal_graphics_ImageCanvasUtil.convertToData(sourceImage); - lime__$internal_graphics_ImageDataUtil.copyChannel(this,sourceImage,sourceRect,destPoint,sourceChannel,destChannel); - break; - case 2: - var srcChannel; - switch(sourceChannel._hx_index) { - case 0: - srcChannel = 1; - break; - case 1: - srcChannel = 2; - break; - case 2: - srcChannel = 4; - break; - case 3: - srcChannel = 8; - break; - } - var dstChannel; - switch(destChannel._hx_index) { - case 0: - dstChannel = 1; - break; - case 1: - dstChannel = 2; - break; - case 2: - dstChannel = 4; - break; - case 3: - dstChannel = 8; - break; - } - sourceRect.offset(sourceImage.offsetX,sourceImage.offsetY); - destPoint.offset(this.offsetX,this.offsetY); - this.buffer.__srcBitmapData.copyChannel(sourceImage.buffer.get_src(),sourceRect.__toFlashRectangle(),destPoint.__toFlashPoint(),srcChannel,dstChannel); - break; - default: - } - } - ,copyPixels: function(sourceImage,sourceRect,destPoint,alphaImage,alphaPoint,mergeAlpha) { - if(mergeAlpha == null) { - mergeAlpha = false; - } - if(this.buffer == null || sourceImage == null) { - return; - } - if(sourceRect.width <= 0 || sourceRect.height <= 0) { - return; - } - if(this.width <= 0 || this.height <= 0) { - return; - } - if(sourceRect.x + sourceRect.width > sourceImage.width) { - sourceRect.width = sourceImage.width - sourceRect.x; - } - if(sourceRect.y + sourceRect.height > sourceImage.height) { - sourceRect.height = sourceImage.height - sourceRect.y; - } - if(sourceRect.x < 0) { - sourceRect.width += sourceRect.x; - sourceRect.x = 0; - } - if(sourceRect.y < 0) { - sourceRect.height += sourceRect.y; - sourceRect.y = 0; - } - if(destPoint.x + sourceRect.width > this.width) { - sourceRect.width = this.width - destPoint.x; - } - if(destPoint.y + sourceRect.height > this.height) { - sourceRect.height = this.height - destPoint.y; - } - if(destPoint.x < 0) { - sourceRect.width += destPoint.x; - sourceRect.x -= destPoint.x; - destPoint.x = 0; - } - if(destPoint.y < 0) { - sourceRect.height += destPoint.y; - sourceRect.y -= destPoint.y; - destPoint.y = 0; - } - if(sourceImage == this && destPoint.x < sourceRect.get_right() && destPoint.y < sourceRect.get_bottom()) { - sourceImage = this.clone(); - } - if(alphaImage == sourceImage && (alphaPoint == null || alphaPoint.x == 0 && alphaPoint.y == 0)) { - alphaImage = null; - alphaPoint = null; - } - switch(this.type._hx_index) { - case 0: - if(alphaImage != null) { - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - lime__$internal_graphics_ImageCanvasUtil.convertToData(sourceImage); - if(alphaImage != null) { - lime__$internal_graphics_ImageCanvasUtil.convertToData(alphaImage); - } - lime__$internal_graphics_ImageDataUtil.copyPixels(this,sourceImage,sourceRect,destPoint,alphaImage,alphaPoint,mergeAlpha); - } else { - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(this); - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(sourceImage); - lime__$internal_graphics_ImageCanvasUtil.copyPixels(this,sourceImage,sourceRect,destPoint,alphaImage,alphaPoint,mergeAlpha); - } - break; - case 1: - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - lime__$internal_graphics_ImageCanvasUtil.convertToData(sourceImage); - if(alphaImage != null) { - lime__$internal_graphics_ImageCanvasUtil.convertToData(alphaImage); - } - lime__$internal_graphics_ImageDataUtil.copyPixels(this,sourceImage,sourceRect,destPoint,alphaImage,alphaPoint,mergeAlpha); - break; - case 2: - sourceRect.offset(sourceImage.offsetX,sourceImage.offsetY); - destPoint.offset(this.offsetX,this.offsetY); - if(alphaImage != null && alphaPoint != null) { - alphaPoint.offset(alphaImage.offsetX,alphaImage.offsetY); - } - this.buffer.__srcBitmapData.copyPixels(sourceImage.buffer.__srcBitmapData,sourceRect.__toFlashRectangle(),destPoint.__toFlashPoint(),alphaImage != null ? alphaImage.buffer.get_src() : null,alphaPoint != null ? alphaPoint.__toFlashPoint() : null,mergeAlpha); - break; - default: - } - } - ,encode: function(format,quality) { - if(quality == null) { - quality = 90; - } - if(format == null) { - return lime__$internal_format_PNG.encode(this); - } else { - switch(format._hx_index) { - case 0: - return lime__$internal_format_BMP.encode(this); - case 1: - return lime__$internal_format_JPEG.encode(this,quality); - case 2: - return lime__$internal_format_PNG.encode(this); - } - } - } - ,fillRect: function(rect,color,format) { - rect = this.__clipRect(rect); - if(this.buffer == null || rect == null) { - return; - } - switch(this.type._hx_index) { - case 0: - lime__$internal_graphics_ImageCanvasUtil.fillRect(this,rect,color,format); - break; - case 1: - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - if(this.buffer.data.length == 0) { - return; - } - lime__$internal_graphics_ImageDataUtil.fillRect(this,rect,color,format); - break; - case 2: - rect.offset(this.offsetX,this.offsetY); - var argb; - if(format == null) { - var rgba = color; - var this1 = 0; - var argb1 = this1; - argb1 = (rgba & 255 & 255) << 24 | (rgba >>> 24 & 255 & 255) << 16 | (rgba >>> 16 & 255 & 255) << 8 | rgba >>> 8 & 255 & 255; - argb = argb1; - } else { - switch(format) { - case 1: - argb = color; - break; - case 2: - var bgra = color; - var this2 = 0; - var argb2 = this2; - argb2 = (bgra & 255 & 255) << 24 | (bgra >>> 8 & 255 & 255) << 16 | (bgra >>> 16 & 255 & 255) << 8 | bgra >>> 24 & 255 & 255; - argb = argb2; - break; - default: - var rgba1 = color; - var this3 = 0; - var argb3 = this3; - argb3 = (rgba1 & 255 & 255) << 24 | (rgba1 >>> 24 & 255 & 255) << 16 | (rgba1 >>> 16 & 255 & 255) << 8 | rgba1 >>> 8 & 255 & 255; - argb = argb3; - } - } - this.buffer.__srcBitmapData.fillRect(rect.__toFlashRectangle(),argb); - break; - default: - } - } - ,floodFill: function(x,y,color,format) { - if(this.buffer == null) { - return; - } - switch(this.type._hx_index) { - case 0: - lime__$internal_graphics_ImageCanvasUtil.floodFill(this,x,y,color,format); - break; - case 1: - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - lime__$internal_graphics_ImageDataUtil.floodFill(this,x,y,color,format); - break; - case 2: - var argb; - if(format == null) { - var rgba = color; - var this1 = 0; - var argb1 = this1; - argb1 = (rgba & 255 & 255) << 24 | (rgba >>> 24 & 255 & 255) << 16 | (rgba >>> 16 & 255 & 255) << 8 | rgba >>> 8 & 255 & 255; - argb = argb1; - } else { - switch(format) { - case 1: - argb = color; - break; - case 2: - var bgra = color; - var this2 = 0; - var argb2 = this2; - argb2 = (bgra & 255 & 255) << 24 | (bgra >>> 8 & 255 & 255) << 16 | (bgra >>> 16 & 255 & 255) << 8 | bgra >>> 24 & 255 & 255; - argb = argb2; - break; - default: - var rgba1 = color; - var this3 = 0; - var argb3 = this3; - argb3 = (rgba1 & 255 & 255) << 24 | (rgba1 >>> 24 & 255 & 255) << 16 | (rgba1 >>> 16 & 255 & 255) << 8 | rgba1 >>> 8 & 255 & 255; - argb = argb3; - } - } - this.buffer.__srcBitmapData.floodFill(x + this.offsetX,y + this.offsetY,argb); - break; - default: - } - } - ,getColorBoundsRect: function(mask,color,findColor,format) { - if(findColor == null) { - findColor = true; - } - if(this.buffer == null) { - return null; - } - switch(this.type._hx_index) { - case 0: - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - return lime__$internal_graphics_ImageDataUtil.getColorBoundsRect(this,mask,color,findColor,format); - case 1: - return lime__$internal_graphics_ImageDataUtil.getColorBoundsRect(this,mask,color,findColor,format); - case 2: - var rect = this.buffer.__srcBitmapData.getColorBoundsRect(mask,color,findColor); - return new lime_math_Rectangle(rect.x,rect.y,rect.width,rect.height); - default: - return null; - } - } - ,getPixel: function(x,y,format) { - if(this.buffer == null || x < 0 || y < 0 || x >= this.width || y >= this.height) { - return 0; - } - switch(this.type._hx_index) { - case 0: - return lime__$internal_graphics_ImageCanvasUtil.getPixel(this,x,y,format); - case 1: - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - return lime__$internal_graphics_ImageDataUtil.getPixel(this,x,y,format); - case 2: - var color = this.buffer.__srcBitmapData.getPixel(x + this.offsetX,y + this.offsetY); - if(format == null) { - var this1 = 0; - var rgba = this1; - rgba = (color >>> 16 & 255 & 255) << 24 | (color >>> 8 & 255 & 255) << 16 | (color & 255 & 255) << 8 | color >>> 24 & 255 & 255; - var rgba1 = rgba; - return rgba1; - } else { - switch(format) { - case 1: - return color; - case 2: - var this2 = 0; - var bgra = this2; - bgra = (color & 255 & 255) << 24 | (color >>> 8 & 255 & 255) << 16 | (color >>> 16 & 255 & 255) << 8 | color >>> 24 & 255 & 255; - var bgra1 = bgra; - return bgra1; - default: - var this3 = 0; - var rgba2 = this3; - rgba2 = (color >>> 16 & 255 & 255) << 24 | (color >>> 8 & 255 & 255) << 16 | (color & 255 & 255) << 8 | color >>> 24 & 255 & 255; - var rgba3 = rgba2; - return rgba3; - } - } - break; - default: - return 0; - } - } - ,getPixel32: function(x,y,format) { - if(this.buffer == null || x < 0 || y < 0 || x >= this.width || y >= this.height) { - return 0; - } - switch(this.type._hx_index) { - case 0: - return lime__$internal_graphics_ImageCanvasUtil.getPixel32(this,x,y,format); - case 1: - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - return lime__$internal_graphics_ImageDataUtil.getPixel32(this,x,y,format); - case 2: - var color = this.buffer.__srcBitmapData.getPixel32(x + this.offsetX,y + this.offsetY); - if(format == null) { - var this1 = 0; - var rgba = this1; - rgba = (color >>> 16 & 255 & 255) << 24 | (color >>> 8 & 255 & 255) << 16 | (color & 255 & 255) << 8 | color >>> 24 & 255 & 255; - var rgba1 = rgba; - return rgba1; - } else { - switch(format) { - case 1: - return color; - case 2: - var this2 = 0; - var bgra = this2; - bgra = (color & 255 & 255) << 24 | (color >>> 8 & 255 & 255) << 16 | (color >>> 16 & 255 & 255) << 8 | color >>> 24 & 255 & 255; - var bgra1 = bgra; - return bgra1; - default: - var this3 = 0; - var rgba2 = this3; - rgba2 = (color >>> 16 & 255 & 255) << 24 | (color >>> 8 & 255 & 255) << 16 | (color & 255 & 255) << 8 | color >>> 24 & 255 & 255; - var rgba3 = rgba2; - return rgba3; - } - } - break; - default: - return 0; - } - } - ,getPixels: function(rect,format) { - if(this.buffer == null) { - return null; - } - switch(this.type._hx_index) { - case 0: - return lime__$internal_graphics_ImageCanvasUtil.getPixels(this,rect,format); - case 1: - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - return lime__$internal_graphics_ImageDataUtil.getPixels(this,rect,format); - case 2: - return null; - default: - return null; - } - } - ,merge: function(sourceImage,sourceRect,destPoint,redMultiplier,greenMultiplier,blueMultiplier,alphaMultiplier) { - if(this.buffer == null || sourceImage == null) { - return; - } - switch(this.type._hx_index) { - case 0: - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(this); - lime__$internal_graphics_ImageCanvasUtil.merge(this,sourceImage,sourceRect,destPoint,redMultiplier,greenMultiplier,blueMultiplier,alphaMultiplier); - break; - case 1: - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - lime__$internal_graphics_ImageCanvasUtil.convertToData(sourceImage); - lime__$internal_graphics_ImageDataUtil.merge(this,sourceImage,sourceRect,destPoint,redMultiplier,greenMultiplier,blueMultiplier,alphaMultiplier); - break; - case 2: - sourceRect.offset(this.offsetX,this.offsetY); - this.buffer.__srcBitmapData.merge(sourceImage.buffer.__srcBitmapData,sourceRect.__toFlashRectangle(),destPoint.__toFlashPoint(),redMultiplier,greenMultiplier,blueMultiplier,alphaMultiplier); - break; - default: - return; - } - } - ,resize: function(newWidth,newHeight) { - switch(this.type._hx_index) { - case 0: - lime__$internal_graphics_ImageCanvasUtil.resize(this,newWidth,newHeight); - break; - case 1: - lime__$internal_graphics_ImageDataUtil.resize(this,newWidth,newHeight); - break; - case 2: - break; - default: - } - this.buffer.width = newWidth; - this.buffer.height = newHeight; - this.offsetX = 0; - this.offsetY = 0; - this.width = newWidth; - this.height = newHeight; - } - ,scroll: function(x,y) { - if(this.buffer == null) { - return; - } - switch(this.type._hx_index) { - case 0: - lime__$internal_graphics_ImageCanvasUtil.scroll(this,x,y); - break; - case 1: - this.copyPixels(this,this.get_rect(),new lime_math_Vector2(x,y)); - break; - case 2: - this.buffer.__srcBitmapData.scroll(x + this.offsetX,y + this.offsetX); - break; - default: - } - } - ,setPixel: function(x,y,color,format) { - if(this.buffer == null || x < 0 || y < 0 || x >= this.width || y >= this.height) { - return; - } - switch(this.type._hx_index) { - case 0: - lime__$internal_graphics_ImageCanvasUtil.setPixel(this,x,y,color,format); - break; - case 1: - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - lime__$internal_graphics_ImageDataUtil.setPixel(this,x,y,color,format); - break; - case 2: - var argb; - if(format == null) { - var rgba = color; - var this1 = 0; - var argb1 = this1; - argb1 = (rgba & 255 & 255) << 24 | (rgba >>> 24 & 255 & 255) << 16 | (rgba >>> 16 & 255 & 255) << 8 | rgba >>> 8 & 255 & 255; - argb = argb1; - } else { - switch(format) { - case 1: - argb = color; - break; - case 2: - var bgra = color; - var this2 = 0; - var argb2 = this2; - argb2 = (bgra & 255 & 255) << 24 | (bgra >>> 8 & 255 & 255) << 16 | (bgra >>> 16 & 255 & 255) << 8 | bgra >>> 24 & 255 & 255; - argb = argb2; - break; - default: - var rgba1 = color; - var this3 = 0; - var argb3 = this3; - argb3 = (rgba1 & 255 & 255) << 24 | (rgba1 >>> 24 & 255 & 255) << 16 | (rgba1 >>> 16 & 255 & 255) << 8 | rgba1 >>> 8 & 255 & 255; - argb = argb3; - } - } - this.buffer.__srcBitmapData.setPixel(x + this.offsetX,y + this.offsetX,argb); - break; - default: - } - } - ,setPixel32: function(x,y,color,format) { - if(this.buffer == null || x < 0 || y < 0 || x >= this.width || y >= this.height) { - return; - } - switch(this.type._hx_index) { - case 0: - lime__$internal_graphics_ImageCanvasUtil.setPixel32(this,x,y,color,format); - break; - case 1: - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - lime__$internal_graphics_ImageDataUtil.setPixel32(this,x,y,color,format); - break; - case 2: - var argb; - if(format == null) { - var rgba = color; - var this1 = 0; - var argb1 = this1; - argb1 = (rgba & 255 & 255) << 24 | (rgba >>> 24 & 255 & 255) << 16 | (rgba >>> 16 & 255 & 255) << 8 | rgba >>> 8 & 255 & 255; - argb = argb1; - } else { - switch(format) { - case 1: - argb = color; - break; - case 2: - var bgra = color; - var this2 = 0; - var argb2 = this2; - argb2 = (bgra & 255 & 255) << 24 | (bgra >>> 8 & 255 & 255) << 16 | (bgra >>> 16 & 255 & 255) << 8 | bgra >>> 24 & 255 & 255; - argb = argb2; - break; - default: - var rgba1 = color; - var this3 = 0; - var argb3 = this3; - argb3 = (rgba1 & 255 & 255) << 24 | (rgba1 >>> 24 & 255 & 255) << 16 | (rgba1 >>> 16 & 255 & 255) << 8 | rgba1 >>> 8 & 255 & 255; - argb = argb3; - } - } - this.buffer.__srcBitmapData.setPixel32(x + this.offsetX,y + this.offsetY,argb); - break; - default: - } - } - ,setPixels: function(rect,bytePointer,format,endian) { - rect = this.__clipRect(rect); - if(this.buffer == null || rect == null) { - return; - } - if(endian == null) { - endian = lime_system_Endian.BIG_ENDIAN; - } - switch(this.type._hx_index) { - case 0: - lime__$internal_graphics_ImageCanvasUtil.setPixels(this,rect,bytePointer,format,endian); - break; - case 1: - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - lime__$internal_graphics_ImageDataUtil.setPixels(this,rect,bytePointer,format,endian); - break; - case 2: - break; - default: - } - } - ,threshold: function(sourceImage,sourceRect,destPoint,operation,threshold,color,mask,copySource,format) { - if(copySource == null) { - copySource = false; - } - if(mask == null) { - mask = -1; - } - if(color == null) { - color = 0; - } - if(this.buffer == null || sourceImage == null || sourceRect == null) { - return 0; - } - switch(this.type._hx_index) { - case 0:case 1: - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - lime__$internal_graphics_ImageCanvasUtil.convertToData(sourceImage); - return lime__$internal_graphics_ImageDataUtil.threshold(this,sourceImage,sourceRect,destPoint,operation,threshold,color,mask,copySource,format); - case 2: - var _color; - if(format == null) { - var rgba = color; - var this1 = 0; - var argb = this1; - argb = (rgba & 255 & 255) << 24 | (rgba >>> 24 & 255 & 255) << 16 | (rgba >>> 16 & 255 & 255) << 8 | rgba >>> 8 & 255 & 255; - _color = argb; - } else { - switch(format) { - case 1: - _color = color; - break; - case 2: - var bgra = color; - var this2 = 0; - var argb1 = this2; - argb1 = (bgra & 255 & 255) << 24 | (bgra >>> 8 & 255 & 255) << 16 | (bgra >>> 16 & 255 & 255) << 8 | bgra >>> 24 & 255 & 255; - _color = argb1; - break; - default: - var rgba1 = color; - var this3 = 0; - var argb2 = this3; - argb2 = (rgba1 & 255 & 255) << 24 | (rgba1 >>> 24 & 255 & 255) << 16 | (rgba1 >>> 16 & 255 & 255) << 8 | rgba1 >>> 8 & 255 & 255; - _color = argb2; - } - } - var _mask; - if(format == null) { - var rgba2 = mask; - var this4 = 0; - var argb3 = this4; - argb3 = (rgba2 & 255 & 255) << 24 | (rgba2 >>> 24 & 255 & 255) << 16 | (rgba2 >>> 16 & 255 & 255) << 8 | rgba2 >>> 8 & 255 & 255; - _mask = argb3; - } else { - switch(format) { - case 1: - _mask = mask; - break; - case 2: - var bgra1 = mask; - var this5 = 0; - var argb4 = this5; - argb4 = (bgra1 & 255 & 255) << 24 | (bgra1 >>> 8 & 255 & 255) << 16 | (bgra1 >>> 16 & 255 & 255) << 8 | bgra1 >>> 24 & 255 & 255; - _mask = argb4; - break; - default: - var rgba3 = mask; - var this6 = 0; - var argb5 = this6; - argb5 = (rgba3 & 255 & 255) << 24 | (rgba3 >>> 24 & 255 & 255) << 16 | (rgba3 >>> 16 & 255 & 255) << 8 | rgba3 >>> 8 & 255 & 255; - _mask = argb5; - } - } - sourceRect.offset(sourceImage.offsetX,sourceImage.offsetY); - destPoint.offset(this.offsetX,this.offsetY); - return this.buffer.__srcBitmapData.threshold(sourceImage.buffer.get_src(),sourceRect.__toFlashRectangle(),destPoint.__toFlashPoint(),operation,threshold,_color,_mask,copySource); - default: - } - return 0; - } - ,__clipRect: function(r) { - if(r == null) { - return null; - } - if(r.x < 0) { - r.width -= -r.x; - r.x = 0; - if(r.x + r.width <= 0) { - return null; - } - } - if(r.y < 0) { - r.height -= -r.y; - r.y = 0; - if(r.y + r.height <= 0) { - return null; - } - } - if(r.x + r.width >= this.width) { - r.width -= r.x + r.width - this.width; - if(r.width <= 0) { - return null; - } - } - if(r.y + r.height >= this.height) { - r.height -= r.y + r.height - this.height; - if(r.height <= 0) { - return null; - } - } - return r; - } - ,__fromBase64: function(base64,type,onload) { - var _gthis = this; - var image = new Image(); - var image_onLoaded = function(event) { - _gthis.buffer = new lime_graphics_ImageBuffer(null,image.width,image.height); - _gthis.buffer.__srcImage = image; - _gthis.offsetX = 0; - _gthis.offsetY = 0; - _gthis.width = _gthis.buffer.width; - _gthis.height = _gthis.buffer.height; - if(onload != null) { - onload(_gthis); - } - }; - image.addEventListener("load",image_onLoaded,false); - image.src = "data:" + type + ";base64," + base64; - } - ,__fromBytes: function(bytes,onload) { - var type = ""; - if(lime_graphics_Image.__isPNG(bytes)) { - type = "image/png"; - } else if(lime_graphics_Image.__isJPG(bytes)) { - type = "image/jpeg"; - } else if(lime_graphics_Image.__isGIF(bytes)) { - type = "image/gif"; - } else { - return false; - } - this.__fromBase64(lime__$internal_format_Base64.encode(bytes),type,onload); - return true; - } - ,__fromFile: function(path,onload,onerror) { - var _gthis = this; - var image = new Image(); - if(!lime__$internal_backend_html5_HTML5HTTPRequest.__isSameOrigin(path)) { - image.crossOrigin = "Anonymous"; - } - image.onload = function(_) { - _gthis.buffer = new lime_graphics_ImageBuffer(null,image.width,image.height); - _gthis.buffer.__srcImage = image; - _gthis.width = image.width; - _gthis.height = image.height; - if(onload != null) { - onload(_gthis); - } - }; - image.onerror = function(_1) { - if(onerror != null) { - onerror(); - } - }; - image.src = path; - var image1 = image.complete; - return true; - } - ,__fromImageBuffer: function(buffer) { - this.buffer = buffer; - if(buffer != null) { - if(this.width == -1) { - this.width = buffer.width; - } - if(this.height == -1) { - this.height = buffer.height; - } - } - } - ,get_data: function() { - if(this.buffer.data == null && this.buffer.width > 0 && this.buffer.height > 0) { - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - } - return this.buffer.data; - } - ,set_data: function(value) { - return this.buffer.data = value; - } - ,get_format: function() { - return this.buffer.format; - } - ,set_format: function(value) { - if(this.buffer.format != value) { - if(this.type._hx_index == 1) { - lime__$internal_graphics_ImageDataUtil.setFormat(this,value); - } - } - return this.buffer.format = value; - } - ,get_powerOfTwo: function() { - if(this.buffer.width != 0 && (this.buffer.width & ~this.buffer.width + 1) == this.buffer.width) { - if(this.buffer.height != 0) { - return (this.buffer.height & ~this.buffer.height + 1) == this.buffer.height; - } else { - return false; - } - } else { - return false; - } - } - ,set_powerOfTwo: function(value) { - if(value != this.get_powerOfTwo()) { - var newWidth = 1; - var newHeight = 1; - while(newWidth < this.buffer.width) newWidth <<= 1; - while(newHeight < this.buffer.height) newHeight <<= 1; - if(newWidth == this.buffer.width && newHeight == this.buffer.height) { - return value; - } - switch(this.type._hx_index) { - case 0: - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - lime__$internal_graphics_ImageDataUtil.resizeBuffer(this,newWidth,newHeight); - break; - case 1: - lime__$internal_graphics_ImageDataUtil.resizeBuffer(this,newWidth,newHeight); - break; - case 2: - break; - default: - } - } - return value; - } - ,get_premultiplied: function() { - return this.buffer.premultiplied; - } - ,set_premultiplied: function(value) { - if(value && !this.buffer.premultiplied) { - switch(this.type._hx_index) { - case 0:case 1: - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - lime__$internal_graphics_ImageDataUtil.multiplyAlpha(this); - break; - default: - } - } else if(!value && this.buffer.premultiplied) { - if(this.type._hx_index == 1) { - lime__$internal_graphics_ImageCanvasUtil.convertToData(this); - lime__$internal_graphics_ImageDataUtil.unmultiplyAlpha(this); - } - } - return value; - } - ,get_rect: function() { - return new lime_math_Rectangle(0,0,this.width,this.height); - } - ,get_src: function() { - if(this.buffer.__srcCanvas == null && (this.buffer.data != null || this.type == lime_graphics_ImageType.DATA)) { - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(this); - } - return this.buffer.get_src(); - } - ,set_src: function(value) { - return this.buffer.set_src(value); - } - ,get_transparent: function() { - if(this.buffer == null) { - return false; - } - return this.buffer.transparent; - } - ,set_transparent: function(value) { - if(this.buffer == null) { - return false; - } - return this.buffer.transparent = value; - } - ,__class__: lime_graphics_Image - ,__properties__: {set_transparent:"set_transparent",get_transparent:"get_transparent",set_src:"set_src",get_src:"get_src",get_rect:"get_rect",set_premultiplied:"set_premultiplied",get_premultiplied:"get_premultiplied",set_powerOfTwo:"set_powerOfTwo",get_powerOfTwo:"get_powerOfTwo",set_format:"set_format",get_format:"get_format",set_data:"set_data",get_data:"get_data"} -}; -var lime_graphics_ImageBuffer = function(data,width,height,bitsPerPixel,format) { - if(bitsPerPixel == null) { - bitsPerPixel = 32; - } - if(height == null) { - height = 0; - } - if(width == null) { - width = 0; - } - this.data = data; - this.width = width; - this.height = height; - this.bitsPerPixel = bitsPerPixel; - this.format = format == null ? 0 : format; - this.premultiplied = false; - this.transparent = true; -}; -$hxClasses["lime.graphics.ImageBuffer"] = lime_graphics_ImageBuffer; -lime_graphics_ImageBuffer.__name__ = "lime.graphics.ImageBuffer"; -lime_graphics_ImageBuffer.prototype = { - bitsPerPixel: null - ,data: null - ,format: null - ,height: null - ,premultiplied: null - ,transparent: null - ,width: null - ,__srcBitmapData: null - ,__srcCanvas: null - ,__srcContext: null - ,__srcCustom: null - ,__srcImage: null - ,__srcImageData: null - ,clone: function() { - var buffer = new lime_graphics_ImageBuffer(this.data,this.width,this.height,this.bitsPerPixel); - if(this.data != null) { - var elements = this.data.byteLength; - var array = null; - var vector = null; - var view = null; - var buffer1 = null; - var len = null; - var this1; - if(elements != null) { - this1 = new Uint8Array(elements); - } else if(array != null) { - this1 = new Uint8Array(array); - } else if(vector != null) { - this1 = new Uint8Array(vector.__array); - } else if(view != null) { - this1 = new Uint8Array(view); - } else if(buffer1 != null) { - if(len == null) { - this1 = new Uint8Array(buffer1,0); - } else { - this1 = new Uint8Array(buffer1,0,len); - } - } else { - this1 = null; - } - buffer.data = this1; - var elements1 = null; - var array1 = null; - var vector1 = null; - var view1 = this.data; - var buffer2 = null; - var len1 = null; - var this2; - if(elements1 != null) { - this2 = new Uint8Array(elements1); - } else if(array1 != null) { - this2 = new Uint8Array(array1); - } else if(vector1 != null) { - this2 = new Uint8Array(vector1.__array); - } else if(view1 != null) { - this2 = new Uint8Array(view1); - } else if(buffer2 != null) { - if(len1 == null) { - this2 = new Uint8Array(buffer2,0); - } else { - this2 = new Uint8Array(buffer2,0,len1); - } - } else { - this2 = null; - } - var copy = this2; - buffer.data.set(copy); - } else if(this.__srcImageData != null) { - buffer.__srcCanvas = window.document.createElement("canvas"); - buffer.__srcContext = buffer.__srcCanvas.getContext("2d"); - buffer.__srcCanvas.width = this.__srcImageData.width; - buffer.__srcCanvas.height = this.__srcImageData.height; - buffer.__srcImageData = buffer.__srcContext.createImageData(this.__srcImageData.width,this.__srcImageData.height); - var copy1 = new Uint8ClampedArray(this.__srcImageData.data); - buffer.__srcImageData.data.set(copy1); - } else if(this.__srcCanvas != null) { - buffer.__srcCanvas = window.document.createElement("canvas"); - buffer.__srcContext = buffer.__srcCanvas.getContext("2d"); - buffer.__srcCanvas.width = this.__srcCanvas.width; - buffer.__srcCanvas.height = this.__srcCanvas.height; - buffer.__srcContext.drawImage(this.__srcCanvas,0,0); - } else { - buffer.__srcImage = this.__srcImage; - } - buffer.bitsPerPixel = this.bitsPerPixel; - buffer.format = this.format; - buffer.premultiplied = this.premultiplied; - buffer.transparent = this.transparent; - return buffer; - } - ,get_src: function() { - if(this.__srcImage != null) { - return this.__srcImage; - } - return this.__srcCanvas; - } - ,set_src: function(value) { - if(((value) instanceof Image)) { - this.__srcImage = value; - } else if(((value) instanceof HTMLCanvasElement)) { - this.__srcCanvas = value; - this.__srcContext = this.__srcCanvas.getContext("2d"); - } - return value; - } - ,get_stride: function() { - return this.width * (this.bitsPerPixel / 8 | 0); - } - ,__class__: lime_graphics_ImageBuffer - ,__properties__: {get_stride:"get_stride",set_src:"set_src",get_src:"get_src"} -}; -var lime_graphics_ImageChannel = $hxEnums["lime.graphics.ImageChannel"] = { __ename__ : "lime.graphics.ImageChannel", __constructs__ : ["RED","GREEN","BLUE","ALPHA"] - ,RED: {_hx_index:0,__enum__:"lime.graphics.ImageChannel",toString:$estr} - ,GREEN: {_hx_index:1,__enum__:"lime.graphics.ImageChannel",toString:$estr} - ,BLUE: {_hx_index:2,__enum__:"lime.graphics.ImageChannel",toString:$estr} - ,ALPHA: {_hx_index:3,__enum__:"lime.graphics.ImageChannel",toString:$estr} -}; -var lime_graphics_ImageFileFormat = $hxEnums["lime.graphics.ImageFileFormat"] = { __ename__ : "lime.graphics.ImageFileFormat", __constructs__ : ["BMP","JPEG","PNG"] - ,BMP: {_hx_index:0,__enum__:"lime.graphics.ImageFileFormat",toString:$estr} - ,JPEG: {_hx_index:1,__enum__:"lime.graphics.ImageFileFormat",toString:$estr} - ,PNG: {_hx_index:2,__enum__:"lime.graphics.ImageFileFormat",toString:$estr} -}; -var lime_graphics_ImageType = $hxEnums["lime.graphics.ImageType"] = { __ename__ : "lime.graphics.ImageType", __constructs__ : ["CANVAS","DATA","FLASH","CUSTOM"] - ,CANVAS: {_hx_index:0,__enum__:"lime.graphics.ImageType",toString:$estr} - ,DATA: {_hx_index:1,__enum__:"lime.graphics.ImageType",toString:$estr} - ,FLASH: {_hx_index:2,__enum__:"lime.graphics.ImageType",toString:$estr} - ,CUSTOM: {_hx_index:3,__enum__:"lime.graphics.ImageType",toString:$estr} -}; -var lime_graphics__$OpenGLES2RenderContext_OpenGLES2RenderContext_$Impl_$ = {}; -$hxClasses["lime.graphics._OpenGLES2RenderContext.OpenGLES2RenderContext_Impl_"] = lime_graphics__$OpenGLES2RenderContext_OpenGLES2RenderContext_$Impl_$; -lime_graphics__$OpenGLES2RenderContext_OpenGLES2RenderContext_$Impl_$.__name__ = "lime.graphics._OpenGLES2RenderContext.OpenGLES2RenderContext_Impl_"; -lime_graphics__$OpenGLES2RenderContext_OpenGLES2RenderContext_$Impl_$.fromGL = function(gl) { - return null; -}; -lime_graphics__$OpenGLES2RenderContext_OpenGLES2RenderContext_$Impl_$.fromOpenGLES3RenderContext = function(gl) { - return null; -}; -lime_graphics__$OpenGLES2RenderContext_OpenGLES2RenderContext_$Impl_$.fromRenderContext = function(context) { - return null; -}; -lime_graphics__$OpenGLES2RenderContext_OpenGLES2RenderContext_$Impl_$.fromWebGLRenderContext = function(gl) { - return null; -}; -var lime_graphics__$OpenGLES3RenderContext_OpenGLES3RenderContext_$Impl_$ = {}; -$hxClasses["lime.graphics._OpenGLES3RenderContext.OpenGLES3RenderContext_Impl_"] = lime_graphics__$OpenGLES3RenderContext_OpenGLES3RenderContext_$Impl_$; -lime_graphics__$OpenGLES3RenderContext_OpenGLES3RenderContext_$Impl_$.__name__ = "lime.graphics._OpenGLES3RenderContext.OpenGLES3RenderContext_Impl_"; -lime_graphics__$OpenGLES3RenderContext_OpenGLES3RenderContext_$Impl_$.fromRenderContext = function(context) { - return null; -}; -lime_graphics__$OpenGLES3RenderContext_OpenGLES3RenderContext_$Impl_$.fromGL = function(gl) { - return null; -}; -lime_graphics__$OpenGLES3RenderContext_OpenGLES3RenderContext_$Impl_$.fromOpenGLES2RenderContext = function(context) { - return null; -}; -lime_graphics__$OpenGLES3RenderContext_OpenGLES3RenderContext_$Impl_$.fromWebGLRenderContext = function(context) { - return null; -}; -lime_graphics__$OpenGLES3RenderContext_OpenGLES3RenderContext_$Impl_$.fromWebGL2RenderContext = function(context) { - return null; -}; -var lime_graphics__$OpenGLRenderContext_OpenGLRenderContext_$Impl_$ = {}; -$hxClasses["lime.graphics._OpenGLRenderContext.OpenGLRenderContext_Impl_"] = lime_graphics__$OpenGLRenderContext_OpenGLRenderContext_$Impl_$; -lime_graphics__$OpenGLRenderContext_OpenGLRenderContext_$Impl_$.__name__ = "lime.graphics._OpenGLRenderContext.OpenGLRenderContext_Impl_"; -lime_graphics__$OpenGLRenderContext_OpenGLRenderContext_$Impl_$.fromRenderContext = function(context) { - return null; -}; -var lime_graphics_RenderContext = function() { -}; -$hxClasses["lime.graphics.RenderContext"] = lime_graphics_RenderContext; -lime_graphics_RenderContext.__name__ = "lime.graphics.RenderContext"; -lime_graphics_RenderContext.prototype = { - attributes: null - ,cairo: null - ,canvas2D: null - ,dom: null - ,flash: null - ,gl: null - ,gles2: null - ,gles3: null - ,type: null - ,version: null - ,webgl: null - ,webgl2: null - ,window: null - ,__class__: lime_graphics_RenderContext -}; -var lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$ = {}; -$hxClasses["lime.graphics._WebGL2RenderContext.WebGL2RenderContext_Impl_"] = lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.__name__ = "lime.graphics._WebGL2RenderContext.WebGL2RenderContext_Impl_"; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.bufferData = function(this1,target,srcData,usage,srcOffset,length) { - if(srcOffset != null) { - this1.bufferData(target,srcData,usage,srcOffset,length); - } else { - this1.bufferData(target,srcData,usage); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.bufferSubData = function(this1,target,dstByteOffset,srcData,srcOffset,length) { - if(srcOffset != null) { - this1.bufferSubData(target,dstByteOffset,srcData,srcOffset,length); - } else { - this1.bufferSubData(target,dstByteOffset,srcData); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.compressedTexImage2D = function(this1,target,level,internalformat,width,height,border,srcData,srcOffset,srcLengthOverride) { - if(srcOffset != null) { - this1.compressedTexImage2D(target,level,internalformat,width,height,border,srcData,srcOffset,srcLengthOverride); - } else { - this1.compressedTexImage2D(target,level,internalformat,width,height,border,srcData); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.compressedTexSubImage2D = function(this1,target,level,xoffset,yoffset,width,height,format,srcData,srcOffset,srcLengthOverride) { - if(srcOffset != null) { - this1.compressedTexSubImage2D(target,level,xoffset,yoffset,width,height,format,srcData,srcOffset,srcLengthOverride); - } else { - this1.compressedTexSubImage2D(target,level,xoffset,yoffset,width,height,format,srcData); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.getBufferSubData = function(this1,target,srcByteOffset,dstData,srcOffset,length) { - if(srcOffset != null) { - this1.getBufferSubData(target,srcByteOffset,dstData,srcOffset,length); - } else { - this1.getBufferSubData(target,srcByteOffset,dstData); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.readPixels = function(this1,x,y,width,height,format,type,pixels,dstOffset) { - if(dstOffset != null) { - this1.readPixels(x,y,width,height,format,type,pixels,dstOffset); - } else { - this1.readPixels(x,y,width,height,format,type,pixels); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.texImage2D = function(this1,target,level,internalformat,width,height,border,format,type,srcData,srcOffset) { - if(srcOffset != null) { - this1.texImage2D(target,level,internalformat,width,height,border,format,type,srcData,srcOffset); - } else if(format != null) { - this1.texImage2D(target,level,internalformat,width,height,border,format,type,srcData); - } else { - this1.texImage2D(target,level,internalformat,width,height,border); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.texSubImage2D = function(this1,target,level,xoffset,yoffset,width,height,format,type,srcData,srcOffset) { - if(srcOffset != null) { - this1.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,srcData,srcOffset); - } else if(type != null) { - this1.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,srcData); - } else { - this1.texSubImage2D(target,level,xoffset,yoffset,width,height,format); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.uniform1fv = function(this1,location,data,srcOffset,srcLength) { - if(srcOffset != null) { - this1.uniform1fv(location,data,srcOffset,srcLength); - } else { - this1.uniform1fv(location,data); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.uniform1iv = function(this1,location,data,srcOffset,srcLength) { - if(srcOffset != null) { - this1.uniform1iv(location,data,srcOffset,srcLength); - } else { - this1.uniform1iv(location,data); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.uniform2fv = function(this1,location,data,srcOffset,srcLength) { - if(srcOffset != null) { - this1.uniform2fv(location,data,srcOffset,srcLength); - } else { - this1.uniform2fv(location,data); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.uniform2iv = function(this1,location,data,srcOffset,srcLength) { - if(srcOffset != null) { - this1.uniform2iv(location,data,srcOffset,srcLength); - } else { - this1.uniform2iv(location,data); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.uniform3fv = function(this1,location,data,srcOffset,srcLength) { - if(srcOffset != null) { - this1.uniform3fv(location,data,srcOffset,srcLength); - } else { - this1.uniform3fv(location,data); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.uniform3iv = function(this1,location,data,srcOffset,srcLength) { - if(srcOffset != null) { - this1.uniform3iv(location,data,srcOffset,srcLength); - } else { - this1.uniform3iv(location,data); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.uniform4fv = function(this1,location,data,srcOffset,srcLength) { - if(srcOffset != null) { - this1.uniform4fv(location,data,srcOffset,srcLength); - } else { - this1.uniform4fv(location,data); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.uniform4iv = function(this1,location,data,srcOffset,srcLength) { - if(srcOffset != null) { - this1.uniform4iv(location,data,srcOffset,srcLength); - } else { - this1.uniform4iv(location,data); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.uniformMatrix2fv = function(this1,location,transpose,data,srcOffset,srcLength) { - if(srcOffset != null) { - this1.uniformMatrix2fv(location,transpose,data,srcOffset,srcLength); - } else { - this1.uniformMatrix2fv(location,transpose,data); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.uniformMatrix3fv = function(this1,location,transpose,data,srcOffset,srcLength) { - if(srcOffset != null) { - this1.uniformMatrix3fv(location,transpose,data,srcOffset,srcLength); - } else { - this1.uniformMatrix3fv(location,transpose,data); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.uniformMatrix4fv = function(this1,location,transpose,data,srcOffset,srcLength) { - if(srcOffset != null) { - this1.uniformMatrix4fv(location,transpose,data,srcOffset,srcLength); - } else { - this1.uniformMatrix4fv(location,transpose,data); - } -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.fromGL = function(gl) { - return null; -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.fromRenderContext = function(context) { - return context.webgl2; -}; -lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.toWebGLRenderContext = function(gl) { - return gl; -}; -var lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$ = {}; -$hxClasses["lime.graphics._WebGLRenderContext.WebGLRenderContext_Impl_"] = lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$; -lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.__name__ = "lime.graphics._WebGLRenderContext.WebGLRenderContext_Impl_"; -lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.bufferData = function(this1,target,srcData,usage) { - var srcOffset = null; - if(srcOffset != null) { - this1.bufferData(target,srcData,usage,srcOffset,null); - } else { - this1.bufferData(target,srcData,usage); - } -}; -lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.bufferSubData = function(this1,target,offset,srcData) { - var srcOffset = null; - if(srcOffset != null) { - this1.bufferSubData(target,offset,srcData,srcOffset,null); - } else { - this1.bufferSubData(target,offset,srcData); - } -}; -lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.compressedTexImage2D = function(this1,target,level,internalformat,width,height,border,srcData) { - var srcOffset = null; - if(srcOffset != null) { - this1.compressedTexImage2D(target,level,internalformat,width,height,border,srcData,srcOffset,null); - } else { - this1.compressedTexImage2D(target,level,internalformat,width,height,border,srcData); - } -}; -lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.compressedTexSubImage2D = function(this1,target,level,xoffset,yoffset,width,height,format,srcData) { - var srcOffset = null; - if(srcOffset != null) { - this1.compressedTexSubImage2D(target,level,xoffset,yoffset,width,height,format,srcData,srcOffset,null); - } else { - this1.compressedTexSubImage2D(target,level,xoffset,yoffset,width,height,format,srcData); - } -}; -lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.readPixels = function(this1,x,y,width,height,format,type,pixels) { - var dstOffset = null; - if(dstOffset != null) { - this1.readPixels(x,y,width,height,format,type,pixels,dstOffset); - } else { - this1.readPixels(x,y,width,height,format,type,pixels); - } -}; -lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D = function(this1,target,level,internalformat,width,height,border,format,type,srcData) { - var srcOffset = null; - if(srcOffset != null) { - this1.texImage2D(target,level,internalformat,width,height,border,format,type,srcData,srcOffset); - } else if(format != null) { - this1.texImage2D(target,level,internalformat,width,height,border,format,type,srcData); - } else { - this1.texImage2D(target,level,internalformat,width,height,border); - } -}; -lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texSubImage2D = function(this1,target,level,xoffset,yoffset,width,height,format,type,srcData) { - var srcOffset = null; - if(srcOffset != null) { - this1.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,srcData,srcOffset); - } else if(type != null) { - this1.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,srcData); - } else { - this1.texSubImage2D(target,level,xoffset,yoffset,width,height,format); - } -}; -lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.uniformMatrix2fv = function(this1,location,transpose,v) { - var data = v; - var srcOffset = null; - if(srcOffset != null) { - this1.uniformMatrix2fv(location,transpose,data,srcOffset,null); - } else { - this1.uniformMatrix2fv(location,transpose,data); - } -}; -lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.uniformMatrix3fv = function(this1,location,transpose,v) { - var data = v; - var srcOffset = null; - if(srcOffset != null) { - this1.uniformMatrix3fv(location,transpose,data,srcOffset,null); - } else { - this1.uniformMatrix3fv(location,transpose,data); - } -}; -lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.uniformMatrix4fv = function(this1,location,transpose,v) { - var data = v; - var srcOffset = null; - if(srcOffset != null) { - this1.uniformMatrix4fv(location,transpose,data,srcOffset,null); - } else { - this1.uniformMatrix4fv(location,transpose,data); - } -}; -lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.fromWebGL2RenderContext = function(gl) { - return gl; -}; -lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.fromRenderContext = function(context) { - return context.webgl; -}; -lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.fromGL = function(gl) { - return lime_graphics_opengl_GL.context; -}; -var lime_graphics_cairo_Cairo = function(surface) { - var tmp = surface != null; -}; -$hxClasses["lime.graphics.cairo.Cairo"] = lime_graphics_cairo_Cairo; -lime_graphics_cairo_Cairo.__name__ = "lime.graphics.cairo.Cairo"; -lime_graphics_cairo_Cairo.__properties__ = {get_versionString:"get_versionString",get_version:"get_version"}; -lime_graphics_cairo_Cairo.version = null; -lime_graphics_cairo_Cairo.versionString = null; -lime_graphics_cairo_Cairo.get_version = function() { - return 0; -}; -lime_graphics_cairo_Cairo.get_versionString = function() { - return ""; -}; -lime_graphics_cairo_Cairo.prototype = { - target: null - ,userData: null - ,handle: null - ,arc: function(xc,yc,radius,angle1,angle2) { - } - ,arcNegative: function(xc,yc,radius,angle1,angle2) { - } - ,clip: function() { - } - ,clipExtents: function(x1,y1,x2,y2) { - } - ,clipPreserve: function() { - } - ,closePath: function() { - } - ,copyPage: function() { - } - ,curveTo: function(x1,y1,x2,y2,x3,y3) { - } - ,fill: function() { - } - ,fillExtents: function(x1,y1,x2,y2) { - } - ,fillPreserve: function() { - } - ,getOperator: function() { - return 0; - } - ,identityMatrix: function() { - } - ,inClip: function(x,y) { - return false; - } - ,inFill: function(x,y) { - return false; - } - ,inStroke: function(x,y) { - return false; - } - ,lineTo: function(x,y) { - } - ,mask: function(pattern) { - } - ,maskSurface: function(surface,x,y) { - } - ,moveTo: function(x,y) { - } - ,newPath: function() { - } - ,paint: function() { - } - ,paintWithAlpha: function(alpha) { - } - ,popGroup: function() { - return null; - } - ,popGroupToSource: function() { - } - ,pushGroup: function() { - } - ,pushGroupWithContent: function(content) { - } - ,recreate: function(surface) { - } - ,rectangle: function(x,y,width,height) { - } - ,relCurveTo: function(dx1,dy1,dx2,dy2,dx3,dy3) { - } - ,relLineTo: function(dx,dy) { - } - ,relMoveTo: function(dx,dy) { - } - ,resetClip: function() { - } - ,restore: function() { - } - ,rotate: function(amount) { - } - ,save: function() { - } - ,scale: function(x,y) { - } - ,setFontSize: function(size) { - } - ,setOperator: function(value) { - return value; - } - ,setSourceRGB: function(r,g,b) { - } - ,setSourceRGBA: function(r,g,b,a) { - } - ,setSourceSurface: function(surface,x,y) { - } - ,showGlyphs: function(glyphs) { - } - ,showPage: function() { - } - ,showText: function(utf8) { - } - ,status: function() { - return 0; - } - ,stroke: function() { - } - ,strokeExtents: function(x1,y1,x2,y2) { - } - ,strokePreserve: function() { - } - ,textPath: function(utf8) { - } - ,transform: function(matrix) { - } - ,translate: function(x,y) { - } - ,get_antialias: function() { - return 0; - } - ,set_antialias: function(value) { - return value; - } - ,get_currentPoint: function() { - return null; - } - ,get_dash: function() { - return []; - } - ,set_dash: function(value) { - return value; - } - ,get_dashCount: function() { - return 0; - } - ,get_fillRule: function() { - return 0; - } - ,set_fillRule: function(value) { - return value; - } - ,get_fontFace: function() { - return 0; - } - ,set_fontFace: function(value) { - return value; - } - ,get_fontOptions: function() { - return null; - } - ,set_fontOptions: function(value) { - return value; - } - ,get_groupTarget: function() { - return 0; - } - ,get_hasCurrentPoint: function() { - return false; - } - ,get_lineCap: function() { - return 0; - } - ,set_lineCap: function(value) { - return value; - } - ,get_lineJoin: function() { - return 0; - } - ,set_lineJoin: function(value) { - return value; - } - ,get_lineWidth: function() { - return 0; - } - ,set_lineWidth: function(value) { - return value; - } - ,get_matrix: function() { - return null; - } - ,set_matrix: function(value) { - return value; - } - ,get_miterLimit: function() { - return 0; - } - ,set_miterLimit: function(value) { - return value; - } - ,get_source: function() { - return 0; - } - ,set_source: function(value) { - return value; - } - ,get_target: function() { - return 0; - } - ,get_tolerance: function() { - return 0; - } - ,set_tolerance: function(value) { - return value; - } - ,__class__: lime_graphics_cairo_Cairo - ,__properties__: {set_tolerance:"set_tolerance",get_tolerance:"get_tolerance",get_target:"get_target",set_source:"set_source",get_source:"get_source",set_miterLimit:"set_miterLimit",get_miterLimit:"get_miterLimit",set_matrix:"set_matrix",get_matrix:"get_matrix",set_lineWidth:"set_lineWidth",get_lineWidth:"get_lineWidth",set_lineJoin:"set_lineJoin",get_lineJoin:"get_lineJoin",set_lineCap:"set_lineCap",get_lineCap:"get_lineCap",get_hasCurrentPoint:"get_hasCurrentPoint",get_groupTarget:"get_groupTarget",set_fontOptions:"set_fontOptions",get_fontOptions:"get_fontOptions",set_fontFace:"set_fontFace",get_fontFace:"get_fontFace",set_fillRule:"set_fillRule",get_fillRule:"get_fillRule",get_dashCount:"get_dashCount",set_dash:"set_dash",get_dash:"get_dash",get_currentPoint:"get_currentPoint",set_antialias:"set_antialias",get_antialias:"get_antialias"} -}; -var lime_graphics_cairo__$CairoFTFontFace_CairoFTFontFace_$Impl_$ = {}; -$hxClasses["lime.graphics.cairo._CairoFTFontFace.CairoFTFontFace_Impl_"] = lime_graphics_cairo__$CairoFTFontFace_CairoFTFontFace_$Impl_$; -lime_graphics_cairo__$CairoFTFontFace_CairoFTFontFace_$Impl_$.__name__ = "lime.graphics.cairo._CairoFTFontFace.CairoFTFontFace_Impl_"; -lime_graphics_cairo__$CairoFTFontFace_CairoFTFontFace_$Impl_$._new = function() { - var this1 = 0; - return this1; -}; -lime_graphics_cairo__$CairoFTFontFace_CairoFTFontFace_$Impl_$.create = function(face,loadFlags) { - return 0; -}; -var lime_graphics_cairo__$CairoFontFace_CairoFontFace_$Impl_$ = {}; -$hxClasses["lime.graphics.cairo._CairoFontFace.CairoFontFace_Impl_"] = lime_graphics_cairo__$CairoFontFace_CairoFontFace_$Impl_$; -lime_graphics_cairo__$CairoFontFace_CairoFontFace_$Impl_$.__name__ = "lime.graphics.cairo._CairoFontFace.CairoFontFace_Impl_"; -lime_graphics_cairo__$CairoFontFace_CairoFontFace_$Impl_$._new = function() { - var this1 = null; - return this1; -}; -lime_graphics_cairo__$CairoFontFace_CairoFontFace_$Impl_$.status = function(this1) { - return 0; -}; -var lime_graphics_cairo__$CairoFontOptions_CairoFontOptions_$Impl_$ = {}; -$hxClasses["lime.graphics.cairo._CairoFontOptions.CairoFontOptions_Impl_"] = lime_graphics_cairo__$CairoFontOptions_CairoFontOptions_$Impl_$; -lime_graphics_cairo__$CairoFontOptions_CairoFontOptions_$Impl_$.__name__ = "lime.graphics.cairo._CairoFontOptions.CairoFontOptions_Impl_"; -lime_graphics_cairo__$CairoFontOptions_CairoFontOptions_$Impl_$.__properties__ = {set_subpixelOrder:"set_subpixelOrder",get_subpixelOrder:"get_subpixelOrder",set_hintStyle:"set_hintStyle",get_hintStyle:"get_hintStyle",set_hintMetrics:"set_hintMetrics",get_hintMetrics:"get_hintMetrics",set_antialias:"set_antialias",get_antialias:"get_antialias"}; -lime_graphics_cairo__$CairoFontOptions_CairoFontOptions_$Impl_$._new = function() { - var this1 = null; - return this1; -}; -lime_graphics_cairo__$CairoFontOptions_CairoFontOptions_$Impl_$.get_antialias = function(this1) { - return 0; -}; -lime_graphics_cairo__$CairoFontOptions_CairoFontOptions_$Impl_$.set_antialias = function(this1,value) { - return value; -}; -lime_graphics_cairo__$CairoFontOptions_CairoFontOptions_$Impl_$.get_hintMetrics = function(this1) { - return 0; -}; -lime_graphics_cairo__$CairoFontOptions_CairoFontOptions_$Impl_$.set_hintMetrics = function(this1,value) { - return value; -}; -lime_graphics_cairo__$CairoFontOptions_CairoFontOptions_$Impl_$.get_hintStyle = function(this1) { - return 0; -}; -lime_graphics_cairo__$CairoFontOptions_CairoFontOptions_$Impl_$.set_hintStyle = function(this1,value) { - return value; -}; -lime_graphics_cairo__$CairoFontOptions_CairoFontOptions_$Impl_$.get_subpixelOrder = function(this1) { - return 0; -}; -lime_graphics_cairo__$CairoFontOptions_CairoFontOptions_$Impl_$.set_subpixelOrder = function(this1,value) { - return value; -}; -var lime_graphics_cairo_CairoGlyph = function(index,x,y) { - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - this.index = index; - this.x = x; - this.y = y; -}; -$hxClasses["lime.graphics.cairo.CairoGlyph"] = lime_graphics_cairo_CairoGlyph; -lime_graphics_cairo_CairoGlyph.__name__ = "lime.graphics.cairo.CairoGlyph"; -lime_graphics_cairo_CairoGlyph.prototype = { - index: null - ,x: null - ,y: null - ,__class__: lime_graphics_cairo_CairoGlyph -}; -var lime_graphics_cairo__$CairoImageSurface_CairoImageSurface_$Impl_$ = {}; -$hxClasses["lime.graphics.cairo._CairoImageSurface.CairoImageSurface_Impl_"] = lime_graphics_cairo__$CairoImageSurface_CairoImageSurface_$Impl_$; -lime_graphics_cairo__$CairoImageSurface_CairoImageSurface_$Impl_$.__name__ = "lime.graphics.cairo._CairoImageSurface.CairoImageSurface_Impl_"; -lime_graphics_cairo__$CairoImageSurface_CairoImageSurface_$Impl_$.__properties__ = {get_width:"get_width",get_stride:"get_stride",get_height:"get_height",get_format:"get_format",get_data:"get_data"}; -lime_graphics_cairo__$CairoImageSurface_CairoImageSurface_$Impl_$._new = function(format,width,height) { - var this1 = 0; - return this1; -}; -lime_graphics_cairo__$CairoImageSurface_CairoImageSurface_$Impl_$.create = function(data,format,width,height,stride) { - return 0; -}; -lime_graphics_cairo__$CairoImageSurface_CairoImageSurface_$Impl_$.fromImage = function(image) { - return null; -}; -lime_graphics_cairo__$CairoImageSurface_CairoImageSurface_$Impl_$.get_data = function(this1) { - return lime_utils__$DataPointer_DataPointer_$Impl_$.fromFloat(0); -}; -lime_graphics_cairo__$CairoImageSurface_CairoImageSurface_$Impl_$.get_format = function(this1) { - return 0; -}; -lime_graphics_cairo__$CairoImageSurface_CairoImageSurface_$Impl_$.get_height = function(this1) { - return 0; -}; -lime_graphics_cairo__$CairoImageSurface_CairoImageSurface_$Impl_$.get_stride = function(this1) { - return 0; -}; -lime_graphics_cairo__$CairoImageSurface_CairoImageSurface_$Impl_$.get_width = function(this1) { - return 0; -}; -var lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$ = {}; -$hxClasses["lime.graphics.cairo._CairoPattern.CairoPattern_Impl_"] = lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$; -lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.__name__ = "lime.graphics.cairo._CairoPattern.CairoPattern_Impl_"; -lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.__properties__ = {set_matrix:"set_matrix",get_matrix:"get_matrix",set_filter:"set_filter",get_filter:"get_filter",set_extend:"set_extend",get_extend:"get_extend",get_colorStopCount:"get_colorStopCount"}; -lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$._new = function(handle) { - var this1 = handle; - return this1; -}; -lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.addColorStopRGB = function(this1,offset,r,g,b) { -}; -lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.addColorStopRGBA = function(this1,offset,r,g,b,a) { -}; -lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.createForSurface = function(surface) { - return 0; -}; -lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.createLinear = function(x0,y0,x1,y1) { - return 0; -}; -lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.createRadial = function(cx0,cy0,radius0,cx1,cy1,radius1) { - return 0; -}; -lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.createRGB = function(r,g,b) { - return 0; -}; -lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.createRGBA = function(r,g,b,a) { - return 0; -}; -lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.get_colorStopCount = function(this1) { - return 0; -}; -lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.get_extend = function(this1) { - return 0; -}; -lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.set_extend = function(this1,value) { - return value; -}; -lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.get_filter = function(this1) { - return 0; -}; -lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.set_filter = function(this1,value) { - return value; -}; -lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.get_matrix = function(this1) { - return null; -}; -lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.set_matrix = function(this1,value) { - return value; -}; -var lime_graphics_cairo__$CairoSurface_CairoSurface_$Impl_$ = {}; -$hxClasses["lime.graphics.cairo._CairoSurface.CairoSurface_Impl_"] = lime_graphics_cairo__$CairoSurface_CairoSurface_$Impl_$; -lime_graphics_cairo__$CairoSurface_CairoSurface_$Impl_$.__name__ = "lime.graphics.cairo._CairoSurface.CairoSurface_Impl_"; -lime_graphics_cairo__$CairoSurface_CairoSurface_$Impl_$.flush = function(this1) { -}; -var lime_graphics_opengl_GL = function() { }; -$hxClasses["lime.graphics.opengl.GL"] = lime_graphics_opengl_GL; -lime_graphics_opengl_GL.__name__ = "lime.graphics.opengl.GL"; -lime_graphics_opengl_GL.context = null; -lime_graphics_opengl_GL.type = null; -lime_graphics_opengl_GL.version = null; -lime_graphics_opengl_GL.activeTexture = function(texture) { - lime_graphics_opengl_GL.context.activeTexture(texture); -}; -lime_graphics_opengl_GL.attachShader = function(program,shader) { - lime_graphics_opengl_GL.context.attachShader(program,shader); -}; -lime_graphics_opengl_GL.beginQuery = function(target,query) { - lime_graphics_opengl_GL.context.beginQuery(target,query); -}; -lime_graphics_opengl_GL.beginTransformFeedback = function(primitiveNode) { - lime_graphics_opengl_GL.context.beginTransformFeedback(primitiveNode); -}; -lime_graphics_opengl_GL.bindAttribLocation = function(program,index,name) { - lime_graphics_opengl_GL.context.bindAttribLocation(program,index,name); -}; -lime_graphics_opengl_GL.bindBuffer = function(target,buffer) { - lime_graphics_opengl_GL.context.bindBuffer(target,buffer); -}; -lime_graphics_opengl_GL.bindBufferBase = function(target,index,buffer) { - lime_graphics_opengl_GL.context.bindBufferBase(target,index,buffer); -}; -lime_graphics_opengl_GL.bindBufferRange = function(target,index,buffer,offset,size) { - lime_graphics_opengl_GL.context.bindBufferRange(target,index,buffer,offset,lime_utils__$DataPointer_DataPointer_$Impl_$.fromFloat(size)); -}; -lime_graphics_opengl_GL.bindFramebuffer = function(target,framebuffer) { - lime_graphics_opengl_GL.context.bindFramebuffer(target,framebuffer); -}; -lime_graphics_opengl_GL.bindRenderbuffer = function(target,renderbuffer) { - lime_graphics_opengl_GL.context.bindRenderbuffer(target,renderbuffer); -}; -lime_graphics_opengl_GL.bindSampler = function(unit,sampler) { - lime_graphics_opengl_GL.context.bindSampler(unit,sampler); -}; -lime_graphics_opengl_GL.bindTexture = function(target,texture) { - lime_graphics_opengl_GL.context.bindTexture(target,texture); -}; -lime_graphics_opengl_GL.bindTransformFeedback = function(target,transformFeedback) { - lime_graphics_opengl_GL.context.bindTransformFeedback(target,transformFeedback); -}; -lime_graphics_opengl_GL.bindVertexArray = function(vertexArray) { - lime_graphics_opengl_GL.context.bindVertexArray(vertexArray); -}; -lime_graphics_opengl_GL.blitFramebuffer = function(srcX0,srcY0,srcX1,srcY1,dstX0,dstY0,dstX1,dstY1,mask,filter) { - lime_graphics_opengl_GL.context.blitFramebuffer(srcX0,srcY0,srcX1,srcY1,dstX0,dstY0,dstX1,dstY1,mask,filter); -}; -lime_graphics_opengl_GL.blendColor = function(red,green,blue,alpha) { - lime_graphics_opengl_GL.context.blendColor(red,green,blue,alpha); -}; -lime_graphics_opengl_GL.blendEquation = function(mode) { - lime_graphics_opengl_GL.context.blendEquation(mode); -}; -lime_graphics_opengl_GL.blendEquationSeparate = function(modeRGB,modeAlpha) { - lime_graphics_opengl_GL.context.blendEquationSeparate(modeRGB,modeAlpha); -}; -lime_graphics_opengl_GL.blendFunc = function(sfactor,dfactor) { - lime_graphics_opengl_GL.context.blendFunc(sfactor,dfactor); -}; -lime_graphics_opengl_GL.blendFuncSeparate = function(srcRGB,dstRGB,srcAlpha,dstAlpha) { - lime_graphics_opengl_GL.context.blendFuncSeparate(srcRGB,dstRGB,srcAlpha,dstAlpha); -}; -lime_graphics_opengl_GL.bufferDataWEBGL = function(target,srcData,usage,srcOffset,length) { - var this1 = lime_graphics_opengl_GL.context; - if(srcOffset != null) { - this1.bufferData(target,srcData,usage,srcOffset,length); - } else { - this1.bufferData(target,srcData,usage); - } -}; -lime_graphics_opengl_GL.bufferSubDataWEBGL = function(target,dstByteOffset,srcData,srcOffset,length) { - var this1 = lime_graphics_opengl_GL.context; - if(srcOffset != null) { - this1.bufferSubData(target,dstByteOffset,srcData,srcOffset,length); - } else { - this1.bufferSubData(target,dstByteOffset,srcData); - } -}; -lime_graphics_opengl_GL.checkFramebufferStatus = function(target) { - return lime_graphics_opengl_GL.context.checkFramebufferStatus(target); -}; -lime_graphics_opengl_GL.clear = function(mask) { - lime_graphics_opengl_GL.context.clear(mask); -}; -lime_graphics_opengl_GL.clearBufferfi = function(buffer,drawbuffer,depth,stencil) { - lime_graphics_opengl_GL.context.clearBufferfi(buffer,drawbuffer,depth,stencil); -}; -lime_graphics_opengl_GL.clearBufferfvWEBGL = function(buffer,drawbuffer,values,srcOffset) { - lime_graphics_opengl_GL.context.clearBufferfv(buffer,drawbuffer,values,srcOffset); -}; -lime_graphics_opengl_GL.clearBufferivWEBGL = function(buffer,drawbuffer,values,srcOffset) { - lime_graphics_opengl_GL.context.clearBufferiv(buffer,drawbuffer,values,srcOffset); -}; -lime_graphics_opengl_GL.clearBufferuivWEBGL = function(buffer,drawbuffer,values,srcOffset) { - lime_graphics_opengl_GL.context.clearBufferuiv(buffer,drawbuffer,values,srcOffset); -}; -lime_graphics_opengl_GL.clearColor = function(red,green,blue,alpha) { - lime_graphics_opengl_GL.context.clearColor(red,green,blue,alpha); -}; -lime_graphics_opengl_GL.clearDepth = function(depth) { - lime_graphics_opengl_GL.context.clearDepth(depth); -}; -lime_graphics_opengl_GL.clearStencil = function(s) { - lime_graphics_opengl_GL.context.clearStencil(s); -}; -lime_graphics_opengl_GL.clientWaitSync = function(sync,flags,timeout) { - return lime_graphics_opengl_GL.context.clientWaitSync(sync,flags,timeout); -}; -lime_graphics_opengl_GL.colorMask = function(red,green,blue,alpha) { - lime_graphics_opengl_GL.context.colorMask(red,green,blue,alpha); -}; -lime_graphics_opengl_GL.compileShader = function(shader) { - lime_graphics_opengl_GL.context.compileShader(shader); -}; -lime_graphics_opengl_GL.compressedTexImage2DWEBGL = function(target,level,internalformat,width,height,border,srcData,srcOffset,srcLengthOverride) { - var this1 = lime_graphics_opengl_GL.context; - if(srcOffset != null) { - this1.compressedTexImage2D(target,level,internalformat,width,height,border,srcData,srcOffset,srcLengthOverride); - } else { - this1.compressedTexImage2D(target,level,internalformat,width,height,border,srcData); - } -}; -lime_graphics_opengl_GL.compressedTexImage3DWEBGL = function(target,level,internalformat,width,height,depth,border,srcData,srcOffset,srcLengthOverride) { - lime_graphics_opengl_GL.context.compressedTexImage3D(target,level,internalformat,width,height,depth,border,srcData,srcOffset,srcLengthOverride); -}; -lime_graphics_opengl_GL.compressedTexSubImage2DWEBGL = function(target,level,xoffset,yoffset,width,height,format,srcData,srcOffset,srcLengthOverride) { - var this1 = lime_graphics_opengl_GL.context; - if(srcOffset != null) { - this1.compressedTexSubImage2D(target,level,xoffset,yoffset,width,height,format,srcData,srcOffset,srcLengthOverride); - } else { - this1.compressedTexSubImage2D(target,level,xoffset,yoffset,width,height,format,srcData); - } -}; -lime_graphics_opengl_GL.compressedTexSubImage3DWEBGL = function(target,level,xoffset,yoffset,zoffset,width,height,depth,format,srcData,srcOffset,srcLengthOverride) { - lime_graphics_opengl_GL.context.compressedTexSubImage3D(target,level,xoffset,yoffset,zoffset,width,height,depth,format,srcData,srcOffset,srcLengthOverride); -}; -lime_graphics_opengl_GL.copyTexImage2D = function(target,level,internalformat,x,y,width,height,border) { - lime_graphics_opengl_GL.context.copyTexImage2D(target,level,internalformat,x,y,width,height,border); -}; -lime_graphics_opengl_GL.copyTexSubImage2D = function(target,level,xoffset,yoffset,x,y,width,height) { - lime_graphics_opengl_GL.context.copyTexSubImage2D(target,level,xoffset,yoffset,x,y,width,height); -}; -lime_graphics_opengl_GL.copyTexSubImage3D = function(target,level,xoffset,yoffset,zoffset,x,y,width,height) { - lime_graphics_opengl_GL.context.copyTexSubImage3D(target,level,xoffset,yoffset,zoffset,x,y,width,height); -}; -lime_graphics_opengl_GL.createBuffer = function() { - return lime_graphics_opengl_GL.context.createBuffer(); -}; -lime_graphics_opengl_GL.createFramebuffer = function() { - return lime_graphics_opengl_GL.context.createFramebuffer(); -}; -lime_graphics_opengl_GL.createProgram = function() { - return lime_graphics_opengl_GL.context.createProgram(); -}; -lime_graphics_opengl_GL.createQuery = function() { - return lime_graphics_opengl_GL.context.createQuery(); -}; -lime_graphics_opengl_GL.createRenderbuffer = function() { - return lime_graphics_opengl_GL.context.createRenderbuffer(); -}; -lime_graphics_opengl_GL.createSampler = function() { - return lime_graphics_opengl_GL.context.createSampler(); -}; -lime_graphics_opengl_GL.createShader = function(type) { - return lime_graphics_opengl_GL.context.createShader(type); -}; -lime_graphics_opengl_GL.createTexture = function() { - return lime_graphics_opengl_GL.context.createTexture(); -}; -lime_graphics_opengl_GL.createTransformFeedback = function() { - return lime_graphics_opengl_GL.context.createTransformFeedback(); -}; -lime_graphics_opengl_GL.createVertexArray = function() { - return lime_graphics_opengl_GL.context.createVertexArray(); -}; -lime_graphics_opengl_GL.cullFace = function(mode) { - lime_graphics_opengl_GL.context.cullFace(mode); -}; -lime_graphics_opengl_GL.deleteBuffer = function(buffer) { - lime_graphics_opengl_GL.context.deleteBuffer(buffer); -}; -lime_graphics_opengl_GL.deleteFramebuffer = function(framebuffer) { - lime_graphics_opengl_GL.context.deleteFramebuffer(framebuffer); -}; -lime_graphics_opengl_GL.deleteProgram = function(program) { - lime_graphics_opengl_GL.context.deleteProgram(program); -}; -lime_graphics_opengl_GL.deleteQuery = function(query) { - lime_graphics_opengl_GL.context.deleteQuery(query); -}; -lime_graphics_opengl_GL.deleteRenderbuffer = function(renderbuffer) { - lime_graphics_opengl_GL.context.deleteRenderbuffer(renderbuffer); -}; -lime_graphics_opengl_GL.deleteSampler = function(sampler) { - lime_graphics_opengl_GL.context.deleteSampler(sampler); -}; -lime_graphics_opengl_GL.deleteShader = function(shader) { - lime_graphics_opengl_GL.context.deleteShader(shader); -}; -lime_graphics_opengl_GL.deleteSync = function(sync) { - lime_graphics_opengl_GL.context.deleteSync(sync); -}; -lime_graphics_opengl_GL.deleteTexture = function(texture) { - lime_graphics_opengl_GL.context.deleteTexture(texture); -}; -lime_graphics_opengl_GL.deleteTransformFeedback = function(transformFeedback) { - lime_graphics_opengl_GL.context.deleteTransformFeedback(transformFeedback); -}; -lime_graphics_opengl_GL.deleteVertexArray = function(vertexArray) { - lime_graphics_opengl_GL.context.deleteVertexArray(vertexArray); -}; -lime_graphics_opengl_GL.depthFunc = function(func) { - lime_graphics_opengl_GL.context.depthFunc(func); -}; -lime_graphics_opengl_GL.depthMask = function(flag) { - lime_graphics_opengl_GL.context.depthMask(flag); -}; -lime_graphics_opengl_GL.depthRange = function(zNear,zFar) { - lime_graphics_opengl_GL.context.depthRange(zNear,zFar); -}; -lime_graphics_opengl_GL.detachShader = function(program,shader) { - lime_graphics_opengl_GL.context.detachShader(program,shader); -}; -lime_graphics_opengl_GL.disable = function(cap) { - lime_graphics_opengl_GL.context.disable(cap); -}; -lime_graphics_opengl_GL.disableVertexAttribArray = function(index) { - lime_graphics_opengl_GL.context.disableVertexAttribArray(index); -}; -lime_graphics_opengl_GL.drawArrays = function(mode,first,count) { - lime_graphics_opengl_GL.context.drawArrays(mode,first,count); -}; -lime_graphics_opengl_GL.drawArraysInstanced = function(mode,first,count,instanceCount) { - lime_graphics_opengl_GL.context.drawArraysInstanced(mode,first,count,instanceCount); -}; -lime_graphics_opengl_GL.drawBuffers = function(buffers) { - lime_graphics_opengl_GL.context.drawBuffers(buffers); -}; -lime_graphics_opengl_GL.drawElements = function(mode,count,type,offset) { - lime_graphics_opengl_GL.context.drawElements(mode,count,type,offset); -}; -lime_graphics_opengl_GL.drawElementsInstanced = function(mode,count,type,offset,instanceCount) { - lime_graphics_opengl_GL.context.drawElementsInstanced(mode,count,type,offset,instanceCount); -}; -lime_graphics_opengl_GL.drawRangeElements = function(mode,start,end,count,type,offset) { - lime_graphics_opengl_GL.context.drawRangeElements(mode,start,end,count,type,offset); -}; -lime_graphics_opengl_GL.enable = function(cap) { - lime_graphics_opengl_GL.context.enable(cap); -}; -lime_graphics_opengl_GL.enableVertexAttribArray = function(index) { - lime_graphics_opengl_GL.context.enableVertexAttribArray(index); -}; -lime_graphics_opengl_GL.endQuery = function(target) { - lime_graphics_opengl_GL.context.endQuery(target); -}; -lime_graphics_opengl_GL.endTransformFeedback = function() { - lime_graphics_opengl_GL.context.endTransformFeedback(); -}; -lime_graphics_opengl_GL.fenceSync = function(condition,flags) { - return lime_graphics_opengl_GL.context.fenceSync(condition,flags); -}; -lime_graphics_opengl_GL.finish = function() { - lime_graphics_opengl_GL.context.finish(); -}; -lime_graphics_opengl_GL.flush = function() { - lime_graphics_opengl_GL.context.flush(); -}; -lime_graphics_opengl_GL.framebufferRenderbuffer = function(target,attachment,renderbuffertarget,renderbuffer) { - lime_graphics_opengl_GL.context.framebufferRenderbuffer(target,attachment,renderbuffertarget,renderbuffer); -}; -lime_graphics_opengl_GL.framebufferTexture2D = function(target,attachment,textarget,texture,level) { - lime_graphics_opengl_GL.context.framebufferTexture2D(target,attachment,textarget,texture,level); -}; -lime_graphics_opengl_GL.framebufferTextureLayer = function(target,attachment,texture,level,layer) { - lime_graphics_opengl_GL.context.framebufferTextureLayer(target,attachment,texture,level,layer); -}; -lime_graphics_opengl_GL.frontFace = function(mode) { - lime_graphics_opengl_GL.context.frontFace(mode); -}; -lime_graphics_opengl_GL.generateMipmap = function(target) { - lime_graphics_opengl_GL.context.generateMipmap(target); -}; -lime_graphics_opengl_GL.getActiveAttrib = function(program,index) { - return lime_graphics_opengl_GL.context.getActiveAttrib(program,index); -}; -lime_graphics_opengl_GL.getActiveUniform = function(program,index) { - return lime_graphics_opengl_GL.context.getActiveUniform(program,index); -}; -lime_graphics_opengl_GL.getActiveUniformBlockName = function(program,uniformBlockIndex) { - return lime_graphics_opengl_GL.context.getActiveUniformBlockName(program,uniformBlockIndex); -}; -lime_graphics_opengl_GL.getActiveUniformBlockParameter = function(program,uniformBlockIndex,pname) { - return lime_graphics_opengl_GL.context.getActiveUniformBlockParameter(program,uniformBlockIndex,pname); -}; -lime_graphics_opengl_GL.getActiveUniforms = function(program,uniformIndices,pname) { - return lime_graphics_opengl_GL.context.getActiveUniforms(program,uniformIndices,pname); -}; -lime_graphics_opengl_GL.getAttachedShaders = function(program) { - return lime_graphics_opengl_GL.context.getAttachedShaders(program); -}; -lime_graphics_opengl_GL.getAttribLocation = function(program,name) { - return lime_graphics_opengl_GL.context.getAttribLocation(program,name); -}; -lime_graphics_opengl_GL.getBufferParameter = function(target,pname) { - return lime_graphics_opengl_GL.context.getBufferParameter(target,pname); -}; -lime_graphics_opengl_GL.getBufferSubDataWEBGL = function(target,srcByteOffset,dstData,srcOffset,length) { - var this1 = lime_graphics_opengl_GL.context; - if(srcOffset != null) { - this1.getBufferSubData(target,srcByteOffset,dstData,srcOffset,length); - } else { - this1.getBufferSubData(target,srcByteOffset,dstData); - } -}; -lime_graphics_opengl_GL.getContextAttributes = function() { - return lime_graphics_opengl_GL.context.getContextAttributes(); -}; -lime_graphics_opengl_GL.getError = function() { - return lime_graphics_opengl_GL.context.getError(); -}; -lime_graphics_opengl_GL.getExtension = function(name) { - return lime_graphics_opengl_GL.context.getExtension(name); -}; -lime_graphics_opengl_GL.getFragDataLocation = function(program,name) { - return lime_graphics_opengl_GL.context.getFragDataLocation(program,name); -}; -lime_graphics_opengl_GL.getFramebufferAttachmentParameter = function(target,attachment,pname) { - return lime_graphics_opengl_GL.context.getFramebufferAttachmentParameter(target,attachment,pname); -}; -lime_graphics_opengl_GL.getIndexedParameter = function(target,index) { - return lime_graphics_opengl_GL.context.getIndexedParameter(target,index); -}; -lime_graphics_opengl_GL.getInternalformatParameter = function(target,internalformat,pname) { - return lime_graphics_opengl_GL.context.getInternalformatParameter(target,internalformat,pname); -}; -lime_graphics_opengl_GL.getParameter = function(pname) { - return lime_graphics_opengl_GL.context.getParameter(pname); -}; -lime_graphics_opengl_GL.getProgramInfoLog = function(program) { - return lime_graphics_opengl_GL.context.getProgramInfoLog(program); -}; -lime_graphics_opengl_GL.getProgramParameter = function(program,pname) { - return lime_graphics_opengl_GL.context.getProgramParameter(program,pname); -}; -lime_graphics_opengl_GL.getQuery = function(target,pname) { - return lime_graphics_opengl_GL.context.getQuery(target,pname); -}; -lime_graphics_opengl_GL.getQueryParameter = function(query,pname) { - return lime_graphics_opengl_GL.context.getQueryParameter(query,pname); -}; -lime_graphics_opengl_GL.getRenderbufferParameter = function(target,pname) { - return lime_graphics_opengl_GL.context.getRenderbufferParameter(target,pname); -}; -lime_graphics_opengl_GL.getSamplerParameter = function(sampler,pname) { - return lime_graphics_opengl_GL.context.getSamplerParameter(sampler,pname); -}; -lime_graphics_opengl_GL.getShaderInfoLog = function(shader) { - return lime_graphics_opengl_GL.context.getShaderInfoLog(shader); -}; -lime_graphics_opengl_GL.getShaderParameter = function(shader,pname) { - return lime_graphics_opengl_GL.context.getShaderParameter(shader,pname); -}; -lime_graphics_opengl_GL.getShaderPrecisionFormat = function(shadertype,precisiontype) { - return lime_graphics_opengl_GL.context.getShaderPrecisionFormat(shadertype,precisiontype); -}; -lime_graphics_opengl_GL.getShaderSource = function(shader) { - return lime_graphics_opengl_GL.context.getShaderSource(shader); -}; -lime_graphics_opengl_GL.getSupportedExtensions = function() { - return lime_graphics_opengl_GL.context.getSupportedExtensions(); -}; -lime_graphics_opengl_GL.getSyncParameter = function(sync,pname) { - return lime_graphics_opengl_GL.context.getSyncParameter(sync,pname); -}; -lime_graphics_opengl_GL.getTexParameter = function(target,pname) { - return lime_graphics_opengl_GL.context.getTexParameter(target,pname); -}; -lime_graphics_opengl_GL.getTransformFeedbackVarying = function(program,index) { - return lime_graphics_opengl_GL.context.getTransformFeedbackVarying(program,index); -}; -lime_graphics_opengl_GL.getUniform = function(program,location) { - return lime_graphics_opengl_GL.context.getUniform(program,location); -}; -lime_graphics_opengl_GL.getUniformBlockIndex = function(program,uniformBlockName) { - return lime_graphics_opengl_GL.context.getUniformBlockIndex(program,uniformBlockName); -}; -lime_graphics_opengl_GL.getUniformIndices = function(program,uniformNames) { - return lime_graphics_opengl_GL.context.getUniformIndices(program,uniformNames); -}; -lime_graphics_opengl_GL.getUniformLocation = function(program,name) { - return lime_graphics_opengl_GL.context.getUniformLocation(program,name); -}; -lime_graphics_opengl_GL.getVertexAttrib = function(index,pname) { - return lime_graphics_opengl_GL.context.getVertexAttrib(index,pname); -}; -lime_graphics_opengl_GL.getVertexAttribOffset = function(index,pname) { - return lime_utils__$DataPointer_DataPointer_$Impl_$.fromFloat(lime_graphics_opengl_GL.context.getVertexAttribOffset(index,pname)); -}; -lime_graphics_opengl_GL.hint = function(target,mode) { - lime_graphics_opengl_GL.context.hint(target,mode); -}; -lime_graphics_opengl_GL.invalidateFramebuffer = function(target,attachments) { - lime_graphics_opengl_GL.context.invalidateFramebuffer(target,attachments); -}; -lime_graphics_opengl_GL.invalidateSubFramebuffer = function(target,attachments,x,y,width,height) { - lime_graphics_opengl_GL.context.invalidateSubFramebuffer(target,attachments,x,y,width,height); -}; -lime_graphics_opengl_GL.isBuffer = function(buffer) { - return lime_graphics_opengl_GL.context.isBuffer(buffer); -}; -lime_graphics_opengl_GL.isContextLost = function() { - return lime_graphics_opengl_GL.context.isContextLost(); -}; -lime_graphics_opengl_GL.isEnabled = function(cap) { - return lime_graphics_opengl_GL.context.isEnabled(cap); -}; -lime_graphics_opengl_GL.isFramebuffer = function(framebuffer) { - return lime_graphics_opengl_GL.context.isFramebuffer(framebuffer); -}; -lime_graphics_opengl_GL.isProgram = function(program) { - return lime_graphics_opengl_GL.context.isProgram(program); -}; -lime_graphics_opengl_GL.isQuery = function(query) { - return lime_graphics_opengl_GL.context.isQuery(query); -}; -lime_graphics_opengl_GL.isRenderbuffer = function(renderbuffer) { - return lime_graphics_opengl_GL.context.isRenderbuffer(renderbuffer); -}; -lime_graphics_opengl_GL.isSampler = function(sampler) { - return lime_graphics_opengl_GL.context.isSampler(sampler); -}; -lime_graphics_opengl_GL.isShader = function(shader) { - return lime_graphics_opengl_GL.context.isShader(shader); -}; -lime_graphics_opengl_GL.isSync = function(sync) { - return lime_graphics_opengl_GL.context.isSync(sync); -}; -lime_graphics_opengl_GL.isTexture = function(texture) { - return lime_graphics_opengl_GL.context.isTexture(texture); -}; -lime_graphics_opengl_GL.isTransformFeedback = function(transformFeedback) { - return lime_graphics_opengl_GL.context.isTransformFeedback(transformFeedback); -}; -lime_graphics_opengl_GL.isVertexArray = function(vertexArray) { - return lime_graphics_opengl_GL.context.isVertexArray(vertexArray); -}; -lime_graphics_opengl_GL.lineWidth = function(width) { - lime_graphics_opengl_GL.context.lineWidth(width); -}; -lime_graphics_opengl_GL.linkProgram = function(program) { - lime_graphics_opengl_GL.context.linkProgram(program); -}; -lime_graphics_opengl_GL.pauseTransformFeedback = function() { - lime_graphics_opengl_GL.context.pauseTransformFeedback(); -}; -lime_graphics_opengl_GL.pixelStorei = function(pname,param) { - lime_graphics_opengl_GL.context.pixelStorei(pname,param); -}; -lime_graphics_opengl_GL.polygonOffset = function(factor,units) { - lime_graphics_opengl_GL.context.polygonOffset(factor,units); -}; -lime_graphics_opengl_GL.readBuffer = function(src) { - lime_graphics_opengl_GL.context.readBuffer(src); -}; -lime_graphics_opengl_GL.readPixelsWEBGL = function(x,y,width,height,format,type,pixels,dstOffset) { - var this1 = lime_graphics_opengl_GL.context; - if(dstOffset != null) { - this1.readPixels(x,y,width,height,format,type,pixels,dstOffset); - } else { - this1.readPixels(x,y,width,height,format,type,pixels); - } -}; -lime_graphics_opengl_GL.renderbufferStorage = function(target,internalformat,width,height) { - lime_graphics_opengl_GL.context.renderbufferStorage(target,internalformat,width,height); -}; -lime_graphics_opengl_GL.renderbufferStorageMultisample = function(target,samples,internalformat,width,height) { - lime_graphics_opengl_GL.context.renderbufferStorageMultisample(target,samples,internalformat,width,height); -}; -lime_graphics_opengl_GL.resumeTransformFeedback = function() { - lime_graphics_opengl_GL.context.resumeTransformFeedback(); -}; -lime_graphics_opengl_GL.sampleCoverage = function(value,invert) { - lime_graphics_opengl_GL.context.sampleCoverage(value,invert); -}; -lime_graphics_opengl_GL.samplerParameterf = function(sampler,pname,param) { - lime_graphics_opengl_GL.context.samplerParameterf(sampler,pname,param); -}; -lime_graphics_opengl_GL.samplerParameteri = function(sampler,pname,param) { - lime_graphics_opengl_GL.context.samplerParameteri(sampler,pname,param); -}; -lime_graphics_opengl_GL.scissor = function(x,y,width,height) { - lime_graphics_opengl_GL.context.scissor(x,y,width,height); -}; -lime_graphics_opengl_GL.shaderSource = function(shader,source) { - lime_graphics_opengl_GL.context.shaderSource(shader,source); -}; -lime_graphics_opengl_GL.stencilFunc = function(func,ref,mask) { - lime_graphics_opengl_GL.context.stencilFunc(func,ref,mask); -}; -lime_graphics_opengl_GL.stencilFuncSeparate = function(face,func,ref,mask) { - lime_graphics_opengl_GL.context.stencilFuncSeparate(face,func,ref,mask); -}; -lime_graphics_opengl_GL.stencilMask = function(mask) { - lime_graphics_opengl_GL.context.stencilMask(mask); -}; -lime_graphics_opengl_GL.stencilMaskSeparate = function(face,mask) { - lime_graphics_opengl_GL.context.stencilMaskSeparate(face,mask); -}; -lime_graphics_opengl_GL.stencilOp = function(fail,zfail,zpass) { - lime_graphics_opengl_GL.context.stencilOp(fail,zfail,zpass); -}; -lime_graphics_opengl_GL.stencilOpSeparate = function(face,fail,zfail,zpass) { - lime_graphics_opengl_GL.context.stencilOpSeparate(face,fail,zfail,zpass); -}; -lime_graphics_opengl_GL.texImage2DWEBGL = function(target,level,internalformat,width,height,border,format,type,srcData,srcOffset) { - var this1 = lime_graphics_opengl_GL.context; - if(srcOffset != null) { - this1.texImage2D(target,level,internalformat,width,height,border,format,type,srcData,srcOffset); - } else if(format != null) { - this1.texImage2D(target,level,internalformat,width,height,border,format,type,srcData); - } else { - this1.texImage2D(target,level,internalformat,width,height,border); - } -}; -lime_graphics_opengl_GL.texImage3DWEBGL = function(target,level,internalformat,width,height,depth,border,format,type,srcData,srcOffset) { - lime_graphics_opengl_GL.context.texImage3D(target,level,internalformat,width,height,depth,border,format,type,srcData,srcOffset); -}; -lime_graphics_opengl_GL.texStorage2D = function(target,level,internalformat,width,height) { - lime_graphics_opengl_GL.context.texStorage2D(target,level,internalformat,width,height); -}; -lime_graphics_opengl_GL.texStorage3D = function(target,level,internalformat,width,height,depth) { - lime_graphics_opengl_GL.context.texStorage3D(target,level,internalformat,width,height,depth); -}; -lime_graphics_opengl_GL.texParameterf = function(target,pname,param) { - lime_graphics_opengl_GL.context.texParameterf(target,pname,param); -}; -lime_graphics_opengl_GL.texParameteri = function(target,pname,param) { - lime_graphics_opengl_GL.context.texParameteri(target,pname,param); -}; -lime_graphics_opengl_GL.texSubImage2DWEBGL = function(target,level,xoffset,yoffset,width,height,format,type,srcData,srcOffset) { - var this1 = lime_graphics_opengl_GL.context; - if(srcOffset != null) { - this1.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,srcData,srcOffset); - } else if(type != null) { - this1.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,srcData); - } else { - this1.texSubImage2D(target,level,xoffset,yoffset,width,height,format); - } -}; -lime_graphics_opengl_GL.texSubImage3DWEBGL = function(target,level,xoffset,yoffset,zoffset,width,height,depth,format,type,source,srcOffset) { - lime_graphics_opengl_GL.context.texSubImage3D(target,level,xoffset,yoffset,zoffset,width,height,depth,format,type,source,srcOffset); -}; -lime_graphics_opengl_GL.transformFeedbackVaryings = function(program,varyings,bufferMode) { - lime_graphics_opengl_GL.context.transformFeedbackVaryings(program,varyings,bufferMode); -}; -lime_graphics_opengl_GL.uniform1f = function(location,v0) { - lime_graphics_opengl_GL.context.uniform1f(location,v0); -}; -lime_graphics_opengl_GL.uniform1fvWEBGL = function(location,data,srcOffset,srcLength) { - var this1 = lime_graphics_opengl_GL.context; - if(srcOffset != null) { - this1.uniform1fv(location,data,srcOffset,srcLength); - } else { - this1.uniform1fv(location,data); - } -}; -lime_graphics_opengl_GL.uniform1i = function(location,v0) { - lime_graphics_opengl_GL.context.uniform1i(location,v0); -}; -lime_graphics_opengl_GL.uniform1ivWEBGL = function(location,data,srcOffset,srcLength) { - var this1 = lime_graphics_opengl_GL.context; - if(srcOffset != null) { - this1.uniform1iv(location,data,srcOffset,srcLength); - } else { - this1.uniform1iv(location,data); - } -}; -lime_graphics_opengl_GL.uniform1ui = function(location,v0) { - lime_graphics_opengl_GL.context.uniform1ui(location,v0); -}; -lime_graphics_opengl_GL.uniform1uivWEBGL = function(location,data,srcOffset,srcLength) { - lime_graphics_opengl_GL.context.uniform1uiv(location,data,srcOffset,srcLength); -}; -lime_graphics_opengl_GL.uniform2f = function(location,v0,v1) { - lime_graphics_opengl_GL.context.uniform2f(location,v0,v1); -}; -lime_graphics_opengl_GL.uniform2fvWEBGL = function(location,data,srcOffset,srcLength) { - lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.uniform2fv(lime_graphics_opengl_GL.context,location,data,srcOffset,srcLength); -}; -lime_graphics_opengl_GL.uniform2i = function(location,x,y) { - lime_graphics_opengl_GL.context.uniform2i(location,x,y); -}; -lime_graphics_opengl_GL.uniform2ivWEBGL = function(location,data,srcOffset,srcLength) { - var this1 = lime_graphics_opengl_GL.context; - if(srcOffset != null) { - this1.uniform2iv(location,data,srcOffset,srcLength); - } else { - this1.uniform2iv(location,data); - } -}; -lime_graphics_opengl_GL.uniform2ui = function(location,x,y) { - lime_graphics_opengl_GL.context.uniform2ui(location,x,y); -}; -lime_graphics_opengl_GL.uniform2uivWEBGL = function(location,data,srcOffset,srcLength) { - lime_graphics_opengl_GL.context.uniform2uiv(location,data,srcOffset,srcLength); -}; -lime_graphics_opengl_GL.uniform3f = function(location,v0,v1,v2) { - lime_graphics_opengl_GL.context.uniform3f(location,v0,v1,v2); -}; -lime_graphics_opengl_GL.uniform3fvWEBGL = function(location,data,srcOffset,srcLength) { - var this1 = lime_graphics_opengl_GL.context; - if(srcOffset != null) { - this1.uniform3fv(location,data,srcOffset,srcLength); - } else { - this1.uniform3fv(location,data); - } -}; -lime_graphics_opengl_GL.uniform3i = function(location,v0,v1,v2) { - lime_graphics_opengl_GL.context.uniform3i(location,v0,v1,v2); -}; -lime_graphics_opengl_GL.uniform3ivWEBGL = function(location,data,srcOffset,srcLength) { - var this1 = lime_graphics_opengl_GL.context; - if(srcOffset != null) { - this1.uniform3iv(location,data,srcOffset,srcLength); - } else { - this1.uniform3iv(location,data); - } -}; -lime_graphics_opengl_GL.uniform3ui = function(location,v0,v1,v2) { - lime_graphics_opengl_GL.context.uniform3ui(location,v0,v1,v2); -}; -lime_graphics_opengl_GL.uniform3uivWEBGL = function(location,data,srcOffset,srcLength) { - lime_graphics_opengl_GL.context.uniform3uiv(location,data,srcOffset,srcLength); -}; -lime_graphics_opengl_GL.uniform4f = function(location,v0,v1,v2,v3) { - lime_graphics_opengl_GL.context.uniform4f(location,v0,v1,v2,v3); -}; -lime_graphics_opengl_GL.uniform4fvWEBGL = function(location,data,srcOffset,srcLength) { - var this1 = lime_graphics_opengl_GL.context; - if(srcOffset != null) { - this1.uniform4fv(location,data,srcOffset,srcLength); - } else { - this1.uniform4fv(location,data); - } -}; -lime_graphics_opengl_GL.uniform4i = function(location,v0,v1,v2,v3) { - lime_graphics_opengl_GL.context.uniform4i(location,v0,v1,v2,v3); -}; -lime_graphics_opengl_GL.uniform4ivWEBGL = function(location,data,srcOffset,srcLength) { - var this1 = lime_graphics_opengl_GL.context; - if(srcOffset != null) { - this1.uniform4iv(location,data,srcOffset,srcLength); - } else { - this1.uniform4iv(location,data); - } -}; -lime_graphics_opengl_GL.uniform4ui = function(location,v0,v1,v2,v3) { - lime_graphics_opengl_GL.context.uniform4ui(location,v0,v1,v2,v3); -}; -lime_graphics_opengl_GL.uniform4uivWEBGL = function(location,data,srcOffset,srcLength) { - lime_graphics_opengl_GL.context.uniform4uiv(location,data,srcOffset,srcLength); -}; -lime_graphics_opengl_GL.uniformBlockBinding = function(program,uniformBlockIndex,uniformBlockBinding) { - lime_graphics_opengl_GL.context.uniformBlockBinding(program,uniformBlockIndex,uniformBlockBinding); -}; -lime_graphics_opengl_GL.uniformMatrix2fvWEBGL = function(location,transpose,v,srcOffset,srcLength) { - var this1 = lime_graphics_opengl_GL.context; - if(srcOffset != null) { - this1.uniformMatrix2fv(location,transpose,v,srcOffset,srcLength); - } else { - this1.uniformMatrix2fv(location,transpose,v); - } -}; -lime_graphics_opengl_GL.uniformMatrix2x3fvWEBGL = function(location,transpose,v,srcOffset,srcLength) { - lime_graphics_opengl_GL.context.uniformMatrix2x3fv(location,transpose,v,srcOffset,srcLength); -}; -lime_graphics_opengl_GL.uniformMatrix2x4fvWEBGL = function(location,transpose,v,srcOffset,srcLength) { - lime_graphics_opengl_GL.context.uniformMatrix2x4fv(location,transpose,v,srcOffset,srcLength); -}; -lime_graphics_opengl_GL.uniformMatrix3fvWEBGL = function(location,transpose,v,srcOffset,srcLength) { - var this1 = lime_graphics_opengl_GL.context; - if(srcOffset != null) { - this1.uniformMatrix3fv(location,transpose,v,srcOffset,srcLength); - } else { - this1.uniformMatrix3fv(location,transpose,v); - } -}; -lime_graphics_opengl_GL.uniformMatrix3x2fvWEBGL = function(location,transpose,v,srcOffset,srcLength) { - lime_graphics_opengl_GL.context.uniformMatrix3x2fv(location,transpose,v,srcOffset,srcLength); -}; -lime_graphics_opengl_GL.uniformMatrix3x4fvWEBGL = function(location,transpose,v,srcOffset,srcLength) { - lime_graphics_opengl_GL.context.uniformMatrix3x4fv(location,transpose,v,srcOffset,srcLength); -}; -lime_graphics_opengl_GL.uniformMatrix4fvWEBGL = function(location,transpose,v,srcOffset,srcLength) { - var this1 = lime_graphics_opengl_GL.context; - if(srcOffset != null) { - this1.uniformMatrix4fv(location,transpose,v,srcOffset,srcLength); - } else { - this1.uniformMatrix4fv(location,transpose,v); - } -}; -lime_graphics_opengl_GL.uniformMatrix4x2fvWEBGL = function(location,transpose,v,srcOffset,srcLength) { - lime_graphics_opengl_GL.context.uniformMatrix4x2fv(location,transpose,v,srcOffset,srcLength); -}; -lime_graphics_opengl_GL.uniformMatrix4x3fvWEBGL = function(location,transpose,v,srcOffset,srcLength) { - lime_graphics_opengl_GL.context.uniformMatrix4x3fv(location,transpose,v,srcOffset,srcLength); -}; -lime_graphics_opengl_GL.useProgram = function(program) { - lime_graphics_opengl_GL.context.useProgram(program); -}; -lime_graphics_opengl_GL.validateProgram = function(program) { - lime_graphics_opengl_GL.context.validateProgram(program); -}; -lime_graphics_opengl_GL.vertexAttrib1f = function(index,v0) { - lime_graphics_opengl_GL.context.vertexAttrib1f(index,v0); -}; -lime_graphics_opengl_GL.vertexAttrib1fv = function(index,v) { - lime_graphics_opengl_GL.context.vertexAttrib1fv(index,v); -}; -lime_graphics_opengl_GL.vertexAttrib1fvWEBGL = function(index,v) { - lime_graphics_opengl_GL.context.vertexAttrib1fv(index,v); -}; -lime_graphics_opengl_GL.vertexAttrib2f = function(index,v0,v1) { - lime_graphics_opengl_GL.context.vertexAttrib2f(index,v0,v1); -}; -lime_graphics_opengl_GL.vertexAttrib2fv = function(index,v) { - lime_graphics_opengl_GL.context.vertexAttrib2fv(index,v); -}; -lime_graphics_opengl_GL.vertexAttrib2fvWEBGL = function(index,v) { - lime_graphics_opengl_GL.context.vertexAttrib2fv(index,v); -}; -lime_graphics_opengl_GL.vertexAttrib3f = function(index,v0,v1,v2) { - lime_graphics_opengl_GL.context.vertexAttrib3f(index,v0,v1,v2); -}; -lime_graphics_opengl_GL.vertexAttrib3fv = function(index,v) { - lime_graphics_opengl_GL.context.vertexAttrib3fv(index,v); -}; -lime_graphics_opengl_GL.vertexAttrib3fvWEBGL = function(index,v) { - lime_graphics_opengl_GL.context.vertexAttrib3fv(index,v); -}; -lime_graphics_opengl_GL.vertexAttrib4f = function(index,v0,v1,v2,v3) { - lime_graphics_opengl_GL.context.vertexAttrib4f(index,v0,v1,v2,v3); -}; -lime_graphics_opengl_GL.vertexAttrib4fv = function(index,v) { - lime_graphics_opengl_GL.context.vertexAttrib4fv(index,v); -}; -lime_graphics_opengl_GL.vertexAttrib4fvWEBGL = function(index,v) { - lime_graphics_opengl_GL.context.vertexAttrib4fv(index,v); -}; -lime_graphics_opengl_GL.vertexAttribDivisor = function(index,divisor) { - lime_graphics_opengl_GL.context.vertexAttribDivisor(index,divisor); -}; -lime_graphics_opengl_GL.vertexAttribI4i = function(index,v0,v1,v2,v3) { - lime_graphics_opengl_GL.context.vertexAttribI4i(index,v0,v1,v2,v3); -}; -lime_graphics_opengl_GL.vertexAttribI4iv = function(index,v) { - lime_graphics_opengl_GL.context.vertexAttribI4iv(index,v); -}; -lime_graphics_opengl_GL.vertexAttribI4ivWEBGL = function(index,v) { - lime_graphics_opengl_GL.context.vertexAttribI4iv(index,v); -}; -lime_graphics_opengl_GL.vertexAttribI4ui = function(index,v0,v1,v2,v3) { - lime_graphics_opengl_GL.context.vertexAttribI4ui(index,v0,v1,v2,v3); -}; -lime_graphics_opengl_GL.vertexAttribI4uiv = function(index,v) { - lime_graphics_opengl_GL.context.vertexAttribI4uiv(index,v); -}; -lime_graphics_opengl_GL.vertexAttribI4uivWEBGL = function(index,v) { - lime_graphics_opengl_GL.context.vertexAttribI4uiv(index,v); -}; -lime_graphics_opengl_GL.vertexAttribIPointer = function(index,size,type,stride,offset) { - lime_graphics_opengl_GL.context.vertexAttribIPointer(index,size,type,stride,offset); -}; -lime_graphics_opengl_GL.vertexAttribPointer = function(index,size,type,normalized,stride,offset) { - lime_graphics_opengl_GL.context.vertexAttribPointer(index,size,type,normalized,stride,offset); -}; -lime_graphics_opengl_GL.viewport = function(x,y,width,height) { - lime_graphics_opengl_GL.context.viewport(x,y,width,height); -}; -lime_graphics_opengl_GL.waitSync = function(sync,flags,timeout) { - lime_graphics_opengl_GL.context.waitSync(sync,flags,timeout); -}; -lime_graphics_opengl_GL.__getObjectID = function(object) { - if(object == null) { - return 0; - } else { - return object.id; - } -}; -var lime_graphics_opengl__$GLProgram_GLProgram_$Impl_$ = {}; -$hxClasses["lime.graphics.opengl._GLProgram.GLProgram_Impl_"] = lime_graphics_opengl__$GLProgram_GLProgram_$Impl_$; -lime_graphics_opengl__$GLProgram_GLProgram_$Impl_$.__name__ = "lime.graphics.opengl._GLProgram.GLProgram_Impl_"; -lime_graphics_opengl__$GLProgram_GLProgram_$Impl_$.fromSources = function(gl,vertexSource,fragmentSource) { - var vertexShader = lime_graphics_opengl__$GLShader_GLShader_$Impl_$.fromSource(gl,vertexSource,gl.VERTEX_SHADER); - var fragmentShader = lime_graphics_opengl__$GLShader_GLShader_$Impl_$.fromSource(gl,fragmentSource,gl.FRAGMENT_SHADER); - var program = gl.createProgram(); - gl.attachShader(program,vertexShader); - gl.attachShader(program,fragmentShader); - gl.linkProgram(program); - if(gl.getProgramParameter(program,35714) == 0) { - var message = "Unable to initialize the shader program"; - message += "\n" + lime_graphics_opengl_GL.context.getProgramInfoLog(program); - lime_utils_Log.error(message,{ fileName : "lime/graphics/opengl/GLProgram.hx", lineNumber : 39, className : "lime.graphics.opengl._GLProgram.GLProgram_Impl_", methodName : "fromSources"}); - } - return program; -}; -var lime_graphics_opengl__$GLShader_GLShader_$Impl_$ = {}; -$hxClasses["lime.graphics.opengl._GLShader.GLShader_Impl_"] = lime_graphics_opengl__$GLShader_GLShader_$Impl_$; -lime_graphics_opengl__$GLShader_GLShader_$Impl_$.__name__ = "lime.graphics.opengl._GLShader.GLShader_Impl_"; -lime_graphics_opengl__$GLShader_GLShader_$Impl_$.fromSource = function(gl,source,type) { - var shader = gl.createShader(type); - gl.shaderSource(shader,source); - gl.compileShader(shader); - if(gl.getShaderParameter(shader,gl.COMPILE_STATUS) == 0) { - var message; - if(type == gl.VERTEX_SHADER) { - message = "Error compiling vertex shader"; - } else if(type == gl.FRAGMENT_SHADER) { - message = "Error compiling fragment shader"; - } else { - message = "Error compiling unknown shader type"; - } - message += "\n" + gl.getShaderInfoLog(shader); - lime_utils_Log.error(message,{ fileName : "lime/graphics/opengl/GLShader.hx", lineNumber : 40, className : "lime.graphics.opengl._GLShader.GLShader_Impl_", methodName : "fromSource"}); - } - return shader; -}; -var lime_graphics_opengl_ext_KHR_$debug = function() { - this.STACK_UNDERFLOW = 1284; - this.STACK_OVERFLOW = 1283; - this.CONTEXT_FLAG_DEBUG_BIT = 2; - this.DEBUG_OUTPUT = 37600; - this.DEBUG_SEVERITY_LOW = 37192; - this.DEBUG_SEVERITY_MEDIUM = 37191; - this.DEBUG_SEVERITY_HIGH = 37190; - this.DEBUG_LOGGED_MESSAGES = 37189; - this.MAX_DEBUG_LOGGED_MESSAGES = 37188; - this.MAX_DEBUG_MESSAGE_LENGTH = 37187; - this.MAX_LABEL_LENGTH = 33512; - this.SAMPLER = 33510; - this.QUERY = 33507; - this.PROGRAM = 33506; - this.SHADER = 33505; - this.BUFFER = 33504; - this.DEBUG_GROUP_STACK_DEPTH = 33389; - this.MAX_DEBUG_GROUP_STACK_DEPTH = 33388; - this.DEBUG_SEVERITY_NOTIFICATION = 33387; - this.DEBUG_TYPE_POP_GROUP = 33386; - this.DEBUG_TYPE_PUSH_GROUP = 33385; - this.DEBUG_TYPE_MARKER = 33384; - this.DEBUG_TYPE_OTHER = 33361; - this.DEBUG_TYPE_PERFORMANCE = 33360; - this.DEBUG_TYPE_PORTABILITY = 33359; - this.DEBUG_TYPE_UNDEFINED_BEHAVIOR = 33358; - this.DEBUG_TYPE_DEPRECATED_BEHAVIOR = 33357; - this.DEBUG_TYPE_ERROR = 33356; - this.DEBUG_SOURCE_OTHER = 33355; - this.DEBUG_SOURCE_APPLICATION = 33354; - this.DEBUG_SOURCE_THIRD_PARTY = 33353; - this.DEBUG_SOURCE_SHADER_COMPILER = 33352; - this.DEBUG_SOURCE_WINDOW_SYSTEM = 33351; - this.DEBUG_SOURCE_API = 33350; - this.DEBUG_CALLBACK_USER_PARAM = 33349; - this.DEBUG_CALLBACK_FUNCTION = 33348; - this.DEBUG_NEXT_LOGGED_MESSAGE_LENGTH = 33347; - this.DEBUG_OUTPUT_SYNCHRONOUS = 33346; -}; -$hxClasses["lime.graphics.opengl.ext.KHR_debug"] = lime_graphics_opengl_ext_KHR_$debug; -lime_graphics_opengl_ext_KHR_$debug.__name__ = "lime.graphics.opengl.ext.KHR_debug"; -lime_graphics_opengl_ext_KHR_$debug.prototype = { - DEBUG_OUTPUT_SYNCHRONOUS: null - ,DEBUG_NEXT_LOGGED_MESSAGE_LENGTH: null - ,DEBUG_CALLBACK_FUNCTION: null - ,DEBUG_CALLBACK_USER_PARAM: null - ,DEBUG_SOURCE_API: null - ,DEBUG_SOURCE_WINDOW_SYSTEM: null - ,DEBUG_SOURCE_SHADER_COMPILER: null - ,DEBUG_SOURCE_THIRD_PARTY: null - ,DEBUG_SOURCE_APPLICATION: null - ,DEBUG_SOURCE_OTHER: null - ,DEBUG_TYPE_ERROR: null - ,DEBUG_TYPE_DEPRECATED_BEHAVIOR: null - ,DEBUG_TYPE_UNDEFINED_BEHAVIOR: null - ,DEBUG_TYPE_PORTABILITY: null - ,DEBUG_TYPE_PERFORMANCE: null - ,DEBUG_TYPE_OTHER: null - ,DEBUG_TYPE_MARKER: null - ,DEBUG_TYPE_PUSH_GROUP: null - ,DEBUG_TYPE_POP_GROUP: null - ,DEBUG_SEVERITY_NOTIFICATION: null - ,MAX_DEBUG_GROUP_STACK_DEPTH: null - ,DEBUG_GROUP_STACK_DEPTH: null - ,BUFFER: null - ,SHADER: null - ,PROGRAM: null - ,QUERY: null - ,SAMPLER: null - ,MAX_LABEL_LENGTH: null - ,MAX_DEBUG_MESSAGE_LENGTH: null - ,MAX_DEBUG_LOGGED_MESSAGES: null - ,DEBUG_LOGGED_MESSAGES: null - ,DEBUG_SEVERITY_HIGH: null - ,DEBUG_SEVERITY_MEDIUM: null - ,DEBUG_SEVERITY_LOW: null - ,DEBUG_OUTPUT: null - ,CONTEXT_FLAG_DEBUG_BIT: null - ,STACK_OVERFLOW: null - ,STACK_UNDERFLOW: null - ,__class__: lime_graphics_opengl_ext_KHR_$debug -}; -var lime_math__$ARGB_ARGB_$Impl_$ = {}; -$hxClasses["lime.math._ARGB.ARGB_Impl_"] = lime_math__$ARGB_ARGB_$Impl_$; -lime_math__$ARGB_ARGB_$Impl_$.__name__ = "lime.math._ARGB.ARGB_Impl_"; -lime_math__$ARGB_ARGB_$Impl_$.__properties__ = {set_r:"set_r",get_r:"get_r",set_g:"set_g",get_g:"get_g",set_b:"set_b",get_b:"get_b",set_a:"set_a",get_a:"get_a"}; -lime_math__$ARGB_ARGB_$Impl_$.a16 = null; -lime_math__$ARGB_ARGB_$Impl_$.unmult = null; -lime_math__$ARGB_ARGB_$Impl_$._new = function(argb) { - if(argb == null) { - argb = 0; - } - var this1 = argb; - return this1; -}; -lime_math__$ARGB_ARGB_$Impl_$.create = function(a,r,g,b) { - var this1 = 0; - var argb = this1; - argb = (a & 255) << 24 | (r & 255) << 16 | (g & 255) << 8 | b & 255; - return argb; -}; -lime_math__$ARGB_ARGB_$Impl_$.multiplyAlpha = function(this1) { - if((this1 >>> 24 & 255) == 0) { - this1 = 0; - } else if((this1 >>> 24 & 255) != 255) { - lime_math__$ARGB_ARGB_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[this1 >>> 24 & 255]; - this1 = (this1 >>> 24 & 255 & 255) << 24 | ((this1 >>> 16 & 255) * lime_math__$ARGB_ARGB_$Impl_$.a16 >> 16 & 255) << 16 | ((this1 >>> 8 & 255) * lime_math__$ARGB_ARGB_$Impl_$.a16 >> 16 & 255) << 8 | (this1 & 255) * lime_math__$ARGB_ARGB_$Impl_$.a16 >> 16 & 255; - } -}; -lime_math__$ARGB_ARGB_$Impl_$.readUInt8 = function(this1,data,offset,format,premultiplied) { - if(premultiplied == null) { - premultiplied = false; - } - if(format == null) { - format = 0; - } - switch(format) { - case 0: - this1 = (data[offset + 1] & 255) << 24 | (data[offset + 2] & 255) << 16 | (data[offset + 3] & 255) << 8 | data[offset] & 255; - break; - case 1: - this1 = (data[offset + 2] & 255) << 24 | (data[offset + 3] & 255) << 16 | (data[offset] & 255) << 8 | data[offset + 1] & 255; - break; - case 2: - this1 = (data[offset + 1] & 255) << 24 | (data[offset] & 255) << 16 | (data[offset + 3] & 255) << 8 | data[offset + 2] & 255; - break; - } - if(premultiplied) { - if((this1 >>> 24 & 255) != 0 && (this1 >>> 24 & 255) != 255) { - lime_math__$ARGB_ARGB_$Impl_$.unmult = 255.0 / (this1 >>> 24 & 255); - this1 = (this1 >>> 24 & 255 & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.floor((this1 >>> 16 & 255) * lime_math__$ARGB_ARGB_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.floor((this1 >>> 8 & 255) * lime_math__$ARGB_ARGB_$Impl_$.unmult)] & 255) << 8 | lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.floor((this1 & 255) * lime_math__$ARGB_ARGB_$Impl_$.unmult)] & 255; - } - } -}; -lime_math__$ARGB_ARGB_$Impl_$.set = function(this1,a,r,g,b) { - this1 = (a & 255) << 24 | (r & 255) << 16 | (g & 255) << 8 | b & 255; -}; -lime_math__$ARGB_ARGB_$Impl_$.unmultiplyAlpha = function(this1) { - if((this1 >>> 24 & 255) != 0 && (this1 >>> 24 & 255) != 255) { - lime_math__$ARGB_ARGB_$Impl_$.unmult = 255.0 / (this1 >>> 24 & 255); - this1 = (this1 >>> 24 & 255 & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.floor((this1 >>> 16 & 255) * lime_math__$ARGB_ARGB_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.floor((this1 >>> 8 & 255) * lime_math__$ARGB_ARGB_$Impl_$.unmult)] & 255) << 8 | lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.floor((this1 & 255) * lime_math__$ARGB_ARGB_$Impl_$.unmult)] & 255; - } -}; -lime_math__$ARGB_ARGB_$Impl_$.writeUInt8 = function(this1,data,offset,format,premultiplied) { - if(premultiplied == null) { - premultiplied = false; - } - if(format == null) { - format = 0; - } - if(premultiplied) { - if((this1 >>> 24 & 255) == 0) { - this1 = 0; - } else if((this1 >>> 24 & 255) != 255) { - lime_math__$ARGB_ARGB_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[this1 >>> 24 & 255]; - this1 = (this1 >>> 24 & 255 & 255) << 24 | ((this1 >>> 16 & 255) * lime_math__$ARGB_ARGB_$Impl_$.a16 >> 16 & 255) << 16 | ((this1 >>> 8 & 255) * lime_math__$ARGB_ARGB_$Impl_$.a16 >> 16 & 255) << 8 | (this1 & 255) * lime_math__$ARGB_ARGB_$Impl_$.a16 >> 16 & 255; - } - } - switch(format) { - case 0: - data[offset] = this1 >>> 16 & 255; - data[offset + 1] = this1 >>> 8 & 255; - data[offset + 2] = this1 & 255; - data[offset + 3] = this1 >>> 24 & 255; - break; - case 1: - data[offset] = this1 >>> 24 & 255; - data[offset + 1] = this1 >>> 16 & 255; - data[offset + 2] = this1 >>> 8 & 255; - data[offset + 3] = this1 & 255; - break; - case 2: - data[offset] = this1 & 255; - data[offset + 1] = this1 >>> 8 & 255; - data[offset + 2] = this1 >>> 16 & 255; - data[offset + 3] = this1 >>> 24 & 255; - break; - } -}; -lime_math__$ARGB_ARGB_$Impl_$.__fromBGRA = function(bgra) { - var this1 = 0; - var argb = this1; - argb = (bgra & 255 & 255) << 24 | (bgra >>> 8 & 255 & 255) << 16 | (bgra >>> 16 & 255 & 255) << 8 | bgra >>> 24 & 255 & 255; - return argb; -}; -lime_math__$ARGB_ARGB_$Impl_$.__fromRGBA = function(rgba) { - var this1 = 0; - var argb = this1; - argb = (rgba & 255 & 255) << 24 | (rgba >>> 24 & 255 & 255) << 16 | (rgba >>> 16 & 255 & 255) << 8 | rgba >>> 8 & 255 & 255; - return argb; -}; -lime_math__$ARGB_ARGB_$Impl_$.get_a = function(this1) { - return this1 >>> 24 & 255; -}; -lime_math__$ARGB_ARGB_$Impl_$.set_a = function(this1,value) { - this1 = (value & 255) << 24 | (this1 >>> 16 & 255 & 255) << 16 | (this1 >>> 8 & 255 & 255) << 8 | this1 & 255 & 255; - return value; -}; -lime_math__$ARGB_ARGB_$Impl_$.get_b = function(this1) { - return this1 & 255; -}; -lime_math__$ARGB_ARGB_$Impl_$.set_b = function(this1,value) { - this1 = (this1 >>> 24 & 255 & 255) << 24 | (this1 >>> 16 & 255 & 255) << 16 | (this1 >>> 8 & 255 & 255) << 8 | value & 255; - return value; -}; -lime_math__$ARGB_ARGB_$Impl_$.get_g = function(this1) { - return this1 >>> 8 & 255; -}; -lime_math__$ARGB_ARGB_$Impl_$.set_g = function(this1,value) { - this1 = (this1 >>> 24 & 255 & 255) << 24 | (this1 >>> 16 & 255 & 255) << 16 | (value & 255) << 8 | this1 & 255 & 255; - return value; -}; -lime_math__$ARGB_ARGB_$Impl_$.get_r = function(this1) { - return this1 >>> 16 & 255; -}; -lime_math__$ARGB_ARGB_$Impl_$.set_r = function(this1,value) { - this1 = (this1 >>> 24 & 255 & 255) << 24 | (value & 255) << 16 | (this1 >>> 8 & 255 & 255) << 8 | this1 & 255 & 255; - return value; -}; -var lime_math__$BGRA_BGRA_$Impl_$ = {}; -$hxClasses["lime.math._BGRA.BGRA_Impl_"] = lime_math__$BGRA_BGRA_$Impl_$; -lime_math__$BGRA_BGRA_$Impl_$.__name__ = "lime.math._BGRA.BGRA_Impl_"; -lime_math__$BGRA_BGRA_$Impl_$.__properties__ = {set_r:"set_r",get_r:"get_r",set_g:"set_g",get_g:"get_g",set_b:"set_b",get_b:"get_b",set_a:"set_a",get_a:"get_a"}; -lime_math__$BGRA_BGRA_$Impl_$.a16 = null; -lime_math__$BGRA_BGRA_$Impl_$.unmult = null; -lime_math__$BGRA_BGRA_$Impl_$._new = function(bgra) { - if(bgra == null) { - bgra = 0; - } - var this1 = bgra; - return this1; -}; -lime_math__$BGRA_BGRA_$Impl_$.create = function(b,g,r,a) { - var this1 = 0; - var bgra = this1; - bgra = (b & 255) << 24 | (g & 255) << 16 | (r & 255) << 8 | a & 255; - return bgra; -}; -lime_math__$BGRA_BGRA_$Impl_$.multiplyAlpha = function(this1) { - if((this1 & 255) == 0) { - this1 = 0; - } else if((this1 & 255) != 255) { - lime_math__$BGRA_BGRA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[this1 & 255]; - this1 = ((this1 >>> 24 & 255) * lime_math__$BGRA_BGRA_$Impl_$.a16 >> 16 & 255) << 24 | ((this1 >>> 16 & 255) * lime_math__$BGRA_BGRA_$Impl_$.a16 >> 16 & 255) << 16 | ((this1 >>> 8 & 255) * lime_math__$BGRA_BGRA_$Impl_$.a16 >> 16 & 255) << 8 | this1 & 255 & 255; - } -}; -lime_math__$BGRA_BGRA_$Impl_$.readUInt8 = function(this1,data,offset,format,premultiplied) { - if(premultiplied == null) { - premultiplied = false; - } - if(format == null) { - format = 0; - } - switch(format) { - case 0: - this1 = (data[offset + 2] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset] & 255) << 8 | data[offset + 3] & 255; - break; - case 1: - this1 = (data[offset + 3] & 255) << 24 | (data[offset + 2] & 255) << 16 | (data[offset + 1] & 255) << 8 | data[offset] & 255; - break; - case 2: - this1 = (data[offset] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset + 2] & 255) << 8 | data[offset + 3] & 255; - break; - } - if(premultiplied) { - if((this1 & 255) != 0 && (this1 & 255) != 255) { - lime_math__$BGRA_BGRA_$Impl_$.unmult = 255.0 / (this1 & 255); - this1 = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.floor((this1 >>> 24 & 255) * lime_math__$BGRA_BGRA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.floor((this1 >>> 16 & 255) * lime_math__$BGRA_BGRA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.floor((this1 >>> 8 & 255) * lime_math__$BGRA_BGRA_$Impl_$.unmult)] & 255) << 8 | this1 & 255 & 255; - } - } -}; -lime_math__$BGRA_BGRA_$Impl_$.set = function(this1,b,g,r,a) { - this1 = (b & 255) << 24 | (g & 255) << 16 | (r & 255) << 8 | a & 255; -}; -lime_math__$BGRA_BGRA_$Impl_$.unmultiplyAlpha = function(this1) { - if((this1 & 255) != 0 && (this1 & 255) != 255) { - lime_math__$BGRA_BGRA_$Impl_$.unmult = 255.0 / (this1 & 255); - this1 = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.floor((this1 >>> 24 & 255) * lime_math__$BGRA_BGRA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.floor((this1 >>> 16 & 255) * lime_math__$BGRA_BGRA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.floor((this1 >>> 8 & 255) * lime_math__$BGRA_BGRA_$Impl_$.unmult)] & 255) << 8 | this1 & 255 & 255; - } -}; -lime_math__$BGRA_BGRA_$Impl_$.writeUInt8 = function(this1,data,offset,format,premultiplied) { - if(premultiplied == null) { - premultiplied = false; - } - if(format == null) { - format = 0; - } - if(premultiplied) { - if((this1 & 255) == 0) { - this1 = 0; - } else if((this1 & 255) != 255) { - lime_math__$BGRA_BGRA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[this1 & 255]; - this1 = ((this1 >>> 24 & 255) * lime_math__$BGRA_BGRA_$Impl_$.a16 >> 16 & 255) << 24 | ((this1 >>> 16 & 255) * lime_math__$BGRA_BGRA_$Impl_$.a16 >> 16 & 255) << 16 | ((this1 >>> 8 & 255) * lime_math__$BGRA_BGRA_$Impl_$.a16 >> 16 & 255) << 8 | this1 & 255 & 255; - } - } - switch(format) { - case 0: - data[offset] = this1 >>> 8 & 255; - data[offset + 1] = this1 >>> 16 & 255; - data[offset + 2] = this1 >>> 24 & 255; - data[offset + 3] = this1 & 255; - break; - case 1: - data[offset] = this1 & 255; - data[offset + 1] = this1 >>> 8 & 255; - data[offset + 2] = this1 >>> 16 & 255; - data[offset + 3] = this1 >>> 24 & 255; - break; - case 2: - data[offset] = this1 >>> 24 & 255; - data[offset + 1] = this1 >>> 16 & 255; - data[offset + 2] = this1 >>> 8 & 255; - data[offset + 3] = this1 & 255; - break; - } -}; -lime_math__$BGRA_BGRA_$Impl_$.__fromARGB = function(argb) { - var this1 = 0; - var bgra = this1; - bgra = (argb & 255 & 255) << 24 | (argb >>> 8 & 255 & 255) << 16 | (argb >>> 16 & 255 & 255) << 8 | argb >>> 24 & 255 & 255; - return bgra; -}; -lime_math__$BGRA_BGRA_$Impl_$.__fromRGBA = function(rgba) { - var this1 = 0; - var bgra = this1; - bgra = (rgba >>> 8 & 255 & 255) << 24 | (rgba >>> 16 & 255 & 255) << 16 | (rgba >>> 24 & 255 & 255) << 8 | rgba & 255 & 255; - return bgra; -}; -lime_math__$BGRA_BGRA_$Impl_$.get_a = function(this1) { - return this1 & 255; -}; -lime_math__$BGRA_BGRA_$Impl_$.set_a = function(this1,value) { - this1 = (this1 >>> 24 & 255 & 255) << 24 | (this1 >>> 16 & 255 & 255) << 16 | (this1 >>> 8 & 255 & 255) << 8 | value & 255; - return value; -}; -lime_math__$BGRA_BGRA_$Impl_$.get_b = function(this1) { - return this1 >>> 24 & 255; -}; -lime_math__$BGRA_BGRA_$Impl_$.set_b = function(this1,value) { - this1 = (value & 255) << 24 | (this1 >>> 16 & 255 & 255) << 16 | (this1 >>> 8 & 255 & 255) << 8 | this1 & 255 & 255; - return value; -}; -lime_math__$BGRA_BGRA_$Impl_$.get_g = function(this1) { - return this1 >>> 16 & 255; -}; -lime_math__$BGRA_BGRA_$Impl_$.set_g = function(this1,value) { - this1 = (this1 >>> 24 & 255 & 255) << 24 | (value & 255) << 16 | (this1 >>> 8 & 255 & 255) << 8 | this1 & 255 & 255; - return value; -}; -lime_math__$BGRA_BGRA_$Impl_$.get_r = function(this1) { - return this1 >>> 8 & 255; -}; -lime_math__$BGRA_BGRA_$Impl_$.set_r = function(this1,value) { - this1 = (this1 >>> 24 & 255 & 255) << 24 | (this1 >>> 16 & 255 & 255) << 16 | (value & 255) << 8 | this1 & 255 & 255; - return value; -}; -var lime_math__$ColorMatrix_ColorMatrix_$Impl_$ = {}; -$hxClasses["lime.math._ColorMatrix.ColorMatrix_Impl_"] = lime_math__$ColorMatrix_ColorMatrix_$Impl_$; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__name__ = "lime.math._ColorMatrix.ColorMatrix_Impl_"; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__properties__ = {set_redOffset:"set_redOffset",get_redOffset:"get_redOffset",set_redMultiplier:"set_redMultiplier",get_redMultiplier:"get_redMultiplier",set_greenOffset:"set_greenOffset",get_greenOffset:"get_greenOffset",set_greenMultiplier:"set_greenMultiplier",get_greenMultiplier:"get_greenMultiplier",set_color:"set_color",get_color:"get_color",set_blueOffset:"set_blueOffset",get_blueOffset:"get_blueOffset",set_blueMultiplier:"set_blueMultiplier",get_blueMultiplier:"get_blueMultiplier",set_alphaOffset:"set_alphaOffset",get_alphaOffset:"get_alphaOffset",set_alphaMultiplier:"set_alphaMultiplier",get_alphaMultiplier:"get_alphaMultiplier"}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__alphaTable = null; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__blueTable = null; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__greenTable = null; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__redTable = null; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$._new = function(data) { - var this1; - if(data != null && data.length == 20) { - this1 = data; - } else { - var elements = null; - var array = lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__identity; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this2; - if(elements != null) { - this2 = new Float32Array(elements); - } else if(array != null) { - this2 = new Float32Array(array); - } else if(vector != null) { - this2 = new Float32Array(vector.__array); - } else if(view != null) { - this2 = new Float32Array(view); - } else if(buffer != null) { - if(len == null) { - this2 = new Float32Array(buffer,0); - } else { - this2 = new Float32Array(buffer,0,len); - } - } else { - this2 = null; - } - this1 = this2; - } - return this1; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.clone = function(this1) { - var elements = null; - var array = null; - var vector = null; - var buffer = null; - var len = null; - var this2; - if(elements != null) { - this2 = new Float32Array(elements); - } else if(array != null) { - this2 = new Float32Array(array); - } else if(vector != null) { - this2 = new Float32Array(vector.__array); - } else if(this1 != null) { - this2 = new Float32Array(this1); - } else if(buffer != null) { - if(len == null) { - this2 = new Float32Array(buffer,0); - } else { - this2 = new Float32Array(buffer,0,len); - } - } else { - this2 = null; - } - return lime_math__$ColorMatrix_ColorMatrix_$Impl_$._new(this2); -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.concat = function(this1,second) { - this1[0] += second[0]; - this1[6] += second[6]; - this1[12] += second[12]; - this1[18] += second[18]; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.copyFrom = function(this1,other) { - this1.set(other); -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.identity = function(this1) { - this1[0] = 1; - this1[1] = 0; - this1[2] = 0; - this1[3] = 0; - this1[4] = 0; - this1[5] = 0; - this1[6] = 1; - this1[7] = 0; - this1[8] = 0; - this1[9] = 0; - this1[10] = 0; - this1[11] = 0; - this1[12] = 1; - this1[13] = 0; - this1[14] = 0; - this1[15] = 0; - this1[16] = 0; - this1[17] = 0; - this1[18] = 1; - this1[19] = 0; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.getAlphaTable = function(this1) { - if(lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__alphaTable == null) { - var array = null; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this2 = new Uint8Array(256); - lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__alphaTable = this2; - } - var value; - lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__alphaTable[0] = 0; - var _g = 1; - while(_g < 256) { - var i = _g++; - value = Math.floor(i * this1[18] + this1[19] * 255); - if(value > 255) { - value = 255; - } - if(value < 0) { - value = 0; - } - lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__alphaTable[i] = value; - } - return lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__alphaTable; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.getBlueTable = function(this1) { - if(lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__blueTable == null) { - var array = null; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this2 = new Uint8Array(256); - lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__blueTable = this2; - } - var value; - var _g = 0; - while(_g < 256) { - var i = _g++; - value = Math.floor(i * this1[12] + this1[14] * 255); - if(value > 255) { - value = 255; - } - if(value < 0) { - value = 0; - } - lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__blueTable[i] = value; - } - return lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__blueTable; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.getGreenTable = function(this1) { - if(lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__greenTable == null) { - var array = null; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this2 = new Uint8Array(256); - lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__greenTable = this2; - } - var value; - var _g = 0; - while(_g < 256) { - var i = _g++; - value = Math.floor(i * this1[6] + this1[9] * 255); - if(value > 255) { - value = 255; - } - if(value < 0) { - value = 0; - } - lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__greenTable[i] = value; - } - return lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__greenTable; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.getRedTable = function(this1) { - if(lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__redTable == null) { - var array = null; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this2 = new Uint8Array(256); - lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__redTable = this2; - } - var value; - var _g = 0; - while(_g < 256) { - var i = _g++; - value = Math.floor(i * this1[0] + this1[4] * 255); - if(value > 255) { - value = 255; - } - if(value < 0) { - value = 0; - } - lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__redTable[i] = value; - } - return lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__redTable; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__toFlashColorTransform = function(this1) { - return null; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.get_alphaMultiplier = function(this1) { - return this1[18]; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.set_alphaMultiplier = function(this1,value) { - return this1[18] = value; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.get_alphaOffset = function(this1) { - return this1[19] * 255; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.set_alphaOffset = function(this1,value) { - return this1[19] = value / 255; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.get_blueMultiplier = function(this1) { - return this1[12]; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.set_blueMultiplier = function(this1,value) { - return this1[12] = value; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.get_blueOffset = function(this1) { - return this1[14] * 255; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.set_blueOffset = function(this1,value) { - return this1[14] = value / 255; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.get_color = function(this1) { - return (this1[4] * 255 | 0) << 16 | (this1[9] * 255 | 0) << 8 | (this1[14] * 255 | 0); -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.set_color = function(this1,value) { - this1[4] = (value >> 16 & 255) / 255; - this1[9] = (value >> 8 & 255) / 255; - this1[14] = (value & 255) / 255; - this1[0] = 0; - this1[6] = 0; - this1[12] = 0; - return lime_math__$ColorMatrix_ColorMatrix_$Impl_$.get_color(this1); -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.get_greenMultiplier = function(this1) { - return this1[6]; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.set_greenMultiplier = function(this1,value) { - return this1[6] = value; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.get_greenOffset = function(this1) { - return this1[9] * 255; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.set_greenOffset = function(this1,value) { - return this1[9] = value / 255; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.get_redMultiplier = function(this1) { - return this1[0]; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.set_redMultiplier = function(this1,value) { - return this1[0] = value; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.get_redOffset = function(this1) { - return this1[4] * 255; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.set_redOffset = function(this1,value) { - return this1[4] = value / 255; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.get = function(this1,index) { - return this1[index]; -}; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.set = function(this1,index,value) { - return this1[index] = value; -}; -var lime_math__$Matrix4_Matrix4_$Impl_$ = {}; -$hxClasses["lime.math._Matrix4.Matrix4_Impl_"] = lime_math__$Matrix4_Matrix4_$Impl_$; -lime_math__$Matrix4_Matrix4_$Impl_$.__name__ = "lime.math._Matrix4.Matrix4_Impl_"; -lime_math__$Matrix4_Matrix4_$Impl_$.__properties__ = {set_position:"set_position",get_position:"get_position",get_determinant:"get_determinant"}; -lime_math__$Matrix4_Matrix4_$Impl_$._new = function(data) { - var this1; - if(data != null && data.length == 16) { - this1 = data; - } else { - var elements = null; - var array = lime_math__$Matrix4_Matrix4_$Impl_$.__identity; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this2; - if(elements != null) { - this2 = new Float32Array(elements); - } else if(array != null) { - this2 = new Float32Array(array); - } else if(vector != null) { - this2 = new Float32Array(vector.__array); - } else if(view != null) { - this2 = new Float32Array(view); - } else if(buffer != null) { - if(len == null) { - this2 = new Float32Array(buffer,0); - } else { - this2 = new Float32Array(buffer,0,len); - } - } else { - this2 = null; - } - this1 = this2; - } - return this1; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.append = function(this1,lhs) { - var m111 = this1[0]; - var m121 = this1[4]; - var m131 = this1[8]; - var m141 = this1[12]; - var m112 = this1[1]; - var m122 = this1[5]; - var m132 = this1[9]; - var m142 = this1[13]; - var m113 = this1[2]; - var m123 = this1[6]; - var m133 = this1[10]; - var m143 = this1[14]; - var m114 = this1[3]; - var m124 = this1[7]; - var m134 = this1[11]; - var m144 = this1[15]; - var m211 = lime_math__$Matrix4_Matrix4_$Impl_$.get(lhs,0); - var m221 = lime_math__$Matrix4_Matrix4_$Impl_$.get(lhs,4); - var m231 = lime_math__$Matrix4_Matrix4_$Impl_$.get(lhs,8); - var m241 = lime_math__$Matrix4_Matrix4_$Impl_$.get(lhs,12); - var m212 = lime_math__$Matrix4_Matrix4_$Impl_$.get(lhs,1); - var m222 = lime_math__$Matrix4_Matrix4_$Impl_$.get(lhs,5); - var m232 = lime_math__$Matrix4_Matrix4_$Impl_$.get(lhs,9); - var m242 = lime_math__$Matrix4_Matrix4_$Impl_$.get(lhs,13); - var m213 = lime_math__$Matrix4_Matrix4_$Impl_$.get(lhs,2); - var m223 = lime_math__$Matrix4_Matrix4_$Impl_$.get(lhs,6); - var m233 = lime_math__$Matrix4_Matrix4_$Impl_$.get(lhs,10); - var m243 = lime_math__$Matrix4_Matrix4_$Impl_$.get(lhs,14); - var m214 = lime_math__$Matrix4_Matrix4_$Impl_$.get(lhs,3); - var m224 = lime_math__$Matrix4_Matrix4_$Impl_$.get(lhs,7); - var m234 = lime_math__$Matrix4_Matrix4_$Impl_$.get(lhs,11); - var m244 = lime_math__$Matrix4_Matrix4_$Impl_$.get(lhs,15); - this1[0] = m111 * m211 + m112 * m221 + m113 * m231 + m114 * m241; - this1[1] = m111 * m212 + m112 * m222 + m113 * m232 + m114 * m242; - this1[2] = m111 * m213 + m112 * m223 + m113 * m233 + m114 * m243; - this1[3] = m111 * m214 + m112 * m224 + m113 * m234 + m114 * m244; - this1[4] = m121 * m211 + m122 * m221 + m123 * m231 + m124 * m241; - this1[5] = m121 * m212 + m122 * m222 + m123 * m232 + m124 * m242; - this1[6] = m121 * m213 + m122 * m223 + m123 * m233 + m124 * m243; - this1[7] = m121 * m214 + m122 * m224 + m123 * m234 + m124 * m244; - this1[8] = m131 * m211 + m132 * m221 + m133 * m231 + m134 * m241; - this1[9] = m131 * m212 + m132 * m222 + m133 * m232 + m134 * m242; - this1[10] = m131 * m213 + m132 * m223 + m133 * m233 + m134 * m243; - this1[11] = m131 * m214 + m132 * m224 + m133 * m234 + m134 * m244; - this1[12] = m141 * m211 + m142 * m221 + m143 * m231 + m144 * m241; - this1[13] = m141 * m212 + m142 * m222 + m143 * m232 + m144 * m242; - this1[14] = m141 * m213 + m142 * m223 + m143 * m233 + m144 * m243; - this1[15] = m141 * m214 + m142 * m224 + m143 * m234 + m144 * m244; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.appendRotation = function(this1,degrees,axis,pivotPoint) { - var m = lime_math__$Matrix4_Matrix4_$Impl_$.__getAxisRotation(this1,axis.x,axis.y,axis.z,degrees); - if(pivotPoint != null) { - var p = pivotPoint; - lime_math__$Matrix4_Matrix4_$Impl_$.appendTranslation(m,p.x,p.y,p.z); - } - lime_math__$Matrix4_Matrix4_$Impl_$.append(this1,m); -}; -lime_math__$Matrix4_Matrix4_$Impl_$.appendScale = function(this1,xScale,yScale,zScale) { - var elements = null; - var array = [xScale,0.0,0.0,0.0,0.0,yScale,0.0,0.0,0.0,0.0,zScale,0.0,0.0,0.0,0.0,1.0]; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this2; - if(elements != null) { - this2 = new Float32Array(elements); - } else if(array != null) { - this2 = new Float32Array(array); - } else if(vector != null) { - this2 = new Float32Array(vector.__array); - } else if(view != null) { - this2 = new Float32Array(view); - } else if(buffer != null) { - if(len == null) { - this2 = new Float32Array(buffer,0); - } else { - this2 = new Float32Array(buffer,0,len); - } - } else { - this2 = null; - } - lime_math__$Matrix4_Matrix4_$Impl_$.append(this1,lime_math__$Matrix4_Matrix4_$Impl_$._new(this2)); -}; -lime_math__$Matrix4_Matrix4_$Impl_$.appendTranslation = function(this1,x,y,z) { - this1[12] += x; - this1[13] += y; - this1[14] += z; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.clone = function(this1) { - var elements = null; - var array = null; - var vector = null; - var buffer = null; - var len = null; - var this2; - if(elements != null) { - this2 = new Float32Array(elements); - } else if(array != null) { - this2 = new Float32Array(array); - } else if(vector != null) { - this2 = new Float32Array(vector.__array); - } else if(this1 != null) { - this2 = new Float32Array(this1); - } else if(buffer != null) { - if(len == null) { - this2 = new Float32Array(buffer,0); - } else { - this2 = new Float32Array(buffer,0,len); - } - } else { - this2 = null; - } - return lime_math__$Matrix4_Matrix4_$Impl_$._new(this2); -}; -lime_math__$Matrix4_Matrix4_$Impl_$.copyColumnFrom = function(this1,column,vector) { - switch(column) { - case 0: - this1[0] = vector.x; - this1[1] = vector.y; - this1[2] = vector.z; - this1[3] = vector.w; - break; - case 1: - this1[4] = vector.x; - this1[5] = vector.y; - this1[6] = vector.z; - this1[7] = vector.w; - break; - case 2: - this1[8] = vector.x; - this1[9] = vector.y; - this1[10] = vector.z; - this1[11] = vector.w; - break; - case 3: - this1[12] = vector.x; - this1[13] = vector.y; - this1[14] = vector.z; - this1[15] = vector.w; - break; - default: - lime_utils_Log.error("Column " + column + " out of bounds [0, ..., 3]",{ fileName : "lime/math/Matrix4.hx", lineNumber : 187, className : "lime.math._Matrix4.Matrix4_Impl_", methodName : "copyColumnFrom"}); - } -}; -lime_math__$Matrix4_Matrix4_$Impl_$.copyColumnTo = function(this1,column,vector) { - switch(column) { - case 0: - vector.x = this1[0]; - vector.y = this1[1]; - vector.z = this1[2]; - vector.w = this1[3]; - break; - case 1: - vector.x = this1[4]; - vector.y = this1[5]; - vector.z = this1[6]; - vector.w = this1[7]; - break; - case 2: - vector.x = this1[8]; - vector.y = this1[9]; - vector.z = this1[10]; - vector.w = this1[11]; - break; - case 3: - vector.x = this1[12]; - vector.y = this1[13]; - vector.z = this1[14]; - vector.w = this1[15]; - break; - default: - lime_utils_Log.error("Column " + column + " out of bounds [0, ..., 3]",{ fileName : "lime/math/Matrix4.hx", lineNumber : 225, className : "lime.math._Matrix4.Matrix4_Impl_", methodName : "copyColumnTo"}); - } -}; -lime_math__$Matrix4_Matrix4_$Impl_$.copyFrom = function(this1,other) { - this1.set(other); -}; -lime_math__$Matrix4_Matrix4_$Impl_$.copyRowFrom = function(this1,row,vector) { - switch(row) { - case 0: - this1[0] = vector.x; - this1[4] = vector.y; - this1[8] = vector.z; - this1[12] = vector.w; - break; - case 1: - this1[1] = vector.x; - this1[5] = vector.y; - this1[9] = vector.z; - this1[13] = vector.w; - break; - case 2: - this1[2] = vector.x; - this1[6] = vector.y; - this1[10] = vector.z; - this1[14] = vector.w; - break; - case 3: - this1[3] = vector.x; - this1[7] = vector.y; - this1[11] = vector.z; - this1[15] = vector.w; - break; - default: - lime_utils_Log.error("Row " + row + " out of bounds [0, ..., 3]",{ fileName : "lime/math/Matrix4.hx", lineNumber : 272, className : "lime.math._Matrix4.Matrix4_Impl_", methodName : "copyRowFrom"}); - } -}; -lime_math__$Matrix4_Matrix4_$Impl_$.copyRowTo = function(this1,row,vector) { - switch(row) { - case 0: - vector.x = this1[0]; - vector.y = this1[4]; - vector.z = this1[8]; - vector.w = this1[12]; - break; - case 1: - vector.x = this1[1]; - vector.y = this1[5]; - vector.z = this1[9]; - vector.w = this1[13]; - break; - case 2: - vector.x = this1[2]; - vector.y = this1[6]; - vector.z = this1[10]; - vector.w = this1[14]; - break; - case 3: - vector.x = this1[3]; - vector.y = this1[7]; - vector.z = this1[11]; - vector.w = this1[15]; - break; - default: - lime_utils_Log.error("Row " + row + " out of bounds [0, ..., 3]",{ fileName : "lime/math/Matrix4.hx", lineNumber : 310, className : "lime.math._Matrix4.Matrix4_Impl_", methodName : "copyRowTo"}); - } -}; -lime_math__$Matrix4_Matrix4_$Impl_$.create2D = function(this1,a,b,c,d,tx,ty) { - if(ty == null) { - ty = 0; - } - if(tx == null) { - tx = 0; - } - this1[0] = a; - this1[1] = b; - this1[2] = 0; - this1[3] = 0; - this1[4] = c; - this1[5] = d; - this1[6] = 0; - this1[7] = 0; - this1[8] = 0; - this1[9] = 0; - this1[10] = 1; - this1[11] = 0; - this1[12] = tx; - this1[13] = ty; - this1[14] = 0; - this1[15] = 1; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.createOrtho = function(this1,left,right,bottom,top,zNear,zFar) { - var sx = 1.0 / (right - left); - var sy = 1.0 / (top - bottom); - var sz = 1.0 / (zFar - zNear); - this1[0] = 2 * sx; - this1[1] = 0; - this1[2] = 0; - this1[3] = 0; - this1[4] = 0; - this1[5] = 2 * sy; - this1[6] = 0; - this1[7] = 0; - this1[8] = 0; - this1[9] = 0; - this1[10] = -2 * sz; - this1[11] = 0; - this1[12] = -(left + right) * sx; - this1[13] = -(bottom + top) * sy; - this1[14] = -(zNear + zFar) * sz; - this1[15] = 1; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.deltaTransformVector = function(this1,v,result) { - if(result == null) { - result = new lime_math_Vector4(); - } - var x = v.x; - var y = v.y; - var z = v.z; - result.x = x * this1[0] + y * this1[4] + z * this1[8] + this1[3]; - result.y = x * this1[1] + y * this1[5] + z * this1[9] + this1[7]; - result.z = x * this1[2] + y * this1[6] + z * this1[10] + this1[11]; - return result; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.fromMatrix3 = function(matrix3) { - var mat = lime_math__$Matrix4_Matrix4_$Impl_$._new(); - lime_math__$Matrix4_Matrix4_$Impl_$.create2D(mat,matrix3.a,matrix3.b,matrix3.c,matrix3.d,matrix3.tx,matrix3.ty); - return mat; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.identity = function(this1) { - this1[0] = 1; - this1[1] = 0; - this1[2] = 0; - this1[3] = 0; - this1[4] = 0; - this1[5] = 1; - this1[6] = 0; - this1[7] = 0; - this1[8] = 0; - this1[9] = 0; - this1[10] = 1; - this1[11] = 0; - this1[12] = 0; - this1[13] = 0; - this1[14] = 0; - this1[15] = 1; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.interpolate = function(thisMat,toMat,percent,result) { - if(result == null) { - result = lime_math__$Matrix4_Matrix4_$Impl_$._new(); - } - var _g = 0; - while(_g < 16) { - var i = _g++; - lime_math__$Matrix4_Matrix4_$Impl_$.set(result,i,lime_math__$Matrix4_Matrix4_$Impl_$.get(thisMat,i) + (lime_math__$Matrix4_Matrix4_$Impl_$.get(toMat,i) - lime_math__$Matrix4_Matrix4_$Impl_$.get(thisMat,i)) * percent); - } - return result; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.interpolateTo = function(this1,toMat,percent) { - var _g = 0; - while(_g < 16) { - var i = _g++; - this1[i] += (lime_math__$Matrix4_Matrix4_$Impl_$.get(toMat,i) - this1[i]) * percent; - } -}; -lime_math__$Matrix4_Matrix4_$Impl_$.invert = function(this1) { - var d = lime_math__$Matrix4_Matrix4_$Impl_$.get_determinant(this1); - var invertable = Math.abs(d) > 0.00000000001; - if(invertable) { - d = 1 / d; - var m11 = this1[0]; - var m21 = this1[4]; - var m31 = this1[8]; - var m41 = this1[12]; - var m12 = this1[1]; - var m22 = this1[5]; - var m32 = this1[9]; - var m42 = this1[13]; - var m13 = this1[2]; - var m23 = this1[6]; - var m33 = this1[10]; - var m43 = this1[14]; - var m14 = this1[3]; - var m24 = this1[7]; - var m34 = this1[11]; - var m44 = this1[15]; - this1[0] = d * (m22 * (m33 * m44 - m43 * m34) - m32 * (m23 * m44 - m43 * m24) + m42 * (m23 * m34 - m33 * m24)); - this1[1] = -d * (m12 * (m33 * m44 - m43 * m34) - m32 * (m13 * m44 - m43 * m14) + m42 * (m13 * m34 - m33 * m14)); - this1[2] = d * (m12 * (m23 * m44 - m43 * m24) - m22 * (m13 * m44 - m43 * m14) + m42 * (m13 * m24 - m23 * m14)); - this1[3] = -d * (m12 * (m23 * m34 - m33 * m24) - m22 * (m13 * m34 - m33 * m14) + m32 * (m13 * m24 - m23 * m14)); - this1[4] = -d * (m21 * (m33 * m44 - m43 * m34) - m31 * (m23 * m44 - m43 * m24) + m41 * (m23 * m34 - m33 * m24)); - this1[5] = d * (m11 * (m33 * m44 - m43 * m34) - m31 * (m13 * m44 - m43 * m14) + m41 * (m13 * m34 - m33 * m14)); - this1[6] = -d * (m11 * (m23 * m44 - m43 * m24) - m21 * (m13 * m44 - m43 * m14) + m41 * (m13 * m24 - m23 * m14)); - this1[7] = d * (m11 * (m23 * m34 - m33 * m24) - m21 * (m13 * m34 - m33 * m14) + m31 * (m13 * m24 - m23 * m14)); - this1[8] = d * (m21 * (m32 * m44 - m42 * m34) - m31 * (m22 * m44 - m42 * m24) + m41 * (m22 * m34 - m32 * m24)); - this1[9] = -d * (m11 * (m32 * m44 - m42 * m34) - m31 * (m12 * m44 - m42 * m14) + m41 * (m12 * m34 - m32 * m14)); - this1[10] = d * (m11 * (m22 * m44 - m42 * m24) - m21 * (m12 * m44 - m42 * m14) + m41 * (m12 * m24 - m22 * m14)); - this1[11] = -d * (m11 * (m22 * m34 - m32 * m24) - m21 * (m12 * m34 - m32 * m14) + m31 * (m12 * m24 - m22 * m14)); - this1[12] = -d * (m21 * (m32 * m43 - m42 * m33) - m31 * (m22 * m43 - m42 * m23) + m41 * (m22 * m33 - m32 * m23)); - this1[13] = d * (m11 * (m32 * m43 - m42 * m33) - m31 * (m12 * m43 - m42 * m13) + m41 * (m12 * m33 - m32 * m13)); - this1[14] = -d * (m11 * (m22 * m43 - m42 * m23) - m21 * (m12 * m43 - m42 * m13) + m41 * (m12 * m23 - m22 * m13)); - this1[15] = d * (m11 * (m22 * m33 - m32 * m23) - m21 * (m12 * m33 - m32 * m13) + m31 * (m12 * m23 - m22 * m13)); - } - return invertable; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.pointAt = function(this1,pos,at,up) { - if(at == null) { - at = new lime_math_Vector4(0,0,1); - } - if(up == null) { - up = new lime_math_Vector4(0,1,0); - } - var result = null; - if(result == null) { - result = new lime_math_Vector4(); - } - result.x = pos.x - at.x; - result.y = pos.y - at.y; - result.z = pos.z - at.z; - var dir = result; - var vup = new lime_math_Vector4(up.x,up.y,up.z,up.w); - var l = Math.sqrt(dir.x * dir.x + dir.y * dir.y + dir.z * dir.z); - if(l != 0) { - dir.x /= l; - dir.y /= l; - dir.z /= l; - } - var l1 = Math.sqrt(vup.x * vup.x + vup.y * vup.y + vup.z * vup.z); - if(l1 != 0) { - vup.x /= l1; - vup.y /= l1; - vup.z /= l1; - } - var dir2 = new lime_math_Vector4(dir.x,dir.y,dir.z,dir.w); - var s = vup.x * dir.x + vup.y * dir.y + vup.z * dir.z; - dir2.x *= s; - dir2.y *= s; - dir2.z *= s; - var result1 = null; - if(result1 == null) { - result1 = new lime_math_Vector4(); - } - result1.x = vup.x - dir2.x; - result1.y = vup.y - dir2.y; - result1.z = vup.z - dir2.z; - vup = result1; - if(Math.sqrt(vup.x * vup.x + vup.y * vup.y + vup.z * vup.z) > 0) { - var l2 = Math.sqrt(vup.x * vup.x + vup.y * vup.y + vup.z * vup.z); - if(l2 != 0) { - vup.x /= l2; - vup.y /= l2; - vup.z /= l2; - } - } else if(dir.x != 0) { - vup = new lime_math_Vector4(-dir.y,dir.x,0); - } else { - vup = new lime_math_Vector4(1,0,0); - } - var result2 = null; - if(result2 == null) { - result2 = new lime_math_Vector4(); - } - var ya = vup.z * dir.x - vup.x * dir.z; - var za = vup.x * dir.y - vup.y * dir.x; - result2.x = vup.y * dir.z - vup.z * dir.y; - result2.y = ya; - result2.z = za; - result2.w = 1; - var right = result2; - var l3 = Math.sqrt(right.x * right.x + right.y * right.y + right.z * right.z); - if(l3 != 0) { - right.x /= l3; - right.y /= l3; - right.z /= l3; - } - this1[0] = right.x; - this1[4] = right.y; - this1[8] = right.z; - this1[12] = 0.0; - this1[1] = vup.x; - this1[5] = vup.y; - this1[9] = vup.z; - this1[13] = 0.0; - this1[2] = dir.x; - this1[6] = dir.y; - this1[10] = dir.z; - this1[14] = 0.0; - this1[3] = pos.x; - this1[7] = pos.y; - this1[11] = pos.z; - this1[15] = 1.0; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.prepend = function(this1,rhs) { - var m111 = lime_math__$Matrix4_Matrix4_$Impl_$.get(rhs,0); - var m121 = lime_math__$Matrix4_Matrix4_$Impl_$.get(rhs,4); - var m131 = lime_math__$Matrix4_Matrix4_$Impl_$.get(rhs,8); - var m141 = lime_math__$Matrix4_Matrix4_$Impl_$.get(rhs,12); - var m112 = lime_math__$Matrix4_Matrix4_$Impl_$.get(rhs,1); - var m122 = lime_math__$Matrix4_Matrix4_$Impl_$.get(rhs,5); - var m132 = lime_math__$Matrix4_Matrix4_$Impl_$.get(rhs,9); - var m142 = lime_math__$Matrix4_Matrix4_$Impl_$.get(rhs,13); - var m113 = lime_math__$Matrix4_Matrix4_$Impl_$.get(rhs,2); - var m123 = lime_math__$Matrix4_Matrix4_$Impl_$.get(rhs,6); - var m133 = lime_math__$Matrix4_Matrix4_$Impl_$.get(rhs,10); - var m143 = lime_math__$Matrix4_Matrix4_$Impl_$.get(rhs,14); - var m114 = lime_math__$Matrix4_Matrix4_$Impl_$.get(rhs,3); - var m124 = lime_math__$Matrix4_Matrix4_$Impl_$.get(rhs,7); - var m134 = lime_math__$Matrix4_Matrix4_$Impl_$.get(rhs,11); - var m144 = lime_math__$Matrix4_Matrix4_$Impl_$.get(rhs,15); - var m211 = this1[0]; - var m221 = this1[4]; - var m231 = this1[8]; - var m241 = this1[12]; - var m212 = this1[1]; - var m222 = this1[5]; - var m232 = this1[9]; - var m242 = this1[13]; - var m213 = this1[2]; - var m223 = this1[6]; - var m233 = this1[10]; - var m243 = this1[14]; - var m214 = this1[3]; - var m224 = this1[7]; - var m234 = this1[11]; - var m244 = this1[15]; - this1[0] = m111 * m211 + m112 * m221 + m113 * m231 + m114 * m241; - this1[1] = m111 * m212 + m112 * m222 + m113 * m232 + m114 * m242; - this1[2] = m111 * m213 + m112 * m223 + m113 * m233 + m114 * m243; - this1[3] = m111 * m214 + m112 * m224 + m113 * m234 + m114 * m244; - this1[4] = m121 * m211 + m122 * m221 + m123 * m231 + m124 * m241; - this1[5] = m121 * m212 + m122 * m222 + m123 * m232 + m124 * m242; - this1[6] = m121 * m213 + m122 * m223 + m123 * m233 + m124 * m243; - this1[7] = m121 * m214 + m122 * m224 + m123 * m234 + m124 * m244; - this1[8] = m131 * m211 + m132 * m221 + m133 * m231 + m134 * m241; - this1[9] = m131 * m212 + m132 * m222 + m133 * m232 + m134 * m242; - this1[10] = m131 * m213 + m132 * m223 + m133 * m233 + m134 * m243; - this1[11] = m131 * m214 + m132 * m224 + m133 * m234 + m134 * m244; - this1[12] = m141 * m211 + m142 * m221 + m143 * m231 + m144 * m241; - this1[13] = m141 * m212 + m142 * m222 + m143 * m232 + m144 * m242; - this1[14] = m141 * m213 + m142 * m223 + m143 * m233 + m144 * m243; - this1[15] = m141 * m214 + m142 * m224 + m143 * m234 + m144 * m244; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.prependRotation = function(this1,degrees,axis,pivotPoint) { - var m = lime_math__$Matrix4_Matrix4_$Impl_$.__getAxisRotation(this1,axis.x,axis.y,axis.z,degrees); - if(pivotPoint != null) { - var p = pivotPoint; - lime_math__$Matrix4_Matrix4_$Impl_$.appendTranslation(m,p.x,p.y,p.z); - } - lime_math__$Matrix4_Matrix4_$Impl_$.prepend(this1,m); -}; -lime_math__$Matrix4_Matrix4_$Impl_$.prependScale = function(this1,xScale,yScale,zScale) { - var elements = null; - var array = [xScale,0.0,0.0,0.0,0.0,yScale,0.0,0.0,0.0,0.0,zScale,0.0,0.0,0.0,0.0,1.0]; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this2; - if(elements != null) { - this2 = new Float32Array(elements); - } else if(array != null) { - this2 = new Float32Array(array); - } else if(vector != null) { - this2 = new Float32Array(vector.__array); - } else if(view != null) { - this2 = new Float32Array(view); - } else if(buffer != null) { - if(len == null) { - this2 = new Float32Array(buffer,0); - } else { - this2 = new Float32Array(buffer,0,len); - } - } else { - this2 = null; - } - lime_math__$Matrix4_Matrix4_$Impl_$.prepend(this1,lime_math__$Matrix4_Matrix4_$Impl_$._new(this2)); -}; -lime_math__$Matrix4_Matrix4_$Impl_$.prependTranslation = function(this1,x,y,z) { - var m = lime_math__$Matrix4_Matrix4_$Impl_$._new(); - lime_math__$Matrix4_Matrix4_$Impl_$.set_position(m,new lime_math_Vector4(x,y,z)); - lime_math__$Matrix4_Matrix4_$Impl_$.prepend(this1,m); -}; -lime_math__$Matrix4_Matrix4_$Impl_$.transformVector = function(this1,v,result) { - if(result == null) { - result = new lime_math_Vector4(); - } - var x = v.x; - var y = v.y; - var z = v.z; - result.x = x * this1[0] + y * this1[4] + z * this1[8] + this1[12]; - result.y = x * this1[1] + y * this1[5] + z * this1[9] + this1[13]; - result.z = x * this1[2] + y * this1[6] + z * this1[10] + this1[14]; - result.w = x * this1[3] + y * this1[7] + z * this1[11] + this1[15]; - return result; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.transformVectors = function(this1,ain,aout) { - var i = 0; - var x; - var y; - var z; - while(i + 3 <= ain.length) { - x = ain[i]; - y = ain[i + 1]; - z = ain[i + 2]; - aout[i] = x * this1[0] + y * this1[4] + z * this1[8] + this1[12]; - aout[i + 1] = x * this1[1] + y * this1[5] + z * this1[9] + this1[13]; - aout[i + 2] = x * this1[2] + y * this1[6] + z * this1[10] + this1[14]; - i += 3; - } -}; -lime_math__$Matrix4_Matrix4_$Impl_$.transpose = function(this1) { - var temp = this1[1]; - this1[1] = this1[4]; - this1[4] = temp; - var temp1 = this1[2]; - this1[2] = this1[8]; - this1[8] = temp1; - var temp2 = this1[3]; - this1[3] = this1[12]; - this1[12] = temp2; - var temp3 = this1[6]; - this1[6] = this1[9]; - this1[9] = temp3; - var temp4 = this1[7]; - this1[7] = this1[13]; - this1[13] = temp4; - var temp5 = this1[11]; - this1[11] = this1[14]; - this1[14] = temp5; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.__getAxisRotation = function(this1,x,y,z,degrees) { - var m = lime_math__$Matrix4_Matrix4_$Impl_$._new(); - var a1 = new lime_math_Vector4(x,y,z); - var rad = -degrees * (Math.PI / 180); - var c = Math.cos(rad); - var s = Math.sin(rad); - var t = 1.0 - c; - lime_math__$Matrix4_Matrix4_$Impl_$.set(m,0,c + a1.x * a1.x * t); - lime_math__$Matrix4_Matrix4_$Impl_$.set(m,5,c + a1.y * a1.y * t); - lime_math__$Matrix4_Matrix4_$Impl_$.set(m,10,c + a1.z * a1.z * t); - var tmp1 = a1.x * a1.y * t; - var tmp2 = a1.z * s; - lime_math__$Matrix4_Matrix4_$Impl_$.set(m,4,tmp1 + tmp2); - lime_math__$Matrix4_Matrix4_$Impl_$.set(m,1,tmp1 - tmp2); - tmp1 = a1.x * a1.z * t; - tmp2 = a1.y * s; - lime_math__$Matrix4_Matrix4_$Impl_$.set(m,8,tmp1 - tmp2); - lime_math__$Matrix4_Matrix4_$Impl_$.set(m,2,tmp1 + tmp2); - tmp1 = a1.y * a1.z * t; - tmp2 = a1.x * s; - lime_math__$Matrix4_Matrix4_$Impl_$.set(m,9,tmp1 + tmp2); - lime_math__$Matrix4_Matrix4_$Impl_$.set(m,6,tmp1 - tmp2); - return m; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.__swap = function(this1,a,b) { - var temp = this1[a]; - this1[a] = this1[b]; - this1[b] = temp; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.get_determinant = function(this1) { - return (this1[0] * this1[5] - this1[4] * this1[1]) * (this1[10] * this1[15] - this1[14] * this1[11]) - (this1[0] * this1[9] - this1[8] * this1[1]) * (this1[6] * this1[15] - this1[14] * this1[7]) + (this1[0] * this1[13] - this1[12] * this1[1]) * (this1[6] * this1[11] - this1[10] * this1[7]) + (this1[4] * this1[9] - this1[8] * this1[5]) * (this1[2] * this1[15] - this1[14] * this1[3]) - (this1[4] * this1[13] - this1[12] * this1[5]) * (this1[2] * this1[11] - this1[10] * this1[3]) + (this1[8] * this1[13] - this1[12] * this1[9]) * (this1[2] * this1[7] - this1[6] * this1[3]); -}; -lime_math__$Matrix4_Matrix4_$Impl_$.get_position = function(this1) { - return new lime_math_Vector4(this1[12],this1[13],this1[14]); -}; -lime_math__$Matrix4_Matrix4_$Impl_$.set_position = function(this1,val) { - this1[12] = val.x; - this1[13] = val.y; - this1[14] = val.z; - return val; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.get = function(this1,index) { - return this1[index]; -}; -lime_math__$Matrix4_Matrix4_$Impl_$.set = function(this1,index,value) { - this1[index] = value; - return value; -}; -var lime_math__$RGBA_RGBA_$Impl_$ = {}; -$hxClasses["lime.math._RGBA.RGBA_Impl_"] = lime_math__$RGBA_RGBA_$Impl_$; -lime_math__$RGBA_RGBA_$Impl_$.__name__ = "lime.math._RGBA.RGBA_Impl_"; -lime_math__$RGBA_RGBA_$Impl_$.__properties__ = {set_r:"set_r",get_r:"get_r",set_g:"set_g",get_g:"get_g",set_b:"set_b",get_b:"get_b",set_a:"set_a",get_a:"get_a"}; -lime_math__$RGBA_RGBA_$Impl_$.__alpha16 = null; -lime_math__$RGBA_RGBA_$Impl_$.__clamp = null; -lime_math__$RGBA_RGBA_$Impl_$.a16 = null; -lime_math__$RGBA_RGBA_$Impl_$.unmult = null; -lime_math__$RGBA_RGBA_$Impl_$._new = function(rgba) { - if(rgba == null) { - rgba = 0; - } - var this1 = rgba; - return this1; -}; -lime_math__$RGBA_RGBA_$Impl_$.create = function(r,g,b,a) { - var this1 = 0; - var rgba = this1; - rgba = (r & 255) << 24 | (g & 255) << 16 | (b & 255) << 8 | a & 255; - return rgba; -}; -lime_math__$RGBA_RGBA_$Impl_$.multiplyAlpha = function(this1) { - if((this1 & 255) == 0) { - if(this1 != 0) { - this1 = 0; - } - } else if((this1 & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[this1 & 255]; - this1 = ((this1 >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((this1 >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((this1 >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | this1 & 255 & 255; - } -}; -lime_math__$RGBA_RGBA_$Impl_$.readUInt8 = function(this1,data,offset,format,premultiplied) { - if(premultiplied == null) { - premultiplied = false; - } - if(format == null) { - format = 0; - } - switch(format) { - case 0: - this1 = (data[offset] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset + 2] & 255) << 8 | data[offset + 3] & 255; - break; - case 1: - this1 = (data[offset + 1] & 255) << 24 | (data[offset + 2] & 255) << 16 | (data[offset + 3] & 255) << 8 | data[offset] & 255; - break; - case 2: - this1 = (data[offset + 2] & 255) << 24 | (data[offset + 1] & 255) << 16 | (data[offset] & 255) << 8 | data[offset + 3] & 255; - break; - } - if(premultiplied) { - if((this1 & 255) != 0 && (this1 & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (this1 & 255); - this1 = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((this1 >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((this1 >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((this1 >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | this1 & 255 & 255; - } - } -}; -lime_math__$RGBA_RGBA_$Impl_$.set = function(this1,r,g,b,a) { - this1 = (r & 255) << 24 | (g & 255) << 16 | (b & 255) << 8 | a & 255; -}; -lime_math__$RGBA_RGBA_$Impl_$.unmultiplyAlpha = function(this1) { - if((this1 & 255) != 0 && (this1 & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (this1 & 255); - this1 = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((this1 >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((this1 >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((this1 >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | this1 & 255 & 255; - } -}; -lime_math__$RGBA_RGBA_$Impl_$.writeUInt8 = function(this1,data,offset,format,premultiplied) { - if(premultiplied == null) { - premultiplied = false; - } - if(format == null) { - format = 0; - } - if(premultiplied) { - if((this1 & 255) == 0) { - if(this1 != 0) { - this1 = 0; - } - } else if((this1 & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[this1 & 255]; - this1 = ((this1 >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((this1 >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((this1 >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | this1 & 255 & 255; - } - } - switch(format) { - case 0: - data[offset] = this1 >>> 24 & 255; - data[offset + 1] = this1 >>> 16 & 255; - data[offset + 2] = this1 >>> 8 & 255; - data[offset + 3] = this1 & 255; - break; - case 1: - data[offset] = this1 & 255; - data[offset + 1] = this1 >>> 24 & 255; - data[offset + 2] = this1 >>> 16 & 255; - data[offset + 3] = this1 >>> 8 & 255; - break; - case 2: - data[offset] = this1 >>> 8 & 255; - data[offset + 1] = this1 >>> 16 & 255; - data[offset + 2] = this1 >>> 24 & 255; - data[offset + 3] = this1 & 255; - break; - } -}; -lime_math__$RGBA_RGBA_$Impl_$.__fromARGB = function(argb) { - var this1 = 0; - var rgba = this1; - rgba = (argb >>> 16 & 255 & 255) << 24 | (argb >>> 8 & 255 & 255) << 16 | (argb & 255 & 255) << 8 | argb >>> 24 & 255 & 255; - return rgba; -}; -lime_math__$RGBA_RGBA_$Impl_$.__fromBGRA = function(bgra) { - var this1 = 0; - var rgba = this1; - rgba = (bgra >>> 8 & 255 & 255) << 24 | (bgra >>> 16 & 255 & 255) << 16 | (bgra >>> 24 & 255 & 255) << 8 | bgra & 255 & 255; - return rgba; -}; -lime_math__$RGBA_RGBA_$Impl_$.get_a = function(this1) { - return this1 & 255; -}; -lime_math__$RGBA_RGBA_$Impl_$.set_a = function(this1,value) { - this1 = (this1 >>> 24 & 255 & 255) << 24 | (this1 >>> 16 & 255 & 255) << 16 | (this1 >>> 8 & 255 & 255) << 8 | value & 255; - return value; -}; -lime_math__$RGBA_RGBA_$Impl_$.get_b = function(this1) { - return this1 >>> 8 & 255; -}; -lime_math__$RGBA_RGBA_$Impl_$.set_b = function(this1,value) { - this1 = (this1 >>> 24 & 255 & 255) << 24 | (this1 >>> 16 & 255 & 255) << 16 | (value & 255) << 8 | this1 & 255 & 255; - return value; -}; -lime_math__$RGBA_RGBA_$Impl_$.get_g = function(this1) { - return this1 >>> 16 & 255; -}; -lime_math__$RGBA_RGBA_$Impl_$.set_g = function(this1,value) { - this1 = (this1 >>> 24 & 255 & 255) << 24 | (value & 255) << 16 | (this1 >>> 8 & 255 & 255) << 8 | this1 & 255 & 255; - return value; -}; -lime_math__$RGBA_RGBA_$Impl_$.get_r = function(this1) { - return this1 >>> 24 & 255; -}; -lime_math__$RGBA_RGBA_$Impl_$.set_r = function(this1,value) { - this1 = (value & 255) << 24 | (this1 >>> 16 & 255 & 255) << 16 | (this1 >>> 8 & 255 & 255) << 8 | this1 & 255 & 255; - return value; -}; -var lime_math_Rectangle = function(x,y,width,height) { - if(height == null) { - height = 0; - } - if(width == null) { - width = 0; - } - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - this.x = x; - this.y = y; - this.width = width; - this.height = height; -}; -$hxClasses["lime.math.Rectangle"] = lime_math_Rectangle; -lime_math_Rectangle.__name__ = "lime.math.Rectangle"; -lime_math_Rectangle.prototype = { - height: null - ,width: null - ,x: null - ,y: null - ,clone: function() { - return new lime_math_Rectangle(this.x,this.y,this.width,this.height); - } - ,contains: function(x,y) { - if(x >= this.x && y >= this.y && x < this.get_right()) { - return y < this.get_bottom(); - } else { - return false; - } - } - ,containsPoint: function(point) { - return this.containsVector(point); - } - ,containsRect: function(rect) { - if(rect.width <= 0 || rect.height <= 0) { - if(rect.x > this.x && rect.y > this.y && rect.get_right() < this.get_right()) { - return rect.get_bottom() < this.get_bottom(); - } else { - return false; - } - } else if(rect.x >= this.x && rect.y >= this.y && rect.get_right() <= this.get_right()) { - return rect.get_bottom() <= this.get_bottom(); - } else { - return false; - } - } - ,containsVector: function(vector) { - return this.contains(vector.x,vector.y); - } - ,copyFrom: function(sourceRect) { - this.x = sourceRect.x; - this.y = sourceRect.y; - this.width = sourceRect.width; - this.height = sourceRect.height; - } - ,equals: function(toCompare) { - if(toCompare != null && this.x == toCompare.x && this.y == toCompare.y && this.width == toCompare.width) { - return this.height == toCompare.height; - } else { - return false; - } - } - ,inflate: function(dx,dy) { - this.x -= dx; - this.width += dx * 2; - this.y -= dy; - this.height += dy * 2; - } - ,inflateVector: function(vector) { - this.inflate(vector.x,vector.y); - } - ,intersection: function(toIntersect,result) { - if(result == null) { - result = new lime_math_Rectangle(); - } - var x0 = this.x < toIntersect.x ? toIntersect.x : this.x; - var x1 = this.get_right() > toIntersect.get_right() ? toIntersect.get_right() : this.get_right(); - if(x1 <= x0) { - result.setEmpty(); - return result; - } - var y0 = this.y < toIntersect.y ? toIntersect.y : this.y; - var y1 = this.get_bottom() > toIntersect.get_bottom() ? toIntersect.get_bottom() : this.get_bottom(); - if(y1 <= y0) { - result.setEmpty(); - return result; - } - result.x = x0; - result.y = y0; - result.width = x1 - x0; - result.height = y1 - y0; - return result; - } - ,intersects: function(toIntersect) { - var x0 = this.x < toIntersect.x ? toIntersect.x : this.x; - var x1 = this.get_right() > toIntersect.get_right() ? toIntersect.get_right() : this.get_right(); - if(x1 <= x0) { - return false; - } - var y0 = this.y < toIntersect.y ? toIntersect.y : this.y; - var y1 = this.get_bottom() > toIntersect.get_bottom() ? toIntersect.get_bottom() : this.get_bottom(); - return y1 > y0; - } - ,isEmpty: function() { - if(!(this.width <= 0)) { - return this.height <= 0; - } else { - return true; - } - } - ,offset: function(dx,dy) { - this.x += dx; - this.y += dy; - } - ,offsetVector: function(vector) { - this.x += vector.x; - this.y += vector.y; - } - ,setEmpty: function() { - this.x = this.y = this.width = this.height = 0; - } - ,setTo: function(xa,ya,widtha,heighta) { - this.x = xa; - this.y = ya; - this.width = widtha; - this.height = heighta; - } - ,union: function(toUnion,result) { - if(result == null) { - result = new lime_math_Rectangle(); - } - if(this.width == 0 || this.height == 0) { - result.copyFrom(toUnion); - } else if(toUnion.width == 0 || toUnion.height == 0) { - result.copyFrom(this); - } else { - var x0 = this.x > toUnion.x ? toUnion.x : this.x; - var x1 = this.get_right() < toUnion.get_right() ? toUnion.get_right() : this.get_right(); - var y0 = this.y > toUnion.y ? toUnion.y : this.y; - var y1 = this.get_bottom() < toUnion.get_bottom() ? toUnion.get_bottom() : this.get_bottom(); - result.setTo(x0,y0,x1 - x0,y1 - y0); - } - return result; - } - ,__toFlashRectangle: function() { - return null; - } - ,get_bottom: function() { - return this.y + this.height; - } - ,set_bottom: function(b) { - this.height = b - this.y; - return b; - } - ,get_bottomRight: function() { - return new lime_math_Vector2(this.x + this.width,this.y + this.height); - } - ,set_bottomRight: function(p) { - this.width = p.x - this.x; - this.height = p.y - this.y; - return p.clone(); - } - ,get_left: function() { - return this.x; - } - ,set_left: function(l) { - this.width -= l - this.x; - this.x = l; - return l; - } - ,get_right: function() { - return this.x + this.width; - } - ,set_right: function(r) { - this.width = r - this.x; - return r; - } - ,get_size: function() { - return new lime_math_Vector2(this.width,this.height); - } - ,set_size: function(p) { - this.width = p.x; - this.height = p.y; - return p.clone(); - } - ,get_top: function() { - return this.y; - } - ,set_top: function(t) { - this.height -= t - this.y; - this.y = t; - return t; - } - ,get_topLeft: function() { - return new lime_math_Vector2(this.x,this.y); - } - ,set_topLeft: function(p) { - this.x = p.x; - this.y = p.y; - return p.clone(); - } - ,__class__: lime_math_Rectangle - ,__properties__: {set_topLeft:"set_topLeft",get_topLeft:"get_topLeft",set_top:"set_top",get_top:"get_top",set_size:"set_size",get_size:"get_size",set_right:"set_right",get_right:"get_right",set_left:"set_left",get_left:"get_left",set_bottomRight:"set_bottomRight",get_bottomRight:"get_bottomRight",set_bottom:"set_bottom",get_bottom:"get_bottom"} -}; -var lime_math_Vector4 = function(x,y,z,w) { - if(w == null) { - w = 0.; - } - if(z == null) { - z = 0.; - } - if(y == null) { - y = 0.; - } - if(x == null) { - x = 0.; - } - this.w = w; - this.x = x; - this.y = y; - this.z = z; -}; -$hxClasses["lime.math.Vector4"] = lime_math_Vector4; -lime_math_Vector4.__name__ = "lime.math.Vector4"; -lime_math_Vector4.__properties__ = {get_Z_AXIS:"get_Z_AXIS",get_Y_AXIS:"get_Y_AXIS",get_X_AXIS:"get_X_AXIS"}; -lime_math_Vector4.angleBetween = function(a,b) { - var a0 = new lime_math_Vector4(a.x,a.y,a.z,a.w); - var l = Math.sqrt(a0.x * a0.x + a0.y * a0.y + a0.z * a0.z); - if(l != 0) { - a0.x /= l; - a0.y /= l; - a0.z /= l; - } - var b0 = new lime_math_Vector4(b.x,b.y,b.z,b.w); - var l1 = Math.sqrt(b0.x * b0.x + b0.y * b0.y + b0.z * b0.z); - if(l1 != 0) { - b0.x /= l1; - b0.y /= l1; - b0.z /= l1; - } - return Math.acos(a0.x * b0.x + a0.y * b0.y + a0.z * b0.z); -}; -lime_math_Vector4.distance = function(pt1,pt2) { - var x = pt2.x - pt1.x; - var y = pt2.y - pt1.y; - var z = pt2.z - pt1.z; - return Math.sqrt(x * x + y * y + z * z); -}; -lime_math_Vector4.distanceSquared = function(pt1,pt2) { - var x = pt2.x - pt1.x; - var y = pt2.y - pt1.y; - var z = pt2.z - pt1.z; - return x * x + y * y + z * z; -}; -lime_math_Vector4.get_X_AXIS = function() { - return new lime_math_Vector4(1,0,0); -}; -lime_math_Vector4.get_Y_AXIS = function() { - return new lime_math_Vector4(0,1,0); -}; -lime_math_Vector4.get_Z_AXIS = function() { - return new lime_math_Vector4(0,0,1); -}; -lime_math_Vector4.prototype = { - w: null - ,x: null - ,y: null - ,z: null - ,add: function(a,result) { - if(result == null) { - result = new lime_math_Vector4(); - } - result.x = this.x + a.x; - result.y = this.y + a.y; - result.z = this.z + a.z; - return result; - } - ,clone: function() { - return new lime_math_Vector4(this.x,this.y,this.z,this.w); - } - ,copyFrom: function(sourceVector4) { - this.x = sourceVector4.x; - this.y = sourceVector4.y; - this.z = sourceVector4.z; - } - ,crossProduct: function(a,result) { - if(result == null) { - result = new lime_math_Vector4(); - } - var ya = this.z * a.x - this.x * a.z; - var za = this.x * a.y - this.y * a.x; - result.x = this.y * a.z - this.z * a.y; - result.y = ya; - result.z = za; - result.w = 1; - return result; - } - ,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(toCompare,allFour) { - if(allFour == null) { - allFour = false; - } - if(this.x == toCompare.x && this.y == toCompare.y && this.z == toCompare.z) { - if(!(!allFour)) { - return this.w == toCompare.w; - } else { - return true; - } - } else { - return false; - } - } - ,incrementBy: function(a) { - this.x += a.x; - this.y += a.y; - this.z += a.z; - } - ,nearEquals: function(toCompare,tolerance,allFour) { - if(allFour == null) { - allFour = false; - } - if(Math.abs(this.x - toCompare.x) < tolerance && Math.abs(this.y - toCompare.y) < tolerance && Math.abs(this.z - toCompare.z) < tolerance) { - if(!(!allFour)) { - return Math.abs(this.w - toCompare.w) < tolerance; - } else { - return true; - } - } else { - return false; - } - } - ,negate: function() { - this.x *= -1; - this.y *= -1; - this.z *= -1; - } - ,normalize: function() { - var l = Math.sqrt(this.x * this.x + this.y * this.y + this.z * this.z); - if(l != 0) { - this.x /= l; - this.y /= l; - this.z /= l; - } - return l; - } - ,project: function() { - this.x /= this.w; - this.y /= this.w; - this.z /= this.w; - } - ,scaleBy: function(s) { - this.x *= s; - this.y *= s; - this.z *= s; - } - ,setTo: function(xa,ya,za) { - this.x = xa; - this.y = ya; - this.z = za; - } - ,subtract: function(a,result) { - if(result == null) { - result = new lime_math_Vector4(); - } - result.x = this.x - a.x; - result.y = this.y - a.y; - result.z = this.z - a.z; - return result; - } - ,toString: function() { - return "Vector4(" + 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__: lime_math_Vector4 - ,__properties__: {get_lengthSquared:"get_lengthSquared",get_length:"get_length"} -}; -var lime_media_AudioBuffer = function() { -}; -$hxClasses["lime.media.AudioBuffer"] = lime_media_AudioBuffer; -lime_media_AudioBuffer.__name__ = "lime.media.AudioBuffer"; -lime_media_AudioBuffer.fromBase64 = function(base64String) { - if(base64String == null) { - return null; - } - if(base64String.indexOf(",") == -1) { - base64String = "data:" + lime_media_AudioBuffer.__getCodec(lime__$internal_format_Base64.decode(base64String)) + ";base64," + base64String; - } - var audioBuffer = new lime_media_AudioBuffer(); - audioBuffer.set_src(new Howl({ src : [base64String], html5 : true, preload : false})); - return audioBuffer; -}; -lime_media_AudioBuffer.fromBytes = function(bytes) { - if(bytes == null) { - return null; - } - var audioBuffer = new lime_media_AudioBuffer(); - audioBuffer.set_src(new Howl({ src : ["data:" + lime_media_AudioBuffer.__getCodec(bytes) + ";base64," + lime__$internal_format_Base64.encode(bytes)], html5 : true, preload : false})); - return audioBuffer; -}; -lime_media_AudioBuffer.fromFile = function(path) { - if(path == null) { - return null; - } - var audioBuffer = new lime_media_AudioBuffer(); - audioBuffer.__srcHowl = new Howl({ src : [path], preload : false}); - return audioBuffer; -}; -lime_media_AudioBuffer.fromFiles = function(paths) { - var audioBuffer = new lime_media_AudioBuffer(); - audioBuffer.__srcHowl = new Howl({ src : paths, preload : false}); - return audioBuffer; -}; -lime_media_AudioBuffer.fromVorbisFile = function(vorbisFile) { - return null; -}; -lime_media_AudioBuffer.loadFromFile = function(path) { - var promise = new lime_app_Promise(); - var audioBuffer = lime_media_AudioBuffer.fromFile(path); - if(audioBuffer != null) { - if(audioBuffer != null) { - audioBuffer.__srcHowl.on("load",function() { - promise.complete(audioBuffer); - }); - audioBuffer.__srcHowl.on("loaderror",function(id,msg) { - promise.error(msg); - }); - audioBuffer.__srcHowl.load(); - } - } else { - promise.error(null); - } - return promise.future; -}; -lime_media_AudioBuffer.loadFromFiles = function(paths) { - var promise = new lime_app_Promise(); - var audioBuffer = lime_media_AudioBuffer.fromFiles(paths); - if(audioBuffer != null) { - audioBuffer.__srcHowl.on("load",function() { - promise.complete(audioBuffer); - }); - audioBuffer.__srcHowl.on("loaderror",function() { - promise.error(null); - }); - audioBuffer.__srcHowl.load(); - } else { - promise.error(null); - } - return promise.future; -}; -lime_media_AudioBuffer.__getCodec = function(bytes) { - var signature = bytes.getString(0,4); - switch(signature) { - case "OggS": - return "audio/ogg"; - case "RIFF": - if(bytes.getString(8,4) == "WAVE") { - return "audio/wav"; - } else { - var _g = bytes.b[2]; - var _g1 = bytes.b[1]; - switch(bytes.b[0]) { - case 73: - if(_g1 == 68) { - if(_g == 51) { - return "audio/mp3"; - } - } - break; - case 255: - switch(_g1) { - case 243:case 250:case 251: - return "audio/mp3"; - default: - } - break; - default: - } - } - break; - case "fLaC": - return "audio/flac"; - default: - var _g2 = bytes.b[2]; - var _g11 = bytes.b[1]; - switch(bytes.b[0]) { - case 73: - if(_g11 == 68) { - if(_g2 == 51) { - return "audio/mp3"; - } - } - break; - case 255: - switch(_g11) { - case 243:case 250:case 251: - return "audio/mp3"; - default: - } - break; - default: - } - } - lime_utils_Log.error("Unsupported sound format",{ fileName : "lime/media/AudioBuffer.hx", lineNumber : 362, className : "lime.media.AudioBuffer", methodName : "__getCodec"}); - return null; -}; -lime_media_AudioBuffer.prototype = { - bitsPerSample: null - ,channels: null - ,data: null - ,sampleRate: null - ,__srcAudio: null - ,__srcBuffer: null - ,__srcCustom: null - ,__srcHowl: null - ,__srcSound: null - ,__srcVorbisFile: null - ,dispose: function() { - this.__srcHowl.unload(); - } - ,get_src: function() { - return this.__srcHowl; - } - ,set_src: function(value) { - return this.__srcHowl = value; - } - ,__class__: lime_media_AudioBuffer - ,__properties__: {set_src:"set_src",get_src:"get_src"} -}; -var lime_media_AudioContext = function(type) { - if(type != "custom") { - if(type == null || type == "web") { - try { - window.AudioContext = window.AudioContext || window.webkitAudioContext; - this.web = new window.AudioContext (); - this.type = "web"; - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - } - } - if(this.web == null && type != "web") { - this.html5 = new lime_media_HTML5AudioContext(); - this.type = "html5"; - } - } else { - this.type = "custom"; - } -}; -$hxClasses["lime.media.AudioContext"] = lime_media_AudioContext; -lime_media_AudioContext.__name__ = "lime.media.AudioContext"; -lime_media_AudioContext.prototype = { - custom: null - ,flash: null - ,html5: null - ,openal: null - ,type: null - ,web: null - ,__class__: lime_media_AudioContext -}; -var lime_media_AudioManager = function() { }; -$hxClasses["lime.media.AudioManager"] = lime_media_AudioManager; -lime_media_AudioManager.__name__ = "lime.media.AudioManager"; -lime_media_AudioManager.context = null; -lime_media_AudioManager.init = function(context) { - if(lime_media_AudioManager.context == null) { - if(context == null) { - lime_media_AudioManager.context = new lime_media_AudioContext(); - context = lime_media_AudioManager.context; - if(context.type == "openal") { - var alc = context.openal; - var device = alc.openDevice(); - var ctx = alc.createContext(device); - alc.makeContextCurrent(ctx); - alc.processContext(ctx); - } - } - lime_media_AudioManager.context = context; - } -}; -lime_media_AudioManager.resume = function() { - if(lime_media_AudioManager.context != null && lime_media_AudioManager.context.type == "openal") { - var alc = lime_media_AudioManager.context.openal; - var currentContext = alc.getCurrentContext(); - if(currentContext != null) { - var device = alc.getContextsDevice(currentContext); - alc.resumeDevice(device); - alc.processContext(currentContext); - } - } -}; -lime_media_AudioManager.shutdown = function() { - if(lime_media_AudioManager.context != null && lime_media_AudioManager.context.type == "openal") { - var alc = lime_media_AudioManager.context.openal; - var currentContext = alc.getCurrentContext(); - if(currentContext != null) { - var device = alc.getContextsDevice(currentContext); - alc.makeContextCurrent(null); - alc.destroyContext(currentContext); - if(device != null) { - alc.closeDevice(device); - } - } - } - lime_media_AudioManager.context = null; -}; -lime_media_AudioManager.suspend = function() { - if(lime_media_AudioManager.context != null && lime_media_AudioManager.context.type == "openal") { - var alc = lime_media_AudioManager.context.openal; - var currentContext = alc.getCurrentContext(); - if(currentContext != null) { - alc.suspendContext(currentContext); - var device = alc.getContextsDevice(currentContext); - if(device != null) { - alc.pauseDevice(device); - } - } - } -}; -var lime_media_AudioSource = function(buffer,offset,length,loops) { - if(loops == null) { - loops = 0; - } - if(offset == null) { - offset = 0; - } - this.onComplete = new lime_app__$Event_$Void_$Void(); - this.buffer = buffer; - this.offset = offset; - this.__backend = new lime__$internal_backend_html5_HTML5AudioSource(this); - if(length != null && length != 0) { - this.set_length(length); - } - this.set_loops(loops); - if(buffer != null) { - this.init(); - } -}; -$hxClasses["lime.media.AudioSource"] = lime_media_AudioSource; -lime_media_AudioSource.__name__ = "lime.media.AudioSource"; -lime_media_AudioSource.prototype = { - onComplete: null - ,buffer: null - ,offset: null - ,__backend: null - ,dispose: function() { - this.__backend.dispose(); - } - ,init: function() { - this.__backend.init(); - } - ,play: function() { - this.__backend.play(); - } - ,pause: function() { - this.__backend.pause(); - } - ,stop: function() { - this.__backend.stop(); - } - ,get_currentTime: function() { - return this.__backend.getCurrentTime(); - } - ,set_currentTime: function(value) { - return this.__backend.setCurrentTime(value); - } - ,get_gain: function() { - return this.__backend.getGain(); - } - ,set_gain: function(value) { - return this.__backend.setGain(value); - } - ,get_length: function() { - return this.__backend.getLength(); - } - ,set_length: function(value) { - return this.__backend.setLength(value); - } - ,get_loops: function() { - return this.__backend.getLoops(); - } - ,set_loops: function(value) { - return this.__backend.setLoops(value); - } - ,get_position: function() { - return this.__backend.getPosition(); - } - ,set_position: function(value) { - return this.__backend.setPosition(value); - } - ,__class__: lime_media_AudioSource - ,__properties__: {set_position:"set_position",get_position:"get_position",set_loops:"set_loops",get_loops:"get_loops",set_length:"set_length",get_length:"get_length",set_gain:"set_gain",get_gain:"get_gain",set_currentTime:"set_currentTime",get_currentTime:"get_currentTime"} -}; -var lime_media_FlashAudioContext = function() { -}; -$hxClasses["lime.media.FlashAudioContext"] = lime_media_FlashAudioContext; -lime_media_FlashAudioContext.__name__ = "lime.media.FlashAudioContext"; -lime_media_FlashAudioContext.prototype = { - createBuffer: function(stream,context) { - return null; - } - ,getBytesLoaded: function(buffer) { - return 0; - } - ,getBytesTotal: function(buffer) { - return 0; - } - ,getID3: function(buffer) { - return null; - } - ,getIsBuffering: function(buffer) { - return false; - } - ,getIsURLInaccessible: function(buffer) { - return false; - } - ,getLength: function(buffer) { - return 0; - } - ,getURL: function(buffer) { - return null; - } - ,close: function(buffer) { - } - ,extract: function(buffer,target,length,startPosition) { - if(startPosition == null) { - startPosition = -1; - } - return 0; - } - ,load: function(buffer,stream,context) { - } - ,loadCompressedDataFromByteArray: function(buffer,bytes,bytesLength) { - } - ,loadPCMFromByteArray: function(buffer,bytes,samples,format,stereo,sampleRate) { - if(sampleRate == null) { - sampleRate = 44100; - } - if(stereo == null) { - stereo = true; - } - } - ,play: function(buffer,startTime,loops,sndTransform) { - if(loops == null) { - loops = 0; - } - if(startTime == null) { - startTime = 0; - } - return null; - } - ,__class__: lime_media_FlashAudioContext -}; -var lime_media_HTML5AudioContext = function() { - this.NETWORK_NO_SOURCE = 3; - this.NETWORK_LOADING = 2; - this.NETWORK_IDLE = 1; - this.NETWORK_EMPTY = 0; - this.HAVE_NOTHING = 0; - this.HAVE_METADATA = 1; - this.HAVE_FUTURE_DATA = 3; - this.HAVE_ENOUGH_DATA = 4; - this.HAVE_CURRENT_DATA = 2; -}; -$hxClasses["lime.media.HTML5AudioContext"] = lime_media_HTML5AudioContext; -lime_media_HTML5AudioContext.__name__ = "lime.media.HTML5AudioContext"; -lime_media_HTML5AudioContext.prototype = { - HAVE_CURRENT_DATA: null - ,HAVE_ENOUGH_DATA: null - ,HAVE_FUTURE_DATA: null - ,HAVE_METADATA: null - ,HAVE_NOTHING: null - ,NETWORK_EMPTY: null - ,NETWORK_IDLE: null - ,NETWORK_LOADING: null - ,NETWORK_NO_SOURCE: null - ,canPlayType: function(buffer,type) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.canPlayType(type); - } - return null; - } - ,createBuffer: function(urlString) { - var buffer = new lime_media_AudioBuffer(); - buffer.__srcAudio = new Audio(); - buffer.__srcAudio.src = urlString; - return buffer; - } - ,getAutoplay: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.autoplay; - } - return false; - } - ,getBuffered: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.buffered; - } - return null; - } - ,getCurrentSrc: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.currentSrc; - } - return null; - } - ,getCurrentTime: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.currentTime; - } - return 0; - } - ,getDefaultPlaybackRate: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.defaultPlaybackRate; - } - return 1; - } - ,getDuration: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.duration; - } - return 0; - } - ,getEnded: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.ended; - } - return false; - } - ,getError: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.error; - } - return null; - } - ,getLoop: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.loop; - } - return false; - } - ,getMuted: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.muted; - } - return false; - } - ,getNetworkState: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.networkState; - } - return 0; - } - ,getPaused: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.paused; - } - return false; - } - ,getPlaybackRate: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.playbackRate; - } - return 1; - } - ,getPlayed: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.played; - } - return null; - } - ,getPreload: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.preload; - } - return null; - } - ,getReadyState: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.readyState; - } - return 0; - } - ,getSeekable: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.seekable; - } - return null; - } - ,getSeeking: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.seeking; - } - return false; - } - ,getSrc: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.src; - } - return null; - } - ,getStartTime: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.playbackRate; - } - return 0; - } - ,getVolume: function(buffer) { - if(buffer.__srcAudio != null) { - return buffer.__srcAudio.volume; - } - return 1; - } - ,load: function(buffer) { - if(buffer.__srcAudio != null) { - buffer.__srcAudio.load(); - } - } - ,pause: function(buffer) { - if(buffer.__srcAudio != null) { - buffer.__srcAudio.pause(); - } - } - ,play: function(buffer) { - if(buffer.__srcAudio != null) { - buffer.__srcAudio.play(); - } - } - ,setAutoplay: function(buffer,value) { - if(buffer.__srcAudio != null) { - buffer.__srcAudio.autoplay = value; - } - } - ,setCurrentTime: function(buffer,value) { - if(buffer.__srcAudio != null) { - buffer.__srcAudio.currentTime = value; - } - } - ,setDefaultPlaybackRate: function(buffer,value) { - if(buffer.__srcAudio != null) { - buffer.__srcAudio.defaultPlaybackRate = value; - } - } - ,setLoop: function(buffer,value) { - if(buffer.__srcAudio != null) { - buffer.__srcAudio.loop = value; - } - } - ,setMuted: function(buffer,value) { - if(buffer.__srcAudio != null) { - buffer.__srcAudio.muted = value; - } - } - ,setPlaybackRate: function(buffer,value) { - if(buffer.__srcAudio != null) { - buffer.__srcAudio.playbackRate = value; - } - } - ,setPreload: function(buffer,value) { - if(buffer.__srcAudio != null) { - buffer.__srcAudio.preload = value; - } - } - ,setSrc: function(buffer,value) { - if(buffer.__srcAudio != null) { - buffer.__srcAudio.src = value; - } - } - ,setVolume: function(buffer,value) { - if(buffer.__srcAudio != null) { - buffer.__srcAudio.volume = value; - } - } - ,__class__: lime_media_HTML5AudioContext -}; -var lime_media_OpenALAudioContext = function() { - this.ALL_DEVICES_SPECIFIER = 4115; - this.DEFAULT_ALL_DEVICES_SPECIFIER = 4114; - this.ENUMERATE_ALL_EXT = 1; - this.DEVICE_SPECIFIER = 4101; - this.DEFAULT_DEVICE_SPECIFIER = 4100; - this.ALL_ATTRIBUTES = 4099; - this.ATTRIBUTES_SIZE = 4098; - this.INVALID_CONTEXT = 40962; - this.INVALID_DEVICE = 40961; - this.STEREO_SOURCES = 4113; - this.MONO_SOURCES = 4112; - this.SYNC = 4105; - this.REFRESH = 4104; - this.EXPONENT_DISTANCE_CLAMPED = 53254; - this.EXPONENT_DISTANCE = 53253; - this.LINEAR_DISTANCE_CLAMPED = 53252; - this.LINEAR_DISTANCE = 53251; - this.INVERSE_DISTANCE_CLAMPED = 53250; - this.INVERSE_DISTANCE = 53249; - this.DISTANCE_MODEL = 53248; - this.DOPPLER_VELOCITY = 49153; - this.SPEED_OF_SOUND = 49155; - this.DOPPLER_FACTOR = 49152; - this.EXTENSIONS = 45060; - this.RENDERER = 45059; - this.VERSION = 45058; - this.VENDOR = 45057; - this.OUT_OF_MEMORY = 40965; - this.INVALID_OPERATION = 40964; - this.INVALID_VALUE = 40963; - this.INVALID_ENUM = 40962; - this.INVALID_NAME = 40961; - this.NO_ERROR = 0; - this.SIZE = 8196; - this.CHANNELS = 8195; - this.BITS = 8194; - this.FREQUENCY = 8193; - this.FORMAT_STEREO16 = 4355; - this.FORMAT_STEREO8 = 4354; - this.FORMAT_MONO16 = 4353; - this.FORMAT_MONO8 = 4352; - this.UNDETERMINED = 4144; - this.STREAMING = 4137; - this.STATIC = 4136; - this.SOURCE_TYPE = 4135; - this.BYTE_OFFSET = 4134; - this.SAMPLE_OFFSET = 4133; - this.SEC_OFFSET = 4132; - this.MAX_DISTANCE = 4131; - this.CONE_OUTER_GAIN = 4130; - this.ROLLOFF_FACTOR = 4129; - this.REFERENCE_DISTANCE = 4128; - this.BUFFERS_PROCESSED = 4118; - this.BUFFERS_QUEUED = 4117; - this.STOPPED = 4116; - this.PAUSED = 4115; - this.PLAYING = 4114; - this.INITIAL = 4113; - this.SOURCE_STATE = 4112; - this.ORIENTATION = 4111; - this.MAX_GAIN = 4110; - this.MIN_GAIN = 4109; - this.GAIN = 4106; - this.BUFFER = 4105; - this.LOOPING = 4103; - this.VELOCITY = 4102; - this.DIRECTION = 4101; - this.POSITION = 4100; - this.PITCH = 4099; - this.CONE_OUTER_ANGLE = 4098; - this.CONE_INNER_ANGLE = 4097; - this.SOURCE_RELATIVE = 514; - this.TRUE = 1; - this.FALSE = 0; - this.NONE = 0; -}; -$hxClasses["lime.media.OpenALAudioContext"] = lime_media_OpenALAudioContext; -lime_media_OpenALAudioContext.__name__ = "lime.media.OpenALAudioContext"; -lime_media_OpenALAudioContext.prototype = { - NONE: null - ,FALSE: null - ,TRUE: null - ,SOURCE_RELATIVE: null - ,CONE_INNER_ANGLE: null - ,CONE_OUTER_ANGLE: null - ,PITCH: null - ,POSITION: null - ,DIRECTION: null - ,VELOCITY: null - ,LOOPING: null - ,BUFFER: null - ,GAIN: null - ,MIN_GAIN: null - ,MAX_GAIN: null - ,ORIENTATION: null - ,SOURCE_STATE: null - ,INITIAL: null - ,PLAYING: null - ,PAUSED: null - ,STOPPED: null - ,BUFFERS_QUEUED: null - ,BUFFERS_PROCESSED: null - ,REFERENCE_DISTANCE: null - ,ROLLOFF_FACTOR: null - ,CONE_OUTER_GAIN: null - ,MAX_DISTANCE: null - ,SEC_OFFSET: null - ,SAMPLE_OFFSET: null - ,BYTE_OFFSET: null - ,SOURCE_TYPE: null - ,STATIC: null - ,STREAMING: null - ,UNDETERMINED: null - ,FORMAT_MONO8: null - ,FORMAT_MONO16: null - ,FORMAT_STEREO8: null - ,FORMAT_STEREO16: null - ,FREQUENCY: null - ,BITS: null - ,CHANNELS: null - ,SIZE: null - ,NO_ERROR: null - ,INVALID_NAME: null - ,INVALID_ENUM: null - ,INVALID_VALUE: null - ,INVALID_OPERATION: null - ,OUT_OF_MEMORY: null - ,VENDOR: null - ,VERSION: null - ,RENDERER: null - ,EXTENSIONS: null - ,DOPPLER_FACTOR: null - ,SPEED_OF_SOUND: null - ,DOPPLER_VELOCITY: null - ,DISTANCE_MODEL: null - ,INVERSE_DISTANCE: null - ,INVERSE_DISTANCE_CLAMPED: null - ,LINEAR_DISTANCE: null - ,LINEAR_DISTANCE_CLAMPED: null - ,EXPONENT_DISTANCE: null - ,EXPONENT_DISTANCE_CLAMPED: null - ,REFRESH: null - ,SYNC: null - ,MONO_SOURCES: null - ,STEREO_SOURCES: null - ,INVALID_DEVICE: null - ,INVALID_CONTEXT: null - ,ATTRIBUTES_SIZE: null - ,ALL_ATTRIBUTES: null - ,DEFAULT_DEVICE_SPECIFIER: null - ,DEVICE_SPECIFIER: null - ,ENUMERATE_ALL_EXT: null - ,DEFAULT_ALL_DEVICES_SPECIFIER: null - ,ALL_DEVICES_SPECIFIER: null - ,bufferData: function(buffer,format,data,size,freq) { - lime_media_openal_AL.bufferData(buffer,format,data,size,freq); - } - ,buffer3f: function(buffer,param,value1,value2,value3) { - lime_media_openal_AL.buffer3f(buffer,param,value1,value2,value3); - } - ,buffer3i: function(buffer,param,value1,value2,value3) { - lime_media_openal_AL.buffer3i(buffer,param,value1,value2,value3); - } - ,bufferf: function(buffer,param,value) { - lime_media_openal_AL.bufferf(buffer,param,value); - } - ,bufferfv: function(buffer,param,values) { - lime_media_openal_AL.bufferfv(buffer,param,values); - } - ,bufferi: function(buffer,param,value) { - lime_media_openal_AL.bufferi(buffer,param,value); - } - ,bufferiv: function(buffer,param,values) { - lime_media_openal_AL.bufferiv(buffer,param,values); - } - ,closeDevice: function(device) { - return lime_media_openal_ALC.closeDevice(device); - } - ,createContext: function(device,attrlist) { - return lime_media_openal_ALC.createContext(device,attrlist); - } - ,createBuffer: function() { - return lime_media_openal_AL.createBuffer(); - } - ,createSource: function() { - return lime_media_openal_AL.createSource(); - } - ,deleteBuffer: function(buffer) { - lime_media_openal_AL.deleteBuffer(buffer); - } - ,deleteBuffers: function(buffers) { - lime_media_openal_AL.deleteBuffers(buffers); - } - ,deleteSource: function(source) { - lime_media_openal_AL.deleteSource(source); - } - ,deleteSources: function(sources) { - lime_media_openal_AL.deleteSources(sources); - } - ,destroyContext: function(context) { - if(context == null) { - return; - } - lime_media_openal_ALC.destroyContext(context); - } - ,disable: function(capability) { - lime_media_openal_AL.disable(capability); - } - ,distanceModel: function(distanceModel) { - lime_media_openal_AL.distanceModel(distanceModel); - } - ,dopplerFactor: function(value) { - lime_media_openal_AL.dopplerFactor(value); - } - ,dopplerVelocity: function(value) { - lime_media_openal_AL.dopplerVelocity(value); - } - ,enable: function(capability) { - lime_media_openal_AL.enable(capability); - } - ,genSource: function() { - return this.createSource(); - } - ,genSources: function(n) { - return lime_media_openal_AL.genSources(n); - } - ,genBuffer: function() { - return this.createBuffer(); - } - ,genBuffers: function(n) { - return lime_media_openal_AL.genBuffers(n); - } - ,getBoolean: function(param) { - return lime_media_openal_AL.getBoolean(param); - } - ,getBooleanv: function(param,count) { - if(count == null) { - count = 1; - } - return lime_media_openal_AL.getBooleanv(param,count); - } - ,getBuffer3f: function(buffer,param) { - return lime_media_openal_AL.getBuffer3f(buffer,param); - } - ,getBuffer3i: function(buffer,param) { - return lime_media_openal_AL.getBuffer3i(buffer,param); - } - ,getBufferf: function(buffer,param) { - return lime_media_openal_AL.getBufferf(buffer,param); - } - ,getBufferfv: function(buffer,param,count) { - if(count == null) { - count = 1; - } - return lime_media_openal_AL.getBufferfv(buffer,param,count); - } - ,getBufferi: function(buffer,param) { - return lime_media_openal_AL.getBufferi(buffer,param); - } - ,getBufferiv: function(buffer,param,count) { - if(count == null) { - count = 1; - } - return lime_media_openal_AL.getBufferiv(buffer,param,count); - } - ,getContextsDevice: function(context) { - if(context == null) { - return null; - } - return lime_media_openal_ALC.getContextsDevice(context); - } - ,getCurrentContext: function() { - return lime_media_openal_ALC.getCurrentContext(); - } - ,getDouble: function(param) { - return lime_media_openal_AL.getDouble(param); - } - ,getDoublev: function(param,count) { - if(count == null) { - count = 1; - } - return lime_media_openal_AL.getDoublev(param,count); - } - ,getEnumValue: function(ename) { - return lime_media_openal_AL.getEnumValue(ename); - } - ,getError: function(device) { - if(device == null) { - return lime_media_openal_AL.getError(); - } else { - return lime_media_openal_ALC.getError(device); - } - } - ,getErrorString: function(device) { - if(device == null) { - return lime_media_openal_AL.getErrorString(); - } else { - return lime_media_openal_ALC.getErrorString(device); - } - } - ,getFloat: function(param) { - return lime_media_openal_AL.getFloat(param); - } - ,getFloatv: function(param,count) { - if(count == null) { - count = 1; - } - return lime_media_openal_AL.getFloatv(param,count); - } - ,getInteger: function(param) { - return lime_media_openal_AL.getInteger(param); - } - ,getIntegerv: function(param,count,device) { - if(count == null) { - count = 1; - } - if(device == null) { - return lime_media_openal_AL.getIntegerv(param,count); - } else { - return lime_media_openal_ALC.getIntegerv(device,param,count); - } - } - ,getListener3f: function(param) { - return lime_media_openal_AL.getListener3f(param); - } - ,getListener3i: function(param) { - return lime_media_openal_AL.getListener3i(param); - } - ,getListenerf: function(param) { - return lime_media_openal_AL.getListenerf(param); - } - ,getListenerfv: function(param,count) { - if(count == null) { - count = 1; - } - return lime_media_openal_AL.getListenerfv(param,count); - } - ,getListeneri: function(param) { - return lime_media_openal_AL.getListeneri(param); - } - ,getListeneriv: function(param,count) { - if(count == null) { - count = 1; - } - return lime_media_openal_AL.getListeneriv(param,count); - } - ,getProcAddress: function(fname) { - return lime_media_openal_AL.getProcAddress(fname); - } - ,getSource3f: function(source,param) { - return lime_media_openal_AL.getSource3f(source,param); - } - ,getSourcef: function(source,param) { - return lime_media_openal_AL.getSourcef(source,param); - } - ,getSource3i: function(source,param) { - return lime_media_openal_AL.getSource3i(source,param); - } - ,getSourcefv: function(source,param,count) { - if(count == null) { - count = 1; - } - return lime_media_openal_AL.getSourcefv(source,param); - } - ,getSourcei: function(source,param) { - return lime_media_openal_AL.getSourcei(source,param); - } - ,getSourceiv: function(source,param,count) { - if(count == null) { - count = 1; - } - return lime_media_openal_AL.getSourceiv(source,param,count); - } - ,getString: function(param,device) { - if(device == null) { - return lime_media_openal_AL.getString(param); - } else { - return lime_media_openal_ALC.getString(device,param); - } - } - ,isBuffer: function(buffer) { - return lime_media_openal_AL.isBuffer(buffer); - } - ,isEnabled: function(capability) { - return lime_media_openal_AL.isEnabled(capability); - } - ,isExtensionPresent: function(extname) { - return lime_media_openal_AL.isExtensionPresent(extname); - } - ,isSource: function(source) { - return lime_media_openal_AL.isSource(source); - } - ,listener3f: function(param,value1,value2,value3) { - lime_media_openal_AL.listener3f(param,value1,value2,value3); - } - ,listener3i: function(param,value1,value2,value3) { - lime_media_openal_AL.listener3i(param,value1,value2,value3); - } - ,listenerf: function(param,value) { - lime_media_openal_AL.listenerf(param,value); - } - ,listenerfv: function(param,values) { - lime_media_openal_AL.listenerfv(param,values); - } - ,listeneri: function(param,value) { - lime_media_openal_AL.listeneri(param,value); - } - ,listeneriv: function(param,values) { - lime_media_openal_AL.listeneriv(param,values); - } - ,makeContextCurrent: function(context) { - return lime_media_openal_ALC.makeContextCurrent(context); - } - ,openDevice: function(deviceName) { - return lime_media_openal_ALC.openDevice(deviceName); - } - ,pauseDevice: function(device) { - lime_media_openal_ALC.pauseDevice(device); - } - ,processContext: function(context) { - lime_media_openal_ALC.processContext(context); - } - ,resumeDevice: function(device) { - lime_media_openal_ALC.resumeDevice(device); - } - ,source3f: function(source,param,value1,value2,value3) { - lime_media_openal_AL.source3f(source,param,value1,value2,value3); - } - ,source3i: function(source,param,value1,value2,value3) { - lime_media_openal_AL.source3i(source,param,value1,value2,value3); - } - ,sourcef: function(source,param,value) { - lime_media_openal_AL.sourcef(source,param,value); - } - ,sourcefv: function(source,param,values) { - lime_media_openal_AL.sourcefv(source,param,values); - } - ,sourcei: function(source,param,value) { - lime_media_openal_AL.sourcei(source,param,value); - } - ,sourceiv: function(source,param,values) { - lime_media_openal_AL.sourceiv(source,param,values); - } - ,sourcePlay: function(source) { - lime_media_openal_AL.sourcePlay(source); - } - ,sourcePlayv: function(sources) { - lime_media_openal_AL.sourcePlayv(sources); - } - ,sourceStop: function(source) { - lime_media_openal_AL.sourceStop(source); - } - ,sourceStopv: function(sources) { - lime_media_openal_AL.sourceStopv(sources); - } - ,sourceRewind: function(source) { - lime_media_openal_AL.sourceRewind(source); - } - ,sourceRewindv: function(sources) { - lime_media_openal_AL.sourceRewindv(sources); - } - ,sourcePause: function(source) { - lime_media_openal_AL.sourcePause(source); - } - ,sourcePausev: function(sources) { - lime_media_openal_AL.sourcePausev(sources); - } - ,sourceQueueBuffer: function(source,buffer) { - lime_media_openal_AL.sourceQueueBuffer(source,buffer); - } - ,sourceQueueBuffers: function(source,nb,buffers) { - lime_media_openal_AL.sourceQueueBuffers(source,nb,buffers); - } - ,sourceUnqueueBuffer: function(source) { - return lime_media_openal_AL.sourceUnqueueBuffer(source); - } - ,sourceUnqueueBuffers: function(source,nb) { - return lime_media_openal_AL.sourceUnqueueBuffers(source,nb); - } - ,speedOfSound: function(value) { - lime_media_openal_AL.speedOfSound(value); - } - ,suspendContext: function(context) { - lime_media_openal_ALC.suspendContext(context); - } - ,__class__: lime_media_OpenALAudioContext -}; -var lime_media_openal_AL = function() { }; -$hxClasses["lime.media.openal.AL"] = lime_media_openal_AL; -lime_media_openal_AL.__name__ = "lime.media.openal.AL"; -lime_media_openal_AL.removeDirectFilter = function(source) { -}; -lime_media_openal_AL.removeSend = function(source,index) { -}; -lime_media_openal_AL.auxf = function(aux,param,value) { -}; -lime_media_openal_AL.auxfv = function(aux,param,values) { -}; -lime_media_openal_AL.auxi = function(aux,param,value) { -}; -lime_media_openal_AL.auxiv = function(aux,param,values) { -}; -lime_media_openal_AL.bufferData = function(buffer,format,data,size,freq) { -}; -lime_media_openal_AL.buffer3f = function(buffer,param,value1,value2,value3) { -}; -lime_media_openal_AL.buffer3i = function(buffer,param,value1,value2,value3) { -}; -lime_media_openal_AL.bufferf = function(buffer,param,value) { -}; -lime_media_openal_AL.bufferfv = function(buffer,param,values) { -}; -lime_media_openal_AL.bufferi = function(buffer,param,value) { -}; -lime_media_openal_AL.bufferiv = function(buffer,param,values) { -}; -lime_media_openal_AL.createAux = function() { - return null; -}; -lime_media_openal_AL.createBuffer = function() { - return null; -}; -lime_media_openal_AL.createEffect = function() { - return null; -}; -lime_media_openal_AL.createFilter = function() { - return null; -}; -lime_media_openal_AL.createSource = function() { - return null; -}; -lime_media_openal_AL.deleteBuffer = function(buffer) { -}; -lime_media_openal_AL.deleteBuffers = function(buffers) { -}; -lime_media_openal_AL.deleteSource = function(source) { -}; -lime_media_openal_AL.deleteSources = function(sources) { -}; -lime_media_openal_AL.disable = function(capability) { -}; -lime_media_openal_AL.distanceModel = function(distanceModel) { -}; -lime_media_openal_AL.dopplerFactor = function(value) { -}; -lime_media_openal_AL.dopplerVelocity = function(value) { -}; -lime_media_openal_AL.effectf = function(effect,param,value) { -}; -lime_media_openal_AL.effectfv = function(effect,param,values) { -}; -lime_media_openal_AL.effecti = function(effect,param,value) { -}; -lime_media_openal_AL.effectiv = function(effect,param,values) { -}; -lime_media_openal_AL.enable = function(capability) { -}; -lime_media_openal_AL.genSource = function() { - return null; -}; -lime_media_openal_AL.genSources = function(n) { - return null; -}; -lime_media_openal_AL.genBuffer = function() { - return null; -}; -lime_media_openal_AL.genBuffers = function(n) { - return null; -}; -lime_media_openal_AL.getBoolean = function(param) { - return false; -}; -lime_media_openal_AL.getBooleanv = function(param,count) { - if(count == null) { - count = 1; - } - return null; -}; -lime_media_openal_AL.getBuffer3f = function(buffer,param) { - return null; -}; -lime_media_openal_AL.getBuffer3i = function(buffer,param) { - return null; -}; -lime_media_openal_AL.getBufferf = function(buffer,param) { - return 0; -}; -lime_media_openal_AL.getBufferfv = function(buffer,param,count) { - if(count == null) { - count = 1; - } - return null; -}; -lime_media_openal_AL.getBufferi = function(buffer,param) { - return 0; -}; -lime_media_openal_AL.getBufferiv = function(buffer,param,count) { - if(count == null) { - count = 1; - } - return null; -}; -lime_media_openal_AL.getDouble = function(param) { - return 0; -}; -lime_media_openal_AL.getDoublev = function(param,count) { - if(count == null) { - count = 1; - } - return null; -}; -lime_media_openal_AL.getEnumValue = function(ename) { - return 0; -}; -lime_media_openal_AL.getError = function() { - return 0; -}; -lime_media_openal_AL.getErrorString = function() { - switch(lime_media_openal_AL.getError()) { - case 40961: - return "INVALID_NAME: Invalid parameter name"; - case 40962: - return "INVALID_ENUM: Invalid enum value"; - case 40963: - return "INVALID_VALUE: Invalid parameter value"; - case 40964: - return "INVALID_OPERATION: Illegal operation or call"; - case 40965: - return "OUT_OF_MEMORY: OpenAL has run out of memory"; - default: - return ""; - } -}; -lime_media_openal_AL.getFilteri = function(filter,param) { - return 0; -}; -lime_media_openal_AL.getFloat = function(param) { - return 0; -}; -lime_media_openal_AL.getFloatv = function(param,count) { - if(count == null) { - count = 1; - } - return null; -}; -lime_media_openal_AL.getInteger = function(param) { - return 0; -}; -lime_media_openal_AL.getIntegerv = function(param,count) { - if(count == null) { - count = 1; - } - return null; -}; -lime_media_openal_AL.getListener3f = function(param) { - return null; -}; -lime_media_openal_AL.getListener3i = function(param) { - return null; -}; -lime_media_openal_AL.getListenerf = function(param) { - return 0; -}; -lime_media_openal_AL.getListenerfv = function(param,count) { - if(count == null) { - count = 1; - } - return null; -}; -lime_media_openal_AL.getListeneri = function(param) { - return 0; -}; -lime_media_openal_AL.getListeneriv = function(param,count) { - if(count == null) { - count = 1; - } - return null; -}; -lime_media_openal_AL.getParameter = function(param) { - return null; -}; -lime_media_openal_AL.getProcAddress = function(fname) { - return null; -}; -lime_media_openal_AL.getSource3f = function(source,param) { - return null; -}; -lime_media_openal_AL.getSourcef = function(source,param) { - return 0; -}; -lime_media_openal_AL.getSource3i = function(source,param) { - return null; -}; -lime_media_openal_AL.getSourcefv = function(source,param,count) { - if(count == null) { - count = 1; - } - return null; -}; -lime_media_openal_AL.getSourcei = function(source,param) { - return 0; -}; -lime_media_openal_AL.getSourceiv = function(source,param,count) { - if(count == null) { - count = 1; - } - return null; -}; -lime_media_openal_AL.getString = function(param) { - return null; -}; -lime_media_openal_AL.isBuffer = function(buffer) { - return false; -}; -lime_media_openal_AL.isEnabled = function(capability) { - return false; -}; -lime_media_openal_AL.isExtensionPresent = function(extname) { - return false; -}; -lime_media_openal_AL.isAux = function(aux) { - return false; -}; -lime_media_openal_AL.isEffect = function(effect) { - return false; -}; -lime_media_openal_AL.isFilter = function(filter) { - return false; -}; -lime_media_openal_AL.isSource = function(source) { - return false; -}; -lime_media_openal_AL.listener3f = function(param,value1,value2,value3) { -}; -lime_media_openal_AL.listener3i = function(param,value1,value2,value3) { -}; -lime_media_openal_AL.listenerf = function(param,value) { -}; -lime_media_openal_AL.listenerfv = function(param,values) { -}; -lime_media_openal_AL.listeneri = function(param,value) { -}; -lime_media_openal_AL.listeneriv = function(param,values) { -}; -lime_media_openal_AL.source3f = function(source,param,value1,value2,value3) { -}; -lime_media_openal_AL.source3i = function(source,param,value1,value2,value3) { -}; -lime_media_openal_AL.sourcef = function(source,param,value) { -}; -lime_media_openal_AL.sourcefv = function(source,param,values) { -}; -lime_media_openal_AL.sourcei = function(source,param,value) { -}; -lime_media_openal_AL.filteri = function(filter,param,value) { -}; -lime_media_openal_AL.filterf = function(filter,param,value) { -}; -lime_media_openal_AL.sourceiv = function(source,param,values) { -}; -lime_media_openal_AL.sourcePlay = function(source) { -}; -lime_media_openal_AL.sourcePlayv = function(sources) { -}; -lime_media_openal_AL.sourceStop = function(source) { -}; -lime_media_openal_AL.sourceStopv = function(sources) { -}; -lime_media_openal_AL.sourceRewind = function(source) { -}; -lime_media_openal_AL.sourceRewindv = function(sources) { -}; -lime_media_openal_AL.sourcePause = function(source) { -}; -lime_media_openal_AL.sourcePausev = function(sources) { -}; -lime_media_openal_AL.sourceQueueBuffer = function(source,buffer) { -}; -lime_media_openal_AL.sourceQueueBuffers = function(source,nb,buffers) { -}; -lime_media_openal_AL.sourceUnqueueBuffer = function(source) { - return 0; -}; -lime_media_openal_AL.sourceUnqueueBuffers = function(source,nb) { - return null; -}; -lime_media_openal_AL.speedOfSound = function(value) { -}; -var lime_media_openal__$ALAuxiliaryEffectSlot_ALAuxiliaryEffectSlot_$Impl_$ = {}; -$hxClasses["lime.media.openal._ALAuxiliaryEffectSlot.ALAuxiliaryEffectSlot_Impl_"] = lime_media_openal__$ALAuxiliaryEffectSlot_ALAuxiliaryEffectSlot_$Impl_$; -lime_media_openal__$ALAuxiliaryEffectSlot_ALAuxiliaryEffectSlot_$Impl_$.__name__ = "lime.media.openal._ALAuxiliaryEffectSlot.ALAuxiliaryEffectSlot_Impl_"; -lime_media_openal__$ALAuxiliaryEffectSlot_ALAuxiliaryEffectSlot_$Impl_$._new = function(handle) { - var this1 = handle; - return this1; -}; -var lime_media_openal__$ALBuffer_ALBuffer_$Impl_$ = {}; -$hxClasses["lime.media.openal._ALBuffer.ALBuffer_Impl_"] = lime_media_openal__$ALBuffer_ALBuffer_$Impl_$; -lime_media_openal__$ALBuffer_ALBuffer_$Impl_$.__name__ = "lime.media.openal._ALBuffer.ALBuffer_Impl_"; -lime_media_openal__$ALBuffer_ALBuffer_$Impl_$._new = function(handle) { - var this1 = handle; - return this1; -}; -var lime_media_openal_ALC = function() { }; -$hxClasses["lime.media.openal.ALC"] = lime_media_openal_ALC; -lime_media_openal_ALC.__name__ = "lime.media.openal.ALC"; -lime_media_openal_ALC.closeDevice = function(device) { - return false; -}; -lime_media_openal_ALC.createContext = function(device,attrlist) { - return null; -}; -lime_media_openal_ALC.destroyContext = function(context) { -}; -lime_media_openal_ALC.getContextsDevice = function(context) { - return null; -}; -lime_media_openal_ALC.getCurrentContext = function() { - return null; -}; -lime_media_openal_ALC.getError = function(device) { - return 0; -}; -lime_media_openal_ALC.getErrorString = function(device) { - switch(lime_media_openal_ALC.getError(device)) { - case 40961: - return "INVALID_DEVICE: Invalid device (or no device?)"; - case 40962: - return "INVALID_CONTEXT: Invalid context (or no context?)"; - case 40963: - return "INVALID_ENUM: Invalid enum value"; - case 40964: - return "INVALID_VALUE: Invalid param value"; - case 40965: - return "OUT_OF_MEMORY: OpenAL has run out of memory"; - default: - return ""; - } -}; -lime_media_openal_ALC.getIntegerv = function(device,param,size) { - return null; -}; -lime_media_openal_ALC.getString = function(device,param) { - return null; -}; -lime_media_openal_ALC.makeContextCurrent = function(context) { - return false; -}; -lime_media_openal_ALC.openDevice = function(deviceName) { - return null; -}; -lime_media_openal_ALC.pauseDevice = function(device) { -}; -lime_media_openal_ALC.processContext = function(context) { -}; -lime_media_openal_ALC.resumeDevice = function(device) { -}; -lime_media_openal_ALC.suspendContext = function(context) { -}; -var lime_media_openal__$ALContext_ALContext_$Impl_$ = {}; -$hxClasses["lime.media.openal._ALContext.ALContext_Impl_"] = lime_media_openal__$ALContext_ALContext_$Impl_$; -lime_media_openal__$ALContext_ALContext_$Impl_$.__name__ = "lime.media.openal._ALContext.ALContext_Impl_"; -lime_media_openal__$ALContext_ALContext_$Impl_$._new = function(handle) { - var this1 = handle; - return this1; -}; -var lime_media_openal__$ALDevice_ALDevice_$Impl_$ = {}; -$hxClasses["lime.media.openal._ALDevice.ALDevice_Impl_"] = lime_media_openal__$ALDevice_ALDevice_$Impl_$; -lime_media_openal__$ALDevice_ALDevice_$Impl_$.__name__ = "lime.media.openal._ALDevice.ALDevice_Impl_"; -lime_media_openal__$ALDevice_ALDevice_$Impl_$._new = function(handle) { - var this1 = handle; - return this1; -}; -var lime_media_openal__$ALEffect_ALEffect_$Impl_$ = {}; -$hxClasses["lime.media.openal._ALEffect.ALEffect_Impl_"] = lime_media_openal__$ALEffect_ALEffect_$Impl_$; -lime_media_openal__$ALEffect_ALEffect_$Impl_$.__name__ = "lime.media.openal._ALEffect.ALEffect_Impl_"; -lime_media_openal__$ALEffect_ALEffect_$Impl_$._new = function(handle) { - var this1 = handle; - return this1; -}; -var lime_media_openal__$ALFilter_ALFilter_$Impl_$ = {}; -$hxClasses["lime.media.openal._ALFilter.ALFilter_Impl_"] = lime_media_openal__$ALFilter_ALFilter_$Impl_$; -lime_media_openal__$ALFilter_ALFilter_$Impl_$.__name__ = "lime.media.openal._ALFilter.ALFilter_Impl_"; -lime_media_openal__$ALFilter_ALFilter_$Impl_$._new = function(handle) { - var this1 = handle; - return this1; -}; -var lime_media_openal__$ALSource_ALSource_$Impl_$ = {}; -$hxClasses["lime.media.openal._ALSource.ALSource_Impl_"] = lime_media_openal__$ALSource_ALSource_$Impl_$; -lime_media_openal__$ALSource_ALSource_$Impl_$.__name__ = "lime.media.openal._ALSource.ALSource_Impl_"; -lime_media_openal__$ALSource_ALSource_$Impl_$._new = function(handle) { - var this1 = handle; - return this1; -}; -var lime_media_vorbis_VorbisComment = function() { -}; -$hxClasses["lime.media.vorbis.VorbisComment"] = lime_media_vorbis_VorbisComment; -lime_media_vorbis_VorbisComment.__name__ = "lime.media.vorbis.VorbisComment"; -lime_media_vorbis_VorbisComment.prototype = { - userComments: null - ,vendor: null - ,__class__: lime_media_vorbis_VorbisComment -}; -var lime_media_vorbis_VorbisFile = function(handle) { - this.handle = handle; -}; -$hxClasses["lime.media.vorbis.VorbisFile"] = lime_media_vorbis_VorbisFile; -lime_media_vorbis_VorbisFile.__name__ = "lime.media.vorbis.VorbisFile"; -lime_media_vorbis_VorbisFile.fromBytes = function(bytes) { - return null; -}; -lime_media_vorbis_VorbisFile.fromFile = function(path) { - return null; -}; -lime_media_vorbis_VorbisFile.prototype = { - bitstream: null - ,handle: null - ,bitrate: function(bitstream) { - if(bitstream == null) { - bitstream = -1; - } - return 0; - } - ,bitrateInstant: function() { - return 0; - } - ,clear: function() { - } - ,comment: function(bitstream) { - if(bitstream == null) { - bitstream = -1; - } - return null; - } - ,crosslap: function(other) { - return 0; - } - ,info: function(bitstream) { - if(bitstream == null) { - bitstream = -1; - } - return null; - } - ,pcmSeek: function(pos) { - return 0; - } - ,pcmSeekLap: function(pos) { - return 0; - } - ,pcmSeekPage: function(pos) { - return 0; - } - ,pcmSeekPageLap: function(pos) { - return 0; - } - ,pcmTell: function() { - var this1 = new haxe__$Int64__$_$_$Int64(0,0); - return this1; - } - ,pcmTotal: function(bitstream) { - if(bitstream == null) { - bitstream = -1; - } - var this1 = new haxe__$Int64__$_$_$Int64(0,0); - return this1; - } - ,rawSeek: function(pos) { - return 0; - } - ,rawSeekLap: function(pos) { - return 0; - } - ,rawTell: function() { - var this1 = new haxe__$Int64__$_$_$Int64(0,0); - return this1; - } - ,rawTotal: function(bitstream) { - if(bitstream == null) { - bitstream = -1; - } - var this1 = new haxe__$Int64__$_$_$Int64(0,0); - return this1; - } - ,read: function(buffer,position,length,bigEndianPacking,wordSize,signed) { - if(signed == null) { - signed = true; - } - if(wordSize == null) { - wordSize = 2; - } - if(bigEndianPacking == null) { - bigEndianPacking = false; - } - if(length == null) { - length = 4096; - } - return 0; - } - ,readFloat: function(pcmChannels,samples) { - return 0; - } - ,seekable: function() { - return false; - } - ,serialNumber: function(bitstream) { - if(bitstream == null) { - bitstream = -1; - } - return 0; - } - ,streams: function() { - return 0; - } - ,timeSeek: function(s) { - return 0; - } - ,timeSeekLap: function(s) { - return 0; - } - ,timeSeekPage: function(s) { - return 0; - } - ,timeSeekPageLap: function(s) { - return 0; - } - ,timeTell: function() { - return 0; - } - ,timeTotal: function(bitstream) { - if(bitstream == null) { - bitstream = -1; - } - return 0; - } - ,__class__: lime_media_vorbis_VorbisFile -}; -var lime_media_vorbis_VorbisInfo = function() { -}; -$hxClasses["lime.media.vorbis.VorbisInfo"] = lime_media_vorbis_VorbisInfo; -lime_media_vorbis_VorbisInfo.__name__ = "lime.media.vorbis.VorbisInfo"; -lime_media_vorbis_VorbisInfo.prototype = { - bitrateLower: null - ,bitrateNominal: null - ,bitrateUpper: null - ,channels: null - ,rate: null - ,version: null - ,__class__: lime_media_vorbis_VorbisInfo -}; -var lime_net__$IHTTPRequest = function() { }; -$hxClasses["lime.net._IHTTPRequest"] = lime_net__$IHTTPRequest; -lime_net__$IHTTPRequest.__name__ = "lime.net._IHTTPRequest"; -lime_net__$IHTTPRequest.__isInterface__ = true; -lime_net__$IHTTPRequest.prototype = { - contentType: null - ,data: null - ,enableResponseHeaders: null - ,followRedirects: null - ,formData: null - ,headers: null - ,method: null - ,responseHeaders: null - ,responseStatus: null - ,timeout: null - ,uri: null - ,userAgent: null - ,withCredentials: null - ,cancel: null - ,__class__: lime_net__$IHTTPRequest -}; -var lime_net__$HTTPRequest_AbstractHTTPRequest = function(uri) { - this.uri = uri; - this.contentType = "application/x-www-form-urlencoded"; - this.followRedirects = true; - this.enableResponseHeaders = false; - this.formData = new haxe_ds_StringMap(); - this.headers = []; - this.method = "GET"; - this.timeout = 30000; - this.withCredentials = false; - this.__backend = new lime__$internal_backend_html5_HTML5HTTPRequest(); - this.__backend.init(this); -}; -$hxClasses["lime.net._HTTPRequest.AbstractHTTPRequest"] = lime_net__$HTTPRequest_AbstractHTTPRequest; -lime_net__$HTTPRequest_AbstractHTTPRequest.__name__ = "lime.net._HTTPRequest.AbstractHTTPRequest"; -lime_net__$HTTPRequest_AbstractHTTPRequest.__interfaces__ = [lime_net__$IHTTPRequest]; -lime_net__$HTTPRequest_AbstractHTTPRequest.prototype = { - contentType: null - ,data: null - ,enableResponseHeaders: null - ,followRedirects: null - ,formData: null - ,headers: null - ,method: null - ,responseData: null - ,responseHeaders: null - ,responseStatus: null - ,timeout: null - ,uri: null - ,userAgent: null - ,withCredentials: null - ,__backend: null - ,cancel: function() { - this.__backend.cancel(); - } - ,load: function(uri) { - return null; - } - ,__class__: lime_net__$HTTPRequest_AbstractHTTPRequest -}; -var lime_net_HTTPRequest = function(uri) { - lime_net__$HTTPRequest_AbstractHTTPRequest.call(this,uri); -}; -$hxClasses["lime.net.HTTPRequest"] = lime_net_HTTPRequest; -lime_net_HTTPRequest.__name__ = "lime.net.HTTPRequest"; -lime_net_HTTPRequest.__super__ = lime_net__$HTTPRequest_AbstractHTTPRequest; -lime_net_HTTPRequest.prototype = $extend(lime_net__$HTTPRequest_AbstractHTTPRequest.prototype,{ - __class__: lime_net_HTTPRequest -}); -var lime_net__$HTTPRequest_$Bytes = function(uri) { - lime_net__$HTTPRequest_AbstractHTTPRequest.call(this,uri); -}; -$hxClasses["lime.net._HTTPRequest_Bytes"] = lime_net__$HTTPRequest_$Bytes; -lime_net__$HTTPRequest_$Bytes.__name__ = "lime.net._HTTPRequest_Bytes"; -lime_net__$HTTPRequest_$Bytes.__super__ = lime_net__$HTTPRequest_AbstractHTTPRequest; -lime_net__$HTTPRequest_$Bytes.prototype = $extend(lime_net__$HTTPRequest_AbstractHTTPRequest.prototype,{ - fromBytes: function(bytes) { - return bytes; - } - ,load: function(uri) { - var _gthis = this; - if(uri != null) { - this.uri = uri; - } - var promise = new lime_app_Promise(); - var future = this.__backend.loadData(this.uri); - future.onProgress($bind(promise,promise.progress)); - future.onError($bind(promise,promise.error)); - future.onComplete(function(bytes) { - _gthis.responseData = _gthis.fromBytes(bytes); - promise.complete(_gthis.responseData); - }); - return promise.future; - } - ,__class__: lime_net__$HTTPRequest_$Bytes -}); -var lime_net__$HTTPRequest_$String = function(uri) { - lime_net__$HTTPRequest_AbstractHTTPRequest.call(this,uri); -}; -$hxClasses["lime.net._HTTPRequest_String"] = lime_net__$HTTPRequest_$String; -lime_net__$HTTPRequest_$String.__name__ = "lime.net._HTTPRequest_String"; -lime_net__$HTTPRequest_$String.__super__ = lime_net__$HTTPRequest_AbstractHTTPRequest; -lime_net__$HTTPRequest_$String.prototype = $extend(lime_net__$HTTPRequest_AbstractHTTPRequest.prototype,{ - load: function(uri) { - var _gthis = this; - if(uri != null) { - this.uri = uri; - } - var promise = new lime_app_Promise(); - var future = this.__backend.loadText(this.uri); - future.onProgress($bind(promise,promise.progress)); - future.onError($bind(promise,promise.error)); - future.onComplete(function(text) { - _gthis.responseData = text; - promise.complete(_gthis.responseData); - }); - return promise.future; - } - ,__class__: lime_net__$HTTPRequest_$String -}); -var lime_net_HTTPRequestHeader = function(name,value) { - if(value == null) { - value = ""; - } - this.name = name; - this.value = value; -}; -$hxClasses["lime.net.HTTPRequestHeader"] = lime_net_HTTPRequestHeader; -lime_net_HTTPRequestHeader.__name__ = "lime.net.HTTPRequestHeader"; -lime_net_HTTPRequestHeader.prototype = { - name: null - ,value: null - ,__class__: lime_net_HTTPRequestHeader -}; -var lime_net__$HTTPRequest_$lime_$text_$Font = function(uri) { - lime_net__$HTTPRequest_$Bytes.call(this,uri); -}; -$hxClasses["lime.net._HTTPRequest_lime_text_Font"] = lime_net__$HTTPRequest_$lime_$text_$Font; -lime_net__$HTTPRequest_$lime_$text_$Font.__name__ = "lime.net._HTTPRequest_lime_text_Font"; -lime_net__$HTTPRequest_$lime_$text_$Font.__super__ = lime_net__$HTTPRequest_$Bytes; -lime_net__$HTTPRequest_$lime_$text_$Font.prototype = $extend(lime_net__$HTTPRequest_$Bytes.prototype,{ - fromBytes: function(bytes) { - return lime_text_Font.fromBytes(bytes); - } - ,__class__: lime_net__$HTTPRequest_$lime_$text_$Font -}); -var lime_net__$HTTPRequest_$lime_$utils_$Bytes = function(uri) { - lime_net__$HTTPRequest_$Bytes.call(this,uri); -}; -$hxClasses["lime.net._HTTPRequest_lime_utils_Bytes"] = lime_net__$HTTPRequest_$lime_$utils_$Bytes; -lime_net__$HTTPRequest_$lime_$utils_$Bytes.__name__ = "lime.net._HTTPRequest_lime_utils_Bytes"; -lime_net__$HTTPRequest_$lime_$utils_$Bytes.__super__ = lime_net__$HTTPRequest_$Bytes; -lime_net__$HTTPRequest_$lime_$utils_$Bytes.prototype = $extend(lime_net__$HTTPRequest_$Bytes.prototype,{ - fromBytes: function(bytes) { - return lime_utils__$Bytes_Bytes_$Impl_$.fromBytes(bytes); - } - ,__class__: lime_net__$HTTPRequest_$lime_$utils_$Bytes -}); -var lime_net__$HTTPRequest_$openfl_$utils_$ByteArray = function(uri) { - lime_net__$HTTPRequest_$Bytes.call(this,uri); -}; -$hxClasses["lime.net._HTTPRequest_openfl_utils_ByteArray"] = lime_net__$HTTPRequest_$openfl_$utils_$ByteArray; -lime_net__$HTTPRequest_$openfl_$utils_$ByteArray.__name__ = "lime.net._HTTPRequest_openfl_utils_ByteArray"; -lime_net__$HTTPRequest_$openfl_$utils_$ByteArray.__super__ = lime_net__$HTTPRequest_$Bytes; -lime_net__$HTTPRequest_$openfl_$utils_$ByteArray.prototype = $extend(lime_net__$HTTPRequest_$Bytes.prototype,{ - fromBytes: function(bytes) { - return openfl_utils__$ByteArray_ByteArray_$Impl_$.fromBytes(bytes); - } - ,__class__: lime_net__$HTTPRequest_$openfl_$utils_$ByteArray -}); -var lime_system_CFFI = function() { }; -$hxClasses["lime.system.CFFI"] = lime_system_CFFI; -lime_system_CFFI.__name__ = "lime.system.CFFI"; -lime_system_CFFI.available = null; -lime_system_CFFI.enabled = null; -lime_system_CFFI.load = function(library,method,args,lazy) { - if(lazy == null) { - lazy = false; - } - if(args == null) { - args = 0; - } - if(!lime_system_CFFI.enabled) { - return Reflect.makeVarArgs(function(__) { - return { }; - }); - } - var result = null; - return result; -}; -lime_system_CFFI.__findHaxelib = function(library) { - return ""; -}; -lime_system_CFFI.__loaderTrace = function(message) { -}; -lime_system_CFFI.__sysName = function() { - return null; -}; -lime_system_CFFI.__tryLoad = function(name,library,func,args) { - return null; -}; -var lime_system__$CFFIPointer_CFFIPointer_$Impl_$ = {}; -$hxClasses["lime.system._CFFIPointer.CFFIPointer_Impl_"] = lime_system__$CFFIPointer_CFFIPointer_$Impl_$; -lime_system__$CFFIPointer_CFFIPointer_$Impl_$.__name__ = "lime.system._CFFIPointer.CFFIPointer_Impl_"; -lime_system__$CFFIPointer_CFFIPointer_$Impl_$._new = function(handle) { - var this1 = handle; - return this1; -}; -lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get = function(this1) { - var tmp = this1 != null; - return 0; -}; -lime_system__$CFFIPointer_CFFIPointer_$Impl_$.equals = function(a,b) { - return lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(a) == b; -}; -lime_system__$CFFIPointer_CFFIPointer_$Impl_$.equalsPointer = function(a,b) { - return lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(a) == lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(b); -}; -lime_system__$CFFIPointer_CFFIPointer_$Impl_$.greaterThan = function(a,b) { - return lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(a) > b; -}; -lime_system__$CFFIPointer_CFFIPointer_$Impl_$.greaterThanPointer = function(a,b) { - return lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(a) > lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(b); -}; -lime_system__$CFFIPointer_CFFIPointer_$Impl_$.greaterThanOrEqual = function(a,b) { - return lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(a) >= b; -}; -lime_system__$CFFIPointer_CFFIPointer_$Impl_$.greaterThanOrEqualPointer = function(a,b) { - return lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(a) >= lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(b); -}; -lime_system__$CFFIPointer_CFFIPointer_$Impl_$.lessThan = function(a,b) { - return lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(a) < b; -}; -lime_system__$CFFIPointer_CFFIPointer_$Impl_$.lessThanPointer = function(a,b) { - return lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(a) < lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(b); -}; -lime_system__$CFFIPointer_CFFIPointer_$Impl_$.lessThanOrEqual = function(a,b) { - return lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(a) <= b; -}; -lime_system__$CFFIPointer_CFFIPointer_$Impl_$.lessThanOrEqualPointer = function(a,b) { - return lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(a) <= lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(b); -}; -lime_system__$CFFIPointer_CFFIPointer_$Impl_$.notEquals = function(a,b) { - return lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(a) != b; -}; -lime_system__$CFFIPointer_CFFIPointer_$Impl_$.notEqualsPointer = function(a,b) { - return lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(a) != lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(b); -}; -var lime_system_Clipboard = function() { }; -$hxClasses["lime.system.Clipboard"] = lime_system_Clipboard; -lime_system_Clipboard.__name__ = "lime.system.Clipboard"; -lime_system_Clipboard.__properties__ = {set_text:"set_text",get_text:"get_text"}; -lime_system_Clipboard._text = null; -lime_system_Clipboard.__update = function() { - var cacheText = lime_system_Clipboard._text; - lime_system_Clipboard._text = null; - if(lime_system_Clipboard._text != cacheText) { - lime_system_Clipboard.onUpdate.dispatch(); - } -}; -lime_system_Clipboard.get_text = function() { - lime_system_Clipboard.__update(); - return lime_system_Clipboard._text; -}; -lime_system_Clipboard.set_text = function(value) { - var cacheText = lime_system_Clipboard._text; - lime_system_Clipboard._text = value; - var $window = lime_app_Application.current.__window; - if($window != null) { - $window.__backend.setClipboard(value); - } - if(lime_system_Clipboard._text != cacheText) { - lime_system_Clipboard.onUpdate.dispatch(); - } - return value; -}; -var lime_system_Display = function() { -}; -$hxClasses["lime.system.Display"] = lime_system_Display; -lime_system_Display.__name__ = "lime.system.Display"; -lime_system_Display.prototype = { - bounds: null - ,currentMode: null - ,id: null - ,dpi: null - ,name: null - ,supportedModes: null - ,__class__: lime_system_Display -}; -var lime_system_DisplayMode = function(width,height,refreshRate,pixelFormat) { - this.width = width; - this.height = height; - this.refreshRate = refreshRate; - this.pixelFormat = pixelFormat; -}; -$hxClasses["lime.system.DisplayMode"] = lime_system_DisplayMode; -lime_system_DisplayMode.__name__ = "lime.system.DisplayMode"; -lime_system_DisplayMode.prototype = { - height: null - ,pixelFormat: null - ,refreshRate: null - ,width: null - ,__class__: lime_system_DisplayMode -}; -var lime_system_Endian = $hxEnums["lime.system.Endian"] = { __ename__ : "lime.system.Endian", __constructs__ : ["LITTLE_ENDIAN","BIG_ENDIAN"] - ,LITTLE_ENDIAN: {_hx_index:0,__enum__:"lime.system.Endian",toString:$estr} - ,BIG_ENDIAN: {_hx_index:1,__enum__:"lime.system.Endian",toString:$estr} -}; -var lime_system_Sensor = function(type,id) { - this.onUpdate = new lime_app__$Event_$Float_$Float_$Float_$Void(); - this.type = type; - this.id = id; -}; -$hxClasses["lime.system.Sensor"] = lime_system_Sensor; -lime_system_Sensor.__name__ = "lime.system.Sensor"; -lime_system_Sensor.getSensors = function(type) { - if(type == null) { - return lime_system_Sensor.sensors.slice(); - } else { - var result = []; - var _g = 0; - var _g1 = lime_system_Sensor.sensors; - while(_g < _g1.length) { - var sensor = _g1[_g]; - ++_g; - if(sensor.type == type) { - result.push(sensor); - } - } - return result; - } -}; -lime_system_Sensor.registerSensor = function(type,id) { - var sensor = new lime_system_Sensor(type,id); - lime_system_Sensor.sensors.push(sensor); - lime_system_Sensor.sensorByID.h[id] = sensor; - return sensor; -}; -lime_system_Sensor.prototype = { - id: null - ,onUpdate: null - ,type: null - ,__class__: lime_system_Sensor -}; -var lime_system_SensorType = $hxEnums["lime.system.SensorType"] = { __ename__ : "lime.system.SensorType", __constructs__ : ["ACCELEROMETER"] - ,ACCELEROMETER: {_hx_index:0,__enum__:"lime.system.SensorType",toString:$estr} -}; -var lime_system_System = function() { }; -$hxClasses["lime.system.System"] = lime_system_System; -lime_system_System.__name__ = "lime.system.System"; -lime_system_System.__properties__ = {get_userDirectory:"get_userDirectory",get_platformVersion:"get_platformVersion",get_platformName:"get_platformName",get_platformLabel:"get_platformLabel",get_numDisplays:"get_numDisplays",get_fontsDirectory:"get_fontsDirectory",get_endianness:"get_endianness",get_documentsDirectory:"get_documentsDirectory",get_deviceVendor:"get_deviceVendor",get_deviceModel:"get_deviceModel",get_desktopDirectory:"get_desktopDirectory",get_applicationStorageDirectory:"get_applicationStorageDirectory",get_applicationDirectory:"get_applicationDirectory",set_allowScreenTimeout:"set_allowScreenTimeout",get_allowScreenTimeout:"get_allowScreenTimeout"}; -lime_system_System.disableCFFI = null; -lime_system_System.__applicationDirectory = null; -lime_system_System.__applicationEntryPoint = null; -lime_system_System.__applicationStorageDirectory = null; -lime_system_System.__desktopDirectory = null; -lime_system_System.__deviceModel = null; -lime_system_System.__deviceVendor = null; -lime_system_System.__documentsDirectory = null; -lime_system_System.__endianness = null; -lime_system_System.__fontsDirectory = null; -lime_system_System.__platformLabel = null; -lime_system_System.__platformName = null; -lime_system_System.__platformVersion = null; -lime_system_System.__userDirectory = null; -lime_system_System.embed = $hx_exports["lime"]["embed"] = function(projectName,element,width,height,config) { - if(lime_system_System.__applicationEntryPoint == null) { - return; - } - var _this = lime_system_System.__applicationEntryPoint; - if(__map_reserved[projectName] != null ? _this.existsReserved(projectName) : _this.h.hasOwnProperty(projectName)) { - var htmlElement = null; - if(typeof(element) == "string") { - htmlElement = window.document.getElementById(element); - } else if(element == null) { - htmlElement = window.document.createElement("div"); - } else { - htmlElement = element; - } - if(htmlElement == null) { - window.console.log("[lime.embed] ERROR: Cannot find target element: " + Std.string(element)); - return; - } - if(width == null) { - width = 0; - } - if(height == null) { - height = 0; - } - if(config == null) { - config = { }; - } - if(Object.prototype.hasOwnProperty.call(config,"background") && typeof(config.background) == "string") { - var background = StringTools.replace(Std.string(config.background),"#",""); - if(background.indexOf("0x") > -1) { - config.background = Std.parseInt(background); - } else { - config.background = Std.parseInt("0x" + background); - } - } - config.element = htmlElement; - config.width = width; - config.height = height; - var _this1 = lime_system_System.__applicationEntryPoint; - (__map_reserved[projectName] != null ? _this1.getReserved(projectName) : _this1.h[projectName])(config); - } -}; -lime_system_System.exit = function(code) { -}; -lime_system_System.getDisplay = function(id) { - if(id == 0) { - var display = new lime_system_Display(); - display.id = 0; - display.name = "Generic Display"; - display.dpi = 96 * window.devicePixelRatio; - display.currentMode = new lime_system_DisplayMode(window.screen.width,window.screen.height,60,1); - display.supportedModes = [display.currentMode]; - display.bounds = new lime_math_Rectangle(0,0,display.currentMode.width,display.currentMode.height); - return display; - } - return null; -}; -lime_system_System.getTimer = function() { - return window.performance.now() | 0; -}; -lime_system_System.load = function(library,method,args,lazy) { - if(lazy == null) { - lazy = false; - } - if(args == null) { - args = 0; - } - return lime_system_CFFI.load(library,method,args,lazy); -}; -lime_system_System.openFile = function(path) { - if(path != null) { - window.open(path,"_blank"); - } -}; -lime_system_System.openURL = function(url,target) { - if(target == null) { - target = "_blank"; - } - if(url != null) { - window.open(url,target); - } -}; -lime_system_System.__copyMissingFields = function(target,source) { - if(source == null || target == null) { - return; - } - var _g = 0; - var _g1 = Reflect.fields(source); - while(_g < _g1.length) { - var field = _g1[_g]; - ++_g; - if(!Object.prototype.hasOwnProperty.call(target,field)) { - target[field] = Reflect.field(source,field); - } - } -}; -lime_system_System.__getDirectory = function(type) { - return null; -}; -lime_system_System.__parseBool = function(value) { - return value == "true"; -}; -lime_system_System.__registerEntryPoint = function(projectName,entryPoint) { - if(lime_system_System.__applicationEntryPoint == null) { - lime_system_System.__applicationEntryPoint = new haxe_ds_StringMap(); - } - var _this = lime_system_System.__applicationEntryPoint; - if(__map_reserved[projectName] != null) { - _this.setReserved(projectName,entryPoint); - } else { - _this.h[projectName] = entryPoint; - } -}; -lime_system_System.__runProcess = function(command,args) { - return null; -}; -lime_system_System.get_allowScreenTimeout = function() { - return true; -}; -lime_system_System.set_allowScreenTimeout = function(value) { - return true; -}; -lime_system_System.get_applicationDirectory = function() { - if(lime_system_System.__applicationDirectory == null) { - lime_system_System.__applicationDirectory = lime_system_System.__getDirectory(0); - } - return lime_system_System.__applicationDirectory; -}; -lime_system_System.get_applicationStorageDirectory = function() { - if(lime_system_System.__applicationStorageDirectory == null) { - lime_system_System.__applicationStorageDirectory = lime_system_System.__getDirectory(1); - } - return lime_system_System.__applicationStorageDirectory; -}; -lime_system_System.get_deviceModel = function() { - var tmp = lime_system_System.__deviceModel == null; - return lime_system_System.__deviceModel; -}; -lime_system_System.get_deviceVendor = function() { - var tmp = lime_system_System.__deviceVendor == null; - return lime_system_System.__deviceVendor; -}; -lime_system_System.get_desktopDirectory = function() { - if(lime_system_System.__desktopDirectory == null) { - lime_system_System.__desktopDirectory = lime_system_System.__getDirectory(2); - } - return lime_system_System.__desktopDirectory; -}; -lime_system_System.get_documentsDirectory = function() { - if(lime_system_System.__documentsDirectory == null) { - lime_system_System.__documentsDirectory = lime_system_System.__getDirectory(3); - } - return lime_system_System.__documentsDirectory; -}; -lime_system_System.get_endianness = function() { - if(lime_system_System.__endianness == null) { - var arrayBuffer = new ArrayBuffer(2); - var elements = null; - var array = null; - var vector = null; - var view = null; - var len = null; - var this1; - if(elements != null) { - this1 = new Uint8Array(elements); - } else if(array != null) { - this1 = new Uint8Array(array); - } else if(vector != null) { - this1 = new Uint8Array(vector.__array); - } else if(view != null) { - this1 = new Uint8Array(view); - } else if(arrayBuffer != null) { - if(len == null) { - this1 = new Uint8Array(arrayBuffer,0); - } else { - this1 = new Uint8Array(arrayBuffer,0,len); - } - } else { - this1 = null; - } - var uint8Array = this1; - var elements1 = null; - var array1 = null; - var vector1 = null; - var view1 = null; - var len1 = null; - var this2; - if(elements1 != null) { - this2 = new Uint16Array(elements1); - } else if(array1 != null) { - this2 = new Uint16Array(array1); - } else if(vector1 != null) { - this2 = new Uint16Array(vector1.__array); - } else if(view1 != null) { - this2 = new Uint16Array(view1); - } else if(arrayBuffer != null) { - if(len1 == null) { - this2 = new Uint16Array(arrayBuffer,0); - } else { - this2 = new Uint16Array(arrayBuffer,0,len1); - } - } else { - this2 = null; - } - var uint16array = this2; - uint8Array[0] = 170; - uint8Array[1] = 187; - if(uint16array[0] == 43707) { - lime_system_System.__endianness = lime_system_Endian.BIG_ENDIAN; - } else { - lime_system_System.__endianness = lime_system_Endian.LITTLE_ENDIAN; - } - } - return lime_system_System.__endianness; -}; -lime_system_System.get_fontsDirectory = function() { - if(lime_system_System.__fontsDirectory == null) { - lime_system_System.__fontsDirectory = lime_system_System.__getDirectory(4); - } - return lime_system_System.__fontsDirectory; -}; -lime_system_System.get_numDisplays = function() { - return 1; -}; -lime_system_System.get_platformLabel = function() { - if(lime_system_System.__platformLabel == null) { - var name = lime_system_System.get_platformName(); - var version = lime_system_System.get_platformVersion(); - if(name != null && version != null) { - lime_system_System.__platformLabel = name + " " + version; - } else if(name != null) { - lime_system_System.__platformLabel = name; - } - } - return lime_system_System.__platformLabel; -}; -lime_system_System.get_platformName = function() { - if(lime_system_System.__platformName == null) { - lime_system_System.__platformName = "HTML5"; - } - return lime_system_System.__platformName; -}; -lime_system_System.get_platformVersion = function() { - var tmp = lime_system_System.__platformVersion == null; - return lime_system_System.__platformVersion; -}; -lime_system_System.get_userDirectory = function() { - if(lime_system_System.__userDirectory == null) { - lime_system_System.__userDirectory = lime_system_System.__getDirectory(5); - } - return lime_system_System.__userDirectory; -}; -var lime_system_ThreadPool = function(minThreads,maxThreads) { - if(maxThreads == null) { - maxThreads = 1; - } - if(minThreads == null) { - minThreads = 0; - } - this.onRun = new lime_app__$Event_$Dynamic_$Void(); - this.onProgress = new lime_app__$Event_$Dynamic_$Void(); - this.onError = new lime_app__$Event_$Dynamic_$Void(); - this.onComplete = new lime_app__$Event_$Dynamic_$Void(); - this.doWork = new lime_app__$Event_$Dynamic_$Void(); - this.minThreads = minThreads; - this.maxThreads = maxThreads; - this.currentThreads = 0; -}; -$hxClasses["lime.system.ThreadPool"] = lime_system_ThreadPool; -lime_system_ThreadPool.__name__ = "lime.system.ThreadPool"; -lime_system_ThreadPool.prototype = { - currentThreads: null - ,doWork: null - ,maxThreads: null - ,minThreads: null - ,onComplete: null - ,onError: null - ,onProgress: null - ,onRun: null - ,queue: function(state) { - this.runWork(state); - } - ,sendComplete: function(state) { - this.onComplete.dispatch(state); - } - ,sendError: function(state) { - this.onError.dispatch(state); - } - ,sendProgress: function(state) { - this.onProgress.dispatch(state); - } - ,runWork: function(state) { - this.onRun.dispatch(state); - this.doWork.dispatch(state); - } - ,__class__: lime_system_ThreadPool -}; -var lime_system__$ThreadPool_ThreadPoolMessageType = $hxEnums["lime.system._ThreadPool.ThreadPoolMessageType"] = { __ename__ : "lime.system._ThreadPool.ThreadPoolMessageType", __constructs__ : ["COMPLETE","ERROR","EXIT","PROGRESS","WORK"] - ,COMPLETE: {_hx_index:0,__enum__:"lime.system._ThreadPool.ThreadPoolMessageType",toString:$estr} - ,ERROR: {_hx_index:1,__enum__:"lime.system._ThreadPool.ThreadPoolMessageType",toString:$estr} - ,EXIT: {_hx_index:2,__enum__:"lime.system._ThreadPool.ThreadPoolMessageType",toString:$estr} - ,PROGRESS: {_hx_index:3,__enum__:"lime.system._ThreadPool.ThreadPoolMessageType",toString:$estr} - ,WORK: {_hx_index:4,__enum__:"lime.system._ThreadPool.ThreadPoolMessageType",toString:$estr} -}; -var lime_system__$ThreadPool_ThreadPoolMessage = function(type,state) { - this.type = type; - this.state = state; -}; -$hxClasses["lime.system._ThreadPool.ThreadPoolMessage"] = lime_system__$ThreadPool_ThreadPoolMessage; -lime_system__$ThreadPool_ThreadPoolMessage.__name__ = "lime.system._ThreadPool.ThreadPoolMessage"; -lime_system__$ThreadPool_ThreadPoolMessage.prototype = { - state: null - ,type: null - ,__class__: lime_system__$ThreadPool_ThreadPoolMessage -}; -var lime_text__$Glyph_Glyph_$Impl_$ = {}; -$hxClasses["lime.text._Glyph.Glyph_Impl_"] = lime_text__$Glyph_Glyph_$Impl_$; -lime_text__$Glyph_Glyph_$Impl_$.__name__ = "lime.text._Glyph.Glyph_Impl_"; -lime_text__$Glyph_Glyph_$Impl_$._new = function(i) { - var this1 = i; - return this1; -}; -var lime_text_GlyphMetrics = function() { -}; -$hxClasses["lime.text.GlyphMetrics"] = lime_text_GlyphMetrics; -lime_text_GlyphMetrics.__name__ = "lime.text.GlyphMetrics"; -lime_text_GlyphMetrics.prototype = { - advance: null - ,height: null - ,horizontalBearing: null - ,verticalBearing: null - ,__class__: lime_text_GlyphMetrics -}; -var lime_text_harfbuzz_HB = function() { }; -$hxClasses["lime.text.harfbuzz.HB"] = lime_text_harfbuzz_HB; -lime_text_harfbuzz_HB.__name__ = "lime.text.harfbuzz.HB"; -lime_text_harfbuzz_HB.shape = function(font,buffer,features) { -}; -var lime_text_harfbuzz__$HBBlob_HBBlob_$Impl_$ = {}; -$hxClasses["lime.text.harfbuzz._HBBlob.HBBlob_Impl_"] = lime_text_harfbuzz__$HBBlob_HBBlob_$Impl_$; -lime_text_harfbuzz__$HBBlob_HBBlob_$Impl_$.__name__ = "lime.text.harfbuzz._HBBlob.HBBlob_Impl_"; -lime_text_harfbuzz__$HBBlob_HBBlob_$Impl_$.__properties__ = {get_length:"get_length",get_immutable:"get_immutable",get_dataWritable:"get_dataWritable",get_data:"get_data",get_empty:"get_empty"}; -lime_text_harfbuzz__$HBBlob_HBBlob_$Impl_$._new = function(data,length,memoryMode) { - var this1 = null; - return this1; -}; -lime_text_harfbuzz__$HBBlob_HBBlob_$Impl_$.createSubBlob = function(this1,offset,length) { - return null; -}; -lime_text_harfbuzz__$HBBlob_HBBlob_$Impl_$.makeImmutable = function(this1) { -}; -lime_text_harfbuzz__$HBBlob_HBBlob_$Impl_$.get_data = function(this1) { - return 0; -}; -lime_text_harfbuzz__$HBBlob_HBBlob_$Impl_$.get_dataWritable = function(this1) { - return 0; -}; -lime_text_harfbuzz__$HBBlob_HBBlob_$Impl_$.get_empty = function() { - return null; -}; -lime_text_harfbuzz__$HBBlob_HBBlob_$Impl_$.get_immutable = function(this1) { - return false; -}; -lime_text_harfbuzz__$HBBlob_HBBlob_$Impl_$.get_length = function(this1) { - return 0; -}; -var lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$ = {}; -$hxClasses["lime.text.harfbuzz._HBBuffer.HBBuffer_Impl_"] = lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.__name__ = "lime.text.harfbuzz._HBBuffer.HBBuffer_Impl_"; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.__properties__ = {set_segmentProperties:"set_segmentProperties",get_segmentProperties:"get_segmentProperties",set_script:"set_script",get_script:"get_script",set_replacementCodepoint:"set_replacementCodepoint",get_replacementCodepoint:"get_replacementCodepoint",set_length:"set_length",get_length:"get_length",set_language:"set_language",get_language:"get_language",set_flags:"set_flags",get_flags:"get_flags",set_direction:"set_direction",get_direction:"get_direction",set_contentType:"set_contentType",get_contentType:"get_contentType",set_clusterLevel:"set_clusterLevel",get_clusterLevel:"get_clusterLevel",get_allocationSuccessful:"get_allocationSuccessful"}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$._new = function() { - var this1 = null; - return this1; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.add = function(this1,codepoint,cluster) { -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.addCodepoints = function(this1,text,textLength,itemOffset,itemLength) { -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.addUTF8 = function(this1,text,itemOffset,itemLength) { -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.addUTF16 = function(this1,text,textLength,itemOffset,itemLength) { -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.addUTF32 = function(this1,text,textLength,itemOffset,itemLength) { -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.clearContents = function(this1) { -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.getGlyphInfo = function(this1) { - return null; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.getGlyphPositions = function(this1) { - return null; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.guessSegmentProperties = function(this1) { -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.normalizeGlyphs = function(this1) { -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.preallocate = function(this1,size) { - return false; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.reset = function(this1) { -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.reverse = function(this1) { -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.reverseClusters = function(this1) { -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.get_allocationSuccessful = function(this1) { - return false; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.get_clusterLevel = function(this1) { - return 0; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.set_clusterLevel = function(this1,value) { - return value; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.get_contentType = function(this1) { - return 0; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.set_contentType = function(this1,value) { - return value; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.get_direction = function(this1) { - return 0; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.set_direction = function(this1,value) { - return value; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.get_empty = function() { - return null; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.get_flags = function(this1) { - return 0; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.set_flags = function(this1,value) { - return value; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.get_language = function(this1) { - return null; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.set_language = function(this1,value) { - return value; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.get_length = function(this1) { - return 0; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.set_length = function(this1,value) { - return value; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.get_replacementCodepoint = function(this1) { - return 0; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.set_replacementCodepoint = function(this1,value) { - return value; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.get_script = function(this1) { - return 0; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.set_script = function(this1,value) { - return value; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.get_segmentProperties = function(this1) { - return null; -}; -lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$.set_segmentProperties = function(this1,value) { - return value; -}; -var lime_text_harfbuzz__$HBFTFont_HBFTFont_$Impl_$ = {}; -$hxClasses["lime.text.harfbuzz._HBFTFont.HBFTFont_Impl_"] = lime_text_harfbuzz__$HBFTFont_HBFTFont_$Impl_$; -lime_text_harfbuzz__$HBFTFont_HBFTFont_$Impl_$.__name__ = "lime.text.harfbuzz._HBFTFont.HBFTFont_Impl_"; -lime_text_harfbuzz__$HBFTFont_HBFTFont_$Impl_$.__properties__ = {set_loadFlags:"set_loadFlags",get_loadFlags:"get_loadFlags"}; -lime_text_harfbuzz__$HBFTFont_HBFTFont_$Impl_$._new = function(font) { - var this1; - if(font.src != null) { - this1 = null; - } else { - this1 = null; - } - return this1; -}; -lime_text_harfbuzz__$HBFTFont_HBFTFont_$Impl_$.get_loadFlags = function(this1) { - return 0; -}; -lime_text_harfbuzz__$HBFTFont_HBFTFont_$Impl_$.set_loadFlags = function(this1,value) { - return value; -}; -var lime_text_harfbuzz__$HBFace_HBFace_$Impl_$ = {}; -$hxClasses["lime.text.harfbuzz._HBFace.HBFace_Impl_"] = lime_text_harfbuzz__$HBFace_HBFace_$Impl_$; -lime_text_harfbuzz__$HBFace_HBFace_$Impl_$.__name__ = "lime.text.harfbuzz._HBFace.HBFace_Impl_"; -lime_text_harfbuzz__$HBFace_HBFace_$Impl_$.__properties__ = {set_upem:"set_upem",get_upem:"get_upem",set_index:"set_index",get_index:"get_index",get_immutable:"get_immutable",set_glyphCount:"set_glyphCount",get_glyphCount:"get_glyphCount",get_empty:"get_empty"}; -lime_text_harfbuzz__$HBFace_HBFace_$Impl_$._new = function(blob,index) { - var this1 = null; - return this1; -}; -lime_text_harfbuzz__$HBFace_HBFace_$Impl_$.get_empty = function() { - return null; -}; -lime_text_harfbuzz__$HBFace_HBFace_$Impl_$.get_glyphCount = function(this1) { - return 0; -}; -lime_text_harfbuzz__$HBFace_HBFace_$Impl_$.set_glyphCount = function(this1,value) { - return value; -}; -lime_text_harfbuzz__$HBFace_HBFace_$Impl_$.get_immutable = function(this1) { - return false; -}; -lime_text_harfbuzz__$HBFace_HBFace_$Impl_$.get_index = function(this1) { - return 0; -}; -lime_text_harfbuzz__$HBFace_HBFace_$Impl_$.set_index = function(this1,value) { - return value; -}; -lime_text_harfbuzz__$HBFace_HBFace_$Impl_$.get_upem = function(this1) { - return 0; -}; -lime_text_harfbuzz__$HBFace_HBFace_$Impl_$.set_upem = function(this1,value) { - return value; -}; -var lime_text_harfbuzz_HBFeature = function() { -}; -$hxClasses["lime.text.harfbuzz.HBFeature"] = lime_text_harfbuzz_HBFeature; -lime_text_harfbuzz_HBFeature.__name__ = "lime.text.harfbuzz.HBFeature"; -lime_text_harfbuzz_HBFeature.prototype = { - __class__: lime_text_harfbuzz_HBFeature -}; -var lime_text_harfbuzz__$HBFont_HBFont_$Impl_$ = {}; -$hxClasses["lime.text.harfbuzz._HBFont.HBFont_Impl_"] = lime_text_harfbuzz__$HBFont_HBFont_$Impl_$; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.__name__ = "lime.text.harfbuzz._HBFont.HBFont_Impl_"; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.__properties__ = {set_scale:"set_scale",get_scale:"get_scale",set_ppem:"set_ppem",get_ppem:"get_ppem",get_parent:"get_parent",get_immutable:"get_immutable",get_face:"get_face",get_empty:"get_empty"}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$._new = function(face) { - var this1 = null; - return this1; -}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.addGlyphOriginForDirection = function(this1,glyph,direction,x,y) { -}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.createSubFont = function(this1) { - return null; -}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.getGlyphAdvanceForDirection = function(this1,glyph,direction) { - return null; -}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.getGlyphKerningForDirection = function(this1,glyph,firstGlyph,secondGlyph,direction) { - return null; -}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.getGlyphOriginForDirection = function(this1,glyph,direction) { - return null; -}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.glyphFromString = function(this1,s) { - return 0; -}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.glyphToString = function(this1,codepoint) { - return null; -}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.makeImmutable = function(this1) { -}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.subtractGlyphOriginForDirection = function(this1,glyph,direction,x,y) { -}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.get_empty = function() { - return null; -}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.get_face = function(this1) { - return null; -}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.get_immutable = function(this1) { - return false; -}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.get_parent = function(this1) { - return null; -}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.get_ppem = function(this1) { - return null; -}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.set_ppem = function(this1,value) { - return value; -}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.get_scale = function(this1) { - return null; -}; -lime_text_harfbuzz__$HBFont_HBFont_$Impl_$.set_scale = function(this1,value) { - return value; -}; -var lime_text_harfbuzz_HBGlyphInfo = function() { -}; -$hxClasses["lime.text.harfbuzz.HBGlyphInfo"] = lime_text_harfbuzz_HBGlyphInfo; -lime_text_harfbuzz_HBGlyphInfo.__name__ = "lime.text.harfbuzz.HBGlyphInfo"; -lime_text_harfbuzz_HBGlyphInfo.prototype = { - codepoint: null - ,mask: null - ,cluster: null - ,__class__: lime_text_harfbuzz_HBGlyphInfo -}; -var lime_text_harfbuzz_HBGlyphPosition = function() { -}; -$hxClasses["lime.text.harfbuzz.HBGlyphPosition"] = lime_text_harfbuzz_HBGlyphPosition; -lime_text_harfbuzz_HBGlyphPosition.__name__ = "lime.text.harfbuzz.HBGlyphPosition"; -lime_text_harfbuzz_HBGlyphPosition.prototype = { - xAdvance: null - ,xOffset: null - ,yAdvance: null - ,yOffset: null - ,__class__: lime_text_harfbuzz_HBGlyphPosition -}; -var lime_text_harfbuzz__$HBLanguage_HBLanguage_$Impl_$ = {}; -$hxClasses["lime.text.harfbuzz._HBLanguage.HBLanguage_Impl_"] = lime_text_harfbuzz__$HBLanguage_HBLanguage_$Impl_$; -lime_text_harfbuzz__$HBLanguage_HBLanguage_$Impl_$.__name__ = "lime.text.harfbuzz._HBLanguage.HBLanguage_Impl_"; -lime_text_harfbuzz__$HBLanguage_HBLanguage_$Impl_$._new = function(language) { - var this1 = null; - return this1; -}; -lime_text_harfbuzz__$HBLanguage_HBLanguage_$Impl_$.toString = function(this1) { - return null; -}; -lime_text_harfbuzz__$HBLanguage_HBLanguage_$Impl_$.fromString = function(value) { - return lime_text_harfbuzz__$HBLanguage_HBLanguage_$Impl_$._new(value); -}; -var lime_text_harfbuzz_HBSegmentProperties = function() { -}; -$hxClasses["lime.text.harfbuzz.HBSegmentProperties"] = lime_text_harfbuzz_HBSegmentProperties; -lime_text_harfbuzz_HBSegmentProperties.__name__ = "lime.text.harfbuzz.HBSegmentProperties"; -lime_text_harfbuzz_HBSegmentProperties.prototype = { - __class__: lime_text_harfbuzz_HBSegmentProperties -}; -var lime_ui_Gamepad = function(id) { - this.onDisconnect = new lime_app__$Event_$Void_$Void(); - this.onButtonUp = new lime_app__$Event_$lime_$ui_$GamepadButton_$Void(); - this.onButtonDown = new lime_app__$Event_$lime_$ui_$GamepadButton_$Void(); - this.onAxisMove = new lime_app__$Event_$lime_$ui_$GamepadAxis_$Float_$Void(); - this.id = id; - this.connected = true; -}; -$hxClasses["lime.ui.Gamepad"] = lime_ui_Gamepad; -lime_ui_Gamepad.__name__ = "lime.ui.Gamepad"; -lime_ui_Gamepad.addMappings = function(mappings) { -}; -lime_ui_Gamepad.__connect = function(id) { - if(!lime_ui_Gamepad.devices.h.hasOwnProperty(id)) { - var gamepad = new lime_ui_Gamepad(id); - lime_ui_Gamepad.devices.h[id] = gamepad; - lime_ui_Gamepad.onConnect.dispatch(gamepad); - } -}; -lime_ui_Gamepad.__disconnect = function(id) { - var gamepad = lime_ui_Gamepad.devices.h[id]; - if(gamepad != null) { - gamepad.connected = false; - } - lime_ui_Gamepad.devices.remove(id); - if(gamepad != null) { - gamepad.onDisconnect.dispatch(); - } -}; -lime_ui_Gamepad.prototype = { - connected: null - ,id: null - ,onAxisMove: null - ,onButtonDown: null - ,onButtonUp: null - ,onDisconnect: null - ,get_guid: function() { - var devices = lime_ui_Joystick.__getDeviceData(); - return devices[this.id].id; - } - ,get_name: function() { - var devices = lime_ui_Joystick.__getDeviceData(); - return devices[this.id].id; - } - ,__class__: lime_ui_Gamepad - ,__properties__: {get_name:"get_name",get_guid:"get_guid"} -}; -var lime_ui__$GamepadAxis_GamepadAxis_$Impl_$ = {}; -$hxClasses["lime.ui._GamepadAxis.GamepadAxis_Impl_"] = lime_ui__$GamepadAxis_GamepadAxis_$Impl_$; -lime_ui__$GamepadAxis_GamepadAxis_$Impl_$.__name__ = "lime.ui._GamepadAxis.GamepadAxis_Impl_"; -lime_ui__$GamepadAxis_GamepadAxis_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "LEFT_X"; - case 1: - return "LEFT_Y"; - case 2: - return "RIGHT_X"; - case 3: - return "RIGHT_Y"; - case 4: - return "TRIGGER_LEFT"; - case 5: - return "TRIGGER_RIGHT"; - default: - return "UNKNOWN (" + this1 + ")"; - } -}; -var lime_ui__$GamepadButton_GamepadButton_$Impl_$ = {}; -$hxClasses["lime.ui._GamepadButton.GamepadButton_Impl_"] = lime_ui__$GamepadButton_GamepadButton_$Impl_$; -lime_ui__$GamepadButton_GamepadButton_$Impl_$.__name__ = "lime.ui._GamepadButton.GamepadButton_Impl_"; -lime_ui__$GamepadButton_GamepadButton_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "A"; - case 1: - return "B"; - case 2: - return "X"; - case 3: - return "Y"; - case 4: - return "BACK"; - case 5: - return "GUIDE"; - case 6: - return "START"; - case 7: - return "LEFT_STICK"; - case 8: - return "RIGHT_STICK"; - case 9: - return "LEFT_SHOULDER"; - case 10: - return "RIGHT_SHOULDER"; - case 11: - return "DPAD_UP"; - case 12: - return "DPAD_DOWN"; - case 13: - return "DPAD_LEFT"; - case 14: - return "DPAD_RIGHT"; - default: - return "UNKNOWN (" + this1 + ")"; - } -}; -var lime_ui_Joystick = function(id) { - this.onTrackballMove = new lime_app__$Event_$Int_$Float_$Float_$Void(); - this.onHatMove = new lime_app__$Event_$Int_$lime_$ui_$JoystickHatPosition_$Void(); - this.onDisconnect = new lime_app__$Event_$Void_$Void(); - this.onButtonUp = new lime_app__$Event_$Int_$Void(); - this.onButtonDown = new lime_app__$Event_$Int_$Void(); - this.onAxisMove = new lime_app__$Event_$Int_$Float_$Void(); - this.id = id; - this.connected = true; -}; -$hxClasses["lime.ui.Joystick"] = lime_ui_Joystick; -lime_ui_Joystick.__name__ = "lime.ui.Joystick"; -lime_ui_Joystick.__connect = function(id) { - if(!lime_ui_Joystick.devices.h.hasOwnProperty(id)) { - var joystick = new lime_ui_Joystick(id); - lime_ui_Joystick.devices.h[id] = joystick; - lime_ui_Joystick.onConnect.dispatch(joystick); - } -}; -lime_ui_Joystick.__disconnect = function(id) { - var joystick = lime_ui_Joystick.devices.h[id]; - if(joystick != null) { - joystick.connected = false; - } - lime_ui_Joystick.devices.remove(id); - if(joystick != null) { - joystick.onDisconnect.dispatch(); - } -}; -lime_ui_Joystick.__getDeviceData = function() { - if(navigator.getGamepads) { - return navigator.getGamepads(); - } else if(navigator.webkitGetGamepads) { - return navigator.webkitGetGamepads(); - } else { - return null; - } -}; -lime_ui_Joystick.prototype = { - connected: null - ,id: null - ,onAxisMove: null - ,onButtonDown: null - ,onButtonUp: null - ,onDisconnect: null - ,onHatMove: null - ,onTrackballMove: null - ,get_guid: function() { - var devices = lime_ui_Joystick.__getDeviceData(); - return devices[this.id].id; - } - ,get_name: function() { - var devices = lime_ui_Joystick.__getDeviceData(); - return devices[this.id].id; - } - ,get_numAxes: function() { - var devices = lime_ui_Joystick.__getDeviceData(); - return devices[this.id].axes.length; - } - ,get_numButtons: function() { - var devices = lime_ui_Joystick.__getDeviceData(); - return devices[this.id].buttons.length; - } - ,get_numHats: function() { - return 0; - } - ,get_numTrackballs: function() { - return 0; - } - ,__class__: lime_ui_Joystick - ,__properties__: {get_numTrackballs:"get_numTrackballs",get_numHats:"get_numHats",get_numButtons:"get_numButtons",get_numAxes:"get_numAxes",get_name:"get_name",get_guid:"get_guid"} -}; -var lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$ = {}; -$hxClasses["lime.ui._JoystickHatPosition.JoystickHatPosition_Impl_"] = lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.__name__ = "lime.ui._JoystickHatPosition.JoystickHatPosition_Impl_"; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.__properties__ = {set_up:"set_up",get_up:"get_up",set_right:"set_right",get_right:"get_right",set_left:"set_left",get_left:"get_left",set_down:"set_down",get_down:"get_down",set_center:"set_center",get_center:"get_center"}; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$._new = function(value) { - var this1 = value; - return this1; -}; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.get_center = function(this1) { - return this1 == 0; -}; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.set_center = function(this1,value) { - if(value) { - this1 = 0; - } - return value; -}; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.get_down = function(this1) { - return (this1 & 4) > 0; -}; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.set_down = function(this1,value) { - if(value) { - this1 |= 4; - } else { - this1 &= 268435455 - 4; - } - return value; -}; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.get_left = function(this1) { - return (this1 & 8) > 0; -}; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.set_left = function(this1,value) { - if(value) { - this1 |= 8; - } else { - this1 &= 268435455 - 8; - } - return value; -}; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.get_right = function(this1) { - return (this1 & 2) > 0; -}; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.set_right = function(this1,value) { - if(value) { - this1 |= 2; - } else { - this1 &= 268435455 - 2; - } - return value; -}; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.get_up = function(this1) { - return (this1 & 1) > 0; -}; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.set_up = function(this1,value) { - if(value) { - this1 |= 1; - } else { - this1 &= 268435455 - 1; - } - return value; -}; -var lime_ui__$KeyCode_KeyCode_$Impl_$ = {}; -$hxClasses["lime.ui._KeyCode.KeyCode_Impl_"] = lime_ui__$KeyCode_KeyCode_$Impl_$; -lime_ui__$KeyCode_KeyCode_$Impl_$.__name__ = "lime.ui._KeyCode.KeyCode_Impl_"; -lime_ui__$KeyCode_KeyCode_$Impl_$.fromScanCode = function(scanCode) { - return 0; -}; -lime_ui__$KeyCode_KeyCode_$Impl_$.toScanCode = function(keyCode) { - return 0; -}; -lime_ui__$KeyCode_KeyCode_$Impl_$.gt = function(a,b) { - return a > b; -}; -lime_ui__$KeyCode_KeyCode_$Impl_$.gte = function(a,b) { - return a >= b; -}; -lime_ui__$KeyCode_KeyCode_$Impl_$.lt = function(a,b) { - return a < b; -}; -lime_ui__$KeyCode_KeyCode_$Impl_$.lte = function(a,b) { - return a <= b; -}; -lime_ui__$KeyCode_KeyCode_$Impl_$.plus = function(a,b) { - return a + b; -}; -var lime_ui__$KeyModifier_KeyModifier_$Impl_$ = {}; -$hxClasses["lime.ui._KeyModifier.KeyModifier_Impl_"] = lime_ui__$KeyModifier_KeyModifier_$Impl_$; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.__name__ = "lime.ui._KeyModifier.KeyModifier_Impl_"; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.__properties__ = {set_shiftKey:"set_shiftKey",get_shiftKey:"get_shiftKey",set_numLock:"set_numLock",get_numLock:"get_numLock",set_metaKey:"set_metaKey",get_metaKey:"get_metaKey",set_ctrlKey:"set_ctrlKey",get_ctrlKey:"get_ctrlKey",set_capsLock:"set_capsLock",get_capsLock:"get_capsLock",set_altKey:"set_altKey",get_altKey:"get_altKey"}; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_altKey = function(this1) { - if((this1 & 256) <= 0) { - return (this1 & 512) > 0; - } else { - return true; - } -}; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.set_altKey = function(this1,value) { - if(value) { - this1 |= 768; - } else { - this1 &= 268435455 - 768; - } - return value; -}; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_capsLock = function(this1) { - if((this1 & 8192) <= 0) { - return (this1 & 8192) > 0; - } else { - return true; - } -}; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.set_capsLock = function(this1,value) { - if(value) { - this1 |= 8192; - } else { - this1 &= 268435455 - 8192; - } - return value; -}; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_ctrlKey = function(this1) { - if((this1 & 64) <= 0) { - return (this1 & 128) > 0; - } else { - return true; - } -}; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.set_ctrlKey = function(this1,value) { - if(value) { - this1 |= 192; - } else { - this1 &= 268435455 - 192; - } - return value; -}; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_metaKey = function(this1) { - if((this1 & 1024) <= 0) { - return (this1 & 2048) > 0; - } else { - return true; - } -}; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.set_metaKey = function(this1,value) { - if(value) { - this1 |= 3072; - } else { - this1 &= 268435455 - 3072; - } - return value; -}; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_numLock = function(this1) { - if((this1 & 4096) <= 0) { - return (this1 & 4096) > 0; - } else { - return true; - } -}; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.set_numLock = function(this1,value) { - if(value) { - this1 |= 4096; - } else { - this1 &= 268435455 - 4096; - } - return value; -}; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_shiftKey = function(this1) { - if((this1 & 1) <= 0) { - return (this1 & 2) > 0; - } else { - return true; - } -}; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.set_shiftKey = function(this1,value) { - if(value) { - this1 |= 3; - } else { - this1 &= 268435455 - 3; - } - return value; -}; -var lime_ui_MouseCursor = $hxEnums["lime.ui.MouseCursor"] = { __ename__ : "lime.ui.MouseCursor", __constructs__ : ["ARROW","CROSSHAIR","DEFAULT","MOVE","POINTER","RESIZE_NESW","RESIZE_NS","RESIZE_NWSE","RESIZE_WE","TEXT","WAIT","WAIT_ARROW","CUSTOM"] - ,ARROW: {_hx_index:0,__enum__:"lime.ui.MouseCursor",toString:$estr} - ,CROSSHAIR: {_hx_index:1,__enum__:"lime.ui.MouseCursor",toString:$estr} - ,DEFAULT: {_hx_index:2,__enum__:"lime.ui.MouseCursor",toString:$estr} - ,MOVE: {_hx_index:3,__enum__:"lime.ui.MouseCursor",toString:$estr} - ,POINTER: {_hx_index:4,__enum__:"lime.ui.MouseCursor",toString:$estr} - ,RESIZE_NESW: {_hx_index:5,__enum__:"lime.ui.MouseCursor",toString:$estr} - ,RESIZE_NS: {_hx_index:6,__enum__:"lime.ui.MouseCursor",toString:$estr} - ,RESIZE_NWSE: {_hx_index:7,__enum__:"lime.ui.MouseCursor",toString:$estr} - ,RESIZE_WE: {_hx_index:8,__enum__:"lime.ui.MouseCursor",toString:$estr} - ,TEXT: {_hx_index:9,__enum__:"lime.ui.MouseCursor",toString:$estr} - ,WAIT: {_hx_index:10,__enum__:"lime.ui.MouseCursor",toString:$estr} - ,WAIT_ARROW: {_hx_index:11,__enum__:"lime.ui.MouseCursor",toString:$estr} - ,CUSTOM: {_hx_index:12,__enum__:"lime.ui.MouseCursor",toString:$estr} -}; -var lime_ui_MouseWheelMode = $hxEnums["lime.ui.MouseWheelMode"] = { __ename__ : "lime.ui.MouseWheelMode", __constructs__ : ["PIXELS","LINES","PAGES","UNKNOWN"] - ,PIXELS: {_hx_index:0,__enum__:"lime.ui.MouseWheelMode",toString:$estr} - ,LINES: {_hx_index:1,__enum__:"lime.ui.MouseWheelMode",toString:$estr} - ,PAGES: {_hx_index:2,__enum__:"lime.ui.MouseWheelMode",toString:$estr} - ,UNKNOWN: {_hx_index:3,__enum__:"lime.ui.MouseWheelMode",toString:$estr} -}; -var lime_ui__$ScanCode_ScanCode_$Impl_$ = {}; -$hxClasses["lime.ui._ScanCode.ScanCode_Impl_"] = lime_ui__$ScanCode_ScanCode_$Impl_$; -lime_ui__$ScanCode_ScanCode_$Impl_$.__name__ = "lime.ui._ScanCode.ScanCode_Impl_"; -lime_ui__$ScanCode_ScanCode_$Impl_$.fromKeyCode = function(keyCode) { - return lime_ui__$KeyCode_KeyCode_$Impl_$.toScanCode(keyCode); -}; -lime_ui__$ScanCode_ScanCode_$Impl_$.toKeyCode = function(scanCode) { - return lime_ui__$KeyCode_KeyCode_$Impl_$.fromScanCode(scanCode); -}; -lime_ui__$ScanCode_ScanCode_$Impl_$.gt = function(a,b) { - return a > b; -}; -lime_ui__$ScanCode_ScanCode_$Impl_$.gte = function(a,b) { - return a >= b; -}; -lime_ui__$ScanCode_ScanCode_$Impl_$.lt = function(a,b) { - return a < b; -}; -lime_ui__$ScanCode_ScanCode_$Impl_$.lte = function(a,b) { - return a <= b; -}; -lime_ui__$ScanCode_ScanCode_$Impl_$.plus = function(a,b) { - return a + b; -}; -var lime_ui_Touch = function(x,y,id,dx,dy,pressure,device) { - this.x = x; - this.y = y; - this.id = id; - this.dx = dx; - this.dy = dy; - this.pressure = pressure; - this.device = device; -}; -$hxClasses["lime.ui.Touch"] = lime_ui_Touch; -lime_ui_Touch.__name__ = "lime.ui.Touch"; -lime_ui_Touch.prototype = { - device: null - ,dx: null - ,dy: null - ,id: null - ,pressure: null - ,x: null - ,y: null - ,__class__: lime_ui_Touch -}; -var lime_ui_Window = function(application,attributes) { - this.onTextInput = new lime_app__$Event_$String_$Void(); - this.onTextEdit = new lime_app__$Event_$String_$Int_$Int_$Void(); - this.onRestore = new lime_app__$Event_$Void_$Void(); - this.onResize = new lime_app__$Event_$Int_$Int_$Void(); - this.onRenderContextRestored = new lime_app__$Event_$lime_$graphics_$RenderContext_$Void(); - this.onRenderContextLost = new lime_app__$Event_$Void_$Void(); - this.onRender = new lime_app__$Event_$lime_$graphics_$RenderContext_$Void(); - this.onMove = new lime_app__$Event_$Float_$Float_$Void(); - this.onMouseWheel = new lime_app__$Event_$Float_$Float_$lime_$ui_$MouseWheelMode_$Void(); - this.onMouseUp = new lime_app__$Event_$Float_$Float_$Int_$Void(); - this.onMouseMoveRelative = new lime_app__$Event_$Float_$Float_$Void(); - this.onMouseMove = new lime_app__$Event_$Float_$Float_$Void(); - this.onMouseDown = new lime_app__$Event_$Float_$Float_$lime_$ui_$MouseButton_$Void(); - this.onMinimize = new lime_app__$Event_$Void_$Void(); - this.onMaximize = new lime_app__$Event_$Void_$Void(); - this.onLeave = new lime_app__$Event_$Void_$Void(); - this.onKeyUp = new lime_app__$Event_$lime_$ui_$KeyCode_$lime_$ui_$KeyModifier_$Void(); - this.onKeyDown = new lime_app__$Event_$lime_$ui_$KeyCode_$lime_$ui_$KeyModifier_$Void(); - this.onFullscreen = new lime_app__$Event_$Void_$Void(); - this.onFocusOut = new lime_app__$Event_$Void_$Void(); - this.onFocusIn = new lime_app__$Event_$Void_$Void(); - this.onExpose = new lime_app__$Event_$Void_$Void(); - this.onEnter = new lime_app__$Event_$Void_$Void(); - this.onDropFile = new lime_app__$Event_$String_$Void(); - this.onDeactivate = new lime_app__$Event_$Void_$Void(); - this.onClose = new lime_app__$Event_$Void_$Void(); - this.onActivate = new lime_app__$Event_$Void_$Void(); - this.application = application; - this.__attributes = attributes != null ? attributes : { }; - if(Object.prototype.hasOwnProperty.call(this.__attributes,"parameters")) { - this.parameters = this.__attributes.parameters; - } - this.__width = 0; - this.__height = 0; - this.__fullscreen = false; - this.__scale = 1; - this.__x = 0; - this.__y = 0; - this.__title = ""; - this.id = -1; - this.__backend = new lime__$internal_backend_html5_HTML5Window(this); -}; -$hxClasses["lime.ui.Window"] = lime_ui_Window; -lime_ui_Window.__name__ = "lime.ui.Window"; -lime_ui_Window.prototype = { - application: null - ,context: null - ,display: null - ,element: null - ,hidden: null - ,id: null - ,onActivate: null - ,onClose: null - ,onDeactivate: null - ,onDropFile: null - ,onEnter: null - ,onExpose: null - ,onFocusIn: null - ,onFocusOut: null - ,onFullscreen: null - ,onKeyDown: null - ,onKeyUp: null - ,onLeave: null - ,onMaximize: null - ,onMinimize: null - ,onMouseDown: null - ,onMouseMove: null - ,onMouseMoveRelative: null - ,onMouseUp: null - ,onMouseWheel: null - ,onMove: null - ,onRender: null - ,onRenderContextLost: null - ,onRenderContextRestored: null - ,onResize: null - ,onRestore: null - ,onTextEdit: null - ,onTextInput: null - ,parameters: null - ,scale: null - ,stage: null - ,__attributes: null - ,__backend: null - ,__borderless: null - ,__fullscreen: null - ,__height: null - ,__hidden: null - ,__maximized: null - ,__minimized: null - ,__resizable: null - ,__scale: null - ,__title: null - ,__width: null - ,__x: null - ,__y: null - ,alert: function(message,title) { - this.__backend.alert(message,title); - } - ,close: function() { - this.__backend.close(); - } - ,focus: function() { - this.__backend.focus(); - } - ,move: function(x,y) { - this.__backend.move(x,y); - this.__x = x; - this.__y = y; - } - ,readPixels: function(rect) { - return this.__backend.readPixels(rect); - } - ,resize: function(width,height) { - this.__backend.resize(width,height); - this.__width = width; - this.__height = height; - } - ,setIcon: function(image) { - if(image == null) { - return; - } - this.__backend.setIcon(image); - } - ,toString: function() { - return "[object Window]"; - } - ,warpMouse: function(x,y) { - this.__backend.warpMouse(x,y); - } - ,get_cursor: function() { - return this.__backend.getCursor(); - } - ,set_cursor: function(value) { - return this.__backend.setCursor(value); - } - ,get_display: function() { - return this.__backend.getDisplay(); - } - ,get_displayMode: function() { - return this.__backend.getDisplayMode(); - } - ,set_displayMode: function(value) { - return this.__backend.setDisplayMode(value); - } - ,get_borderless: function() { - return this.__borderless; - } - ,set_borderless: function(value) { - return this.__borderless = this.__backend.setBorderless(value); - } - ,get_frameRate: function() { - return this.__backend.getFrameRate(); - } - ,set_frameRate: function(value) { - return this.__backend.setFrameRate(value); - } - ,get_fullscreen: function() { - return this.__fullscreen; - } - ,set_fullscreen: function(value) { - return this.__fullscreen = this.__backend.setFullscreen(value); - } - ,get_height: function() { - return this.__height; - } - ,set_height: function(value) { - this.resize(this.__width,value); - return this.__height; - } - ,get_hidden: function() { - return this.__hidden; - } - ,get_maximized: function() { - return this.__maximized; - } - ,set_maximized: function(value) { - this.__minimized = false; - return this.__maximized = this.__backend.setMaximized(value); - } - ,get_minimized: function() { - return this.__minimized; - } - ,set_minimized: function(value) { - this.__maximized = false; - return this.__minimized = this.__backend.setMinimized(value); - } - ,get_mouseLock: function() { - return this.__backend.getMouseLock(); - } - ,set_mouseLock: function(value) { - this.__backend.setMouseLock(value); - return value; - } - ,get_resizable: function() { - return this.__resizable; - } - ,set_resizable: function(value) { - this.__resizable = this.__backend.setResizable(value); - return this.__resizable; - } - ,get_scale: function() { - return this.__scale; - } - ,get_textInputEnabled: function() { - return this.__backend.getTextInputEnabled(); - } - ,set_textInputEnabled: function(value) { - return this.__backend.setTextInputEnabled(value); - } - ,get_title: function() { - return this.__title; - } - ,set_title: function(value) { - return this.__title = this.__backend.setTitle(value); - } - ,get_width: function() { - return this.__width; - } - ,set_width: function(value) { - this.resize(value,this.__height); - return this.__width; - } - ,get_x: function() { - return this.__x; - } - ,set_x: function(value) { - this.move(value,this.__y); - return this.__x; - } - ,get_y: function() { - return this.__y; - } - ,set_y: function(value) { - this.move(this.__x,value); - return this.__y; - } - ,__class__: lime_ui_Window - ,__properties__: {set_y:"set_y",get_y:"get_y",set_x:"set_x",get_x:"get_x",set_width:"set_width",get_width:"get_width",set_title:"set_title",get_title:"get_title",set_textInputEnabled:"set_textInputEnabled",get_textInputEnabled:"get_textInputEnabled",get_scale:"get_scale",set_resizable:"set_resizable",get_resizable:"get_resizable",set_mouseLock:"set_mouseLock",get_mouseLock:"get_mouseLock",set_minimized:"set_minimized",get_minimized:"get_minimized",set_maximized:"set_maximized",get_maximized:"get_maximized",get_hidden:"get_hidden",set_height:"set_height",get_height:"get_height",set_fullscreen:"set_fullscreen",get_fullscreen:"get_fullscreen",set_frameRate:"set_frameRate",get_frameRate:"get_frameRate",set_displayMode:"set_displayMode",get_displayMode:"get_displayMode",get_display:"get_display",set_cursor:"set_cursor",get_cursor:"get_cursor",set_borderless:"set_borderless",get_borderless:"get_borderless"} -}; -var lime_utils_TAError = $hxEnums["lime.utils.TAError"] = { __ename__ : "lime.utils.TAError", __constructs__ : ["RangeError"] - ,RangeError: {_hx_index:0,__enum__:"lime.utils.TAError",toString:$estr} -}; -var lime_utils_AssetBundle = function() { - this.data = new haxe_ds_StringMap(); - this.paths = []; -}; -$hxClasses["lime.utils.AssetBundle"] = lime_utils_AssetBundle; -lime_utils_AssetBundle.__name__ = "lime.utils.AssetBundle"; -lime_utils_AssetBundle.fromBytes = function(bytes) { - var input = new haxe_io_BytesInput(bytes); - return lime_utils_AssetBundle.__extractBundle(input); -}; -lime_utils_AssetBundle.fromFile = function(path) { - return null; -}; -lime_utils_AssetBundle.loadFromBytes = function(bytes) { - return lime_app_Future.withValue(lime_utils_AssetBundle.fromBytes(bytes)); -}; -lime_utils_AssetBundle.loadFromFile = function(path) { - return lime_utils__$Bytes_Bytes_$Impl_$.loadFromFile(path).then(lime_utils_AssetBundle.loadFromBytes); -}; -lime_utils_AssetBundle.__extractBundle = function(input) { - var entries = haxe_zip_Reader.readZip(input); - var bundle = new lime_utils_AssetBundle(); - var _g_head = entries.h; - while(_g_head != null) { - var val = _g_head.item; - _g_head = _g_head.next; - var entry = val; - if(entry.compressed) { - var bytes = entry.data; - var this1 = bundle.data; - var key = entry.fileName; - var value = lime_utils__$Bytes_Bytes_$Impl_$.decompress(bytes,lime_utils_CompressionAlgorithm.DEFLATE); - var _this = this1; - if(__map_reserved[key] != null) { - _this.setReserved(key,value); - } else { - _this.h[key] = value; - } - } else { - var key1 = entry.fileName; - var value1 = entry.data; - var _this1 = bundle.data; - if(__map_reserved[key1] != null) { - _this1.setReserved(key1,value1); - } else { - _this1.h[key1] = value1; - } - } - bundle.paths.push(entry.fileName); - } - return bundle; -}; -lime_utils_AssetBundle.prototype = { - data: null - ,paths: null - ,__class__: lime_utils_AssetBundle -}; -var lime_utils_AssetCache = function() { - this.enabled = true; - this.audio = new haxe_ds_StringMap(); - this.font = new haxe_ds_StringMap(); - this.image = new haxe_ds_StringMap(); - this.version = 527456; -}; -$hxClasses["lime.utils.AssetCache"] = lime_utils_AssetCache; -lime_utils_AssetCache.__name__ = "lime.utils.AssetCache"; -lime_utils_AssetCache.prototype = { - audio: null - ,enabled: null - ,image: null - ,font: null - ,version: null - ,exists: function(id,type) { - if(type == "IMAGE" || type == null) { - var _this = this.image; - if(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id)) { - return true; - } - } - if(type == "FONT" || type == null) { - var _this1 = this.font; - if(__map_reserved[id] != null ? _this1.existsReserved(id) : _this1.h.hasOwnProperty(id)) { - return true; - } - } - if(type == "SOUND" || type == "MUSIC" || type == null) { - var _this2 = this.audio; - if(__map_reserved[id] != null ? _this2.existsReserved(id) : _this2.h.hasOwnProperty(id)) { - return true; - } - } - return false; - } - ,set: function(id,type,asset) { - switch(type) { - case "FONT": - var _this = this.font; - var value = asset; - if(__map_reserved[id] != null) { - _this.setReserved(id,value); - } else { - _this.h[id] = value; - } - break; - case "IMAGE": - if(!((asset) instanceof lime_graphics_Image)) { - throw new js__$Boot_HaxeError("Cannot cache non-Image asset: " + Std.string(asset) + " as Image"); - } - var _this1 = this.image; - var value1 = asset; - if(__map_reserved[id] != null) { - _this1.setReserved(id,value1); - } else { - _this1.h[id] = value1; - } - break; - case "MUSIC":case "SOUND": - if(!((asset) instanceof lime_media_AudioBuffer)) { - throw new js__$Boot_HaxeError("Cannot cache non-AudioBuffer asset: " + Std.string(asset) + " as AudioBuffer"); - } - var _this2 = this.audio; - var value2 = asset; - if(__map_reserved[id] != null) { - _this2.setReserved(id,value2); - } else { - _this2.h[id] = value2; - } - break; - default: - throw new js__$Boot_HaxeError(type + " assets are not cachable"); - } - } - ,clear: function(prefix) { - if(prefix == null) { - this.audio = new haxe_ds_StringMap(); - this.font = new haxe_ds_StringMap(); - this.image = new haxe_ds_StringMap(); - } else { - var keys = this.audio.keys(); - var key = keys; - while(key.hasNext()) { - var key1 = key.next(); - if(StringTools.startsWith(key1,prefix)) { - this.audio.remove(key1); - } - } - var keys1 = this.font.keys(); - var key2 = keys1; - while(key2.hasNext()) { - var key3 = key2.next(); - if(StringTools.startsWith(key3,prefix)) { - this.font.remove(key3); - } - } - var keys2 = this.image.keys(); - var key4 = keys2; - while(key4.hasNext()) { - var key5 = key4.next(); - if(StringTools.startsWith(key5,prefix)) { - this.image.remove(key5); - } - } - } - } - ,__class__: lime_utils_AssetCache -}; -var lime_utils_AssetLibrary = function() { - this.types = new haxe_ds_StringMap(); - this.sizes = new haxe_ds_StringMap(); - this.preload = new haxe_ds_StringMap(); - this.paths = new haxe_ds_StringMap(); - this.pathGroups = new haxe_ds_StringMap(); - this.classTypes = new haxe_ds_StringMap(); - this.cachedText = new haxe_ds_StringMap(); - this.cachedImages = new haxe_ds_StringMap(); - this.cachedFonts = new haxe_ds_StringMap(); - this.cachedBytes = new haxe_ds_StringMap(); - this.cachedAudioBuffers = new haxe_ds_StringMap(); - this.onChange = new lime_app__$Event_$Void_$Void(); - this.bytesLoaded = 0; - this.bytesTotal = 0; -}; -$hxClasses["lime.utils.AssetLibrary"] = lime_utils_AssetLibrary; -lime_utils_AssetLibrary.__name__ = "lime.utils.AssetLibrary"; -lime_utils_AssetLibrary.fromBytes = function(bytes,rootPath) { - return lime_utils_AssetLibrary.fromManifest(lime_utils_AssetManifest.fromBytes(bytes,rootPath)); -}; -lime_utils_AssetLibrary.fromFile = function(path,rootPath) { - return lime_utils_AssetLibrary.fromManifest(lime_utils_AssetManifest.fromFile(path,rootPath)); -}; -lime_utils_AssetLibrary.fromBundle = function(bundle) { - var _this = bundle.data; - if(__map_reserved["library.json"] != null ? _this.existsReserved("library.json") : _this.h.hasOwnProperty("library.json")) { - var _this1 = bundle.data; - var manifest = lime_utils_AssetManifest.fromBytes(__map_reserved["library.json"] != null ? _this1.getReserved("library.json") : _this1.h["library.json"]); - if(manifest != null) { - var library = null; - if(manifest.libraryType == null) { - library = new lime_utils_AssetLibrary(); - } else { - var name = manifest.libraryType; - var libraryClass = $hxClasses[name]; - if(libraryClass != null) { - library = Type.createInstance(libraryClass,manifest.libraryArgs); - } else { - lime_utils_Log.warn("Could not find library type: " + manifest.libraryType,{ fileName : "lime/utils/AssetLibrary.hx", lineNumber : 122, className : "lime.utils.AssetLibrary", methodName : "fromBundle"}); - return null; - } - } - library.__fromBundle(bundle,manifest); - return library; - } - } else { - var library1 = new lime_utils_AssetLibrary(); - library1.__fromBundle(bundle); - return library1; - } - return null; -}; -lime_utils_AssetLibrary.fromManifest = function(manifest) { - if(manifest == null) { - return null; - } - var library = null; - if(manifest.libraryType == null) { - library = new lime_utils_AssetLibrary(); - } else { - var name = manifest.libraryType; - var libraryClass = $hxClasses[name]; - if(libraryClass != null) { - library = Type.createInstance(libraryClass,manifest.libraryArgs); - } else { - lime_utils_Log.warn("Could not find library type: " + manifest.libraryType,{ fileName : "lime/utils/AssetLibrary.hx", lineNumber : 160, className : "lime.utils.AssetLibrary", methodName : "fromManifest"}); - return null; - } - } - library.__fromManifest(manifest); - return library; -}; -lime_utils_AssetLibrary.loadFromBytes = function(bytes,rootPath) { - return lime_utils_AssetManifest.loadFromBytes(bytes,rootPath).then(function(manifest) { - return lime_utils_AssetLibrary.loadFromManifest(manifest); - }); -}; -lime_utils_AssetLibrary.loadFromFile = function(path,rootPath) { - return lime_utils_AssetManifest.loadFromFile(path,rootPath).then(function(manifest) { - return lime_utils_AssetLibrary.loadFromManifest(manifest); - }); -}; -lime_utils_AssetLibrary.loadFromManifest = function(manifest) { - var library = lime_utils_AssetLibrary.fromManifest(manifest); - if(library != null) { - return library.load(); - } else { - return lime_app_Future.withError("Could not load asset manifest"); - } -}; -lime_utils_AssetLibrary.prototype = { - onChange: null - ,assetsLoaded: null - ,assetsTotal: null - ,bytesLoaded: null - ,bytesLoadedCache: null - ,bytesTotal: null - ,cachedAudioBuffers: null - ,cachedBytes: null - ,cachedFonts: null - ,cachedImages: null - ,cachedText: null - ,classTypes: null - ,loaded: null - ,pathGroups: null - ,paths: null - ,preload: null - ,promise: null - ,sizes: null - ,types: null - ,exists: function(id,type) { - var requestedType = type != null ? js_Boot.__cast(type , String) : null; - var _this = this.types; - var assetType = __map_reserved[id] != null ? _this.getReserved(id) : _this.h[id]; - if(assetType != null) { - if(assetType == requestedType || (requestedType == "SOUND" || requestedType == "MUSIC") && (assetType == "MUSIC" || assetType == "SOUND")) { - return true; - } - if(requestedType == "BINARY" || requestedType == null || assetType == "BINARY" && requestedType == "TEXT") { - return true; - } - } - return false; - } - ,getAsset: function(id,type) { - switch(type) { - case "BINARY": - return this.getBytes(id); - case "FONT": - return this.getFont(id); - case "IMAGE": - return this.getImage(id); - case "MUSIC":case "SOUND": - return this.getAudioBuffer(id); - case "TEMPLATE": - throw new js__$Boot_HaxeError("Not sure how to get template: " + id); - case "TEXT": - return this.getText(id); - default: - throw new js__$Boot_HaxeError("Unknown asset type: " + type); - } - } - ,getAudioBuffer: function(id) { - var _this = this.cachedAudioBuffers; - if(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id)) { - var _this1 = this.cachedAudioBuffers; - if(__map_reserved[id] != null) { - return _this1.getReserved(id); - } else { - return _this1.h[id]; - } - } else { - var _this2 = this.classTypes; - if(__map_reserved[id] != null ? _this2.existsReserved(id) : _this2.h.hasOwnProperty(id)) { - var _this3 = this.classTypes; - return lime_media_AudioBuffer.fromBytes(js_Boot.__cast(Type.createInstance(__map_reserved[id] != null ? _this3.getReserved(id) : _this3.h[id],[]) , haxe_io_Bytes)); - } else { - var _this4 = this.paths; - return lime_media_AudioBuffer.fromFile(__map_reserved[id] != null ? _this4.getReserved(id) : _this4.h[id]); - } - } - } - ,getBytes: function(id) { - var _this = this.cachedBytes; - if(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id)) { - var _this1 = this.cachedBytes; - if(__map_reserved[id] != null) { - return _this1.getReserved(id); - } else { - return _this1.h[id]; - } - } else { - var _this2 = this.cachedText; - if(__map_reserved[id] != null ? _this2.existsReserved(id) : _this2.h.hasOwnProperty(id)) { - var _this3 = this.cachedText; - var bytes = lime_utils__$Bytes_Bytes_$Impl_$.ofString(__map_reserved[id] != null ? _this3.getReserved(id) : _this3.h[id]); - var _this4 = this.cachedBytes; - if(__map_reserved[id] != null) { - _this4.setReserved(id,bytes); - } else { - _this4.h[id] = bytes; - } - return bytes; - } else { - var _this5 = this.classTypes; - if(__map_reserved[id] != null ? _this5.existsReserved(id) : _this5.h.hasOwnProperty(id)) { - var _this6 = this.classTypes; - return js_Boot.__cast(Type.createInstance(__map_reserved[id] != null ? _this6.getReserved(id) : _this6.h[id],[]) , haxe_io_Bytes); - } else { - var _this7 = this.paths; - return lime_utils__$Bytes_Bytes_$Impl_$.fromFile(__map_reserved[id] != null ? _this7.getReserved(id) : _this7.h[id]); - } - } - } - } - ,getFont: function(id) { - var _this = this.cachedFonts; - if(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id)) { - var _this1 = this.cachedFonts; - if(__map_reserved[id] != null) { - return _this1.getReserved(id); - } else { - return _this1.h[id]; - } - } else { - var _this2 = this.classTypes; - if(__map_reserved[id] != null ? _this2.existsReserved(id) : _this2.h.hasOwnProperty(id)) { - var _this3 = this.classTypes; - return js_Boot.__cast(Type.createInstance(__map_reserved[id] != null ? _this3.getReserved(id) : _this3.h[id],[]) , lime_text_Font); - } else { - var _this4 = this.paths; - return lime_text_Font.fromFile(__map_reserved[id] != null ? _this4.getReserved(id) : _this4.h[id]); - } - } - } - ,getImage: function(id) { - var _this = this.cachedImages; - if(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id)) { - var _this1 = this.cachedImages; - if(__map_reserved[id] != null) { - return _this1.getReserved(id); - } else { - return _this1.h[id]; - } - } else { - var _this2 = this.classTypes; - if(__map_reserved[id] != null ? _this2.existsReserved(id) : _this2.h.hasOwnProperty(id)) { - var _this3 = this.classTypes; - return js_Boot.__cast(Type.createInstance(__map_reserved[id] != null ? _this3.getReserved(id) : _this3.h[id],[]) , lime_graphics_Image); - } else { - var _this4 = this.paths; - return lime_graphics_Image.fromFile(__map_reserved[id] != null ? _this4.getReserved(id) : _this4.h[id]); - } - } - } - ,getPath: function(id) { - var _this = this.paths; - if(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id)) { - var _this1 = this.paths; - if(__map_reserved[id] != null) { - return _this1.getReserved(id); - } else { - return _this1.h[id]; - } - } else { - var _this2 = this.pathGroups; - if(__map_reserved[id] != null ? _this2.existsReserved(id) : _this2.h.hasOwnProperty(id)) { - var _this3 = this.pathGroups; - return (__map_reserved[id] != null ? _this3.getReserved(id) : _this3.h[id])[0]; - } else { - return null; - } - } - } - ,getText: function(id) { - var _this = this.cachedText; - if(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id)) { - var _this1 = this.cachedText; - if(__map_reserved[id] != null) { - return _this1.getReserved(id); - } else { - return _this1.h[id]; - } - } else { - var bytes = this.getBytes(id); - if(bytes == null) { - return null; - } else { - return bytes.getString(0,bytes.length); - } - } - } - ,isLocal: function(id,type) { - var _this = this.classTypes; - if(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id)) { - return true; - } - var requestedType = type != null ? js_Boot.__cast(type , String) : null; - if(requestedType == null) { - var _this1 = this.cachedBytes; - if(!(__map_reserved[id] != null ? _this1.existsReserved(id) : _this1.h.hasOwnProperty(id))) { - var _this2 = this.cachedText; - if(__map_reserved[id] != null) { - return _this2.existsReserved(id); - } else { - return _this2.h.hasOwnProperty(id); - } - } else { - return true; - } - } else { - switch(requestedType) { - case "FONT": - var _this3 = this.cachedFonts; - if(__map_reserved[id] != null) { - return _this3.existsReserved(id); - } else { - return _this3.h.hasOwnProperty(id); - } - break; - case "IMAGE": - var _this4 = this.cachedImages; - if(__map_reserved[id] != null) { - return _this4.existsReserved(id); - } else { - return _this4.h.hasOwnProperty(id); - } - break; - case "MUSIC":case "SOUND": - var _this5 = this.cachedAudioBuffers; - if(__map_reserved[id] != null) { - return _this5.existsReserved(id); - } else { - return _this5.h.hasOwnProperty(id); - } - break; - default: - var _this6 = this.cachedBytes; - if(!(__map_reserved[id] != null ? _this6.existsReserved(id) : _this6.h.hasOwnProperty(id))) { - var _this7 = this.cachedText; - if(__map_reserved[id] != null) { - return _this7.existsReserved(id); - } else { - return _this7.h.hasOwnProperty(id); - } - } else { - return true; - } - } - } - } - ,list: function(type) { - var requestedType = type != null ? js_Boot.__cast(type , String) : null; - var items = []; - var id = this.types.keys(); - while(id.hasNext()) { - var id1 = id.next(); - if(requestedType == null || this.exists(id1,type)) { - items.push(id1); - } - } - return items; - } - ,loadAsset: function(id,type) { - switch(type) { - case "BINARY": - return this.loadBytes(id); - case "FONT": - return this.loadFont(id); - case "IMAGE": - return this.loadImage(id); - case "MUSIC":case "SOUND": - return this.loadAudioBuffer(id); - case "TEMPLATE": - throw new js__$Boot_HaxeError("Not sure how to load template: " + id); - case "TEXT": - return this.loadText(id); - default: - throw new js__$Boot_HaxeError("Unknown asset type: " + type); - } - } - ,load: function() { - if(this.loaded) { - return lime_app_Future.withValue(this); - } - if(this.promise == null) { - this.promise = new lime_app_Promise(); - this.bytesLoadedCache = new haxe_ds_StringMap(); - this.assetsLoaded = 0; - this.assetsTotal = 1; - var id = this.preload.keys(); - while(id.hasNext()) { - var id1 = id.next(); - var _this = this.preload; - if(!(__map_reserved[id1] != null ? _this.getReserved(id1) : _this.h[id1])) { - continue; - } - var _this1 = this.types; - lime_utils_Log.verbose("Preloading asset: " + id1 + " [" + (__map_reserved[id1] != null ? _this1.getReserved(id1) : _this1.h[id1]) + "]",{ fileName : "lime/utils/AssetLibrary.hx", lineNumber : 405, className : "lime.utils.AssetLibrary", methodName : "load"}); - var _this2 = this.types; - var _g = __map_reserved[id1] != null ? _this2.getReserved(id1) : _this2.h[id1]; - if(_g != null) { - switch(_g) { - case "BINARY": - this.assetsTotal++; - var future = this.loadBytes(id1); - future.onProgress((function(id2,f) { - return function(bytesLoaded,bytesTotal) { - f[0](id2[0],bytesLoaded,bytesTotal); - }; - })([id1],[$bind(this,this.load_onProgress)])); - future.onError((function(id3,f1) { - return function(message) { - f1[0](id3[0],message); - }; - })([id1],[$bind(this,this.load_onError)])); - future.onComplete((function(id4,f2) { - return function(bytes) { - f2[0](id4[0],bytes); - }; - })([id1],[$bind(this,this.loadBytes_onComplete)])); - break; - case "FONT": - this.assetsTotal++; - var future1 = this.loadFont(id1); - future1.onProgress((function(id5,f3) { - return function(bytesLoaded1,bytesTotal1) { - f3[0](id5[0],bytesLoaded1,bytesTotal1); - }; - })([id1],[$bind(this,this.load_onProgress)])); - future1.onError((function(id6,f4) { - return function(message1) { - f4[0](id6[0],message1); - }; - })([id1],[$bind(this,this.load_onError)])); - future1.onComplete((function(id7,f5) { - return function(font) { - f5[0](id7[0],font); - }; - })([id1],[$bind(this,this.loadFont_onComplete)])); - break; - case "IMAGE": - this.assetsTotal++; - var future2 = this.loadImage(id1); - future2.onProgress((function(id8,f6) { - return function(bytesLoaded2,bytesTotal2) { - f6[0](id8[0],bytesLoaded2,bytesTotal2); - }; - })([id1],[$bind(this,this.load_onProgress)])); - future2.onError((function(id9,f7) { - return function(message2) { - f7[0](id9[0],message2); - }; - })([id1],[$bind(this,this.load_onError)])); - future2.onComplete((function(id10,f8) { - return function(image) { - f8[0](id10[0],image); - }; - })([id1],[$bind(this,this.loadImage_onComplete)])); - break; - case "MUSIC":case "SOUND": - this.assetsTotal++; - var future3 = this.loadAudioBuffer(id1); - future3.onProgress((function(id11,f9) { - return function(bytesLoaded3,bytesTotal3) { - f9[0](id11[0],bytesLoaded3,bytesTotal3); - }; - })([id1],[$bind(this,this.load_onProgress)])); - future3.onError((function(id12,f10) { - return function(message3) { - f10[0](id12[0],message3); - }; - })([id1],[$bind(this,this.loadAudioBuffer_onError)])); - future3.onComplete((function(id13,f11) { - return function(audioBuffer) { - f11[0](id13[0],audioBuffer); - }; - })([id1],[$bind(this,this.loadAudioBuffer_onComplete)])); - break; - case "TEXT": - this.assetsTotal++; - var future4 = this.loadText(id1); - future4.onProgress((function(id14,f12) { - return function(bytesLoaded4,bytesTotal4) { - f12[0](id14[0],bytesLoaded4,bytesTotal4); - }; - })([id1],[$bind(this,this.load_onProgress)])); - future4.onError((function(id15,f13) { - return function(message4) { - f13[0](id15[0],message4); - }; - })([id1],[$bind(this,this.load_onError)])); - future4.onComplete((function(id16,f14) { - return function(text) { - f14[0](id16[0],text); - }; - })([id1],[$bind(this,this.loadText_onComplete)])); - break; - default: - } - } - } - this.__assetLoaded(null); - } - return this.promise.future; - } - ,loadAudioBuffer: function(id) { - var _this = this.cachedAudioBuffers; - if(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id)) { - var _this1 = this.cachedAudioBuffers; - return lime_app_Future.withValue(__map_reserved[id] != null ? _this1.getReserved(id) : _this1.h[id]); - } else { - var _this2 = this.classTypes; - if(__map_reserved[id] != null ? _this2.existsReserved(id) : _this2.h.hasOwnProperty(id)) { - var _this3 = this.classTypes; - return lime_app_Future.withValue(Type.createInstance(__map_reserved[id] != null ? _this3.getReserved(id) : _this3.h[id],[])); - } else { - var _this4 = this.pathGroups; - if(__map_reserved[id] != null ? _this4.existsReserved(id) : _this4.h.hasOwnProperty(id)) { - var _this5 = this.pathGroups; - return lime_media_AudioBuffer.loadFromFiles(__map_reserved[id] != null ? _this5.getReserved(id) : _this5.h[id]); - } else { - var _this6 = this.paths; - return lime_media_AudioBuffer.loadFromFile(__map_reserved[id] != null ? _this6.getReserved(id) : _this6.h[id]); - } - } - } - } - ,loadBytes: function(id) { - var _this = this.cachedBytes; - if(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id)) { - var _this1 = this.cachedBytes; - return lime_app_Future.withValue(__map_reserved[id] != null ? _this1.getReserved(id) : _this1.h[id]); - } else { - var _this2 = this.classTypes; - if(__map_reserved[id] != null ? _this2.existsReserved(id) : _this2.h.hasOwnProperty(id)) { - var _this3 = this.classTypes; - return lime_app_Future.withValue(Type.createInstance(__map_reserved[id] != null ? _this3.getReserved(id) : _this3.h[id],[])); - } else { - var _this4 = this.paths; - return lime_utils__$Bytes_Bytes_$Impl_$.loadFromFile(__map_reserved[id] != null ? _this4.getReserved(id) : _this4.h[id]); - } - } - } - ,loadFont: function(id) { - var _this = this.cachedFonts; - if(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id)) { - var _this1 = this.cachedFonts; - return lime_app_Future.withValue(__map_reserved[id] != null ? _this1.getReserved(id) : _this1.h[id]); - } else { - var _this2 = this.classTypes; - if(__map_reserved[id] != null ? _this2.existsReserved(id) : _this2.h.hasOwnProperty(id)) { - var _this3 = this.classTypes; - var font = Type.createInstance(__map_reserved[id] != null ? _this3.getReserved(id) : _this3.h[id],[]); - return font.__loadFromName(font.name); - } else { - var _this4 = this.paths; - return lime_text_Font.loadFromName(__map_reserved[id] != null ? _this4.getReserved(id) : _this4.h[id]); - } - } - } - ,loadImage: function(id) { - var _gthis = this; - var _this = this.cachedImages; - if(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id)) { - var _this1 = this.cachedImages; - return lime_app_Future.withValue(__map_reserved[id] != null ? _this1.getReserved(id) : _this1.h[id]); - } else { - var _this2 = this.classTypes; - if(__map_reserved[id] != null ? _this2.existsReserved(id) : _this2.h.hasOwnProperty(id)) { - var _this3 = this.classTypes; - return lime_app_Future.withValue(Type.createInstance(__map_reserved[id] != null ? _this3.getReserved(id) : _this3.h[id],[])); - } else { - var _this4 = this.cachedBytes; - if(__map_reserved[id] != null ? _this4.existsReserved(id) : _this4.h.hasOwnProperty(id)) { - var _this5 = this.cachedBytes; - return lime_graphics_Image.loadFromBytes(__map_reserved[id] != null ? _this5.getReserved(id) : _this5.h[id]).then(function(image) { - _gthis.cachedBytes.remove(id); - var _this6 = _gthis.cachedImages; - if(__map_reserved[id] != null) { - _this6.setReserved(id,image); - } else { - _this6.h[id] = image; - } - return lime_app_Future.withValue(image); - }); - } else { - var _this7 = this.paths; - return lime_graphics_Image.loadFromFile(__map_reserved[id] != null ? _this7.getReserved(id) : _this7.h[id]); - } - } - } - } - ,loadText: function(id) { - var _this = this.cachedText; - if(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id)) { - var _this1 = this.cachedText; - return lime_app_Future.withValue(__map_reserved[id] != null ? _this1.getReserved(id) : _this1.h[id]); - } else { - var tmp; - var _this2 = this.cachedBytes; - if(!(__map_reserved[id] != null ? _this2.existsReserved(id) : _this2.h.hasOwnProperty(id))) { - var _this3 = this.classTypes; - tmp = __map_reserved[id] != null ? _this3.existsReserved(id) : _this3.h.hasOwnProperty(id); - } else { - tmp = true; - } - if(tmp) { - var bytes = this.getBytes(id); - if(bytes == null) { - return lime_app_Future.withValue(null); - } else { - var text = bytes.getString(0,bytes.length); - var _this4 = this.cachedText; - if(__map_reserved[id] != null) { - _this4.setReserved(id,text); - } else { - _this4.h[id] = text; - } - return lime_app_Future.withValue(text); - } - } else { - var request = new lime_net__$HTTPRequest_$String(); - var _this5 = this.paths; - return request.load(__map_reserved[id] != null ? _this5.getReserved(id) : _this5.h[id]); - } - } - } - ,unload: function() { - } - ,__assetLoaded: function(id) { - this.assetsLoaded++; - if(id != null) { - var _this = this.types; - lime_utils_Log.verbose("Loaded asset: " + id + " [" + (__map_reserved[id] != null ? _this.getReserved(id) : _this.h[id]) + "] (" + (this.assetsLoaded - 1) + "/" + (this.assetsTotal - 1) + ")",{ fileName : "lime/utils/AssetLibrary.hx", lineNumber : 619, className : "lime.utils.AssetLibrary", methodName : "__assetLoaded"}); - } - if(id != null) { - var size; - var _this1 = this.sizes; - if(__map_reserved[id] != null ? _this1.existsReserved(id) : _this1.h.hasOwnProperty(id)) { - var _this2 = this.sizes; - size = __map_reserved[id] != null ? _this2.getReserved(id) : _this2.h[id]; - } else { - size = 0; - } - var _this3 = this.bytesLoadedCache; - if(!(__map_reserved[id] != null ? _this3.existsReserved(id) : _this3.h.hasOwnProperty(id))) { - this.bytesLoaded += size; - } else { - var _this4 = this.bytesLoadedCache; - var cache = __map_reserved[id] != null ? _this4.getReserved(id) : _this4.h[id]; - if(cache < size) { - this.bytesLoaded += size - cache; - } - } - var _this5 = this.bytesLoadedCache; - if(__map_reserved[id] != null) { - _this5.setReserved(id,size); - } else { - _this5.h[id] = size; - } - } - if(this.assetsLoaded < this.assetsTotal) { - this.promise.progress(this.bytesLoaded,this.bytesTotal); - } else { - this.loaded = true; - this.promise.progress(this.bytesTotal,this.bytesTotal); - this.promise.complete(this); - } - } - ,__cacheBreak: function(path) { - return lime_utils_Assets.__cacheBreak(path); - } - ,__fromBundle: function(bundle,manifest) { - if(manifest != null) { - var id; - var data; - var type; - var _g = 0; - var _g1 = manifest.assets; - while(_g < _g1.length) { - var asset = _g1[_g]; - ++_g; - id = Object.prototype.hasOwnProperty.call(asset,"id") ? asset.id : asset.path; - var key = asset.path; - var _this = bundle.data; - data = __map_reserved[key] != null ? _this.getReserved(key) : _this.h[key]; - if(Object.prototype.hasOwnProperty.call(asset,"type")) { - type = asset.type; - if(type == "TEXT") { - var value = data != null ? Std.string(data) : null; - var _this1 = this.cachedText; - if(__map_reserved[id] != null) { - _this1.setReserved(id,value); - } else { - _this1.h[id] = value; - } - } else { - var _this2 = this.cachedBytes; - if(__map_reserved[id] != null) { - _this2.setReserved(id,data); - } else { - _this2.h[id] = data; - } - } - var value1 = asset.type; - var _this3 = this.types; - if(__map_reserved[id] != null) { - _this3.setReserved(id,value1); - } else { - _this3.h[id] = value1; - } - } else { - var _this4 = this.cachedBytes; - if(__map_reserved[id] != null) { - _this4.setReserved(id,data); - } else { - _this4.h[id] = data; - } - var _this5 = this.types; - var value2 = "BINARY"; - if(__map_reserved[id] != null) { - _this5.setReserved(id,value2); - } else { - _this5.h[id] = value2; - } - } - } - } else { - var _g2 = 0; - var _g11 = bundle.paths; - while(_g2 < _g11.length) { - var path = _g11[_g2]; - ++_g2; - var this1 = this.cachedBytes; - var _this6 = bundle.data; - var value3 = __map_reserved[path] != null ? _this6.getReserved(path) : _this6.h[path]; - var _this7 = this1; - if(__map_reserved[path] != null) { - _this7.setReserved(path,value3); - } else { - _this7.h[path] = value3; - } - var _this8 = this.types; - var value4 = "BINARY"; - if(__map_reserved[path] != null) { - _this8.setReserved(path,value4); - } else { - _this8.h[path] = value4; - } - } - } - } - ,__fromManifest: function(manifest) { - var hasSize = manifest.version >= 2; - var size; - var id; - var pathGroup; - var classRef; - var basePath = manifest.rootPath; - if(basePath == null) { - basePath = ""; - } - if(basePath != "") { - basePath += "/"; - } - var _g = 0; - var _g1 = manifest.assets; - while(_g < _g1.length) { - var asset = _g1[_g]; - ++_g; - size = hasSize && Object.prototype.hasOwnProperty.call(asset,"size") ? asset.size : 100; - id = Object.prototype.hasOwnProperty.call(asset,"id") ? asset.id : asset.path; - if(Object.prototype.hasOwnProperty.call(asset,"path")) { - var this1 = this.paths; - var value = this.__cacheBreak(this.__resolvePath(basePath + Std.string(Reflect.field(asset,"path")))); - var _this = this1; - if(__map_reserved[id] != null) { - _this.setReserved(id,value); - } else { - _this.h[id] = value; - } - } - if(Object.prototype.hasOwnProperty.call(asset,"pathGroup")) { - pathGroup = Reflect.field(asset,"pathGroup"); - var _g2 = 0; - var _g11 = pathGroup.length; - while(_g2 < _g11) { - var i = _g2++; - pathGroup[i] = this.__cacheBreak(this.__resolvePath(basePath + pathGroup[i])); - } - var _this1 = this.pathGroups; - if(__map_reserved[id] != null) { - _this1.setReserved(id,pathGroup); - } else { - _this1.h[id] = pathGroup; - } - } - var _this2 = this.sizes; - if(__map_reserved[id] != null) { - _this2.setReserved(id,size); - } else { - _this2.h[id] = size; - } - var value1 = asset.type; - var _this3 = this.types; - if(__map_reserved[id] != null) { - _this3.setReserved(id,value1); - } else { - _this3.h[id] = value1; - } - if(Object.prototype.hasOwnProperty.call(asset,"preload")) { - var value2 = Reflect.field(asset,"preload"); - var _this4 = this.preload; - if(__map_reserved[id] != null) { - _this4.setReserved(id,value2); - } else { - _this4.h[id] = value2; - } - } - if(Object.prototype.hasOwnProperty.call(asset,"className")) { - var name = Reflect.field(asset,"className"); - classRef = $hxClasses[name]; - var _this5 = this.classTypes; - if(__map_reserved[id] != null) { - _this5.setReserved(id,classRef); - } else { - _this5.h[id] = classRef; - } - } - } - this.bytesTotal = 0; - var _g21 = 0; - var _g3 = manifest.assets; - while(_g21 < _g3.length) { - var asset1 = _g3[_g21]; - ++_g21; - id = Object.prototype.hasOwnProperty.call(asset1,"id") ? asset1.id : asset1.path; - var tmp; - var tmp1; - var _this6 = this.preload; - if(__map_reserved[id] != null ? _this6.existsReserved(id) : _this6.h.hasOwnProperty(id)) { - var _this7 = this.preload; - tmp1 = __map_reserved[id] != null ? _this7.getReserved(id) : _this7.h[id]; - } else { - tmp1 = false; - } - if(tmp1) { - var _this8 = this.sizes; - tmp = __map_reserved[id] != null ? _this8.existsReserved(id) : _this8.h.hasOwnProperty(id); - } else { - tmp = false; - } - if(tmp) { - var _this9 = this.sizes; - this.bytesTotal += __map_reserved[id] != null ? _this9.getReserved(id) : _this9.h[id]; - } - } - } - ,__resolvePath: function(path) { - path = StringTools.replace(path,"\\","/"); - var colonIdx = path.indexOf(":"); - if(StringTools.startsWith(path,"http") && colonIdx > 0) { - var lastSlashIdx = colonIdx + 3; - var httpSection = HxOverrides.substr(path,0,lastSlashIdx); - path = httpSection + StringTools.replace(HxOverrides.substr(path,lastSlashIdx,null),"//","/"); - } else { - path = StringTools.replace(path,"//","/"); - } - if(path.indexOf("./") > -1) { - var split = path.split("/"); - var newPath = []; - var _g = 0; - var _g1 = split.length; - while(_g < _g1) { - var i = _g++; - if(split[i] == "..") { - if(i == 0 || newPath[i - 1] == "..") { - newPath.push(".."); - } else { - newPath.pop(); - } - } else if(split[i] == ".") { - if(i == 0) { - newPath.push("."); - } - } else { - newPath.push(split[i]); - } - } - path = newPath.join("/"); - } - return path; - } - ,loadAudioBuffer_onComplete: function(id,audioBuffer) { - var _this = this.cachedAudioBuffers; - if(__map_reserved[id] != null) { - _this.setReserved(id,audioBuffer); - } else { - _this.h[id] = audioBuffer; - } - var _this1 = this.pathGroups; - if(__map_reserved[id] != null ? _this1.existsReserved(id) : _this1.h.hasOwnProperty(id)) { - var _this2 = this.pathGroups; - var pathGroup = __map_reserved[id] != null ? _this2.getReserved(id) : _this2.h[id]; - var otherID = this.pathGroups.keys(); - while(otherID.hasNext()) { - var otherID1 = otherID.next(); - if(otherID1 == id) { - continue; - } - var _g = 0; - while(_g < pathGroup.length) { - var path = pathGroup[_g]; - ++_g; - var _this3 = this.pathGroups; - if((__map_reserved[otherID1] != null ? _this3.getReserved(otherID1) : _this3.h[otherID1]).indexOf(path) > -1) { - var _this4 = this.cachedAudioBuffers; - if(__map_reserved[otherID1] != null) { - _this4.setReserved(otherID1,audioBuffer); - } else { - _this4.h[otherID1] = audioBuffer; - } - break; - } - } - } - } - this.__assetLoaded(id); - } - ,loadAudioBuffer_onError: function(id,message) { - if(message != null && message != "") { - lime_utils_Log.warn("Could not load \"" + id + "\": " + Std.string(message),{ fileName : "lime/utils/AssetLibrary.hx", lineNumber : 865, className : "lime.utils.AssetLibrary", methodName : "loadAudioBuffer_onError"}); - } else { - lime_utils_Log.warn("Could not load \"" + id + "\"",{ fileName : "lime/utils/AssetLibrary.hx", lineNumber : 869, className : "lime.utils.AssetLibrary", methodName : "loadAudioBuffer_onError"}); - } - this.loadAudioBuffer_onComplete(id,new lime_media_AudioBuffer()); - } - ,loadBytes_onComplete: function(id,bytes) { - var _this = this.cachedBytes; - if(__map_reserved[id] != null) { - _this.setReserved(id,bytes); - } else { - _this.h[id] = bytes; - } - this.__assetLoaded(id); - } - ,loadFont_onComplete: function(id,font) { - var _this = this.cachedFonts; - if(__map_reserved[id] != null) { - _this.setReserved(id,font); - } else { - _this.h[id] = font; - } - this.__assetLoaded(id); - } - ,loadImage_onComplete: function(id,image) { - var _this = this.cachedImages; - if(__map_reserved[id] != null) { - _this.setReserved(id,image); - } else { - _this.h[id] = image; - } - this.__assetLoaded(id); - } - ,loadText_onComplete: function(id,text) { - var _this = this.cachedText; - if(__map_reserved[id] != null) { - _this.setReserved(id,text); - } else { - _this.h[id] = text; - } - this.__assetLoaded(id); - } - ,load_onError: function(id,message) { - if(message != null && message != "") { - this.promise.error("Error loading asset \"" + id + "\": " + Std.string(message)); - } else { - this.promise.error("Error loading asset \"" + id + "\""); - } - } - ,load_onProgress: function(id,bytesLoaded,bytesTotal) { - if(bytesLoaded > 0) { - var _this = this.sizes; - var size = __map_reserved[id] != null ? _this.getReserved(id) : _this.h[id]; - var percent; - if(bytesTotal > 0) { - percent = bytesLoaded / bytesTotal; - if(percent > 1) { - percent = 1; - } - bytesLoaded = Math.floor(percent * size); - } else if(bytesLoaded > size) { - bytesLoaded = size; - } - var _this1 = this.bytesLoadedCache; - if(__map_reserved[id] != null ? _this1.existsReserved(id) : _this1.h.hasOwnProperty(id)) { - var _this2 = this.bytesLoadedCache; - var cache = __map_reserved[id] != null ? _this2.getReserved(id) : _this2.h[id]; - if(bytesLoaded != cache) { - this.bytesLoaded += bytesLoaded - cache; - } - } else { - this.bytesLoaded += bytesLoaded; - } - var _this3 = this.bytesLoadedCache; - if(__map_reserved[id] != null) { - _this3.setReserved(id,bytesLoaded); - } else { - _this3.h[id] = bytesLoaded; - } - this.promise.progress(this.bytesLoaded,this.bytesTotal); - } - } - ,__class__: lime_utils_AssetLibrary -}; -var lime_utils_AssetManifest = function() { - this.assets = []; - this.libraryArgs = []; - this.version = 2; -}; -$hxClasses["lime.utils.AssetManifest"] = lime_utils_AssetManifest; -lime_utils_AssetManifest.__name__ = "lime.utils.AssetManifest"; -lime_utils_AssetManifest.fromBytes = function(bytes,rootPath) { - if(bytes != null) { - return lime_utils_AssetManifest.parse(bytes.getString(0,bytes.length),rootPath); - } else { - return null; - } -}; -lime_utils_AssetManifest.fromFile = function(path,rootPath) { - path = lime_utils_AssetManifest.__resolvePath(path); - rootPath = lime_utils_AssetManifest.__resolveRootPath(rootPath,path); - if(path == null) { - return null; - } - return lime_utils_AssetManifest.fromBytes(lime_utils__$Bytes_Bytes_$Impl_$.fromFile(path),rootPath); -}; -lime_utils_AssetManifest.loadFromBytes = function(bytes,rootPath) { - return lime_app_Future.withValue(lime_utils_AssetManifest.fromBytes(bytes,rootPath)); -}; -lime_utils_AssetManifest.loadFromFile = function(path,rootPath) { - path = lime_utils_AssetManifest.__resolvePath(path); - rootPath = lime_utils_AssetManifest.__resolveRootPath(rootPath,path); - if(path == null) { - return null; - } - return lime_utils__$Bytes_Bytes_$Impl_$.loadFromFile(path).then(function(bytes) { - return lime_app_Future.withValue(lime_utils_AssetManifest.fromBytes(bytes,rootPath)); - }); -}; -lime_utils_AssetManifest.parse = function(data,rootPath) { - if(data == null || data == "") { - return null; - } - var manifestData = JSON.parse(data); - var manifest = new lime_utils_AssetManifest(); - if(Object.prototype.hasOwnProperty.call(manifestData,"name")) { - manifest.name = manifestData.name; - } - if(Object.prototype.hasOwnProperty.call(manifestData,"libraryType")) { - manifest.libraryType = manifestData.libraryType; - } - if(Object.prototype.hasOwnProperty.call(manifestData,"libraryArgs")) { - manifest.libraryArgs = manifestData.libraryArgs; - } - if(Object.prototype.hasOwnProperty.call(manifestData,"assets")) { - var assets = manifestData.assets; - if(Object.prototype.hasOwnProperty.call(manifestData,"version") && manifestData.version <= 2) { - manifest.assets = haxe_Unserializer.run(assets); - } else { - manifest.assets = assets; - } - } - if(Object.prototype.hasOwnProperty.call(manifestData,"rootPath")) { - manifest.rootPath = manifestData.rootPath; - } - if(rootPath != null && rootPath != "") { - if(manifest.rootPath == null || manifest.rootPath == "") { - manifest.rootPath = rootPath; - } else { - manifest.rootPath = rootPath + "/" + manifest.rootPath; - } - } - return manifest; -}; -lime_utils_AssetManifest.__resolvePath = function(path) { - if(path == null) { - return null; - } - var queryIndex = path.indexOf("?"); - var basePath; - if(queryIndex > -1) { - basePath = HxOverrides.substr(path,0,queryIndex); - } else { - basePath = path; - } - basePath = StringTools.replace(basePath,"\\","/"); - while(StringTools.endsWith(basePath,"/")) basePath = HxOverrides.substr(basePath,0,basePath.length - 1); - if(StringTools.endsWith(basePath,".bundle")) { - if(queryIndex > -1) { - return basePath + "/library.json" + HxOverrides.substr(path,queryIndex,null); - } else { - return basePath + "/library.json"; - } - } else { - return path; - } -}; -lime_utils_AssetManifest.__resolveRootPath = function(rootPath,path) { - if(rootPath != null) { - return rootPath; - } - var queryIndex = path.indexOf("?"); - if(queryIndex > -1) { - rootPath = HxOverrides.substr(path,0,queryIndex); - } else { - rootPath = path; - } - rootPath = StringTools.replace(rootPath,"\\","/"); - while(StringTools.endsWith(rootPath,"/")) { - if(rootPath == "/") { - return rootPath; - } - rootPath = HxOverrides.substr(rootPath,0,rootPath.length - 1); - } - if(StringTools.endsWith(rootPath,".bundle")) { - return rootPath; - } else { - return haxe_io_Path.directory(rootPath); - } -}; -lime_utils_AssetManifest.prototype = { - assets: null - ,libraryArgs: null - ,libraryType: null - ,name: null - ,rootPath: null - ,version: null - ,serialize: function() { - var manifestData = { }; - manifestData.version = this.version; - manifestData.libraryType = this.libraryType; - manifestData.libraryArgs = this.libraryArgs; - manifestData.name = this.name; - manifestData.assets = haxe_Serializer.run(this.assets); - manifestData.rootPath = this.rootPath; - return JSON.stringify(manifestData); - } - ,__class__: lime_utils_AssetManifest -}; -var lime_utils_Assets = function() { }; -$hxClasses["lime.utils.Assets"] = lime_utils_Assets; -lime_utils_Assets.__name__ = "lime.utils.Assets"; -lime_utils_Assets.exists = function(id,type) { - if(type == null) { - type = "BINARY"; - } - var id1 = id; - var colonIndex = id1.indexOf(":"); - var symbol_libraryName = id1.substring(0,colonIndex); - var symbol_symbolName = id1.substring(colonIndex + 1); - var symbol_library = lime_utils_Assets.getLibrary(symbol_libraryName); - if(symbol_library != null) { - return symbol_library.exists(symbol_symbolName,type); - } - return false; -}; -lime_utils_Assets.getAsset = function(id,type,useCache) { - if(useCache && lime_utils_Assets.cache.enabled) { - switch(type) { - case "BINARY":case "TEXT": - useCache = false; - break; - case "FONT": - var _this = lime_utils_Assets.cache.font; - var font = __map_reserved[id] != null ? _this.getReserved(id) : _this.h[id]; - if(font != null) { - return font; - } - break; - case "IMAGE": - var _this1 = lime_utils_Assets.cache.image; - var image = __map_reserved[id] != null ? _this1.getReserved(id) : _this1.h[id]; - if(lime_utils_Assets.isValidImage(image)) { - return image; - } - break; - case "MUSIC":case "SOUND": - var _this2 = lime_utils_Assets.cache.audio; - var audio = __map_reserved[id] != null ? _this2.getReserved(id) : _this2.h[id]; - if(lime_utils_Assets.isValidAudio(audio)) { - return audio; - } - break; - case "TEMPLATE": - throw new js__$Boot_HaxeError("Not sure how to get template: " + id); - default: - return null; - } - } - var id1 = id; - var colonIndex = id1.indexOf(":"); - var symbol_libraryName = id1.substring(0,colonIndex); - var symbol_symbolName = id1.substring(colonIndex + 1); - var symbol_library = lime_utils_Assets.getLibrary(symbol_libraryName); - if(symbol_library != null) { - if(symbol_library.exists(symbol_symbolName,type)) { - if(symbol_library.isLocal(symbol_symbolName,type)) { - var asset = symbol_library.getAsset(symbol_symbolName,type); - if(useCache && lime_utils_Assets.cache.enabled) { - lime_utils_Assets.cache.set(id,type,asset); - } - return asset; - } else { - lime_utils_Log.error(type + " asset \"" + id + "\" exists, but only asynchronously",{ fileName : "lime/utils/Assets.hx", lineNumber : 133, className : "lime.utils.Assets", methodName : "getAsset"}); - } - } else { - lime_utils_Log.error("There is no " + type + " asset with an ID of \"" + id + "\"",{ fileName : "lime/utils/Assets.hx", lineNumber : 138, className : "lime.utils.Assets", methodName : "getAsset"}); - } - } else { - lime_utils_Log.error(lime_utils_Assets.__libraryNotFound(symbol_libraryName),{ fileName : "lime/utils/Assets.hx", lineNumber : 143, className : "lime.utils.Assets", methodName : "getAsset"}); - } - return null; -}; -lime_utils_Assets.getAudioBuffer = function(id,useCache) { - if(useCache == null) { - useCache = true; - } - return lime_utils_Assets.getAsset(id,"SOUND",useCache); -}; -lime_utils_Assets.getBytes = function(id) { - return lime_utils_Assets.getAsset(id,"BINARY",false); -}; -lime_utils_Assets.getFont = function(id,useCache) { - if(useCache == null) { - useCache = true; - } - return lime_utils_Assets.getAsset(id,"FONT",useCache); -}; -lime_utils_Assets.getImage = function(id,useCache) { - if(useCache == null) { - useCache = true; - } - return lime_utils_Assets.getAsset(id,"IMAGE",useCache); -}; -lime_utils_Assets.getLibrary = function(name) { - if(name == null || name == "") { - name = "default"; - } - var _this = lime_utils_Assets.libraries; - if(__map_reserved[name] != null) { - return _this.getReserved(name); - } else { - return _this.h[name]; - } -}; -lime_utils_Assets.getPath = function(id) { - var id1 = id; - var colonIndex = id1.indexOf(":"); - var symbol_libraryName = id1.substring(0,colonIndex); - var symbol_symbolName = id1.substring(colonIndex + 1); - var symbol_library = lime_utils_Assets.getLibrary(symbol_libraryName); - if(symbol_library != null) { - if(symbol_library.exists(symbol_symbolName,null)) { - return symbol_library.getPath(symbol_symbolName); - } else { - lime_utils_Log.error("There is no asset with an ID of \"" + id + "\"",{ fileName : "lime/utils/Assets.hx", lineNumber : 224, className : "lime.utils.Assets", methodName : "getPath"}); - } - } else { - lime_utils_Log.error(lime_utils_Assets.__libraryNotFound(symbol_libraryName),{ fileName : "lime/utils/Assets.hx", lineNumber : 229, className : "lime.utils.Assets", methodName : "getPath"}); - } - return null; -}; -lime_utils_Assets.getText = function(id) { - return lime_utils_Assets.getAsset(id,"TEXT",false); -}; -lime_utils_Assets.hasLibrary = function(name) { - if(name == null || name == "") { - name = "default"; - } - var _this = lime_utils_Assets.libraries; - if(__map_reserved[name] != null) { - return _this.existsReserved(name); - } else { - return _this.h.hasOwnProperty(name); - } -}; -lime_utils_Assets.isLocal = function(id,type,useCache) { - if(useCache == null) { - useCache = true; - } - if(useCache && lime_utils_Assets.cache.enabled) { - if(lime_utils_Assets.cache.exists(id,type)) { - return true; - } - } - var id1 = id; - var colonIndex = id1.indexOf(":"); - var symbol_libraryName = id1.substring(0,colonIndex); - var symbol_symbolName = id1.substring(colonIndex + 1); - var symbol_library = lime_utils_Assets.getLibrary(symbol_libraryName); - if(symbol_library != null) { - return symbol_library.isLocal(symbol_symbolName,type); - } else { - return false; - } -}; -lime_utils_Assets.isValidAudio = function(buffer) { - return buffer != null; -}; -lime_utils_Assets.isValidImage = function(image) { - if(image != null) { - return image.buffer != null; - } else { - return false; - } -}; -lime_utils_Assets.list = function(type) { - var items = []; - var _this = lime_utils_Assets.libraries; - var library = new haxe_ds__$StringMap_StringMapIterator(_this,_this.arrayKeys()); - while(library.hasNext()) { - var library1 = library.next(); - var libraryItems = library1.list(type); - if(libraryItems != null) { - items = items.concat(libraryItems); - } - } - return items; -}; -lime_utils_Assets.loadAsset = function(id,type,useCache) { - if(useCache && lime_utils_Assets.cache.enabled) { - switch(type) { - case "BINARY":case "TEXT": - useCache = false; - break; - case "FONT": - var _this = lime_utils_Assets.cache.font; - var font = __map_reserved[id] != null ? _this.getReserved(id) : _this.h[id]; - if(font != null) { - return lime_app_Future.withValue(font); - } - break; - case "IMAGE": - var _this1 = lime_utils_Assets.cache.image; - var image = __map_reserved[id] != null ? _this1.getReserved(id) : _this1.h[id]; - if(lime_utils_Assets.isValidImage(image)) { - return lime_app_Future.withValue(image); - } - break; - case "MUSIC":case "SOUND": - var _this2 = lime_utils_Assets.cache.audio; - var audio = __map_reserved[id] != null ? _this2.getReserved(id) : _this2.h[id]; - if(lime_utils_Assets.isValidAudio(audio)) { - return lime_app_Future.withValue(audio); - } - break; - case "TEMPLATE": - throw new js__$Boot_HaxeError("Not sure how to get template: " + id); - default: - return null; - } - } - var id1 = id; - var colonIndex = id1.indexOf(":"); - var symbol_libraryName = id1.substring(0,colonIndex); - var symbol_symbolName = id1.substring(colonIndex + 1); - var symbol_library = lime_utils_Assets.getLibrary(symbol_libraryName); - if(symbol_library != null) { - if(symbol_library.exists(symbol_symbolName,type)) { - var future = symbol_library.loadAsset(symbol_symbolName,type); - if(useCache && lime_utils_Assets.cache.enabled) { - future.onComplete(function(asset) { - lime_utils_Assets.cache.set(id,type,asset); - }); - } - return future; - } else { - return lime_app_Future.withError("There is no " + type + " asset with an ID of \"" + id + "\""); - } - } else { - return lime_app_Future.withError(lime_utils_Assets.__libraryNotFound(symbol_libraryName)); - } -}; -lime_utils_Assets.loadAudioBuffer = function(id,useCache) { - if(useCache == null) { - useCache = true; - } - return lime_utils_Assets.loadAsset(id,"SOUND",useCache); -}; -lime_utils_Assets.loadBytes = function(id) { - return lime_utils_Assets.loadAsset(id,"BINARY",false); -}; -lime_utils_Assets.loadFont = function(id,useCache) { - if(useCache == null) { - useCache = true; - } - return lime_utils_Assets.loadAsset(id,"FONT",useCache); -}; -lime_utils_Assets.loadImage = function(id,useCache) { - if(useCache == null) { - useCache = true; - } - return lime_utils_Assets.loadAsset(id,"IMAGE",useCache); -}; -lime_utils_Assets.loadLibrary = function(id) { - var promise = new lime_app_Promise(); - var library = lime_utils_Assets.getLibrary(id); - if(library != null) { - return library.load(); - } - var path = id; - var rootPath = null; - var _this = lime_utils_Assets.bundlePaths; - if(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id)) { - var _this1 = lime_utils_Assets.bundlePaths; - lime_utils_AssetBundle.loadFromFile(__map_reserved[id] != null ? _this1.getReserved(id) : _this1.h[id]).onComplete(function(bundle) { - if(bundle == null) { - promise.error("Cannot load bundle for library \"" + id + "\""); - return; - } - var library1 = lime_utils_AssetLibrary.fromBundle(bundle); - if(library1 == null) { - promise.error("Cannot open library \"" + id + "\""); - } else { - var _this2 = lime_utils_Assets.libraries; - if(__map_reserved[id] != null) { - _this2.setReserved(id,library1); - } else { - _this2.h[id] = library1; - } - library1.onChange.add(($_=lime_utils_Assets.onChange,$bind($_,$_.dispatch))); - var tmp = library1.load(); - promise.completeWith(tmp); - } - }).onError(function(_) { - promise.error("There is no asset library with an ID of \"" + id + "\""); - }); - } else { - var _this3 = lime_utils_Assets.libraryPaths; - if(__map_reserved[id] != null ? _this3.existsReserved(id) : _this3.h.hasOwnProperty(id)) { - var _this4 = lime_utils_Assets.libraryPaths; - path = __map_reserved[id] != null ? _this4.getReserved(id) : _this4.h[id]; - rootPath = haxe_io_Path.directory(path); - } else { - if(StringTools.endsWith(path,".bundle")) { - rootPath = path; - path += "/library.json"; - } else { - rootPath = haxe_io_Path.directory(path); - } - path = lime_utils_Assets.__cacheBreak(path); - } - lime_utils_AssetManifest.loadFromFile(path,rootPath).onComplete(function(manifest) { - if(manifest == null) { - promise.error("Cannot parse asset manifest for library \"" + id + "\""); - return; - } - var library2 = lime_utils_AssetLibrary.fromManifest(manifest); - if(library2 == null) { - promise.error("Cannot open library \"" + id + "\""); - } else { - var _this5 = lime_utils_Assets.libraries; - if(__map_reserved[id] != null) { - _this5.setReserved(id,library2); - } else { - _this5.h[id] = library2; - } - library2.onChange.add(($_=lime_utils_Assets.onChange,$bind($_,$_.dispatch))); - var tmp1 = library2.load(); - promise.completeWith(tmp1); - } - }).onError(function(_1) { - promise.error("There is no asset library with an ID of \"" + id + "\""); - }); - } - return promise.future; -}; -lime_utils_Assets.loadText = function(id) { - return lime_utils_Assets.loadAsset(id,"TEXT",false); -}; -lime_utils_Assets.registerLibrary = function(name,library) { - var _this = lime_utils_Assets.libraries; - if(__map_reserved[name] != null ? _this.existsReserved(name) : _this.h.hasOwnProperty(name)) { - var _this1 = lime_utils_Assets.libraries; - if((__map_reserved[name] != null ? _this1.getReserved(name) : _this1.h[name]) == library) { - return; - } else { - lime_utils_Assets.unloadLibrary(name); - } - } - if(library != null) { - library.onChange.add(lime_utils_Assets.library_onChange); - } - var _this2 = lime_utils_Assets.libraries; - if(__map_reserved[name] != null) { - _this2.setReserved(name,library); - } else { - _this2.h[name] = library; - } -}; -lime_utils_Assets.unloadLibrary = function(name) { - if(name == null || name == "") { - name = "default"; - } - var _this = lime_utils_Assets.libraries; - var library = __map_reserved[name] != null ? _this.getReserved(name) : _this.h[name]; - if(library != null) { - lime_utils_Assets.cache.clear(name + ":"); - library.onChange.remove(lime_utils_Assets.library_onChange); - library.unload(); - } - lime_utils_Assets.libraries.remove(name); -}; -lime_utils_Assets.__cacheBreak = function(path) { - if(lime_utils_Assets.cache.version > 0) { - if(path.indexOf("?") > -1) { - path += "&" + lime_utils_Assets.cache.version; - } else { - path += "?" + lime_utils_Assets.cache.version; - } - } - return path; -}; -lime_utils_Assets.__libraryNotFound = function(name) { - if(name == null || name == "") { - name = "default"; - } - if(lime_app_Application.current != null && lime_app_Application.current.__preloader != null && !lime_app_Application.current.__preloader.complete) { - return "There is no asset library named \"" + name + "\", or it is not yet preloaded"; - } else { - return "There is no asset library named \"" + name + "\""; - } -}; -lime_utils_Assets.library_onChange = function() { - lime_utils_Assets.cache.clear(); - lime_utils_Assets.onChange.dispatch(); -}; -var lime_utils__$Assets_LibrarySymbol = function(id) { - var colonIndex = id.indexOf(":"); - this.libraryName = id.substring(0,colonIndex); - this.symbolName = id.substring(colonIndex + 1); - this.library = lime_utils_Assets.getLibrary(this.libraryName); -}; -$hxClasses["lime.utils._Assets.LibrarySymbol"] = lime_utils__$Assets_LibrarySymbol; -lime_utils__$Assets_LibrarySymbol.__name__ = "lime.utils._Assets.LibrarySymbol"; -lime_utils__$Assets_LibrarySymbol.prototype = { - library: null - ,libraryName: null - ,symbolName: null - ,isLocal: function(type) { - return this.library.isLocal(this.symbolName,type); - } - ,exists: function(type) { - return this.library.exists(this.symbolName,type); - } - ,__class__: lime_utils__$Assets_LibrarySymbol -}; -var lime_utils__$BytePointer_BytePointer_$Impl_$ = {}; -$hxClasses["lime.utils._BytePointer.BytePointer_Impl_"] = lime_utils__$BytePointer_BytePointer_$Impl_$; -lime_utils__$BytePointer_BytePointer_$Impl_$.__name__ = "lime.utils._BytePointer.BytePointer_Impl_"; -lime_utils__$BytePointer_BytePointer_$Impl_$._new = function(bytes,offset) { - if(offset == null) { - offset = 0; - } - var this1 = new lime_utils_BytePointerData(bytes,offset); - return this1; -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.set = function(this1,bytes,bufferView,buffer,offset) { - if(buffer != null) { - bytes = haxe_io_Bytes.ofData(buffer); - } - if(bytes != null || bufferView == null) { - this1.bytes = bytes; - this1.offset = offset != null ? offset : 0; - } else { - this1.bytes = haxe_io_Bytes.ofData(bufferView.buffer); - this1.offset = offset != null ? bufferView.byteOffset + offset : bufferView.byteOffset; - } -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.__arrayGet = function(this1,index) { - if(this1.bytes != null) { - return this1.bytes.b[index + this1.offset]; - } else { - return 0; - } -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.__arraySet = function(this1,index,value) { - if(this1.bytes == null) { - this1.bytes.b[index + this1.offset] = value & 255; - } - return value; -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.fromArrayBufferView = function(arrayBufferView) { - if(arrayBufferView == null) { - return null; - } - return new lime_utils_BytePointerData(haxe_io_Bytes.ofData(arrayBufferView.buffer),arrayBufferView.byteOffset); -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.fromArrayBuffer = function(buffer) { - if(buffer == null) { - return null; - } - return new lime_utils_BytePointerData(haxe_io_Bytes.ofData(buffer),0); -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.fromBytes = function(bytes) { - return new lime_utils_BytePointerData(bytes,0); -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.fromBytesData = function(bytesData) { - if(bytesData == null) { - return new lime_utils_BytePointerData(null,0); - } else { - return new lime_utils_BytePointerData(haxe_io_Bytes.ofData(bytesData),0); - } -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.fromFile = function(path) { - return new lime_utils_BytePointerData(lime_utils__$Bytes_Bytes_$Impl_$.fromFile(path),0); -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.fromLimeBytes = function(bytes) { - return new lime_utils_BytePointerData(bytes,0); -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.toUInt8Array = function(bytePointer) { - var elements = null; - var array = null; - var vector = null; - var view = null; - var buffer = bytePointer.bytes.b.bufferValue; - var byteoffset = bytePointer.offset / 8 | 0; - var len = null; - if(byteoffset == null) { - byteoffset = 0; - } - var this1; - if(elements != null) { - this1 = new Uint8Array(elements); - } else if(array != null) { - this1 = new Uint8Array(array); - } else if(vector != null) { - this1 = new Uint8Array(vector.__array); - } else if(view != null) { - this1 = new Uint8Array(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Uint8Array(buffer,byteoffset); - } else { - this1 = new Uint8Array(buffer,byteoffset,len); - } - } else { - this1 = null; - } - return this1; -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.toUInt8ClampedArray = function(bytePointer) { - if(bytePointer == null || bytePointer.bytes == null) { - return null; - } - var elements = null; - var array = null; - var vector = null; - var view = null; - var buffer = bytePointer.bytes.b.bufferValue; - var byteoffset = bytePointer.offset / 8 | 0; - var len = null; - if(byteoffset == null) { - byteoffset = 0; - } - var this1; - if(elements != null) { - this1 = new Uint8ClampedArray(elements); - } else if(array != null) { - this1 = new Uint8ClampedArray(array); - } else if(vector != null) { - this1 = new Uint8ClampedArray(vector.__array); - } else if(view != null) { - this1 = new Uint8ClampedArray(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Uint8ClampedArray(buffer,byteoffset); - } else { - this1 = new Uint8ClampedArray(buffer,byteoffset,len); - } - } else { - this1 = null; - } - return this1; -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.toInt8Array = function(bytePointer) { - if(bytePointer == null || bytePointer.bytes == null) { - return null; - } - var elements = null; - var array = null; - var vector = null; - var view = null; - var buffer = bytePointer.bytes.b.bufferValue; - var byteoffset = bytePointer.offset / 8 | 0; - var len = null; - if(byteoffset == null) { - byteoffset = 0; - } - var this1; - if(elements != null) { - this1 = new Int8Array(elements); - } else if(array != null) { - this1 = new Int8Array(array); - } else if(vector != null) { - this1 = new Int8Array(vector.__array); - } else if(view != null) { - this1 = new Int8Array(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Int8Array(buffer,byteoffset); - } else { - this1 = new Int8Array(buffer,byteoffset,len); - } - } else { - this1 = null; - } - return this1; -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.toUInt16Array = function(bytePointer) { - if(bytePointer == null || bytePointer.bytes == null) { - return null; - } - var elements = null; - var array = null; - var vector = null; - var view = null; - var buffer = bytePointer.bytes.b.bufferValue; - var byteoffset = bytePointer.offset / 16 | 0; - var len = null; - if(byteoffset == null) { - byteoffset = 0; - } - var this1; - if(elements != null) { - this1 = new Uint16Array(elements); - } else if(array != null) { - this1 = new Uint16Array(array); - } else if(vector != null) { - this1 = new Uint16Array(vector.__array); - } else if(view != null) { - this1 = new Uint16Array(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Uint16Array(buffer,byteoffset); - } else { - this1 = new Uint16Array(buffer,byteoffset,len); - } - } else { - this1 = null; - } - return this1; -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.toInt16Array = function(bytePointer) { - if(bytePointer == null || bytePointer.bytes == null) { - return null; - } - var elements = null; - var array = null; - var vector = null; - var view = null; - var buffer = bytePointer.bytes.b.bufferValue; - var byteoffset = bytePointer.offset / 16 | 0; - var len = null; - if(byteoffset == null) { - byteoffset = 0; - } - var this1; - if(elements != null) { - this1 = new Int16Array(elements); - } else if(array != null) { - this1 = new Int16Array(array); - } else if(vector != null) { - this1 = new Int16Array(vector.__array); - } else if(view != null) { - this1 = new Int16Array(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Int16Array(buffer,byteoffset); - } else { - this1 = new Int16Array(buffer,byteoffset,len); - } - } else { - this1 = null; - } - return this1; -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.toUInt32Array = function(bytePointer) { - if(bytePointer == null || bytePointer.bytes == null) { - return null; - } - var elements = null; - var array = null; - var vector = null; - var view = null; - var buffer = bytePointer.bytes.b.bufferValue; - var byteoffset = bytePointer.offset / 32 | 0; - var len = null; - if(byteoffset == null) { - byteoffset = 0; - } - var this1; - if(elements != null) { - this1 = new Uint32Array(elements); - } else if(array != null) { - this1 = new Uint32Array(array); - } else if(vector != null) { - this1 = new Uint32Array(vector.__array); - } else if(view != null) { - this1 = new Uint32Array(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Uint32Array(buffer,byteoffset); - } else { - this1 = new Uint32Array(buffer,byteoffset,len); - } - } else { - this1 = null; - } - return this1; -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.toInt32Array = function(bytePointer) { - if(bytePointer == null || bytePointer.bytes == null) { - return null; - } - var elements = null; - var array = null; - var vector = null; - var view = null; - var buffer = bytePointer.bytes.b.bufferValue; - var byteoffset = bytePointer.offset / 32 | 0; - var len = null; - if(byteoffset == null) { - byteoffset = 0; - } - var this1; - if(elements != null) { - this1 = new Int32Array(elements); - } else if(array != null) { - this1 = new Int32Array(array); - } else if(vector != null) { - this1 = new Int32Array(vector.__array); - } else if(view != null) { - this1 = new Int32Array(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Int32Array(buffer,byteoffset); - } else { - this1 = new Int32Array(buffer,byteoffset,len); - } - } else { - this1 = null; - } - return this1; -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.toFloat32Array = function(bytePointer) { - if(bytePointer == null || bytePointer.bytes == null) { - return null; - } - var elements = null; - var array = null; - var vector = null; - var view = null; - var buffer = bytePointer.bytes.b.bufferValue; - var byteoffset = bytePointer.offset / 32 | 0; - var len = null; - if(byteoffset == null) { - byteoffset = 0; - } - var this1; - if(elements != null) { - this1 = new Float32Array(elements); - } else if(array != null) { - this1 = new Float32Array(array); - } else if(vector != null) { - this1 = new Float32Array(vector.__array); - } else if(view != null) { - this1 = new Float32Array(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Float32Array(buffer,byteoffset); - } else { - this1 = new Float32Array(buffer,byteoffset,len); - } - } else { - this1 = null; - } - return this1; -}; -lime_utils__$BytePointer_BytePointer_$Impl_$.toFloat64Array = function(bytePointer) { - if(bytePointer == null || bytePointer.bytes == null) { - return null; - } - var elements = null; - var array = null; - var vector = null; - var view = null; - var buffer = bytePointer.bytes.b.bufferValue; - var byteoffset = bytePointer.offset / 64 | 0; - var len = null; - if(byteoffset == null) { - byteoffset = 0; - } - var this1; - if(elements != null) { - this1 = new Float64Array(elements); - } else if(array != null) { - this1 = new Float64Array(array); - } else if(vector != null) { - this1 = new Float64Array(vector.__array); - } else if(view != null) { - this1 = new Float64Array(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Float64Array(buffer,byteoffset); - } else { - this1 = new Float64Array(buffer,byteoffset,len); - } - } else { - this1 = null; - } - return this1; -}; -var lime_utils_BytePointerData = function(bytes,offset) { - this.bytes = bytes; - this.offset = offset; -}; -$hxClasses["lime.utils.BytePointerData"] = lime_utils_BytePointerData; -lime_utils_BytePointerData.__name__ = "lime.utils.BytePointerData"; -lime_utils_BytePointerData.prototype = { - bytes: null - ,offset: null - ,__class__: lime_utils_BytePointerData -}; -var lime_utils__$Bytes_Bytes_$Impl_$ = {}; -$hxClasses["lime.utils._Bytes.Bytes_Impl_"] = lime_utils__$Bytes_Bytes_$Impl_$; -lime_utils__$Bytes_Bytes_$Impl_$.__name__ = "lime.utils._Bytes.Bytes_Impl_"; -lime_utils__$Bytes_Bytes_$Impl_$._new = function(length,bytesData) { - var this1 = new haxe_io_Bytes(bytesData); - return this1; -}; -lime_utils__$Bytes_Bytes_$Impl_$.alloc = function(length) { - return new haxe_io_Bytes(new ArrayBuffer(length)); -}; -lime_utils__$Bytes_Bytes_$Impl_$.compress = function(this1,algorithm) { - switch(algorithm._hx_index) { - case 0: - return lime__$internal_format_Deflate.compress(this1); - case 1: - return lime__$internal_format_GZip.compress(this1); - case 2: - return lime__$internal_format_LZMA.compress(this1); - case 3: - return lime__$internal_format_Zlib.compress(this1); - } -}; -lime_utils__$Bytes_Bytes_$Impl_$.decompress = function(this1,algorithm) { - switch(algorithm._hx_index) { - case 0: - return lime__$internal_format_Deflate.decompress(this1); - case 1: - return lime__$internal_format_GZip.decompress(this1); - case 2: - return lime__$internal_format_LZMA.decompress(this1); - case 3: - return lime__$internal_format_Zlib.decompress(this1); - } -}; -lime_utils__$Bytes_Bytes_$Impl_$.fastGet = function(b,pos) { - return b.bytes[pos]; -}; -lime_utils__$Bytes_Bytes_$Impl_$.fromBytes = function(bytes) { - if(bytes == null) { - return null; - } - return lime_utils__$Bytes_Bytes_$Impl_$._new(bytes.length,bytes.b.bufferValue); -}; -lime_utils__$Bytes_Bytes_$Impl_$.fromFile = function(path) { - return null; -}; -lime_utils__$Bytes_Bytes_$Impl_$.loadFromBytes = function(bytes) { - return lime_app_Future.withValue(lime_utils__$Bytes_Bytes_$Impl_$.fromBytes(bytes)); -}; -lime_utils__$Bytes_Bytes_$Impl_$.loadFromFile = function(path) { - var request = new lime_net__$HTTPRequest_$lime_$utils_$Bytes(); - return request.load(path); -}; -lime_utils__$Bytes_Bytes_$Impl_$.ofData = function(b) { - var bytes = haxe_io_Bytes.ofData(b); - return lime_utils__$Bytes_Bytes_$Impl_$._new(bytes.length,bytes.b.bufferValue); -}; -lime_utils__$Bytes_Bytes_$Impl_$.ofString = function(s) { - var bytes = haxe_io_Bytes.ofString(s); - return lime_utils__$Bytes_Bytes_$Impl_$._new(bytes.length,bytes.b.bufferValue); -}; -var lime_utils_CompressionAlgorithm = $hxEnums["lime.utils.CompressionAlgorithm"] = { __ename__ : "lime.utils.CompressionAlgorithm", __constructs__ : ["DEFLATE","GZIP","LZMA","ZLIB"] - ,DEFLATE: {_hx_index:0,__enum__:"lime.utils.CompressionAlgorithm",toString:$estr} - ,GZIP: {_hx_index:1,__enum__:"lime.utils.CompressionAlgorithm",toString:$estr} - ,LZMA: {_hx_index:2,__enum__:"lime.utils.CompressionAlgorithm",toString:$estr} - ,ZLIB: {_hx_index:3,__enum__:"lime.utils.CompressionAlgorithm",toString:$estr} -}; -var lime_utils__$DataPointer_DataPointer_$Impl_$ = {}; -$hxClasses["lime.utils._DataPointer.DataPointer_Impl_"] = lime_utils__$DataPointer_DataPointer_$Impl_$; -lime_utils__$DataPointer_DataPointer_$Impl_$.__name__ = "lime.utils._DataPointer.DataPointer_Impl_"; -lime_utils__$DataPointer_DataPointer_$Impl_$._new = function(data) { - var this1 = data; - return this1; -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.fromFloat = function(value) { - return value; -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.fromBytesPointer = function(pointer) { - return lime_utils__$DataPointer_DataPointer_$Impl_$.fromFloat(0); -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.fromArrayBufferView = function(arrayBufferView) { - return lime_utils__$DataPointer_DataPointer_$Impl_$.fromFloat(0); -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.fromArrayBuffer = function(buffer) { - return lime_utils__$DataPointer_DataPointer_$Impl_$.fromFloat(0); -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.fromBytes = function(bytes) { - return lime_utils__$DataPointer_DataPointer_$Impl_$.fromFloat(0); -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.fromBytesData = function(bytesData) { - return lime_utils__$DataPointer_DataPointer_$Impl_$.fromFloat(0); -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.fromLimeBytes = function(bytes) { - return lime_utils__$DataPointer_DataPointer_$Impl_$.fromBytes(bytes); -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.fromCFFIPointer = function(pointer) { - return lime_utils__$DataPointer_DataPointer_$Impl_$.fromFloat(0); -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.fromFile = function(path) { - return lime_utils__$DataPointer_DataPointer_$Impl_$.fromFloat(0); -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.__withOffset = function(data,offset) { - return lime_utils__$DataPointer_DataPointer_$Impl_$.fromFloat(0); -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.equals = function(a,b) { - return a == b; -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.equalsPointer = function(a,b) { - return a == b; -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.greaterThan = function(a,b) { - return a > b; -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.greaterThanPointer = function(a,b) { - return lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(a) > lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(b); -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.greaterThanOrEqual = function(a,b) { - return a >= b; -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.greaterThanOrEqualPointer = function(a,b) { - return lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(a) >= lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(b); -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.lessThan = function(a,b) { - return a < b; -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.lessThanPointer = function(a,b) { - return lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(a) < lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(b); -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.lessThanOrEqual = function(a,b) { - return a <= b; -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.lessThanOrEqualPointer = function(a,b) { - return lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(a) <= lime_system__$CFFIPointer_CFFIPointer_$Impl_$.get(b); -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.notEquals = function(a,b) { - return a != b; -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.notEqualsPointer = function(a,b) { - return a != b; -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.plus = function(a,b) { - return lime_utils__$DataPointer_DataPointer_$Impl_$.__withOffset(a,b); -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.plusPointer = function(a,b) { - return lime_utils__$DataPointer_DataPointer_$Impl_$.__withOffset(a,b | 0); -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.minus = function(a,b) { - return lime_utils__$DataPointer_DataPointer_$Impl_$.__withOffset(a,-b); -}; -lime_utils__$DataPointer_DataPointer_$Impl_$.minusPointer = function(a,b) { - return lime_utils__$DataPointer_DataPointer_$Impl_$.__withOffset(a,-(b | 0)); -}; -var lime_utils__$Float32Array_Float32Array_$Impl_$ = {}; -$hxClasses["lime.utils._Float32Array.Float32Array_Impl_"] = lime_utils__$Float32Array_Float32Array_$Impl_$; -lime_utils__$Float32Array_Float32Array_$Impl_$.__name__ = "lime.utils._Float32Array.Float32Array_Impl_"; -lime_utils__$Float32Array_Float32Array_$Impl_$.fromBytes = function(bytes,byteOffset,len) { - if(byteOffset == null) { - byteOffset = 0; - } - if(byteOffset == null) { - return new Float32Array(bytes.b.bufferValue); - } - if(len == null) { - return new Float32Array(bytes.b.bufferValue,byteOffset); - } - return new Float32Array(bytes.b.bufferValue,byteOffset,len); -}; -lime_utils__$Float32Array_Float32Array_$Impl_$.toBytes = function(this1) { - return new haxe_io_Bytes(new Uint8Array(this1.buffer)); -}; -lime_utils__$Float32Array_Float32Array_$Impl_$.toString = function(this1) { - if(this1 != null) { - return "Float32Array [byteLength:" + this1.byteLength + ", length:" + this1.length + "]"; - } else { - return null; - } -}; -var lime_utils__$Float64Array_Float64Array_$Impl_$ = {}; -$hxClasses["lime.utils._Float64Array.Float64Array_Impl_"] = lime_utils__$Float64Array_Float64Array_$Impl_$; -lime_utils__$Float64Array_Float64Array_$Impl_$.__name__ = "lime.utils._Float64Array.Float64Array_Impl_"; -lime_utils__$Float64Array_Float64Array_$Impl_$.fromBytes = function(bytes,byteOffset,len) { - if(byteOffset == null) { - byteOffset = 0; - } - if(byteOffset == null) { - return new Float64Array(bytes.b.bufferValue); - } - if(len == null) { - return new Float64Array(bytes.b.bufferValue,byteOffset); - } - return new Float64Array(bytes.b.bufferValue,byteOffset,len); -}; -lime_utils__$Float64Array_Float64Array_$Impl_$.toBytes = function(this1) { - return new haxe_io_Bytes(new Uint8Array(this1.buffer)); -}; -lime_utils__$Float64Array_Float64Array_$Impl_$.toString = function(this1) { - if(this1 != null) { - return "Float64Array [byteLength:" + this1.byteLength + ", length:" + this1.length + "]"; - } else { - return null; - } -}; -var lime_utils__$Int16Array_Int16Array_$Impl_$ = {}; -$hxClasses["lime.utils._Int16Array.Int16Array_Impl_"] = lime_utils__$Int16Array_Int16Array_$Impl_$; -lime_utils__$Int16Array_Int16Array_$Impl_$.__name__ = "lime.utils._Int16Array.Int16Array_Impl_"; -lime_utils__$Int16Array_Int16Array_$Impl_$.fromBytes = function(bytes,byteOffset,len) { - if(byteOffset == null) { - byteOffset = 0; - } - if(byteOffset == null) { - return new Int16Array(bytes.b.bufferValue); - } - if(len == null) { - return new Int16Array(bytes.b.bufferValue,byteOffset); - } - return new Int16Array(bytes.b.bufferValue,byteOffset,len); -}; -lime_utils__$Int16Array_Int16Array_$Impl_$.toBytes = function(this1) { - return new haxe_io_Bytes(new Uint8Array(this1.buffer)); -}; -lime_utils__$Int16Array_Int16Array_$Impl_$.toString = function(this1) { - if(this1 != null) { - return "Int16Array [byteLength:" + this1.byteLength + ", length:" + this1.length + "]"; - } else { - return null; - } -}; -var lime_utils__$Int32Array_Int32Array_$Impl_$ = {}; -$hxClasses["lime.utils._Int32Array.Int32Array_Impl_"] = lime_utils__$Int32Array_Int32Array_$Impl_$; -lime_utils__$Int32Array_Int32Array_$Impl_$.__name__ = "lime.utils._Int32Array.Int32Array_Impl_"; -lime_utils__$Int32Array_Int32Array_$Impl_$.fromBytes = function(bytes,byteOffset,len) { - if(byteOffset == null) { - byteOffset = 0; - } - if(byteOffset == null) { - return new Int32Array(bytes.b.bufferValue); - } - if(len == null) { - return new Int32Array(bytes.b.bufferValue,byteOffset); - } - return new Int32Array(bytes.b.bufferValue,byteOffset,len); -}; -lime_utils__$Int32Array_Int32Array_$Impl_$.toBytes = function(this1) { - return new haxe_io_Bytes(new Uint8Array(this1.buffer)); -}; -lime_utils__$Int32Array_Int32Array_$Impl_$.toString = function(this1) { - if(this1 != null) { - return "Int32Array [byteLength:" + this1.byteLength + ", length:" + this1.length + "]"; - } else { - return null; - } -}; -var lime_utils__$Int8Array_Int8Array_$Impl_$ = {}; -$hxClasses["lime.utils._Int8Array.Int8Array_Impl_"] = lime_utils__$Int8Array_Int8Array_$Impl_$; -lime_utils__$Int8Array_Int8Array_$Impl_$.__name__ = "lime.utils._Int8Array.Int8Array_Impl_"; -lime_utils__$Int8Array_Int8Array_$Impl_$.fromBytes = function(bytes,byteOffset,len) { - if(byteOffset == null) { - byteOffset = 0; - } - return new Int8Array(bytes.b.bufferValue,byteOffset,len); -}; -lime_utils__$Int8Array_Int8Array_$Impl_$.toBytes = function(this1) { - return new haxe_io_Bytes(new Uint8Array(this1.buffer)); -}; -lime_utils__$Int8Array_Int8Array_$Impl_$.toString = function(this1) { - if(this1 != null) { - return "Int8Array [byteLength:" + this1.byteLength + ", length:" + this1.length + "]"; - } else { - return null; - } -}; -var lime_utils_Log = function() { }; -$hxClasses["lime.utils.Log"] = lime_utils_Log; -lime_utils_Log.__name__ = "lime.utils.Log"; -lime_utils_Log.level = null; -lime_utils_Log.debug = function(message,info) { - if(lime_utils_Log.level >= 4) { - console.debug("[" + info.className + "] " + Std.string(message)); - } -}; -lime_utils_Log.error = function(message,info) { - if(lime_utils_Log.level >= 1) { - var message1 = "[" + info.className + "] ERROR: " + Std.string(message); - if(lime_utils_Log.throwErrors) { - throw new js__$Boot_HaxeError(message1); - } else { - console.error(message1); - } - } -}; -lime_utils_Log.info = function(message,info) { - if(lime_utils_Log.level >= 3) { - console.info("[" + info.className + "] " + Std.string(message)); - } -}; -lime_utils_Log.print = function(message) { - console.log(message); -}; -lime_utils_Log.println = function(message) { - console.log(message); -}; -lime_utils_Log.verbose = function(message,info) { - if(lime_utils_Log.level >= 5) { - console.log("[" + info.className + "] " + Std.string(message)); - } -}; -lime_utils_Log.warn = function(message,info) { - if(lime_utils_Log.level >= 2) { - console.warn("[" + info.className + "] WARNING: " + Std.string(message)); - } -}; -var lime_utils__$LogLevel_LogLevel_$Impl_$ = {}; -$hxClasses["lime.utils._LogLevel.LogLevel_Impl_"] = lime_utils__$LogLevel_LogLevel_$Impl_$; -lime_utils__$LogLevel_LogLevel_$Impl_$.__name__ = "lime.utils._LogLevel.LogLevel_Impl_"; -lime_utils__$LogLevel_LogLevel_$Impl_$.gt = function(a,b) { - return a > b; -}; -lime_utils__$LogLevel_LogLevel_$Impl_$.gte = function(a,b) { - return a >= b; -}; -lime_utils__$LogLevel_LogLevel_$Impl_$.lt = function(a,b) { - return a < b; -}; -lime_utils__$LogLevel_LogLevel_$Impl_$.lte = function(a,b) { - return a <= b; -}; -var lime_utils_Preloader = function() { - this.bytesTotalCache = new haxe_ds_StringMap(); - this.bytesLoadedCache2 = new haxe_ds_StringMap(); - this.bytesLoadedCache = new haxe_ds_ObjectMap(); - this.onProgress = new lime_app__$Event_$Int_$Int_$Void(); - this.onComplete = new lime_app__$Event_$Void_$Void(); - this.bytesLoaded = 0; - this.bytesTotal = 0; - this.libraries = []; - this.libraryNames = []; - this.onProgress.add($bind(this,this.update)); -}; -$hxClasses["lime.utils.Preloader"] = lime_utils_Preloader; -lime_utils_Preloader.__name__ = "lime.utils.Preloader"; -lime_utils_Preloader.prototype = { - complete: null - ,onComplete: null - ,onProgress: null - ,bytesLoaded: null - ,bytesLoadedCache: null - ,bytesLoadedCache2: null - ,bytesTotal: null - ,bytesTotalCache: null - ,initLibraryNames: null - ,libraries: null - ,libraryNames: null - ,loadedLibraries: null - ,loadedStage: null - ,preloadComplete: null - ,preloadStarted: null - ,simulateProgress: null - ,addLibrary: function(library) { - this.libraries.push(library); - } - ,addLibraryName: function(name) { - if(this.libraryNames.indexOf(name) == -1) { - this.libraryNames.push(name); - } - } - ,load: function() { - var _gthis = this; - var _g = 0; - var _g1 = this.libraries; - while(_g < _g1.length) { - var library = _g1[_g]; - ++_g; - this.bytesTotal += library.bytesTotal; - } - this.loadedLibraries = -1; - this.preloadStarted = false; - var _g2 = 0; - var _g3 = this.libraries; - while(_g2 < _g3.length) { - var library1 = [_g3[_g2]]; - ++_g2; - lime_utils_Log.verbose("Preloading asset library",{ fileName : "lime/utils/Preloader.hx", lineNumber : 132, className : "lime.utils.Preloader", methodName : "load"}); - library1[0].load().onProgress((function(library2) { - return function(loaded,total) { - if(_gthis.bytesLoadedCache.h.__keys__[library2[0].__id__] == null) { - _gthis.bytesLoaded += loaded; - } else { - _gthis.bytesLoaded += loaded - _gthis.bytesLoadedCache.h[library2[0].__id__]; - } - _gthis.bytesLoadedCache.set(library2[0],loaded); - if(!_gthis.simulateProgress) { - _gthis.onProgress.dispatch(_gthis.bytesLoaded,_gthis.bytesTotal); - } - }; - })(library1)).onComplete((function(library3) { - return function(_) { - if(_gthis.bytesLoadedCache.h.__keys__[library3[0].__id__] == null) { - _gthis.bytesLoaded += library3[0].bytesTotal; - } else { - _gthis.bytesLoaded += library3[0].bytesTotal - _gthis.bytesLoadedCache.h[library3[0].__id__]; - } - _gthis.loadedAssetLibrary(); - }; - })(library1)).onError((function() { - return function(e) { - lime_utils_Log.error(e,{ fileName : "lime/utils/Preloader.hx", lineNumber : 168, className : "lime.utils.Preloader", methodName : "load"}); - }; - })()); - } - var _g4 = 0; - var _g5 = this.libraryNames; - while(_g4 < _g5.length) { - var name = _g5[_g4]; - ++_g4; - this.bytesTotal += 200; - } - this.loadedLibraries++; - this.preloadStarted = true; - this.updateProgress(); - } - ,loadedAssetLibrary: function(name) { - this.loadedLibraries++; - var current = this.loadedLibraries; - if(!this.preloadStarted) { - ++current; - } - var totalLibraries = this.libraries.length + this.libraryNames.length; - if(name != null) { - lime_utils_Log.verbose("Loaded asset library: " + name + " [" + current + "/" + totalLibraries + "]",{ fileName : "lime/utils/Preloader.hx", lineNumber : 195, className : "lime.utils.Preloader", methodName : "loadedAssetLibrary"}); - } else { - lime_utils_Log.verbose("Loaded asset library [" + current + "/" + totalLibraries + "]",{ fileName : "lime/utils/Preloader.hx", lineNumber : 199, className : "lime.utils.Preloader", methodName : "loadedAssetLibrary"}); - } - this.updateProgress(); - } - ,start: function() { - if(this.complete || this.simulateProgress || !this.preloadComplete) { - return; - } - this.complete = true; - this.onComplete.dispatch(); - } - ,update: function(loaded,total) { - } - ,updateProgress: function() { - var _gthis = this; - if(!this.simulateProgress) { - this.onProgress.dispatch(this.bytesLoaded,this.bytesTotal); - } - if(this.loadedLibraries == this.libraries.length && !this.initLibraryNames) { - this.initLibraryNames = true; - var _g = 0; - var _g1 = this.libraryNames; - while(_g < _g1.length) { - var name = [_g1[_g]]; - ++_g; - lime_utils_Log.verbose("Preloading asset library: " + name[0],{ fileName : "lime/utils/Preloader.hx", lineNumber : 236, className : "lime.utils.Preloader", methodName : "updateProgress"}); - lime_utils_Assets.loadLibrary(name[0]).onProgress((function(name1) { - return function(loaded,total) { - if(total > 0) { - var _this = _gthis.bytesTotalCache; - if(!(__map_reserved[name1[0]] != null ? _this.existsReserved(name1[0]) : _this.h.hasOwnProperty(name1[0]))) { - var _this1 = _gthis.bytesTotalCache; - if(__map_reserved[name1[0]] != null) { - _this1.setReserved(name1[0],total); - } else { - _this1.h[name1[0]] = total; - } - _gthis.bytesTotal += total - 200; - } - if(loaded > total) { - loaded = total; - } - var _this2 = _gthis.bytesLoadedCache2; - if(!(__map_reserved[name1[0]] != null ? _this2.existsReserved(name1[0]) : _this2.h.hasOwnProperty(name1[0]))) { - _gthis.bytesLoaded += loaded; - } else { - var _this3 = _gthis.bytesLoadedCache2; - _gthis.bytesLoaded += loaded - (__map_reserved[name1[0]] != null ? _this3.getReserved(name1[0]) : _this3.h[name1[0]]); - } - var _this4 = _gthis.bytesLoadedCache2; - if(__map_reserved[name1[0]] != null) { - _this4.setReserved(name1[0],loaded); - } else { - _this4.h[name1[0]] = loaded; - } - if(!_gthis.simulateProgress) { - _gthis.onProgress.dispatch(_gthis.bytesLoaded,_gthis.bytesTotal); - } - } - }; - })(name)).onComplete((function(name2) { - return function(library) { - var total1 = 200; - var _this5 = _gthis.bytesTotalCache; - if(__map_reserved[name2[0]] != null ? _this5.existsReserved(name2[0]) : _this5.h.hasOwnProperty(name2[0])) { - var _this6 = _gthis.bytesTotalCache; - total1 = __map_reserved[name2[0]] != null ? _this6.getReserved(name2[0]) : _this6.h[name2[0]]; - } - var _this7 = _gthis.bytesLoadedCache2; - if(!(__map_reserved[name2[0]] != null ? _this7.existsReserved(name2[0]) : _this7.h.hasOwnProperty(name2[0]))) { - _gthis.bytesLoaded += total1; - } else { - var _this8 = _gthis.bytesLoadedCache2; - _gthis.bytesLoaded += total1 - (__map_reserved[name2[0]] != null ? _this8.getReserved(name2[0]) : _this8.h[name2[0]]); - } - _gthis.loadedAssetLibrary(name2[0]); - }; - })(name)).onError((function() { - return function(e) { - lime_utils_Log.error(e,{ fileName : "lime/utils/Preloader.hx", lineNumber : 290, className : "lime.utils.Preloader", methodName : "updateProgress"}); - }; - })()); - } - } - if(!this.simulateProgress && this.loadedLibraries == this.libraries.length + this.libraryNames.length) { - if(!this.preloadComplete) { - this.preloadComplete = true; - lime_utils_Log.verbose("Preload complete",{ fileName : "lime/utils/Preloader.hx", lineNumber : 301, className : "lime.utils.Preloader", methodName : "updateProgress"}); - } - this.start(); - } - } - ,__class__: lime_utils_Preloader -}; -var lime_utils__$UInt16Array_UInt16Array_$Impl_$ = {}; -$hxClasses["lime.utils._UInt16Array.UInt16Array_Impl_"] = lime_utils__$UInt16Array_UInt16Array_$Impl_$; -lime_utils__$UInt16Array_UInt16Array_$Impl_$.__name__ = "lime.utils._UInt16Array.UInt16Array_Impl_"; -lime_utils__$UInt16Array_UInt16Array_$Impl_$.fromBytes = function(bytes,byteOffset,len) { - if(byteOffset == null) { - byteOffset = 0; - } - if(byteOffset == null) { - return new Uint16Array(bytes.b.bufferValue); - } - if(len == null) { - return new Uint16Array(bytes.b.bufferValue,byteOffset); - } - return new Uint16Array(bytes.b.bufferValue,byteOffset,len); -}; -lime_utils__$UInt16Array_UInt16Array_$Impl_$.toBytes = function(this1) { - return new haxe_io_Bytes(new Uint8Array(this1.buffer)); -}; -lime_utils__$UInt16Array_UInt16Array_$Impl_$.toString = function(this1) { - if(this1 != null) { - return "UInt16Array [byteLength:" + this1.byteLength + ", length:" + this1.length + "]"; - } else { - return null; - } -}; -var lime_utils__$UInt32Array_UInt32Array_$Impl_$ = {}; -$hxClasses["lime.utils._UInt32Array.UInt32Array_Impl_"] = lime_utils__$UInt32Array_UInt32Array_$Impl_$; -lime_utils__$UInt32Array_UInt32Array_$Impl_$.__name__ = "lime.utils._UInt32Array.UInt32Array_Impl_"; -lime_utils__$UInt32Array_UInt32Array_$Impl_$.fromBytes = function(bytes,byteOffset,len) { - if(byteOffset == null) { - byteOffset = 0; - } - if(byteOffset == null) { - return new Uint32Array(bytes.b.bufferValue); - } - if(len == null) { - return new Uint32Array(bytes.b.bufferValue,byteOffset); - } - return new Uint32Array(bytes.b.bufferValue,byteOffset,len); -}; -lime_utils__$UInt32Array_UInt32Array_$Impl_$.toBytes = function(this1) { - return new haxe_io_Bytes(new Uint8Array(this1.buffer)); -}; -lime_utils__$UInt32Array_UInt32Array_$Impl_$.toString = function(this1) { - if(this1 != null) { - return "UInt32Array [byteLength:" + this1.byteLength + ", length:" + this1.length + "]"; - } else { - return null; - } -}; -var lime_utils__$UInt8Array_UInt8Array_$Impl_$ = {}; -$hxClasses["lime.utils._UInt8Array.UInt8Array_Impl_"] = lime_utils__$UInt8Array_UInt8Array_$Impl_$; -lime_utils__$UInt8Array_UInt8Array_$Impl_$.__name__ = "lime.utils._UInt8Array.UInt8Array_Impl_"; -lime_utils__$UInt8Array_UInt8Array_$Impl_$.fromBytes = function(bytes,byteOffset,len) { - if(byteOffset == null) { - return new Uint8Array(bytes.b.bufferValue); - } - if(len == null) { - return new Uint8Array(bytes.b.bufferValue,byteOffset); - } - return new Uint8Array(bytes.b.bufferValue,byteOffset,len); -}; -lime_utils__$UInt8Array_UInt8Array_$Impl_$.toBytes = function(this1) { - return new haxe_io_Bytes(new Uint8Array(this1.buffer)); -}; -lime_utils__$UInt8Array_UInt8Array_$Impl_$.toString = function(this1) { - if(this1 != null) { - return "UInt8Array [byteLength:" + this1.byteLength + ", length:" + this1.length + "]"; - } else { - return null; - } -}; -var lime_utils__$UInt8ClampedArray_UInt8ClampedArray_$Impl_$ = {}; -$hxClasses["lime.utils._UInt8ClampedArray.UInt8ClampedArray_Impl_"] = lime_utils__$UInt8ClampedArray_UInt8ClampedArray_$Impl_$; -lime_utils__$UInt8ClampedArray_UInt8ClampedArray_$Impl_$.__name__ = "lime.utils._UInt8ClampedArray.UInt8ClampedArray_Impl_"; -lime_utils__$UInt8ClampedArray_UInt8ClampedArray_$Impl_$.fromBytes = function(bytes,byteOffset,len) { - if(byteOffset == null) { - byteOffset = 0; - } - if(byteOffset == null) { - return new Uint8ClampedArray(bytes.b.bufferValue); - } - if(len == null) { - return new Uint8ClampedArray(bytes.b.bufferValue,byteOffset); - } - return new Uint8ClampedArray(bytes.b.bufferValue,byteOffset,len); -}; -lime_utils__$UInt8ClampedArray_UInt8ClampedArray_$Impl_$.toBytes = function(this1) { - return new haxe_io_Bytes(new Uint8Array(this1.buffer)); -}; -lime_utils__$UInt8ClampedArray_UInt8ClampedArray_$Impl_$.toString = function(this1) { - if(this1 != null) { - return "UInt8ClampedArray [byteLength:" + this1.byteLength + ", length:" + this1.length + "]"; - } else { - return null; - } -}; -lime_utils__$UInt8ClampedArray_UInt8ClampedArray_$Impl_$._clamp = function(_in) { - var _out = _in | 0; - _out = _out > 255 ? 255 : _out; - if(_out < 0) { - return 0; - } else { - return _out; - } -}; -var openfl_Lib = function() { }; -$hxClasses["openfl.Lib"] = openfl_Lib; -openfl_Lib.__name__ = "openfl.Lib"; -openfl_Lib.__properties__ = {get_current:"get_current",get_application:"get_application"}; -openfl_Lib.as = function(v,c) { - if(js_Boot.__instanceof(v,c)) { - return v; - } else { - return null; - } -}; -openfl_Lib.attach = function(name) { - return new openfl_display_MovieClip(); -}; -openfl_Lib.clearInterval = function(id) { - if(openfl_Lib.__timers.h.hasOwnProperty(id)) { - var timer = openfl_Lib.__timers.h[id]; - timer.stop(); - openfl_Lib.__timers.remove(id); - } -}; -openfl_Lib.clearTimeout = function(id) { - if(openfl_Lib.__timers.h.hasOwnProperty(id)) { - var timer = openfl_Lib.__timers.h[id]; - timer.stop(); - openfl_Lib.__timers.remove(id); - } -}; -openfl_Lib.getDefinitionByName = function(name) { - if(name == null) { - return null; - } - return $hxClasses[name]; -}; -openfl_Lib.getQualifiedClassName = function(value) { - if(value == null) { - return null; - } - var ref = js_Boot.__instanceof(value,Class) ? value : js_Boot.getClass(value); - if(ref == null) { - if(typeof(value) == "boolean" || value == Bool) { - return "Bool"; - } else if(typeof(value) == "number" && ((value | 0) === value) || value == Int) { - return "Int"; - } else if(typeof(value) == "number" || value == Float) { - return "Float"; - } else { - return null; - } - } - return ref.__name__; -}; -openfl_Lib.getQualifiedSuperclassName = function(value) { - if(value == null) { - return null; - } - var ref = js_Boot.__instanceof(value,Class) ? value : js_Boot.getClass(value); - if(ref == null) { - return null; - } - var parentRef = ref.__super__; - if(parentRef == null) { - return null; - } - return parentRef.__name__; -}; -openfl_Lib.getTimer = function() { - return lime_system_System.getTimer(); -}; -openfl_Lib.getURL = function(request,target) { - openfl_Lib.navigateToURL(request,target); -}; -openfl_Lib.navigateToURL = function(request,$window) { - if($window == null) { - $window = "_blank"; - } - var uri = request.url; - if(Type.typeof(request.data) == ValueType.TObject) { - var query = ""; - var fields = Reflect.fields(request.data); - var _g = 0; - while(_g < fields.length) { - var field = fields[_g]; - ++_g; - if(query.length > 0) { - query += "&"; - } - var query1 = encodeURIComponent(field) + "="; - var s = Std.string(Reflect.field(request.data,field)); - query += query1 + encodeURIComponent(s); - } - if(uri.indexOf("?") > -1) { - uri += "&" + query; - } else { - uri += "?" + query; - } - } - lime_system_System.openURL(uri,$window); -}; -openfl_Lib.notImplemented = function(posInfo) { - var api = posInfo.className + "." + posInfo.methodName; - var _this = openfl_Lib.__sentWarnings; - if(!(__map_reserved[api] != null ? _this.existsReserved(api) : _this.h.hasOwnProperty(api))) { - var _this1 = openfl_Lib.__sentWarnings; - if(__map_reserved[api] != null) { - _this1.setReserved(api,true); - } else { - _this1.h[api] = true; - } - lime_utils_Log.warn(posInfo.methodName + " is not implemented",posInfo); - } -}; -openfl_Lib.preventDefaultTouchMove = function() { - window.document.addEventListener("touchmove",function(evt) { - evt.preventDefault(); - },false); -}; -openfl_Lib.sendToURL = function(request) { - var urlLoader = new openfl_net_URLLoader(); - urlLoader.load(request); -}; -openfl_Lib.setInterval = function(closure,delay,args) { - var id = ++openfl_Lib.__lastTimerID; - var timer = new haxe_Timer(delay); - openfl_Lib.__timers.h[id] = timer; - timer.run = function() { - closure.apply(closure,args == null ? [] : args); - }; - return id; -}; -openfl_Lib.setTimeout = function(closure,delay,args) { - var id = ++openfl_Lib.__lastTimerID; - var this1 = openfl_Lib.__timers; - var v = haxe_Timer.delay(function() { - closure.apply(closure,args == null ? [] : args); - },delay); - this1.h[id] = v; - return id; -}; -openfl_Lib.trace = function(arg) { - haxe_Log.trace(arg,{ fileName : "openfl/Lib.hx", lineNumber : 573, className : "openfl.Lib", methodName : "trace"}); -}; -openfl_Lib.get_application = function() { - return openfl__$internal_Lib.application; -}; -openfl_Lib.get_current = function() { - if(openfl__$internal_Lib.current == null) { - openfl__$internal_Lib.current = new openfl_display_MovieClip(); - } - return openfl__$internal_Lib.current; -}; -var openfl__$Vector_BoolVector = function(length,fixed,array) { - if(fixed == null) { - fixed = false; - } - if(length == null) { - length = 0; - } - if(array == null) { - array = []; - } - this.__array = array; - if(length > 0) { - this.set_length(length); - } - this.fixed = fixed; -}; -$hxClasses["openfl._Vector.BoolVector"] = openfl__$Vector_BoolVector; -openfl__$Vector_BoolVector.__name__ = "openfl._Vector.BoolVector"; -openfl__$Vector_BoolVector.__interfaces__ = [openfl__$Vector_IVector]; -openfl__$Vector_BoolVector.prototype = { - fixed: null - ,__array: null - ,concat: function(a) { - if(a == null) { - return new openfl__$Vector_BoolVector(0,false,this.__array.slice()); - } else { - var other = a; - if(other.__array.length > 0) { - return new openfl__$Vector_BoolVector(0,false,this.__array.concat(other.__array)); - } else { - return new openfl__$Vector_BoolVector(0,false,this.__array.slice()); - } - } - } - ,copy: function() { - return new openfl__$Vector_BoolVector(0,this.fixed,this.__array.slice()); - } - ,filter: function(callback) { - var tmp = this.fixed; - var _g = []; - var _g1 = 0; - var _g2 = this.__array; - while(_g1 < _g2.length) { - var v = _g2[_g1]; - ++_g1; - if(callback(v)) { - _g.push(v); - } - } - return new openfl__$Vector_BoolVector(0,tmp,_g); - } - ,get: function(index) { - if(index >= this.__array.length) { - return false; - } else { - return this.__array[index]; - } - } - ,indexOf: function(x,from) { - if(from == null) { - from = 0; - } - var _g = from; - var _g1 = this.__array.length; - while(_g < _g1) { - var i = _g++; - if(this.__array[i] == x) { - return i; - } - } - return -1; - } - ,insertAt: function(index,element) { - if(!this.fixed || index < this.__array.length) { - this.__array.splice(index,0,element); - } - } - ,iterator: function() { - return HxOverrides.iter(this.__array); - } - ,join: function(sep) { - if(sep == null) { - sep = ","; - } - return this.__array.join(sep); - } - ,lastIndexOf: function(x,from) { - var i = from == null || from >= this.__array.length ? this.__array.length - 1 : from; - while(i >= 0) { - if(this.__array[i] == x) { - return i; - } - --i; - } - return -1; - } - ,pop: function() { - if(!this.fixed) { - return this.__array.pop(); - } else { - return null; - } - } - ,push: function(x) { - if(!this.fixed) { - return this.__array.push(x); - } else { - return this.__array.length; - } - } - ,removeAt: function(index) { - if(!this.fixed || index < this.__array.length) { - return this.__array.splice(index,1)[0]; - } - return false; - } - ,reverse: function() { - this.__array.reverse(); - return this; - } - ,set: function(index,value) { - if(!this.fixed || index < this.__array.length) { - return this.__array[index] = value; - } else { - return value; - } - } - ,shift: function() { - if(!this.fixed) { - return this.__array.shift(); - } else { - return null; - } - } - ,slice: function(startIndex,endIndex) { - if(startIndex == null) { - startIndex = 0; - } - if(endIndex == null) { - endIndex = 16777215; - } - return new openfl__$Vector_BoolVector(0,false,this.__array.slice(startIndex,endIndex)); - } - ,sort: function(f) { - this.__array.sort(f); - } - ,splice: function(pos,len) { - return new openfl__$Vector_BoolVector(0,false,this.__array.splice(pos,len)); - } - ,toJSON: function() { - return this.__array; - } - ,toString: function() { - if(this.__array != null) { - return this.__array.toString(); - } else { - return null; - } - } - ,unshift: function(x) { - if(!this.fixed) { - this.__array.unshift(x); - } - } - ,get_length: function() { - return this.__array.length; - } - ,set_length: function(value) { - if(!this.fixed) { - var currentLength = this.__array.length; - if(value < 0) { - value = 0; - } - if(value > currentLength) { - var _g = currentLength; - var _g1 = value; - while(_g < _g1) { - var i = _g++; - this.__array[i] = false; - } - } else { - while(this.__array.length > value) this.__array.pop(); - } - } - return this.__array.length; - } - ,__class__: openfl__$Vector_BoolVector - ,__properties__: {set_length:"set_length",get_length:"get_length"} -}; -var openfl__$Vector_FunctionVector = function(length,fixed,array) { - if(fixed == null) { - fixed = false; - } - if(length == null) { - length = 0; - } - if(array == null) { - array = []; - } - this.__array = array; - if(length > 0) { - this.set_length(length); - } - this.fixed = fixed; -}; -$hxClasses["openfl._Vector.FunctionVector"] = openfl__$Vector_FunctionVector; -openfl__$Vector_FunctionVector.__name__ = "openfl._Vector.FunctionVector"; -openfl__$Vector_FunctionVector.__interfaces__ = [openfl__$Vector_IVector]; -openfl__$Vector_FunctionVector.prototype = { - fixed: null - ,__array: null - ,concat: function(a) { - if(a == null) { - return new openfl__$Vector_FunctionVector(0,false,this.__array.slice()); - } else { - var other = a; - if(other.__array.length > 0) { - return new openfl__$Vector_FunctionVector(0,false,this.__array.concat(other.__array)); - } else { - return new openfl__$Vector_FunctionVector(0,false,this.__array.slice()); - } - } - } - ,copy: function() { - return new openfl__$Vector_FunctionVector(0,this.fixed,this.__array.slice()); - } - ,filter: function(callback) { - var tmp = this.fixed; - var _g = []; - var _g1 = 0; - var _g2 = this.__array; - while(_g1 < _g2.length) { - var v = _g2[_g1]; - ++_g1; - if(callback(v)) { - _g.push(v); - } - } - return new openfl__$Vector_FunctionVector(0,tmp,_g); - } - ,get: function(index) { - if(index >= this.__array.length) { - return null; - } else { - return this.__array[index]; - } - } - ,indexOf: function(x,from) { - if(from == null) { - from = 0; - } - var _g = from; - var _g1 = this.__array.length; - while(_g < _g1) { - var i = _g++; - if(Reflect.compareMethods(this.__array[i],x)) { - return i; - } - } - return -1; - } - ,insertAt: function(index,element) { - if(!this.fixed || index < this.__array.length) { - this.__array.splice(index,0,element); - } - } - ,iterator: function() { - return HxOverrides.iter(this.__array); - } - ,join: function(sep) { - if(sep == null) { - sep = ","; - } - return this.__array.join(sep); - } - ,lastIndexOf: function(x,from) { - var i = from == null || from >= this.__array.length ? this.__array.length - 1 : from; - while(i >= 0) { - if(Reflect.compareMethods(this.__array[i],x)) { - return i; - } - --i; - } - return -1; - } - ,pop: function() { - if(!this.fixed) { - return this.__array.pop(); - } else { - return null; - } - } - ,push: function(x) { - if(!this.fixed) { - return this.__array.push(x); - } else { - return this.__array.length; - } - } - ,removeAt: function(index) { - if(!this.fixed || index < this.__array.length) { - return this.__array.splice(index,1)[0]; - } - return null; - } - ,reverse: function() { - this.__array.reverse(); - return this; - } - ,set: function(index,value) { - if(!this.fixed || index < this.__array.length) { - return this.__array[index] = value; - } else { - return value; - } - } - ,shift: function() { - if(!this.fixed) { - return this.__array.shift(); - } else { - return null; - } - } - ,slice: function(startIndex,endIndex) { - if(startIndex == null) { - startIndex = 0; - } - if(endIndex == null) { - endIndex = 16777215; - } - return new openfl__$Vector_FunctionVector(0,false,this.__array.slice(startIndex,endIndex)); - } - ,sort: function(f) { - this.__array.sort(f); - } - ,splice: function(pos,len) { - return new openfl__$Vector_FunctionVector(0,false,this.__array.splice(pos,len)); - } - ,toJSON: function() { - return this.__array; - } - ,toString: function() { - if(this.__array != null) { - return this.__array.toString(); - } else { - return null; - } - } - ,unshift: function(x) { - if(!this.fixed) { - this.__array.unshift(x); - } - } - ,get_length: function() { - return this.__array.length; - } - ,set_length: function(value) { - if(!this.fixed) { - var currentLength = this.__array.length; - if(value < 0) { - value = 0; - } - if(value > currentLength) { - var _g = currentLength; - var _g1 = value; - while(_g < _g1) { - var i = _g++; - this.__array[i] = null; - } - } else { - while(this.__array.length > value) this.__array.pop(); - } - } - return this.__array.length; - } - ,__class__: openfl__$Vector_FunctionVector - ,__properties__: {set_length:"set_length",get_length:"get_length"} -}; -var openfl__$Vector_IntVector = function(length,fixed,array) { - if(fixed == null) { - fixed = false; - } - if(length == null) { - length = 0; - } - if(array == null) { - array = []; - } - this.__array = array; - if(length > 0) { - this.set_length(length); - } - this.fixed = fixed; -}; -$hxClasses["openfl._Vector.IntVector"] = openfl__$Vector_IntVector; -openfl__$Vector_IntVector.__name__ = "openfl._Vector.IntVector"; -openfl__$Vector_IntVector.__interfaces__ = [openfl__$Vector_IVector]; -openfl__$Vector_IntVector.prototype = { - fixed: null - ,__array: null - ,concat: function(a) { - if(a == null) { - return new openfl__$Vector_IntVector(0,false,this.__array.slice()); - } else { - var other = a; - if(other.__array.length > 0) { - return new openfl__$Vector_IntVector(0,false,this.__array.concat(other.__array)); - } else { - return new openfl__$Vector_IntVector(0,false,this.__array.slice()); - } - } - } - ,copy: function() { - return new openfl__$Vector_IntVector(0,this.fixed,this.__array.slice()); - } - ,filter: function(callback) { - var tmp = this.fixed; - var _g = []; - var _g1 = 0; - var _g2 = this.__array; - while(_g1 < _g2.length) { - var v = _g2[_g1]; - ++_g1; - if(callback(v)) { - _g.push(v); - } - } - return new openfl__$Vector_IntVector(0,tmp,_g); - } - ,get: function(index) { - return this.__array[index]; - } - ,indexOf: function(x,from) { - if(from == null) { - from = 0; - } - var _g = from; - var _g1 = this.__array.length; - while(_g < _g1) { - var i = _g++; - if(this.__array[i] == x) { - return i; - } - } - return -1; - } - ,insertAt: function(index,element) { - if(!this.fixed || index < this.__array.length) { - this.__array.splice(index,0,element); - } - } - ,iterator: function() { - return HxOverrides.iter(this.__array); - } - ,join: function(sep) { - if(sep == null) { - sep = ","; - } - return this.__array.join(sep); - } - ,lastIndexOf: function(x,from) { - var i = from == null || from >= this.__array.length ? this.__array.length - 1 : from; - while(i >= 0) { - if(this.__array[i] == x) { - return i; - } - --i; - } - return -1; - } - ,pop: function() { - if(!this.fixed) { - return this.__array.pop(); - } else { - return null; - } - } - ,push: function(x) { - if(!this.fixed) { - return this.__array.push(x); - } else { - return this.__array.length; - } - } - ,removeAt: function(index) { - if(!this.fixed || index < this.__array.length) { - return this.__array.splice(index,1)[0]; - } - return 0; - } - ,reverse: function() { - this.__array.reverse(); - return this; - } - ,set: function(index,value) { - if(!this.fixed || index < this.__array.length) { - return this.__array[index] = value; - } else { - return value; - } - } - ,shift: function() { - if(!this.fixed) { - return this.__array.shift(); - } else { - return null; - } - } - ,slice: function(startIndex,endIndex) { - if(startIndex == null) { - startIndex = 0; - } - if(endIndex == null) { - endIndex = 16777215; - } - return new openfl__$Vector_IntVector(0,false,this.__array.slice(startIndex,endIndex)); - } - ,sort: function(f) { - this.__array.sort(f); - } - ,splice: function(pos,len) { - return new openfl__$Vector_IntVector(0,false,this.__array.splice(pos,len)); - } - ,toJSON: function() { - return this.__array; - } - ,toString: function() { - if(this.__array != null) { - return this.__array.toString(); - } else { - return null; - } - } - ,unshift: function(x) { - if(!this.fixed) { - this.__array.unshift(x); - } - } - ,get_length: function() { - return this.__array.length; - } - ,set_length: function(value) { - if(!this.fixed) { - var currentLength = this.__array.length; - if(value < 0) { - value = 0; - } - if(value > currentLength) { - var _g = currentLength; - var _g1 = value; - while(_g < _g1) { - var i = _g++; - this.__array[i] = 0; - } - } else { - while(this.__array.length > value) this.__array.pop(); - } - } - return this.__array.length; - } - ,__class__: openfl__$Vector_IntVector - ,__properties__: {set_length:"set_length",get_length:"get_length"} -}; -var openfl__$internal_Lib = function() { }; -$hxClasses["openfl._internal.Lib"] = openfl__$internal_Lib; -openfl__$internal_Lib.__name__ = "openfl._internal.Lib"; -openfl__$internal_Lib.application = null; -openfl__$internal_Lib.current = null; -openfl__$internal_Lib.notImplemented = function(posInfo) { - var api = posInfo.className + "." + posInfo.methodName; - var _this = openfl__$internal_Lib.__sentWarnings; - if(!(__map_reserved[api] != null ? _this.existsReserved(api) : _this.h.hasOwnProperty(api))) { - var _this1 = openfl__$internal_Lib.__sentWarnings; - if(__map_reserved[api] != null) { - _this1.setReserved(api,true); - } else { - _this1.h[api] = true; - } - lime_utils_Log.warn(posInfo.methodName + " is not implemented",posInfo); - } -}; -var openfl__$internal_formats_agal_AGALConverter = function() { }; -$hxClasses["openfl._internal.formats.agal.AGALConverter"] = openfl__$internal_formats_agal_AGALConverter; -openfl__$internal_formats_agal_AGALConverter.__name__ = "openfl._internal.formats.agal.AGALConverter"; -openfl__$internal_formats_agal_AGALConverter.prefixFromType = function(regType,programType) { - switch(regType) { - case 0: - return "va"; - case 1: - if(programType == openfl__$internal_formats_agal__$AGALConverter_ProgramType.VERTEX) { - return "vc"; - } else { - return "fc"; - } - break; - case 2: - if(programType == openfl__$internal_formats_agal__$AGALConverter_ProgramType.VERTEX) { - return "vt"; - } else { - return "ft"; - } - break; - case 3: - return "output_"; - case 4: - return "v"; - case 5: - return "sampler"; - default: - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError("Invalid data!")); - } -}; -openfl__$internal_formats_agal_AGALConverter.readUInt64 = function(byteArray) { - var low = byteArray.readInt(); - var high = byteArray.readInt(); - var this1 = new haxe__$Int64__$_$_$Int64(high,low); - return this1; -}; -openfl__$internal_formats_agal_AGALConverter.convertToGLSL = function(agal,samplerState) { - agal.position = 0; - agal.__endian = 1; - var magic = agal.readByte() & 255; - if(magic == 176) { - return agal.readUTF(); - } - if(magic != 160) { - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError("Magic value must be 0xA0, may not be AGAL")); - } - var version = agal.readInt(); - if(version != 1) { - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError("Version must be 1")); - } - var shaderTypeID = agal.readByte() & 255; - if(shaderTypeID != 161) { - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError("Shader type ID must be 0xA1")); - } - var programType = (agal.readByte() & 255) == 0 ? openfl__$internal_formats_agal__$AGALConverter_ProgramType.VERTEX : openfl__$internal_formats_agal__$AGALConverter_ProgramType.FRAGMENT; - var map = new openfl__$internal_formats_agal_RegisterMap(); - var sb_b = ""; - while(true) { - var a = agal.position; - if(!_$UInt_UInt_$Impl_$.gt(openfl_utils__$ByteArray_ByteArray_$Impl_$.get_length(agal),a)) { - break; - } - var opcode = agal.readInt(); - var dest = agal.readUnsignedInt(); - var source1 = openfl__$internal_formats_agal_AGALConverter.readUInt64(agal); - var source2 = openfl__$internal_formats_agal_AGALConverter.readUInt64(agal); - var dr = openfl__$internal_formats_agal__$AGALConverter_DestRegister.parse(dest,programType); - var sr1 = openfl__$internal_formats_agal__$AGALConverter_SourceRegister.parse(source1,programType,dr.mask); - var sr2 = openfl__$internal_formats_agal__$AGALConverter_SourceRegister.parse(source2,programType,dr.mask); - sb_b += "\t"; - switch(opcode) { - case 0: - sb_b += Std.string(dr.toGLSL() + " = " + sr1.toGLSL() + "; // mov"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 1: - sb_b += Std.string(dr.toGLSL() + " = " + sr1.toGLSL() + " + " + sr2.toGLSL() + "; // add"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 2: - sb_b += Std.string(dr.toGLSL() + " = " + sr1.toGLSL() + " - " + sr2.toGLSL() + "; // sub"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 3: - sb_b += Std.string(dr.toGLSL() + " = " + sr1.toGLSL() + " * " + sr2.toGLSL() + "; // mul"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 4: - sb_b += Std.string(dr.toGLSL() + " = " + sr1.toGLSL() + " / " + sr2.toGLSL() + "; // div"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 5: - var sr = sr1.toGLSL(); - if(sr.indexOf(".") > -1) { - sb_b += Std.string(dr.toGLSL() + " = 1.0 / " + sr1.toGLSL() + "; // rcp"); - } else { - sb_b += Std.string(dr.toGLSL() + " = vec4(1) / " + sr1.toGLSL() + "; // rcp"); - } - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 6: - sb_b += Std.string(dr.toGLSL() + " = min(" + sr1.toGLSL() + ", " + sr2.toGLSL() + "); // min"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 7: - sb_b += Std.string(dr.toGLSL() + " = max(" + sr1.toGLSL() + ", " + sr2.toGLSL() + "); // max"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 8: - sb_b += Std.string(dr.toGLSL() + " = fract(" + sr1.toGLSL() + "); // frc"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 9: - sb_b += Std.string(dr.toGLSL() + " = sqrt(" + sr1.toGLSL() + "); // sqrt"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 10: - sb_b += Std.string(dr.toGLSL() + " = inversesqrt(" + sr1.toGLSL() + "); // rsq"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 11: - sb_b += Std.string(dr.toGLSL() + " = pow(" + sr1.toGLSL() + ", " + sr2.toGLSL() + "); // pow"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 12: - sb_b += Std.string(dr.toGLSL() + " = log2(" + sr1.toGLSL() + "); // log"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 13: - sb_b += Std.string(dr.toGLSL() + " = exp2(" + sr1.toGLSL() + "); // exp"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 14: - sb_b += Std.string(dr.toGLSL() + " = normalize(" + sr1.toGLSL() + "); // normalize"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 15: - sb_b += Std.string(dr.toGLSL() + " = sin(" + sr1.toGLSL() + "); // sin"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 16: - sb_b += Std.string(dr.toGLSL() + " = cos(" + sr1.toGLSL() + "); // cos"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 17: - sr1.sourceMask = sr2.sourceMask = 7; - sb_b += Std.string(dr.toGLSL() + " = cross(vec3(" + sr1.toGLSL() + "), vec3(" + sr2.toGLSL() + ")); // crs"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 18: - sr1.sourceMask = sr2.sourceMask = 7; - sb_b += Std.string(dr.toGLSL() + " = vec4(dot(vec3(" + sr1.toGLSL() + "), vec3(" + sr2.toGLSL() + ")))" + dr.getWriteMask() + "; // dp3"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 19: - sr1.sourceMask = sr2.sourceMask = 15; - sb_b += Std.string(dr.toGLSL() + " = vec4(dot(vec4(" + sr1.toGLSL() + "), vec4(" + sr2.toGLSL() + ")))" + dr.getWriteMask() + "; // dp4"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 20: - sb_b += Std.string(dr.toGLSL() + " = abs(" + sr1.toGLSL() + "); // abs"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 21: - sb_b += Std.string(dr.toGLSL() + " = -" + sr1.toGLSL() + "; // neg"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 22: - sb_b += Std.string(dr.toGLSL() + " = clamp(" + sr1.toGLSL() + ", 0.0, 1.0); // saturate"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 23: - var existingUsage = map.getRegisterUsage(sr2); - if(existingUsage != openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4 && existingUsage != openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4_ARRAY) { - sb_b += Std.string(dr.toGLSL() + " = " + sr1.toGLSL() + " * mat3(" + sr2.toGLSL(false) + "); // m33"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.MATRIX_4_4); - } else { - sr1.sourceMask = sr2.sourceMask = 7; - sb_b += Std.string(dr.toGLSL() + " = vec3(" + "dot(" + sr1.toGLSL(true) + "," + sr2.toGLSL(true,0) + "), " + "dot(" + sr1.toGLSL(true) + "," + sr2.toGLSL(true,1) + ")," + "dot(" + sr1.toGLSL(true) + "," + sr2.toGLSL(true,2) + ")); // m33"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4,0); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4,1); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4,2); - } - break; - case 24: - var existingUsage1 = map.getRegisterUsage(sr2); - if(existingUsage1 != openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4 && existingUsage1 != openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4_ARRAY) { - sb_b += Std.string(dr.toGLSL() + " = " + sr1.toGLSL() + " * " + sr2.toGLSL(false) + "; // m44"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.MATRIX_4_4); - } else { - sr1.sourceMask = sr2.sourceMask = 15; - sb_b += Std.string(dr.toGLSL() + " = vec4(" + "dot(" + sr1.toGLSL(true) + "," + sr2.toGLSL(true,0) + "), " + "dot(" + sr1.toGLSL(true) + "," + sr2.toGLSL(true,1) + "), " + "dot(" + sr1.toGLSL(true) + "," + sr2.toGLSL(true,2) + "), " + "dot(" + sr1.toGLSL(true) + "," + sr2.toGLSL(true,3) + ")); // m44"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4,0); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4,1); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4,2); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4,3); - } - break; - case 25: - dr.mask &= 7; - var existingUsage2 = map.getRegisterUsage(sr2); - if(existingUsage2 != openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4 && existingUsage2 != openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4_ARRAY) { - sb_b += Std.string(dr.toGLSL() + " = " + sr1.toGLSL() + " * " + sr2.toGLSL(false) + "; // m34"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.MATRIX_4_4); - } else { - sr1.sourceMask = sr2.sourceMask = 15; - sb_b += Std.string(dr.toGLSL() + " = vec3(" + "dot(" + sr1.toGLSL(true) + "," + sr2.toGLSL(true,0) + "), " + "dot(" + sr1.toGLSL(true) + "," + sr2.toGLSL(true,1) + ")," + "dot(" + sr1.toGLSL(true) + "," + sr2.toGLSL(true,2) + ")); // m34"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4,0); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4,1); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4,2); - } - break; - case 39: - sr1.sourceMask = 15; - sb_b += Std.string("if (any(lessThan(" + sr1.toGLSL() + ", vec4(0)))) discard;"); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 40: - var sampler = openfl__$internal_formats_agal__$AGALConverter_SamplerRegister.parse(source2,programType); - switch(sampler.d) { - case 0: - if(sampler.t == 2) { - sr1.sourceMask = 3; - map.addSaR(sampler,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.SAMPLER_2D_ALPHA); - sb_b += Std.string("if (" + sampler.toGLSL() + "_alphaEnabled) {\n"); - sb_b += Std.string("\t\t" + dr.toGLSL() + " = vec4(texture2D(" + sampler.toGLSL() + ", " + sr1.toGLSL() + ").xyz, texture2D(" + sampler.toGLSL() + "_alpha, " + sr1.toGLSL() + ").x); // tex + alpha\n"); - sb_b += "\t} else {\n"; - sb_b += Std.string("\t\t" + dr.toGLSL() + " = texture2D(" + sampler.toGLSL() + ", " + sr1.toGLSL() + "); // tex\n"); - sb_b += "\t}"; - } else { - sr1.sourceMask = 3; - map.addSaR(sampler,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.SAMPLER_2D); - sb_b += Std.string(dr.toGLSL() + " = texture2D(" + sampler.toGLSL() + ", " + sr1.toGLSL() + "); // tex"); - } - break; - case 1: - if(sampler.t == 2) { - sr1.sourceMask = 7; - map.addSaR(sampler,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.SAMPLER_CUBE_ALPHA); - sb_b += Std.string("if (" + sampler.toGLSL() + "_alphaEnabled) {\n"); - sb_b += Std.string("\t\t" + dr.toGLSL() + " = vec4(textureCube(" + sampler.toGLSL() + ", " + sr1.toGLSL() + ").xyz, textureCube(" + sampler.toGLSL() + "_alpha, " + sr1.toGLSL() + ").x); // tex + alpha\n"); - sb_b += "\t} else {\n"; - sb_b += Std.string("\t\t" + dr.toGLSL() + " = textureCube(" + sampler.toGLSL() + ", " + sr1.toGLSL() + "); // tex"); - sb_b += "\t}"; - } else { - sr1.sourceMask = 7; - sb_b += Std.string(dr.toGLSL() + " = textureCube(" + sampler.toGLSL() + ", " + sr1.toGLSL() + "); // tex"); - map.addSaR(sampler,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.SAMPLER_CUBE); - } - break; - } - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - if(samplerState != null) { - samplerState[sampler.n] = sampler.toSamplerState(); - } - break; - case 41: - sr1.sourceMask = sr2.sourceMask = 15; - sb_b += Std.string(dr.toGLSL() + " = vec4(greaterThanEqual(" + sr1.toGLSL() + ", " + sr2.toGLSL() + "))" + dr.getWriteMask() + "; // ste"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 42: - sr1.sourceMask = sr2.sourceMask = 15; - sb_b += Std.string(dr.toGLSL() + " = vec4(lessThan(" + sr1.toGLSL() + ", " + sr2.toGLSL() + "))" + dr.getWriteMask() + "; // slt"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 44: - sr1.sourceMask = sr2.sourceMask = 15; - sb_b += Std.string(dr.toGLSL() + " = vec4(equal(" + sr1.toGLSL() + ", " + sr2.toGLSL() + "))" + dr.getWriteMask() + "; // seq"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - case 45: - sr1.sourceMask = sr2.sourceMask = 15; - sb_b += Std.string(dr.toGLSL() + " = vec4(notEqual(" + sr1.toGLSL() + ", " + sr2.toGLSL() + "))" + dr.getWriteMask() + "; // sne"); - map.addDR(dr,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr1,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - map.addSR(sr2,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - break; - default: - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError("Opcode " + opcode)); - } - sb_b += "\n"; - } - if(openfl__$internal_formats_agal_AGALConverter.limitedProfile == null) { - var version1 = lime_graphics_opengl_GL.context.getParameter(7938); - openfl__$internal_formats_agal_AGALConverter.limitedProfile = version1.indexOf("OpenGL ES") > -1 || version1.indexOf("WebGL") > -1; - } - var glsl_b = ""; - glsl_b += Std.string("// AGAL " + (programType == openfl__$internal_formats_agal__$AGALConverter_ProgramType.VERTEX ? "vertex" : "fragment") + " shader\n"); - if(openfl__$internal_formats_agal_AGALConverter.limitedProfile) { - glsl_b += "#version 100\n"; - glsl_b += "precision highp float;\n"; - } else { - glsl_b += "#version 120\n"; - } - glsl_b += Std.string(map.toGLSL(false)); - if(programType == openfl__$internal_formats_agal__$AGALConverter_ProgramType.VERTEX) { - glsl_b += "uniform vec4 vcPositionScale;\n"; - } - glsl_b += "void main() {\n"; - glsl_b += Std.string(map.toGLSL(true)); - glsl_b += Std.string(sb_b); - if(programType == openfl__$internal_formats_agal__$AGALConverter_ProgramType.VERTEX) { - glsl_b += "\tgl_Position *= vcPositionScale;\n"; - } - glsl_b += "}\n"; - return glsl_b; -}; -var openfl__$internal_formats_agal__$AGALConverter_DestRegister = function() { -}; -$hxClasses["openfl._internal.formats.agal._AGALConverter.DestRegister"] = openfl__$internal_formats_agal__$AGALConverter_DestRegister; -openfl__$internal_formats_agal__$AGALConverter_DestRegister.__name__ = "openfl._internal.formats.agal._AGALConverter.DestRegister"; -openfl__$internal_formats_agal__$AGALConverter_DestRegister.parse = function(v,programType) { - var dr = new openfl__$internal_formats_agal__$AGALConverter_DestRegister(); - dr.programType = programType; - dr.type = v >>> 24 & 15; - dr.mask = v >>> 16 & 15; - dr.n = v & 65535; - return dr; -}; -openfl__$internal_formats_agal__$AGALConverter_DestRegister.prototype = { - mask: null - ,n: null - ,programType: null - ,type: null - ,getWriteMask: function() { - var str = "."; - if((this.mask & 1) != 0) { - str += "x"; - } - if((this.mask & 2) != 0) { - str += "y"; - } - if((this.mask & 4) != 0) { - str += "z"; - } - if((this.mask & 8) != 0) { - str += "w"; - } - return str; - } - ,toGLSL: function(useMask) { - if(useMask == null) { - useMask = true; - } - var str; - if(this.type == 3) { - str = this.programType == openfl__$internal_formats_agal__$AGALConverter_ProgramType.VERTEX ? "gl_Position" : "gl_FragColor"; - } else { - str = openfl__$internal_formats_agal_AGALConverter.prefixFromType(this.type,this.programType) + this.n; - } - if(useMask && this.mask != 15) { - str += this.getWriteMask(); - } - return str; - } - ,__class__: openfl__$internal_formats_agal__$AGALConverter_DestRegister -}; -var openfl__$internal_formats_agal__$AGALConverter_ProgramType = $hxEnums["openfl._internal.formats.agal._AGALConverter.ProgramType"] = { __ename__ : "openfl._internal.formats.agal._AGALConverter.ProgramType", __constructs__ : ["VERTEX","FRAGMENT"] - ,VERTEX: {_hx_index:0,__enum__:"openfl._internal.formats.agal._AGALConverter.ProgramType",toString:$estr} - ,FRAGMENT: {_hx_index:1,__enum__:"openfl._internal.formats.agal._AGALConverter.ProgramType",toString:$estr} -}; -var openfl__$internal_formats_agal_RegisterMap = function() { - this.mEntries = []; -}; -$hxClasses["openfl._internal.formats.agal.RegisterMap"] = openfl__$internal_formats_agal_RegisterMap; -openfl__$internal_formats_agal_RegisterMap.__name__ = "openfl._internal.formats.agal.RegisterMap"; -openfl__$internal_formats_agal_RegisterMap.prototype = { - mEntries: null - ,add: function(type,name,number,usage) { - var _g = 0; - var _g1 = this.mEntries; - while(_g < _g1.length) { - var entry = _g1[_g]; - ++_g; - if(entry.type == type && entry.name == name && entry.number == number) { - if(entry.usage != usage) { - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError("Cannot use register in multiple ways yet (mat4/vec4)")); - } - return; - } - } - var entry1 = new openfl__$internal_formats_agal__$AGALConverter_RegisterMapEntry(); - entry1.type = type; - entry1.name = name; - entry1.number = number; - entry1.usage = usage; - this.mEntries.push(entry1); - } - ,addDR: function(dr,usage) { - this.add(dr.type,dr.toGLSL(false),dr.n,usage); - } - ,addSaR: function(sr,usage) { - this.add(sr.type,sr.toGLSL(),sr.n,usage); - } - ,addSR: function(sr,usage,offset) { - if(offset == null) { - offset = 0; - } - if(sr.d != 0) { - this.add(sr.itype,openfl__$internal_formats_agal_AGALConverter.prefixFromType(sr.itype,sr.programType) + sr.n,sr.n,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4); - this.add(sr.type,openfl__$internal_formats_agal_AGALConverter.prefixFromType(sr.type,sr.programType) + sr.o,sr.o,openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4_ARRAY); - return; - } - this.add(sr.type,sr.toGLSL(false,offset),sr.n + offset,usage); - } - ,getRegisterUsage: function(sr) { - if(sr.d != 0) { - return openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4_ARRAY; - } - return this.getUsage(sr.type,sr.toGLSL(false),sr.n); - } - ,getUsage: function(type,name,number) { - var _g = 0; - var _g1 = this.mEntries; - while(_g < _g1.length) { - var entry = _g1[_g]; - ++_g; - if(entry.type == type && entry.name == name && entry.number == number) { - return entry.usage; - } - } - return openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.UNUSED; - } - ,toGLSL: function(tempRegistersOnly) { - this.mEntries.sort(function(a,b) { - return a.number - b.number; - }); - var entry; - this.mEntries.sort(function(a1,b1) { - return js_Boot.__cast(a1.type , Int) - js_Boot.__cast(b1.type , Int); - }); - var sb_b = ""; - var _g = 0; - var _g1 = this.mEntries.length; - while(_g < _g1) { - var i = _g++; - entry = this.mEntries[i]; - if(tempRegistersOnly && entry.type != 2 || !tempRegistersOnly && entry.type == 2) { - continue; - } - if(entry.type == 3) { - continue; - } - switch(entry.type) { - case 0: - sb_b += "attribute "; - break; - case 1: - sb_b += "uniform "; - break; - case 2: - sb_b += "\t"; - break; - case 3: - break; - case 4: - sb_b += "varying "; - break; - case 5: - sb_b += "uniform "; - break; - default: - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError()); - } - switch(entry.usage._hx_index) { - case 0: - lime_utils_Log.info("Missing switch patten: RegisterUsage.UNUSED",{ fileName : "openfl/_internal/formats/agal/AGALConverter.hx", lineNumber : 746, className : "openfl._internal.formats.agal.RegisterMap", methodName : "toGLSL"}); - break; - case 1: - sb_b += "vec4 "; - break; - case 2: - sb_b += "mat4 "; - break; - case 3: - sb_b += "sampler2D "; - break; - case 4: - break; - case 5: - sb_b += "samplerCube "; - break; - case 6: - break; - case 7: - sb_b += "vec4 "; - break; - } - if(entry.usage == openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.SAMPLER_2D_ALPHA) { - sb_b += "sampler2D "; - sb_b += Std.string(entry.name); - sb_b += ";\n"; - sb_b += "uniform "; - sb_b += "sampler2D "; - sb_b += Std.string(entry.name + "_alpha"); - sb_b += ";\n"; - sb_b += "uniform "; - sb_b += "bool "; - sb_b += Std.string(entry.name + "_alphaEnabled"); - sb_b += ";\n"; - } else if(entry.usage == openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.SAMPLER_CUBE_ALPHA) { - sb_b += "samplerCube "; - sb_b += Std.string(entry.name); - sb_b += ";\n"; - sb_b += "uniform "; - sb_b += "samplerCube "; - sb_b += Std.string(entry.name + "_alpha"); - sb_b += ";\n"; - sb_b += "uniform "; - sb_b += "bool "; - sb_b += Std.string(entry.name + "_alphaEnabled"); - sb_b += ";\n"; - } else if(entry.usage == openfl__$internal_formats_agal__$AGALConverter_RegisterUsage.VECTOR_4_ARRAY) { - sb_b += Std.string(entry.name + "[128]"); - sb_b += ";\n"; - } else { - sb_b += Std.string(entry.name); - sb_b += ";\n"; - } - } - return sb_b; - } - ,__class__: openfl__$internal_formats_agal_RegisterMap -}; -var openfl__$internal_formats_agal__$AGALConverter_RegisterMapEntry = function() { -}; -$hxClasses["openfl._internal.formats.agal._AGALConverter.RegisterMapEntry"] = openfl__$internal_formats_agal__$AGALConverter_RegisterMapEntry; -openfl__$internal_formats_agal__$AGALConverter_RegisterMapEntry.__name__ = "openfl._internal.formats.agal._AGALConverter.RegisterMapEntry"; -openfl__$internal_formats_agal__$AGALConverter_RegisterMapEntry.prototype = { - name: null - ,number: null - ,type: null - ,usage: null - ,__class__: openfl__$internal_formats_agal__$AGALConverter_RegisterMapEntry -}; -var openfl__$internal_formats_agal__$AGALConverter_RegisterUsage = $hxEnums["openfl._internal.formats.agal._AGALConverter.RegisterUsage"] = { __ename__ : "openfl._internal.formats.agal._AGALConverter.RegisterUsage", __constructs__ : ["UNUSED","VECTOR_4","MATRIX_4_4","SAMPLER_2D","SAMPLER_2D_ALPHA","SAMPLER_CUBE","SAMPLER_CUBE_ALPHA","VECTOR_4_ARRAY"] - ,UNUSED: {_hx_index:0,__enum__:"openfl._internal.formats.agal._AGALConverter.RegisterUsage",toString:$estr} - ,VECTOR_4: {_hx_index:1,__enum__:"openfl._internal.formats.agal._AGALConverter.RegisterUsage",toString:$estr} - ,MATRIX_4_4: {_hx_index:2,__enum__:"openfl._internal.formats.agal._AGALConverter.RegisterUsage",toString:$estr} - ,SAMPLER_2D: {_hx_index:3,__enum__:"openfl._internal.formats.agal._AGALConverter.RegisterUsage",toString:$estr} - ,SAMPLER_2D_ALPHA: {_hx_index:4,__enum__:"openfl._internal.formats.agal._AGALConverter.RegisterUsage",toString:$estr} - ,SAMPLER_CUBE: {_hx_index:5,__enum__:"openfl._internal.formats.agal._AGALConverter.RegisterUsage",toString:$estr} - ,SAMPLER_CUBE_ALPHA: {_hx_index:6,__enum__:"openfl._internal.formats.agal._AGALConverter.RegisterUsage",toString:$estr} - ,VECTOR_4_ARRAY: {_hx_index:7,__enum__:"openfl._internal.formats.agal._AGALConverter.RegisterUsage",toString:$estr} -}; -var openfl__$internal_formats_agal__$AGALConverter_SamplerRegister = function() { -}; -$hxClasses["openfl._internal.formats.agal._AGALConverter.SamplerRegister"] = openfl__$internal_formats_agal__$AGALConverter_SamplerRegister; -openfl__$internal_formats_agal__$AGALConverter_SamplerRegister.__name__ = "openfl._internal.formats.agal._AGALConverter.SamplerRegister"; -openfl__$internal_formats_agal__$AGALConverter_SamplerRegister.parse = function(v,programType) { - var sr = new openfl__$internal_formats_agal__$AGALConverter_SamplerRegister(); - sr.programType = programType; - var b = 60; - b &= 63; - var a; - if(b == 0) { - var this1 = new haxe__$Int64__$_$_$Int64(v.high,v.low); - a = this1; - } else if(b < 32) { - var this2 = new haxe__$Int64__$_$_$Int64(v.high >> b,v.high << 32 - b | v.low >>> b); - a = this2; - } else { - var this3 = new haxe__$Int64__$_$_$Int64(v.high >> 31,v.high >> b - 32); - a = this3; - } - var b_high = 0; - var b_low = 15; - var this_high = a.high & b_high; - var this_low = a.low & b_low; - sr.f = this_low; - var b1 = 56; - b1 &= 63; - var a1; - if(b1 == 0) { - var this4 = new haxe__$Int64__$_$_$Int64(v.high,v.low); - a1 = this4; - } else if(b1 < 32) { - var this5 = new haxe__$Int64__$_$_$Int64(v.high >> b1,v.high << 32 - b1 | v.low >>> b1); - a1 = this5; - } else { - var this6 = new haxe__$Int64__$_$_$Int64(v.high >> 31,v.high >> b1 - 32); - a1 = this6; - } - var b_high1 = 0; - var b_low1 = 15; - var this_high1 = a1.high & b_high1; - var this_low1 = a1.low & b_low1; - sr.m = this_low1; - var b2 = 52; - b2 &= 63; - var a2; - if(b2 == 0) { - var this7 = new haxe__$Int64__$_$_$Int64(v.high,v.low); - a2 = this7; - } else if(b2 < 32) { - var this8 = new haxe__$Int64__$_$_$Int64(v.high >> b2,v.high << 32 - b2 | v.low >>> b2); - a2 = this8; - } else { - var this9 = new haxe__$Int64__$_$_$Int64(v.high >> 31,v.high >> b2 - 32); - a2 = this9; - } - var b_high2 = 0; - var b_low2 = 15; - var this_high2 = a2.high & b_high2; - var this_low2 = a2.low & b_low2; - sr.w = this_low2; - var b3 = 48; - b3 &= 63; - var a3; - if(b3 == 0) { - var this10 = new haxe__$Int64__$_$_$Int64(v.high,v.low); - a3 = this10; - } else if(b3 < 32) { - var this11 = new haxe__$Int64__$_$_$Int64(v.high >> b3,v.high << 32 - b3 | v.low >>> b3); - a3 = this11; - } else { - var this12 = new haxe__$Int64__$_$_$Int64(v.high >> 31,v.high >> b3 - 32); - a3 = this12; - } - var b_high3 = 0; - var b_low3 = 15; - var this_high3 = a3.high & b_high3; - var this_low3 = a3.low & b_low3; - sr.s = this_low3; - var b4 = 44; - b4 &= 63; - var a4; - if(b4 == 0) { - var this13 = new haxe__$Int64__$_$_$Int64(v.high,v.low); - a4 = this13; - } else if(b4 < 32) { - var this14 = new haxe__$Int64__$_$_$Int64(v.high >> b4,v.high << 32 - b4 | v.low >>> b4); - a4 = this14; - } else { - var this15 = new haxe__$Int64__$_$_$Int64(v.high >> 31,v.high >> b4 - 32); - a4 = this15; - } - var b_high4 = 0; - var b_low4 = 15; - var this_high4 = a4.high & b_high4; - var this_low4 = a4.low & b_low4; - sr.d = this_low4; - var b5 = 40; - b5 &= 63; - var a5; - if(b5 == 0) { - var this16 = new haxe__$Int64__$_$_$Int64(v.high,v.low); - a5 = this16; - } else if(b5 < 32) { - var this17 = new haxe__$Int64__$_$_$Int64(v.high >> b5,v.high << 32 - b5 | v.low >>> b5); - a5 = this17; - } else { - var this18 = new haxe__$Int64__$_$_$Int64(v.high >> 31,v.high >> b5 - 32); - a5 = this18; - } - var b_high5 = 0; - var b_low5 = 15; - var this_high5 = a5.high & b_high5; - var this_low5 = a5.low & b_low5; - sr.t = this_low5; - var b6 = 32; - b6 &= 63; - var a6; - if(b6 == 0) { - var this19 = new haxe__$Int64__$_$_$Int64(v.high,v.low); - a6 = this19; - } else if(b6 < 32) { - var this20 = new haxe__$Int64__$_$_$Int64(v.high >> b6,v.high << 32 - b6 | v.low >>> b6); - a6 = this20; - } else { - var this21 = new haxe__$Int64__$_$_$Int64(v.high >> 31,v.high >> b6 - 32); - a6 = this21; - } - var b_high6 = 0; - var b_low6 = 15; - var this_high6 = a6.high & b_high6; - var this_low6 = a6.low & b_low6; - sr.type = this_low6; - var b7 = 16; - b7 &= 63; - var a7; - if(b7 == 0) { - var this22 = new haxe__$Int64__$_$_$Int64(v.high,v.low); - a7 = this22; - } else if(b7 < 32) { - var this23 = new haxe__$Int64__$_$_$Int64(v.high >> b7,v.high << 32 - b7 | v.low >>> b7); - a7 = this23; - } else { - var this24 = new haxe__$Int64__$_$_$Int64(v.high >> 31,v.high >> b7 - 32); - a7 = this24; - } - var b_high7 = 0; - var b_low7 = 255; - var this_high7 = a7.high & b_high7; - var this_low7 = a7.low & b_low7; - sr.b = this_low7; - var b_high8 = 0; - var b_low8 = 65535; - var this_high8 = v.high & b_high8; - var this_low8 = v.low & b_low8; - sr.n = this_low8; - return sr; -}; -openfl__$internal_formats_agal__$AGALConverter_SamplerRegister.prototype = { - b: null - ,d: null - ,f: null - ,m: null - ,n: null - ,programType: null - ,s: null - ,t: null - ,type: null - ,w: null - ,toGLSL: function() { - var str = openfl__$internal_formats_agal_AGALConverter.prefixFromType(this.type,this.programType) + this.n; - return str; - } - ,toSamplerState: function() { - var wrap; - var filter; - var mipfilter; - switch(this.f) { - case 0: - filter = 5; - break; - case 1: - filter = 4; - break; - default: - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError()); - } - switch(this.m) { - case 0: - mipfilter = 2; - break; - case 1: - mipfilter = 1; - break; - case 2: - mipfilter = 0; - break; - default: - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError()); - } - switch(this.w) { - case 0: - wrap = 0; - break; - case 1: - wrap = 2; - break; - default: - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError()); - } - var ignoreSampler = (this.s & 4) == 4; - var centroid = (this.s & 1) == 1; - var textureAlpha = this.t == 2; - var lodBias = (this.b << 24 >> 24) / 8.0; - return new openfl__$internal_renderer_SamplerState(wrap,filter,mipfilter,lodBias,ignoreSampler,centroid,textureAlpha); - } - ,__class__: openfl__$internal_formats_agal__$AGALConverter_SamplerRegister -}; -var openfl__$internal_formats_agal__$AGALConverter_SourceRegister = function() { -}; -$hxClasses["openfl._internal.formats.agal._AGALConverter.SourceRegister"] = openfl__$internal_formats_agal__$AGALConverter_SourceRegister; -openfl__$internal_formats_agal__$AGALConverter_SourceRegister.__name__ = "openfl._internal.formats.agal._AGALConverter.SourceRegister"; -openfl__$internal_formats_agal__$AGALConverter_SourceRegister.parse = function(v,programType,sourceMask) { - var sr = new openfl__$internal_formats_agal__$AGALConverter_SourceRegister(); - sr.programType = programType; - var b = 63; - b &= 63; - var a; - if(b == 0) { - var this1 = new haxe__$Int64__$_$_$Int64(v.high,v.low); - a = this1; - } else if(b < 32) { - var this2 = new haxe__$Int64__$_$_$Int64(v.high >> b,v.high << 32 - b | v.low >>> b); - a = this2; - } else { - var this3 = new haxe__$Int64__$_$_$Int64(v.high >> 31,v.high >> b - 32); - a = this3; - } - var b_high = 0; - var b_low = 1; - var this_high = a.high & b_high; - var this_low = a.low & b_low; - sr.d = this_low; - var b1 = 48; - b1 &= 63; - var a1; - if(b1 == 0) { - var this4 = new haxe__$Int64__$_$_$Int64(v.high,v.low); - a1 = this4; - } else if(b1 < 32) { - var this5 = new haxe__$Int64__$_$_$Int64(v.high >> b1,v.high << 32 - b1 | v.low >>> b1); - a1 = this5; - } else { - var this6 = new haxe__$Int64__$_$_$Int64(v.high >> 31,v.high >> b1 - 32); - a1 = this6; - } - var b_high1 = 0; - var b_low1 = 3; - var this_high1 = a1.high & b_high1; - var this_low1 = a1.low & b_low1; - sr.q = this_low1; - var b2 = 40; - b2 &= 63; - var a2; - if(b2 == 0) { - var this7 = new haxe__$Int64__$_$_$Int64(v.high,v.low); - a2 = this7; - } else if(b2 < 32) { - var this8 = new haxe__$Int64__$_$_$Int64(v.high >> b2,v.high << 32 - b2 | v.low >>> b2); - a2 = this8; - } else { - var this9 = new haxe__$Int64__$_$_$Int64(v.high >> 31,v.high >> b2 - 32); - a2 = this9; - } - var b_high2 = 0; - var b_low2 = 15; - var this_high2 = a2.high & b_high2; - var this_low2 = a2.low & b_low2; - sr.itype = this_low2; - var b3 = 32; - b3 &= 63; - var a3; - if(b3 == 0) { - var this10 = new haxe__$Int64__$_$_$Int64(v.high,v.low); - a3 = this10; - } else if(b3 < 32) { - var this11 = new haxe__$Int64__$_$_$Int64(v.high >> b3,v.high << 32 - b3 | v.low >>> b3); - a3 = this11; - } else { - var this12 = new haxe__$Int64__$_$_$Int64(v.high >> 31,v.high >> b3 - 32); - a3 = this12; - } - var b_high3 = 0; - var b_low3 = 15; - var this_high3 = a3.high & b_high3; - var this_low3 = a3.low & b_low3; - sr.type = this_low3; - var b4 = 24; - b4 &= 63; - var a4; - if(b4 == 0) { - var this13 = new haxe__$Int64__$_$_$Int64(v.high,v.low); - a4 = this13; - } else if(b4 < 32) { - var this14 = new haxe__$Int64__$_$_$Int64(v.high >> b4,v.high << 32 - b4 | v.low >>> b4); - a4 = this14; - } else { - var this15 = new haxe__$Int64__$_$_$Int64(v.high >> 31,v.high >> b4 - 32); - a4 = this15; - } - var b_high4 = 0; - var b_low4 = 255; - var this_high4 = a4.high & b_high4; - var this_low4 = a4.low & b_low4; - sr.s = this_low4; - var b5 = 16; - b5 &= 63; - var a5; - if(b5 == 0) { - var this16 = new haxe__$Int64__$_$_$Int64(v.high,v.low); - a5 = this16; - } else if(b5 < 32) { - var this17 = new haxe__$Int64__$_$_$Int64(v.high >> b5,v.high << 32 - b5 | v.low >>> b5); - a5 = this17; - } else { - var this18 = new haxe__$Int64__$_$_$Int64(v.high >> 31,v.high >> b5 - 32); - a5 = this18; - } - var b_high5 = 0; - var b_low5 = 255; - var this_high5 = a5.high & b_high5; - var this_low5 = a5.low & b_low5; - sr.o = this_low5; - var b_high6 = 0; - var b_low6 = 65535; - var this_high6 = v.high & b_high6; - var this_low6 = v.low & b_low6; - sr.n = this_low6; - sr.sourceMask = sourceMask; - return sr; -}; -openfl__$internal_formats_agal__$AGALConverter_SourceRegister.prototype = { - d: null - ,itype: null - ,n: null - ,o: null - ,programType: null - ,q: null - ,s: null - ,sourceMask: null - ,type: null - ,toGLSL: function(emitSwizzle,offset) { - if(offset == null) { - offset = 0; - } - if(emitSwizzle == null) { - emitSwizzle = true; - } - if(this.type == 3) { - if(this.programType == openfl__$internal_formats_agal__$AGALConverter_ProgramType.VERTEX) { - return "gl_Position"; - } else { - return "gl_FragColor"; - } - } - var fullxyzw = this.s == 228 && this.sourceMask == 15; - var swizzle = ""; - if(this.type != 5 && !fullxyzw) { - if((this.sourceMask & 1) != 0) { - switch(this.s & 3) { - case 0: - swizzle += "x"; - break; - case 1: - swizzle += "y"; - break; - case 2: - swizzle += "z"; - break; - case 3: - swizzle += "w"; - break; - } - } - if((this.sourceMask & 2) != 0) { - switch(this.s >> 2 & 3) { - case 0: - swizzle += "x"; - break; - case 1: - swizzle += "y"; - break; - case 2: - swizzle += "z"; - break; - case 3: - swizzle += "w"; - break; - } - } - if((this.sourceMask & 4) != 0) { - switch(this.s >> 4 & 3) { - case 0: - swizzle += "x"; - break; - case 1: - swizzle += "y"; - break; - case 2: - swizzle += "z"; - break; - case 3: - swizzle += "w"; - break; - } - } - if((this.sourceMask & 8) != 0) { - switch(this.s >> 6 & 3) { - case 0: - swizzle += "x"; - break; - case 1: - swizzle += "y"; - break; - case 2: - swizzle += "z"; - break; - case 3: - swizzle += "w"; - break; - } - } - } - var str = openfl__$internal_formats_agal_AGALConverter.prefixFromType(this.type,this.programType); - if(this.d == 0) { - str += this.n + offset; - } else { - str += this.o; - var indexComponent = ""; - switch(this.q) { - case 0: - indexComponent = "x"; - break; - case 1: - indexComponent = "y"; - break; - case 2: - indexComponent = "z"; - break; - case 3: - indexComponent = "w"; - break; - } - var indexRegister = openfl__$internal_formats_agal_AGALConverter.prefixFromType(this.itype,this.programType) + this.n + "." + indexComponent; - str += "[ int(" + indexRegister + ") +" + offset + "]"; - } - if(emitSwizzle && swizzle != "") { - str += "." + swizzle; - } - return str; - } - ,__class__: openfl__$internal_formats_agal__$AGALConverter_SourceRegister -}; -var openfl__$internal_formats_atf_ATFReader = function(data,byteArrayOffset) { - this.version = 0; - data.position = byteArrayOffset; - var signature = data.readUTFBytes(3); - data.position = byteArrayOffset; - if(signature != "ATF") { - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError("ATF signature not found")); - } - var length = 0; - if(data.b[byteArrayOffset + 6] == 255) { - this.version = data.b[byteArrayOffset + 7]; - data.position = byteArrayOffset + 8; - length = this.__readUInt32(data); - } else { - this.version = 0; - data.position = byteArrayOffset + 3; - length = this.__readUInt24(data); - } - if(_$UInt_UInt_$Impl_$.gt(js_Boot.__cast(byteArrayOffset + length , Int),openfl_utils__$ByteArray_ByteArray_$Impl_$.get_length(data))) { - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError("ATF length exceeds byte array length")); - } - this.data = data; -}; -$hxClasses["openfl._internal.formats.atf.ATFReader"] = openfl__$internal_formats_atf_ATFReader; -openfl__$internal_formats_atf_ATFReader.__name__ = "openfl._internal.formats.atf.ATFReader"; -openfl__$internal_formats_atf_ATFReader.prototype = { - atfFormat: null - ,cubeMap: null - ,data: null - ,height: null - ,mipCount: null - ,version: null - ,width: null - ,readHeader: function(__width,__height,cubeMap) { - var tdata = this.data.readUnsignedByte(); - var type = tdata >>> 7; - if(!cubeMap && type != 0) { - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError("ATF Cube map not expected")); - } - if(cubeMap && type != 1) { - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError("ATF Cube map expected")); - } - this.cubeMap = cubeMap; - this.atfFormat = tdata & 127; - if(this.atfFormat != 3 && this.atfFormat != 5) { - lime_utils_Log.warn("Only ATF block compressed textures without JPEG-XR+LZMA are supported",{ fileName : "openfl/_internal/formats/atf/ATFReader.hx", lineNumber : 96, className : "openfl._internal.formats.atf.ATFReader", methodName : "readHeader"}); - } - this.width = 1 << this.data.readUnsignedByte(); - this.height = 1 << this.data.readUnsignedByte(); - if(this.width != __width || this.height != __height) { - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError("ATF width and height dont match")); - } - this.mipCount = this.data.readUnsignedByte(); - return this.atfFormat == 5; - } - ,readTextures: function(uploadCallback) { - var gpuFormats = this.version < 3 ? 3 : 4; - var sideCount = this.cubeMap ? 6 : 1; - var _g = 0; - var _g1 = sideCount; - while(_g < _g1) { - var side = _g++; - var _g2 = 0; - var _g11 = this.mipCount; - while(_g2 < _g11) { - var level = _g2++; - var _g3 = 0; - var _g12 = gpuFormats; - while(_g3 < _g12) { - var gpuFormat = _g3++; - var blockLength = this.version == 0 ? this.__readUInt24(this.data) : this.__readUInt32(this.data); - if(_$UInt_UInt_$Impl_$.gt(this.data.position + blockLength,openfl_utils__$ByteArray_ByteArray_$Impl_$.get_length(this.data))) { - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError("Block length exceeds ATF file length")); - } - if(_$UInt_UInt_$Impl_$.gt(blockLength,0)) { - var bytes = new haxe_io_Bytes(new ArrayBuffer(blockLength)); - var this1 = this.data; - var bytes1 = openfl_utils__$ByteArray_ByteArray_$Impl_$.fromBytes(bytes); - var offset = 0; - var length = blockLength; - if(length == null) { - length = 0; - } - if(offset == null) { - offset = 0; - } - this1.readBytes(bytes1,offset,length); - uploadCallback(side,level,gpuFormat,this.width >> level,this.height >> level,blockLength,bytes); - } - } - } - } - } - ,__readUInt24: function(data) { - var value = data.readUnsignedByte() << 16; - value = value | data.readUnsignedByte() << 8; - value = value | data.readUnsignedByte(); - return value; - } - ,__readUInt32: function(data) { - var value = data.readUnsignedByte() << 24; - value = value | data.readUnsignedByte() << 16; - value = value | data.readUnsignedByte() << 8; - value = value | data.readUnsignedByte(); - return value; - } - ,__class__: openfl__$internal_formats_atf_ATFReader -}; -var openfl__$internal_formats_html_HTMLParser = function() { }; -$hxClasses["openfl._internal.formats.html.HTMLParser"] = openfl__$internal_formats_html_HTMLParser; -openfl__$internal_formats_html_HTMLParser.__name__ = "openfl._internal.formats.html.HTMLParser"; -openfl__$internal_formats_html_HTMLParser.parse = function(value,textFormat,textFormatRanges) { - value = value.replace(openfl__$internal_formats_html_HTMLParser.__regexBreakTag.r,"\n"); - value = value.replace(openfl__$internal_formats_html_HTMLParser.__regexEntities[0].r,"\""); - value = value.replace(openfl__$internal_formats_html_HTMLParser.__regexEntities[1].r,"'"); - value = value.replace(openfl__$internal_formats_html_HTMLParser.__regexEntities[2].r,"&"); - value = value.replace(openfl__$internal_formats_html_HTMLParser.__regexEntities[5].r," "); - var segments = value.split("<"); - if(segments.length == 1) { - value = value.replace(openfl__$internal_formats_html_HTMLParser.__regexHTMLTag.r,""); - if(textFormatRanges.get_length() > 1) { - textFormatRanges.splice(1,textFormatRanges.get_length() - 1); - } - value = value.replace(openfl__$internal_formats_html_HTMLParser.__regexEntities[3].r,"<"); - value = value.replace(openfl__$internal_formats_html_HTMLParser.__regexEntities[4].r,">"); - var range = textFormatRanges.get(0); - range.format = textFormat; - range.start = 0; - range.end = value.length; - return value; - } else { - textFormatRanges.splice(0,textFormatRanges.get_length()); - value = ""; - var segment; - var _g = 0; - var _g1 = segments.length; - while(_g < _g1) { - var i = _g++; - segment = segments[i]; - segment = segment.replace(openfl__$internal_formats_html_HTMLParser.__regexEntities[3].r,"<"); - segment = segment.replace(openfl__$internal_formats_html_HTMLParser.__regexEntities[4].r,">"); - segments[i] = segment; - } - var formatStack = [textFormat.clone()]; - var tagStack = []; - var sub; - var noLineBreak = false; - var _g2 = 0; - while(_g2 < segments.length) { - var segment1 = segments[_g2]; - ++_g2; - if(segment1 == "") { - continue; - } - var isClosingTag = HxOverrides.substr(segment1,0,1) == "/"; - var tagEndIndex = segment1.indexOf(">"); - var start = tagEndIndex + 1; - var spaceIndex = segment1.indexOf(" "); - var tagName = segment1.substring(isClosingTag ? 1 : 0,spaceIndex > -1 && spaceIndex < tagEndIndex ? spaceIndex : tagEndIndex); - var format; - if(isClosingTag) { - if(tagStack.length == 0 || tagName.toLowerCase() != tagStack[tagStack.length - 1].toLowerCase()) { - lime_utils_Log.info("Invalid HTML, unexpected closing tag ignored: " + tagName,{ fileName : "openfl/_internal/formats/html/HTMLParser.hx", lineNumber : 97, className : "openfl._internal.formats.html.HTMLParser", methodName : "parse"}); - continue; - } - tagStack.pop(); - formatStack.pop(); - format = formatStack[formatStack.length - 1].clone(); - if(tagName.toLowerCase() == "p" && textFormatRanges.get_length() > 0) { - value += "\n"; - noLineBreak = true; - var tmp = textFormatRanges.get(textFormatRanges.get_length() - 1); - tmp.end++; - } - if(start < segment1.length) { - sub = HxOverrides.substr(segment1,start,null); - textFormatRanges.push(new openfl__$internal_text_TextFormatRange(format,value.length,value.length + sub.length)); - value += sub; - noLineBreak = false; - } - } else { - format = formatStack[formatStack.length - 1].clone(); - if(tagEndIndex > -1) { - switch(tagName.toLowerCase()) { - case "a": - if(openfl__$internal_formats_html_HTMLParser.__regexHref.match(segment1)) { - format.url = openfl__$internal_formats_html_HTMLParser.__getAttributeMatch(openfl__$internal_formats_html_HTMLParser.__regexHref); - } - break; - case "b": - format.bold = true; - break; - case "em":case "i": - format.italic = true; - break; - case "font": - if(openfl__$internal_formats_html_HTMLParser.__regexFace.match(segment1)) { - format.font = openfl__$internal_formats_html_HTMLParser.__getAttributeMatch(openfl__$internal_formats_html_HTMLParser.__regexFace); - } - if(openfl__$internal_formats_html_HTMLParser.__regexColor.match(segment1)) { - format.color = Std.parseInt("0x" + openfl__$internal_formats_html_HTMLParser.__getAttributeMatch(openfl__$internal_formats_html_HTMLParser.__regexColor)); - } - if(openfl__$internal_formats_html_HTMLParser.__regexSize.match(segment1)) { - var sizeAttr = openfl__$internal_formats_html_HTMLParser.__getAttributeMatch(openfl__$internal_formats_html_HTMLParser.__regexSize); - var firstChar = HxOverrides.cca(sizeAttr,0); - if(firstChar == 43 || firstChar == 45) { - var parentFormat = formatStack.length >= 2 ? formatStack[formatStack.length - 2] : textFormat; - format.size = parentFormat.size + Std.parseInt(sizeAttr); - } else { - format.size = Std.parseInt(sizeAttr); - } - } - break; - case "p": - if(textFormatRanges.get_length() > 0 && !noLineBreak) { - value += "\n"; - } - if(openfl__$internal_formats_html_HTMLParser.__regexAlign.match(segment1)) { - var align = openfl__$internal_formats_html_HTMLParser.__getAttributeMatch(openfl__$internal_formats_html_HTMLParser.__regexAlign).toLowerCase(); - format.align = openfl_text__$TextFormatAlign_TextFormatAlign_$Impl_$.fromString(align); - } - break; - case "textformat": - if(openfl__$internal_formats_html_HTMLParser.__regexBlockIndent.match(segment1)) { - format.blockIndent = Std.parseInt(openfl__$internal_formats_html_HTMLParser.__getAttributeMatch(openfl__$internal_formats_html_HTMLParser.__regexBlockIndent)); - } - if(openfl__$internal_formats_html_HTMLParser.__regexIndent.match(segment1)) { - format.indent = Std.parseInt(openfl__$internal_formats_html_HTMLParser.__getAttributeMatch(openfl__$internal_formats_html_HTMLParser.__regexIndent)); - } - if(openfl__$internal_formats_html_HTMLParser.__regexLeading.match(segment1)) { - format.leading = Std.parseInt(openfl__$internal_formats_html_HTMLParser.__getAttributeMatch(openfl__$internal_formats_html_HTMLParser.__regexLeading)); - } - if(openfl__$internal_formats_html_HTMLParser.__regexLeftMargin.match(segment1)) { - format.leftMargin = Std.parseInt(openfl__$internal_formats_html_HTMLParser.__getAttributeMatch(openfl__$internal_formats_html_HTMLParser.__regexLeftMargin)); - } - if(openfl__$internal_formats_html_HTMLParser.__regexRightMargin.match(segment1)) { - format.rightMargin = Std.parseInt(openfl__$internal_formats_html_HTMLParser.__getAttributeMatch(openfl__$internal_formats_html_HTMLParser.__regexRightMargin)); - } - if(openfl__$internal_formats_html_HTMLParser.__regexTabStops.match(segment1)) { - var values = openfl__$internal_formats_html_HTMLParser.__getAttributeMatch(openfl__$internal_formats_html_HTMLParser.__regexTabStops).split(" "); - var tabStops = []; - var _g21 = 0; - while(_g21 < values.length) { - var stop = values[_g21]; - ++_g21; - tabStops.push(Std.parseInt(stop)); - } - format.tabStops = tabStops; - } - break; - case "u": - format.underline = true; - break; - } - formatStack.push(format); - tagStack.push(tagName); - if(start < segment1.length) { - sub = segment1.substring(start); - textFormatRanges.push(new openfl__$internal_text_TextFormatRange(format,value.length,value.length + sub.length)); - value += sub; - noLineBreak = false; - } else if(textFormatRanges.get_length() > 0) { - var tmp1 = textFormatRanges.get(textFormatRanges.get_length() - 1); - tmp1.end++; - } - } else { - textFormatRanges.push(new openfl__$internal_text_TextFormatRange(format,value.length,value.length + segment1.length)); - value += segment1; - noLineBreak = false; - } - } - } - if(textFormatRanges.get_length() == 0) { - textFormatRanges.push(new openfl__$internal_text_TextFormatRange(formatStack[0],0,0)); - } - } - return value; -}; -openfl__$internal_formats_html_HTMLParser.__getAttributeMatch = function(regex) { - if(regex.matched(2) != null) { - return regex.matched(2); - } else { - return regex.matched(3); - } -}; -var openfl__$internal_formats_swf_FilterType = $hxEnums["openfl._internal.formats.swf.FilterType"] = { __ename__ : "openfl._internal.formats.swf.FilterType", __constructs__ : ["BlurFilter","ColorMatrixFilter","DropShadowFilter","GlowFilter"] - ,BlurFilter: ($_=function(blurX,blurY,quality) { return {_hx_index:0,blurX:blurX,blurY:blurY,quality:quality,__enum__:"openfl._internal.formats.swf.FilterType",toString:$estr}; },$_.__params__ = ["blurX","blurY","quality"],$_) - ,ColorMatrixFilter: ($_=function(matrix) { return {_hx_index:1,matrix:matrix,__enum__:"openfl._internal.formats.swf.FilterType",toString:$estr}; },$_.__params__ = ["matrix"],$_) - ,DropShadowFilter: ($_=function(distance,angle,color,alpha,blurX,blurY,strength,quality,inner,knockout,hideObject) { return {_hx_index:2,distance:distance,angle:angle,color:color,alpha:alpha,blurX:blurX,blurY:blurY,strength:strength,quality:quality,inner:inner,knockout:knockout,hideObject:hideObject,__enum__:"openfl._internal.formats.swf.FilterType",toString:$estr}; },$_.__params__ = ["distance","angle","color","alpha","blurX","blurY","strength","quality","inner","knockout","hideObject"],$_) - ,GlowFilter: ($_=function(color,alpha,blurX,blurY,strength,quality,inner,knockout) { return {_hx_index:3,color:color,alpha:alpha,blurX:blurX,blurY:blurY,strength:strength,quality:quality,inner:inner,knockout:knockout,__enum__:"openfl._internal.formats.swf.FilterType",toString:$estr}; },$_.__params__ = ["color","alpha","blurX","blurY","strength","quality","inner","knockout"],$_) -}; -var openfl__$internal_formats_swf_SWFLite = function() { - this.symbols = new haxe_ds_IntMap(); - this.symbolsByClassName = new haxe_ds_StringMap(); -}; -$hxClasses["openfl._internal.formats.swf.SWFLite"] = openfl__$internal_formats_swf_SWFLite; -openfl__$internal_formats_swf_SWFLite.__name__ = "openfl._internal.formats.swf.SWFLite"; -openfl__$internal_formats_swf_SWFLite.resolveClass = function(name) { - var value = $hxClasses[name]; - if(value == null) { - var name1 = StringTools.replace(name,"openfl._legacy","openfl"); - value = $hxClasses[name1]; - } - if(value == null) { - var name2 = StringTools.replace(name,"openfl._v2","openfl"); - value = $hxClasses[name2]; - } - return value; -}; -openfl__$internal_formats_swf_SWFLite.resolveEnum = function(name) { - var value = $hxEnums[name]; - if(value == null) { - var name1 = StringTools.replace(name,"openfl._legacy","openfl"); - value = $hxEnums[name1]; - } - if(value == null) { - var name2 = StringTools.replace(name,"openfl._v2","openfl"); - value = $hxEnums[name2]; - } - return value; -}; -openfl__$internal_formats_swf_SWFLite.unserialize = function(data) { - if(data == null) { - return null; - } - var unserializer = new haxe_Unserializer(data); - unserializer.setResolver({ resolveClass : openfl__$internal_formats_swf_SWFLite.resolveClass, resolveEnum : openfl__$internal_formats_swf_SWFLite.resolveEnum}); - var swfLite = unserializer.unserialize(); - if(swfLite != null) { - swfLite.__init(); - } - return swfLite; -}; -openfl__$internal_formats_swf_SWFLite.prototype = { - frameRate: null - ,library: null - ,root: null - ,symbols: null - ,symbolsByClassName: null - ,createButton: function(className) { - return null; - } - ,createMovieClip: function(className) { - if(className == null) { - className = ""; - } - if(className == "") { - return this.root.__createObject(this); - } else { - var _this = this.symbolsByClassName; - var symbol = __map_reserved[className] != null ? _this.getReserved(className) : _this.h[className]; - if(symbol != null) { - if(((symbol) instanceof openfl__$internal_symbols_SpriteSymbol)) { - return (js_Boot.__cast(symbol , openfl__$internal_symbols_SpriteSymbol)).__createObject(this); - } - } - } - return null; - } - ,getBitmapData: function(className) { - var _this = this.symbolsByClassName; - var symbol = __map_reserved[className] != null ? _this.getReserved(className) : _this.h[className]; - if(symbol != null) { - if(((symbol) instanceof openfl__$internal_symbols_BitmapSymbol)) { - var bitmap = symbol; - return openfl_utils_Assets.getBitmapData(bitmap.path); - } - } - return null; - } - ,hasSymbol: function(className) { - var _this = this.symbolsByClassName; - if(__map_reserved[className] != null) { - return _this.existsReserved(className); - } else { - return _this.h.hasOwnProperty(className); - } - } - ,serialize: function() { - var serializer = new haxe_Serializer(); - serializer.serialize(this); - return serializer.toString(); - } - ,__init: function() { - if(this.symbols == null) { - return; - } - if(this.symbolsByClassName == null) { - this.symbolsByClassName = new haxe_ds_StringMap(); - } - var symbol = this.symbols.iterator(); - while(symbol.hasNext()) { - var symbol1 = symbol.next(); - if(symbol1 == null || symbol1.className == null) { - continue; - } - var key = symbol1.className; - var _this = this.symbolsByClassName; - if(__map_reserved[key] != null) { - _this.setReserved(key,symbol1); - } else { - _this.h[key] = symbol1; - } - } - } - ,__class__: openfl__$internal_formats_swf_SWFLite -}; -var openfl_utils_AssetLibrary = function() { - lime_utils_AssetLibrary.call(this); -}; -$hxClasses["openfl.utils.AssetLibrary"] = openfl_utils_AssetLibrary; -openfl_utils_AssetLibrary.__name__ = "openfl.utils.AssetLibrary"; -openfl_utils_AssetLibrary.fromBytes = function(bytes,rootPath) { - return openfl_utils_AssetLibrary.fromManifest(lime_utils_AssetManifest.fromBytes(openfl_utils__$ByteArray_ByteArray_$Impl_$.toBytes(bytes),rootPath)); -}; -openfl_utils_AssetLibrary.fromFile = function(path,rootPath) { - return openfl_utils_AssetLibrary.fromManifest(lime_utils_AssetManifest.fromFile(path,rootPath)); -}; -openfl_utils_AssetLibrary.fromManifest = function(manifest) { - var library = lime_utils_AssetLibrary.fromManifest(manifest); - if(library != null) { - if(((library) instanceof openfl_utils_AssetLibrary)) { - return library; - } else { - var _library = new openfl_utils_AssetLibrary(); - _library.__proxy = library; - return _library; - } - } else { - return null; - } -}; -openfl_utils_AssetLibrary.loadFromBytes = function(bytes,rootPath) { - return lime_utils_AssetManifest.loadFromBytes(openfl_utils__$ByteArray_ByteArray_$Impl_$.toBytes(bytes),rootPath).then(function(manifest) { - return openfl_utils_AssetLibrary.loadFromManifest(manifest); - }); -}; -openfl_utils_AssetLibrary.loadFromFile = function(path,rootPath) { - return lime_utils_AssetManifest.loadFromFile(path,rootPath).then(function(manifest) { - return openfl_utils_AssetLibrary.loadFromManifest(manifest); - }); -}; -openfl_utils_AssetLibrary.loadFromManifest = function(manifest) { - var library = openfl_utils_AssetLibrary.fromManifest(manifest); - if(library != null) { - return library.load().then(function(library1) { - return lime_app_Future.withValue(library1); - }); - } else { - return lime_app_Future.withError("Could not load asset manifest"); - } -}; -openfl_utils_AssetLibrary.__super__ = lime_utils_AssetLibrary; -openfl_utils_AssetLibrary.prototype = $extend(lime_utils_AssetLibrary.prototype,{ - __proxy: null - ,exists: function(id,type) { - if(this.__proxy != null) { - return this.__proxy.exists(id,type); - } else { - return lime_utils_AssetLibrary.prototype.exists.call(this,id,type); - } - } - ,getAsset: function(id,type) { - if(this.__proxy != null) { - return this.__proxy.getAsset(id,type); - } else { - return lime_utils_AssetLibrary.prototype.getAsset.call(this,id,type); - } - } - ,getAudioBuffer: function(id) { - if(this.__proxy != null) { - return this.__proxy.getAudioBuffer(id); - } else { - return lime_utils_AssetLibrary.prototype.getAudioBuffer.call(this,id); - } - } - ,getBytes: function(id) { - if(this.__proxy != null) { - return this.__proxy.getBytes(id); - } else { - return lime_utils_AssetLibrary.prototype.getBytes.call(this,id); - } - } - ,getFont: function(id) { - if(this.__proxy != null) { - return this.__proxy.getFont(id); - } else { - return lime_utils_AssetLibrary.prototype.getFont.call(this,id); - } - } - ,getImage: function(id) { - if(this.__proxy != null) { - return this.__proxy.getImage(id); - } else { - return lime_utils_AssetLibrary.prototype.getImage.call(this,id); - } - } - ,getMovieClip: function(id) { - return null; - } - ,getPath: function(id) { - if(this.__proxy != null) { - return this.__proxy.getPath(id); - } else { - return lime_utils_AssetLibrary.prototype.getPath.call(this,id); - } - } - ,getText: function(id) { - if(this.__proxy != null) { - return this.__proxy.getText(id); - } else { - return lime_utils_AssetLibrary.prototype.getText.call(this,id); - } - } - ,isLocal: function(id,type) { - if(this.__proxy != null) { - return this.__proxy.isLocal(id,type); - } else { - return lime_utils_AssetLibrary.prototype.isLocal.call(this,id,type); - } - } - ,list: function(type) { - if(this.__proxy != null) { - return this.__proxy.list(type); - } else { - return lime_utils_AssetLibrary.prototype.list.call(this,type); - } - } - ,loadAsset: function(id,type) { - if(this.__proxy != null) { - return this.__proxy.loadAsset(id,type); - } else { - return lime_utils_AssetLibrary.prototype.loadAsset.call(this,id,type); - } - } - ,load: function() { - if(this.__proxy != null) { - return this.__proxy.load(); - } else { - return lime_utils_AssetLibrary.prototype.load.call(this); - } - } - ,loadAudioBuffer: function(id) { - if(this.__proxy != null) { - return this.__proxy.loadAudioBuffer(id); - } else { - return lime_utils_AssetLibrary.prototype.loadAudioBuffer.call(this,id); - } - } - ,loadBytes: function(id) { - if(this.__proxy != null) { - return this.__proxy.loadBytes(id); - } else { - return lime_utils_AssetLibrary.prototype.loadBytes.call(this,id); - } - } - ,loadFont: function(id) { - if(this.__proxy != null) { - return this.__proxy.loadFont(id); - } else { - return lime_utils_AssetLibrary.prototype.loadFont.call(this,id); - } - } - ,loadImage: function(id) { - if(this.__proxy != null) { - return this.__proxy.loadImage(id); - } else { - return lime_utils_AssetLibrary.prototype.loadImage.call(this,id); - } - } - ,loadMovieClip: function(id) { - return lime_app_Future.withValue(this.getMovieClip(id)); - } - ,loadText: function(id) { - if(this.__proxy != null) { - return this.__proxy.loadText(id); - } else { - return lime_utils_AssetLibrary.prototype.loadText.call(this,id); - } - } - ,unload: function() { - if(this.__proxy != null) { - this.__proxy.unload(); - return; - } else { - lime_utils_AssetLibrary.prototype.unload.call(this); - return; - } - } - ,__class__: openfl_utils_AssetLibrary -}); -var openfl__$internal_formats_swf_SWFLiteLibrary = function(id,uuid) { - openfl_utils_AssetLibrary.call(this); - this.id = id; - this.instanceID = uuid != null ? uuid : id; - this.alphaCheck = new haxe_ds_StringMap(); - this.imageClassNames = new haxe_ds_StringMap(); - this.rootPath = ""; -}; -$hxClasses["openfl._internal.formats.swf.SWFLiteLibrary"] = openfl__$internal_formats_swf_SWFLiteLibrary; -openfl__$internal_formats_swf_SWFLiteLibrary.__name__ = "openfl._internal.formats.swf.SWFLiteLibrary"; -openfl__$internal_formats_swf_SWFLiteLibrary.__super__ = openfl_utils_AssetLibrary; -openfl__$internal_formats_swf_SWFLiteLibrary.prototype = $extend(openfl_utils_AssetLibrary.prototype,{ - alphaCheck: null - ,id: null - ,imageClassNames: null - ,instanceID: null - ,preloading: null - ,rootPath: null - ,swf: null - ,exists: function(id,type) { - if(this.swf == null) { - return false; - } - if(id == "" && type == "MOVIE_CLIP") { - return true; - } - if(type == "IMAGE" || type == "MOVIE_CLIP") { - if(this.swf != null) { - return this.swf.hasSymbol(id); - } else { - return false; - } - } - return false; - } - ,getImage: function(id) { - var _this = this.imageClassNames; - if(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id)) { - var _this1 = this.imageClassNames; - id = __map_reserved[id] != null ? _this1.getReserved(id) : _this1.h[id]; - } - var _this2 = this.alphaCheck; - if(!(__map_reserved[id] != null ? _this2.existsReserved(id) : _this2.h.hasOwnProperty(id))) { - var symbol = this.swf.symbols.iterator(); - while(symbol.hasNext()) { - var symbol1 = symbol.next(); - if(((symbol1) instanceof openfl__$internal_symbols_BitmapSymbol) && (js_Boot.__cast(symbol1 , openfl__$internal_symbols_BitmapSymbol)).path == id) { - var bitmapSymbol = symbol1; - if(bitmapSymbol.alpha != null) { - var image = openfl_utils_AssetLibrary.prototype.getImage.call(this,id); - var alpha = openfl_utils_AssetLibrary.prototype.getImage.call(this,bitmapSymbol.alpha); - this.__copyChannel(image,alpha); - var _this3 = this.cachedImages; - if(__map_reserved[id] != null) { - _this3.setReserved(id,image); - } else { - _this3.h[id] = image; - } - this.cachedImages.remove(bitmapSymbol.alpha); - var _this4 = this.alphaCheck; - if(__map_reserved[id] != null) { - _this4.setReserved(id,true); - } else { - _this4.h[id] = true; - } - return image; - } - } - } - var _this5 = this.alphaCheck; - if(__map_reserved[id] != null) { - _this5.setReserved(id,true); - } else { - _this5.h[id] = true; - } - } - return openfl_utils_AssetLibrary.prototype.getImage.call(this,id); - } - ,getMovieClip: function(id) { - if(this.swf != null) { - return this.swf.createMovieClip(id); - } else { - return null; - } - } - ,isLocal: function(id,type) { - return true; - } - ,load: function() { - var _gthis = this; - if(this.id != null) { - var key = this.id; - var _this = this.preload; - if(__map_reserved[key] != null) { - _this.setReserved(key,true); - } else { - _this.h[key] = true; - } - } - var promise = new lime_app_Promise(); - this.preloading = true; - var onComplete = function(data) { - var key1 = _gthis.id; - var _this1 = _gthis.cachedText; - if(__map_reserved[key1] != null) { - _this1.setReserved(key1,data); - } else { - _this1.h[key1] = data; - } - _gthis.swf = openfl__$internal_formats_swf_SWFLite.unserialize(data); - _gthis.swf.library = _gthis; - var bitmapSymbol; - var symbol = _gthis.swf.symbols.iterator(); - while(symbol.hasNext()) { - var symbol1 = symbol.next(); - if(((symbol1) instanceof openfl__$internal_symbols_BitmapSymbol)) { - bitmapSymbol = symbol1; - if(bitmapSymbol.className != null) { - var key2 = bitmapSymbol.className; - var value = bitmapSymbol.path; - var _this2 = _gthis.imageClassNames; - if(__map_reserved[key2] != null) { - _this2.setReserved(key2,value); - } else { - _this2.h[key2] = value; - } - } - } - } - var key3 = _gthis.instanceID; - var value1 = _gthis.swf; - var _this3 = openfl__$internal_formats_swf_SWFLite.instances; - if(__map_reserved[key3] != null) { - _this3.setReserved(key3,value1); - } else { - _this3.h[key3] = value1; - } - _gthis.__load().onProgress($bind(promise,promise.progress)).onError($bind(promise,promise.error)).onComplete(function(_) { - _gthis.preloading = false; - promise.complete(_gthis); - }); - }; - if(openfl_utils_Assets.exists(this.id)) { - var id = this.paths.keys(); - while(id.hasNext()) { - var id1 = id.next(); - var _this4 = this.preload; - if(__map_reserved[id1] != null) { - _this4.setReserved(id1,true); - } else { - _this4.h[id1] = true; - } - } - this.loadText(this.id).onError($bind(promise,promise.error)).onComplete(onComplete); - } else { - var id2 = this.paths.keys(); - while(id2.hasNext()) { - var id3 = id2.next(); - var _this5 = this.preload; - if(__map_reserved[id3] != null) { - _this5.setReserved(id3,true); - } else { - _this5.h[id3] = true; - } - } - var path = null; - var key4 = this.id; - var _this6 = this.paths; - if(__map_reserved[key4] != null ? _this6.existsReserved(key4) : _this6.h.hasOwnProperty(key4)) { - var key5 = this.id; - var _this7 = this.paths; - path = __map_reserved[key5] != null ? _this7.getReserved(key5) : _this7.h[key5]; - } else { - path = this.rootPath != null && this.rootPath != "" ? this.rootPath + "/" + this.id : this.id; - } - var loader = new openfl_net_URLLoader(); - loader.addEventListener("complete",function(_1) { - onComplete(loader.data); - }); - loader.addEventListener("ioError",function(e) { - promise.error(e); - }); - loader.load(new openfl_net_URLRequest(path)); - } - return promise.future; - } - ,loadImage: function(id) { - var _gthis = this; - var _this = this.imageClassNames; - if(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id)) { - var _this1 = this.imageClassNames; - id = __map_reserved[id] != null ? _this1.getReserved(id) : _this1.h[id]; - } - var tmp; - if(!this.preloading) { - var _this2 = this.alphaCheck; - tmp = !(__map_reserved[id] != null ? _this2.existsReserved(id) : _this2.h.hasOwnProperty(id)); - } else { - tmp = false; - } - if(tmp) { - var symbol = this.swf.symbols.iterator(); - while(symbol.hasNext()) { - var symbol1 = symbol.next(); - if(((symbol1) instanceof openfl__$internal_symbols_BitmapSymbol) && (js_Boot.__cast(symbol1 , openfl__$internal_symbols_BitmapSymbol)).path == id) { - var bitmapSymbol = [symbol1]; - if(bitmapSymbol[0].alpha != null) { - var promise = [new lime_app_Promise()]; - this.__loadImage(id).onError(($_=promise[0],$bind($_,$_.error))).onComplete((function(promise1,bitmapSymbol1) { - return function(image) { - _gthis.__loadImage(bitmapSymbol1[0].alpha).onError(($_=promise1[0],$bind($_,$_.error))).onComplete((function(promise2,bitmapSymbol2) { - return function(alpha) { - _gthis.__copyChannel(image,alpha); - var _this3 = _gthis.cachedImages; - if(__map_reserved[id] != null) { - _this3.setReserved(id,image); - } else { - _this3.h[id] = image; - } - _gthis.cachedImages.remove(bitmapSymbol2[0].alpha); - var _this4 = _gthis.alphaCheck; - if(__map_reserved[id] != null) { - _this4.setReserved(id,true); - } else { - _this4.h[id] = true; - } - promise2[0].complete(image); - }; - })(promise1,bitmapSymbol1)); - }; - })(promise,bitmapSymbol)); - return promise[0].future; - } else { - var _this5 = this.alphaCheck; - if(__map_reserved[id] != null) { - _this5.setReserved(id,true); - } else { - _this5.h[id] = true; - } - } - } - } - } - return openfl_utils_AssetLibrary.prototype.loadImage.call(this,id); - } - ,unload: function() { - if(this.swf == null) { - return; - } - var tmp; - var key = this.instanceID; - var _this = openfl__$internal_formats_swf_SWFLite.instances; - if(__map_reserved[key] != null ? _this.existsReserved(key) : _this.h.hasOwnProperty(key)) { - var key1 = this.instanceID; - var _this1 = openfl__$internal_formats_swf_SWFLite.instances; - tmp = (__map_reserved[key1] != null ? _this1.getReserved(key1) : _this1.h[key1]) == this.swf; - } else { - tmp = false; - } - if(tmp) { - openfl__$internal_formats_swf_SWFLite.instances.remove(this.instanceID); - } - var bitmap; - var symbol = this.swf.symbols.iterator(); - while(symbol.hasNext()) { - var symbol1 = symbol.next(); - if(((symbol1) instanceof openfl__$internal_symbols_BitmapSymbol)) { - bitmap = symbol1; - openfl_utils_Assets.cache.removeBitmapData(bitmap.path); - } - } - } - ,__copyChannel: function(image,alpha) { - if(alpha != null) { - image.copyChannel(alpha,alpha.get_rect(),new lime_math_Vector2(),lime_graphics_ImageChannel.RED,lime_graphics_ImageChannel.ALPHA); - } - image.buffer.premultiplied = true; - image.set_premultiplied(false); - } - ,__fromManifest: function(manifest) { - this.rootPath = manifest.rootPath; - openfl_utils_AssetLibrary.prototype.__fromManifest.call(this,manifest); - this.bytesTotal = 0; - var id = this.paths.keys(); - while(id.hasNext()) { - var id1 = id.next(); - var _this = this.sizes; - this.bytesTotal += __map_reserved[id1] != null ? _this.getReserved(id1) : _this.h[id1]; - } - } - ,__load: function() { - return openfl_utils_AssetLibrary.prototype.load.call(this); - } - ,__loadImage: function(id) { - return openfl_utils_AssetLibrary.prototype.loadImage.call(this,id); - } - ,__class__: openfl__$internal_formats_swf_SWFLiteLibrary -}); -var openfl__$internal_formats_swf_ShapeCommand = $hxEnums["openfl._internal.formats.swf.ShapeCommand"] = { __ename__ : "openfl._internal.formats.swf.ShapeCommand", __constructs__ : ["BeginBitmapFill","BeginFill","BeginGradientFill","CurveTo","EndFill","LineStyle","LineTo","MoveTo"] - ,BeginBitmapFill: ($_=function(bitmap,matrix,repeat,smooth) { return {_hx_index:0,bitmap:bitmap,matrix:matrix,repeat:repeat,smooth:smooth,__enum__:"openfl._internal.formats.swf.ShapeCommand",toString:$estr}; },$_.__params__ = ["bitmap","matrix","repeat","smooth"],$_) - ,BeginFill: ($_=function(color,alpha) { return {_hx_index:1,color:color,alpha:alpha,__enum__:"openfl._internal.formats.swf.ShapeCommand",toString:$estr}; },$_.__params__ = ["color","alpha"],$_) - ,BeginGradientFill: ($_=function(fillType,colors,alphas,ratios,matrix,spreadMethod,interpolationMethod,focalPointRatio) { return {_hx_index:2,fillType:fillType,colors:colors,alphas:alphas,ratios:ratios,matrix:matrix,spreadMethod:spreadMethod,interpolationMethod:interpolationMethod,focalPointRatio:focalPointRatio,__enum__:"openfl._internal.formats.swf.ShapeCommand",toString:$estr}; },$_.__params__ = ["fillType","colors","alphas","ratios","matrix","spreadMethod","interpolationMethod","focalPointRatio"],$_) - ,CurveTo: ($_=function(controlX,controlY,anchorX,anchorY) { return {_hx_index:3,controlX:controlX,controlY:controlY,anchorX:anchorX,anchorY:anchorY,__enum__:"openfl._internal.formats.swf.ShapeCommand",toString:$estr}; },$_.__params__ = ["controlX","controlY","anchorX","anchorY"],$_) - ,EndFill: {_hx_index:4,__enum__:"openfl._internal.formats.swf.ShapeCommand",toString:$estr} - ,LineStyle: ($_=function(thickness,color,alpha,pixelHinting,scaleMode,caps,joints,miterLimit) { return {_hx_index:5,thickness:thickness,color:color,alpha:alpha,pixelHinting:pixelHinting,scaleMode:scaleMode,caps:caps,joints:joints,miterLimit:miterLimit,__enum__:"openfl._internal.formats.swf.ShapeCommand",toString:$estr}; },$_.__params__ = ["thickness","color","alpha","pixelHinting","scaleMode","caps","joints","miterLimit"],$_) - ,LineTo: ($_=function(x,y) { return {_hx_index:6,x:x,y:y,__enum__:"openfl._internal.formats.swf.ShapeCommand",toString:$estr}; },$_.__params__ = ["x","y"],$_) - ,MoveTo: ($_=function(x,y) { return {_hx_index:7,x:x,y:y,__enum__:"openfl._internal.formats.swf.ShapeCommand",toString:$estr}; },$_.__params__ = ["x","y"],$_) -}; -var openfl__$internal_renderer_DrawCommandBuffer = function() { - if(openfl__$internal_renderer_DrawCommandBuffer.empty == null) { - this.types = []; - this.b = []; - this.i = []; - this.f = []; - this.o = []; - this.ff = []; - this.ii = []; - this.copyOnWrite = true; - } else { - this.clear(); - } -}; -$hxClasses["openfl._internal.renderer.DrawCommandBuffer"] = openfl__$internal_renderer_DrawCommandBuffer; -openfl__$internal_renderer_DrawCommandBuffer.__name__ = "openfl._internal.renderer.DrawCommandBuffer"; -openfl__$internal_renderer_DrawCommandBuffer.prototype = { - types: null - ,b: null - ,copyOnWrite: null - ,f: null - ,ff: null - ,i: null - ,ii: null - ,o: null - ,append: function(other) { - if(this.get_length() == 0) { - this.types = other.types; - this.b = other.b; - this.i = other.i; - this.f = other.f; - this.o = other.o; - this.ff = other.ff; - this.ii = other.ii; - this.copyOnWrite = other.copyOnWrite = true; - return other; - } - var data = new openfl__$internal_renderer_DrawCommandReader(other); - var _g = 0; - var _g1 = other.types; - while(_g < _g1.length) { - var type = _g1[_g]; - ++_g; - switch(type._hx_index) { - case 0: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_BITMAP_FILL; - var this1 = data; - var c = this1; - this.beginBitmapFill(c.buffer.o[c.oPos],c.buffer.o[c.oPos + 1],c.buffer.b[c.bPos],c.buffer.b[c.bPos + 1]); - break; - case 1: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_FILL; - var this2 = data; - var c1 = this2; - this.beginFill(c1.buffer.i[c1.iPos],c1.buffer.f[c1.fPos]); - break; - case 2: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_GRADIENT_FILL; - var this3 = data; - var c2 = this3; - this.beginGradientFill(c2.buffer.o[c2.oPos],c2.buffer.ii[c2.iiPos],c2.buffer.ff[c2.ffPos],c2.buffer.ii[c2.iiPos + 1],c2.buffer.o[c2.oPos + 1],c2.buffer.o[c2.oPos + 2],c2.buffer.o[c2.oPos + 3],c2.buffer.f[c2.fPos]); - break; - case 3: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_SHADER_FILL; - var this4 = data; - var c3 = this4; - this.beginShaderFill(c3.buffer.o[c3.oPos]); - break; - case 4: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.CUBIC_CURVE_TO; - var this5 = data; - var c4 = this5; - this.cubicCurveTo(c4.buffer.f[c4.fPos],c4.buffer.f[c4.fPos + 1],c4.buffer.f[c4.fPos + 2],c4.buffer.f[c4.fPos + 3],c4.buffer.f[c4.fPos + 4],c4.buffer.f[c4.fPos + 5]); - break; - case 5: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.CURVE_TO; - var this6 = data; - var c5 = this6; - this.curveTo(c5.buffer.f[c5.fPos],c5.buffer.f[c5.fPos + 1],c5.buffer.f[c5.fPos + 2],c5.buffer.f[c5.fPos + 3]); - break; - case 6: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_CIRCLE; - var this7 = data; - var c6 = this7; - this.drawCircle(c6.buffer.f[c6.fPos],c6.buffer.f[c6.fPos + 1],c6.buffer.f[c6.fPos + 2]); - break; - case 7: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_ELLIPSE; - var this8 = data; - var c7 = this8; - this.drawEllipse(c7.buffer.f[c7.fPos],c7.buffer.f[c7.fPos + 1],c7.buffer.f[c7.fPos + 2],c7.buffer.f[c7.fPos + 3]); - break; - case 8: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_QUADS; - var this9 = data; - var c8 = this9; - this.drawQuads(c8.buffer.o[c8.oPos],c8.buffer.o[c8.oPos + 1],c8.buffer.o[c8.oPos + 2]); - break; - case 9: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_RECT; - var this10 = data; - var c9 = this10; - this.drawRect(c9.buffer.f[c9.fPos],c9.buffer.f[c9.fPos + 1],c9.buffer.f[c9.fPos + 2],c9.buffer.f[c9.fPos + 3]); - break; - case 10: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_ROUND_RECT; - var this11 = data; - var c10 = this11; - this.drawRoundRect(c10.buffer.f[c10.fPos],c10.buffer.f[c10.fPos + 1],c10.buffer.f[c10.fPos + 2],c10.buffer.f[c10.fPos + 3],c10.buffer.f[c10.fPos + 4],c10.buffer.o[c10.oPos]); - break; - case 12: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_TRIANGLES; - var this12 = data; - var c11 = this12; - this.drawTriangles(c11.buffer.o[c11.oPos],c11.buffer.o[c11.oPos + 1],c11.buffer.o[c11.oPos + 2],c11.buffer.o[c11.oPos + 3]); - break; - case 13: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.END_FILL; - var this13 = data; - var c12 = this13; - this.endFill(); - break; - case 14: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_BITMAP_STYLE; - var this14 = data; - var c13 = this14; - this.lineBitmapStyle(c13.buffer.o[c13.oPos],c13.buffer.o[c13.oPos + 1],c13.buffer.b[c13.bPos],c13.buffer.b[c13.bPos + 1]); - break; - case 15: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_GRADIENT_STYLE; - var this15 = data; - var c14 = this15; - this.lineGradientStyle(c14.buffer.o[c14.oPos],c14.buffer.ii[c14.iiPos],c14.buffer.ff[c14.ffPos],c14.buffer.ii[c14.iiPos + 1],c14.buffer.o[c14.oPos + 1],c14.buffer.o[c14.oPos + 2],c14.buffer.o[c14.oPos + 3],c14.buffer.f[c14.fPos]); - break; - case 16: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_STYLE; - var this16 = data; - var c15 = this16; - this.lineStyle(c15.buffer.o[c15.oPos],c15.buffer.i[c15.iPos],c15.buffer.f[c15.fPos],c15.buffer.b[c15.bPos],c15.buffer.o[c15.oPos + 1],c15.buffer.o[c15.oPos + 2],c15.buffer.o[c15.oPos + 3],c15.buffer.f[c15.fPos + 1]); - break; - case 17: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_TO; - var this17 = data; - var c16 = this17; - this.lineTo(c16.buffer.f[c16.fPos],c16.buffer.f[c16.fPos + 1]); - break; - case 18: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.MOVE_TO; - var this18 = data; - var c17 = this18; - this.moveTo(c17.buffer.f[c17.fPos],c17.buffer.f[c17.fPos + 1]); - break; - case 20: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.OVERRIDE_MATRIX; - var this19 = data; - var c18 = this19; - this.overrideMatrix(c18.buffer.o[c18.oPos]); - break; - case 21: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.WINDING_EVEN_ODD; - var this20 = data; - var c19 = this20; - this.windingEvenOdd(); - break; - case 22: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.WINDING_NON_ZERO; - var this21 = data; - var c20 = this21; - this.windingNonZero(); - break; - default: - } - } - data.destroy(); - return other; - } - ,beginBitmapFill: function(bitmap,matrix,repeat,smooth) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.BEGIN_BITMAP_FILL); - this.o.push(bitmap); - this.o.push(matrix); - this.b.push(repeat); - this.b.push(smooth); - } - ,beginFill: function(color,alpha) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.BEGIN_FILL); - this.i.push(color); - this.f.push(alpha); - } - ,beginGradientFill: function(type,colors,alphas,ratios,matrix,spreadMethod,interpolationMethod,focalPointRatio) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.BEGIN_GRADIENT_FILL); - this.o.push(type); - this.ii.push(colors); - this.ff.push(alphas); - this.ii.push(ratios); - this.o.push(matrix); - this.o.push(spreadMethod); - this.o.push(interpolationMethod); - this.f.push(focalPointRatio); - } - ,beginShaderFill: function(shaderBuffer) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.BEGIN_SHADER_FILL); - this.o.push(shaderBuffer); - } - ,clear: function() { - this.types = openfl__$internal_renderer_DrawCommandBuffer.empty.types; - this.b = openfl__$internal_renderer_DrawCommandBuffer.empty.b; - this.i = openfl__$internal_renderer_DrawCommandBuffer.empty.i; - this.f = openfl__$internal_renderer_DrawCommandBuffer.empty.f; - this.o = openfl__$internal_renderer_DrawCommandBuffer.empty.o; - this.ff = openfl__$internal_renderer_DrawCommandBuffer.empty.ff; - this.ii = openfl__$internal_renderer_DrawCommandBuffer.empty.ii; - this.copyOnWrite = true; - } - ,copy: function() { - var copy = new openfl__$internal_renderer_DrawCommandBuffer(); - copy.append(this); - return copy; - } - ,cubicCurveTo: function(controlX1,controlY1,controlX2,controlY2,anchorX,anchorY) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.CUBIC_CURVE_TO); - this.f.push(controlX1); - this.f.push(controlY1); - this.f.push(controlX2); - this.f.push(controlY2); - this.f.push(anchorX); - this.f.push(anchorY); - } - ,curveTo: function(controlX,controlY,anchorX,anchorY) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.CURVE_TO); - this.f.push(controlX); - this.f.push(controlY); - this.f.push(anchorX); - this.f.push(anchorY); - } - ,destroy: function() { - this.clear(); - this.types = null; - this.b = null; - this.i = null; - this.f = null; - this.o = null; - this.ff = null; - this.ii = null; - } - ,drawCircle: function(x,y,radius) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.DRAW_CIRCLE); - this.f.push(x); - this.f.push(y); - this.f.push(radius); - } - ,drawEllipse: function(x,y,width,height) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.DRAW_ELLIPSE); - this.f.push(x); - this.f.push(y); - this.f.push(width); - this.f.push(height); - } - ,drawQuads: function(rects,indices,transforms) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.DRAW_QUADS); - this.o.push(rects); - this.o.push(indices); - this.o.push(transforms); - } - ,drawRect: function(x,y,width,height) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.DRAW_RECT); - this.f.push(x); - this.f.push(y); - this.f.push(width); - this.f.push(height); - } - ,drawRoundRect: function(x,y,width,height,ellipseWidth,ellipseHeight) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.DRAW_ROUND_RECT); - this.f.push(x); - this.f.push(y); - this.f.push(width); - this.f.push(height); - this.f.push(ellipseWidth); - this.o.push(ellipseHeight); - } - ,drawTriangles: function(vertices,indices,uvtData,culling) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.DRAW_TRIANGLES); - this.o.push(vertices); - this.o.push(indices); - this.o.push(uvtData); - this.o.push(culling); - } - ,endFill: function() { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.END_FILL); - } - ,lineBitmapStyle: function(bitmap,matrix,repeat,smooth) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.LINE_BITMAP_STYLE); - this.o.push(bitmap); - this.o.push(matrix); - this.b.push(repeat); - this.b.push(smooth); - } - ,lineGradientStyle: function(type,colors,alphas,ratios,matrix,spreadMethod,interpolationMethod,focalPointRatio) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.LINE_GRADIENT_STYLE); - this.o.push(type); - this.ii.push(colors); - this.ff.push(alphas); - this.ii.push(ratios); - this.o.push(matrix); - this.o.push(spreadMethod); - this.o.push(interpolationMethod); - this.f.push(focalPointRatio); - } - ,lineStyle: function(thickness,color,alpha,pixelHinting,scaleMode,caps,joints,miterLimit) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.LINE_STYLE); - this.o.push(thickness); - this.i.push(color); - this.f.push(alpha); - this.b.push(pixelHinting); - this.o.push(scaleMode); - this.o.push(caps); - this.o.push(joints); - this.f.push(miterLimit); - } - ,lineTo: function(x,y) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.LINE_TO); - this.f.push(x); - this.f.push(y); - } - ,moveTo: function(x,y) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.MOVE_TO); - this.f.push(x); - this.f.push(y); - } - ,prepareWrite: function() { - if(this.copyOnWrite) { - this.types = this.types.slice(); - this.b = this.b.slice(); - this.i = this.i.slice(); - this.f = this.f.slice(); - this.o = this.o.slice(); - this.ff = this.ff.slice(); - this.ii = this.ii.slice(); - this.copyOnWrite = false; - } - } - ,overrideBlendMode: function(blendMode) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.OVERRIDE_BLEND_MODE); - this.o.push(blendMode); - } - ,overrideMatrix: function(matrix) { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.OVERRIDE_MATRIX); - this.o.push(matrix); - } - ,windingEvenOdd: function() { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.WINDING_EVEN_ODD); - } - ,windingNonZero: function() { - this.prepareWrite(); - this.types.push(openfl__$internal_renderer_DrawCommandType.WINDING_NON_ZERO); - } - ,get_length: function() { - return this.types.length; - } - ,__class__: openfl__$internal_renderer_DrawCommandBuffer - ,__properties__: {get_length:"get_length"} -}; -var openfl__$internal_renderer_DrawCommandReader = function(buffer) { - this.buffer = buffer; - this.bPos = this.iPos = this.fPos = this.oPos = this.ffPos = this.iiPos = this.tsPos = 0; - this.prev = openfl__$internal_renderer_DrawCommandType.UNKNOWN; -}; -$hxClasses["openfl._internal.renderer.DrawCommandReader"] = openfl__$internal_renderer_DrawCommandReader; -openfl__$internal_renderer_DrawCommandReader.__name__ = "openfl._internal.renderer.DrawCommandReader"; -openfl__$internal_renderer_DrawCommandReader.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 13: - 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; - break; - case 21:case 22: - break; - default: - } - } - ,bool: function(index) { - return this.buffer.b[this.bPos + index]; - } - ,destroy: function() { - this.buffer = null; - this.reset(); - } - ,fArr: function(index) { - return this.buffer.ff[this.ffPos + index]; - } - ,float: function(index) { - return this.buffer.f[this.fPos + index]; - } - ,iArr: function(index) { - return this.buffer.ii[this.iiPos + index]; - } - ,int: function(index) { - return this.buffer.i[this.iPos + index]; - } - ,obj: function(index) { - return this.buffer.o[this.oPos + index]; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_BITMAP_FILL; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_FILL; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_GRADIENT_FILL; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_SHADER_FILL; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.CUBIC_CURVE_TO; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.CURVE_TO; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.DRAW_CIRCLE; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.DRAW_ELLIPSE; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.DRAW_QUADS; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.DRAW_RECT; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.DRAW_ROUND_RECT; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.DRAW_TRIANGLES; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.END_FILL; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.LINE_BITMAP_STYLE; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.LINE_GRADIENT_STYLE; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.LINE_STYLE; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.LINE_TO; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.MOVE_TO; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.OVERRIDE_BLEND_MODE; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.OVERRIDE_MATRIX; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.WINDING_EVEN_ODD; - var this1 = this; - return this1; - } - ,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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = openfl__$internal_renderer_DrawCommandType.WINDING_NON_ZERO; - var this1 = this; - return this1; - } - ,reset: function() { - this.bPos = this.iPos = this.fPos = this.oPos = this.ffPos = this.iiPos = this.tsPos = 0; - } - ,skip: function(type) { - 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 13: - 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; - break; - case 21:case 22: - break; - default: - } - this.prev = type; - } - ,__class__: openfl__$internal_renderer_DrawCommandReader -}; -var openfl__$internal_renderer__$DrawCommandReader_BeginBitmapFillView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.BeginBitmapFillView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_BeginBitmapFillView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_BeginBitmapFillView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.BeginBitmapFillView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_BeginBitmapFillView_$Impl_$.__properties__ = {get_smooth:"get_smooth",get_repeat:"get_repeat",get_matrix:"get_matrix",get_bitmap:"get_bitmap"}; -openfl__$internal_renderer__$DrawCommandReader_BeginBitmapFillView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_BeginBitmapFillView_$Impl_$.get_bitmap = function(this1) { - return this1.buffer.o[this1.oPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_BeginBitmapFillView_$Impl_$.get_matrix = function(this1) { - return this1.buffer.o[this1.oPos + 1]; -}; -openfl__$internal_renderer__$DrawCommandReader_BeginBitmapFillView_$Impl_$.get_repeat = function(this1) { - return this1.buffer.b[this1.bPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_BeginBitmapFillView_$Impl_$.get_smooth = function(this1) { - return this1.buffer.b[this1.bPos + 1]; -}; -var openfl__$internal_renderer__$DrawCommandReader_BeginFillView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.BeginFillView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_BeginFillView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_BeginFillView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.BeginFillView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_BeginFillView_$Impl_$.__properties__ = {get_alpha:"get_alpha",get_color:"get_color"}; -openfl__$internal_renderer__$DrawCommandReader_BeginFillView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_BeginFillView_$Impl_$.get_color = function(this1) { - return this1.buffer.i[this1.iPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_BeginFillView_$Impl_$.get_alpha = function(this1) { - return this1.buffer.f[this1.fPos]; -}; -var openfl__$internal_renderer__$DrawCommandReader_BeginGradientFillView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.BeginGradientFillView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_BeginGradientFillView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_BeginGradientFillView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.BeginGradientFillView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_BeginGradientFillView_$Impl_$.__properties__ = {get_focalPointRatio:"get_focalPointRatio",get_interpolationMethod:"get_interpolationMethod",get_spreadMethod:"get_spreadMethod",get_matrix:"get_matrix",get_ratios:"get_ratios",get_alphas:"get_alphas",get_colors:"get_colors",get_type:"get_type"}; -openfl__$internal_renderer__$DrawCommandReader_BeginGradientFillView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_BeginGradientFillView_$Impl_$.get_type = function(this1) { - return this1.buffer.o[this1.oPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_BeginGradientFillView_$Impl_$.get_colors = function(this1) { - return this1.buffer.ii[this1.iiPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_BeginGradientFillView_$Impl_$.get_alphas = function(this1) { - return this1.buffer.ff[this1.ffPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_BeginGradientFillView_$Impl_$.get_ratios = function(this1) { - return this1.buffer.ii[this1.iiPos + 1]; -}; -openfl__$internal_renderer__$DrawCommandReader_BeginGradientFillView_$Impl_$.get_matrix = function(this1) { - return this1.buffer.o[this1.oPos + 1]; -}; -openfl__$internal_renderer__$DrawCommandReader_BeginGradientFillView_$Impl_$.get_spreadMethod = function(this1) { - return this1.buffer.o[this1.oPos + 2]; -}; -openfl__$internal_renderer__$DrawCommandReader_BeginGradientFillView_$Impl_$.get_interpolationMethod = function(this1) { - return this1.buffer.o[this1.oPos + 3]; -}; -openfl__$internal_renderer__$DrawCommandReader_BeginGradientFillView_$Impl_$.get_focalPointRatio = function(this1) { - return this1.buffer.f[this1.fPos]; -}; -var openfl__$internal_renderer__$DrawCommandReader_BeginShaderFillView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.BeginShaderFillView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_BeginShaderFillView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_BeginShaderFillView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.BeginShaderFillView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_BeginShaderFillView_$Impl_$.__properties__ = {get_shaderBuffer:"get_shaderBuffer"}; -openfl__$internal_renderer__$DrawCommandReader_BeginShaderFillView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_BeginShaderFillView_$Impl_$.get_shaderBuffer = function(this1) { - return this1.buffer.o[this1.oPos]; -}; -var openfl__$internal_renderer__$DrawCommandReader_CubicCurveToView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.CubicCurveToView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_CubicCurveToView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_CubicCurveToView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.CubicCurveToView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_CubicCurveToView_$Impl_$.__properties__ = {get_anchorY:"get_anchorY",get_anchorX:"get_anchorX",get_controlY2:"get_controlY2",get_controlX2:"get_controlX2",get_controlY1:"get_controlY1",get_controlX1:"get_controlX1"}; -openfl__$internal_renderer__$DrawCommandReader_CubicCurveToView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_CubicCurveToView_$Impl_$.get_controlX1 = function(this1) { - return this1.buffer.f[this1.fPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_CubicCurveToView_$Impl_$.get_controlY1 = function(this1) { - return this1.buffer.f[this1.fPos + 1]; -}; -openfl__$internal_renderer__$DrawCommandReader_CubicCurveToView_$Impl_$.get_controlX2 = function(this1) { - return this1.buffer.f[this1.fPos + 2]; -}; -openfl__$internal_renderer__$DrawCommandReader_CubicCurveToView_$Impl_$.get_controlY2 = function(this1) { - return this1.buffer.f[this1.fPos + 3]; -}; -openfl__$internal_renderer__$DrawCommandReader_CubicCurveToView_$Impl_$.get_anchorX = function(this1) { - return this1.buffer.f[this1.fPos + 4]; -}; -openfl__$internal_renderer__$DrawCommandReader_CubicCurveToView_$Impl_$.get_anchorY = function(this1) { - return this1.buffer.f[this1.fPos + 5]; -}; -var openfl__$internal_renderer__$DrawCommandReader_CurveToView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.CurveToView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_CurveToView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_CurveToView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.CurveToView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_CurveToView_$Impl_$.__properties__ = {get_anchorY:"get_anchorY",get_anchorX:"get_anchorX",get_controlY:"get_controlY",get_controlX:"get_controlX"}; -openfl__$internal_renderer__$DrawCommandReader_CurveToView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_CurveToView_$Impl_$.get_controlX = function(this1) { - return this1.buffer.f[this1.fPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_CurveToView_$Impl_$.get_controlY = function(this1) { - return this1.buffer.f[this1.fPos + 1]; -}; -openfl__$internal_renderer__$DrawCommandReader_CurveToView_$Impl_$.get_anchorX = function(this1) { - return this1.buffer.f[this1.fPos + 2]; -}; -openfl__$internal_renderer__$DrawCommandReader_CurveToView_$Impl_$.get_anchorY = function(this1) { - return this1.buffer.f[this1.fPos + 3]; -}; -var openfl__$internal_renderer__$DrawCommandReader_DrawCircleView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.DrawCircleView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_DrawCircleView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_DrawCircleView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.DrawCircleView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_DrawCircleView_$Impl_$.__properties__ = {get_radius:"get_radius",get_y:"get_y",get_x:"get_x"}; -openfl__$internal_renderer__$DrawCommandReader_DrawCircleView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawCircleView_$Impl_$.get_x = function(this1) { - return this1.buffer.f[this1.fPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawCircleView_$Impl_$.get_y = function(this1) { - return this1.buffer.f[this1.fPos + 1]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawCircleView_$Impl_$.get_radius = function(this1) { - return this1.buffer.f[this1.fPos + 2]; -}; -var openfl__$internal_renderer__$DrawCommandReader_DrawEllipseView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.DrawEllipseView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_DrawEllipseView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_DrawEllipseView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.DrawEllipseView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_DrawEllipseView_$Impl_$.__properties__ = {get_height:"get_height",get_width:"get_width",get_y:"get_y",get_x:"get_x"}; -openfl__$internal_renderer__$DrawCommandReader_DrawEllipseView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawEllipseView_$Impl_$.get_x = function(this1) { - return this1.buffer.f[this1.fPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawEllipseView_$Impl_$.get_y = function(this1) { - return this1.buffer.f[this1.fPos + 1]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawEllipseView_$Impl_$.get_width = function(this1) { - return this1.buffer.f[this1.fPos + 2]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawEllipseView_$Impl_$.get_height = function(this1) { - return this1.buffer.f[this1.fPos + 3]; -}; -var openfl__$internal_renderer__$DrawCommandReader_DrawQuadsView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.DrawQuadsView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_DrawQuadsView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_DrawQuadsView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.DrawQuadsView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_DrawQuadsView_$Impl_$.__properties__ = {get_transforms:"get_transforms",get_indices:"get_indices",get_rects:"get_rects"}; -openfl__$internal_renderer__$DrawCommandReader_DrawQuadsView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawQuadsView_$Impl_$.get_rects = function(this1) { - return this1.buffer.o[this1.oPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawQuadsView_$Impl_$.get_indices = function(this1) { - return this1.buffer.o[this1.oPos + 1]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawQuadsView_$Impl_$.get_transforms = function(this1) { - return this1.buffer.o[this1.oPos + 2]; -}; -var openfl__$internal_renderer__$DrawCommandReader_DrawRectView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.DrawRectView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_DrawRectView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_DrawRectView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.DrawRectView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_DrawRectView_$Impl_$.__properties__ = {get_height:"get_height",get_width:"get_width",get_y:"get_y",get_x:"get_x"}; -openfl__$internal_renderer__$DrawCommandReader_DrawRectView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawRectView_$Impl_$.get_x = function(this1) { - return this1.buffer.f[this1.fPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawRectView_$Impl_$.get_y = function(this1) { - return this1.buffer.f[this1.fPos + 1]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawRectView_$Impl_$.get_width = function(this1) { - return this1.buffer.f[this1.fPos + 2]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawRectView_$Impl_$.get_height = function(this1) { - return this1.buffer.f[this1.fPos + 3]; -}; -var openfl__$internal_renderer__$DrawCommandReader_DrawRoundRectView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.DrawRoundRectView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_DrawRoundRectView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_DrawRoundRectView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.DrawRoundRectView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_DrawRoundRectView_$Impl_$.__properties__ = {get_ellipseHeight:"get_ellipseHeight",get_ellipseWidth:"get_ellipseWidth",get_height:"get_height",get_width:"get_width",get_y:"get_y",get_x:"get_x"}; -openfl__$internal_renderer__$DrawCommandReader_DrawRoundRectView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawRoundRectView_$Impl_$.get_x = function(this1) { - return this1.buffer.f[this1.fPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawRoundRectView_$Impl_$.get_y = function(this1) { - return this1.buffer.f[this1.fPos + 1]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawRoundRectView_$Impl_$.get_width = function(this1) { - return this1.buffer.f[this1.fPos + 2]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawRoundRectView_$Impl_$.get_height = function(this1) { - return this1.buffer.f[this1.fPos + 3]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawRoundRectView_$Impl_$.get_ellipseWidth = function(this1) { - return this1.buffer.f[this1.fPos + 4]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawRoundRectView_$Impl_$.get_ellipseHeight = function(this1) { - return this1.buffer.o[this1.oPos]; -}; -var openfl__$internal_renderer__$DrawCommandReader_DrawTrianglesView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.DrawTrianglesView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_DrawTrianglesView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_DrawTrianglesView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.DrawTrianglesView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_DrawTrianglesView_$Impl_$.__properties__ = {get_culling:"get_culling",get_uvtData:"get_uvtData",get_indices:"get_indices",get_vertices:"get_vertices"}; -openfl__$internal_renderer__$DrawCommandReader_DrawTrianglesView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawTrianglesView_$Impl_$.get_vertices = function(this1) { - return this1.buffer.o[this1.oPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawTrianglesView_$Impl_$.get_indices = function(this1) { - return this1.buffer.o[this1.oPos + 1]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawTrianglesView_$Impl_$.get_uvtData = function(this1) { - return this1.buffer.o[this1.oPos + 2]; -}; -openfl__$internal_renderer__$DrawCommandReader_DrawTrianglesView_$Impl_$.get_culling = function(this1) { - return this1.buffer.o[this1.oPos + 3]; -}; -var openfl__$internal_renderer__$DrawCommandReader_EndFillView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.EndFillView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_EndFillView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_EndFillView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.EndFillView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_EndFillView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -var openfl__$internal_renderer__$DrawCommandReader_LineBitmapStyleView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.LineBitmapStyleView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_LineBitmapStyleView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_LineBitmapStyleView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.LineBitmapStyleView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_LineBitmapStyleView_$Impl_$.__properties__ = {get_smooth:"get_smooth",get_repeat:"get_repeat",get_matrix:"get_matrix",get_bitmap:"get_bitmap"}; -openfl__$internal_renderer__$DrawCommandReader_LineBitmapStyleView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_LineBitmapStyleView_$Impl_$.get_bitmap = function(this1) { - return this1.buffer.o[this1.oPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineBitmapStyleView_$Impl_$.get_matrix = function(this1) { - return this1.buffer.o[this1.oPos + 1]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineBitmapStyleView_$Impl_$.get_repeat = function(this1) { - return this1.buffer.b[this1.bPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineBitmapStyleView_$Impl_$.get_smooth = function(this1) { - return this1.buffer.b[this1.bPos + 1]; -}; -var openfl__$internal_renderer__$DrawCommandReader_LineGradientStyleView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.LineGradientStyleView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_LineGradientStyleView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_LineGradientStyleView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.LineGradientStyleView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_LineGradientStyleView_$Impl_$.__properties__ = {get_focalPointRatio:"get_focalPointRatio",get_interpolationMethod:"get_interpolationMethod",get_spreadMethod:"get_spreadMethod",get_matrix:"get_matrix",get_ratios:"get_ratios",get_alphas:"get_alphas",get_colors:"get_colors",get_type:"get_type"}; -openfl__$internal_renderer__$DrawCommandReader_LineGradientStyleView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_LineGradientStyleView_$Impl_$.get_type = function(this1) { - return this1.buffer.o[this1.oPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineGradientStyleView_$Impl_$.get_colors = function(this1) { - return this1.buffer.ii[this1.iiPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineGradientStyleView_$Impl_$.get_alphas = function(this1) { - return this1.buffer.ff[this1.ffPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineGradientStyleView_$Impl_$.get_ratios = function(this1) { - return this1.buffer.ii[this1.iiPos + 1]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineGradientStyleView_$Impl_$.get_matrix = function(this1) { - return this1.buffer.o[this1.oPos + 1]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineGradientStyleView_$Impl_$.get_spreadMethod = function(this1) { - return this1.buffer.o[this1.oPos + 2]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineGradientStyleView_$Impl_$.get_interpolationMethod = function(this1) { - return this1.buffer.o[this1.oPos + 3]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineGradientStyleView_$Impl_$.get_focalPointRatio = function(this1) { - return this1.buffer.f[this1.fPos]; -}; -var openfl__$internal_renderer__$DrawCommandReader_LineStyleView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.LineStyleView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_LineStyleView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_LineStyleView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.LineStyleView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_LineStyleView_$Impl_$.__properties__ = {get_miterLimit:"get_miterLimit",get_joints:"get_joints",get_caps:"get_caps",get_scaleMode:"get_scaleMode",get_pixelHinting:"get_pixelHinting",get_alpha:"get_alpha",get_color:"get_color",get_thickness:"get_thickness"}; -openfl__$internal_renderer__$DrawCommandReader_LineStyleView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_LineStyleView_$Impl_$.get_thickness = function(this1) { - return this1.buffer.o[this1.oPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineStyleView_$Impl_$.get_color = function(this1) { - return this1.buffer.i[this1.iPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineStyleView_$Impl_$.get_alpha = function(this1) { - return this1.buffer.f[this1.fPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineStyleView_$Impl_$.get_pixelHinting = function(this1) { - return this1.buffer.b[this1.bPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineStyleView_$Impl_$.get_scaleMode = function(this1) { - return this1.buffer.o[this1.oPos + 1]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineStyleView_$Impl_$.get_caps = function(this1) { - return this1.buffer.o[this1.oPos + 2]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineStyleView_$Impl_$.get_joints = function(this1) { - return this1.buffer.o[this1.oPos + 3]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineStyleView_$Impl_$.get_miterLimit = function(this1) { - return this1.buffer.f[this1.fPos + 1]; -}; -var openfl__$internal_renderer__$DrawCommandReader_LineToView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.LineToView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_LineToView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_LineToView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.LineToView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_LineToView_$Impl_$.__properties__ = {get_y:"get_y",get_x:"get_x"}; -openfl__$internal_renderer__$DrawCommandReader_LineToView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_LineToView_$Impl_$.get_x = function(this1) { - return this1.buffer.f[this1.fPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_LineToView_$Impl_$.get_y = function(this1) { - return this1.buffer.f[this1.fPos + 1]; -}; -var openfl__$internal_renderer__$DrawCommandReader_MoveToView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.MoveToView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_MoveToView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_MoveToView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.MoveToView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_MoveToView_$Impl_$.__properties__ = {get_y:"get_y",get_x:"get_x"}; -openfl__$internal_renderer__$DrawCommandReader_MoveToView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_MoveToView_$Impl_$.get_x = function(this1) { - return this1.buffer.f[this1.fPos]; -}; -openfl__$internal_renderer__$DrawCommandReader_MoveToView_$Impl_$.get_y = function(this1) { - return this1.buffer.f[this1.fPos + 1]; -}; -var openfl__$internal_renderer__$DrawCommandReader_OverrideBlendModeView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.OverrideBlendModeView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_OverrideBlendModeView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_OverrideBlendModeView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.OverrideBlendModeView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_OverrideBlendModeView_$Impl_$.__properties__ = {get_blendMode:"get_blendMode"}; -openfl__$internal_renderer__$DrawCommandReader_OverrideBlendModeView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_OverrideBlendModeView_$Impl_$.get_blendMode = function(this1) { - return this1.buffer.o[this1.oPos]; -}; -var openfl__$internal_renderer__$DrawCommandReader_OverrideMatrixView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.OverrideMatrixView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_OverrideMatrixView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_OverrideMatrixView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.OverrideMatrixView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_OverrideMatrixView_$Impl_$.__properties__ = {get_matrix:"get_matrix"}; -openfl__$internal_renderer__$DrawCommandReader_OverrideMatrixView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -openfl__$internal_renderer__$DrawCommandReader_OverrideMatrixView_$Impl_$.get_matrix = function(this1) { - return this1.buffer.o[this1.oPos]; -}; -var openfl__$internal_renderer__$DrawCommandReader_WindingEvenOddView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.WindingEvenOddView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_WindingEvenOddView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_WindingEvenOddView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.WindingEvenOddView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_WindingEvenOddView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -var openfl__$internal_renderer__$DrawCommandReader_WindingNonZeroView_$Impl_$ = {}; -$hxClasses["openfl._internal.renderer._DrawCommandReader.WindingNonZeroView_Impl_"] = openfl__$internal_renderer__$DrawCommandReader_WindingNonZeroView_$Impl_$; -openfl__$internal_renderer__$DrawCommandReader_WindingNonZeroView_$Impl_$.__name__ = "openfl._internal.renderer._DrawCommandReader.WindingNonZeroView_Impl_"; -openfl__$internal_renderer__$DrawCommandReader_WindingNonZeroView_$Impl_$._new = function(d) { - var this1 = d; - return this1; -}; -var openfl__$internal_renderer_DrawCommandType = $hxEnums["openfl._internal.renderer.DrawCommandType"] = { __ename__ : "openfl._internal.renderer.DrawCommandType", __constructs__ : ["BEGIN_BITMAP_FILL","BEGIN_FILL","BEGIN_GRADIENT_FILL","BEGIN_SHADER_FILL","CUBIC_CURVE_TO","CURVE_TO","DRAW_CIRCLE","DRAW_ELLIPSE","DRAW_QUADS","DRAW_RECT","DRAW_ROUND_RECT","DRAW_TILES","DRAW_TRIANGLES","END_FILL","LINE_BITMAP_STYLE","LINE_GRADIENT_STYLE","LINE_STYLE","LINE_TO","MOVE_TO","OVERRIDE_BLEND_MODE","OVERRIDE_MATRIX","WINDING_EVEN_ODD","WINDING_NON_ZERO","UNKNOWN"] - ,BEGIN_BITMAP_FILL: {_hx_index:0,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,BEGIN_FILL: {_hx_index:1,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,BEGIN_GRADIENT_FILL: {_hx_index:2,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,BEGIN_SHADER_FILL: {_hx_index:3,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,CUBIC_CURVE_TO: {_hx_index:4,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,CURVE_TO: {_hx_index:5,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,DRAW_CIRCLE: {_hx_index:6,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,DRAW_ELLIPSE: {_hx_index:7,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,DRAW_QUADS: {_hx_index:8,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,DRAW_RECT: {_hx_index:9,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,DRAW_ROUND_RECT: {_hx_index:10,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,DRAW_TILES: {_hx_index:11,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,DRAW_TRIANGLES: {_hx_index:12,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,END_FILL: {_hx_index:13,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,LINE_BITMAP_STYLE: {_hx_index:14,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,LINE_GRADIENT_STYLE: {_hx_index:15,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,LINE_STYLE: {_hx_index:16,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,LINE_TO: {_hx_index:17,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,MOVE_TO: {_hx_index:18,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,OVERRIDE_BLEND_MODE: {_hx_index:19,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,OVERRIDE_MATRIX: {_hx_index:20,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,WINDING_EVEN_ODD: {_hx_index:21,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,WINDING_NON_ZERO: {_hx_index:22,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} - ,UNKNOWN: {_hx_index:23,__enum__:"openfl._internal.renderer.DrawCommandType",toString:$estr} -}; -var openfl__$internal_renderer_SamplerState = function(wrap,filter,mipfilter,lodBias,ignoreSampler,centroid,textureAlpha) { - if(textureAlpha == null) { - textureAlpha = false; - } - if(centroid == null) { - centroid = false; - } - if(ignoreSampler == null) { - ignoreSampler = false; - } - if(lodBias == null) { - lodBias = 0.0; - } - if(mipfilter == null) { - mipfilter = 2; - } - if(filter == null) { - filter = 5; - } - if(wrap == null) { - wrap = 0; - } - this.wrap = wrap; - this.filter = filter; - this.mipfilter = mipfilter; - this.lodBias = lodBias; - this.ignoreSampler = ignoreSampler; - this.centroid = centroid; - this.textureAlpha = textureAlpha; -}; -$hxClasses["openfl._internal.renderer.SamplerState"] = openfl__$internal_renderer_SamplerState; -openfl__$internal_renderer_SamplerState.__name__ = "openfl._internal.renderer.SamplerState"; -openfl__$internal_renderer_SamplerState.prototype = { - centroid: null - ,filter: null - ,ignoreSampler: null - ,lodBias: null - ,mipfilter: null - ,mipmapGenerated: null - ,textureAlpha: null - ,wrap: null - ,clone: function() { - var copy = new openfl__$internal_renderer_SamplerState(this.wrap,this.filter,this.mipfilter,this.lodBias,this.ignoreSampler,this.centroid,this.textureAlpha); - copy.mipmapGenerated = this.mipmapGenerated; - return copy; - } - ,copyFrom: function(other) { - if(other == null || other.ignoreSampler) { - return; - } - this.wrap = other.wrap; - this.filter = other.filter; - this.mipfilter = other.mipfilter; - this.lodBias = other.lodBias; - this.centroid = other.centroid; - this.textureAlpha = other.textureAlpha; - } - ,equals: function(other) { - if(other == null) { - return false; - } - if(this.wrap == other.wrap && this.filter == other.filter && this.mipfilter == other.mipfilter && this.lodBias == other.lodBias) { - return this.textureAlpha == other.textureAlpha; - } else { - return false; - } - } - ,__class__: openfl__$internal_renderer_SamplerState -}; -var openfl__$internal_renderer_ShaderBuffer = 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 = []; -}; -$hxClasses["openfl._internal.renderer.ShaderBuffer"] = openfl__$internal_renderer_ShaderBuffer; -openfl__$internal_renderer_ShaderBuffer.__name__ = "openfl._internal.renderer.ShaderBuffer"; -openfl__$internal_renderer_ShaderBuffer.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(name,values) { - this.overrideBoolNames[this.overrideBoolCount] = name; - this.overrideBoolValues[this.overrideBoolCount] = values; - this.overrideBoolCount++; - } - ,addFloatOverride: function(name,values) { - this.overrideFloatNames[this.overrideFloatCount] = name; - this.overrideFloatValues[this.overrideFloatCount] = values; - this.overrideFloatCount++; - } - ,addIntOverride: function(name,values) { - this.overrideIntNames[this.overrideIntCount] = name; - this.overrideIntValues[this.overrideIntCount] = values; - this.overrideIntCount++; - } - ,clearOverride: function() { - this.overrideIntCount = 0; - this.overrideFloatCount = 0; - this.overrideBoolCount = 0; - } - ,update: function(shader) { - this.inputCount = 0; - this.overrideIntCount = 0; - this.overrideFloatCount = 0; - this.overrideBoolCount = 0; - this.paramBoolCount = 0; - this.paramCount = 0; - this.paramDataLength = 0; - this.paramFloatCount = 0; - this.paramIntCount = 0; - this.shader = null; - if(shader == null) { - return; - } - shader.__init(); - this.inputCount = shader.__inputBitmapData.length; - var input; - var _g = 0; - var _g1 = this.inputCount; - while(_g < _g1) { - var i = _g++; - input = shader.__inputBitmapData[i]; - this.inputs[i] = input.input; - this.inputFilter[i] = input.filter; - this.inputMipFilter[i] = input.mipFilter; - this.inputRefs[i] = input; - this.inputWrap[i] = input.wrap; - } - var boolCount = shader.__paramBool.length; - var floatCount = shader.__paramFloat.length; - var intCount = shader.__paramInt.length; - this.paramCount = boolCount + floatCount + intCount; - this.paramBoolCount = boolCount; - this.paramFloatCount = floatCount; - this.paramIntCount = intCount; - var length = 0; - var p = 0; - var param; - var _g2 = 0; - var _g3 = boolCount; - while(_g2 < _g3) { - var i1 = _g2++; - param = shader.__paramBool[i1]; - this.paramPositions[p] = this.paramDataLength; - length = param.value != null ? param.value.length : 0; - this.paramLengths[p] = length; - this.paramDataLength += length; - this.paramTypes[p] = 0; - this.paramRefs_Bool[i1] = param; - ++p; - } - var param1; - var _g4 = 0; - var _g5 = floatCount; - while(_g4 < _g5) { - var i2 = _g4++; - param1 = shader.__paramFloat[i2]; - this.paramPositions[p] = this.paramDataLength; - length = param1.value != null ? param1.value.length : 0; - this.paramLengths[p] = length; - this.paramDataLength += length; - this.paramTypes[p] = 1; - this.paramRefs_Float[i2] = param1; - ++p; - } - var param2; - var _g6 = 0; - var _g7 = intCount; - while(_g6 < _g7) { - var i3 = _g6++; - param2 = shader.__paramInt[i3]; - this.paramPositions[p] = this.paramDataLength; - length = param2.value != null ? param2.value.length : 0; - this.paramLengths[p] = length; - this.paramDataLength += length; - this.paramTypes[p] = 2; - this.paramRefs_Int[i3] = param2; - ++p; - } - if(this.paramDataLength > 0) { - if(this.paramData == null) { - var elements = this.paramDataLength; - var array = null; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this1; - if(elements != null) { - this1 = new Float32Array(elements); - } else if(array != null) { - this1 = new Float32Array(array); - } else if(vector != null) { - this1 = new Float32Array(vector.__array); - } else if(view != null) { - this1 = new Float32Array(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Float32Array(buffer,0); - } else { - this1 = new Float32Array(buffer,0,len); - } - } else { - this1 = null; - } - this.paramData = this1; - } else if(this.paramDataLength > this.paramData.length) { - var elements1 = this.paramDataLength; - var array1 = null; - var vector1 = null; - var view1 = null; - var buffer1 = null; - var len1 = null; - var this2; - if(elements1 != null) { - this2 = new Float32Array(elements1); - } else if(array1 != null) { - this2 = new Float32Array(array1); - } else if(vector1 != null) { - this2 = new Float32Array(vector1.__array); - } else if(view1 != null) { - this2 = new Float32Array(view1); - } else if(buffer1 != null) { - if(len1 == null) { - this2 = new Float32Array(buffer1,0); - } else { - this2 = new Float32Array(buffer1,0,len1); - } - } else { - this2 = null; - } - var data = this2; - data.set(this.paramData); - this.paramData = data; - } - } - var boolIndex = 0; - var floatIndex = 0; - var intIndex = 0; - var paramPosition = 0; - var boolParam; - var floatParam; - var intParam; - var length1; - var _g8 = 0; - var _g9 = this.paramCount; - while(_g8 < _g9) { - var i4 = _g8++; - length1 = this.paramLengths[i4]; - if(i4 < boolCount) { - boolParam = this.paramRefs_Bool[boolIndex]; - ++boolIndex; - var _g81 = 0; - var _g91 = length1; - while(_g81 < _g91) { - var j = _g81++; - this.paramData[paramPosition] = boolParam.value[j] ? 1 : 0; - ++paramPosition; - } - } else if(i4 < boolCount + floatCount) { - floatParam = this.paramRefs_Float[floatIndex]; - ++floatIndex; - var _g82 = 0; - var _g92 = length1; - while(_g82 < _g92) { - var j1 = _g82++; - this.paramData[paramPosition] = floatParam.value[j1]; - ++paramPosition; - } - } else { - intParam = this.paramRefs_Int[intIndex]; - ++intIndex; - var _g83 = 0; - var _g93 = length1; - while(_g83 < _g93) { - var j2 = _g83++; - this.paramData[paramPosition] = intParam.value[j2]; - ++paramPosition; - } - } - } - this.shader = shader; - } - ,__class__: openfl__$internal_renderer_ShaderBuffer -}; -var openfl__$internal_renderer_cairo_CairoBitmap = function() { }; -$hxClasses["openfl._internal.renderer.cairo.CairoBitmap"] = openfl__$internal_renderer_cairo_CairoBitmap; -openfl__$internal_renderer_cairo_CairoBitmap.__name__ = "openfl._internal.renderer.cairo.CairoBitmap"; -openfl__$internal_renderer_cairo_CairoBitmap.render = function(bitmap,renderer) { - if(!bitmap.__renderable) { - return; - } - var alpha = renderer.__getAlpha(bitmap.__worldAlpha); - if(alpha > 0 && bitmap.__bitmapData != null && bitmap.__bitmapData.__isValid) { - var cairo = renderer.cairo; - renderer.__setBlendMode(bitmap.__worldBlendMode); - renderer.__pushMaskObject(bitmap); - renderer.applyMatrix(bitmap.__renderTransform,cairo); - var surface = bitmap.__bitmapData.getSurface(); - if(surface != null) { - var pattern = lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.createForSurface(surface); - lime_graphics_cairo__$CairoPattern_CairoPattern_$Impl_$.set_filter(pattern,renderer.__allowSmoothing && bitmap.smoothing ? 1 : 3); - cairo.set_source(pattern); - if(alpha == 1) { - cairo.paint(); - } else { - cairo.paintWithAlpha(alpha); - } - } - renderer.__popMaskObject(bitmap); - renderer.__setBlendMode(10); - } -}; -var openfl__$internal_renderer_cairo_CairoDisplayObject = function() { }; -$hxClasses["openfl._internal.renderer.cairo.CairoDisplayObject"] = openfl__$internal_renderer_cairo_CairoDisplayObject; -openfl__$internal_renderer_cairo_CairoDisplayObject.__name__ = "openfl._internal.renderer.cairo.CairoDisplayObject"; -openfl__$internal_renderer_cairo_CairoDisplayObject.render = function(displayObject,renderer) { -}; -var openfl__$internal_renderer_cairo_CairoGraphics = function() { }; -$hxClasses["openfl._internal.renderer.cairo.CairoGraphics"] = openfl__$internal_renderer_cairo_CairoGraphics; -openfl__$internal_renderer_cairo_CairoGraphics.__name__ = "openfl._internal.renderer.cairo.CairoGraphics"; -openfl__$internal_renderer_cairo_CairoGraphics.hitTest = function(graphics,x,y) { - return false; -}; -openfl__$internal_renderer_cairo_CairoGraphics.render = function(graphics,renderer) { -}; -openfl__$internal_renderer_cairo_CairoGraphics.renderMask = function(graphics,renderer) { -}; -var openfl__$internal_renderer_cairo_CairoTextField = function() { }; -$hxClasses["openfl._internal.renderer.cairo.CairoTextField"] = openfl__$internal_renderer_cairo_CairoTextField; -openfl__$internal_renderer_cairo_CairoTextField.__name__ = "openfl._internal.renderer.cairo.CairoTextField"; -openfl__$internal_renderer_cairo_CairoTextField.render = function(textField,renderer,transform) { -}; -var openfl__$internal_renderer_canvas_CanvasBitmap = function() { }; -$hxClasses["openfl._internal.renderer.canvas.CanvasBitmap"] = openfl__$internal_renderer_canvas_CanvasBitmap; -openfl__$internal_renderer_canvas_CanvasBitmap.__name__ = "openfl._internal.renderer.canvas.CanvasBitmap"; -openfl__$internal_renderer_canvas_CanvasBitmap.render = function(bitmap,renderer) { - if(!bitmap.__renderable) { - return; - } - var alpha = renderer.__getAlpha(bitmap.__worldAlpha); - if(alpha > 0 && bitmap.__bitmapData != null && bitmap.__bitmapData.__isValid && bitmap.__bitmapData.readable) { - var context = renderer.context; - renderer.__setBlendMode(bitmap.__worldBlendMode); - renderer.__pushMaskObject(bitmap,false); - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(bitmap.__bitmapData.image); - context.globalAlpha = alpha; - var scrollRect = bitmap.__scrollRect; - renderer.setTransform(bitmap.__renderTransform,context); - if(!renderer.__allowSmoothing || !bitmap.smoothing) { - context.imageSmoothingEnabled = false; - } - if(scrollRect == null) { - context.drawImage(bitmap.__bitmapData.image.get_src(),0,0,bitmap.__bitmapData.image.width,bitmap.__bitmapData.image.height); - } else { - context.drawImage(bitmap.__bitmapData.image.get_src(),scrollRect.x,scrollRect.y,scrollRect.width,scrollRect.height); - } - if(!renderer.__allowSmoothing || !bitmap.smoothing) { - context.imageSmoothingEnabled = true; - } - renderer.__popMaskObject(bitmap,false); - } -}; -var openfl__$internal_renderer_canvas_CanvasDisplayObject = function() { }; -$hxClasses["openfl._internal.renderer.canvas.CanvasDisplayObject"] = openfl__$internal_renderer_canvas_CanvasDisplayObject; -openfl__$internal_renderer_canvas_CanvasDisplayObject.__name__ = "openfl._internal.renderer.canvas.CanvasDisplayObject"; -openfl__$internal_renderer_canvas_CanvasDisplayObject.render = function(displayObject,renderer) { - if(displayObject.opaqueBackground == null && displayObject.__graphics == null) { - return; - } - if(!displayObject.__renderable) { - return; - } - var alpha = renderer.__getAlpha(displayObject.__worldAlpha); - if(alpha <= 0) { - return; - } - if(displayObject.opaqueBackground != null && !displayObject.__isCacheBitmapRender && displayObject.get_width() > 0 && displayObject.get_height() > 0) { - renderer.__setBlendMode(displayObject.__worldBlendMode); - renderer.__pushMaskObject(displayObject); - var context = renderer.context; - renderer.setTransform(displayObject.__renderTransform,context); - var color = displayObject.opaqueBackground; - context.fillStyle = "rgb(" + (color >>> 16 & 255) + "," + (color >>> 8 & 255) + "," + (color & 255) + ")"; - context.fillRect(0,0,displayObject.get_width(),displayObject.get_height()); - renderer.__popMaskObject(displayObject); - } - if(displayObject.__graphics != null) { - if(!(!displayObject.__renderable)) { - var alpha1 = renderer.__getAlpha(displayObject.__worldAlpha); - if(!(alpha1 <= 0)) { - var graphics = displayObject.__graphics; - if(graphics != null) { - openfl__$internal_renderer_canvas_CanvasGraphics.render(graphics,renderer); - var width = graphics.__width; - var height = graphics.__height; - var canvas = graphics.__canvas; - if(canvas != null && graphics.__visible && width >= 1 && height >= 1) { - var transform = graphics.__worldTransform; - var context1 = renderer.context; - var scrollRect = displayObject.__scrollRect; - var scale9Grid = displayObject.__worldScale9Grid; - if(scrollRect == null || scrollRect.width > 0 && scrollRect.height > 0) { - renderer.__setBlendMode(displayObject.__worldBlendMode); - renderer.__pushMaskObject(displayObject); - context1.globalAlpha = alpha1; - if(scale9Grid != null && transform.b == 0 && transform.c == 0) { - context1.setTransform(1,0,0,1,transform.tx,transform.ty); - var bounds = graphics.__bounds; - var scaleX = graphics.__renderTransform.a; - var scaleY = graphics.__renderTransform.d; - var renderScaleX = transform.a; - var renderScaleY = transform.d; - var left = Math.max(1,Math.round(scale9Grid.x * scaleX)); - var top = Math.round(scale9Grid.y * scaleY); - var right = Math.max(1,Math.round((bounds.get_right() - scale9Grid.get_right()) * scaleX)); - var bottom = Math.round((bounds.get_bottom() - scale9Grid.get_bottom()) * scaleY); - var centerWidth = Math.round(scale9Grid.width * scaleX); - var centerHeight = Math.round(scale9Grid.height * scaleY); - var renderLeft = Math.round(scale9Grid.x * renderScaleX); - var renderTop = Math.round(scale9Grid.y * renderScaleY); - var renderRight = Math.round((bounds.get_right() - scale9Grid.get_right()) * renderScaleX); - var renderBottom = Math.round((bounds.get_bottom() - scale9Grid.get_bottom()) * renderScaleY); - var renderCenterWidth = Math.round(width * renderScaleX) - renderLeft - renderRight; - var renderCenterHeight = Math.round(height * renderScaleY) - renderTop - renderBottom; - renderer.applySmoothing(context1,false); - if(centerWidth != 0 && centerHeight != 0) { - context1.drawImage(canvas,0,0,left,top,0,0,renderLeft,renderTop); - context1.drawImage(canvas,left,0,centerWidth,top,renderLeft,0,renderCenterWidth,renderTop); - context1.drawImage(canvas,left + centerWidth,0,right,top,renderLeft + renderCenterWidth,0,renderRight,renderTop); - context1.drawImage(canvas,0,top,left,centerHeight,0,renderTop,renderLeft,renderCenterHeight); - context1.drawImage(canvas,left,top,centerWidth,centerHeight,renderLeft,renderTop,renderCenterWidth,renderCenterHeight); - context1.drawImage(canvas,left + centerWidth,top,right,centerHeight,renderLeft + renderCenterWidth,renderTop,renderRight,renderCenterHeight); - context1.drawImage(canvas,0,top + centerHeight,left,bottom,0,renderTop + renderCenterHeight,renderLeft,renderBottom); - context1.drawImage(canvas,left,top + centerHeight,centerWidth,bottom,renderLeft,renderTop + renderCenterHeight,renderCenterWidth,renderBottom); - context1.drawImage(canvas,left + centerWidth,top + centerHeight,right,bottom,renderLeft + renderCenterWidth,renderTop + renderCenterHeight,renderRight,renderBottom); - } else if(centerWidth == 0 && centerHeight != 0) { - var renderWidth = renderLeft + renderCenterWidth + renderRight; - context1.drawImage(canvas,0,0,width,top,0,0,renderWidth,renderTop); - context1.drawImage(canvas,0,top,width,centerHeight,0,renderTop,renderWidth,renderCenterHeight); - context1.drawImage(canvas,0,top + centerHeight,width,bottom,0,renderTop + renderCenterHeight,renderWidth,renderBottom); - } else if(centerHeight == 0 && centerWidth != 0) { - var renderHeight = renderTop + renderCenterHeight + renderBottom; - context1.drawImage(canvas,0,0,left,height,0,0,renderLeft,renderHeight); - context1.drawImage(canvas,left,0,centerWidth,height,renderLeft,0,renderCenterWidth,renderHeight); - context1.drawImage(canvas,left + centerWidth,0,right,height,renderLeft + renderCenterWidth,0,renderRight,renderHeight); - } - } else { - renderer.setTransform(transform,context1); - if(renderer.__isDOM) { - var reverseScale = 1 / renderer.pixelRatio; - context1.scale(reverseScale,reverseScale); - } - context1.drawImage(canvas,0,0,width,height); - } - renderer.__popMaskObject(displayObject); - } - } - } - } - } - } -}; -var openfl__$internal_renderer_canvas_CanvasGraphics = function() { }; -$hxClasses["openfl._internal.renderer.canvas.CanvasGraphics"] = openfl__$internal_renderer_canvas_CanvasGraphics; -openfl__$internal_renderer_canvas_CanvasGraphics.__name__ = "openfl._internal.renderer.canvas.CanvasGraphics"; -openfl__$internal_renderer_canvas_CanvasGraphics.allowSmoothing = null; -openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill = null; -openfl__$internal_renderer_canvas_CanvasGraphics.bitmapStroke = null; -openfl__$internal_renderer_canvas_CanvasGraphics.bitmapRepeat = null; -openfl__$internal_renderer_canvas_CanvasGraphics.bounds = null; -openfl__$internal_renderer_canvas_CanvasGraphics.graphics = null; -openfl__$internal_renderer_canvas_CanvasGraphics.hasFill = null; -openfl__$internal_renderer_canvas_CanvasGraphics.hasStroke = null; -openfl__$internal_renderer_canvas_CanvasGraphics.hitTesting = null; -openfl__$internal_renderer_canvas_CanvasGraphics.inversePendingMatrix = null; -openfl__$internal_renderer_canvas_CanvasGraphics.pendingMatrix = null; -openfl__$internal_renderer_canvas_CanvasGraphics.windingRule = null; -openfl__$internal_renderer_canvas_CanvasGraphics.worldAlpha = null; -openfl__$internal_renderer_canvas_CanvasGraphics.context = null; -openfl__$internal_renderer_canvas_CanvasGraphics.hitTestCanvas = null; -openfl__$internal_renderer_canvas_CanvasGraphics.hitTestContext = null; -openfl__$internal_renderer_canvas_CanvasGraphics.closePath = function(strokeBefore) { - if(strokeBefore == null) { - strokeBefore = false; - } - if(openfl__$internal_renderer_canvas_CanvasGraphics.context.strokeStyle == null) { - return; - } - if(!strokeBefore) { - openfl__$internal_renderer_canvas_CanvasGraphics.context.closePath(); - } - openfl__$internal_renderer_canvas_CanvasGraphics.context.stroke(); - if(strokeBefore) { - openfl__$internal_renderer_canvas_CanvasGraphics.context.closePath(); - } - openfl__$internal_renderer_canvas_CanvasGraphics.context.beginPath(); -}; -openfl__$internal_renderer_canvas_CanvasGraphics.createBitmapFill = function(bitmap,bitmapRepeat,smooth) { - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(bitmap.image); - openfl__$internal_renderer_canvas_CanvasGraphics.setSmoothing(smooth); - return openfl__$internal_renderer_canvas_CanvasGraphics.context.createPattern(bitmap.image.get_src(),bitmapRepeat ? "repeat" : "no-repeat"); -}; -openfl__$internal_renderer_canvas_CanvasGraphics.createGradientPattern = function(type,colors,alphas,ratios,matrix,spreadMethod,interpolationMethod,focalPointRatio) { - var gradientFill = null; - var point = null; - var point2 = null; - var releaseMatrix = false; - if(matrix == null) { - matrix = openfl_geom_Matrix.__pool.get(); - releaseMatrix = true; - } - switch(type) { - case 0: - point = openfl_geom_Point.__pool.get(); - point.setTo(-819.2,0); - var px = point.x; - var py = point.y; - point.x = px * matrix.a + py * matrix.c + matrix.tx; - point.y = px * matrix.b + py * matrix.d + matrix.ty; - point2 = openfl_geom_Point.__pool.get(); - point2.setTo(819.2,0); - var px1 = point2.x; - var py1 = point2.y; - point2.x = px1 * matrix.a + py1 * matrix.c + matrix.tx; - point2.y = px1 * matrix.b + py1 * matrix.d + matrix.ty; - gradientFill = openfl__$internal_renderer_canvas_CanvasGraphics.context.createLinearGradient(point.x,point.y,point2.x,point2.y); - break; - case 1: - point = openfl_geom_Point.__pool.get(); - point.setTo(1638.4,0); - var px2 = point.x; - var py2 = point.y; - point.x = px2 * matrix.a + py2 * matrix.c + matrix.tx; - point.y = px2 * matrix.b + py2 * matrix.d + matrix.ty; - gradientFill = openfl__$internal_renderer_canvas_CanvasGraphics.context.createRadialGradient(matrix.tx,matrix.ty,0,matrix.tx,matrix.ty,Math.abs((point.x - matrix.tx) / 2)); - break; - } - var rgb; - var alpha; - var r; - var g; - var b; - var ratio; - var _g = 0; - var _g1 = colors.length; - while(_g < _g1) { - var i = _g++; - rgb = colors[i]; - alpha = alphas[i]; - r = (rgb & 16711680) >>> 16; - g = (rgb & 65280) >>> 8; - b = rgb & 255; - ratio = ratios[i] / 255; - if(ratio < 0) { - ratio = 0; - } - if(ratio > 1) { - ratio = 1; - } - gradientFill.addColorStop(ratio,"rgba(" + r + ", " + g + ", " + b + ", " + alpha + ")"); - } - if(point != null) { - openfl_geom_Point.__pool.release(point); - } - if(point2 != null) { - openfl_geom_Point.__pool.release(point2); - } - if(releaseMatrix) { - openfl_geom_Matrix.__pool.release(matrix); - } - return gradientFill; -}; -openfl__$internal_renderer_canvas_CanvasGraphics.createTempPatternCanvas = function(bitmap,repeat,width,height) { - var canvas = window.document.createElement("canvas"); - var context = canvas.getContext("2d"); - canvas.width = width; - canvas.height = height; - var tmp = bitmap.image.get_src(); - context.fillStyle = context.createPattern(tmp,repeat ? "repeat" : "no-repeat"); - context.beginPath(); - context.moveTo(0,0); - context.lineTo(0,height); - context.lineTo(width,height); - context.lineTo(width,0); - context.lineTo(0,0); - context.closePath(); - if(!openfl__$internal_renderer_canvas_CanvasGraphics.hitTesting) { - context.fill(openfl__$internal_renderer_canvas_CanvasGraphics.windingRule); - } - return canvas; -}; -openfl__$internal_renderer_canvas_CanvasGraphics.drawRoundRect = function(x,y,width,height,ellipseWidth,ellipseHeight) { - if(ellipseHeight == null) { - ellipseHeight = ellipseWidth; - } - ellipseWidth *= 0.5; - ellipseHeight *= 0.5; - if(ellipseWidth > width / 2) { - ellipseWidth = width / 2; - } - if(ellipseHeight > height / 2) { - ellipseHeight = height / 2; - } - var xe = x + width; - var ye = y + height; - var cx1 = -ellipseWidth + ellipseWidth * 0.70710678118654752440084436210485; - var cx2 = -ellipseWidth + ellipseWidth * 0.4142135623730950488016887242097; - var cy1 = -ellipseHeight + ellipseHeight * 0.70710678118654752440084436210485; - var cy2 = -ellipseHeight + ellipseHeight * 0.4142135623730950488016887242097; - openfl__$internal_renderer_canvas_CanvasGraphics.context.moveTo(xe,ye - ellipseHeight); - openfl__$internal_renderer_canvas_CanvasGraphics.context.quadraticCurveTo(xe,ye + cy2,xe + cx1,ye + cy1); - openfl__$internal_renderer_canvas_CanvasGraphics.context.quadraticCurveTo(xe + cx2,ye,xe - ellipseWidth,ye); - openfl__$internal_renderer_canvas_CanvasGraphics.context.lineTo(x + ellipseWidth,ye); - openfl__$internal_renderer_canvas_CanvasGraphics.context.quadraticCurveTo(x - cx2,ye,x - cx1,ye + cy1); - openfl__$internal_renderer_canvas_CanvasGraphics.context.quadraticCurveTo(x,ye + cy2,x,ye - ellipseHeight); - openfl__$internal_renderer_canvas_CanvasGraphics.context.lineTo(x,y + ellipseHeight); - openfl__$internal_renderer_canvas_CanvasGraphics.context.quadraticCurveTo(x,y - cy2,x - cx1,y - cy1); - openfl__$internal_renderer_canvas_CanvasGraphics.context.quadraticCurveTo(x - cx2,y,x + ellipseWidth,y); - openfl__$internal_renderer_canvas_CanvasGraphics.context.lineTo(xe - ellipseWidth,y); - openfl__$internal_renderer_canvas_CanvasGraphics.context.quadraticCurveTo(xe + cx2,y,xe + cx1,y - cy1); - openfl__$internal_renderer_canvas_CanvasGraphics.context.quadraticCurveTo(xe,y - cy2,xe,y + ellipseHeight); - openfl__$internal_renderer_canvas_CanvasGraphics.context.lineTo(xe,ye - ellipseHeight); -}; -openfl__$internal_renderer_canvas_CanvasGraphics.endFill = function() { - openfl__$internal_renderer_canvas_CanvasGraphics.context.beginPath(); - openfl__$internal_renderer_canvas_CanvasGraphics.playCommands(openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands,false); - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.clear(); -}; -openfl__$internal_renderer_canvas_CanvasGraphics.endStroke = function() { - openfl__$internal_renderer_canvas_CanvasGraphics.context.beginPath(); - openfl__$internal_renderer_canvas_CanvasGraphics.playCommands(openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands,true); - openfl__$internal_renderer_canvas_CanvasGraphics.context.closePath(); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.clear(); -}; -openfl__$internal_renderer_canvas_CanvasGraphics.hitTest = function(graphics,x,y) { - openfl__$internal_renderer_canvas_CanvasGraphics.bounds = graphics.__bounds; - openfl__$internal_renderer_canvas_CanvasGraphics.graphics = graphics; - if(graphics.__commands.get_length() == 0 || openfl__$internal_renderer_canvas_CanvasGraphics.bounds == null || openfl__$internal_renderer_canvas_CanvasGraphics.bounds.width <= 0 || openfl__$internal_renderer_canvas_CanvasGraphics.bounds.height <= 0) { - return false; - } else { - openfl__$internal_renderer_canvas_CanvasGraphics.hitTesting = true; - var transform = graphics.__renderTransform; - var px = x * transform.a + y * transform.c + transform.tx; - var py = x * transform.b + y * transform.d + transform.ty; - x = px; - y = py; - x -= openfl__$internal_renderer_canvas_CanvasGraphics.bounds.x * transform.a + openfl__$internal_renderer_canvas_CanvasGraphics.bounds.y * transform.c + transform.tx; - y -= openfl__$internal_renderer_canvas_CanvasGraphics.bounds.x * transform.b + openfl__$internal_renderer_canvas_CanvasGraphics.bounds.y * transform.d + transform.ty; - var cacheCanvas = graphics.__canvas; - var cacheContext = graphics.__context; - graphics.__canvas = openfl__$internal_renderer_canvas_CanvasGraphics.hitTestCanvas; - graphics.__context = openfl__$internal_renderer_canvas_CanvasGraphics.hitTestContext; - openfl__$internal_renderer_canvas_CanvasGraphics.context = graphics.__context; - openfl__$internal_renderer_canvas_CanvasGraphics.context.setTransform(transform.a,transform.b,transform.c,transform.d,transform.tx,transform.ty); - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.clear(); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.clear(); - openfl__$internal_renderer_canvas_CanvasGraphics.hasFill = false; - openfl__$internal_renderer_canvas_CanvasGraphics.hasStroke = false; - openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill = null; - openfl__$internal_renderer_canvas_CanvasGraphics.bitmapRepeat = false; - openfl__$internal_renderer_canvas_CanvasGraphics.windingRule = "evenodd"; - var data = new openfl__$internal_renderer_DrawCommandReader(graphics.__commands); - var _g = 0; - var _g1 = graphics.__commands.types; - while(_g < _g1.length) { - var type = _g1[_g]; - ++_g; - switch(type._hx_index) { - case 0:case 1:case 2:case 3: - openfl__$internal_renderer_canvas_CanvasGraphics.endFill(); - if(openfl__$internal_renderer_canvas_CanvasGraphics.hasFill && openfl__$internal_renderer_canvas_CanvasGraphics.context.isPointInPath(x,y,openfl__$internal_renderer_canvas_CanvasGraphics.windingRule)) { - data.destroy(); - graphics.__canvas = cacheCanvas; - graphics.__context = cacheContext; - return true; - } - openfl__$internal_renderer_canvas_CanvasGraphics.endStroke(); - if(openfl__$internal_renderer_canvas_CanvasGraphics.hasStroke && openfl__$internal_renderer_canvas_CanvasGraphics.context.isPointInStroke(x,y)) { - data.destroy(); - graphics.__canvas = cacheCanvas; - graphics.__context = cacheContext; - return true; - } - if(type == openfl__$internal_renderer_DrawCommandType.BEGIN_BITMAP_FILL) { - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_BITMAP_FILL; - var this1 = data; - var c = this1; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.beginBitmapFill(c.buffer.o[c.oPos],c.buffer.o[c.oPos + 1],c.buffer.b[c.bPos],c.buffer.b[c.bPos + 1]); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.beginBitmapFill(c.buffer.o[c.oPos],c.buffer.o[c.oPos + 1],c.buffer.b[c.bPos],c.buffer.b[c.bPos + 1]); - } else if(type == openfl__$internal_renderer_DrawCommandType.BEGIN_GRADIENT_FILL) { - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_GRADIENT_FILL; - var this2 = data; - var c1 = this2; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.beginGradientFill(c1.buffer.o[c1.oPos],c1.buffer.ii[c1.iiPos],c1.buffer.ff[c1.ffPos],c1.buffer.ii[c1.iiPos + 1],c1.buffer.o[c1.oPos + 1],c1.buffer.o[c1.oPos + 2],c1.buffer.o[c1.oPos + 3],c1.buffer.f[c1.fPos]); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.beginGradientFill(c1.buffer.o[c1.oPos],c1.buffer.ii[c1.iiPos],c1.buffer.ff[c1.ffPos],c1.buffer.ii[c1.iiPos + 1],c1.buffer.o[c1.oPos + 1],c1.buffer.o[c1.oPos + 2],c1.buffer.o[c1.oPos + 3],c1.buffer.f[c1.fPos]); - } else if(type == openfl__$internal_renderer_DrawCommandType.BEGIN_SHADER_FILL) { - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_SHADER_FILL; - var this3 = data; - var c2 = this3; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.beginShaderFill(c2.buffer.o[c2.oPos]); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.beginShaderFill(c2.buffer.o[c2.oPos]); - } else { - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_FILL; - var this4 = data; - var c3 = this4; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.beginFill(c3.buffer.i[c3.iPos],1); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.beginFill(c3.buffer.i[c3.iPos],1); - } - break; - case 4: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.CUBIC_CURVE_TO; - var this5 = data; - var c4 = this5; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.cubicCurveTo(c4.buffer.f[c4.fPos],c4.buffer.f[c4.fPos + 1],c4.buffer.f[c4.fPos + 2],c4.buffer.f[c4.fPos + 3],c4.buffer.f[c4.fPos + 4],c4.buffer.f[c4.fPos + 5]); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.cubicCurveTo(c4.buffer.f[c4.fPos],c4.buffer.f[c4.fPos + 1],c4.buffer.f[c4.fPos + 2],c4.buffer.f[c4.fPos + 3],c4.buffer.f[c4.fPos + 4],c4.buffer.f[c4.fPos + 5]); - break; - case 5: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.CURVE_TO; - var this6 = data; - var c5 = this6; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.curveTo(c5.buffer.f[c5.fPos],c5.buffer.f[c5.fPos + 1],c5.buffer.f[c5.fPos + 2],c5.buffer.f[c5.fPos + 3]); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.curveTo(c5.buffer.f[c5.fPos],c5.buffer.f[c5.fPos + 1],c5.buffer.f[c5.fPos + 2],c5.buffer.f[c5.fPos + 3]); - break; - case 6: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_CIRCLE; - var this7 = data; - var c6 = this7; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.drawCircle(c6.buffer.f[c6.fPos],c6.buffer.f[c6.fPos + 1],c6.buffer.f[c6.fPos + 2]); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.drawCircle(c6.buffer.f[c6.fPos],c6.buffer.f[c6.fPos + 1],c6.buffer.f[c6.fPos + 2]); - break; - case 7: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_ELLIPSE; - var this8 = data; - var c7 = this8; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.drawEllipse(c7.buffer.f[c7.fPos],c7.buffer.f[c7.fPos + 1],c7.buffer.f[c7.fPos + 2],c7.buffer.f[c7.fPos + 3]); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.drawEllipse(c7.buffer.f[c7.fPos],c7.buffer.f[c7.fPos + 1],c7.buffer.f[c7.fPos + 2],c7.buffer.f[c7.fPos + 3]); - break; - case 9: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_RECT; - var this9 = data; - var c8 = this9; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.drawRect(c8.buffer.f[c8.fPos],c8.buffer.f[c8.fPos + 1],c8.buffer.f[c8.fPos + 2],c8.buffer.f[c8.fPos + 3]); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.drawRect(c8.buffer.f[c8.fPos],c8.buffer.f[c8.fPos + 1],c8.buffer.f[c8.fPos + 2],c8.buffer.f[c8.fPos + 3]); - break; - case 10: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_ROUND_RECT; - var this10 = data; - var c9 = this10; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.drawRoundRect(c9.buffer.f[c9.fPos],c9.buffer.f[c9.fPos + 1],c9.buffer.f[c9.fPos + 2],c9.buffer.f[c9.fPos + 3],c9.buffer.f[c9.fPos + 4],c9.buffer.o[c9.oPos]); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.drawRoundRect(c9.buffer.f[c9.fPos],c9.buffer.f[c9.fPos + 1],c9.buffer.f[c9.fPos + 2],c9.buffer.f[c9.fPos + 3],c9.buffer.f[c9.fPos + 4],c9.buffer.o[c9.oPos]); - break; - case 13: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.END_FILL; - var this11 = data; - openfl__$internal_renderer_canvas_CanvasGraphics.endFill(); - if(openfl__$internal_renderer_canvas_CanvasGraphics.hasFill && openfl__$internal_renderer_canvas_CanvasGraphics.context.isPointInPath(x,y,openfl__$internal_renderer_canvas_CanvasGraphics.windingRule)) { - data.destroy(); - graphics.__canvas = cacheCanvas; - graphics.__context = cacheContext; - return true; - } - openfl__$internal_renderer_canvas_CanvasGraphics.endStroke(); - if(openfl__$internal_renderer_canvas_CanvasGraphics.hasStroke && openfl__$internal_renderer_canvas_CanvasGraphics.context.isPointInStroke(x,y)) { - data.destroy(); - graphics.__canvas = cacheCanvas; - graphics.__context = cacheContext; - return true; - } - openfl__$internal_renderer_canvas_CanvasGraphics.hasFill = false; - openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill = null; - break; - case 14: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_BITMAP_STYLE; - var this12 = data; - var c10 = this12; - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.lineBitmapStyle(c10.buffer.o[c10.oPos],c10.buffer.o[c10.oPos + 1],c10.buffer.b[c10.bPos],c10.buffer.b[c10.bPos + 1]); - break; - case 15: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_GRADIENT_STYLE; - var this13 = data; - var c11 = this13; - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.lineGradientStyle(c11.buffer.o[c11.oPos],c11.buffer.ii[c11.iiPos],c11.buffer.ff[c11.ffPos],c11.buffer.ii[c11.iiPos + 1],c11.buffer.o[c11.oPos + 1],c11.buffer.o[c11.oPos + 2],c11.buffer.o[c11.oPos + 3],c11.buffer.f[c11.fPos]); - break; - case 16: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_STYLE; - var this14 = data; - var c12 = this14; - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.lineStyle(c12.buffer.o[c12.oPos],c12.buffer.i[c12.iPos],1,c12.buffer.b[c12.bPos],c12.buffer.o[c12.oPos + 1],c12.buffer.o[c12.oPos + 2],c12.buffer.o[c12.oPos + 3],c12.buffer.f[c12.fPos + 1]); - break; - case 17: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_TO; - var this15 = data; - var c13 = this15; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.lineTo(c13.buffer.f[c13.fPos],c13.buffer.f[c13.fPos + 1]); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.lineTo(c13.buffer.f[c13.fPos],c13.buffer.f[c13.fPos + 1]); - break; - case 18: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.MOVE_TO; - var this16 = data; - var c14 = this16; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.moveTo(c14.buffer.f[c14.fPos],c14.buffer.f[c14.fPos + 1]); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.moveTo(c14.buffer.f[c14.fPos],c14.buffer.f[c14.fPos + 1]); - break; - case 21: - openfl__$internal_renderer_canvas_CanvasGraphics.windingRule = "evenodd"; - break; - case 22: - openfl__$internal_renderer_canvas_CanvasGraphics.windingRule = "nonzero"; - break; - default: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - } - } - var hitTest = false; - if(openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.get_length() > 0) { - openfl__$internal_renderer_canvas_CanvasGraphics.endFill(); - } - if(openfl__$internal_renderer_canvas_CanvasGraphics.hasFill && openfl__$internal_renderer_canvas_CanvasGraphics.context.isPointInPath(x,y,openfl__$internal_renderer_canvas_CanvasGraphics.windingRule)) { - hitTest = true; - } - if(openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.get_length() > 0) { - openfl__$internal_renderer_canvas_CanvasGraphics.endStroke(); - } - if(openfl__$internal_renderer_canvas_CanvasGraphics.hasStroke && openfl__$internal_renderer_canvas_CanvasGraphics.context.isPointInStroke(x,y)) { - hitTest = true; - } - data.destroy(); - graphics.__canvas = cacheCanvas; - graphics.__context = cacheContext; - return hitTest; - } -}; -openfl__$internal_renderer_canvas_CanvasGraphics.isCCW = function(x1,y1,x2,y2,x3,y3) { - return (x2 - x1) * (y3 - y1) - (y2 - y1) * (x3 - x1) < 0; -}; -openfl__$internal_renderer_canvas_CanvasGraphics.normalizeUVT = function(uvt,skipT) { - if(skipT == null) { - skipT = false; - } - var max = -Infinity; - var tmp = -Infinity; - var len = uvt.get_length(); - var _g = 1; - var _g1 = len + 1; - while(_g < _g1) { - var t = _g++; - if(skipT && t % 3 == 0) { - continue; - } - tmp = uvt.get(t - 1); - if(max < tmp) { - max = tmp; - } - } - if(!skipT) { - return { max : max, uvt : uvt}; - } - var result = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - var _g2 = 1; - var _g3 = len + 1; - while(_g2 < _g3) { - var t1 = _g2++; - if(skipT && t1 % 3 == 0) { - continue; - } - result.push(uvt.get(t1 - 1)); - } - return { max : max, uvt : result}; -}; -openfl__$internal_renderer_canvas_CanvasGraphics.playCommands = function(commands,stroke) { - if(stroke == null) { - stroke = false; - } - openfl__$internal_renderer_canvas_CanvasGraphics.bounds = openfl__$internal_renderer_canvas_CanvasGraphics.graphics.__bounds; - var offsetX = openfl__$internal_renderer_canvas_CanvasGraphics.bounds.x; - var offsetY = openfl__$internal_renderer_canvas_CanvasGraphics.bounds.y; - var positionX = 0.0; - var positionY = 0.0; - var closeGap = false; - var startX = 0.0; - var startY = 0.0; - var setStart = false; - openfl__$internal_renderer_canvas_CanvasGraphics.windingRule = "evenodd"; - openfl__$internal_renderer_canvas_CanvasGraphics.setSmoothing(true); - var hasPath = false; - var data = new openfl__$internal_renderer_DrawCommandReader(commands); - var x; - var y; - var width; - var height; - var kappa = .5522848; - var ox; - var oy; - var xe; - var ye; - var xm; - var ym; - var r; - var g; - var b; - var optimizationUsed; - var canOptimizeMatrix; - var st; - var sr; - var sb; - var sl; - var stl = null; - var sbr = null; - var _g = 0; - var _g1 = commands.types; - _hx_loop1: while(_g < _g1.length) { - var type = _g1[_g]; - ++_g; - switch(type._hx_index) { - case 0: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_BITMAP_FILL; - var this1 = data; - var c = this1; - openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill = c.buffer.o[c.oPos]; - openfl__$internal_renderer_canvas_CanvasGraphics.context.fillStyle = openfl__$internal_renderer_canvas_CanvasGraphics.createBitmapFill(c.buffer.o[c.oPos],c.buffer.b[c.bPos],c.buffer.b[c.bPos + 1]); - openfl__$internal_renderer_canvas_CanvasGraphics.hasFill = true; - if(c.buffer.o[c.oPos + 1] != null) { - openfl__$internal_renderer_canvas_CanvasGraphics.pendingMatrix = c.buffer.o[c.oPos + 1]; - openfl__$internal_renderer_canvas_CanvasGraphics.inversePendingMatrix = c.buffer.o[c.oPos + 1].clone(); - openfl__$internal_renderer_canvas_CanvasGraphics.inversePendingMatrix.invert(); - } else { - openfl__$internal_renderer_canvas_CanvasGraphics.pendingMatrix = null; - openfl__$internal_renderer_canvas_CanvasGraphics.inversePendingMatrix = null; - } - break; - case 1: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_FILL; - var this2 = data; - var c1 = this2; - if(c1.buffer.f[c1.fPos] < 0.005) { - openfl__$internal_renderer_canvas_CanvasGraphics.hasFill = false; - } else { - if(c1.buffer.f[c1.fPos] == 1) { - var tmp = StringTools.hex(c1.buffer.i[c1.iPos] & 16777215,6); - openfl__$internal_renderer_canvas_CanvasGraphics.context.fillStyle = "#" + tmp; - } else { - r = (c1.buffer.i[c1.iPos] & 16711680) >>> 16; - g = (c1.buffer.i[c1.iPos] & 65280) >>> 8; - b = c1.buffer.i[c1.iPos] & 255; - openfl__$internal_renderer_canvas_CanvasGraphics.context.fillStyle = "rgba(" + r + ", " + g + ", " + b + ", " + c1.buffer.f[c1.fPos] + ")"; - } - openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill = null; - openfl__$internal_renderer_canvas_CanvasGraphics.setSmoothing(true); - openfl__$internal_renderer_canvas_CanvasGraphics.hasFill = true; - } - break; - case 2: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_GRADIENT_FILL; - var this3 = data; - var c2 = this3; - openfl__$internal_renderer_canvas_CanvasGraphics.context.fillStyle = openfl__$internal_renderer_canvas_CanvasGraphics.createGradientPattern(c2.buffer.o[c2.oPos],c2.buffer.ii[c2.iiPos],c2.buffer.ff[c2.ffPos],c2.buffer.ii[c2.iiPos + 1],c2.buffer.o[c2.oPos + 1],c2.buffer.o[c2.oPos + 2],c2.buffer.o[c2.oPos + 3],c2.buffer.f[c2.fPos]); - openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill = null; - openfl__$internal_renderer_canvas_CanvasGraphics.setSmoothing(true); - openfl__$internal_renderer_canvas_CanvasGraphics.hasFill = true; - break; - case 3: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_SHADER_FILL; - var this4 = data; - var c3 = this4; - var shaderBuffer = c3.buffer.o[c3.oPos]; - if(shaderBuffer.inputCount > 0) { - openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill = shaderBuffer.inputs[0]; - openfl__$internal_renderer_canvas_CanvasGraphics.context.fillStyle = openfl__$internal_renderer_canvas_CanvasGraphics.createBitmapFill(openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill,shaderBuffer.inputWrap[0] != 0,shaderBuffer.inputFilter[0] != 5); - openfl__$internal_renderer_canvas_CanvasGraphics.hasFill = true; - openfl__$internal_renderer_canvas_CanvasGraphics.pendingMatrix = null; - openfl__$internal_renderer_canvas_CanvasGraphics.inversePendingMatrix = null; - } - break; - case 4: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.CUBIC_CURVE_TO; - var this5 = data; - var c4 = this5; - hasPath = true; - openfl__$internal_renderer_canvas_CanvasGraphics.context.bezierCurveTo(c4.buffer.f[c4.fPos] - offsetX,c4.buffer.f[c4.fPos + 1] - offsetY,c4.buffer.f[c4.fPos + 2] - offsetX,c4.buffer.f[c4.fPos + 3] - offsetY,c4.buffer.f[c4.fPos + 4] - offsetX,c4.buffer.f[c4.fPos + 5] - offsetY); - break; - case 5: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.CURVE_TO; - var this6 = data; - var c5 = this6; - hasPath = true; - openfl__$internal_renderer_canvas_CanvasGraphics.context.quadraticCurveTo(c5.buffer.f[c5.fPos] - offsetX,c5.buffer.f[c5.fPos + 1] - offsetY,c5.buffer.f[c5.fPos + 2] - offsetX,c5.buffer.f[c5.fPos + 3] - offsetY); - break; - case 6: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_CIRCLE; - var this7 = data; - var c6 = this7; - hasPath = true; - openfl__$internal_renderer_canvas_CanvasGraphics.context.moveTo(c6.buffer.f[c6.fPos] - offsetX + c6.buffer.f[c6.fPos + 2],c6.buffer.f[c6.fPos + 1] - offsetY); - openfl__$internal_renderer_canvas_CanvasGraphics.context.arc(c6.buffer.f[c6.fPos] - offsetX,c6.buffer.f[c6.fPos + 1] - offsetY,c6.buffer.f[c6.fPos + 2],0,Math.PI * 2,true); - break; - case 7: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_ELLIPSE; - var this8 = data; - var c7 = this8; - hasPath = true; - x = c7.buffer.f[c7.fPos]; - y = c7.buffer.f[c7.fPos + 1]; - width = c7.buffer.f[c7.fPos + 2]; - height = c7.buffer.f[c7.fPos + 3]; - x -= offsetX; - y -= offsetY; - ox = width / 2 * kappa; - oy = height / 2 * kappa; - xe = x + width; - ye = y + height; - xm = x + width / 2; - ym = y + height / 2; - openfl__$internal_renderer_canvas_CanvasGraphics.context.moveTo(x,ym); - openfl__$internal_renderer_canvas_CanvasGraphics.context.bezierCurveTo(x,ym - oy,xm - ox,y,xm,y); - openfl__$internal_renderer_canvas_CanvasGraphics.context.bezierCurveTo(xm + ox,y,xe,ym - oy,xe,ym); - openfl__$internal_renderer_canvas_CanvasGraphics.context.bezierCurveTo(xe,ym + oy,xm + ox,ye,xm,ye); - openfl__$internal_renderer_canvas_CanvasGraphics.context.bezierCurveTo(xm - ox,ye,x,ym + oy,x,ym); - break; - case 8: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_QUADS; - var this9 = data; - var c8 = this9; - var rects = c8.buffer.o[c8.oPos]; - var indices = c8.buffer.o[c8.oPos + 1]; - var transforms = c8.buffer.o[c8.oPos + 2]; - var hasIndices = indices != null; - var transformABCD = false; - var transformXY = false; - var length = hasIndices ? indices.get_length() : Math.floor(rects.get_length() / 4); - if(length == 0) { - return; - } - if(transforms != null) { - if(transforms.get_length() >= length * 6) { - transformABCD = true; - transformXY = true; - } else if(transforms.get_length() >= length * 4) { - transformABCD = true; - } else if(transforms.get_length() >= length * 2) { - transformXY = true; - } - } - var tileRect = openfl_geom_Rectangle.__pool.get(); - var tileTransform = openfl_geom_Matrix.__pool.get(); - var transform = openfl__$internal_renderer_canvas_CanvasGraphics.graphics.__renderTransform; - var alpha = openfl__$internal_renderer_canvas_CanvasGraphics.worldAlpha; - var ri; - var ti; - openfl__$internal_renderer_canvas_CanvasGraphics.context.save(); - var _g2 = 0; - var _g11 = length; - while(_g2 < _g11) { - var i = _g2++; - ri = hasIndices ? indices.get(i) * 4 : i * 4; - if(ri < 0) { - continue; - } - tileRect.setTo(rects.get(ri),rects.get(ri + 1),rects.get(ri + 2),rects.get(ri + 3)); - if(tileRect.width <= 0 || tileRect.height <= 0) { - continue; - } - if(transformABCD && transformXY) { - ti = i * 6; - tileTransform.setTo(transforms.get(ti),transforms.get(ti + 1),transforms.get(ti + 2),transforms.get(ti + 3),transforms.get(ti + 4),transforms.get(ti + 5)); - } else if(transformABCD) { - ti = i * 4; - tileTransform.setTo(transforms.get(ti),transforms.get(ti + 1),transforms.get(ti + 2),transforms.get(ti + 3),tileRect.x,tileRect.y); - } else if(transformXY) { - ti = i * 2; - tileTransform.tx = transforms.get(ti); - tileTransform.ty = transforms.get(ti + 1); - } else { - tileTransform.tx = tileRect.x; - tileTransform.ty = tileRect.y; - } - tileTransform.tx += positionX - offsetX; - tileTransform.ty += positionY - offsetY; - tileTransform.concat(transform); - openfl__$internal_renderer_canvas_CanvasGraphics.context.setTransform(tileTransform.a,tileTransform.b,tileTransform.c,tileTransform.d,tileTransform.tx,tileTransform.ty); - if(openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill != null) { - openfl__$internal_renderer_canvas_CanvasGraphics.context.drawImage(openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill.image.get_src(),tileRect.x,tileRect.y,tileRect.width,tileRect.height,0,0,tileRect.width,tileRect.height); - } else { - openfl__$internal_renderer_canvas_CanvasGraphics.context.fillRect(0,0,tileRect.width,tileRect.height); - } - } - openfl_geom_Rectangle.__pool.release(tileRect); - openfl_geom_Matrix.__pool.release(tileTransform); - openfl__$internal_renderer_canvas_CanvasGraphics.context.restore(); - break; - case 9: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_RECT; - var this10 = data; - var c9 = this10; - optimizationUsed = false; - if(openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill != null && !openfl__$internal_renderer_canvas_CanvasGraphics.hitTesting) { - st = 0; - sr = 0; - sb = 0; - sl = 0; - canOptimizeMatrix = true; - if(openfl__$internal_renderer_canvas_CanvasGraphics.pendingMatrix != null) { - if(openfl__$internal_renderer_canvas_CanvasGraphics.pendingMatrix.b != 0 || openfl__$internal_renderer_canvas_CanvasGraphics.pendingMatrix.c != 0) { - canOptimizeMatrix = false; - } else { - if(stl == null) { - stl = openfl_geom_Point.__pool.get(); - } - if(sbr == null) { - sbr = openfl_geom_Point.__pool.get(); - } - stl.setTo(c9.buffer.f[c9.fPos],c9.buffer.f[c9.fPos + 1]); - var _this = openfl__$internal_renderer_canvas_CanvasGraphics.inversePendingMatrix; - var px = stl.x; - var py = stl.y; - stl.x = px * _this.a + py * _this.c + _this.tx; - stl.y = px * _this.b + py * _this.d + _this.ty; - sbr.setTo(c9.buffer.f[c9.fPos] + c9.buffer.f[c9.fPos + 2],c9.buffer.f[c9.fPos + 1] + c9.buffer.f[c9.fPos + 3]); - var _this1 = openfl__$internal_renderer_canvas_CanvasGraphics.inversePendingMatrix; - var px1 = sbr.x; - var py1 = sbr.y; - sbr.x = px1 * _this1.a + py1 * _this1.c + _this1.tx; - sbr.y = px1 * _this1.b + py1 * _this1.d + _this1.ty; - st = stl.y; - sl = stl.x; - sb = sbr.y; - sr = sbr.x; - } - } else { - st = c9.buffer.f[c9.fPos + 1]; - sl = c9.buffer.f[c9.fPos]; - sb = c9.buffer.f[c9.fPos + 1] + c9.buffer.f[c9.fPos + 3]; - sr = c9.buffer.f[c9.fPos] + c9.buffer.f[c9.fPos + 2]; - } - if(canOptimizeMatrix && st >= 0 && sl >= 0 && sr <= openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill.width && sb <= openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill.height) { - optimizationUsed = true; - if(!openfl__$internal_renderer_canvas_CanvasGraphics.hitTesting) { - openfl__$internal_renderer_canvas_CanvasGraphics.context.drawImage(openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill.image.get_src(),sl,st,sr - sl,sb - st,c9.buffer.f[c9.fPos] - offsetX,c9.buffer.f[c9.fPos + 1] - offsetY,c9.buffer.f[c9.fPos + 2],c9.buffer.f[c9.fPos + 3]); - } - } - } - if(!optimizationUsed) { - hasPath = true; - openfl__$internal_renderer_canvas_CanvasGraphics.context.rect(c9.buffer.f[c9.fPos] - offsetX,c9.buffer.f[c9.fPos + 1] - offsetY,c9.buffer.f[c9.fPos + 2],c9.buffer.f[c9.fPos + 3]); - } - break; - case 10: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_ROUND_RECT; - var this11 = data; - var c10 = this11; - hasPath = true; - openfl__$internal_renderer_canvas_CanvasGraphics.drawRoundRect(c10.buffer.f[c10.fPos] - offsetX,c10.buffer.f[c10.fPos + 1] - offsetY,c10.buffer.f[c10.fPos + 2],c10.buffer.f[c10.fPos + 3],c10.buffer.f[c10.fPos + 4],c10.buffer.o[c10.oPos]); - break; - case 12: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_TRIANGLES; - var this12 = data; - var c11 = this12; - var v = c11.buffer.o[c11.oPos]; - var ind = c11.buffer.o[c11.oPos + 1]; - var uvt = c11.buffer.o[c11.oPos + 2]; - var pattern = null; - var colorFill = openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill == null; - if(colorFill && uvt != null) { - break _hx_loop1; - } - if(!colorFill) { - if(uvt == null) { - uvt = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - var _g3 = 0; - var _g12 = v.get_length() / 2 | 0; - while(_g3 < _g12) { - var i1 = _g3++; - uvt.push(v.get(i1 * 2) - offsetX / openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill.width); - uvt.push(v.get(i1 * 2 + 1) - offsetY / openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill.height); - } - } - var skipT = uvt.get_length() != v.get_length(); - var normalizedUVT = openfl__$internal_renderer_canvas_CanvasGraphics.normalizeUVT(uvt,skipT); - var maxUVT = normalizedUVT.max; - uvt = normalizedUVT.uvt; - if(maxUVT > 1) { - pattern = openfl__$internal_renderer_canvas_CanvasGraphics.createTempPatternCanvas(openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill,openfl__$internal_renderer_canvas_CanvasGraphics.bitmapRepeat,openfl__$internal_renderer_canvas_CanvasGraphics.bounds.width | 0,openfl__$internal_renderer_canvas_CanvasGraphics.bounds.height | 0); - } else { - pattern = openfl__$internal_renderer_canvas_CanvasGraphics.createTempPatternCanvas(openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill,openfl__$internal_renderer_canvas_CanvasGraphics.bitmapRepeat,openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill.width,openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill.height); - } - } - var i2 = 0; - var l = ind.get_length(); - var a_; - var b_; - var c_; - var iax; - var iay; - var ibx; - var iby; - var icx; - var icy; - var x1; - var y1; - var x2; - var y2; - var x3; - var y3; - var uvx1; - var uvy1; - var uvx2; - var uvy2; - var uvx3; - var uvy3; - var denom; - var t1; - var t2; - var t3; - var t4; - var dx; - var dy; - while(i2 < l) { - a_ = i2; - b_ = i2 + 1; - c_ = i2 + 2; - iax = ind.get(a_) * 2; - iay = ind.get(a_) * 2 + 1; - ibx = ind.get(b_) * 2; - iby = ind.get(b_) * 2 + 1; - icx = ind.get(c_) * 2; - icy = ind.get(c_) * 2 + 1; - x1 = v.get(iax) - offsetX; - y1 = v.get(iay) - offsetY; - x2 = v.get(ibx) - offsetX; - y2 = v.get(iby) - offsetY; - x3 = v.get(icx) - offsetX; - y3 = v.get(icy) - offsetY; - switch(c11.buffer.o[c11.oPos + 3]) { - case 0: - if((x2 - x1) * (y3 - y1) - (y2 - y1) * (x3 - x1) < 0) { - i2 += 3; - continue; - } - break; - case 2: - if(!((x2 - x1) * (y3 - y1) - (y2 - y1) * (x3 - x1) < 0)) { - i2 += 3; - continue; - } - break; - default: - } - if(colorFill) { - openfl__$internal_renderer_canvas_CanvasGraphics.context.beginPath(); - openfl__$internal_renderer_canvas_CanvasGraphics.context.moveTo(x1,y1); - openfl__$internal_renderer_canvas_CanvasGraphics.context.lineTo(x2,y2); - openfl__$internal_renderer_canvas_CanvasGraphics.context.lineTo(x3,y3); - openfl__$internal_renderer_canvas_CanvasGraphics.context.closePath(); - if(!openfl__$internal_renderer_canvas_CanvasGraphics.hitTesting) { - openfl__$internal_renderer_canvas_CanvasGraphics.context.fill(openfl__$internal_renderer_canvas_CanvasGraphics.windingRule); - } - i2 += 3; - continue; - } - uvx1 = uvt.get(iax) * pattern.width; - uvx2 = uvt.get(ibx) * pattern.width; - uvx3 = uvt.get(icx) * pattern.width; - uvy1 = uvt.get(iay) * pattern.height; - uvy2 = uvt.get(iby) * pattern.height; - uvy3 = uvt.get(icy) * pattern.height; - denom = uvx1 * (uvy3 - uvy2) - uvx2 * uvy3 + uvx3 * uvy2 + (uvx2 - uvx3) * uvy1; - if(denom == 0) { - i2 += 3; - openfl__$internal_renderer_canvas_CanvasGraphics.context.restore(); - continue; - } - openfl__$internal_renderer_canvas_CanvasGraphics.context.save(); - openfl__$internal_renderer_canvas_CanvasGraphics.context.beginPath(); - openfl__$internal_renderer_canvas_CanvasGraphics.context.moveTo(x1,y1); - openfl__$internal_renderer_canvas_CanvasGraphics.context.lineTo(x2,y2); - openfl__$internal_renderer_canvas_CanvasGraphics.context.lineTo(x3,y3); - openfl__$internal_renderer_canvas_CanvasGraphics.context.closePath(); - openfl__$internal_renderer_canvas_CanvasGraphics.context.clip(); - t1 = -(uvy1 * (x3 - x2) - uvy2 * x3 + uvy3 * x2 + (uvy2 - uvy3) * x1) / denom; - t2 = (uvy2 * y3 + uvy1 * (y2 - y3) - uvy3 * y2 + (uvy3 - uvy2) * y1) / denom; - t3 = (uvx1 * (x3 - x2) - uvx2 * x3 + uvx3 * x2 + (uvx2 - uvx3) * x1) / denom; - t4 = -(uvx2 * y3 + uvx1 * (y2 - y3) - uvx3 * y2 + (uvx3 - uvx2) * y1) / denom; - dx = (uvx1 * (uvy3 * x2 - uvy2 * x3) + uvy1 * (uvx2 * x3 - uvx3 * x2) + (uvx3 * uvy2 - uvx2 * uvy3) * x1) / denom; - dy = (uvx1 * (uvy3 * y2 - uvy2 * y3) + uvy1 * (uvx2 * y3 - uvx3 * y2) + (uvx3 * uvy2 - uvx2 * uvy3) * y1) / denom; - openfl__$internal_renderer_canvas_CanvasGraphics.context.transform(t1,t2,t3,t4,dx,dy); - openfl__$internal_renderer_canvas_CanvasGraphics.context.drawImage(pattern,0,0,pattern.width,pattern.height); - openfl__$internal_renderer_canvas_CanvasGraphics.context.restore(); - i2 += 3; - } - break; - case 14: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_BITMAP_STYLE; - var this13 = data; - var c12 = this13; - if(stroke && openfl__$internal_renderer_canvas_CanvasGraphics.hasStroke) { - openfl__$internal_renderer_canvas_CanvasGraphics.closePath(); - } - openfl__$internal_renderer_canvas_CanvasGraphics.context.moveTo(positionX - offsetX,positionY - offsetY); - openfl__$internal_renderer_canvas_CanvasGraphics.context.strokeStyle = openfl__$internal_renderer_canvas_CanvasGraphics.createBitmapFill(c12.buffer.o[c12.oPos],c12.buffer.b[c12.bPos],c12.buffer.b[c12.bPos + 1]); - openfl__$internal_renderer_canvas_CanvasGraphics.hasStroke = true; - break; - case 15: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_GRADIENT_STYLE; - var this14 = data; - var c13 = this14; - if(stroke && openfl__$internal_renderer_canvas_CanvasGraphics.hasStroke) { - openfl__$internal_renderer_canvas_CanvasGraphics.closePath(); - } - openfl__$internal_renderer_canvas_CanvasGraphics.context.moveTo(positionX - offsetX,positionY - offsetY); - openfl__$internal_renderer_canvas_CanvasGraphics.context.strokeStyle = openfl__$internal_renderer_canvas_CanvasGraphics.createGradientPattern(c13.buffer.o[c13.oPos],c13.buffer.ii[c13.iiPos],c13.buffer.ff[c13.ffPos],c13.buffer.ii[c13.iiPos + 1],c13.buffer.o[c13.oPos + 1],c13.buffer.o[c13.oPos + 2],c13.buffer.o[c13.oPos + 3],c13.buffer.f[c13.fPos]); - openfl__$internal_renderer_canvas_CanvasGraphics.setSmoothing(true); - openfl__$internal_renderer_canvas_CanvasGraphics.hasStroke = true; - break; - case 16: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_STYLE; - var this15 = data; - var c14 = this15; - if(stroke && openfl__$internal_renderer_canvas_CanvasGraphics.hasStroke) { - openfl__$internal_renderer_canvas_CanvasGraphics.closePath(true); - } - openfl__$internal_renderer_canvas_CanvasGraphics.context.moveTo(positionX - offsetX,positionY - offsetY); - if(c14.buffer.o[c14.oPos] == null) { - openfl__$internal_renderer_canvas_CanvasGraphics.hasStroke = false; - } else { - openfl__$internal_renderer_canvas_CanvasGraphics.context.lineWidth = c14.buffer.o[c14.oPos] > 0 ? c14.buffer.o[c14.oPos] : 1; - var tmp1 = c14.buffer.o[c14.oPos + 3] == null ? "round" : openfl_display__$JointStyle_JointStyle_$Impl_$.toString(c14.buffer.o[c14.oPos + 3]).toLowerCase(); - openfl__$internal_renderer_canvas_CanvasGraphics.context.lineJoin = tmp1; - var tmp2 = c14.buffer.o[c14.oPos + 2] == null ? "round" : c14.buffer.o[c14.oPos + 2] == 0 ? "butt" : openfl_display__$CapsStyle_CapsStyle_$Impl_$.toString(c14.buffer.o[c14.oPos + 2]).toLowerCase(); - openfl__$internal_renderer_canvas_CanvasGraphics.context.lineCap = tmp2; - openfl__$internal_renderer_canvas_CanvasGraphics.context.miterLimit = c14.buffer.f[c14.fPos + 1]; - if(c14.buffer.f[c14.fPos] == 1) { - var tmp3 = StringTools.hex(c14.buffer.i[c14.iPos] & 16777215,6); - openfl__$internal_renderer_canvas_CanvasGraphics.context.strokeStyle = "#" + tmp3; - } else { - r = (c14.buffer.i[c14.iPos] & 16711680) >>> 16; - g = (c14.buffer.i[c14.iPos] & 65280) >>> 8; - b = c14.buffer.i[c14.iPos] & 255; - openfl__$internal_renderer_canvas_CanvasGraphics.context.strokeStyle = "rgba(" + r + ", " + g + ", " + b + ", " + c14.buffer.f[c14.fPos] + ")"; - } - openfl__$internal_renderer_canvas_CanvasGraphics.setSmoothing(true); - openfl__$internal_renderer_canvas_CanvasGraphics.hasStroke = true; - } - break; - case 17: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_TO; - var this16 = data; - var c15 = this16; - hasPath = true; - openfl__$internal_renderer_canvas_CanvasGraphics.context.lineTo(c15.buffer.f[c15.fPos] - offsetX,c15.buffer.f[c15.fPos + 1] - offsetY); - positionX = c15.buffer.f[c15.fPos]; - positionY = c15.buffer.f[c15.fPos + 1]; - if(positionX == startX && positionY == startY) { - closeGap = true; - } - break; - case 18: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.MOVE_TO; - var this17 = data; - var c16 = this17; - openfl__$internal_renderer_canvas_CanvasGraphics.context.moveTo(c16.buffer.f[c16.fPos] - offsetX,c16.buffer.f[c16.fPos + 1] - offsetY); - positionX = c16.buffer.f[c16.fPos]; - positionY = c16.buffer.f[c16.fPos + 1]; - if(setStart) { - closeGap = true; - } - startX = c16.buffer.f[c16.fPos]; - startY = c16.buffer.f[c16.fPos + 1]; - setStart = true; - break; - case 21: - openfl__$internal_renderer_canvas_CanvasGraphics.windingRule = "evenodd"; - break; - case 22: - openfl__$internal_renderer_canvas_CanvasGraphics.windingRule = "nonzero"; - break; - default: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - } - } - if(stl != null) { - openfl_geom_Point.__pool.release(stl); - } - if(sbr != null) { - openfl_geom_Point.__pool.release(sbr); - } - data.destroy(); - if(hasPath) { - if(stroke && openfl__$internal_renderer_canvas_CanvasGraphics.hasStroke) { - if(openfl__$internal_renderer_canvas_CanvasGraphics.hasFill && closeGap) { - openfl__$internal_renderer_canvas_CanvasGraphics.context.lineTo(startX - offsetX,startY - offsetY); - openfl__$internal_renderer_canvas_CanvasGraphics.closePath(false); - } else if(closeGap && positionX == startX && positionY == startY) { - openfl__$internal_renderer_canvas_CanvasGraphics.closePath(false); - } - if(!openfl__$internal_renderer_canvas_CanvasGraphics.hitTesting) { - openfl__$internal_renderer_canvas_CanvasGraphics.context.stroke(); - } - } - if(!stroke) { - if(openfl__$internal_renderer_canvas_CanvasGraphics.hasFill || openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill != null) { - openfl__$internal_renderer_canvas_CanvasGraphics.context.translate(-openfl__$internal_renderer_canvas_CanvasGraphics.bounds.x,-openfl__$internal_renderer_canvas_CanvasGraphics.bounds.y); - if(openfl__$internal_renderer_canvas_CanvasGraphics.pendingMatrix != null) { - openfl__$internal_renderer_canvas_CanvasGraphics.context.transform(openfl__$internal_renderer_canvas_CanvasGraphics.pendingMatrix.a,openfl__$internal_renderer_canvas_CanvasGraphics.pendingMatrix.b,openfl__$internal_renderer_canvas_CanvasGraphics.pendingMatrix.c,openfl__$internal_renderer_canvas_CanvasGraphics.pendingMatrix.d,openfl__$internal_renderer_canvas_CanvasGraphics.pendingMatrix.tx,openfl__$internal_renderer_canvas_CanvasGraphics.pendingMatrix.ty); - if(!openfl__$internal_renderer_canvas_CanvasGraphics.hitTesting) { - openfl__$internal_renderer_canvas_CanvasGraphics.context.fill(openfl__$internal_renderer_canvas_CanvasGraphics.windingRule); - } - openfl__$internal_renderer_canvas_CanvasGraphics.context.transform(openfl__$internal_renderer_canvas_CanvasGraphics.inversePendingMatrix.a,openfl__$internal_renderer_canvas_CanvasGraphics.inversePendingMatrix.b,openfl__$internal_renderer_canvas_CanvasGraphics.inversePendingMatrix.c,openfl__$internal_renderer_canvas_CanvasGraphics.inversePendingMatrix.d,openfl__$internal_renderer_canvas_CanvasGraphics.inversePendingMatrix.tx,openfl__$internal_renderer_canvas_CanvasGraphics.inversePendingMatrix.ty); - } else if(!openfl__$internal_renderer_canvas_CanvasGraphics.hitTesting) { - openfl__$internal_renderer_canvas_CanvasGraphics.context.fill(openfl__$internal_renderer_canvas_CanvasGraphics.windingRule); - } - openfl__$internal_renderer_canvas_CanvasGraphics.context.translate(openfl__$internal_renderer_canvas_CanvasGraphics.bounds.x,openfl__$internal_renderer_canvas_CanvasGraphics.bounds.y); - openfl__$internal_renderer_canvas_CanvasGraphics.context.closePath(); - } - } - } -}; -openfl__$internal_renderer_canvas_CanvasGraphics.render = function(graphics,renderer) { - graphics.__update(renderer.__worldTransform); - if(graphics.__softwareDirty) { - openfl__$internal_renderer_canvas_CanvasGraphics.hitTesting = false; - openfl__$internal_renderer_canvas_CanvasGraphics.graphics = graphics; - openfl__$internal_renderer_canvas_CanvasGraphics.allowSmoothing = renderer.__allowSmoothing; - openfl__$internal_renderer_canvas_CanvasGraphics.worldAlpha = renderer.__getAlpha(graphics.__owner.__worldAlpha); - openfl__$internal_renderer_canvas_CanvasGraphics.bounds = graphics.__bounds; - var width = graphics.__width; - var height = graphics.__height; - if(!graphics.__visible || graphics.__commands.get_length() == 0 || openfl__$internal_renderer_canvas_CanvasGraphics.bounds == null || width < 1 || height < 1) { - graphics.__canvas = null; - graphics.__context = null; - graphics.__bitmap = null; - } else { - if(graphics.__canvas == null) { - graphics.__canvas = window.document.createElement("canvas"); - graphics.__context = graphics.__canvas.getContext("2d"); - } - openfl__$internal_renderer_canvas_CanvasGraphics.context = graphics.__context; - var transform = graphics.__renderTransform; - var canvas = graphics.__canvas; - var scale = renderer.pixelRatio; - var scaledWidth = width * scale | 0; - var scaledHeight = height * scale | 0; - renderer.__setBlendModeContext(openfl__$internal_renderer_canvas_CanvasGraphics.context,10); - if(renderer.__isDOM) { - if(canvas.width == scaledWidth && canvas.height == scaledHeight) { - openfl__$internal_renderer_canvas_CanvasGraphics.context.clearRect(0,0,scaledWidth,scaledHeight); - } else { - canvas.width = scaledWidth; - canvas.height = scaledHeight; - canvas.style.width = width + "px"; - canvas.style.height = height + "px"; - } - var transform1 = graphics.__renderTransform; - openfl__$internal_renderer_canvas_CanvasGraphics.context.setTransform(transform1.a * scale,transform1.b * scale,transform1.c * scale,transform1.d * scale,transform1.tx * scale,transform1.ty * scale); - } else { - if(canvas.width == scaledWidth && canvas.height == scaledHeight) { - openfl__$internal_renderer_canvas_CanvasGraphics.context.closePath(); - openfl__$internal_renderer_canvas_CanvasGraphics.context.setTransform(1,0,0,1,0,0); - openfl__$internal_renderer_canvas_CanvasGraphics.context.clearRect(0,0,scaledWidth,scaledHeight); - } else { - canvas.width = width; - canvas.height = height; - } - openfl__$internal_renderer_canvas_CanvasGraphics.context.setTransform(transform.a,transform.b,transform.c,transform.d,transform.tx,transform.ty); - } - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.clear(); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.clear(); - openfl__$internal_renderer_canvas_CanvasGraphics.hasFill = false; - openfl__$internal_renderer_canvas_CanvasGraphics.hasStroke = false; - openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill = null; - openfl__$internal_renderer_canvas_CanvasGraphics.bitmapRepeat = false; - var hasLineStyle = false; - var initStrokeX = 0.0; - var initStrokeY = 0.0; - openfl__$internal_renderer_canvas_CanvasGraphics.windingRule = "evenodd"; - var data = new openfl__$internal_renderer_DrawCommandReader(graphics.__commands); - var _g = 0; - var _g1 = graphics.__commands.types; - while(_g < _g1.length) { - var type = _g1[_g]; - ++_g; - switch(type._hx_index) { - case 0:case 1:case 2:case 3: - openfl__$internal_renderer_canvas_CanvasGraphics.endFill(); - openfl__$internal_renderer_canvas_CanvasGraphics.endStroke(); - if(type == openfl__$internal_renderer_DrawCommandType.BEGIN_BITMAP_FILL) { - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_BITMAP_FILL; - var this1 = data; - var c = this1; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.beginBitmapFill(c.buffer.o[c.oPos],c.buffer.o[c.oPos + 1],c.buffer.b[c.bPos],c.buffer.b[c.bPos + 1]); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.beginBitmapFill(c.buffer.o[c.oPos],c.buffer.o[c.oPos + 1],c.buffer.b[c.bPos],c.buffer.b[c.bPos + 1]); - } else if(type == openfl__$internal_renderer_DrawCommandType.BEGIN_GRADIENT_FILL) { - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_GRADIENT_FILL; - var this2 = data; - var c1 = this2; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.beginGradientFill(c1.buffer.o[c1.oPos],c1.buffer.ii[c1.iiPos],c1.buffer.ff[c1.ffPos],c1.buffer.ii[c1.iiPos + 1],c1.buffer.o[c1.oPos + 1],c1.buffer.o[c1.oPos + 2],c1.buffer.o[c1.oPos + 3],c1.buffer.f[c1.fPos]); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.beginGradientFill(c1.buffer.o[c1.oPos],c1.buffer.ii[c1.iiPos],c1.buffer.ff[c1.ffPos],c1.buffer.ii[c1.iiPos + 1],c1.buffer.o[c1.oPos + 1],c1.buffer.o[c1.oPos + 2],c1.buffer.o[c1.oPos + 3],c1.buffer.f[c1.fPos]); - } else if(type == openfl__$internal_renderer_DrawCommandType.BEGIN_SHADER_FILL) { - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_SHADER_FILL; - var this3 = data; - var c2 = this3; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.beginShaderFill(c2.buffer.o[c2.oPos]); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.beginShaderFill(c2.buffer.o[c2.oPos]); - } else { - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_FILL; - var this4 = data; - var c3 = this4; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.beginFill(c3.buffer.i[c3.iPos],c3.buffer.f[c3.fPos]); - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.beginFill(c3.buffer.i[c3.iPos],c3.buffer.f[c3.fPos]); - } - break; - case 4: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.CUBIC_CURVE_TO; - var this5 = data; - var c4 = this5; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.cubicCurveTo(c4.buffer.f[c4.fPos],c4.buffer.f[c4.fPos + 1],c4.buffer.f[c4.fPos + 2],c4.buffer.f[c4.fPos + 3],c4.buffer.f[c4.fPos + 4],c4.buffer.f[c4.fPos + 5]); - if(hasLineStyle) { - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.cubicCurveTo(c4.buffer.f[c4.fPos],c4.buffer.f[c4.fPos + 1],c4.buffer.f[c4.fPos + 2],c4.buffer.f[c4.fPos + 3],c4.buffer.f[c4.fPos + 4],c4.buffer.f[c4.fPos + 5]); - } else { - initStrokeX = c4.buffer.f[c4.fPos + 4]; - initStrokeY = c4.buffer.f[c4.fPos + 5]; - } - break; - case 5: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.CURVE_TO; - var this6 = data; - var c5 = this6; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.curveTo(c5.buffer.f[c5.fPos],c5.buffer.f[c5.fPos + 1],c5.buffer.f[c5.fPos + 2],c5.buffer.f[c5.fPos + 3]); - if(hasLineStyle) { - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.curveTo(c5.buffer.f[c5.fPos],c5.buffer.f[c5.fPos + 1],c5.buffer.f[c5.fPos + 2],c5.buffer.f[c5.fPos + 3]); - } else { - initStrokeX = c5.buffer.f[c5.fPos + 2]; - initStrokeY = c5.buffer.f[c5.fPos + 3]; - } - break; - case 6: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_CIRCLE; - var this7 = data; - var c6 = this7; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.drawCircle(c6.buffer.f[c6.fPos],c6.buffer.f[c6.fPos + 1],c6.buffer.f[c6.fPos + 2]); - if(hasLineStyle) { - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.drawCircle(c6.buffer.f[c6.fPos],c6.buffer.f[c6.fPos + 1],c6.buffer.f[c6.fPos + 2]); - } - break; - case 7: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_ELLIPSE; - var this8 = data; - var c7 = this8; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.drawEllipse(c7.buffer.f[c7.fPos],c7.buffer.f[c7.fPos + 1],c7.buffer.f[c7.fPos + 2],c7.buffer.f[c7.fPos + 3]); - if(hasLineStyle) { - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.drawEllipse(c7.buffer.f[c7.fPos],c7.buffer.f[c7.fPos + 1],c7.buffer.f[c7.fPos + 2],c7.buffer.f[c7.fPos + 3]); - } - break; - case 8: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_QUADS; - var this9 = data; - var c8 = this9; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.drawQuads(c8.buffer.o[c8.oPos],c8.buffer.o[c8.oPos + 1],c8.buffer.o[c8.oPos + 2]); - break; - case 9: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_RECT; - var this10 = data; - var c9 = this10; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.drawRect(c9.buffer.f[c9.fPos],c9.buffer.f[c9.fPos + 1],c9.buffer.f[c9.fPos + 2],c9.buffer.f[c9.fPos + 3]); - if(hasLineStyle) { - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.drawRect(c9.buffer.f[c9.fPos],c9.buffer.f[c9.fPos + 1],c9.buffer.f[c9.fPos + 2],c9.buffer.f[c9.fPos + 3]); - } - break; - case 10: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_ROUND_RECT; - var this11 = data; - var c10 = this11; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.drawRoundRect(c10.buffer.f[c10.fPos],c10.buffer.f[c10.fPos + 1],c10.buffer.f[c10.fPos + 2],c10.buffer.f[c10.fPos + 3],c10.buffer.f[c10.fPos + 4],c10.buffer.o[c10.oPos]); - if(hasLineStyle) { - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.drawRoundRect(c10.buffer.f[c10.fPos],c10.buffer.f[c10.fPos + 1],c10.buffer.f[c10.fPos + 2],c10.buffer.f[c10.fPos + 3],c10.buffer.f[c10.fPos + 4],c10.buffer.o[c10.oPos]); - } - break; - case 12: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_TRIANGLES; - var this12 = data; - var c11 = this12; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.drawTriangles(c11.buffer.o[c11.oPos],c11.buffer.o[c11.oPos + 1],c11.buffer.o[c11.oPos + 2],c11.buffer.o[c11.oPos + 3]); - break; - case 13: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.END_FILL; - var this13 = data; - openfl__$internal_renderer_canvas_CanvasGraphics.endFill(); - openfl__$internal_renderer_canvas_CanvasGraphics.endStroke(); - openfl__$internal_renderer_canvas_CanvasGraphics.hasFill = false; - hasLineStyle = false; - openfl__$internal_renderer_canvas_CanvasGraphics.bitmapFill = null; - initStrokeX = 0; - initStrokeY = 0; - break; - case 14: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_BITMAP_STYLE; - var this14 = data; - var c12 = this14; - if(!hasLineStyle && (initStrokeX != 0 || initStrokeY != 0)) { - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.moveTo(initStrokeX,initStrokeY); - initStrokeX = 0; - initStrokeY = 0; - } - hasLineStyle = true; - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.lineBitmapStyle(c12.buffer.o[c12.oPos],c12.buffer.o[c12.oPos + 1],c12.buffer.b[c12.bPos],c12.buffer.b[c12.bPos + 1]); - break; - case 15: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_GRADIENT_STYLE; - var this15 = data; - var c13 = this15; - if(!hasLineStyle && (initStrokeX != 0 || initStrokeY != 0)) { - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.moveTo(initStrokeX,initStrokeY); - initStrokeX = 0; - initStrokeY = 0; - } - hasLineStyle = true; - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.lineGradientStyle(c13.buffer.o[c13.oPos],c13.buffer.ii[c13.iiPos],c13.buffer.ff[c13.ffPos],c13.buffer.ii[c13.iiPos + 1],c13.buffer.o[c13.oPos + 1],c13.buffer.o[c13.oPos + 2],c13.buffer.o[c13.oPos + 3],c13.buffer.f[c13.fPos]); - break; - case 16: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_STYLE; - var this16 = data; - var c14 = this16; - if(!hasLineStyle && c14.buffer.o[c14.oPos] != null) { - if(initStrokeX != 0 || initStrokeY != 0) { - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.moveTo(initStrokeX,initStrokeY); - initStrokeX = 0; - initStrokeY = 0; - } - } - hasLineStyle = c14.buffer.o[c14.oPos] != null; - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.lineStyle(c14.buffer.o[c14.oPos],c14.buffer.i[c14.iPos],c14.buffer.f[c14.fPos],c14.buffer.b[c14.bPos],c14.buffer.o[c14.oPos + 1],c14.buffer.o[c14.oPos + 2],c14.buffer.o[c14.oPos + 3],c14.buffer.f[c14.fPos + 1]); - break; - case 17: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_TO; - var this17 = data; - var c15 = this17; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.lineTo(c15.buffer.f[c15.fPos],c15.buffer.f[c15.fPos + 1]); - if(hasLineStyle) { - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.lineTo(c15.buffer.f[c15.fPos],c15.buffer.f[c15.fPos + 1]); - } else { - initStrokeX = c15.buffer.f[c15.fPos]; - initStrokeY = c15.buffer.f[c15.fPos + 1]; - } - break; - case 18: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.MOVE_TO; - var this18 = data; - var c16 = this18; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.moveTo(c16.buffer.f[c16.fPos],c16.buffer.f[c16.fPos + 1]); - if(hasLineStyle) { - openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.moveTo(c16.buffer.f[c16.fPos],c16.buffer.f[c16.fPos + 1]); - } else { - initStrokeX = c16.buffer.f[c16.fPos]; - initStrokeY = c16.buffer.f[c16.fPos + 1]; - } - break; - case 19: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.OVERRIDE_BLEND_MODE; - var this19 = data; - var c17 = this19; - renderer.__setBlendModeContext(openfl__$internal_renderer_canvas_CanvasGraphics.context,c17.buffer.o[c17.oPos]); - break; - case 21: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.WINDING_EVEN_ODD; - var this20 = data; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.windingEvenOdd(); - openfl__$internal_renderer_canvas_CanvasGraphics.windingRule = "evenodd"; - break; - case 22: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.WINDING_NON_ZERO; - var this21 = data; - openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.windingNonZero(); - openfl__$internal_renderer_canvas_CanvasGraphics.windingRule = "nonzero"; - break; - default: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - } - } - if(openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands.get_length() > 0) { - openfl__$internal_renderer_canvas_CanvasGraphics.endFill(); - } - if(openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands.get_length() > 0) { - openfl__$internal_renderer_canvas_CanvasGraphics.endStroke(); - } - data.destroy(); - graphics.__bitmap = openfl_display_BitmapData.fromCanvas(graphics.__canvas); - } - graphics.__softwareDirty = false; - graphics.set___dirty(false); - } -}; -openfl__$internal_renderer_canvas_CanvasGraphics.renderMask = function(graphics,renderer) { - if(graphics.__commands.get_length() != 0) { - openfl__$internal_renderer_canvas_CanvasGraphics.context = renderer.context; - var positionX = 0.0; - var positionY = 0.0; - var offsetX = 0; - var offsetY = 0; - var data = new openfl__$internal_renderer_DrawCommandReader(graphics.__commands); - var x; - var y; - var width; - var height; - var kappa = .5522848; - var ox; - var oy; - var xe; - var ye; - var xm; - var ym; - var _g = 0; - var _g1 = graphics.__commands.types; - while(_g < _g1.length) { - var type = _g1[_g]; - ++_g; - switch(type._hx_index) { - case 4: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.CUBIC_CURVE_TO; - var this1 = data; - var c = this1; - openfl__$internal_renderer_canvas_CanvasGraphics.context.bezierCurveTo(c.buffer.f[c.fPos] - offsetX,c.buffer.f[c.fPos + 1] - offsetY,c.buffer.f[c.fPos + 2] - offsetX,c.buffer.f[c.fPos + 3] - offsetY,c.buffer.f[c.fPos + 4] - offsetX,c.buffer.f[c.fPos + 5] - offsetY); - positionX = c.buffer.f[c.fPos + 4]; - positionY = c.buffer.f[c.fPos + 5]; - break; - case 5: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.CURVE_TO; - var this2 = data; - var c1 = this2; - openfl__$internal_renderer_canvas_CanvasGraphics.context.quadraticCurveTo(c1.buffer.f[c1.fPos] - offsetX,c1.buffer.f[c1.fPos + 1] - offsetY,c1.buffer.f[c1.fPos + 2] - offsetX,c1.buffer.f[c1.fPos + 3] - offsetY); - positionX = c1.buffer.f[c1.fPos + 2]; - positionY = c1.buffer.f[c1.fPos + 3]; - break; - case 6: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_CIRCLE; - var this3 = data; - var c2 = this3; - openfl__$internal_renderer_canvas_CanvasGraphics.context.arc(c2.buffer.f[c2.fPos] - offsetX,c2.buffer.f[c2.fPos + 1] - offsetY,c2.buffer.f[c2.fPos + 2],0,Math.PI * 2,true); - break; - case 7: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_ELLIPSE; - var this4 = data; - var c3 = this4; - x = c3.buffer.f[c3.fPos]; - y = c3.buffer.f[c3.fPos + 1]; - width = c3.buffer.f[c3.fPos + 2]; - height = c3.buffer.f[c3.fPos + 3]; - x -= offsetX; - y -= offsetY; - ox = width / 2 * kappa; - oy = height / 2 * kappa; - xe = x + width; - ye = y + height; - xm = x + width / 2; - ym = y + height / 2; - openfl__$internal_renderer_canvas_CanvasGraphics.context.moveTo(x,ym); - openfl__$internal_renderer_canvas_CanvasGraphics.context.bezierCurveTo(x,ym - oy,xm - ox,y,xm,y); - openfl__$internal_renderer_canvas_CanvasGraphics.context.bezierCurveTo(xm + ox,y,xe,ym - oy,xe,ym); - openfl__$internal_renderer_canvas_CanvasGraphics.context.bezierCurveTo(xe,ym + oy,xm + ox,ye,xm,ye); - openfl__$internal_renderer_canvas_CanvasGraphics.context.bezierCurveTo(xm - ox,ye,x,ym + oy,x,ym); - break; - case 9: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_RECT; - var this5 = data; - var c4 = this5; - openfl__$internal_renderer_canvas_CanvasGraphics.context.beginPath(); - openfl__$internal_renderer_canvas_CanvasGraphics.context.rect(c4.buffer.f[c4.fPos] - offsetX,c4.buffer.f[c4.fPos + 1] - offsetY,c4.buffer.f[c4.fPos + 2],c4.buffer.f[c4.fPos + 3]); - openfl__$internal_renderer_canvas_CanvasGraphics.context.closePath(); - break; - case 10: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_ROUND_RECT; - var this6 = data; - var c5 = this6; - openfl__$internal_renderer_canvas_CanvasGraphics.drawRoundRect(c5.buffer.f[c5.fPos] - offsetX,c5.buffer.f[c5.fPos + 1] - offsetY,c5.buffer.f[c5.fPos + 2],c5.buffer.f[c5.fPos + 3],c5.buffer.f[c5.fPos + 4],c5.buffer.o[c5.oPos]); - break; - case 17: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_TO; - var this7 = data; - var c6 = this7; - openfl__$internal_renderer_canvas_CanvasGraphics.context.lineTo(c6.buffer.f[c6.fPos] - offsetX,c6.buffer.f[c6.fPos + 1] - offsetY); - positionX = c6.buffer.f[c6.fPos]; - positionY = c6.buffer.f[c6.fPos + 1]; - break; - case 18: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.MOVE_TO; - var this8 = data; - var c7 = this8; - openfl__$internal_renderer_canvas_CanvasGraphics.context.moveTo(c7.buffer.f[c7.fPos] - offsetX,c7.buffer.f[c7.fPos + 1] - offsetY); - positionX = c7.buffer.f[c7.fPos]; - positionY = c7.buffer.f[c7.fPos + 1]; - break; - default: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - } - } - data.destroy(); - } -}; -openfl__$internal_renderer_canvas_CanvasGraphics.setSmoothing = function(smooth) { - if(!openfl__$internal_renderer_canvas_CanvasGraphics.allowSmoothing) { - smooth = false; - } - if(openfl__$internal_renderer_canvas_CanvasGraphics.context.imageSmoothingEnabled != smooth) { - openfl__$internal_renderer_canvas_CanvasGraphics.context.imageSmoothingEnabled = smooth; - } -}; -var openfl__$internal_renderer_canvas_CanvasShape = function() { }; -$hxClasses["openfl._internal.renderer.canvas.CanvasShape"] = openfl__$internal_renderer_canvas_CanvasShape; -openfl__$internal_renderer_canvas_CanvasShape.__name__ = "openfl._internal.renderer.canvas.CanvasShape"; -openfl__$internal_renderer_canvas_CanvasShape.render = function(shape,renderer) { - if(!shape.__renderable) { - return; - } - var alpha = renderer.__getAlpha(shape.__worldAlpha); - if(alpha <= 0) { - return; - } - var graphics = shape.__graphics; - if(graphics != null) { - openfl__$internal_renderer_canvas_CanvasGraphics.render(graphics,renderer); - var width = graphics.__width; - var height = graphics.__height; - var canvas = graphics.__canvas; - if(canvas != null && graphics.__visible && width >= 1 && height >= 1) { - var transform = graphics.__worldTransform; - var context = renderer.context; - var scrollRect = shape.__scrollRect; - var scale9Grid = shape.__worldScale9Grid; - if(scrollRect == null || scrollRect.width > 0 && scrollRect.height > 0) { - renderer.__setBlendMode(shape.__worldBlendMode); - renderer.__pushMaskObject(shape); - context.globalAlpha = alpha; - if(scale9Grid != null && transform.b == 0 && transform.c == 0) { - context.setTransform(1,0,0,1,transform.tx,transform.ty); - var bounds = graphics.__bounds; - var scaleX = graphics.__renderTransform.a; - var scaleY = graphics.__renderTransform.d; - var renderScaleX = transform.a; - var renderScaleY = transform.d; - var left = Math.max(1,Math.round(scale9Grid.x * scaleX)); - var top = Math.round(scale9Grid.y * scaleY); - var right = Math.max(1,Math.round((bounds.get_right() - scale9Grid.get_right()) * scaleX)); - var bottom = Math.round((bounds.get_bottom() - scale9Grid.get_bottom()) * scaleY); - var centerWidth = Math.round(scale9Grid.width * scaleX); - var centerHeight = Math.round(scale9Grid.height * scaleY); - var renderLeft = Math.round(scale9Grid.x * renderScaleX); - var renderTop = Math.round(scale9Grid.y * renderScaleY); - var renderRight = Math.round((bounds.get_right() - scale9Grid.get_right()) * renderScaleX); - var renderBottom = Math.round((bounds.get_bottom() - scale9Grid.get_bottom()) * renderScaleY); - var renderCenterWidth = Math.round(width * renderScaleX) - renderLeft - renderRight; - var renderCenterHeight = Math.round(height * renderScaleY) - renderTop - renderBottom; - renderer.applySmoothing(context,false); - if(centerWidth != 0 && centerHeight != 0) { - context.drawImage(canvas,0,0,left,top,0,0,renderLeft,renderTop); - context.drawImage(canvas,left,0,centerWidth,top,renderLeft,0,renderCenterWidth,renderTop); - context.drawImage(canvas,left + centerWidth,0,right,top,renderLeft + renderCenterWidth,0,renderRight,renderTop); - context.drawImage(canvas,0,top,left,centerHeight,0,renderTop,renderLeft,renderCenterHeight); - context.drawImage(canvas,left,top,centerWidth,centerHeight,renderLeft,renderTop,renderCenterWidth,renderCenterHeight); - context.drawImage(canvas,left + centerWidth,top,right,centerHeight,renderLeft + renderCenterWidth,renderTop,renderRight,renderCenterHeight); - context.drawImage(canvas,0,top + centerHeight,left,bottom,0,renderTop + renderCenterHeight,renderLeft,renderBottom); - context.drawImage(canvas,left,top + centerHeight,centerWidth,bottom,renderLeft,renderTop + renderCenterHeight,renderCenterWidth,renderBottom); - context.drawImage(canvas,left + centerWidth,top + centerHeight,right,bottom,renderLeft + renderCenterWidth,renderTop + renderCenterHeight,renderRight,renderBottom); - } else if(centerWidth == 0 && centerHeight != 0) { - var renderWidth = renderLeft + renderCenterWidth + renderRight; - context.drawImage(canvas,0,0,width,top,0,0,renderWidth,renderTop); - context.drawImage(canvas,0,top,width,centerHeight,0,renderTop,renderWidth,renderCenterHeight); - context.drawImage(canvas,0,top + centerHeight,width,bottom,0,renderTop + renderCenterHeight,renderWidth,renderBottom); - } else if(centerHeight == 0 && centerWidth != 0) { - var renderHeight = renderTop + renderCenterHeight + renderBottom; - context.drawImage(canvas,0,0,left,height,0,0,renderLeft,renderHeight); - context.drawImage(canvas,left,0,centerWidth,height,renderLeft,0,renderCenterWidth,renderHeight); - context.drawImage(canvas,left + centerWidth,0,right,height,renderLeft + renderCenterWidth,0,renderRight,renderHeight); - } - } else { - renderer.setTransform(transform,context); - if(renderer.__isDOM) { - var reverseScale = 1 / renderer.pixelRatio; - context.scale(reverseScale,reverseScale); - } - context.drawImage(canvas,0,0,width,height); - } - renderer.__popMaskObject(shape); - } - } - } -}; -var openfl__$internal_renderer_canvas_CanvasTextField = function() { }; -$hxClasses["openfl._internal.renderer.canvas.CanvasTextField"] = openfl__$internal_renderer_canvas_CanvasTextField; -openfl__$internal_renderer_canvas_CanvasTextField.__name__ = "openfl._internal.renderer.canvas.CanvasTextField"; -openfl__$internal_renderer_canvas_CanvasTextField.context = null; -openfl__$internal_renderer_canvas_CanvasTextField.clearRect = null; -openfl__$internal_renderer_canvas_CanvasTextField.render = function(textField,renderer,transform) { - var textEngine = textField.__textEngine; - var bounds = textEngine.background || textEngine.border ? textEngine.bounds : textEngine.textBounds; - var graphics = textField.__graphics; - if(textField.__dirty) { - textField.__updateLayout(); - if(graphics.__bounds == null) { - graphics.__bounds = new openfl_geom_Rectangle(); - } - graphics.__bounds.copyFrom(bounds); - } - graphics.__update(renderer.__worldTransform); - if(textField.__dirty || graphics.__softwareDirty) { - var width = graphics.__width; - var height = graphics.__height; - if((textEngine.text == null || textEngine.text == "") && !textEngine.background && !textEngine.border && !textEngine.__hasFocus && (textEngine.type != 1 || !textEngine.selectable) || (textEngine.width <= 0 || textEngine.height <= 0) && textEngine.autoSize != 2) { - textField.__graphics.__canvas = null; - textField.__graphics.__context = null; - textField.__graphics.__bitmap = null; - textField.__graphics.__softwareDirty = false; - textField.__graphics.set___dirty(false); - textField.__dirty = false; - } else { - if(textField.__graphics.__canvas == null) { - textField.__graphics.__canvas = window.document.createElement("canvas"); - textField.__graphics.__context = textField.__graphics.__canvas.getContext("2d"); - } - openfl__$internal_renderer_canvas_CanvasTextField.context = graphics.__context; - var transform1 = graphics.__renderTransform; - if(renderer.__isDOM) { - var scale = renderer.pixelRatio; - graphics.__canvas.width = width * scale | 0; - graphics.__canvas.height = height * scale | 0; - graphics.__canvas.style.width = width + "px"; - graphics.__canvas.style.height = height + "px"; - var matrix = openfl_geom_Matrix.__pool.get(); - matrix.copyFrom(transform1); - matrix.scale(scale,scale); - renderer.setTransform(matrix,openfl__$internal_renderer_canvas_CanvasTextField.context); - openfl_geom_Matrix.__pool.release(matrix); - } else { - graphics.__canvas.width = width; - graphics.__canvas.height = height; - openfl__$internal_renderer_canvas_CanvasTextField.context.setTransform(transform1.a,transform1.b,transform1.c,transform1.d,transform1.tx,transform1.ty); - } - if(openfl__$internal_renderer_canvas_CanvasTextField.clearRect == null) { - openfl__$internal_renderer_canvas_CanvasTextField.clearRect = (typeof navigator !== 'undefined' && typeof navigator['isCocoonJS'] !== 'undefined'); - } - if(openfl__$internal_renderer_canvas_CanvasTextField.clearRect) { - openfl__$internal_renderer_canvas_CanvasTextField.context.clearRect(0,0,graphics.__canvas.width,graphics.__canvas.height); - } - if(textEngine.text != null && textEngine.text != "" || textEngine.__hasFocus) { - var text = textEngine.text; - if(!renderer.__allowSmoothing || textEngine.antiAliasType == 0 && textEngine.sharpness == 400) { - graphics.__context.imageSmoothingEnabled = false; - } else { - graphics.__context.imageSmoothingEnabled = true; - } - if(textEngine.border || textEngine.background) { - openfl__$internal_renderer_canvas_CanvasTextField.context.rect(0.5,0.5,bounds.width - 1,bounds.height - 1); - if(textEngine.background) { - var tmp = StringTools.hex(textEngine.backgroundColor & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = "#" + tmp; - openfl__$internal_renderer_canvas_CanvasTextField.context.fill(); - } - if(textEngine.border) { - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - var tmp1 = StringTools.hex(textEngine.borderColor & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = "#" + tmp1; - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - } - } - openfl__$internal_renderer_canvas_CanvasTextField.context.textBaseline = "alphabetic"; - openfl__$internal_renderer_canvas_CanvasTextField.context.textAlign = "start"; - var scrollX = -textField.get_scrollH(); - var scrollY = 0.0; - var _g = 0; - var _g1 = textField.get_scrollV() - 1; - while(_g < _g1) { - var i = _g++; - scrollY -= textEngine.lineHeights.get(i); - } - var advance; - var group = textEngine.layoutGroups.iterator(); - while(group.hasNext()) { - var group1 = group.next(); - if(group1.lineIndex < textField.get_scrollV() - 1) { - continue; - } - if(group1.lineIndex > textEngine.get_bottomScrollV() - 1) { - break; - } - var color = "#" + StringTools.hex(group1.format.color & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.font = openfl__$internal_text_TextEngine.getFont(group1.format); - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = color; - openfl__$internal_renderer_canvas_CanvasTextField.context.fillText(text.substring(group1.startIndex,group1.endIndex),group1.offsetX + scrollX - bounds.x,group1.offsetY + group1.ascent + scrollY - bounds.y); - if(textField.__caretIndex > -1 && textEngine.selectable) { - if(textField.__selectionIndex == textField.__caretIndex) { - if(textField.__showCursor && group1.startIndex <= textField.__caretIndex && group1.endIndex >= textField.__caretIndex) { - advance = 0.0; - var _g3 = 0; - var _g4 = textField.__caretIndex - group1.startIndex; - while(_g3 < _g4) { - var i1 = _g3++; - if(group1.positions.length <= i1) { - break; - } - advance += group1.positions[i1]; - } - var scrollY1 = 0.0; - var _g5 = textField.get_scrollV(); - var _g6 = group1.lineIndex + 1; - while(_g5 < _g6) { - var i2 = _g5++; - scrollY1 += textEngine.lineHeights.get(i2 - 1); - } - openfl__$internal_renderer_canvas_CanvasTextField.context.beginPath(); - var tmp2 = StringTools.hex(group1.format.color & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = "#" + tmp2; - openfl__$internal_renderer_canvas_CanvasTextField.context.moveTo(group1.offsetX + advance - textField.get_scrollH() - bounds.x,scrollY1 + 2 - bounds.y); - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - openfl__$internal_renderer_canvas_CanvasTextField.context.lineTo(group1.offsetX + advance - textField.get_scrollH() - bounds.x,scrollY1 + openfl__$internal_text_TextEngine.getFormatHeight(textField.get_defaultTextFormat()) - 1 - bounds.y); - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - openfl__$internal_renderer_canvas_CanvasTextField.context.closePath(); - } - } else if(group1.startIndex <= textField.__caretIndex && group1.endIndex >= textField.__caretIndex || group1.startIndex <= textField.__selectionIndex && group1.endIndex >= textField.__selectionIndex || group1.startIndex > textField.__caretIndex && group1.endIndex < textField.__selectionIndex || group1.startIndex > textField.__selectionIndex && group1.endIndex < textField.__caretIndex) { - var selectionStart = Math.min(textField.__selectionIndex,textField.__caretIndex) | 0; - var selectionEnd = Math.max(textField.__selectionIndex,textField.__caretIndex) | 0; - if(group1.startIndex > selectionStart) { - selectionStart = group1.startIndex; - } - if(group1.endIndex < selectionEnd) { - selectionEnd = group1.endIndex; - } - var end; - var start = textField.getCharBoundaries(selectionStart); - if(selectionEnd >= group1.endIndex) { - end = textField.getCharBoundaries(group1.endIndex - 1); - if(end != null) { - end.x += end.width + 2; - } - } else { - end = textField.getCharBoundaries(selectionEnd); - } - if(start != null && end != null) { - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = "#000000"; - openfl__$internal_renderer_canvas_CanvasTextField.context.fillRect(start.x + scrollX,start.y + scrollY,end.x - start.x,group1.height); - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = "#FFFFFF"; - openfl__$internal_renderer_canvas_CanvasTextField.context.fillText(text.substring(selectionStart,selectionEnd),scrollX + start.x,group1.offsetY + group1.ascent + scrollY); - } - } - } - if(group1.format.underline) { - openfl__$internal_renderer_canvas_CanvasTextField.context.beginPath(); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = color; - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - var x = group1.offsetX + scrollX - bounds.x; - var y = Math.floor(group1.offsetY + scrollY + group1.ascent - bounds.y) + 0.5; - openfl__$internal_renderer_canvas_CanvasTextField.context.moveTo(x,y); - openfl__$internal_renderer_canvas_CanvasTextField.context.lineTo(x + group1.width,y); - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - openfl__$internal_renderer_canvas_CanvasTextField.context.closePath(); - } - } - } else { - if(textEngine.border || textEngine.background) { - if(textEngine.border) { - openfl__$internal_renderer_canvas_CanvasTextField.context.rect(0.5,0.5,bounds.width - 1,bounds.height - 1); - } else { - openfl__$internal_renderer_canvas_CanvasTextField.context.rect(0,0,bounds.width,bounds.height); - } - if(textEngine.background) { - var tmp3 = StringTools.hex(textEngine.backgroundColor & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = "#" + tmp3; - openfl__$internal_renderer_canvas_CanvasTextField.context.fill(); - } - if(textEngine.border) { - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - openfl__$internal_renderer_canvas_CanvasTextField.context.lineCap = "square"; - var tmp4 = StringTools.hex(textEngine.borderColor & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = "#" + tmp4; - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - } - } - if(textField.__caretIndex > -1 && textEngine.selectable && textField.__showCursor) { - var scrollX1 = -textField.get_scrollH(); - var scrollY2 = 0.0; - var _g2 = 0; - var _g11 = textField.get_scrollV() - 1; - while(_g2 < _g11) { - var i3 = _g2++; - scrollY2 += textEngine.lineHeights.get(i3); - } - openfl__$internal_renderer_canvas_CanvasTextField.context.beginPath(); - var tmp5 = StringTools.hex(textField.get_defaultTextFormat().color & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = "#" + tmp5; - openfl__$internal_renderer_canvas_CanvasTextField.context.moveTo(scrollX1 + 2.5,scrollY2 + 2.5); - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - openfl__$internal_renderer_canvas_CanvasTextField.context.lineTo(scrollX1 + 2.5,scrollY2 + openfl__$internal_text_TextEngine.getFormatHeight(textField.get_defaultTextFormat()) - 1); - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - openfl__$internal_renderer_canvas_CanvasTextField.context.closePath(); - } - } - graphics.__bitmap = openfl_display_BitmapData.fromCanvas(textField.__graphics.__canvas); - graphics.__visible = true; - textField.__dirty = false; - graphics.__softwareDirty = false; - graphics.set___dirty(false); - } - } -}; -var openfl__$internal_renderer_context3D_Context3DBitmap = function() { }; -$hxClasses["openfl._internal.renderer.context3D.Context3DBitmap"] = openfl__$internal_renderer_context3D_Context3DBitmap; -openfl__$internal_renderer_context3D_Context3DBitmap.__name__ = "openfl._internal.renderer.context3D.Context3DBitmap"; -openfl__$internal_renderer_context3D_Context3DBitmap.render = function(bitmap,renderer) { - if(!bitmap.__renderable || bitmap.__worldAlpha <= 0) { - return; - } - if(bitmap.__bitmapData != null && bitmap.__bitmapData.__isValid) { - var context = renderer.__context3D; - renderer.__setBlendMode(bitmap.__worldBlendMode); - renderer.__pushMaskObject(bitmap); - var shader = renderer.__initDisplayShader(bitmap.__worldShader); - renderer.setShader(shader); - renderer.applyBitmapData(bitmap.__bitmapData,renderer.__allowSmoothing && (bitmap.smoothing || renderer.__upscaled)); - renderer.applyMatrix(renderer.__getMatrix(bitmap.__renderTransform,bitmap.pixelSnapping)); - renderer.applyAlpha(bitmap.__worldAlpha); - renderer.applyColorTransform(bitmap.__worldColorTransform); - renderer.updateShader(); - var vertexBuffer = bitmap.__bitmapData.getVertexBuffer(context); - if(shader.__position != null) { - context.setVertexBufferAt(shader.__position.index,vertexBuffer,0,3); - } - if(shader.__textureCoord != null) { - context.setVertexBufferAt(shader.__textureCoord.index,vertexBuffer,3,2); - } - var indexBuffer = bitmap.__bitmapData.getIndexBuffer(context); - context.drawTriangles(indexBuffer); - renderer.__clearShader(); - renderer.__popMaskObject(bitmap); - } -}; -openfl__$internal_renderer_context3D_Context3DBitmap.renderMask = function(bitmap,renderer) { - if(bitmap.__bitmapData != null && bitmap.__bitmapData.__isValid) { - var context = renderer.__context3D; - var shader = renderer.__maskShader; - renderer.setShader(shader); - renderer.applyBitmapData(openfl__$internal_renderer_context3D_Context3DMaskShader.opaqueBitmapData,true); - renderer.applyMatrix(renderer.__getMatrix(bitmap.__renderTransform,bitmap.pixelSnapping)); - renderer.updateShader(); - var vertexBuffer = bitmap.__bitmapData.getVertexBuffer(context); - if(shader.__position != null) { - context.setVertexBufferAt(shader.__position.index,vertexBuffer,0,3); - } - if(shader.__textureCoord != null) { - context.setVertexBufferAt(shader.__textureCoord.index,vertexBuffer,3,2); - } - var indexBuffer = bitmap.__bitmapData.getIndexBuffer(context); - context.drawTriangles(indexBuffer); - renderer.__clearShader(); - } -}; -var openfl__$internal_renderer_context3D_Context3DBuffer = function(context3D,elementType,elementCount,dataPerVertex) { - this.context3D = context3D; - this.elementType = elementType; - this.dataPerVertex = dataPerVertex; - this.indexCount = 0; - this.vertexCount = 0; - this.resize(elementCount); -}; -$hxClasses["openfl._internal.renderer.context3D.Context3DBuffer"] = openfl__$internal_renderer_context3D_Context3DBuffer; -openfl__$internal_renderer_context3D_Context3DBuffer.__name__ = "openfl._internal.renderer.context3D.Context3DBuffer"; -openfl__$internal_renderer_context3D_Context3DBuffer.prototype = { - dataPerVertex: null - ,elementCount: null - ,elementType: null - ,indexBufferData: null - ,indexBuffers: null - ,indexCount: null - ,vertexBuffer: null - ,vertexBufferData: null - ,vertexCount: null - ,context3D: null - ,drawElements: function(start,length) { - if(length == null) { - length = -1; - } - if(this.indexCount == 0 || this.vertexCount == 0) { - return; - } - if(this.elementType._hx_index == 0) { - if(length == -1) { - length = this.elementCount * 2; - } - if(start < 10922 && length - start < 10922) { - this.context3D.drawTriangles(this.indexBuffers[0],start,length * 2); - } else { - var end = start + length; - while(start < end) { - var arrayBufferIndex = Math.floor(start / 10922); - length = Math.min(end - start,10922) | 0; - if(length <= 0) { - break; - } - this.context3D.drawTriangles(this.indexBuffers[arrayBufferIndex],(start - arrayBufferIndex * 10922) * 3,length * 2); - start += length; - } - } - } - } - ,flushVertexBufferData: function() { - if(this.vertexBufferData.length > this.vertexCount) { - this.vertexCount = this.vertexBufferData.length; - this.vertexBuffer = this.context3D.createVertexBuffer(this.vertexCount,this.dataPerVertex,0); - } - this.vertexBuffer.uploadFromTypedArray(this.vertexBufferData); - } - ,resize: function(elementCount,dataPerVertex) { - if(dataPerVertex == null) { - dataPerVertex = -1; - } - this.elementCount = elementCount; - if(dataPerVertex == -1) { - dataPerVertex = this.dataPerVertex; - } - if(dataPerVertex != this.dataPerVertex) { - this.vertexBuffer = null; - this.vertexCount = 0; - this.dataPerVertex = dataPerVertex; - } - var numVertices = 0; - switch(this.elementType._hx_index) { - case 0: - numVertices = elementCount * 4; - break; - case 1: - numVertices = elementCount * 3; - break; - case 2: - numVertices = elementCount * 3; - break; - } - var vertexLength = numVertices * dataPerVertex; - if(this.vertexBufferData == null) { - var array = null; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this1; - if(vertexLength != null) { - this1 = new Float32Array(vertexLength); - } else if(array != null) { - this1 = new Float32Array(array); - } else if(vector != null) { - this1 = new Float32Array(vector.__array); - } else if(view != null) { - this1 = new Float32Array(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Float32Array(buffer,0); - } else { - this1 = new Float32Array(buffer,0,len); - } - } else { - this1 = null; - } - this.vertexBufferData = this1; - } else if(vertexLength > this.vertexBufferData.length) { - var cacheBufferData = this.vertexBufferData; - var array1 = null; - var vector1 = null; - var view1 = null; - var buffer1 = null; - var len1 = null; - var this2; - if(vertexLength != null) { - this2 = new Float32Array(vertexLength); - } else if(array1 != null) { - this2 = new Float32Array(array1); - } else if(vector1 != null) { - this2 = new Float32Array(vector1.__array); - } else if(view1 != null) { - this2 = new Float32Array(view1); - } else if(buffer1 != null) { - if(len1 == null) { - this2 = new Float32Array(buffer1,0); - } else { - this2 = new Float32Array(buffer1,0,len1); - } - } else { - this2 = null; - } - this.vertexBufferData = this2; - this.vertexBufferData.set(cacheBufferData); - } - } - ,__class__: openfl__$internal_renderer_context3D_Context3DBuffer -}; -var openfl__$internal_renderer_context3D_Context3DElementType = $hxEnums["openfl._internal.renderer.context3D.Context3DElementType"] = { __ename__ : "openfl._internal.renderer.context3D.Context3DElementType", __constructs__ : ["QUADS","TRIANGLES","TRIANGLE_INDICES"] - ,QUADS: {_hx_index:0,__enum__:"openfl._internal.renderer.context3D.Context3DElementType",toString:$estr} - ,TRIANGLES: {_hx_index:1,__enum__:"openfl._internal.renderer.context3D.Context3DElementType",toString:$estr} - ,TRIANGLE_INDICES: {_hx_index:2,__enum__:"openfl._internal.renderer.context3D.Context3DElementType",toString:$estr} -}; -var openfl__$internal_renderer_context3D_Context3DDisplayObject = function() { }; -$hxClasses["openfl._internal.renderer.context3D.Context3DDisplayObject"] = openfl__$internal_renderer_context3D_Context3DDisplayObject; -openfl__$internal_renderer_context3D_Context3DDisplayObject.__name__ = "openfl._internal.renderer.context3D.Context3DDisplayObject"; -openfl__$internal_renderer_context3D_Context3DDisplayObject.render = function(displayObject,renderer) { - if(displayObject.opaqueBackground == null && displayObject.__graphics == null) { - return; - } - if(!displayObject.__renderable || displayObject.__worldAlpha <= 0) { - return; - } - if(displayObject.opaqueBackground != null && !displayObject.__isCacheBitmapRender && displayObject.get_width() > 0 && displayObject.get_height() > 0) { - renderer.__setBlendMode(displayObject.__worldBlendMode); - renderer.__pushMaskObject(displayObject); - var context = renderer.__context3D; - var rect = openfl_geom_Rectangle.__pool.get(); - rect.setTo(0,0,displayObject.get_width(),displayObject.get_height()); - renderer.__pushMaskRect(rect,displayObject.__renderTransform); - var color = displayObject.opaqueBackground; - context.clear((color >>> 16 & 255) / 255,(color >>> 8 & 255) / 255,(color & 255) / 255,1,0,0,1); - renderer.__popMaskRect(); - renderer.__popMaskObject(displayObject); - openfl_geom_Rectangle.__pool.release(rect); - } - if(displayObject.__graphics != null) { - openfl__$internal_renderer_context3D_Context3DShape.render(displayObject,renderer); - } -}; -openfl__$internal_renderer_context3D_Context3DDisplayObject.renderMask = function(displayObject,renderer) { - if(displayObject.opaqueBackground == null && displayObject.__graphics == null) { - return; - } - var tmp = displayObject.opaqueBackground != null && !displayObject.__isCacheBitmapRender && displayObject.get_width() > 0 && displayObject.get_height() > 0; - if(displayObject.__graphics != null) { - openfl__$internal_renderer_context3D_Context3DShape.renderMask(displayObject,renderer); - } -}; -var openfl__$internal_renderer_context3D_Context3DGraphics = function() { }; -$hxClasses["openfl._internal.renderer.context3D.Context3DGraphics"] = openfl__$internal_renderer_context3D_Context3DGraphics; -openfl__$internal_renderer_context3D_Context3DGraphics.__name__ = "openfl._internal.renderer.context3D.Context3DGraphics"; -openfl__$internal_renderer_context3D_Context3DGraphics.maskRender = null; -openfl__$internal_renderer_context3D_Context3DGraphics.buildBuffer = function(graphics,renderer) { - var quadBufferPosition = 0; - var triangleIndexBufferPosition = 0; - var vertexBufferPosition = 0; - var vertexBufferPositionUVT = 0; - var data = new openfl__$internal_renderer_DrawCommandReader(graphics.__commands); - var context = renderer.__context3D; - var tileRect = openfl_geom_Rectangle.__pool.get(); - var tileTransform = openfl_geom_Matrix.__pool.get(); - var bitmap = null; - var _g = 0; - var _g1 = graphics.__commands.types; - while(_g < _g1.length) { - var type = _g1[_g]; - ++_g; - switch(type._hx_index) { - case 0: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_BITMAP_FILL; - var this1 = data; - var c = this1; - bitmap = c.buffer.o[c.oPos]; - break; - case 1: - bitmap = null; - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - break; - case 3: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_SHADER_FILL; - var this2 = data; - var c1 = this2; - var shaderBuffer = c1.buffer.o[c1.oPos]; - bitmap = null; - if(shaderBuffer != null) { - var _g2 = 0; - var _g11 = shaderBuffer.inputCount; - while(_g2 < _g11) { - var i = _g2++; - if(shaderBuffer.inputRefs[i].name == "bitmap") { - bitmap = shaderBuffer.inputs[i]; - break; - } - } - } - break; - case 8: - if(bitmap != null) { - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_QUADS; - var this3 = data; - var c2 = this3; - var rects = c2.buffer.o[c2.oPos]; - var indices = c2.buffer.o[c2.oPos + 1]; - var transforms = c2.buffer.o[c2.oPos + 2]; - var hasIndices = indices != null; - var transformABCD = false; - var transformXY = false; - var length = hasIndices ? indices.get_length() : Math.floor(rects.get_length() / 4); - if(length == 0) { - return; - } - if(transforms != null) { - if(transforms.get_length() >= length * 6) { - transformABCD = true; - transformXY = true; - } else if(transforms.get_length() >= length * 4) { - transformABCD = true; - } else if(transforms.get_length() >= length * 2) { - transformXY = true; - } - } - var dataPerVertex = 4; - var stride = dataPerVertex * 4; - if(graphics.__quadBuffer == null) { - graphics.__quadBuffer = new openfl__$internal_renderer_context3D_Context3DBuffer(context,openfl__$internal_renderer_context3D_Context3DElementType.QUADS,length,dataPerVertex); - } else { - graphics.__quadBuffer.resize(quadBufferPosition + length,dataPerVertex); - } - var vertexOffset; - var alpha = 1.0; - var tileData; - var id; - var tileWidth; - var tileHeight; - var uvX; - var uvY; - var uvWidth; - var uvHeight; - var x; - var y; - var x2; - var y2; - var x3; - var y3; - var x4; - var y4; - var ri; - var ti; - var vertexBufferData = graphics.__quadBuffer.vertexBufferData; - var bitmapWidth = bitmap.width; - var bitmapHeight = bitmap.height; - var sourceRect = bitmap.rect; - var _g3 = 0; - var _g12 = length; - while(_g3 < _g12) { - var i1 = _g3++; - vertexOffset = (quadBufferPosition + i1) * stride; - ri = hasIndices ? indices.get(i1) * 4 : i1 * 4; - if(ri < 0) { - continue; - } - tileRect.setTo(rects.get(ri),rects.get(ri + 1),rects.get(ri + 2),rects.get(ri + 3)); - tileWidth = tileRect.width; - tileHeight = tileRect.height; - if(tileWidth <= 0 || tileHeight <= 0) { - continue; - } - if(transformABCD && transformXY) { - ti = i1 * 6; - tileTransform.setTo(transforms.get(ti),transforms.get(ti + 1),transforms.get(ti + 2),transforms.get(ti + 3),transforms.get(ti + 4),transforms.get(ti + 5)); - } else if(transformABCD) { - ti = i1 * 4; - tileTransform.setTo(transforms.get(ti),transforms.get(ti + 1),transforms.get(ti + 2),transforms.get(ti + 3),tileRect.x,tileRect.y); - } else if(transformXY) { - ti = i1 * 2; - tileTransform.tx = transforms.get(ti); - tileTransform.ty = transforms.get(ti + 1); - } else { - tileTransform.tx = tileRect.x; - tileTransform.ty = tileRect.y; - } - uvX = tileRect.x / bitmapWidth; - uvY = tileRect.y / bitmapHeight; - uvWidth = tileRect.get_right() / bitmapWidth; - uvHeight = tileRect.get_bottom() / bitmapHeight; - x = 0 * tileTransform.a + 0 * tileTransform.c + tileTransform.tx; - y = 0 * tileTransform.b + 0 * tileTransform.d + tileTransform.ty; - x2 = tileWidth * tileTransform.a + 0 * tileTransform.c + tileTransform.tx; - y2 = tileWidth * tileTransform.b + 0 * tileTransform.d + tileTransform.ty; - x3 = 0 * tileTransform.a + tileHeight * tileTransform.c + tileTransform.tx; - y3 = 0 * tileTransform.b + tileHeight * tileTransform.d + tileTransform.ty; - x4 = tileWidth * tileTransform.a + tileHeight * tileTransform.c + tileTransform.tx; - y4 = tileWidth * tileTransform.b + tileHeight * tileTransform.d + tileTransform.ty; - vertexBufferData[vertexOffset] = x; - vertexBufferData[vertexOffset + 1] = y; - vertexBufferData[vertexOffset + 2] = uvX; - vertexBufferData[vertexOffset + 3] = uvY; - vertexBufferData[vertexOffset + dataPerVertex] = x2; - vertexBufferData[vertexOffset + dataPerVertex + 1] = y2; - vertexBufferData[vertexOffset + dataPerVertex + 2] = uvWidth; - vertexBufferData[vertexOffset + dataPerVertex + 3] = uvY; - vertexBufferData[vertexOffset + dataPerVertex * 2] = x3; - vertexBufferData[vertexOffset + dataPerVertex * 2 + 1] = y3; - vertexBufferData[vertexOffset + dataPerVertex * 2 + 2] = uvX; - vertexBufferData[vertexOffset + dataPerVertex * 2 + 3] = uvHeight; - vertexBufferData[vertexOffset + dataPerVertex * 3] = x4; - vertexBufferData[vertexOffset + dataPerVertex * 3 + 1] = y4; - vertexBufferData[vertexOffset + dataPerVertex * 3 + 2] = uvWidth; - vertexBufferData[vertexOffset + dataPerVertex * 3 + 3] = uvHeight; - } - quadBufferPosition += length; - } - break; - case 12: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_TRIANGLES; - var this4 = data; - var c3 = this4; - var vertices = c3.buffer.o[c3.oPos]; - var indices1 = c3.buffer.o[c3.oPos + 1]; - var uvtData = c3.buffer.o[c3.oPos + 2]; - var culling = c3.buffer.o[c3.oPos + 3]; - var hasIndices1 = indices1 != null; - var numVertices = Math.floor(vertices.get_length() / 2); - var length1 = hasIndices1 ? indices1.get_length() : numVertices; - var hasUVData = uvtData != null; - var hasUVTData = hasUVData && uvtData.get_length() >= numVertices * 3; - var vertLength = hasUVTData ? 4 : 2; - var uvStride = hasUVTData ? 3 : 2; - var dataPerVertex1 = vertLength + 2; - var vertexOffset1 = hasUVTData ? vertexBufferPositionUVT : vertexBufferPosition; - openfl__$internal_renderer_context3D_Context3DGraphics.resizeVertexBuffer(graphics,hasUVTData,vertexOffset1 + length1 * dataPerVertex1); - var vertexBufferData1 = hasUVTData ? graphics.__vertexBufferDataUVT : graphics.__vertexBufferData; - var offset; - var vertOffset; - var uvOffset; - var t; - var _g4 = 0; - var _g13 = length1; - while(_g4 < _g13) { - var i2 = _g4++; - offset = vertexOffset1 + i2 * dataPerVertex1; - vertOffset = hasIndices1 ? indices1.get(i2) * 2 : i2 * 2; - uvOffset = hasIndices1 ? indices1.get(i2) * uvStride : i2 * uvStride; - if(hasUVTData) { - t = uvtData.get(uvOffset + 2); - vertexBufferData1[offset] = vertices.get(vertOffset) / t; - vertexBufferData1[offset + 1] = vertices.get(vertOffset + 1) / t; - vertexBufferData1[offset + 2] = 0; - vertexBufferData1[offset + 3] = 1 / t; - } else { - vertexBufferData1[offset] = vertices.get(vertOffset); - vertexBufferData1[offset + 1] = vertices.get(vertOffset + 1); - } - vertexBufferData1[offset + vertLength] = hasUVData ? uvtData.get(uvOffset) : 0; - vertexBufferData1[offset + vertLength + 1] = hasUVData ? uvtData.get(uvOffset + 1) : 0; - } - if(hasUVTData) { - vertexBufferPositionUVT += length1 * dataPerVertex1; - } else { - vertexBufferPosition += length1 * dataPerVertex1; - } - break; - case 13: - bitmap = null; - break; - default: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - } - } - if(quadBufferPosition > 0) { - graphics.__quadBuffer.flushVertexBufferData(); - } - if(triangleIndexBufferPosition > 0) { - var buffer = graphics.__triangleIndexBuffer; - if(buffer == null || triangleIndexBufferPosition > graphics.__triangleIndexBufferCount) { - buffer = context.createIndexBuffer(triangleIndexBufferPosition,0); - graphics.__triangleIndexBuffer = buffer; - graphics.__triangleIndexBufferCount = triangleIndexBufferPosition; - } - buffer.uploadFromTypedArray(graphics.__triangleIndexBufferData); - } - if(vertexBufferPosition > 0) { - var buffer1 = graphics.__vertexBuffer; - if(buffer1 == null || vertexBufferPosition > graphics.__vertexBufferCount) { - buffer1 = context.createVertexBuffer(vertexBufferPosition,4,0); - graphics.__vertexBuffer = buffer1; - graphics.__vertexBufferCount = vertexBufferPosition; - } - buffer1.uploadFromTypedArray(graphics.__vertexBufferData); - } - if(vertexBufferPositionUVT > 0) { - var buffer2 = graphics.__vertexBufferUVT; - if(buffer2 == null || vertexBufferPositionUVT > graphics.__vertexBufferCountUVT) { - buffer2 = context.createVertexBuffer(vertexBufferPositionUVT,6,0); - graphics.__vertexBufferUVT = buffer2; - graphics.__vertexBufferCountUVT = vertexBufferPositionUVT; - } - buffer2.uploadFromTypedArray(graphics.__vertexBufferDataUVT); - } - openfl_geom_Rectangle.__pool.release(tileRect); - openfl_geom_Matrix.__pool.release(tileTransform); -}; -openfl__$internal_renderer_context3D_Context3DGraphics.isCompatible = function(graphics) { - if(graphics.__owner.__worldScale9Grid != null) { - return false; - } - var data = new openfl__$internal_renderer_DrawCommandReader(graphics.__commands); - var hasColorFill = false; - var hasBitmapFill = false; - var hasShaderFill = false; - var _g = 0; - var _g1 = graphics.__commands.types; - while(_g < _g1.length) { - var type = _g1[_g]; - ++_g; - switch(type._hx_index) { - case 0: - hasBitmapFill = true; - hasColorFill = false; - hasShaderFill = false; - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - break; - case 1: - hasBitmapFill = false; - hasColorFill = true; - hasShaderFill = false; - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - break; - case 3: - hasBitmapFill = false; - hasColorFill = false; - hasShaderFill = true; - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - break; - case 8: - if(hasBitmapFill || hasShaderFill) { - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - } else { - data.destroy(); - return false; - } - break; - case 9: - if(hasColorFill) { - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - } else { - data.destroy(); - return false; - } - break; - case 12: - if(hasBitmapFill || hasShaderFill) { - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - } else { - data.destroy(); - return false; - } - break; - case 13: - hasBitmapFill = false; - hasColorFill = false; - hasShaderFill = false; - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - break; - case 18: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - break; - case 19: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - break; - default: - data.destroy(); - return false; - } - } - data.destroy(); - return true; -}; -openfl__$internal_renderer_context3D_Context3DGraphics.render = function(graphics,renderer) { - if(!graphics.__visible || graphics.__commands.get_length() == 0) { - return; - } - if(graphics.__bitmap != null && !graphics.__dirty || !openfl__$internal_renderer_context3D_Context3DGraphics.isCompatible(graphics)) { - var cacheTransform = renderer.__softwareRenderer.__worldTransform; - renderer.__softwareRenderer.__worldTransform = renderer.__worldTransform; - openfl__$internal_renderer_canvas_CanvasGraphics.render(graphics,renderer.__softwareRenderer); - renderer.__softwareRenderer.__worldTransform = cacheTransform; - } else { - graphics.__bitmap = null; - graphics.__update(renderer.__worldTransform); - var bounds = graphics.__bounds; - var width = graphics.__width; - var height = graphics.__height; - if(bounds != null && width >= 1 && height >= 1) { - if(graphics.__hardwareDirty || graphics.__quadBuffer == null && graphics.__vertexBuffer == null && graphics.__vertexBufferUVT == null) { - openfl__$internal_renderer_context3D_Context3DGraphics.buildBuffer(graphics,renderer); - } - var data = new openfl__$internal_renderer_DrawCommandReader(graphics.__commands); - var context = renderer.__context3D; - var gl = context.gl; - var matrix = openfl_geom_Matrix.__pool.get(); - var shaderBuffer = null; - var bitmap = null; - var repeat = false; - var smooth = false; - var fill = null; - var positionX = 0.0; - var positionY = 0.0; - var quadBufferPosition = 0; - var shaderBufferOffset = 0; - var triangleIndexBufferPosition = 0; - var vertexBufferPosition = 0; - var vertexBufferPositionUVT = 0; - var _g = 0; - var _g1 = graphics.__commands.types; - while(_g < _g1.length) { - var type = _g1[_g]; - ++_g; - switch(type._hx_index) { - case 0: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_BITMAP_FILL; - var this1 = data; - var c = this1; - bitmap = c.buffer.o[c.oPos]; - repeat = c.buffer.b[c.bPos]; - smooth = c.buffer.b[c.bPos + 1]; - shaderBuffer = null; - fill = null; - break; - case 1: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_FILL; - var this2 = data; - var c1 = this2; - var color = c1.buffer.i[c1.iPos] | 0; - var alpha = c1.buffer.f[c1.fPos] * 255 | 0; - fill = color & 16777215 | alpha << 24; - shaderBuffer = null; - bitmap = null; - break; - case 3: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_SHADER_FILL; - var this3 = data; - var c2 = this3; - shaderBuffer = c2.buffer.o[c2.oPos]; - shaderBufferOffset = 0; - if(shaderBuffer == null || shaderBuffer.shader == null || shaderBuffer.shader.__bitmap == null) { - bitmap = null; - } else { - bitmap = shaderBuffer.shader.__bitmap.input; - } - fill = null; - break; - case 8: - if(bitmap != null) { - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_QUADS; - var this4 = data; - var c3 = this4; - var rects = c3.buffer.o[c3.oPos]; - var indices = c3.buffer.o[c3.oPos + 1]; - var transforms = c3.buffer.o[c3.oPos + 2]; - var hasIndices = indices != null; - var length = hasIndices ? indices.get_length() : Math.floor(rects.get_length() / 4); - var uMatrix = renderer.__getMatrix(graphics.__owner.__renderTransform,1); - var shader; - if(shaderBuffer != null && !openfl__$internal_renderer_context3D_Context3DGraphics.maskRender) { - shader = renderer.__initShaderBuffer(shaderBuffer); - renderer.__setShaderBuffer(shaderBuffer); - renderer.applyMatrix(uMatrix); - renderer.applyBitmapData(bitmap,false,repeat); - renderer.applyAlpha(graphics.__owner.__worldAlpha); - renderer.applyColorTransform(graphics.__owner.__worldColorTransform); - } else { - shader = openfl__$internal_renderer_context3D_Context3DGraphics.maskRender ? renderer.__maskShader : renderer.__initGraphicsShader(null); - renderer.setShader(shader); - renderer.applyMatrix(uMatrix); - renderer.applyBitmapData(bitmap,smooth,repeat); - renderer.applyAlpha(graphics.__owner.__worldAlpha); - renderer.applyColorTransform(graphics.__owner.__worldColorTransform); - renderer.updateShader(); - } - var end = quadBufferPosition + length; - while(quadBufferPosition < end) { - length = Math.min(end - quadBufferPosition,context.__quadIndexBufferElements) | 0; - if(length <= 0) { - break; - } - if(shaderBuffer != null && !openfl__$internal_renderer_context3D_Context3DGraphics.maskRender) { - renderer.__updateShaderBuffer(shaderBufferOffset); - } - if(shader.__position != null) { - context.setVertexBufferAt(shader.__position.index,graphics.__quadBuffer.vertexBuffer,quadBufferPosition * 16,2); - } - if(shader.__textureCoord != null) { - context.setVertexBufferAt(shader.__textureCoord.index,graphics.__quadBuffer.vertexBuffer,quadBufferPosition * 16 + 2,2); - } - context.drawTriangles(context.__quadIndexBuffer,0,length * 2); - shaderBufferOffset += length * 4; - quadBufferPosition += length; - } - renderer.__clearShader(); - } - break; - case 9: - if(fill != null) { - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_RECT; - var this5 = data; - var c4 = this5; - var x = c4.buffer.f[c4.fPos]; - var y = c4.buffer.f[c4.fPos + 1]; - var width1 = c4.buffer.f[c4.fPos + 2]; - var height1 = c4.buffer.f[c4.fPos + 3]; - var color1 = fill; - openfl__$internal_renderer_context3D_Context3DGraphics.tempColorTransform.redOffset = color1 >>> 16 & 255; - openfl__$internal_renderer_context3D_Context3DGraphics.tempColorTransform.greenOffset = color1 >>> 8 & 255; - openfl__$internal_renderer_context3D_Context3DGraphics.tempColorTransform.blueOffset = color1 & 255; - openfl__$internal_renderer_context3D_Context3DGraphics.tempColorTransform.__combine(graphics.__owner.__worldColorTransform); - matrix.identity(); - matrix.scale(width1,height1); - matrix.tx = x; - matrix.ty = y; - matrix.concat(graphics.__owner.__renderTransform); - var shader1 = openfl__$internal_renderer_context3D_Context3DGraphics.maskRender ? renderer.__maskShader : renderer.__initGraphicsShader(null); - renderer.setShader(shader1); - renderer.applyMatrix(renderer.__getMatrix(matrix,1)); - renderer.applyBitmapData(openfl__$internal_renderer_context3D_Context3DGraphics.blankBitmapData,true,repeat); - renderer.applyAlpha((color1 >>> 24 & 255) / 255 * graphics.__owner.__worldAlpha); - renderer.applyColorTransform(openfl__$internal_renderer_context3D_Context3DGraphics.tempColorTransform); - renderer.updateShader(); - var vertexBuffer = openfl__$internal_renderer_context3D_Context3DGraphics.blankBitmapData.getVertexBuffer(context); - if(shader1.__position != null) { - context.setVertexBufferAt(shader1.__position.index,vertexBuffer,0,3); - } - if(shader1.__textureCoord != null) { - context.setVertexBufferAt(shader1.__textureCoord.index,vertexBuffer,3,2); - } - var indexBuffer = openfl__$internal_renderer_context3D_Context3DGraphics.blankBitmapData.getIndexBuffer(context); - context.drawTriangles(indexBuffer); - shaderBufferOffset += 4; - renderer.__clearShader(); - } - break; - case 12: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_TRIANGLES; - var this6 = data; - var c5 = this6; - var vertices = c5.buffer.o[c5.oPos]; - var indices1 = c5.buffer.o[c5.oPos + 1]; - var uvtData = c5.buffer.o[c5.oPos + 2]; - var culling = c5.buffer.o[c5.oPos + 3]; - var hasIndices1 = indices1 != null; - var numVertices = Math.floor(vertices.get_length() / 2); - var length1 = hasIndices1 ? indices1.get_length() : numVertices; - var hasUVData = uvtData != null; - var hasUVTData = hasUVData && uvtData.get_length() >= numVertices * 3; - var vertLength = hasUVTData ? 4 : 2; - var uvStride = hasUVTData ? 3 : 2; - var dataPerVertex = vertLength + 2; - var vertexBuffer1 = hasUVTData ? graphics.__vertexBufferUVT : graphics.__vertexBuffer; - var bufferPosition = hasUVTData ? vertexBufferPositionUVT : vertexBufferPosition; - var uMatrix1 = renderer.__getMatrix(graphics.__owner.__renderTransform,1); - var shader2; - if(shaderBuffer != null && !openfl__$internal_renderer_context3D_Context3DGraphics.maskRender) { - shader2 = renderer.__initShaderBuffer(shaderBuffer); - renderer.__setShaderBuffer(shaderBuffer); - renderer.applyMatrix(uMatrix1); - renderer.applyBitmapData(bitmap,false,repeat); - renderer.applyAlpha(1); - renderer.applyColorTransform(null); - renderer.__updateShaderBuffer(shaderBufferOffset); - } else { - shader2 = openfl__$internal_renderer_context3D_Context3DGraphics.maskRender ? renderer.__maskShader : renderer.__initGraphicsShader(null); - renderer.setShader(shader2); - renderer.applyMatrix(uMatrix1); - renderer.applyBitmapData(bitmap,smooth,repeat); - renderer.applyAlpha(graphics.__owner.__worldAlpha); - renderer.applyColorTransform(graphics.__owner.__worldColorTransform); - renderer.updateShader(); - } - if(shader2.__position != null) { - context.setVertexBufferAt(shader2.__position.index,vertexBuffer1,bufferPosition,hasUVTData ? 4 : 2); - } - if(shader2.__textureCoord != null) { - context.setVertexBufferAt(shader2.__textureCoord.index,vertexBuffer1,bufferPosition + vertLength,2); - } - switch(culling) { - case 0: - context.setCulling(0); - break; - case 1: - context.setCulling(3); - break; - case 2: - context.setCulling(1); - break; - default: - } - context.__drawTriangles(0,length1); - shaderBufferOffset += length1; - if(hasUVTData) { - vertexBufferPositionUVT += dataPerVertex * length1; - } else { - vertexBufferPosition += dataPerVertex * length1; - } - switch(culling) { - case 1:case 2: - context.setCulling(0); - break; - default: - } - renderer.__clearShader(); - break; - case 13: - bitmap = null; - fill = null; - shaderBuffer = null; - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - break; - case 18: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.MOVE_TO; - var this7 = data; - var c6 = this7; - positionX = c6.buffer.f[c6.fPos]; - positionY = c6.buffer.f[c6.fPos + 1]; - break; - case 19: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.OVERRIDE_BLEND_MODE; - var this8 = data; - var c7 = this8; - renderer.__setBlendMode(c7.buffer.o[c7.oPos]); - break; - default: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - } - } - openfl_geom_Matrix.__pool.release(matrix); - } - graphics.__hardwareDirty = false; - graphics.set___dirty(false); - } -}; -openfl__$internal_renderer_context3D_Context3DGraphics.renderMask = function(graphics,renderer) { - openfl__$internal_renderer_context3D_Context3DGraphics.maskRender = true; - openfl__$internal_renderer_context3D_Context3DGraphics.render(graphics,renderer); - openfl__$internal_renderer_context3D_Context3DGraphics.maskRender = false; -}; -openfl__$internal_renderer_context3D_Context3DGraphics.resizeIndexBuffer = function(graphics,isQuad,length) { - if(isQuad) { - return; - } - var buffer = isQuad ? null : graphics.__triangleIndexBufferData; - var position = 0; - var newBuffer = null; - if(buffer == null) { - var array = null; - var vector = null; - var view = null; - var buffer1 = null; - var len = null; - var this1; - if(length != null) { - this1 = new Uint16Array(length); - } else if(array != null) { - this1 = new Uint16Array(array); - } else if(vector != null) { - this1 = new Uint16Array(vector.__array); - } else if(view != null) { - this1 = new Uint16Array(view); - } else if(buffer1 != null) { - if(len == null) { - this1 = new Uint16Array(buffer1,0); - } else { - this1 = new Uint16Array(buffer1,0,len); - } - } else { - this1 = null; - } - newBuffer = this1; - } else if(length > buffer.length) { - var array1 = null; - var vector1 = null; - var view1 = null; - var buffer2 = null; - var len1 = null; - var this2; - if(length != null) { - this2 = new Uint16Array(length); - } else if(array1 != null) { - this2 = new Uint16Array(array1); - } else if(vector1 != null) { - this2 = new Uint16Array(vector1.__array); - } else if(view1 != null) { - this2 = new Uint16Array(view1); - } else if(buffer2 != null) { - if(len1 == null) { - this2 = new Uint16Array(buffer2,0); - } else { - this2 = new Uint16Array(buffer2,0,len1); - } - } else { - this2 = null; - } - newBuffer = this2; - newBuffer.set(buffer); - position = buffer.length; - } - if(newBuffer != null) { - if(!isQuad) { - graphics.__triangleIndexBufferData = newBuffer; - } - } -}; -openfl__$internal_renderer_context3D_Context3DGraphics.resizeVertexBuffer = function(graphics,hasUVTData,length) { - var buffer = hasUVTData ? graphics.__vertexBufferDataUVT : graphics.__vertexBufferData; - var newBuffer = null; - if(buffer == null) { - var array = null; - var vector = null; - var view = null; - var buffer1 = null; - var len = null; - var this1; - if(length != null) { - this1 = new Float32Array(length); - } else if(array != null) { - this1 = new Float32Array(array); - } else if(vector != null) { - this1 = new Float32Array(vector.__array); - } else if(view != null) { - this1 = new Float32Array(view); - } else if(buffer1 != null) { - if(len == null) { - this1 = new Float32Array(buffer1,0); - } else { - this1 = new Float32Array(buffer1,0,len); - } - } else { - this1 = null; - } - newBuffer = this1; - } else if(length > buffer.length) { - var array1 = null; - var vector1 = null; - var view1 = null; - var buffer2 = null; - var len1 = null; - var this2; - if(length != null) { - this2 = new Float32Array(length); - } else if(array1 != null) { - this2 = new Float32Array(array1); - } else if(vector1 != null) { - this2 = new Float32Array(vector1.__array); - } else if(view1 != null) { - this2 = new Float32Array(view1); - } else if(buffer2 != null) { - if(len1 == null) { - this2 = new Float32Array(buffer2,0); - } else { - this2 = new Float32Array(buffer2,0,len1); - } - } else { - this2 = null; - } - newBuffer = this2; - newBuffer.set(buffer); - } - if(newBuffer != null) { - if(hasUVTData) { - graphics.__vertexBufferDataUVT = newBuffer; - } else { - graphics.__vertexBufferData = newBuffer; - } - } -}; -var openfl__$internal_renderer_context3D_Context3DMaskShader = function() { - if(this.__glFragmentSource == null) { - this.__glFragmentSource = "varying vec2 openfl_TextureCoordv;\n\t\t\n\t\tuniform sampler2D openfl_Texture;\n\t\t\n\t\tvoid main(void) {\n\t\t\t\n\t\t\tvec4 color = texture2D (openfl_Texture, openfl_TextureCoordv);\n\t\t\t\n\t\t\tif (color.a == 0.0) {\n\t\t\t\t\n\t\t\t\tdiscard;\n\t\t\t\t\n\t\t\t} else {\n\t\t\t\t\n\t\t\t\tgl_FragColor = color;\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}"; - } - if(this.__glVertexSource == null) { - this.__glVertexSource = "attribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\t\tvarying vec2 openfl_TextureCoordv;\n\t\t\n\t\tuniform mat4 openfl_Matrix;\n\t\t\n\t\tvoid main(void) {\n\t\t\t\n\t\t\topenfl_TextureCoordv = openfl_TextureCoord;\n\t\t\t\n\t\t\tgl_Position = openfl_Matrix * openfl_Position;\n\t\t\t\n\t\t}"; - } - openfl_display_Shader.call(this); - this.__isGenerated = true; - this.__initGL(); -}; -$hxClasses["openfl._internal.renderer.context3D.Context3DMaskShader"] = openfl__$internal_renderer_context3D_Context3DMaskShader; -openfl__$internal_renderer_context3D_Context3DMaskShader.__name__ = "openfl._internal.renderer.context3D.Context3DMaskShader"; -openfl__$internal_renderer_context3D_Context3DMaskShader.__super__ = openfl_display_Shader; -openfl__$internal_renderer_context3D_Context3DMaskShader.prototype = $extend(openfl_display_Shader.prototype,{ - openfl_Position: null - ,openfl_TextureCoord: null - ,openfl_Matrix: null - ,openfl_Texture: null - ,__class__: openfl__$internal_renderer_context3D_Context3DMaskShader -}); -var openfl__$internal_renderer_context3D_Context3DShape = function() { }; -$hxClasses["openfl._internal.renderer.context3D.Context3DShape"] = openfl__$internal_renderer_context3D_Context3DShape; -openfl__$internal_renderer_context3D_Context3DShape.__name__ = "openfl._internal.renderer.context3D.Context3DShape"; -openfl__$internal_renderer_context3D_Context3DShape.render = function(shape,renderer) { - if(!shape.__renderable || shape.__worldAlpha <= 0) { - return; - } - var graphics = shape.__graphics; - if(graphics != null) { - renderer.__setBlendMode(shape.__worldBlendMode); - renderer.__pushMaskObject(shape); - openfl__$internal_renderer_context3D_Context3DGraphics.render(graphics,renderer); - if(graphics.__bitmap != null && graphics.__visible) { - var context = renderer.__context3D; - var scale9Grid = shape.__worldScale9Grid; - var shader = renderer.__initDisplayShader(shape.__worldShader); - renderer.setShader(shader); - renderer.applyBitmapData(graphics.__bitmap,true); - renderer.applyMatrix(renderer.__getMatrix(graphics.__worldTransform,1)); - renderer.applyAlpha(shape.__worldAlpha); - renderer.applyColorTransform(shape.__worldColorTransform); - renderer.updateShader(); - var vertexBuffer = graphics.__bitmap.getVertexBuffer(context); - if(shader.__position != null) { - context.setVertexBufferAt(shader.__position.index,vertexBuffer,0,3); - } - if(shader.__textureCoord != null) { - context.setVertexBufferAt(shader.__textureCoord.index,vertexBuffer,3,2); - } - var indexBuffer = graphics.__bitmap.getIndexBuffer(context); - context.drawTriangles(indexBuffer); - renderer.__clearShader(); - } - renderer.__popMaskObject(shape); - } -}; -openfl__$internal_renderer_context3D_Context3DShape.renderMask = function(shape,renderer) { - var graphics = shape.__graphics; - if(graphics != null) { - openfl__$internal_renderer_context3D_Context3DGraphics.renderMask(graphics,renderer); - if(graphics.__bitmap != null) { - var context = renderer.__context3D; - var shader = renderer.__maskShader; - renderer.setShader(shader); - renderer.applyBitmapData(graphics.__bitmap,true); - renderer.applyMatrix(renderer.__getMatrix(graphics.__worldTransform,1)); - renderer.updateShader(); - var vertexBuffer = graphics.__bitmap.getVertexBuffer(context); - if(shader.__position != null) { - context.setVertexBufferAt(shader.__position.index,vertexBuffer,0,3); - } - if(shader.__textureCoord != null) { - context.setVertexBufferAt(shader.__textureCoord.index,vertexBuffer,3,2); - } - var indexBuffer = graphics.__bitmap.getIndexBuffer(context); - context.drawTriangles(indexBuffer); - renderer.__clearShader(); - } - } -}; -var openfl__$internal_renderer_context3D_Context3DState = function() { - this.backBufferEnableDepthAndStencil = false; - this.blendDestinationAlphaFactor = 9; - this.blendSourceAlphaFactor = 2; - this.blendDestinationRGBFactor = 9; - this.blendSourceRGBFactor = 2; - this.colorMaskRed = true; - this.colorMaskGreen = true; - this.colorMaskBlue = true; - this.colorMaskAlpha = true; - this.culling = 3; - this.depthCompareMode = 4; - this.depthMask = true; - this.samplerStates = []; - this.scissorRectangle = new openfl_geom_Rectangle(); - this.stencilCompareMode = 0; - this.stencilDepthFail = 5; - this.stencilFail = 5; - this.stencilPass = 5; - this.stencilReadMask = 255; - this.stencilReferenceValue = 0; - this.stencilTriangleFace = 2; - this.stencilWriteMask = 255; - this.textures = []; - this.__frontFaceGLCCW = true; - this.__glBlendEquation = 32774; -}; -$hxClasses["openfl._internal.renderer.context3D.Context3DState"] = openfl__$internal_renderer_context3D_Context3DState; -openfl__$internal_renderer_context3D_Context3DState.__name__ = "openfl._internal.renderer.context3D.Context3DState"; -openfl__$internal_renderer_context3D_Context3DState.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__: openfl__$internal_renderer_context3D_Context3DState -}; -var openfl__$internal_renderer_context3D_Context3DTextField = function() { }; -$hxClasses["openfl._internal.renderer.context3D.Context3DTextField"] = openfl__$internal_renderer_context3D_Context3DTextField; -openfl__$internal_renderer_context3D_Context3DTextField.__name__ = "openfl._internal.renderer.context3D.Context3DTextField"; -openfl__$internal_renderer_context3D_Context3DTextField.render = function(textField,renderer) { - var renderer1 = renderer.__softwareRenderer; - var transform = textField.__worldTransform; - var textEngine = textField.__textEngine; - var bounds = textEngine.background || textEngine.border ? textEngine.bounds : textEngine.textBounds; - var graphics = textField.__graphics; - if(textField.__dirty) { - textField.__updateLayout(); - if(graphics.__bounds == null) { - graphics.__bounds = new openfl_geom_Rectangle(); - } - graphics.__bounds.copyFrom(bounds); - } - graphics.__update(renderer1.__worldTransform); - if(textField.__dirty || graphics.__softwareDirty) { - var width = graphics.__width; - var height = graphics.__height; - if((textEngine.text == null || textEngine.text == "") && !textEngine.background && !textEngine.border && !textEngine.__hasFocus && (textEngine.type != 1 || !textEngine.selectable) || (textEngine.width <= 0 || textEngine.height <= 0) && textEngine.autoSize != 2) { - textField.__graphics.__canvas = null; - textField.__graphics.__context = null; - textField.__graphics.__bitmap = null; - textField.__graphics.__softwareDirty = false; - textField.__graphics.set___dirty(false); - textField.__dirty = false; - } else { - if(textField.__graphics.__canvas == null) { - textField.__graphics.__canvas = window.document.createElement("canvas"); - textField.__graphics.__context = textField.__graphics.__canvas.getContext("2d"); - } - openfl__$internal_renderer_canvas_CanvasTextField.context = graphics.__context; - var transform1 = graphics.__renderTransform; - if(renderer1.__isDOM) { - var scale = renderer1.pixelRatio; - graphics.__canvas.width = width * scale | 0; - graphics.__canvas.height = height * scale | 0; - graphics.__canvas.style.width = width + "px"; - graphics.__canvas.style.height = height + "px"; - var matrix = openfl_geom_Matrix.__pool.get(); - matrix.copyFrom(transform1); - matrix.scale(scale,scale); - renderer1.setTransform(matrix,openfl__$internal_renderer_canvas_CanvasTextField.context); - openfl_geom_Matrix.__pool.release(matrix); - } else { - graphics.__canvas.width = width; - graphics.__canvas.height = height; - openfl__$internal_renderer_canvas_CanvasTextField.context.setTransform(transform1.a,transform1.b,transform1.c,transform1.d,transform1.tx,transform1.ty); - } - if(openfl__$internal_renderer_canvas_CanvasTextField.clearRect == null) { - openfl__$internal_renderer_canvas_CanvasTextField.clearRect = (typeof navigator !== 'undefined' && typeof navigator['isCocoonJS'] !== 'undefined'); - } - if(openfl__$internal_renderer_canvas_CanvasTextField.clearRect) { - openfl__$internal_renderer_canvas_CanvasTextField.context.clearRect(0,0,graphics.__canvas.width,graphics.__canvas.height); - } - if(textEngine.text != null && textEngine.text != "" || textEngine.__hasFocus) { - var text = textEngine.text; - if(!renderer1.__allowSmoothing || textEngine.antiAliasType == 0 && textEngine.sharpness == 400) { - graphics.__context.imageSmoothingEnabled = false; - } else { - graphics.__context.imageSmoothingEnabled = true; - } - if(textEngine.border || textEngine.background) { - openfl__$internal_renderer_canvas_CanvasTextField.context.rect(0.5,0.5,bounds.width - 1,bounds.height - 1); - if(textEngine.background) { - var tmp = StringTools.hex(textEngine.backgroundColor & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = "#" + tmp; - openfl__$internal_renderer_canvas_CanvasTextField.context.fill(); - } - if(textEngine.border) { - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - var tmp1 = StringTools.hex(textEngine.borderColor & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = "#" + tmp1; - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - } - } - openfl__$internal_renderer_canvas_CanvasTextField.context.textBaseline = "alphabetic"; - openfl__$internal_renderer_canvas_CanvasTextField.context.textAlign = "start"; - var scrollX = -textField.get_scrollH(); - var scrollY = 0.0; - var _g = 0; - var _g1 = textField.get_scrollV() - 1; - while(_g < _g1) { - var i = _g++; - scrollY -= textEngine.lineHeights.get(i); - } - var advance; - var group = textEngine.layoutGroups.iterator(); - while(group.hasNext()) { - var group1 = group.next(); - if(group1.lineIndex < textField.get_scrollV() - 1) { - continue; - } - if(group1.lineIndex > textEngine.get_bottomScrollV() - 1) { - break; - } - var color = "#" + StringTools.hex(group1.format.color & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.font = openfl__$internal_text_TextEngine.getFont(group1.format); - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = color; - openfl__$internal_renderer_canvas_CanvasTextField.context.fillText(text.substring(group1.startIndex,group1.endIndex),group1.offsetX + scrollX - bounds.x,group1.offsetY + group1.ascent + scrollY - bounds.y); - if(textField.__caretIndex > -1 && textEngine.selectable) { - if(textField.__selectionIndex == textField.__caretIndex) { - if(textField.__showCursor && group1.startIndex <= textField.__caretIndex && group1.endIndex >= textField.__caretIndex) { - advance = 0.0; - var _g3 = 0; - var _g4 = textField.__caretIndex - group1.startIndex; - while(_g3 < _g4) { - var i1 = _g3++; - if(group1.positions.length <= i1) { - break; - } - advance += group1.positions[i1]; - } - var scrollY1 = 0.0; - var _g5 = textField.get_scrollV(); - var _g6 = group1.lineIndex + 1; - while(_g5 < _g6) { - var i2 = _g5++; - scrollY1 += textEngine.lineHeights.get(i2 - 1); - } - openfl__$internal_renderer_canvas_CanvasTextField.context.beginPath(); - var tmp2 = StringTools.hex(group1.format.color & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = "#" + tmp2; - openfl__$internal_renderer_canvas_CanvasTextField.context.moveTo(group1.offsetX + advance - textField.get_scrollH() - bounds.x,scrollY1 + 2 - bounds.y); - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - openfl__$internal_renderer_canvas_CanvasTextField.context.lineTo(group1.offsetX + advance - textField.get_scrollH() - bounds.x,scrollY1 + openfl__$internal_text_TextEngine.getFormatHeight(textField.get_defaultTextFormat()) - 1 - bounds.y); - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - openfl__$internal_renderer_canvas_CanvasTextField.context.closePath(); - } - } else if(group1.startIndex <= textField.__caretIndex && group1.endIndex >= textField.__caretIndex || group1.startIndex <= textField.__selectionIndex && group1.endIndex >= textField.__selectionIndex || group1.startIndex > textField.__caretIndex && group1.endIndex < textField.__selectionIndex || group1.startIndex > textField.__selectionIndex && group1.endIndex < textField.__caretIndex) { - var selectionStart = Math.min(textField.__selectionIndex,textField.__caretIndex) | 0; - var selectionEnd = Math.max(textField.__selectionIndex,textField.__caretIndex) | 0; - if(group1.startIndex > selectionStart) { - selectionStart = group1.startIndex; - } - if(group1.endIndex < selectionEnd) { - selectionEnd = group1.endIndex; - } - var end; - var start = textField.getCharBoundaries(selectionStart); - if(selectionEnd >= group1.endIndex) { - end = textField.getCharBoundaries(group1.endIndex - 1); - if(end != null) { - end.x += end.width + 2; - } - } else { - end = textField.getCharBoundaries(selectionEnd); - } - if(start != null && end != null) { - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = "#000000"; - openfl__$internal_renderer_canvas_CanvasTextField.context.fillRect(start.x + scrollX,start.y + scrollY,end.x - start.x,group1.height); - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = "#FFFFFF"; - openfl__$internal_renderer_canvas_CanvasTextField.context.fillText(text.substring(selectionStart,selectionEnd),scrollX + start.x,group1.offsetY + group1.ascent + scrollY); - } - } - } - if(group1.format.underline) { - openfl__$internal_renderer_canvas_CanvasTextField.context.beginPath(); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = color; - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - var x = group1.offsetX + scrollX - bounds.x; - var y = Math.floor(group1.offsetY + scrollY + group1.ascent - bounds.y) + 0.5; - openfl__$internal_renderer_canvas_CanvasTextField.context.moveTo(x,y); - openfl__$internal_renderer_canvas_CanvasTextField.context.lineTo(x + group1.width,y); - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - openfl__$internal_renderer_canvas_CanvasTextField.context.closePath(); - } - } - } else { - if(textEngine.border || textEngine.background) { - if(textEngine.border) { - openfl__$internal_renderer_canvas_CanvasTextField.context.rect(0.5,0.5,bounds.width - 1,bounds.height - 1); - } else { - openfl__$internal_renderer_canvas_CanvasTextField.context.rect(0,0,bounds.width,bounds.height); - } - if(textEngine.background) { - var tmp3 = StringTools.hex(textEngine.backgroundColor & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = "#" + tmp3; - openfl__$internal_renderer_canvas_CanvasTextField.context.fill(); - } - if(textEngine.border) { - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - openfl__$internal_renderer_canvas_CanvasTextField.context.lineCap = "square"; - var tmp4 = StringTools.hex(textEngine.borderColor & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = "#" + tmp4; - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - } - } - if(textField.__caretIndex > -1 && textEngine.selectable && textField.__showCursor) { - var scrollX1 = -textField.get_scrollH(); - var scrollY2 = 0.0; - var _g2 = 0; - var _g11 = textField.get_scrollV() - 1; - while(_g2 < _g11) { - var i3 = _g2++; - scrollY2 += textEngine.lineHeights.get(i3); - } - openfl__$internal_renderer_canvas_CanvasTextField.context.beginPath(); - var tmp5 = StringTools.hex(textField.get_defaultTextFormat().color & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = "#" + tmp5; - openfl__$internal_renderer_canvas_CanvasTextField.context.moveTo(scrollX1 + 2.5,scrollY2 + 2.5); - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - openfl__$internal_renderer_canvas_CanvasTextField.context.lineTo(scrollX1 + 2.5,scrollY2 + openfl__$internal_text_TextEngine.getFormatHeight(textField.get_defaultTextFormat()) - 1); - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - openfl__$internal_renderer_canvas_CanvasTextField.context.closePath(); - } - } - graphics.__bitmap = openfl_display_BitmapData.fromCanvas(textField.__graphics.__canvas); - graphics.__visible = true; - textField.__dirty = false; - graphics.__softwareDirty = false; - graphics.set___dirty(false); - } - } - textField.__graphics.__hardwareDirty = false; -}; -openfl__$internal_renderer_context3D_Context3DTextField.renderMask = function(textField,renderer) { - var renderer1 = renderer.__softwareRenderer; - var transform = textField.__worldTransform; - var textEngine = textField.__textEngine; - var bounds = textEngine.background || textEngine.border ? textEngine.bounds : textEngine.textBounds; - var graphics = textField.__graphics; - if(textField.__dirty) { - textField.__updateLayout(); - if(graphics.__bounds == null) { - graphics.__bounds = new openfl_geom_Rectangle(); - } - graphics.__bounds.copyFrom(bounds); - } - graphics.__update(renderer1.__worldTransform); - if(textField.__dirty || graphics.__softwareDirty) { - var width = graphics.__width; - var height = graphics.__height; - if((textEngine.text == null || textEngine.text == "") && !textEngine.background && !textEngine.border && !textEngine.__hasFocus && (textEngine.type != 1 || !textEngine.selectable) || (textEngine.width <= 0 || textEngine.height <= 0) && textEngine.autoSize != 2) { - textField.__graphics.__canvas = null; - textField.__graphics.__context = null; - textField.__graphics.__bitmap = null; - textField.__graphics.__softwareDirty = false; - textField.__graphics.set___dirty(false); - textField.__dirty = false; - } else { - if(textField.__graphics.__canvas == null) { - textField.__graphics.__canvas = window.document.createElement("canvas"); - textField.__graphics.__context = textField.__graphics.__canvas.getContext("2d"); - } - openfl__$internal_renderer_canvas_CanvasTextField.context = graphics.__context; - var transform1 = graphics.__renderTransform; - if(renderer1.__isDOM) { - var scale = renderer1.pixelRatio; - graphics.__canvas.width = width * scale | 0; - graphics.__canvas.height = height * scale | 0; - graphics.__canvas.style.width = width + "px"; - graphics.__canvas.style.height = height + "px"; - var matrix = openfl_geom_Matrix.__pool.get(); - matrix.copyFrom(transform1); - matrix.scale(scale,scale); - renderer1.setTransform(matrix,openfl__$internal_renderer_canvas_CanvasTextField.context); - openfl_geom_Matrix.__pool.release(matrix); - } else { - graphics.__canvas.width = width; - graphics.__canvas.height = height; - openfl__$internal_renderer_canvas_CanvasTextField.context.setTransform(transform1.a,transform1.b,transform1.c,transform1.d,transform1.tx,transform1.ty); - } - if(openfl__$internal_renderer_canvas_CanvasTextField.clearRect == null) { - openfl__$internal_renderer_canvas_CanvasTextField.clearRect = (typeof navigator !== 'undefined' && typeof navigator['isCocoonJS'] !== 'undefined'); - } - if(openfl__$internal_renderer_canvas_CanvasTextField.clearRect) { - openfl__$internal_renderer_canvas_CanvasTextField.context.clearRect(0,0,graphics.__canvas.width,graphics.__canvas.height); - } - if(textEngine.text != null && textEngine.text != "" || textEngine.__hasFocus) { - var text = textEngine.text; - if(!renderer1.__allowSmoothing || textEngine.antiAliasType == 0 && textEngine.sharpness == 400) { - graphics.__context.imageSmoothingEnabled = false; - } else { - graphics.__context.imageSmoothingEnabled = true; - } - if(textEngine.border || textEngine.background) { - openfl__$internal_renderer_canvas_CanvasTextField.context.rect(0.5,0.5,bounds.width - 1,bounds.height - 1); - if(textEngine.background) { - var tmp = StringTools.hex(textEngine.backgroundColor & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = "#" + tmp; - openfl__$internal_renderer_canvas_CanvasTextField.context.fill(); - } - if(textEngine.border) { - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - var tmp1 = StringTools.hex(textEngine.borderColor & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = "#" + tmp1; - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - } - } - openfl__$internal_renderer_canvas_CanvasTextField.context.textBaseline = "alphabetic"; - openfl__$internal_renderer_canvas_CanvasTextField.context.textAlign = "start"; - var scrollX = -textField.get_scrollH(); - var scrollY = 0.0; - var _g = 0; - var _g1 = textField.get_scrollV() - 1; - while(_g < _g1) { - var i = _g++; - scrollY -= textEngine.lineHeights.get(i); - } - var advance; - var group = textEngine.layoutGroups.iterator(); - while(group.hasNext()) { - var group1 = group.next(); - if(group1.lineIndex < textField.get_scrollV() - 1) { - continue; - } - if(group1.lineIndex > textEngine.get_bottomScrollV() - 1) { - break; - } - var color = "#" + StringTools.hex(group1.format.color & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.font = openfl__$internal_text_TextEngine.getFont(group1.format); - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = color; - openfl__$internal_renderer_canvas_CanvasTextField.context.fillText(text.substring(group1.startIndex,group1.endIndex),group1.offsetX + scrollX - bounds.x,group1.offsetY + group1.ascent + scrollY - bounds.y); - if(textField.__caretIndex > -1 && textEngine.selectable) { - if(textField.__selectionIndex == textField.__caretIndex) { - if(textField.__showCursor && group1.startIndex <= textField.__caretIndex && group1.endIndex >= textField.__caretIndex) { - advance = 0.0; - var _g3 = 0; - var _g4 = textField.__caretIndex - group1.startIndex; - while(_g3 < _g4) { - var i1 = _g3++; - if(group1.positions.length <= i1) { - break; - } - advance += group1.positions[i1]; - } - var scrollY1 = 0.0; - var _g5 = textField.get_scrollV(); - var _g6 = group1.lineIndex + 1; - while(_g5 < _g6) { - var i2 = _g5++; - scrollY1 += textEngine.lineHeights.get(i2 - 1); - } - openfl__$internal_renderer_canvas_CanvasTextField.context.beginPath(); - var tmp2 = StringTools.hex(group1.format.color & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = "#" + tmp2; - openfl__$internal_renderer_canvas_CanvasTextField.context.moveTo(group1.offsetX + advance - textField.get_scrollH() - bounds.x,scrollY1 + 2 - bounds.y); - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - openfl__$internal_renderer_canvas_CanvasTextField.context.lineTo(group1.offsetX + advance - textField.get_scrollH() - bounds.x,scrollY1 + openfl__$internal_text_TextEngine.getFormatHeight(textField.get_defaultTextFormat()) - 1 - bounds.y); - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - openfl__$internal_renderer_canvas_CanvasTextField.context.closePath(); - } - } else if(group1.startIndex <= textField.__caretIndex && group1.endIndex >= textField.__caretIndex || group1.startIndex <= textField.__selectionIndex && group1.endIndex >= textField.__selectionIndex || group1.startIndex > textField.__caretIndex && group1.endIndex < textField.__selectionIndex || group1.startIndex > textField.__selectionIndex && group1.endIndex < textField.__caretIndex) { - var selectionStart = Math.min(textField.__selectionIndex,textField.__caretIndex) | 0; - var selectionEnd = Math.max(textField.__selectionIndex,textField.__caretIndex) | 0; - if(group1.startIndex > selectionStart) { - selectionStart = group1.startIndex; - } - if(group1.endIndex < selectionEnd) { - selectionEnd = group1.endIndex; - } - var end; - var start = textField.getCharBoundaries(selectionStart); - if(selectionEnd >= group1.endIndex) { - end = textField.getCharBoundaries(group1.endIndex - 1); - if(end != null) { - end.x += end.width + 2; - } - } else { - end = textField.getCharBoundaries(selectionEnd); - } - if(start != null && end != null) { - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = "#000000"; - openfl__$internal_renderer_canvas_CanvasTextField.context.fillRect(start.x + scrollX,start.y + scrollY,end.x - start.x,group1.height); - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = "#FFFFFF"; - openfl__$internal_renderer_canvas_CanvasTextField.context.fillText(text.substring(selectionStart,selectionEnd),scrollX + start.x,group1.offsetY + group1.ascent + scrollY); - } - } - } - if(group1.format.underline) { - openfl__$internal_renderer_canvas_CanvasTextField.context.beginPath(); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = color; - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - var x = group1.offsetX + scrollX - bounds.x; - var y = Math.floor(group1.offsetY + scrollY + group1.ascent - bounds.y) + 0.5; - openfl__$internal_renderer_canvas_CanvasTextField.context.moveTo(x,y); - openfl__$internal_renderer_canvas_CanvasTextField.context.lineTo(x + group1.width,y); - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - openfl__$internal_renderer_canvas_CanvasTextField.context.closePath(); - } - } - } else { - if(textEngine.border || textEngine.background) { - if(textEngine.border) { - openfl__$internal_renderer_canvas_CanvasTextField.context.rect(0.5,0.5,bounds.width - 1,bounds.height - 1); - } else { - openfl__$internal_renderer_canvas_CanvasTextField.context.rect(0,0,bounds.width,bounds.height); - } - if(textEngine.background) { - var tmp3 = StringTools.hex(textEngine.backgroundColor & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = "#" + tmp3; - openfl__$internal_renderer_canvas_CanvasTextField.context.fill(); - } - if(textEngine.border) { - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - openfl__$internal_renderer_canvas_CanvasTextField.context.lineCap = "square"; - var tmp4 = StringTools.hex(textEngine.borderColor & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = "#" + tmp4; - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - } - } - if(textField.__caretIndex > -1 && textEngine.selectable && textField.__showCursor) { - var scrollX1 = -textField.get_scrollH(); - var scrollY2 = 0.0; - var _g2 = 0; - var _g11 = textField.get_scrollV() - 1; - while(_g2 < _g11) { - var i3 = _g2++; - scrollY2 += textEngine.lineHeights.get(i3); - } - openfl__$internal_renderer_canvas_CanvasTextField.context.beginPath(); - var tmp5 = StringTools.hex(textField.get_defaultTextFormat().color & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = "#" + tmp5; - openfl__$internal_renderer_canvas_CanvasTextField.context.moveTo(scrollX1 + 2.5,scrollY2 + 2.5); - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - openfl__$internal_renderer_canvas_CanvasTextField.context.lineTo(scrollX1 + 2.5,scrollY2 + openfl__$internal_text_TextEngine.getFormatHeight(textField.get_defaultTextFormat()) - 1); - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - openfl__$internal_renderer_canvas_CanvasTextField.context.closePath(); - } - } - graphics.__bitmap = openfl_display_BitmapData.fromCanvas(textField.__graphics.__canvas); - graphics.__visible = true; - textField.__dirty = false; - graphics.__softwareDirty = false; - graphics.set___dirty(false); - } - } - textField.__graphics.__hardwareDirty = false; -}; -var openfl__$internal_renderer_dom_DOMBitmap = function() { }; -$hxClasses["openfl._internal.renderer.dom.DOMBitmap"] = openfl__$internal_renderer_dom_DOMBitmap; -openfl__$internal_renderer_dom_DOMBitmap.__name__ = "openfl._internal.renderer.dom.DOMBitmap"; -openfl__$internal_renderer_dom_DOMBitmap.clear = function(bitmap,renderer) { - if(bitmap.__image != null) { - renderer.element.removeChild(bitmap.__image); - bitmap.__image = null; - bitmap.__style = null; - } - if(bitmap.__canvas != null) { - renderer.element.removeChild(bitmap.__canvas); - bitmap.__canvas = null; - bitmap.__style = null; - } -}; -openfl__$internal_renderer_dom_DOMBitmap.render = function(bitmap,renderer) { - if(bitmap.stage != null && bitmap.__worldVisible && bitmap.__renderable && bitmap.__bitmapData != null && bitmap.__bitmapData.__isValid && bitmap.__bitmapData.readable) { - renderer.__pushMaskObject(bitmap); - if(bitmap.__bitmapData.image.buffer.__srcImage != null) { - openfl__$internal_renderer_dom_DOMBitmap.renderImage(bitmap,renderer); - } else { - openfl__$internal_renderer_dom_DOMBitmap.renderCanvas(bitmap,renderer); - } - renderer.__popMaskObject(bitmap); - } else { - openfl__$internal_renderer_dom_DOMBitmap.clear(bitmap,renderer); - } -}; -openfl__$internal_renderer_dom_DOMBitmap.renderCanvas = function(bitmap,renderer) { - if(bitmap.__image != null) { - renderer.element.removeChild(bitmap.__image); - bitmap.__image = null; - } - if(bitmap.__canvas == null) { - bitmap.__canvas = window.document.createElement("canvas"); - bitmap.__context = bitmap.__canvas.getContext("2d"); - bitmap.__imageVersion = -1; - if(!renderer.__allowSmoothing || !bitmap.smoothing) { - bitmap.__context.imageSmoothingEnabled = false; - } - renderer.__initializeElement(bitmap,bitmap.__canvas); - } - if(bitmap.__imageVersion != bitmap.__bitmapData.image.version) { - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(bitmap.__bitmapData.image); - bitmap.__canvas.width = bitmap.__bitmapData.width + 1; - bitmap.__canvas.width = bitmap.__bitmapData.width; - bitmap.__canvas.height = bitmap.__bitmapData.height; - bitmap.__context.drawImage(bitmap.__bitmapData.image.buffer.__srcCanvas,0,0); - bitmap.__imageVersion = bitmap.__bitmapData.image.version; - } - renderer.__updateClip(bitmap); - renderer.__applyStyle(bitmap,true,true,true); -}; -openfl__$internal_renderer_dom_DOMBitmap.renderImage = function(bitmap,renderer) { - if(bitmap.__canvas != null) { - renderer.element.removeChild(bitmap.__canvas); - bitmap.__canvas = null; - } - if(bitmap.__image == null) { - bitmap.__image = window.document.createElement("img"); - bitmap.__image.crossOrigin = "Anonymous"; - bitmap.__image.src = bitmap.__bitmapData.image.buffer.__srcImage.src; - renderer.__initializeElement(bitmap,bitmap.__image); - } - renderer.__updateClip(bitmap); - renderer.__applyStyle(bitmap,true,true,true); -}; -var openfl__$internal_renderer_dom_DOMDisplayObject = function() { }; -$hxClasses["openfl._internal.renderer.dom.DOMDisplayObject"] = openfl__$internal_renderer_dom_DOMDisplayObject; -openfl__$internal_renderer_dom_DOMDisplayObject.__name__ = "openfl._internal.renderer.dom.DOMDisplayObject"; -openfl__$internal_renderer_dom_DOMDisplayObject.clear = function(displayObject,renderer) { - if(displayObject.__cacheBitmap != null) { - openfl__$internal_renderer_dom_DOMBitmap.clear(displayObject.__cacheBitmap,renderer); - } - openfl__$internal_renderer_dom_DOMShape.clear(displayObject,renderer); -}; -openfl__$internal_renderer_dom_DOMDisplayObject.render = function(displayObject,renderer) { - var tmp = displayObject.opaqueBackground != null && !displayObject.__isCacheBitmapRender && displayObject.get_width() > 0 && displayObject.get_height() > 0; - var graphics = displayObject.__graphics; - if(displayObject.stage != null && displayObject.__worldVisible && displayObject.__renderable && graphics != null) { - openfl__$internal_renderer_canvas_CanvasGraphics.render(graphics,renderer.__canvasRenderer); - if(graphics.__softwareDirty || displayObject.__worldAlphaChanged || displayObject.__canvas != graphics.__canvas) { - if(graphics.__canvas != null) { - if(displayObject.__canvas != graphics.__canvas) { - if(displayObject.__canvas != null) { - renderer.element.removeChild(displayObject.__canvas); - } - displayObject.__canvas = graphics.__canvas; - displayObject.__context = graphics.__context; - renderer.__initializeElement(displayObject,displayObject.__canvas); - } - } else { - openfl__$internal_renderer_dom_DOMShape.clear(displayObject,renderer); - } - } - if(displayObject.__canvas != null) { - renderer.__pushMaskObject(displayObject); - var cacheTransform = displayObject.__renderTransform; - displayObject.__renderTransform = graphics.__worldTransform; - if(graphics.__transformDirty) { - graphics.__transformDirty = false; - displayObject.__renderTransformChanged = true; - } - renderer.__updateClip(displayObject); - renderer.__applyStyle(displayObject,true,true,true); - displayObject.__renderTransform = cacheTransform; - renderer.__popMaskObject(displayObject); - } - } else { - openfl__$internal_renderer_dom_DOMShape.clear(displayObject,renderer); - } -}; -var openfl__$internal_renderer_dom_DOMShape = function() { }; -$hxClasses["openfl._internal.renderer.dom.DOMShape"] = openfl__$internal_renderer_dom_DOMShape; -openfl__$internal_renderer_dom_DOMShape.__name__ = "openfl._internal.renderer.dom.DOMShape"; -openfl__$internal_renderer_dom_DOMShape.clear = function(shape,renderer) { - if(shape.__canvas != null) { - renderer.element.removeChild(shape.__canvas); - shape.__canvas = null; - shape.__style = null; - } -}; -openfl__$internal_renderer_dom_DOMShape.render = function(shape,renderer) { - var graphics = shape.__graphics; - if(shape.stage != null && shape.__worldVisible && shape.__renderable && graphics != null) { - openfl__$internal_renderer_canvas_CanvasGraphics.render(graphics,renderer.__canvasRenderer); - if(graphics.__softwareDirty || shape.__worldAlphaChanged || shape.__canvas != graphics.__canvas) { - if(graphics.__canvas != null) { - if(shape.__canvas != graphics.__canvas) { - if(shape.__canvas != null) { - renderer.element.removeChild(shape.__canvas); - } - shape.__canvas = graphics.__canvas; - shape.__context = graphics.__context; - renderer.__initializeElement(shape,shape.__canvas); - } - } else { - openfl__$internal_renderer_dom_DOMShape.clear(shape,renderer); - } - } - if(shape.__canvas != null) { - renderer.__pushMaskObject(shape); - var cacheTransform = shape.__renderTransform; - shape.__renderTransform = graphics.__worldTransform; - if(graphics.__transformDirty) { - graphics.__transformDirty = false; - shape.__renderTransformChanged = true; - } - renderer.__updateClip(shape); - renderer.__applyStyle(shape,true,true,true); - shape.__renderTransform = cacheTransform; - renderer.__popMaskObject(shape); - } - } else { - openfl__$internal_renderer_dom_DOMShape.clear(shape,renderer); - } -}; -var openfl__$internal_renderer_dom_DOMTextField = function() { }; -$hxClasses["openfl._internal.renderer.dom.DOMTextField"] = openfl__$internal_renderer_dom_DOMTextField; -openfl__$internal_renderer_dom_DOMTextField.__name__ = "openfl._internal.renderer.dom.DOMTextField"; -openfl__$internal_renderer_dom_DOMTextField.clear = function(textField,renderer) { - if(textField.__div != null) { - renderer.element.removeChild(textField.__div); - textField.__div = null; - textField.__style = null; - } -}; -openfl__$internal_renderer_dom_DOMTextField.measureText = function(textField) { - var textEngine = textField.__textEngine; - var div = textField.__div; - if(div == null) { - div = window.document.createElement("div"); - var _this_r = new RegExp("\n","g".split("u").join("")); - div.innerHTML = textEngine.text.replace(_this_r,"
"); - div.style.setProperty("font",openfl__$internal_text_TextEngine.getFont(textField.__textFormat),null); - div.style.setProperty("pointer-events","none",null); - div.style.position = "absolute"; - div.style.top = "110%"; - window.document.body.appendChild(div); - } - textEngine.__measuredWidth = div.clientWidth; - if(textField.__div == null) { - div.style.width = Std.string(textEngine.width - 4) + "px"; - } - textEngine.__measuredHeight = div.clientHeight; - if(textField.__div == null) { - window.document.body.removeChild(div); - } -}; -openfl__$internal_renderer_dom_DOMTextField.render = function(textField,renderer) { - var textEngine = textField.__textEngine; - if(textField.stage != null && textField.__worldVisible && textField.__renderable) { - if(textField.__dirty || textField.__renderTransformChanged || textField.__div == null) { - if(textEngine.text != "" || textEngine.background || textEngine.border || textEngine.type == 1) { - if(textField.__div == null) { - textField.__div = window.document.createElement("div"); - renderer.__initializeElement(textField,textField.__div); - textField.__style.setProperty("outline","none",null); - textField.__div.addEventListener("input",function(event) { - event.preventDefault(); - if(textField.get_htmlText() != textField.__div.innerHTML) { - textField.set_htmlText(textField.__div.innerHTML); - var textField1 = textField.__displayAsPassword; - textField.__dirty = false; - } - },true); - } - if(!textEngine.wordWrap) { - textField.__style.setProperty("white-space","nowrap",null); - } else { - textField.__style.setProperty("word-wrap","break-word",null); - } - textField.__style.setProperty("overflow","hidden",null); - if(textEngine.selectable) { - textField.__style.setProperty("cursor","text",null); - textField.__style.setProperty("-webkit-user-select","text",null); - textField.__style.setProperty("-moz-user-select","text",null); - textField.__style.setProperty("-ms-user-select","text",null); - textField.__style.setProperty("-o-user-select","text",null); - } else { - textField.__style.setProperty("cursor","inherit",null); - } - var div = textField.__div; - div.contentEditable = textEngine.type == 1; - var style = textField.__style; - if(textEngine.background) { - style.setProperty("background-color","#" + StringTools.hex(textEngine.backgroundColor & 16777215,6),null); - } else { - style.removeProperty("background-color"); - } - var w = textEngine.width; - var h = textEngine.height; - var scale = 1; - var unscaledSize = textField.__textFormat.size; - var scaledSize = unscaledSize; - var t = textField.__renderTransform; - if(t.a != 1.0 || t.d != 1.0) { - if(t.a == t.d) { - scale = t.a; - t.a = t.d = 1.0; - } else if(t.a > t.d) { - scale = t.a; - t.d /= t.a; - t.a = 1.0; - } else { - scale = t.d; - t.a /= t.d; - t.d = 1.0; - } - scaledSize *= scale; - w = Math.ceil(w * scale); - h = Math.ceil(h * scale); - } - textField.__textFormat.size = scaledSize; - var text = textEngine.text; - var adjustment = 0; - if(!textField.__isHTML) { - text = StringTools.htmlEscape(text); - } else { - var matchText = text; - while(openfl__$internal_renderer_dom_DOMTextField.__regexFont.match(matchText)) { - var fontText = openfl__$internal_renderer_dom_DOMTextField.__regexFont.matched(0); - var style1 = ""; - if(openfl__$internal_renderer_dom_DOMTextField.__regexFace.match(fontText)) { - style1 += "font-family:'" + openfl__$internal_renderer_dom_DOMTextField.__getAttributeMatch(openfl__$internal_renderer_dom_DOMTextField.__regexFace) + "';"; - } - if(openfl__$internal_renderer_dom_DOMTextField.__regexColor.match(fontText)) { - style1 += "color:#" + openfl__$internal_renderer_dom_DOMTextField.__getAttributeMatch(openfl__$internal_renderer_dom_DOMTextField.__regexColor) + ";"; - } - if(openfl__$internal_renderer_dom_DOMTextField.__regexSize.match(fontText)) { - var sizeAttr = openfl__$internal_renderer_dom_DOMTextField.__getAttributeMatch(openfl__$internal_renderer_dom_DOMTextField.__regexSize); - var firstChar = HxOverrides.cca(sizeAttr,0); - var size; - adjustment = parseFloat(sizeAttr) * scale; - if(firstChar == 43 || firstChar == 45) { - size = scaledSize + adjustment; - } else { - size = adjustment; - } - style1 += "font-size:" + size + "px;"; - } - text = StringTools.replace(text,fontText,""); - matchText = openfl__$internal_renderer_dom_DOMTextField.__regexFont.matchedRight(); - } - text = text.replace(openfl__$internal_renderer_dom_DOMTextField.__regexCloseFont.r,""); - } - text = StringTools.replace(text,"

"); - textField.__div.innerHTML = tmp; - var _this_r1 = new RegExp("\n","g".split("u").join("")); - var tmp1 = textField.__div.innerHTML.replace(_this_r1,"
"); - textField.__div.innerHTML = tmp1; - var _this_r2 = new RegExp("\r","g".split("u").join("")); - var tmp2 = textField.__div.innerHTML.replace(_this_r2,"
"); - textField.__div.innerHTML = tmp2; - style.setProperty("font",openfl__$internal_text_TextEngine.getFont(textField.__textFormat),null); - textField.__textFormat.size = unscaledSize; - textField.__textFormat.leading = unscaledLeading; - style.setProperty("top","3px",null); - if(textEngine.border) { - style.setProperty("border","solid 1px #" + StringTools.hex(textEngine.borderColor & 16777215,6),null); - textField.__renderTransform.translate(-1,-1); - textField.__renderTransformChanged = true; - textField.__transformDirty = true; - } else if(style.border != "") { - style.removeProperty("border"); - textField.__renderTransformChanged = true; - } - style.setProperty("color","#" + StringTools.hex(textField.__textFormat.color & 16777215,6),null); - style.setProperty("width",w + "px",null); - style.setProperty("height",h + "px",null); - switch(textField.__textFormat.align) { - case 0: - style.setProperty("text-align","center",null); - break; - case 4: - style.setProperty("text-align","right",null); - break; - default: - style.setProperty("text-align","left",null); - } - textField.__dirty = false; - } else if(textField.__div != null) { - renderer.element.removeChild(textField.__div); - textField.__div = null; - } - } - if(textField.__div != null) { - var old = renderer.__roundPixels; - renderer.__roundPixels = true; - renderer.__updateClip(textField); - renderer.__applyStyle(textField,true,true,true); - renderer.__roundPixels = old; - } - } else { - openfl__$internal_renderer_dom_DOMTextField.clear(textField,renderer); - } -}; -openfl__$internal_renderer_dom_DOMTextField.__getAttributeMatch = function(regex) { - if(regex.matched(2) != null) { - return regex.matched(2); - } else { - return regex.matched(3); - } -}; -var openfl__$internal_symbols_SWFSymbol = function() { -}; -$hxClasses["openfl._internal.symbols.SWFSymbol"] = openfl__$internal_symbols_SWFSymbol; -openfl__$internal_symbols_SWFSymbol.__name__ = "openfl._internal.symbols.SWFSymbol"; -openfl__$internal_symbols_SWFSymbol.prototype = { - className: null - ,id: null - ,__createObject: function(swf) { - return null; - } - ,__class__: openfl__$internal_symbols_SWFSymbol -}; -var openfl__$internal_symbols_BitmapSymbol = function() { - openfl__$internal_symbols_SWFSymbol.call(this); -}; -$hxClasses["openfl._internal.symbols.BitmapSymbol"] = openfl__$internal_symbols_BitmapSymbol; -openfl__$internal_symbols_BitmapSymbol.__name__ = "openfl._internal.symbols.BitmapSymbol"; -openfl__$internal_symbols_BitmapSymbol.__super__ = openfl__$internal_symbols_SWFSymbol; -openfl__$internal_symbols_BitmapSymbol.prototype = $extend(openfl__$internal_symbols_SWFSymbol.prototype,{ - alpha: null - ,path: null - ,smooth: null - ,__createObject: function(swf) { - return new openfl_display_Bitmap(openfl_display_BitmapData.fromImage(swf.library.getImage(this.path)),1,this.smooth != false); - } - ,__class__: openfl__$internal_symbols_BitmapSymbol -}); -var openfl__$internal_symbols_ButtonSymbol = function() { - openfl__$internal_symbols_SWFSymbol.call(this); -}; -$hxClasses["openfl._internal.symbols.ButtonSymbol"] = openfl__$internal_symbols_ButtonSymbol; -openfl__$internal_symbols_ButtonSymbol.__name__ = "openfl._internal.symbols.ButtonSymbol"; -openfl__$internal_symbols_ButtonSymbol.__super__ = openfl__$internal_symbols_SWFSymbol; -openfl__$internal_symbols_ButtonSymbol.prototype = $extend(openfl__$internal_symbols_SWFSymbol.prototype,{ - downState: null - ,hitState: null - ,overState: null - ,upState: null - ,__createObject: function(swf) { - var simpleButton = null; - openfl_display_SimpleButton.__initSWF = swf; - openfl_display_SimpleButton.__initSymbol = this; - if(this.className != null) { - var name = this.className; - var symbolType = $hxClasses[name]; - if(symbolType != null) { - simpleButton = Type.createInstance(symbolType,[]); - } - } - if(simpleButton == null) { - simpleButton = new openfl_display_SimpleButton(); - } - return simpleButton; - } - ,__class__: openfl__$internal_symbols_ButtonSymbol -}); -var openfl__$internal_symbols_DynamicTextSymbol = function() { - openfl__$internal_symbols_SWFSymbol.call(this); -}; -$hxClasses["openfl._internal.symbols.DynamicTextSymbol"] = openfl__$internal_symbols_DynamicTextSymbol; -openfl__$internal_symbols_DynamicTextSymbol.__name__ = "openfl._internal.symbols.DynamicTextSymbol"; -openfl__$internal_symbols_DynamicTextSymbol.__super__ = openfl__$internal_symbols_SWFSymbol; -openfl__$internal_symbols_DynamicTextSymbol.prototype = $extend(openfl__$internal_symbols_SWFSymbol.prototype,{ - align: null - ,border: null - ,color: null - ,fontHeight: null - ,fontID: null - ,fontName: null - ,height: null - ,html: null - ,indent: null - ,input: null - ,leading: null - ,leftMargin: null - ,multiline: null - ,password: null - ,rightMargin: null - ,selectable: null - ,text: null - ,width: null - ,wordWrap: null - ,x: null - ,y: null - ,__createObject: function(swf) { - var textField = new openfl_text_TextField(); - textField.__fromSymbol(swf,this); - return textField; - } - ,__class__: openfl__$internal_symbols_DynamicTextSymbol -}); -var openfl__$internal_symbols_FontSymbol = function() { - openfl__$internal_symbols_SWFSymbol.call(this); -}; -$hxClasses["openfl._internal.symbols.FontSymbol"] = openfl__$internal_symbols_FontSymbol; -openfl__$internal_symbols_FontSymbol.__name__ = "openfl._internal.symbols.FontSymbol"; -openfl__$internal_symbols_FontSymbol.__super__ = openfl__$internal_symbols_SWFSymbol; -openfl__$internal_symbols_FontSymbol.prototype = $extend(openfl__$internal_symbols_SWFSymbol.prototype,{ - advances: null - ,ascent: null - ,bold: null - ,codes: null - ,descent: null - ,glyphs: null - ,italic: null - ,leading: null - ,name: null - ,__class__: openfl__$internal_symbols_FontSymbol -}); -var openfl__$internal_symbols_ShapeSymbol = function() { - openfl__$internal_symbols_SWFSymbol.call(this); -}; -$hxClasses["openfl._internal.symbols.ShapeSymbol"] = openfl__$internal_symbols_ShapeSymbol; -openfl__$internal_symbols_ShapeSymbol.__name__ = "openfl._internal.symbols.ShapeSymbol"; -openfl__$internal_symbols_ShapeSymbol.__super__ = openfl__$internal_symbols_SWFSymbol; -openfl__$internal_symbols_ShapeSymbol.prototype = $extend(openfl__$internal_symbols_SWFSymbol.prototype,{ - commands: null - ,rendered: null - ,__createObject: function(swf) { - var shape = new openfl_display_Shape(); - var graphics = shape.get_graphics(); - if(this.rendered != null) { - graphics.copyFrom(this.rendered.get_graphics()); - return shape; - } - var _g = 0; - var _g1 = this.commands; - while(_g < _g1.length) { - var command = _g1[_g]; - ++_g; - switch(command._hx_index) { - case 0: - var smooth = command.smooth; - var repeat = command.repeat; - var matrix = command.matrix; - var bitmapID = command.bitmap; - var bitmapSymbol = swf.symbols.h[bitmapID]; - var bitmap = swf.library.getImage(bitmapSymbol.path); - if(bitmap != null) { - graphics.beginBitmapFill(openfl_display_BitmapData.fromImage(bitmap),matrix,repeat,smooth); - } - break; - case 1: - var alpha = command.alpha; - var color = command.color; - graphics.beginFill(color,alpha); - break; - case 2: - var focalPointRatio = command.focalPointRatio; - var interpolationMethod = command.interpolationMethod; - var spreadMethod = command.spreadMethod; - var matrix1 = command.matrix; - var ratios = command.ratios; - var alphas = command.alphas; - var colors = command.colors; - var fillType = command.fillType; - graphics.beginGradientFill(fillType,colors,alphas,ratios,matrix1,spreadMethod,interpolationMethod,focalPointRatio); - break; - case 3: - var anchorY = command.anchorY; - var anchorX = command.anchorX; - var controlY = command.controlY; - var controlX = command.controlX; - graphics.curveTo(controlX,controlY,anchorX,anchorY); - break; - case 4: - graphics.endFill(); - break; - case 5: - var miterLimit = command.miterLimit; - var joints = command.joints; - var caps = command.caps; - var scaleMode = command.scaleMode; - var pixelHinting = command.pixelHinting; - var alpha1 = command.alpha; - var color1 = command.color; - var thickness = command.thickness; - if(thickness != null) { - graphics.lineStyle(thickness,color1,alpha1,pixelHinting,scaleMode,caps,joints,miterLimit); - } else { - graphics.lineStyle(); - } - break; - case 6: - var y = command.y; - var x = command.x; - graphics.lineTo(x,y); - break; - case 7: - var y1 = command.y; - var x1 = command.x; - graphics.moveTo(x1,y1); - break; - } - } - this.commands = null; - this.rendered = new openfl_display_Shape(); - this.rendered.get_graphics().copyFrom(shape.get_graphics()); - return shape; - } - ,__class__: openfl__$internal_symbols_ShapeSymbol -}); -var openfl__$internal_symbols_SpriteSymbol = function() { - openfl__$internal_symbols_SWFSymbol.call(this); - this.frames = []; -}; -$hxClasses["openfl._internal.symbols.SpriteSymbol"] = openfl__$internal_symbols_SpriteSymbol; -openfl__$internal_symbols_SpriteSymbol.__name__ = "openfl._internal.symbols.SpriteSymbol"; -openfl__$internal_symbols_SpriteSymbol.__super__ = openfl__$internal_symbols_SWFSymbol; -openfl__$internal_symbols_SpriteSymbol.prototype = $extend(openfl__$internal_symbols_SWFSymbol.prototype,{ - baseClassName: null - ,frames: null - ,scale9Grid: null - ,__createObject: function(swf) { - openfl_display_MovieClip.__initSWF = swf; - openfl_display_MovieClip.__initSymbol = this; - var symbolType = null; - if(this.className != null) { - var name = this.className; - symbolType = $hxClasses[name]; - var tmp = symbolType == null; - } - if(symbolType == null && this.baseClassName != null) { - var name1 = this.baseClassName; - symbolType = $hxClasses[name1]; - var tmp1 = symbolType == null; - } - var movieClip = null; - if(symbolType != null) { - movieClip = Type.createInstance(symbolType,[]); - } else { - movieClip = new openfl_display_MovieClip(); - } - movieClip.set_scale9Grid(this.scale9Grid); - return movieClip; - } - ,__class__: openfl__$internal_symbols_SpriteSymbol -}); -var openfl__$internal_symbols_StaticTextSymbol = function() { - openfl__$internal_symbols_SWFSymbol.call(this); -}; -$hxClasses["openfl._internal.symbols.StaticTextSymbol"] = openfl__$internal_symbols_StaticTextSymbol; -openfl__$internal_symbols_StaticTextSymbol.__name__ = "openfl._internal.symbols.StaticTextSymbol"; -openfl__$internal_symbols_StaticTextSymbol.__super__ = openfl__$internal_symbols_SWFSymbol; -openfl__$internal_symbols_StaticTextSymbol.prototype = $extend(openfl__$internal_symbols_SWFSymbol.prototype,{ - matrix: null - ,records: null - ,rendered: null - ,__createObject: function(swf) { - var staticText = new openfl_text_StaticText(); - var graphics = staticText.__graphics; - if(this.rendered != null) { - staticText.text = this.rendered.text; - graphics.copyFrom(this.rendered.__graphics); - return staticText; - } - var text = ""; - if(this.records != null) { - var font = null; - var color = 16777215; - var offsetX = this.matrix.tx; - var offsetY = this.matrix.ty; - var scale; - var index; - var _g = 0; - var _g1 = this.records; - while(_g < _g1.length) { - var record = _g1[_g]; - ++_g; - if(record.fontID != null) { - font = swf.symbols.h[record.fontID]; - } - if(record.offsetX != null) { - offsetX = this.matrix.tx + record.offsetX * 0.05; - } - if(record.offsetY != null) { - offsetY = this.matrix.ty + record.offsetY * 0.05; - } - if(record.color != null) { - color = record.color; - } - if(font != null) { - scale = record.fontHeight / 1024 * 0.05; - var _g2 = 0; - var _g11 = record.glyphs.length; - while(_g2 < _g11) { - var i = _g2++; - index = record.glyphs[i]; - var code = font.codes[index]; - text += String.fromCodePoint(code); - var _g3 = 0; - var _g12 = font.glyphs[index]; - while(_g3 < _g12.length) { - var command = _g12[_g3]; - ++_g3; - switch(command._hx_index) { - case 1: - var _g21 = command.color; - var alpha = command.alpha; - graphics.beginFill(color & 16777215,(color >> 24 & 255) / 255); - break; - case 3: - var anchorY = command.anchorY; - var anchorX = command.anchorX; - var controlY = command.controlY; - var controlX = command.controlX; - graphics.curveTo(controlX * scale + offsetX,controlY * scale + offsetY,anchorX * scale + offsetX,anchorY * scale + offsetY); - break; - case 4: - graphics.endFill(); - break; - case 5: - var miterLimit = command.miterLimit; - var joints = command.joints; - var caps = command.caps; - var scaleMode = command.scaleMode; - var pixelHinting = command.pixelHinting; - var alpha1 = command.alpha; - var color1 = command.color; - var thickness = command.thickness; - if(thickness != null) { - graphics.lineStyle(thickness,color1,alpha1,pixelHinting,scaleMode,caps,joints,miterLimit); - } else { - graphics.lineStyle(); - } - break; - case 6: - var y = command.y; - var x = command.x; - graphics.lineTo(x * scale + offsetX,y * scale + offsetY); - break; - case 7: - var y1 = command.y; - var x1 = command.x; - graphics.moveTo(x1 * scale + offsetX,y1 * scale + offsetY); - break; - default: - } - } - offsetX += record.advances[i] * 0.05; - } - } - } - } - staticText.text = text; - this.records = null; - this.rendered = new openfl_text_StaticText(); - this.rendered.text = text; - this.rendered.__graphics.copyFrom(staticText.__graphics); - return staticText; - } - ,__class__: openfl__$internal_symbols_StaticTextSymbol -}); -var openfl__$internal_symbols_StaticTextRecord = function() { -}; -$hxClasses["openfl._internal.symbols.StaticTextRecord"] = openfl__$internal_symbols_StaticTextRecord; -openfl__$internal_symbols_StaticTextRecord.__name__ = "openfl._internal.symbols.StaticTextRecord"; -openfl__$internal_symbols_StaticTextRecord.prototype = { - advances: null - ,color: null - ,fontHeight: null - ,fontID: null - ,glyphs: null - ,offsetX: null - ,offsetY: null - ,__class__: openfl__$internal_symbols_StaticTextRecord -}; -var openfl__$internal_symbols_timeline_Frame = function() { -}; -$hxClasses["openfl._internal.symbols.timeline.Frame"] = openfl__$internal_symbols_timeline_Frame; -openfl__$internal_symbols_timeline_Frame.__name__ = "openfl._internal.symbols.timeline.Frame"; -openfl__$internal_symbols_timeline_Frame.prototype = { - label: null - ,objects: null - ,script: null - ,scriptSource: null - ,__class__: openfl__$internal_symbols_timeline_Frame -}; -var openfl__$internal_symbols_timeline_FrameObject = function() { -}; -$hxClasses["openfl._internal.symbols.timeline.FrameObject"] = openfl__$internal_symbols_timeline_FrameObject; -openfl__$internal_symbols_timeline_FrameObject.__name__ = "openfl._internal.symbols.timeline.FrameObject"; -openfl__$internal_symbols_timeline_FrameObject.prototype = { - blendMode: null - ,cacheAsBitmap: null - ,clipDepth: null - ,colorTransform: null - ,depth: null - ,filters: null - ,id: null - ,matrix: null - ,name: null - ,symbol: null - ,type: null - ,visible: null - ,__class__: openfl__$internal_symbols_timeline_FrameObject -}; -var openfl__$internal_symbols_timeline_FrameObjectType = $hxEnums["openfl._internal.symbols.timeline.FrameObjectType"] = { __ename__ : "openfl._internal.symbols.timeline.FrameObjectType", __constructs__ : ["CREATE","UPDATE","DESTROY"] - ,CREATE: {_hx_index:0,__enum__:"openfl._internal.symbols.timeline.FrameObjectType",toString:$estr} - ,UPDATE: {_hx_index:1,__enum__:"openfl._internal.symbols.timeline.FrameObjectType",toString:$estr} - ,DESTROY: {_hx_index:2,__enum__:"openfl._internal.symbols.timeline.FrameObjectType",toString:$estr} -}; -var openfl__$internal_text_GlyphPosition = function(glyph,advance,offset) { - this.glyph = glyph; - this.advance = advance; - if(offset != null) { - this.offset = offset; - } else { - this.offset = new lime_math_Vector2(); - } -}; -$hxClasses["openfl._internal.text.GlyphPosition"] = openfl__$internal_text_GlyphPosition; -openfl__$internal_text_GlyphPosition.__name__ = "openfl._internal.text.GlyphPosition"; -openfl__$internal_text_GlyphPosition.prototype = { - advance: null - ,glyph: null - ,offset: null - ,__class__: openfl__$internal_text_GlyphPosition -}; -var openfl__$internal_text_TextEngine = function(textField) { - this.textField = textField; - this.width = 100; - this.height = 100; - this.set_text(""); - this.bounds = new openfl_geom_Rectangle(0,0,0,0); - this.textBounds = new openfl_geom_Rectangle(0,0,0,0); - this.type = 0; - this.autoSize = 2; - this.embedFonts = false; - this.selectable = true; - this.borderColor = 0; - this.border = false; - this.backgroundColor = 16777215; - this.background = false; - this.gridFitType = 1; - this.maxChars = 0; - this.multiline = false; - this.numLines = 1; - this.sharpness = 0; - this.scrollH = 0; - this.set_scrollV(1); - this.wordWrap = false; - this.lineAscents = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - this.lineBreaks = openfl__$Vector_Vector_$Impl_$.toIntVector(null); - this.lineDescents = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - this.lineLeadings = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - this.lineHeights = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - this.lineWidths = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - this.layoutGroups = openfl__$Vector_Vector_$Impl_$.toObjectVector(null); - this.textFormatRanges = openfl__$Vector_Vector_$Impl_$.toObjectVector(null); - if(openfl__$internal_text_TextEngine.__context == null) { - openfl__$internal_text_TextEngine.__context = window.document.createElement("canvas").getContext("2d"); - } -}; -$hxClasses["openfl._internal.text.TextEngine"] = openfl__$internal_text_TextEngine; -openfl__$internal_text_TextEngine.__name__ = "openfl._internal.text.TextEngine"; -openfl__$internal_text_TextEngine.__context = null; -openfl__$internal_text_TextEngine.findFont = function(name) { - var _this = openfl_text_Font.__fontByName; - if(__map_reserved[name] != null) { - return _this.getReserved(name); - } else { - return _this.h[name]; - } -}; -openfl__$internal_text_TextEngine.findFontVariant = function(format) { - var fontName = format.font; - var bold = format.bold; - var italic = format.italic; - if(fontName == null) { - fontName = "_serif"; - } - var fontNamePrefix = StringTools.replace(StringTools.replace(fontName," Normal","")," Regular",""); - var tmp; - if(bold && italic) { - var _this = openfl_text_Font.__fontByName; - var key = fontNamePrefix + " Bold Italic"; - tmp = __map_reserved[key] != null ? _this.existsReserved(key) : _this.h.hasOwnProperty(key); - } else { - tmp = false; - } - if(tmp) { - return openfl__$internal_text_TextEngine.findFont(fontNamePrefix + " Bold Italic"); - } else { - var tmp1; - if(bold) { - var _this1 = openfl_text_Font.__fontByName; - var key1 = fontNamePrefix + " Bold"; - tmp1 = __map_reserved[key1] != null ? _this1.existsReserved(key1) : _this1.h.hasOwnProperty(key1); - } else { - tmp1 = false; - } - if(tmp1) { - return openfl__$internal_text_TextEngine.findFont(fontNamePrefix + " Bold"); - } else { - var tmp2; - if(italic) { - var _this2 = openfl_text_Font.__fontByName; - var key2 = fontNamePrefix + " Italic"; - tmp2 = __map_reserved[key2] != null ? _this2.existsReserved(key2) : _this2.h.hasOwnProperty(key2); - } else { - tmp2 = false; - } - if(tmp2) { - return openfl__$internal_text_TextEngine.findFont(fontNamePrefix + " Italic"); - } - } - } - return openfl__$internal_text_TextEngine.findFont(fontName); -}; -openfl__$internal_text_TextEngine.getFormatHeight = function(format) { - var ascent; - var descent; - openfl__$internal_text_TextEngine.__context.font = openfl__$internal_text_TextEngine.getFont(format); - var font = openfl__$internal_text_TextEngine.getFontInstance(format); - if(format.__ascent != null) { - ascent = format.size * format.__ascent; - descent = format.size * format.__descent; - } else if(font != null && font.unitsPerEM != 0) { - ascent = font.ascender / font.unitsPerEM * format.size; - descent = Math.abs(font.descender / font.unitsPerEM * format.size); - } else { - ascent = format.size; - descent = format.size * 0.185; - } - var leading = format.leading; - return ascent + descent + leading; -}; -openfl__$internal_text_TextEngine.getFont = function(format) { - var fontName = format.font; - var bold = format.bold; - var italic = format.italic; - if(fontName == null) { - fontName = "_serif"; - } - var fontNamePrefix = StringTools.replace(StringTools.replace(fontName," Normal","")," Regular",""); - var tmp; - if(bold && italic) { - var _this = openfl_text_Font.__fontByName; - var key = fontNamePrefix + " Bold Italic"; - tmp = __map_reserved[key] != null ? _this.existsReserved(key) : _this.h.hasOwnProperty(key); - } else { - tmp = false; - } - if(tmp) { - fontName = fontNamePrefix + " Bold Italic"; - bold = false; - italic = false; - } else { - var tmp1; - if(bold) { - var _this1 = openfl_text_Font.__fontByName; - var key1 = fontNamePrefix + " Bold"; - tmp1 = __map_reserved[key1] != null ? _this1.existsReserved(key1) : _this1.h.hasOwnProperty(key1); - } else { - tmp1 = false; - } - if(tmp1) { - fontName = fontNamePrefix + " Bold"; - bold = false; - } else { - var tmp2; - if(italic) { - var _this2 = openfl_text_Font.__fontByName; - var key2 = fontNamePrefix + " Italic"; - tmp2 = __map_reserved[key2] != null ? _this2.existsReserved(key2) : _this2.h.hasOwnProperty(key2); - } else { - tmp2 = false; - } - if(tmp2) { - fontName = fontNamePrefix + " Italic"; - italic = false; - } else { - if(bold && (fontName.indexOf(" Bold ") > -1 || StringTools.endsWith(fontName," Bold"))) { - bold = false; - } - if(italic && (fontName.indexOf(" Italic ") > -1 || StringTools.endsWith(fontName," Italic"))) { - italic = false; - } - } - } - } - var font = italic ? "italic " : "normal "; - font += "normal "; - font += bold ? "bold " : "normal "; - font += format.size + "px"; - font += "/" + (format.leading + format.size + 3) + "px "; - var font1; - switch(fontName) { - case "_sans": - font1 = "sans-serif"; - break; - case "_serif": - font1 = "serif"; - break; - case "_typewriter": - font1 = "monospace"; - break; - default: - var _this_r = new RegExp("^[\\s'\"]+(.*)[\\s'\"]+$","".split("u").join("")); - font1 = "'" + fontName.replace(_this_r,"$1") + "'"; - } - font += "" + font1; - return font; -}; -openfl__$internal_text_TextEngine.getFontInstance = function(format) { - return openfl__$internal_text_TextEngine.findFontVariant(format); -}; -openfl__$internal_text_TextEngine.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(restrict) { - var declinedRange = new EReg("\\^(.-.|.)","gu"); - var declined = ""; - var accepted = declinedRange.map(restrict,function(ereg) { - declined += ereg.matched(1); - return ""; - }); - var testRegexpParts = []; - if(accepted.length > 0) { - testRegexpParts.push("[^" + restrict + "]"); - } - if(declined.length > 0) { - testRegexpParts.push("[" + declined + "]"); - } - return new EReg("(" + testRegexpParts.join("|") + ")","g"); - } - ,getBounds: function() { - var padding = this.border ? 1 : 0; - this.bounds.width = this.width + padding; - this.bounds.height = this.height + padding; - var x = this.width; - var y = this.width; - var group = this.layoutGroups.iterator(); - while(group.hasNext()) { - var group1 = group.next(); - if(group1.offsetX < x) { - x = group1.offsetX; - } - if(group1.offsetY < y) { - y = group1.offsetY; - } - } - if(x >= this.width) { - x = 2; - } - if(y >= this.height) { - y = 2; - } - var textHeight = this.textHeight * 1.185; - this.textBounds.setTo(Math.max(x - 2,0),Math.max(y - 2,0),Math.min(this.textWidth + 4,this.bounds.width + 4),Math.min(textHeight + 4,this.bounds.height + 4)); - } - ,getLine: function(index) { - if(index < 0 || index > this.lineBreaks.get_length() + 1) { - return null; - } - if(this.lineBreaks.get_length() == 0) { - return this.text; - } else { - return this.text.substring(index > 0 ? this.lineBreaks.get(index - 1) : 0,this.lineBreaks.get(index)); - } - } - ,getLineBreakIndex: function(startIndex) { - if(startIndex == null) { - startIndex = 0; - } - var cr = this.text.indexOf("\n",startIndex); - var lf = this.text.indexOf("\r",startIndex); - if(cr == -1) { - return lf; - } - if(lf == -1) { - return cr; - } - if(cr < lf) { - return cr; - } else { - return lf; - } - } - ,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 currentLineAscent = 0.0; - var currentLineDescent = 0.0; - var currentLineLeading = null; - var currentLineHeight = 0.0; - var currentLineWidth = 0.0; - var currentTextHeight = 0.0; - this.textWidth = 0; - this.textHeight = 0; - this.numLines = 1; - this.maxScrollH = 0; - var group = this.layoutGroups.iterator(); - while(group.hasNext()) { - var group1 = group.next(); - while(group1.lineIndex > this.numLines - 1) { - this.lineAscents.push(currentLineAscent); - this.lineDescents.push(currentLineDescent); - this.lineLeadings.push(currentLineLeading != null ? currentLineLeading : 0); - this.lineHeights.push(currentLineHeight); - this.lineWidths.push(currentLineWidth); - currentLineAscent = 0; - currentLineDescent = 0; - currentLineLeading = null; - currentLineHeight = 0; - currentLineWidth = 0; - this.numLines++; - } - currentLineAscent = Math.max(currentLineAscent,group1.ascent); - currentLineDescent = Math.max(currentLineDescent,group1.descent); - if(currentLineLeading == null) { - currentLineLeading = group1.leading; - } else { - currentLineLeading = Math.max(currentLineLeading,group1.leading) | 0; - } - currentLineHeight = Math.max(currentLineHeight,group1.height); - currentLineWidth = group1.offsetX - 2 + group1.width; - if(currentLineWidth > this.textWidth) { - this.textWidth = currentLineWidth; - } - currentTextHeight = group1.offsetY - 2 + group1.ascent + group1.descent; - if(currentTextHeight > this.textHeight) { - this.textHeight = currentTextHeight; - } - } - if(this.textHeight == 0 && this.textField != null && this.textField.get_type() == 1) { - var currentFormat = this.textField.__textFormat; - var ascent; - var descent; - var font = openfl__$internal_text_TextEngine.getFontInstance(currentFormat); - if(currentFormat.__ascent != null) { - ascent = currentFormat.size * currentFormat.__ascent; - descent = currentFormat.size * currentFormat.__descent; - } else if(font != null && font.unitsPerEM != 0) { - ascent = font.ascender / font.unitsPerEM * currentFormat.size; - descent = Math.abs(font.descender / font.unitsPerEM * currentFormat.size); - } else { - ascent = currentFormat.size; - descent = currentFormat.size * 0.185; - } - var leading = currentFormat.leading; - var heightValue = ascent + descent + leading; - currentLineAscent = ascent; - currentLineDescent = descent; - currentLineLeading = leading; - currentTextHeight = ascent + descent; - this.textHeight = currentTextHeight; - } - this.lineAscents.push(currentLineAscent); - this.lineDescents.push(currentLineDescent); - this.lineLeadings.push(currentLineLeading != null ? currentLineLeading : 0); - this.lineHeights.push(currentLineHeight); - this.lineWidths.push(currentLineWidth); - if(this.numLines == 1) { - if(currentLineLeading > 0) { - this.textHeight += currentLineLeading; - } - } - if(this.layoutGroups.get_length() > 0) { - var group2 = this.layoutGroups.get(this.layoutGroups.get_length() - 1); - if(group2 != null && group2.startIndex == group2.endIndex) { - this.textHeight -= currentLineHeight; - } - } - if(this.autoSize != 2) { - switch(this.autoSize) { - case 0:case 1:case 3: - if(!this.wordWrap) { - this.width = this.textWidth + 4; - } - this.height = this.textHeight + 4; - this.bottomScrollV = this.numLines; - break; - default: - } - } - if(this.textWidth > this.width - 4) { - this.maxScrollH = this.textWidth - this.width + 4 | 0; - } else { - this.maxScrollH = 0; - } - if(this.scrollH > this.maxScrollH) { - this.scrollH = this.maxScrollH; - } - } - ,getLayoutGroups: function() { - var _gthis = this; - this.layoutGroups.set_length(0); - if(this.text == null || this.text == "") { - return; - } - var rangeIndex = -1; - var formatRange = null; - var font = null; - var currentFormat = openfl_text_TextField.__defaultTextFormat.clone(); - var leading = 0; - var ascent = 0.0; - var maxAscent = 0.0; - var descent = 0.0; - var align = 3; - var blockIndent = 0; - var bullet = false; - var indent = 0; - var leftMargin = 0; - var rightMargin = 0; - var tabStops = null; - var layoutGroup = null; - var positions = null; - var widthValue = 0.0; - var heightValue = 0; - var maxHeightValue = 0; - var previousSpaceIndex = -2; - var previousBreakIndex = -1; - var spaceIndex = this.text.indexOf(" "); - var breakIndex = this.getLineBreakIndex(); - var offsetX = 2.0; - var offsetY = 2.0; - var textIndex = 0; - var lineIndex = 0; - var getPositions = function(text,startIndex,endIndex) { - var positions1 = []; - var letterSpacing = 0.0; - if(formatRange.format.letterSpacing != null) { - letterSpacing = formatRange.format.letterSpacing; - } - if(_gthis.__useIntAdvances == null) { - var getPositions1 = new EReg("Trident/7.0",""); - _gthis.__useIntAdvances = getPositions1.match(window.navigator.userAgent); - } - if(_gthis.__useIntAdvances) { - var previousWidth = 0.0; - var width; - var _g = startIndex; - var _g1 = endIndex; - while(_g < _g1) { - var i = _g++; - width = openfl__$internal_text_TextEngine.__context.measureText(text.substring(startIndex,i + 1)).width; - positions1.push(width - previousWidth); - previousWidth = width; - } - } else { - var _g2 = startIndex; - var _g11 = endIndex; - while(_g2 < _g11) { - var i1 = _g2++; - var advance; - if(i1 < text.length - 1) { - var nextWidth = openfl__$internal_text_TextEngine.__context.measureText(text.charAt(i1 + 1)).width; - var twoWidths = openfl__$internal_text_TextEngine.__context.measureText(HxOverrides.substr(text,i1,2)).width; - advance = twoWidths - nextWidth; - } else { - advance = openfl__$internal_text_TextEngine.__context.measureText(text.charAt(i1)).width; - } - positions1.push(advance); - } - } - return positions1; - }; - var getPositionsWidth = function(positions2) { - var width1 = 0.0; - var _g3 = 0; - while(_g3 < positions2.length) { - var position = positions2[_g3]; - ++_g3; - width1 += position; - } - return width1; - }; - var getTextWidth = function(text1) { - return openfl__$internal_text_TextEngine.__context.measureText(text1).width; - }; - var nextLayoutGroup = function(startIndex1,endIndex1) { - if(layoutGroup == null || layoutGroup.startIndex != layoutGroup.endIndex) { - layoutGroup = new openfl__$internal_text_TextLayoutGroup(formatRange.format,startIndex1,endIndex1); - _gthis.layoutGroups.push(layoutGroup); - } else { - layoutGroup.format = formatRange.format; - layoutGroup.startIndex = startIndex1; - layoutGroup.endIndex = endIndex1; - } - }; - var setLineMetrics = function() { - if(currentFormat.__ascent != null) { - ascent = currentFormat.size * currentFormat.__ascent; - descent = currentFormat.size * currentFormat.__descent; - } else if(font != null && font.unitsPerEM != 0) { - ascent = font.ascender / font.unitsPerEM * currentFormat.size; - descent = Math.abs(font.descender / font.unitsPerEM * currentFormat.size); - } else { - ascent = currentFormat.size; - descent = currentFormat.size * 0.185; - } - leading = currentFormat.leading; - heightValue = Math.ceil(ascent + descent + leading); - if(heightValue > maxHeightValue) { - maxHeightValue = heightValue; - } - if(ascent > maxAscent) { - maxAscent = ascent; - } - }; - var setParagraphMetrics = function() { - if(currentFormat.align != null) { - align = currentFormat.align; - } - var setParagraphMetrics1 = currentFormat.blockIndent != null; - var setParagraphMetrics2 = currentFormat.bullet != null; - var setParagraphMetrics3 = currentFormat.indent != null; - if(currentFormat.leftMargin != null) { - leftMargin = currentFormat.leftMargin; - } - if(currentFormat.rightMargin != null) { - rightMargin = currentFormat.rightMargin; - } - var setParagraphMetrics4 = currentFormat.tabStops != null; - }; - var nextFormatRange = function() { - var nextFormatRange1 = _gthis.textFormatRanges.get_length() - 1; - if(rangeIndex < nextFormatRange1) { - rangeIndex += 1; - formatRange = _gthis.textFormatRanges.get(rangeIndex); - currentFormat.__merge(formatRange.format); - openfl__$internal_text_TextEngine.__context.font = openfl__$internal_text_TextEngine.getFont(currentFormat); - font = openfl__$internal_text_TextEngine.getFontInstance(currentFormat); - return true; - } - return false; - }; - var setFormattedPositions = function(startIndex2,endIndex2) { - if(endIndex2 <= formatRange.end) { - positions = getPositions(_gthis.text,startIndex2,endIndex2); - widthValue = getPositionsWidth(positions); - } else { - var tempIndex = startIndex2; - var tempRangeEnd = formatRange.end; - var countRanges = 0; - positions = []; - widthValue = 0; - while(true) { - if(tempIndex != tempRangeEnd) { - var tempPositions = getPositions(_gthis.text,tempIndex,tempRangeEnd); - positions = positions.concat(tempPositions); - } - if(tempRangeEnd != endIndex2) { - if(!nextFormatRange()) { - lime_utils_Log.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/_internal/text/TextEngine.hx", lineNumber : 1059, className : "openfl._internal.text.TextEngine", methodName : "getLayoutGroups"}); - break; - } - tempIndex = tempRangeEnd; - tempRangeEnd = endIndex2 < formatRange.end ? endIndex2 : formatRange.end; - ++countRanges; - } else { - widthValue = getPositionsWidth(positions); - break; - } - } - rangeIndex -= countRanges + 1; - nextFormatRange(); - } - }; - var placeFormattedText = function(endIndex3) { - if(endIndex3 <= formatRange.end) { - positions = getPositions(_gthis.text,textIndex,endIndex3); - widthValue = getPositionsWidth(positions); - nextLayoutGroup(textIndex,endIndex3); - layoutGroup.positions = positions; - layoutGroup.offsetX = offsetX; - layoutGroup.ascent = ascent; - layoutGroup.descent = descent; - layoutGroup.leading = leading; - layoutGroup.lineIndex = lineIndex; - layoutGroup.offsetY = offsetY; - layoutGroup.width = widthValue; - layoutGroup.height = heightValue; - offsetX += widthValue; - if(endIndex3 == formatRange.end) { - layoutGroup = null; - nextFormatRange(); - setLineMetrics(); - } - } else { - while(true) { - var tempRangeEnd1 = endIndex3 < formatRange.end ? endIndex3 : formatRange.end; - if(textIndex != tempRangeEnd1) { - positions = getPositions(_gthis.text,textIndex,tempRangeEnd1); - widthValue = getPositionsWidth(positions); - nextLayoutGroup(textIndex,tempRangeEnd1); - layoutGroup.positions = positions; - layoutGroup.offsetX = offsetX; - layoutGroup.ascent = ascent; - layoutGroup.descent = descent; - layoutGroup.leading = leading; - layoutGroup.lineIndex = lineIndex; - layoutGroup.offsetY = offsetY; - layoutGroup.width = widthValue; - layoutGroup.height = heightValue; - offsetX += widthValue; - textIndex = tempRangeEnd1; - } - if(tempRangeEnd1 == formatRange.end) { - layoutGroup = null; - } - if(tempRangeEnd1 == endIndex3) { - break; - } - if(!nextFormatRange()) { - lime_utils_Log.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/_internal/text/TextEngine.hx", lineNumber : 1147, className : "openfl._internal.text.TextEngine", methodName : "getLayoutGroups"}); - break; - } - setLineMetrics(); - } - } - textIndex = endIndex3; - }; - var alignBaseline = function() { - setLineMetrics(); - var i2 = _gthis.layoutGroups.get_length(); - while(--i2 > -1) { - var lg = _gthis.layoutGroups.get(i2); - if(lg.lineIndex < lineIndex) { - break; - } - if(lg.lineIndex > lineIndex) { - continue; - } - lg.ascent = maxAscent; - lg.height = maxHeightValue; - } - offsetY += maxHeightValue; - maxAscent = 0.0; - maxHeightValue = 0; - lineIndex += 1; - offsetX = 2; - }; - var breakLongWords = function(endIndex4) { - var remainingPositions = positions; - var i3; - var bufferCount; - var placeIndex; - var positionWidth; - var currentPosition; - var tempWidth = getPositionsWidth(remainingPositions); - while(offsetX + tempWidth > _gthis.width - 2) { - bufferCount = 0; - i3 = bufferCount; - positionWidth = 0.0; - while(offsetX + positionWidth < _gthis.width - 2) { - currentPosition = remainingPositions[i3]; - if(currentPosition == 0.0) { - ++i3; - ++bufferCount; - } else { - positionWidth += currentPosition; - ++i3; - } - } - if(positionWidth == 0.0) { - break; - } else if(i3 < 2 && positionWidth + offsetX > _gthis.width - 2) { - if(textIndex + i3 - bufferCount == endIndex4) { - break; - } - } else { - while(offsetX + positionWidth > _gthis.width - 2) { - --i3; - if(i3 - bufferCount > 0) { - setFormattedPositions(textIndex,textIndex + i3 - bufferCount); - positionWidth = widthValue; - } else { - i3 = 1; - bufferCount = 0; - setFormattedPositions(textIndex,textIndex + 1); - positionWidth = 0; - } - } - } - placeIndex = textIndex + i3 - bufferCount; - placeFormattedText(placeIndex); - alignBaseline(); - setFormattedPositions(placeIndex,endIndex4); - remainingPositions = positions; - tempWidth = widthValue; - } - }; - var placeText = function(endIndex5) { - if(_gthis.width >= 4 && _gthis.wordWrap) { - breakLongWords(endIndex5); - } - placeFormattedText(endIndex5); - }; - nextFormatRange(); - setParagraphMetrics(); - setLineMetrics(); - var wrap; - var maxLoops = this.text.length + 1; - while(textIndex < maxLoops) if(breakIndex > -1 && (spaceIndex == -1 || breakIndex < spaceIndex)) { - if(textIndex <= breakIndex) { - setFormattedPositions(textIndex,breakIndex); - placeText(breakIndex); - layoutGroup = null; - } else if(layoutGroup != null && layoutGroup.startIndex != layoutGroup.endIndex) { - if(layoutGroup.endIndex == spaceIndex) { - layoutGroup.width -= layoutGroup.positions[layoutGroup.positions.length - 1]; - } - layoutGroup = null; - } - if(formatRange.end == breakIndex) { - nextFormatRange(); - setLineMetrics(); - } - alignBaseline(); - textIndex = breakIndex + 1; - previousBreakIndex = breakIndex; - breakIndex = this.getLineBreakIndex(textIndex); - setParagraphMetrics(); - } else if(spaceIndex > -1) { - if(layoutGroup != null && layoutGroup.startIndex != layoutGroup.endIndex) { - layoutGroup = null; - } - wrap = false; - while(textIndex < this.text.length) { - var endIndex6 = -1; - if(spaceIndex == -1) { - endIndex6 = breakIndex; - } else { - endIndex6 = spaceIndex + 1; - if(breakIndex > -1 && breakIndex < endIndex6) { - endIndex6 = breakIndex; - } - } - if(endIndex6 == -1) { - endIndex6 = this.text.length; - } - setFormattedPositions(textIndex,endIndex6); - if(align == 2) { - if(positions.length > 0 && textIndex == previousSpaceIndex) { - textIndex += 1; - var spaceWidth = positions.shift(); - widthValue -= spaceWidth; - offsetX += spaceWidth; - } - if(positions.length > 0 && endIndex6 == spaceIndex + 1) { - --endIndex6; - var spaceWidth1 = positions.pop(); - widthValue -= spaceWidth1; - } - } - if(this.wordWrap) { - if(offsetX + widthValue > this.width - 2) { - wrap = true; - if(positions.length > 0 && endIndex6 == spaceIndex + 1) { - var lastPosition = positions[positions.length - 1]; - var spaceWidth2 = lastPosition; - if(offsetX + widthValue - spaceWidth2 <= this.width - 2) { - wrap = false; - } - } - } - } - if(wrap) { - if(align != 2 && (layoutGroup != null || this.layoutGroups.get_length() > 0)) { - var previous = layoutGroup; - if(previous == null) { - previous = this.layoutGroups.get(this.layoutGroups.get_length() - 1); - } - previous.width -= previous.positions[previous.positions.length - 1]; - previous.endIndex--; - } - var i4 = this.layoutGroups.get_length() - 1; - var offsetCount = 0; - while(true) { - layoutGroup = this.layoutGroups.get(i4); - if(i4 > 0 && layoutGroup.startIndex > previousSpaceIndex) { - ++offsetCount; - } else { - break; - } - --i4; - } - if(textIndex == previousSpaceIndex + 1) { - alignBaseline(); - } - offsetX = 2; - if(offsetCount > 0) { - var bumpX = this.layoutGroups.get(this.layoutGroups.get_length() - offsetCount).offsetX; - var _g4 = this.layoutGroups.get_length() - offsetCount; - var _g12 = this.layoutGroups.get_length(); - while(_g4 < _g12) { - var i5 = _g4++; - layoutGroup = this.layoutGroups.get(i5); - layoutGroup.offsetX -= bumpX; - layoutGroup.offsetY = offsetY; - layoutGroup.lineIndex = lineIndex; - offsetX += layoutGroup.width; - } - } - placeText(endIndex6); - wrap = false; - } else if(layoutGroup != null && textIndex == spaceIndex) { - if(align != 2) { - layoutGroup.endIndex = spaceIndex; - layoutGroup.positions = layoutGroup.positions.concat(positions); - layoutGroup.width += widthValue; - } - offsetX += widthValue; - textIndex = endIndex6; - } else if(layoutGroup == null || align == 2) { - placeText(endIndex6); - } else { - var tempRangeEnd2 = endIndex6 < formatRange.end ? endIndex6 : formatRange.end; - if(tempRangeEnd2 < endIndex6) { - positions = getPositions(this.text,textIndex,tempRangeEnd2); - widthValue = getPositionsWidth(positions); - } - layoutGroup.endIndex = tempRangeEnd2; - layoutGroup.positions = layoutGroup.positions.concat(positions); - layoutGroup.width += widthValue; - offsetX += widthValue; - if(tempRangeEnd2 == formatRange.end) { - layoutGroup = null; - nextFormatRange(); - setLineMetrics(); - textIndex = tempRangeEnd2; - if(tempRangeEnd2 != endIndex6) { - placeFormattedText(endIndex6); - } - } - if(breakIndex == endIndex6) { - ++endIndex6; - } - textIndex = endIndex6; - } - var nextSpaceIndex = this.text.indexOf(" ",textIndex); - if(breakIndex == previousSpaceIndex) { - layoutGroup.endIndex = breakIndex; - if(breakIndex - layoutGroup.startIndex - layoutGroup.positions.length < 0) { - layoutGroup.positions.push(0.0); - } - textIndex = breakIndex + 1; - } - previousSpaceIndex = spaceIndex; - spaceIndex = nextSpaceIndex; - if(breakIndex > -1 && breakIndex <= textIndex && (spaceIndex > breakIndex || spaceIndex == -1) || textIndex > this.text.length) { - break; - } - } - } else { - if(textIndex < this.text.length) { - setFormattedPositions(textIndex,this.text.length); - placeText(this.text.length); - alignBaseline(); - } - textIndex += 1; - } - if(previousBreakIndex == textIndex - 2 && previousBreakIndex > -1) { - nextLayoutGroup(textIndex,textIndex); - layoutGroup.positions = []; - layoutGroup.ascent = ascent; - layoutGroup.descent = descent; - layoutGroup.leading = leading; - layoutGroup.lineIndex = lineIndex; - layoutGroup.offsetX = 2; - layoutGroup.offsetY = offsetY; - layoutGroup.width = 0; - layoutGroup.height = heightValue; - } - } - ,restrictText: function(value) { - if(value == null) { - return value; - } - if(this.__restrictRegexp != null) { - value = this.__restrictRegexp.split(value).join(""); - } - return value; - } - ,setTextAlignment: function() { - var lineIndex = -1; - var offsetX = 0.0; - var totalWidth = this.width - 4; - var group; - var lineLength; - var lineMeasurementsDirty = false; - var _g = 0; - var _g1 = this.layoutGroups.get_length(); - while(_g < _g1) { - var i = _g++; - group = this.layoutGroups.get(i); - if(group.lineIndex != lineIndex) { - lineIndex = group.lineIndex; - totalWidth = this.width - 4 - group.format.rightMargin; - switch(group.format.align) { - case 0: - if(this.lineWidths.get(lineIndex) < totalWidth) { - offsetX = Math.round((totalWidth - this.lineWidths.get(lineIndex)) / 2); - } else { - offsetX = 0; - } - break; - case 2: - if(this.lineWidths.get(lineIndex) < totalWidth) { - lineLength = 1; - var _g2 = i + 1; - var _g11 = this.layoutGroups.get_length(); - while(_g2 < _g11) { - var j = _g2++; - if(this.layoutGroups.get(j).lineIndex == lineIndex) { - if(j == 0 || HxOverrides.cca(this.text,this.layoutGroups.get(j).startIndex - 1) == 32) { - ++lineLength; - } - } else { - break; - } - } - if(lineLength > 1) { - group = this.layoutGroups.get(i + lineLength - 1); - var endChar = HxOverrides.cca(this.text,group.endIndex); - if(group.endIndex < this.text.length && endChar != 10 && endChar != 13) { - offsetX = (totalWidth - this.lineWidths.get(lineIndex)) / (lineLength - 1); - lineMeasurementsDirty = true; - var j1 = 1; - while(true) { - this.layoutGroups.get(i + j1).offsetX += offsetX * j1; - if(!(++j1 < lineLength)) { - break; - } - } - } - } - } - offsetX = 0; - break; - case 4: - if(this.lineWidths.get(lineIndex) < totalWidth) { - offsetX = Math.round(totalWidth - this.lineWidths.get(lineIndex)); - } else { - offsetX = 0; - } - break; - default: - offsetX = 0; - } - } - if(offsetX > 0) { - group.offsetX += offsetX; - } - } - if(lineMeasurementsDirty) { - this.getLineMeasurements(); - } - } - ,trimText: function(value) { - if(value == null) { - return value; - } - if(this.maxChars > 0 && value.length > this.maxChars) { - value = HxOverrides.substr(value,0,this.maxChars); - } - return value; - } - ,update: function() { - if(this.text == null || this.textFormatRanges.get_length() == 0) { - 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.textWidth = 0; - this.textHeight = 0; - this.numLines = 1; - this.maxScrollH = 0; - this.maxScrollV = 1; - this.bottomScrollV = 1; - } else { - this.getLayoutGroups(); - this.getLineMeasurements(); - this.setTextAlignment(); - } - this.getBounds(); - } - ,get_bottomScrollV: function() { - if(this.numLines == 1 || this.lineHeights == null) { - return 1; - } else { - var tempHeight = 0.0; - var ret = this.lineHeights.get_length(); - var _g = ret - 1; - var _g1 = this.lineHeights.get_length(); - while(_g < _g1) { - var i = _g++; - if(tempHeight + this.lineHeights.get(i) <= this.height - 4) { - tempHeight += this.lineHeights.get(i); - } else { - ret = i; - break; - } - } - if(ret < 1) { - return 1; - } - return ret; - } - } - ,get_maxScrollV: function() { - if(this.numLines == 1 || this.lineHeights == null) { - return 1; - } else { - var i = this.numLines - 1; - var tempHeight = 0.0; - if(HxOverrides.cca(this.text,this.text.length - 1) == 10) { - --i; - } - var j = i; - while(i >= 0) if(tempHeight + this.lineHeights.get(i) <= this.height - 4) { - tempHeight += this.lineHeights.get(i); - --i; - } else { - break; - } - if(i == j) { - i = this.numLines; - } else { - i += 2; - } - if(i < 1) { - return 1; - } - return i; - } - } - ,set_restrict: function(value) { - if(this.restrict == value) { - return this.restrict; - } - this.restrict = value; - if(this.restrict == null || this.restrict.length == 0) { - this.__restrictRegexp = null; - } else { - this.__restrictRegexp = this.createRestrictRegexp(value); - } - return this.restrict; - } - ,get_scrollV: function() { - if(this.numLines == 1 || this.lineHeights == null) { - return 1; - } - var max = this.get_maxScrollV(); - if(this.scrollV > max) { - return max; - } - return this.scrollV; - } - ,set_scrollV: function(value) { - if(value < 1) { - value = 1; - } - return this.scrollV = value; - } - ,set_text: function(value) { - return this.text = value; - } - ,__class__: openfl__$internal_text_TextEngine - ,__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 openfl__$internal_text_TextFormatRange = function(format,start,end) { - this.format = format; - this.start = start; - this.end = end; -}; -$hxClasses["openfl._internal.text.TextFormatRange"] = openfl__$internal_text_TextFormatRange; -openfl__$internal_text_TextFormatRange.__name__ = "openfl._internal.text.TextFormatRange"; -openfl__$internal_text_TextFormatRange.prototype = { - end: null - ,format: null - ,start: null - ,__class__: openfl__$internal_text_TextFormatRange -}; -var openfl__$internal_text_TextLayout = function(text,font,size,direction,script,language) { - if(language == null) { - language = "en"; - } - if(script == null) { - script = "Zyyy"; - } - if(direction == null) { - direction = 4; - } - if(size == null) { - size = 12; - } - if(text == null) { - text = ""; - } - this.letterSpacing = 0; - this.set_text(text); - this.set_font(font); - this.set_size(size); - this.__direction = direction; - this.__script = script; - this.__language = language; - this.positions = []; - this.__dirty = true; - this.__create(this.__direction,this.__script,this.__language); -}; -$hxClasses["openfl._internal.text.TextLayout"] = openfl__$internal_text_TextLayout; -openfl__$internal_text_TextLayout.__name__ = "openfl._internal.text.TextLayout"; -openfl__$internal_text_TextLayout.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(direction,script,language) { - if(language.length != 4) { - return; - } - this.__hbBuffer = lime_text_harfbuzz__$HBBuffer_HBBuffer_$Impl_$._new(); - switch(direction) { - case 4: - break; - case 5: - break; - case 6: - break; - case 7: - break; - default: - } - var this1 = this.__hbBuffer; - var value = lime_text_harfbuzz__$HBLanguage_HBLanguage_$Impl_$._new(language); - } - ,__position: function() { - this.positions = []; - } - ,get_positions: function() { - if(this.__dirty) { - this.__dirty = false; - this.__position(); - } - return this.positions; - } - ,get_direction: function() { - return this.__direction; - } - ,set_direction: function(value) { - if(value == this.__direction) { - return value; - } - this.__direction = value; - this.__dirty = true; - return value; - } - ,set_font: function(value) { - if(value == this.font) { - return value; - } - this.font = value; - this.__dirty = true; - return value; - } - ,get_glyphs: function() { - var glyphs = []; - var _g = 0; - var _g1 = this.get_positions(); - while(_g < _g1.length) { - var position = _g1[_g]; - ++_g; - glyphs.push(position.glyph); - } - return glyphs; - } - ,get_language: function() { - return this.__language; - } - ,set_language: function(value) { - if(value == this.__language) { - return value; - } - this.__language = value; - this.__dirty = true; - return value; - } - ,get_script: function() { - return this.__script; - } - ,set_script: function(value) { - if(value == this.__script) { - return value; - } - this.__script = value; - this.__dirty = true; - return value; - } - ,set_size: function(value) { - if(value == this.size) { - return value; - } - this.size = value; - this.__dirty = true; - return value; - } - ,set_text: function(value) { - if(value == this.text) { - return value; - } - this.text = value; - this.__dirty = true; - return value; - } - ,__class__: openfl__$internal_text_TextLayout - ,__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 openfl__$internal_text__$TextLayout_TextDirection_$Impl_$ = {}; -$hxClasses["openfl._internal.text._TextLayout.TextDirection_Impl_"] = openfl__$internal_text__$TextLayout_TextDirection_$Impl_$; -openfl__$internal_text__$TextLayout_TextDirection_$Impl_$.__name__ = "openfl._internal.text._TextLayout.TextDirection_Impl_"; -openfl__$internal_text__$TextLayout_TextDirection_$Impl_$.__properties__ = {get_vertical:"get_vertical",get_horizontal:"get_horizontal",get_forward:"get_forward",get_backward:"get_backward"}; -openfl__$internal_text__$TextLayout_TextDirection_$Impl_$.reverse = function(this1) { - this1 ^= 1; -}; -openfl__$internal_text__$TextLayout_TextDirection_$Impl_$.toString = function(this1) { - switch(this1) { - case 4: - return "leftToRight"; - case 5: - return "rightToLeft"; - case 6: - return "topToBottom"; - case 7: - return "bottomToTop"; - default: - return ""; - } -}; -openfl__$internal_text__$TextLayout_TextDirection_$Impl_$.toHBDirection = function(this1) { - switch(this1) { - case 4: - return 4; - case 5: - return 5; - case 6: - return 6; - case 7: - return 7; - default: - return 0; - } -}; -openfl__$internal_text__$TextLayout_TextDirection_$Impl_$.get_backward = function(this1) { - return (this1 & -3) == 5; -}; -openfl__$internal_text__$TextLayout_TextDirection_$Impl_$.get_forward = function(this1) { - return (this1 & -3) == 4; -}; -openfl__$internal_text__$TextLayout_TextDirection_$Impl_$.get_horizontal = function(this1) { - return (this1 & -2) == 4; -}; -openfl__$internal_text__$TextLayout_TextDirection_$Impl_$.get_vertical = function(this1) { - return (this1 & -2) == 6; -}; -var openfl__$internal_text__$TextLayout_TextScript_$Impl_$ = {}; -$hxClasses["openfl._internal.text._TextLayout.TextScript_Impl_"] = openfl__$internal_text__$TextLayout_TextScript_$Impl_$; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.__name__ = "openfl._internal.text._TextLayout.TextScript_Impl_"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.__properties__ = {get_rightToLeft:"get_rightToLeft"}; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.toHBScript = function(this1) { - return 1517910393; -}; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.get_rightToLeft = function(this1) { - switch(this1) { - case "Arab":case "Armi":case "Avst":case "Cprt":case "Hebr":case "Khar":case "Lydi":case "Mand":case "Nkoo":case "Orkh":case "Phli":case "Phlp":case "Phnx":case "Samr":case "Sarb":case "Syrc":case "Thaa": - return true; - default: - return false; - } -}; -var openfl__$internal_text_TextLayoutGroup = function(format,startIndex,endIndex) { - this.format = format; - this.startIndex = startIndex; - this.endIndex = endIndex; -}; -$hxClasses["openfl._internal.text.TextLayoutGroup"] = openfl__$internal_text_TextLayoutGroup; -openfl__$internal_text_TextLayoutGroup.__name__ = "openfl._internal.text.TextLayoutGroup"; -openfl__$internal_text_TextLayoutGroup.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(index) { - return this.positions[index]; - } - ,__class__: openfl__$internal_text_TextLayoutGroup -}; -var openfl__$internal_utils_AbstractNoise = function(seed,octaves,channels,grayScale,falloff,stitch,stitch_threshold) { - if(stitch_threshold == null) { - stitch_threshold = 0.05; - } - if(stitch == null) { - stitch = false; - } - this.stitch = stitch; - this.stitch_threshold = stitch_threshold; - this.octaves = octaves; - this.channels = channels; - this.grayscale = grayScale; - this.calculateOctaves(falloff); -}; -$hxClasses["openfl._internal.utils.AbstractNoise"] = openfl__$internal_utils_AbstractNoise; -openfl__$internal_utils_AbstractNoise.__name__ = "openfl._internal.utils.AbstractNoise"; -openfl__$internal_utils_AbstractNoise.prototype = { - octaves: null - ,stitch: null - ,stitch_threshold: null - ,channels: null - ,grayscale: null - ,octaves_frequencies: null - ,octaves_persistences: null - ,persistence_max: null - ,fill: function(bitmap,_scale_x,_scale_y,_scale_z) { - } - ,stitching: function(bitmap,color,px,py,stitch_w,stitch_h,width,height) { - var r = color >> 16 & 255; - var g = color >> 8 & 255; - var b = color & 255; - if(width - stitch_w < px) { - var dest = bitmap.getPixel32(width - px,py); - var dest_r = dest >> 16 & 255; - var dest_g = dest >> 8 & 255; - var dest_b = dest & 255; - var u = (width - px) / stitch_w; - var uu = u * u; - r = this.mixI(dest_r,r,u); - g = this.mixI(dest_g,g,u); - b = this.mixI(dest_b,b,u); - } - if(height - stitch_h < py) { - var dest1 = bitmap.getPixel32(px,height - py); - var dest_r1 = dest1 >> 16 & 255; - var dest_g1 = dest1 >> 8 & 255; - var dest_b1 = dest1 & 255; - var u1 = (height - py) / stitch_h; - var uu1 = u1 * u1; - r = this.mixI(dest_r1,r,u1); - g = this.mixI(dest_g1,g,u1); - b = this.mixI(dest_b1,b,u1); - } - return -16777216 | r << 16 | g << 8 | b; - } - ,color: function(r_noise,g_noise,b_noise) { - var color_r = 0; - var color_g = 0; - var color_b = 0; - if(null != r_noise) { - color_r = this.noiseToColor(r_noise); - } - if(null != g_noise) { - color_g = this.noiseToColor(g_noise); - } - if(null != b_noise) { - color_b = this.noiseToColor(b_noise); - } - return -16777216 | color_r << 16 | color_g << 8 | color_b; - } - ,noiseToColor: function(noise) { - return (noise * this.persistence_max + 1.0) * 128 | 0; - } - ,fade: function(t) { - return t * t * t * (t * (t * 6.0 - 15.0) + 10.0); - } - ,mixI: function(x,y,t) { - return (1.0 - t) * x + t * y | 0; - } - ,mix: function(x,y,t) { - return (1.0 - t) * x + t * y; - } - ,fastfloor: function(x) { - if(x > 0) { - return x | 0; - } else { - return x - 1 | 0; - } - } - ,dot2d: function(grad,x,y) { - return grad[0] * x + grad[1] * y; - } - ,dot: function(grad,x,y,z) { - return grad[0] * x + grad[1] * y + grad[2] * z; - } - ,calculateOctaves: function(fPersistence) { - var fFreq; - var fPers; - this.octaves_frequencies = []; - this.octaves_persistences = []; - this.persistence_max = 0; - var _g = 0; - var _g1 = this.octaves; - while(_g < _g1) { - var i = _g++; - fFreq = Math.pow(2.0,i); - fPers = Math.pow(fPersistence,i); - this.persistence_max += fPers; - this.octaves_frequencies.push(fFreq); - this.octaves_persistences.push(fPers); - } - this.persistence_max = 1.0 / this.persistence_max; - } - ,__class__: openfl__$internal_utils_AbstractNoise -}; -var openfl__$internal_utils_PerlinNoise = function(seed,octaves,channels,grayScale,falloff,stitch,stitch_threshold) { - if(stitch_threshold == null) { - stitch_threshold = 0.05; - } - if(stitch == null) { - stitch = false; - } - openfl__$internal_utils_AbstractNoise.call(this,seed,octaves,channels,grayScale,falloff,stitch,stitch_threshold); - this.p_perm = []; - var _g = 0; - while(_g < 512) { - var i = _g++; - this.p_perm[i] = openfl__$internal_utils_PerlinNoise.P[i & 255]; - } - this.base_factor = 0.03125; - this.setSeed(seed); -}; -$hxClasses["openfl._internal.utils.PerlinNoise"] = openfl__$internal_utils_PerlinNoise; -openfl__$internal_utils_PerlinNoise.__name__ = "openfl._internal.utils.PerlinNoise"; -openfl__$internal_utils_PerlinNoise.__super__ = openfl__$internal_utils_AbstractNoise; -openfl__$internal_utils_PerlinNoise.prototype = $extend(openfl__$internal_utils_AbstractNoise.prototype,{ - p_perm: null - ,x_offset: null - ,y_offset: null - ,z_offset: null - ,base_factor: null - ,fill: function(bitmap,_scale_x,_scale_y,_scale_z) { - var width = bitmap.width; - var height = bitmap.height; - var octaves = this.octaves; - var octaves_frequencies = this.octaves_frequencies; - var octaves_persistences = this.octaves_persistences; - var isRed = (1 & this.channels) == 1; - var isGreen = (2 & this.channels) == 2; - var isBlue = (4 & this.channels) == 4; - var channels = 0; - if(isRed) { - ++channels; - } - if(isGreen) { - ++channels; - } - if(isBlue) { - ++channels; - } - var grayscale = this.grayscale; - var stitch_w = this.stitch_threshold * width | 0; - var stitch_h = this.stitch_threshold * height | 0; - var base_x = _scale_x * this.base_factor + this.x_offset; - _scale_y = _scale_y * this.base_factor + this.y_offset; - _scale_z = _scale_z * this.base_factor + this.z_offset; - var g_offset = 1.0; - var b_offset = 2.0; - var _g = 0; - var _g1 = height; - while(_g < _g1) { - var py = _g++; - _scale_x = base_x; - var _g2 = 0; - var _g11 = width; - while(_g2 < _g11) { - var px = _g2++; - var color1 = 0.0; - var color2 = 0.0; - var color3 = 0.0; - var _g3 = 0; - var _g12 = octaves; - while(_g3 < _g12) { - var i = _g3++; - var frequency = octaves_frequencies[i]; - var persistence = octaves_persistences[i]; - color1 += this.noise(_scale_x * frequency,_scale_y * frequency,_scale_z * frequency) * persistence; - if(!grayscale) { - if(1 < channels) { - color2 += this.noise((_scale_x + g_offset) * frequency,(_scale_y + g_offset) * frequency,_scale_z * frequency) * persistence; - } - if(2 < channels) { - color3 += this.noise((_scale_x + b_offset) * frequency,(_scale_y + b_offset) * frequency,_scale_z * frequency) * persistence; - } - } - } - var color = 0; - if(grayscale) { - color = this.color(color1,color1,color1); - } else if(isRed && isGreen && isBlue) { - color = this.color(color1,color2,color3); - } else if(isRed && isGreen) { - color = this.color(color1,color2,null); - } else if(isRed && isBlue) { - color = this.color(color1,null,color2); - } else if(isGreen && isBlue) { - color = this.color(null,color1,color2); - } else if(isRed) { - color = this.color(color1,null,null); - } else if(isGreen) { - color = this.color(null,color1,null); - } else if(isBlue) { - color = this.color(null,null,color1); - } - if(this.stitch) { - color = this.stitching(bitmap,color,px,py,stitch_w,stitch_h,width,height); - } - bitmap.setPixel32(px,py,color); - _scale_x += this.base_factor; - } - _scale_y += this.base_factor; - } - } - ,noise: function(x,y,z) { - var xf = x - x % 1; - var yf = y - y % 1; - var zf = z - z % 1; - x -= xf; - y -= yf; - z -= zf; - var X = (xf | 0) & 255; - var Y = (yf | 0) & 255; - var Z = (zf | 0) & 255; - var u = this.fade(x); - var v = this.fade(y); - var w = this.fade(z); - var A = this.p_perm[X] + Y; - var AA = this.p_perm[A] + Z; - var AB = this.p_perm[A + 1] + Z; - var B = this.p_perm[X + 1] + Y; - var BA = this.p_perm[B] + Z; - var BB = this.p_perm[B + 1] + Z; - var x1 = x - 1; - var y1 = y - 1; - var z1 = z - 1; - var hash = this.p_perm[BB + 1] & 15; - var g1 = ((hash & 1) == 0 ? hash < 8 ? x1 : y1 : hash < 8 ? -x1 : -y1) + ((hash & 2) == 0 ? hash < 4 ? y1 : hash == 12 ? x1 : z1 : hash < 4 ? -y1 : hash == 14 ? -x1 : -z1); - hash = this.p_perm[AB + 1] & 15; - var g2 = ((hash & 1) == 0 ? hash < 8 ? x : y1 : hash < 8 ? -x : -y1) + ((hash & 2) == 0 ? hash < 4 ? y1 : hash == 12 ? x : z1 : hash < 4 ? -y1 : hash == 14 ? -x : -z1); - hash = this.p_perm[BA + 1] & 15; - var g3 = ((hash & 1) == 0 ? hash < 8 ? x1 : y : hash < 8 ? -x1 : -y) + ((hash & 2) == 0 ? hash < 4 ? y : hash == 12 ? x1 : z1 : hash < 4 ? -y : hash == 14 ? -x1 : -z1); - hash = this.p_perm[AA + 1] & 15; - var g4 = ((hash & 1) == 0 ? hash < 8 ? x : y : hash < 8 ? -x : -y) + ((hash & 2) == 0 ? hash < 4 ? y : hash == 12 ? x : z1 : hash < 4 ? -y : hash == 14 ? -x : -z1); - hash = this.p_perm[BB] & 15; - var g5 = ((hash & 1) == 0 ? hash < 8 ? x1 : y1 : hash < 8 ? -x1 : -y1) + ((hash & 2) == 0 ? hash < 4 ? y1 : hash == 12 ? x1 : z : hash < 4 ? -y1 : hash == 14 ? -x1 : -z); - hash = this.p_perm[AB] & 15; - var g6 = ((hash & 1) == 0 ? hash < 8 ? x : y1 : hash < 8 ? -x : -y1) + ((hash & 2) == 0 ? hash < 4 ? y1 : hash == 12 ? x : z : hash < 4 ? -y1 : hash == 14 ? -x : -z); - hash = this.p_perm[BA] & 15; - var g7 = ((hash & 1) == 0 ? hash < 8 ? x1 : y : hash < 8 ? -x1 : -y) + ((hash & 2) == 0 ? hash < 4 ? y : hash == 12 ? x1 : z : hash < 4 ? -y : hash == 14 ? -x1 : -z); - hash = this.p_perm[AA] & 15; - var g8 = ((hash & 1) == 0 ? hash < 8 ? x : y : hash < 8 ? -x : -y) + ((hash & 2) == 0 ? hash < 4 ? y : hash == 12 ? x : z : hash < 4 ? -y : hash == 14 ? -x : -z); - g2 += u * (g1 - g2); - g4 += u * (g3 - g4); - g6 += u * (g5 - g6); - g8 += u * (g7 - g8); - g4 += v * (g2 - g4); - g8 += v * (g6 - g8); - return g8 + w * (g4 - g8); - } - ,setSeed: function(seed) { - seed = seed * 16807.0 % 2147483647 | 0; - this.x_offset = seed; - seed = seed * 16807.0 % 2147483647 | 0; - this.y_offset = seed; - seed = seed * 16807.0 % 2147483647 | 0; - this.z_offset = seed; - } - ,__class__: openfl__$internal_utils_PerlinNoise -}); -var openfl__$internal_utils_TouchData = function() { - this.rollOutStack = []; -}; -$hxClasses["openfl._internal.utils.TouchData"] = openfl__$internal_utils_TouchData; -openfl__$internal_utils_TouchData.__name__ = "openfl._internal.utils.TouchData"; -openfl__$internal_utils_TouchData.prototype = { - rollOutStack: null - ,touch: null - ,touchDownTarget: null - ,touchOverTarget: null - ,reset: function() { - this.touch = null; - this.touchDownTarget = null; - this.touchOverTarget = null; - this.rollOutStack.splice(0,this.rollOutStack.length); - } - ,__class__: openfl__$internal_utils_TouchData -}; -var openfl_display_Application = function() { - lime_app_Application.call(this); - if(openfl__$internal_Lib.application == null) { - openfl__$internal_Lib.application = this; - } - if(openfl__$internal_Lib.current == null) { - openfl__$internal_Lib.current = new openfl_display_MovieClip(); - } - openfl__$internal_Lib.current.__loaderInfo = openfl_display_LoaderInfo.create(null); - openfl__$internal_Lib.current.__loaderInfo.content = openfl__$internal_Lib.current; -}; -$hxClasses["openfl.display.Application"] = openfl_display_Application; -openfl_display_Application.__name__ = "openfl.display.Application"; -openfl_display_Application.__super__ = lime_app_Application; -openfl_display_Application.prototype = $extend(lime_app_Application.prototype,{ - createWindow: function(attributes) { - var $window = new openfl_display_Window(this,attributes); - this.__windows.push($window); - this.__windowByID.h[$window.id] = $window; - var f = $bind(this,this.__onWindowClose); - var window1 = $window; - var tmp = function() { - f(window1); - }; - $window.onClose.add(tmp,false,-10000); - if(this.__window == null) { - this.__window = $window; - $window.onActivate.add($bind(this,this.onWindowActivate)); - $window.onRenderContextLost.add($bind(this,this.onRenderContextLost)); - $window.onRenderContextRestored.add($bind(this,this.onRenderContextRestored)); - $window.onDeactivate.add($bind(this,this.onWindowDeactivate)); - $window.onDropFile.add($bind(this,this.onWindowDropFile)); - $window.onEnter.add($bind(this,this.onWindowEnter)); - $window.onExpose.add($bind(this,this.onWindowExpose)); - $window.onFocusIn.add($bind(this,this.onWindowFocusIn)); - $window.onFocusOut.add($bind(this,this.onWindowFocusOut)); - $window.onFullscreen.add($bind(this,this.onWindowFullscreen)); - $window.onKeyDown.add($bind(this,this.onKeyDown)); - $window.onKeyUp.add($bind(this,this.onKeyUp)); - $window.onLeave.add($bind(this,this.onWindowLeave)); - $window.onMinimize.add($bind(this,this.onWindowMinimize)); - $window.onMouseDown.add($bind(this,this.onMouseDown)); - $window.onMouseMove.add($bind(this,this.onMouseMove)); - $window.onMouseMoveRelative.add($bind(this,this.onMouseMoveRelative)); - $window.onMouseUp.add($bind(this,this.onMouseUp)); - $window.onMouseWheel.add($bind(this,this.onMouseWheel)); - $window.onMove.add($bind(this,this.onWindowMove)); - $window.onRender.add($bind(this,this.render)); - $window.onResize.add($bind(this,this.onWindowResize)); - $window.onRestore.add($bind(this,this.onWindowRestore)); - $window.onTextEdit.add($bind(this,this.onTextEdit)); - $window.onTextInput.add($bind(this,this.onTextInput)); - this.onWindowCreate(); - } - this.onCreateWindow.dispatch($window); - return $window; - } - ,__class__: openfl_display_Application -}); -var openfl_display_Bitmap = function(bitmapData,pixelSnapping,smoothing) { - if(smoothing == null) { - smoothing = false; - } - openfl_display_DisplayObject.call(this); - this.__bitmapData = bitmapData; - this.pixelSnapping = pixelSnapping; - this.smoothing = smoothing; - if(pixelSnapping == null) { - this.pixelSnapping = 1; - } -}; -$hxClasses["openfl.display.Bitmap"] = openfl_display_Bitmap; -openfl_display_Bitmap.__name__ = "openfl.display.Bitmap"; -openfl_display_Bitmap.__super__ = openfl_display_DisplayObject; -openfl_display_Bitmap.prototype = $extend(openfl_display_DisplayObject.prototype,{ - pixelSnapping: null - ,smoothing: null - ,__image: null - ,__bitmapData: null - ,__imageVersion: null - ,__enterFrame: function(deltaTime) { - if(this.__bitmapData != null && this.__bitmapData.image != null && this.__bitmapData.image.version != this.__imageVersion) { - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - } - ,__getBounds: function(rect,matrix) { - var bounds = openfl_geom_Rectangle.__pool.get(); - if(this.__bitmapData != null) { - bounds.setTo(0,0,this.__bitmapData.width,this.__bitmapData.height); - } else { - bounds.setTo(0,0,0,0); - } - bounds.__transform(bounds,matrix); - rect.__expand(bounds.x,bounds.y,bounds.width,bounds.height); - openfl_geom_Rectangle.__pool.release(bounds); - } - ,__hitTest: function(x,y,shapeFlag,stack,interactiveOnly,hitObject) { - if(!hitObject.get_visible() || this.__isMask || this.__bitmapData == null) { - return false; - } - if(this.get_mask() != null && !this.get_mask().__hitTestMask(x,y)) { - return false; - } - this.__getRenderTransform(); - var _this = this.__renderTransform; - var norm = _this.a * _this.d - _this.b * _this.c; - var px = norm == 0 ? -_this.tx : 1.0 / norm * (_this.c * (_this.ty - y) + _this.d * (x - _this.tx)); - var _this1 = this.__renderTransform; - var norm1 = _this1.a * _this1.d - _this1.b * _this1.c; - var py = norm1 == 0 ? -_this1.ty : 1.0 / norm1 * (_this1.a * (y - _this1.ty) + _this1.b * (_this1.tx - x)); - if(px > 0 && py > 0 && px <= this.__bitmapData.width && py <= this.__bitmapData.height) { - if(this.__scrollRect != null && !this.__scrollRect.contains(px,py)) { - return false; - } - if(stack != null && !interactiveOnly) { - stack.push(hitObject); - } - return true; - } - return false; - } - ,__hitTestMask: function(x,y) { - if(this.__bitmapData == null) { - return false; - } - this.__getRenderTransform(); - var _this = this.__renderTransform; - var norm = _this.a * _this.d - _this.b * _this.c; - var px = norm == 0 ? -_this.tx : 1.0 / norm * (_this.c * (_this.ty - y) + _this.d * (x - _this.tx)); - var _this1 = this.__renderTransform; - var norm1 = _this1.a * _this1.d - _this1.b * _this1.c; - var py = norm1 == 0 ? -_this1.ty : 1.0 / norm1 * (_this1.a * (y - _this1.ty) + _this1.b * (_this1.tx - x)); - if(px > 0 && py > 0 && px <= this.__bitmapData.width && py <= this.__bitmapData.height) { - return true; - } - return false; - } - ,__renderCairo: function(renderer) { - } - ,__renderCairoMask: function(renderer) { - renderer.cairo.rectangle(0,0,this.get_width(),this.get_height()); - } - ,__renderCanvas: function(renderer) { - this.__updateCacheBitmap(renderer,false); - if(this.__bitmapData != null && this.__bitmapData.image != null) { - this.__imageVersion = this.__bitmapData.image.version; - } - if(this.__cacheBitmap != null && !this.__isCacheBitmapRender) { - var bitmap = this.__cacheBitmap; - if(!(!bitmap.__renderable)) { - var alpha = renderer.__getAlpha(bitmap.__worldAlpha); - if(alpha > 0 && bitmap.__bitmapData != null && bitmap.__bitmapData.__isValid && bitmap.__bitmapData.readable) { - var context = renderer.context; - renderer.__setBlendMode(bitmap.__worldBlendMode); - renderer.__pushMaskObject(bitmap,false); - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(bitmap.__bitmapData.image); - context.globalAlpha = alpha; - var scrollRect = bitmap.__scrollRect; - renderer.setTransform(bitmap.__renderTransform,context); - if(!renderer.__allowSmoothing || !bitmap.smoothing) { - context.imageSmoothingEnabled = false; - } - if(scrollRect == null) { - context.drawImage(bitmap.__bitmapData.image.get_src(),0,0,bitmap.__bitmapData.image.width,bitmap.__bitmapData.image.height); - } else { - context.drawImage(bitmap.__bitmapData.image.get_src(),scrollRect.x,scrollRect.y,scrollRect.width,scrollRect.height); - } - if(!renderer.__allowSmoothing || !bitmap.smoothing) { - context.imageSmoothingEnabled = true; - } - renderer.__popMaskObject(bitmap,false); - } - } - } else { - if(!(this.opaqueBackground == null && this.__graphics == null)) { - if(!(!this.__renderable)) { - var alpha1 = renderer.__getAlpha(this.__worldAlpha); - if(!(alpha1 <= 0)) { - if(this.opaqueBackground != null && !this.__isCacheBitmapRender && this.get_width() > 0 && this.get_height() > 0) { - renderer.__setBlendMode(this.__worldBlendMode); - renderer.__pushMaskObject(this); - var context1 = renderer.context; - renderer.setTransform(this.__renderTransform,context1); - var color = this.opaqueBackground; - context1.fillStyle = "rgb(" + (color >>> 16 & 255) + "," + (color >>> 8 & 255) + "," + (color & 255) + ")"; - context1.fillRect(0,0,this.get_width(),this.get_height()); - renderer.__popMaskObject(this); - } - if(this.__graphics != null) { - if(!(!this.__renderable)) { - var alpha2 = renderer.__getAlpha(this.__worldAlpha); - if(!(alpha2 <= 0)) { - var graphics = this.__graphics; - if(graphics != null) { - openfl__$internal_renderer_canvas_CanvasGraphics.render(graphics,renderer); - var width = graphics.__width; - var height = graphics.__height; - var canvas = graphics.__canvas; - if(canvas != null && graphics.__visible && width >= 1 && height >= 1) { - var transform = graphics.__worldTransform; - var context2 = renderer.context; - var scrollRect1 = this.__scrollRect; - var scale9Grid = this.__worldScale9Grid; - if(scrollRect1 == null || scrollRect1.width > 0 && scrollRect1.height > 0) { - renderer.__setBlendMode(this.__worldBlendMode); - renderer.__pushMaskObject(this); - context2.globalAlpha = alpha2; - if(scale9Grid != null && transform.b == 0 && transform.c == 0) { - context2.setTransform(1,0,0,1,transform.tx,transform.ty); - var bounds = graphics.__bounds; - var scaleX = graphics.__renderTransform.a; - var scaleY = graphics.__renderTransform.d; - var renderScaleX = transform.a; - var renderScaleY = transform.d; - var left = Math.max(1,Math.round(scale9Grid.x * scaleX)); - var top = Math.round(scale9Grid.y * scaleY); - var right = Math.max(1,Math.round((bounds.get_right() - scale9Grid.get_right()) * scaleX)); - var bottom = Math.round((bounds.get_bottom() - scale9Grid.get_bottom()) * scaleY); - var centerWidth = Math.round(scale9Grid.width * scaleX); - var centerHeight = Math.round(scale9Grid.height * scaleY); - var renderLeft = Math.round(scale9Grid.x * renderScaleX); - var renderTop = Math.round(scale9Grid.y * renderScaleY); - var renderRight = Math.round((bounds.get_right() - scale9Grid.get_right()) * renderScaleX); - var renderBottom = Math.round((bounds.get_bottom() - scale9Grid.get_bottom()) * renderScaleY); - var renderCenterWidth = Math.round(width * renderScaleX) - renderLeft - renderRight; - var renderCenterHeight = Math.round(height * renderScaleY) - renderTop - renderBottom; - renderer.applySmoothing(context2,false); - if(centerWidth != 0 && centerHeight != 0) { - context2.drawImage(canvas,0,0,left,top,0,0,renderLeft,renderTop); - context2.drawImage(canvas,left,0,centerWidth,top,renderLeft,0,renderCenterWidth,renderTop); - context2.drawImage(canvas,left + centerWidth,0,right,top,renderLeft + renderCenterWidth,0,renderRight,renderTop); - context2.drawImage(canvas,0,top,left,centerHeight,0,renderTop,renderLeft,renderCenterHeight); - context2.drawImage(canvas,left,top,centerWidth,centerHeight,renderLeft,renderTop,renderCenterWidth,renderCenterHeight); - context2.drawImage(canvas,left + centerWidth,top,right,centerHeight,renderLeft + renderCenterWidth,renderTop,renderRight,renderCenterHeight); - context2.drawImage(canvas,0,top + centerHeight,left,bottom,0,renderTop + renderCenterHeight,renderLeft,renderBottom); - context2.drawImage(canvas,left,top + centerHeight,centerWidth,bottom,renderLeft,renderTop + renderCenterHeight,renderCenterWidth,renderBottom); - context2.drawImage(canvas,left + centerWidth,top + centerHeight,right,bottom,renderLeft + renderCenterWidth,renderTop + renderCenterHeight,renderRight,renderBottom); - } else if(centerWidth == 0 && centerHeight != 0) { - var renderWidth = renderLeft + renderCenterWidth + renderRight; - context2.drawImage(canvas,0,0,width,top,0,0,renderWidth,renderTop); - context2.drawImage(canvas,0,top,width,centerHeight,0,renderTop,renderWidth,renderCenterHeight); - context2.drawImage(canvas,0,top + centerHeight,width,bottom,0,renderTop + renderCenterHeight,renderWidth,renderBottom); - } else if(centerHeight == 0 && centerWidth != 0) { - var renderHeight = renderTop + renderCenterHeight + renderBottom; - context2.drawImage(canvas,0,0,left,height,0,0,renderLeft,renderHeight); - context2.drawImage(canvas,left,0,centerWidth,height,renderLeft,0,renderCenterWidth,renderHeight); - context2.drawImage(canvas,left + centerWidth,0,right,height,renderLeft + renderCenterWidth,0,renderRight,renderHeight); - } - } else { - renderer.setTransform(transform,context2); - if(renderer.__isDOM) { - var reverseScale = 1 / renderer.pixelRatio; - context2.scale(reverseScale,reverseScale); - } - context2.drawImage(canvas,0,0,width,height); - } - renderer.__popMaskObject(this); - } - } - } - } - } - } - } - } - } - if(!(!this.__renderable)) { - var alpha3 = renderer.__getAlpha(this.__worldAlpha); - if(alpha3 > 0 && this.__bitmapData != null && this.__bitmapData.__isValid && this.__bitmapData.readable) { - var context3 = renderer.context; - renderer.__setBlendMode(this.__worldBlendMode); - renderer.__pushMaskObject(this,false); - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(this.__bitmapData.image); - context3.globalAlpha = alpha3; - var scrollRect2 = this.__scrollRect; - renderer.setTransform(this.__renderTransform,context3); - if(!renderer.__allowSmoothing || !this.smoothing) { - context3.imageSmoothingEnabled = false; - } - if(scrollRect2 == null) { - context3.drawImage(this.__bitmapData.image.get_src(),0,0,this.__bitmapData.image.width,this.__bitmapData.image.height); - } else { - context3.drawImage(this.__bitmapData.image.get_src(),scrollRect2.x,scrollRect2.y,scrollRect2.width,scrollRect2.height); - } - if(!renderer.__allowSmoothing || !this.smoothing) { - context3.imageSmoothingEnabled = true; - } - renderer.__popMaskObject(this,false); - } - } - } - this.__renderEvent(renderer); - } - ,__renderCanvasMask: function(renderer) { - renderer.context.rect(0,0,this.get_width(),this.get_height()); - } - ,__renderDOM: function(renderer) { - this.__updateCacheBitmap(renderer,false); - if(this.__cacheBitmap != null && !this.__isCacheBitmapRender) { - this.__renderDOMClear(renderer); - this.__cacheBitmap.stage = this.stage; - var bitmap = this.__cacheBitmap; - if(bitmap.stage != null && bitmap.__worldVisible && bitmap.__renderable && bitmap.__bitmapData != null && bitmap.__bitmapData.__isValid && bitmap.__bitmapData.readable) { - renderer.__pushMaskObject(bitmap); - if(bitmap.__bitmapData.image.buffer.__srcImage != null) { - openfl__$internal_renderer_dom_DOMBitmap.renderImage(bitmap,renderer); - } else { - openfl__$internal_renderer_dom_DOMBitmap.renderCanvas(bitmap,renderer); - } - renderer.__popMaskObject(bitmap); - } else { - openfl__$internal_renderer_dom_DOMBitmap.clear(bitmap,renderer); - } - } else { - var tmp = this.opaqueBackground != null && !this.__isCacheBitmapRender && this.get_width() > 0 && this.get_height() > 0; - var graphics = this.__graphics; - if(this.stage != null && this.__worldVisible && this.__renderable && graphics != null) { - openfl__$internal_renderer_canvas_CanvasGraphics.render(graphics,renderer.__canvasRenderer); - if(graphics.__softwareDirty || this.__worldAlphaChanged || this.__canvas != graphics.__canvas) { - if(graphics.__canvas != null) { - if(this.__canvas != graphics.__canvas) { - if(this.__canvas != null) { - renderer.element.removeChild(this.__canvas); - } - this.__canvas = graphics.__canvas; - this.__context = graphics.__context; - renderer.__initializeElement(this,this.__canvas); - } - } else { - openfl__$internal_renderer_dom_DOMShape.clear(this,renderer); - } - } - if(this.__canvas != null) { - renderer.__pushMaskObject(this); - var cacheTransform = this.__renderTransform; - this.__renderTransform = graphics.__worldTransform; - if(graphics.__transformDirty) { - graphics.__transformDirty = false; - this.__renderTransformChanged = true; - } - renderer.__updateClip(this); - renderer.__applyStyle(this,true,true,true); - this.__renderTransform = cacheTransform; - renderer.__popMaskObject(this); - } - } else { - openfl__$internal_renderer_dom_DOMShape.clear(this,renderer); - } - if(this.stage != null && this.__worldVisible && this.__renderable && this.__bitmapData != null && this.__bitmapData.__isValid && this.__bitmapData.readable) { - renderer.__pushMaskObject(this); - if(this.__bitmapData.image.buffer.__srcImage != null) { - openfl__$internal_renderer_dom_DOMBitmap.renderImage(this,renderer); - } else { - openfl__$internal_renderer_dom_DOMBitmap.renderCanvas(this,renderer); - } - renderer.__popMaskObject(this); - } else { - openfl__$internal_renderer_dom_DOMBitmap.clear(this,renderer); - } - } - this.__renderEvent(renderer); - } - ,__renderDOMClear: function(renderer) { - openfl__$internal_renderer_dom_DOMBitmap.clear(this,renderer); - } - ,__renderGL: function(renderer) { - this.__updateCacheBitmap(renderer,false); - if(this.__bitmapData != null && this.__bitmapData.image != null) { - this.__imageVersion = this.__bitmapData.image.version; - } - if(this.__cacheBitmap != null && !this.__isCacheBitmapRender) { - openfl__$internal_renderer_context3D_Context3DBitmap.render(this.__cacheBitmap,renderer); - } else { - if(!(this.opaqueBackground == null && this.__graphics == null)) { - if(!(!this.__renderable || this.__worldAlpha <= 0)) { - if(this.opaqueBackground != null && !this.__isCacheBitmapRender && this.get_width() > 0 && this.get_height() > 0) { - renderer.__setBlendMode(this.__worldBlendMode); - renderer.__pushMaskObject(this); - var context = renderer.__context3D; - var rect = openfl_geom_Rectangle.__pool.get(); - rect.setTo(0,0,this.get_width(),this.get_height()); - renderer.__pushMaskRect(rect,this.__renderTransform); - var color = this.opaqueBackground; - context.clear((color >>> 16 & 255) / 255,(color >>> 8 & 255) / 255,(color & 255) / 255,1,0,0,1); - renderer.__popMaskRect(); - renderer.__popMaskObject(this); - openfl_geom_Rectangle.__pool.release(rect); - } - if(this.__graphics != null) { - openfl__$internal_renderer_context3D_Context3DShape.render(this,renderer); - } - } - } - openfl__$internal_renderer_context3D_Context3DBitmap.render(this,renderer); - } - this.__renderEvent(renderer); - } - ,__renderGLMask: function(renderer) { - openfl__$internal_renderer_context3D_Context3DBitmap.renderMask(this,renderer); - } - ,__updateCacheBitmap: function(renderer,force) { - if(this.__bitmapData == null || this.__filters == null && renderer.__type == "opengl" && this.__cacheBitmap == null) { - return false; - } - return openfl_display_DisplayObject.prototype.__updateCacheBitmap.call(this,renderer,this.__bitmapData.image != null && this.__bitmapData.image.version != this.__imageVersion); - } - ,get_bitmapData: function() { - return this.__bitmapData; - } - ,set_bitmapData: function(value) { - this.__bitmapData = value; - this.smoothing = false; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - var tmp = this.__filters != null; - this.__imageVersion = -1; - return this.__bitmapData; - } - ,set_height: function(value) { - if(this.__bitmapData != null) { - this.set_scaleY(value / this.__bitmapData.height); - } else { - this.set_scaleY(0); - } - return value; - } - ,set_width: function(value) { - if(this.__bitmapData != null) { - this.set_scaleX(value / this.__bitmapData.width); - } else { - this.set_scaleX(0); - } - return value; - } - ,__class__: openfl_display_Bitmap - ,__properties__: $extend(openfl_display_DisplayObject.prototype.__properties__,{set_bitmapData:"set_bitmapData",get_bitmapData:"get_bitmapData"}) -}); -var openfl_display__$BlendMode_BlendMode_$Impl_$ = {}; -$hxClasses["openfl.display._BlendMode.BlendMode_Impl_"] = openfl_display__$BlendMode_BlendMode_$Impl_$; -openfl_display__$BlendMode_BlendMode_$Impl_$.__name__ = "openfl.display._BlendMode.BlendMode_Impl_"; -openfl_display__$BlendMode_BlendMode_$Impl_$.fromString = function(value) { - switch(value) { - case "add": - return 0; - case "alpha": - return 1; - case "darken": - return 2; - case "difference": - return 3; - case "erase": - return 4; - case "hardlight": - return 5; - case "invert": - return 6; - case "layer": - return 7; - case "lighten": - return 8; - case "multiply": - return 9; - case "normal": - return 10; - case "overlay": - return 11; - case "screen": - return 12; - case "shader": - return 13; - case "subtract": - return 14; - default: - return null; - } -}; -openfl_display__$BlendMode_BlendMode_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "add"; - case 1: - return "alpha"; - case 2: - return "darken"; - case 3: - return "difference"; - case 4: - return "erase"; - case 5: - return "hardlight"; - case 6: - return "invert"; - case 7: - return "layer"; - case 8: - return "lighten"; - case 9: - return "multiply"; - case 10: - return "normal"; - case 11: - return "overlay"; - case 12: - return "screen"; - case 13: - return "shader"; - case 14: - return "subtract"; - default: - return null; - } -}; -var openfl_display_DisplayObjectRenderer = function() { - openfl_events_EventDispatcher.call(this); - this.__allowSmoothing = true; - this.__tempColorTransform = new openfl_geom_ColorTransform(); - this.__worldAlpha = 1; -}; -$hxClasses["openfl.display.DisplayObjectRenderer"] = openfl_display_DisplayObjectRenderer; -openfl_display_DisplayObjectRenderer.__name__ = "openfl.display.DisplayObjectRenderer"; -openfl_display_DisplayObjectRenderer.__super__ = openfl_events_EventDispatcher; -openfl_display_DisplayObjectRenderer.prototype = $extend(openfl_events_EventDispatcher.prototype,{ - __allowSmoothing: null - ,__blendMode: null - ,__cleared: null - ,__context: null - ,__overrideBlendMode: null - ,__roundPixels: null - ,__stage: null - ,__tempColorTransform: null - ,__transparent: null - ,__type: null - ,__worldAlpha: null - ,__worldColorTransform: null - ,__worldTransform: null - ,__clear: function() { - } - ,__getAlpha: function(value) { - return value * this.__worldAlpha; - } - ,__getColorTransform: function(value) { - if(this.__worldColorTransform != null) { - this.__tempColorTransform.__copyFrom(this.__worldColorTransform); - this.__tempColorTransform.__combine(value); - return this.__tempColorTransform; - } else { - return value; - } - } - ,__popMask: function() { - } - ,__popMaskObject: function(object,handleScrollRect) { - if(handleScrollRect == null) { - handleScrollRect = true; - } - } - ,__popMaskRect: function() { - } - ,__pushMask: function(mask) { - } - ,__pushMaskObject: function(object,handleScrollRect) { - if(handleScrollRect == null) { - handleScrollRect = true; - } - } - ,__pushMaskRect: function(rect,transform) { - } - ,__render: function(object) { - } - ,__resize: function(width,height) { - } - ,__setBlendMode: function(value) { - } - ,__class__: openfl_display_DisplayObjectRenderer -}); -var openfl_display_CairoRenderer = function(cairo) { - openfl_display_DisplayObjectRenderer.call(this); -}; -$hxClasses["openfl.display.CairoRenderer"] = openfl_display_CairoRenderer; -openfl_display_CairoRenderer.__name__ = "openfl.display.CairoRenderer"; -openfl_display_CairoRenderer.__super__ = openfl_display_DisplayObjectRenderer; -openfl_display_CairoRenderer.prototype = $extend(openfl_display_DisplayObjectRenderer.prototype,{ - cairo: null - ,__matrix: null - ,__matrix3: null - ,applyMatrix: function(transform,cairo) { - if(cairo == null) { - cairo = this.cairo; - } - this.__matrix.copyFrom(transform); - if(this.cairo == cairo && this.__worldTransform != null) { - this.__matrix.concat(this.__worldTransform); - } - this.__matrix3.a = this.__matrix.a; - this.__matrix3.b = this.__matrix.b; - this.__matrix3.c = this.__matrix.c; - this.__matrix3.d = this.__matrix.d; - if(this.__roundPixels) { - this.__matrix3.tx = Math.round(this.__matrix.tx); - this.__matrix3.ty = Math.round(this.__matrix.ty); - } else { - this.__matrix3.tx = this.__matrix.tx; - this.__matrix3.ty = this.__matrix.ty; - } - cairo.set_matrix(this.__matrix3); - } - ,__clear: function() { - if(this.cairo == null) { - return; - } - this.cairo.identityMatrix(); - if(this.__stage != null && this.__stage.__clearBeforeRender) { - var cacheBlendMode = this.__blendMode; - this.__setBlendMode(10); - this.cairo.setSourceRGB(this.__stage.__colorSplit[0],this.__stage.__colorSplit[1],this.__stage.__colorSplit[2]); - this.cairo.paint(); - this.__setBlendMode(cacheBlendMode); - } - } - ,__popMask: function() { - this.cairo.restore(); - } - ,__popMaskObject: function(object,handleScrollRect) { - if(handleScrollRect == null) { - handleScrollRect = true; - } - if(!object.__isCacheBitmapRender && object.__mask != null) { - this.__popMask(); - } - if(handleScrollRect && object.__scrollRect != null) { - this.__popMaskRect(); - } - } - ,__popMaskRect: function() { - this.cairo.restore(); - } - ,__pushMask: function(mask) { - this.cairo.save(); - this.applyMatrix(mask.__renderTransform,this.cairo); - this.cairo.newPath(); - mask.__renderCairoMask(this); - this.cairo.clip(); - } - ,__pushMaskObject: function(object,handleScrollRect) { - if(handleScrollRect == null) { - handleScrollRect = true; - } - if(handleScrollRect && object.__scrollRect != null) { - this.__pushMaskRect(object.__scrollRect,object.__renderTransform); - } - if(!object.__isCacheBitmapRender && object.__mask != null) { - this.__pushMask(object.__mask); - } - } - ,__pushMaskRect: function(rect,transform) { - this.cairo.save(); - this.applyMatrix(transform,this.cairo); - this.cairo.newPath(); - this.cairo.rectangle(rect.x,rect.y,rect.width,rect.height); - this.cairo.clip(); - } - ,__render: function(object) { - if(this.cairo == null) { - return; - } - object.__renderCairo(this); - } - ,__setBlendMode: function(value) { - if(this.__overrideBlendMode != null) { - value = this.__overrideBlendMode; - } - if(this.__blendMode == value) { - return; - } - this.__blendMode = value; - this.__setBlendModeCairo(this.cairo,value); - } - ,__setBlendModeCairo: function(cairo,value) { - switch(value) { - case 0: - cairo.setOperator(12); - break; - case 2: - cairo.setOperator(17); - break; - case 3: - cairo.setOperator(23); - break; - case 5: - cairo.setOperator(21); - break; - case 7: - cairo.setOperator(2); - break; - case 8: - cairo.setOperator(18); - break; - case 9: - cairo.setOperator(14); - break; - case 11: - cairo.setOperator(16); - break; - case 12: - cairo.setOperator(15); - break; - default: - cairo.setOperator(2); - } - } - ,__class__: openfl_display_CairoRenderer -}); -var openfl_display_CanvasRenderer = function(context) { - this.pixelRatio = 1; - openfl_display_DisplayObjectRenderer.call(this); - this.context = context; - this.__tempMatrix = new openfl_geom_Matrix(); - this.__type = "canvas"; -}; -$hxClasses["openfl.display.CanvasRenderer"] = openfl_display_CanvasRenderer; -openfl_display_CanvasRenderer.__name__ = "openfl.display.CanvasRenderer"; -openfl_display_CanvasRenderer.__super__ = openfl_display_DisplayObjectRenderer; -openfl_display_CanvasRenderer.prototype = $extend(openfl_display_DisplayObjectRenderer.prototype,{ - context: null - ,pixelRatio: null - ,__isDOM: null - ,__tempMatrix: null - ,applySmoothing: function(context,value) { - context.imageSmoothingEnabled = value; - } - ,setTransform: function(transform,context) { - if(context == null) { - context = this.context; - } else if(this.context == context && this.__worldTransform != null) { - this.__tempMatrix.copyFrom(transform); - this.__tempMatrix.concat(this.__worldTransform); - transform = this.__tempMatrix; - } - if(this.__roundPixels) { - context.setTransform(transform.a,transform.b,transform.c,transform.d,transform.tx | 0,transform.ty | 0); - } else { - context.setTransform(transform.a,transform.b,transform.c,transform.d,transform.tx,transform.ty); - } - } - ,__clear: function() { - if(this.__stage != null) { - var cacheBlendMode = this.__blendMode; - this.__blendMode = null; - this.__setBlendMode(10); - this.context.setTransform(1,0,0,1,0,0); - this.context.globalAlpha = 1; - if(!this.__stage.__transparent && this.__stage.__clearBeforeRender) { - this.context.fillStyle = this.__stage.__colorString; - this.context.fillRect(0,0,this.__stage.stageWidth * this.__stage.window.__scale,this.__stage.stageHeight * this.__stage.window.__scale); - } else if(this.__stage.__transparent && this.__stage.__clearBeforeRender) { - this.context.clearRect(0,0,this.__stage.stageWidth * this.__stage.window.__scale,this.__stage.stageHeight * this.__stage.window.__scale); - } - this.__setBlendMode(cacheBlendMode); - } - } - ,__popMask: function() { - this.context.restore(); - } - ,__popMaskObject: function(object,handleScrollRect) { - if(handleScrollRect == null) { - handleScrollRect = true; - } - if(!object.__isCacheBitmapRender && object.__mask != null) { - this.__popMask(); - } - if(handleScrollRect && object.__scrollRect != null) { - this.__popMaskRect(); - } - } - ,__popMaskRect: function() { - this.context.restore(); - } - ,__pushMask: function(mask) { - this.context.save(); - this.setTransform(mask.__renderTransform,this.context); - this.context.beginPath(); - mask.__renderCanvasMask(this); - this.context.closePath(); - this.context.clip(); - } - ,__pushMaskObject: function(object,handleScrollRect) { - if(handleScrollRect == null) { - handleScrollRect = true; - } - if(handleScrollRect && object.__scrollRect != null) { - this.__pushMaskRect(object.__scrollRect,object.__renderTransform); - } - if(!object.__isCacheBitmapRender && object.__mask != null) { - this.__pushMask(object.__mask); - } - } - ,__pushMaskRect: function(rect,transform) { - this.context.save(); - this.setTransform(transform,this.context); - this.context.beginPath(); - this.context.rect(rect.x,rect.y,rect.width,rect.height); - this.context.clip(); - } - ,__render: function(object) { - object.__renderCanvas(this); - } - ,__setBlendMode: function(value) { - if(this.__overrideBlendMode != null) { - value = this.__overrideBlendMode; - } - if(this.__blendMode == value) { - return; - } - this.__blendMode = value; - this.__setBlendModeContext(this.context,value); - } - ,__setBlendModeContext: function(context,value) { - switch(value) { - case 0: - context.globalCompositeOperation = "lighter"; - break; - case 2: - context.globalCompositeOperation = "darken"; - break; - case 3: - context.globalCompositeOperation = "difference"; - break; - case 5: - context.globalCompositeOperation = "hard-light"; - break; - case 8: - context.globalCompositeOperation = "lighten"; - break; - case 9: - context.globalCompositeOperation = "multiply"; - break; - case 11: - context.globalCompositeOperation = "overlay"; - break; - case 12: - context.globalCompositeOperation = "screen"; - break; - default: - context.globalCompositeOperation = "source-over"; - } - } - ,__class__: openfl_display_CanvasRenderer -}); -var openfl_display__$CapsStyle_CapsStyle_$Impl_$ = {}; -$hxClasses["openfl.display._CapsStyle.CapsStyle_Impl_"] = openfl_display__$CapsStyle_CapsStyle_$Impl_$; -openfl_display__$CapsStyle_CapsStyle_$Impl_$.__name__ = "openfl.display._CapsStyle.CapsStyle_Impl_"; -openfl_display__$CapsStyle_CapsStyle_$Impl_$.fromInt = function(value) { - return value; -}; -openfl_display__$CapsStyle_CapsStyle_$Impl_$.fromString = function(value) { - switch(value) { - case "none": - return 0; - case "round": - return 1; - case "square": - return 2; - default: - return null; - } -}; -openfl_display__$CapsStyle_CapsStyle_$Impl_$.toInt = function(this1) { - return this1; -}; -openfl_display__$CapsStyle_CapsStyle_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "none"; - case 1: - return "round"; - case 2: - return "square"; - default: - return null; - } -}; -var openfl_display_DOMRenderer = function(element) { - this.pixelRatio = 1; - openfl_display_DisplayObjectRenderer.call(this); - this.element = element; - openfl_display_DisplayObject.__supportDOM = true; - var prefix = (function () { - var styles = window.getComputedStyle(document.documentElement, ''), - pre = (Array.prototype.slice - .call(styles) - .join('') - .match(/-(moz|webkit|ms)-/) || (styles.OLink === '' && ['', 'o']) - )[1], - dom = ('WebKit|Moz|MS|O').match(new RegExp('(' + pre + ')', 'i'))[1]; - return { - dom: dom, - lowercase: pre, - css: '-' + pre + '-', - js: pre[0].toUpperCase() + pre.substr(1) - }; - })(); - this.__vendorPrefix = prefix.lowercase; - this.__transformProperty = prefix.lowercase == "webkit" ? "-webkit-transform" : "transform"; - this.__transformOriginProperty = prefix.lowercase == "webkit" ? "-webkit-transform-origin" : "transform-origin"; - this.__clipRects = []; - this.__numClipRects = 0; - this.__z = 0; - this.__type = "dom"; - this.__canvasRenderer = new openfl_display_CanvasRenderer(null); - this.__canvasRenderer.__isDOM = true; -}; -$hxClasses["openfl.display.DOMRenderer"] = openfl_display_DOMRenderer; -openfl_display_DOMRenderer.__name__ = "openfl.display.DOMRenderer"; -openfl_display_DOMRenderer.__super__ = openfl_display_DisplayObjectRenderer; -openfl_display_DOMRenderer.prototype = $extend(openfl_display_DisplayObjectRenderer.prototype,{ - element: null - ,pixelRatio: null - ,__canvasRenderer: null - ,__clipRects: null - ,__currentClipRect: null - ,__numClipRects: null - ,__transformOriginProperty: null - ,__transformProperty: null - ,__vendorPrefix: null - ,__z: null - ,applyStyle: function(parent,childElement) { - if(parent != null && childElement != null) { - if(parent.__style == null || childElement.parentElement != this.element) { - this.__initializeElement(parent,childElement); - } - parent.__style = childElement.style; - this.__updateClip(parent); - this.__applyStyle(parent,true,true,true); - } - } - ,clearStyle: function(childElement) { - if(childElement != null && childElement.parentElement == this.element) { - this.element.removeChild(childElement); - } - } - ,__applyStyle: function(displayObject,setTransform,setAlpha,setClip) { - var style = displayObject.__style; - if(setTransform && displayObject.__renderTransformChanged) { - var _this = displayObject.__renderTransform; - var roundPixels = this.__roundPixels; - if(roundPixels == null) { - roundPixels = false; - } - style.setProperty(this.__transformProperty,roundPixels ? "matrix3d(" + _this.a + ", " + _this.b + ", 0, 0, " + _this.c + ", " + _this.d + ", 0, 0, 0, 0, 1, 0, " + (_this.tx | 0) + ", " + (_this.ty | 0) + ", 0, 1)" : "matrix3d(" + _this.a + ", " + _this.b + ", 0, 0, " + _this.c + ", " + _this.d + ", 0, 0, 0, 0, 1, 0, " + _this.tx + ", " + _this.ty + ", 0, 1)",null); - } - if(displayObject.__worldZ != ++this.__z) { - displayObject.__worldZ = this.__z; - style.setProperty("z-index",displayObject.__worldZ == null ? "null" : "" + displayObject.__worldZ,null); - } - if(setAlpha && displayObject.__worldAlphaChanged) { - if(displayObject.__worldAlpha < 1) { - style.setProperty("opacity",displayObject.__worldAlpha == null ? "null" : "" + displayObject.__worldAlpha,null); - } else { - style.removeProperty("opacity"); - } - } - if(setClip && displayObject.__worldClipChanged) { - if(displayObject.__worldClip == null) { - style.removeProperty("clip"); - } else { - var clip = displayObject.__worldClip; - style.setProperty("clip","rect(" + clip.y + "px, " + clip.get_right() + "px, " + clip.get_bottom() + "px, " + clip.x + "px)",null); - } - } - } - ,__initializeElement: function(displayObject,element) { - var style = displayObject.__style = element.style; - style.setProperty("position","absolute",null); - style.setProperty("top","0",null); - style.setProperty("left","0",null); - style.setProperty(this.__transformOriginProperty,"0 0 0",null); - this.element.appendChild(element); - displayObject.__worldAlphaChanged = true; - displayObject.__renderTransformChanged = true; - displayObject.__worldVisibleChanged = true; - displayObject.__worldClipChanged = true; - displayObject.__worldClip = null; - displayObject.__worldZ = -1; - } - ,__popMask: function() { - this.__popMaskRect(); - } - ,__popMaskObject: function(object,handleScrollRect) { - if(handleScrollRect == null) { - handleScrollRect = true; - } - if(object.__mask != null) { - this.__popMask(); - } - if(handleScrollRect && object.__scrollRect != null) { - this.__popMaskRect(); - } - } - ,__popMaskRect: function() { - if(this.__numClipRects > 0) { - this.__numClipRects--; - if(this.__numClipRects > 0) { - this.__currentClipRect = this.__clipRects[this.__numClipRects - 1]; - } else { - this.__currentClipRect = null; - } - } - } - ,__pushMask: function(mask) { - this.__pushMaskRect(mask.getBounds(mask),mask.__renderTransform); - } - ,__pushMaskObject: function(object,handleScrollRect) { - if(handleScrollRect == null) { - handleScrollRect = true; - } - if(handleScrollRect && object.__scrollRect != null) { - this.__pushMaskRect(object.__scrollRect,object.__renderTransform); - } - if(object.__mask != null) { - this.__pushMask(object.__mask); - } - } - ,__pushMaskRect: function(rect,transform) { - if(this.__numClipRects == this.__clipRects.length) { - this.__clipRects[this.__numClipRects] = new openfl_geom_Rectangle(); - } - var clipRect = this.__clipRects[this.__numClipRects]; - rect.__transform(clipRect,transform); - if(this.__numClipRects > 0) { - var parentClipRect = this.__clipRects[this.__numClipRects - 1]; - clipRect.__contract(parentClipRect.x,parentClipRect.y,parentClipRect.width,parentClipRect.height); - } - if(clipRect.height < 0) { - clipRect.height = 0; - } - if(clipRect.width < 0) { - clipRect.width = 0; - } - this.__currentClipRect = clipRect; - this.__numClipRects++; - } - ,__render: function(object) { - if(!this.__stage.__transparent) { - this.element.style.background = this.__stage.__colorString; - } else { - this.element.style.background = "none"; - } - this.__z = 1; - object.__renderDOM(this); - } - ,__setBlendMode: function(value) { - if(this.__overrideBlendMode != null) { - value = this.__overrideBlendMode; - } - if(this.__blendMode == value) { - return; - } - this.__blendMode = value; - } - ,__updateClip: function(displayObject) { - if(this.__currentClipRect == null) { - displayObject.__worldClipChanged = displayObject.__worldClip != null; - displayObject.__worldClip = null; - } else { - if(displayObject.__worldClip == null) { - displayObject.__worldClip = new openfl_geom_Rectangle(); - } - var clip = openfl_geom_Rectangle.__pool.get(); - var matrix = openfl_geom_Matrix.__pool.get(); - matrix.copyFrom(displayObject.__renderTransform); - matrix.invert(); - this.__currentClipRect.__transform(clip,matrix); - if(clip.equals(displayObject.__worldClip)) { - displayObject.__worldClipChanged = false; - } else { - displayObject.__worldClip.copyFrom(clip); - displayObject.__worldClipChanged = true; - } - openfl_geom_Rectangle.__pool.release(clip); - openfl_geom_Matrix.__pool.release(matrix); - } - } - ,__class__: openfl_display_DOMRenderer -}); -var openfl_display_DisplayObjectShader = function(code) { - if(this.__glFragmentSource == null) { - this.__glFragmentSource = "varying float openfl_Alphav;\n\t\tvarying vec4 openfl_ColorMultiplierv;\n\t\tvarying vec4 openfl_ColorOffsetv;\n\t\tvarying vec2 openfl_TextureCoordv;\n\n\t\tuniform bool openfl_HasColorTransform;\n\t\tuniform sampler2D openfl_Texture;\n\t\tuniform vec2 openfl_TextureSize;\n\n\t\tvoid main(void) {\n\n\t\t\tvec4 color = texture2D (openfl_Texture, openfl_TextureCoordv);\n\n\t\tif (color.a == 0.0) {\n\n\t\t\tgl_FragColor = vec4 (0.0, 0.0, 0.0, 0.0);\n\n\t\t} else if (openfl_HasColorTransform) {\n\n\t\t\tcolor = vec4 (color.rgb / color.a, color.a);\n\n\t\t\tmat4 colorMultiplier = mat4 (0);\n\t\t\tcolorMultiplier[0][0] = openfl_ColorMultiplierv.x;\n\t\t\tcolorMultiplier[1][1] = openfl_ColorMultiplierv.y;\n\t\t\tcolorMultiplier[2][2] = openfl_ColorMultiplierv.z;\n\t\t\tcolorMultiplier[3][3] = 1.0; // openfl_ColorMultiplierv.w;\n\n\t\t\tcolor = clamp (openfl_ColorOffsetv + (color * colorMultiplier), 0.0, 1.0);\n\n\t\t\tif (color.a > 0.0) {\n\n\t\t\t\tgl_FragColor = vec4 (color.rgb * color.a * openfl_Alphav, color.a * openfl_Alphav);\n\n\t\t\t} else {\n\n\t\t\t\tgl_FragColor = vec4 (0.0, 0.0, 0.0, 0.0);\n\n\t\t\t}\n\n\t\t} else {\n\n\t\t\tgl_FragColor = color * openfl_Alphav;\n\n\t\t}\n\n\t\t}"; - } - if(this.__glVertexSource == null) { - this.__glVertexSource = "attribute float openfl_Alpha;\n\t\tattribute vec4 openfl_ColorMultiplier;\n\t\tattribute vec4 openfl_ColorOffset;\n\t\tattribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\n\t\tvarying float openfl_Alphav;\n\t\tvarying vec4 openfl_ColorMultiplierv;\n\t\tvarying vec4 openfl_ColorOffsetv;\n\t\tvarying vec2 openfl_TextureCoordv;\n\n\t\tuniform mat4 openfl_Matrix;\n\t\tuniform bool openfl_HasColorTransform;\n\t\tuniform vec2 openfl_TextureSize;\n\n\t\tvoid main(void) {\n\n\t\t\topenfl_Alphav = openfl_Alpha;\n\t\topenfl_TextureCoordv = openfl_TextureCoord;\n\n\t\tif (openfl_HasColorTransform) {\n\n\t\t\topenfl_ColorMultiplierv = openfl_ColorMultiplier;\n\t\t\topenfl_ColorOffsetv = openfl_ColorOffset / 255.0;\n\n\t\t}\n\n\t\tgl_Position = openfl_Matrix * openfl_Position;\n\n\t\t}"; - } - openfl_display_Shader.call(this,code); - this.__isGenerated = true; - this.__initGL(); -}; -$hxClasses["openfl.display.DisplayObjectShader"] = openfl_display_DisplayObjectShader; -openfl_display_DisplayObjectShader.__name__ = "openfl.display.DisplayObjectShader"; -openfl_display_DisplayObjectShader.__super__ = openfl_display_Shader; -openfl_display_DisplayObjectShader.prototype = $extend(openfl_display_Shader.prototype,{ - openfl_Alpha: null - ,openfl_ColorMultiplier: null - ,openfl_ColorOffset: null - ,openfl_Position: null - ,openfl_TextureCoord: null - ,openfl_Matrix: null - ,openfl_HasColorTransform: null - ,openfl_TextureSize: null - ,openfl_Texture: null - ,__class__: openfl_display_DisplayObjectShader -}); -var openfl_display_FrameLabel = function(name,frame) { - openfl_events_EventDispatcher.call(this); - this.__name = name; - this.__frame = frame; -}; -$hxClasses["openfl.display.FrameLabel"] = openfl_display_FrameLabel; -openfl_display_FrameLabel.__name__ = "openfl.display.FrameLabel"; -openfl_display_FrameLabel.__super__ = openfl_events_EventDispatcher; -openfl_display_FrameLabel.prototype = $extend(openfl_events_EventDispatcher.prototype,{ - __frame: null - ,__name: null - ,get_frame: function() { - return this.__frame; - } - ,get_name: function() { - return this.__name; - } - ,__class__: openfl_display_FrameLabel - ,__properties__: {get_name:"get_name",get_frame:"get_frame"} -}); -var openfl_display__$GradientType_GradientType_$Impl_$ = {}; -$hxClasses["openfl.display._GradientType.GradientType_Impl_"] = openfl_display__$GradientType_GradientType_$Impl_$; -openfl_display__$GradientType_GradientType_$Impl_$.__name__ = "openfl.display._GradientType.GradientType_Impl_"; -openfl_display__$GradientType_GradientType_$Impl_$.fromInt = function(value) { - return value; -}; -openfl_display__$GradientType_GradientType_$Impl_$.fromString = function(value) { - switch(value) { - case "linear": - return 0; - case "radial": - return 1; - default: - return null; - } -}; -openfl_display__$GradientType_GradientType_$Impl_$.toInt = function(this1) { - return this1; -}; -openfl_display__$GradientType_GradientType_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "linear"; - case 1: - return "radial"; - default: - return null; - } -}; -var openfl_display_Graphics = function(owner) { - this.__dirty = true; - this.__owner = owner; - this.__commands = new openfl__$internal_renderer_DrawCommandBuffer(); - this.__strokePadding = 0; - this.__positionX = 0; - this.__positionY = 0; - this.__renderTransform = new openfl_geom_Matrix(); - this.__usedShaderBuffers = new haxe_ds_List(); - this.__worldTransform = new openfl_geom_Matrix(); - this.__width = 0; - this.__height = 0; - this.__shaderBufferPool = new lime_utils_ObjectPool(function() { - return new openfl__$internal_renderer_ShaderBuffer(); - }); - this.moveTo(0,0); -}; -$hxClasses["openfl.display.Graphics"] = openfl_display_Graphics; -openfl_display_Graphics.__name__ = "openfl.display.Graphics"; -openfl_display_Graphics.prototype = { - __bounds: null - ,__commands: null - ,__dirty: null - ,__hardwareDirty: null - ,__height: null - ,__managed: null - ,__positionX: null - ,__positionY: null - ,__quadBuffer: null - ,__renderTransform: null - ,__shaderBufferPool: null - ,__softwareDirty: null - ,__strokePadding: null - ,__transformDirty: null - ,__triangleIndexBuffer: null - ,__triangleIndexBufferCount: null - ,__triangleIndexBufferData: null - ,__usedShaderBuffers: null - ,__vertexBuffer: null - ,__vertexBufferCount: null - ,__vertexBufferCountUVT: null - ,__vertexBufferData: null - ,__vertexBufferDataUVT: null - ,__vertexBufferUVT: null - ,__visible: null - ,__owner: null - ,__width: null - ,__worldTransform: null - ,__canvas: null - ,__context: null - ,__bitmap: null - ,beginBitmapFill: function(bitmap,matrix,repeat,smooth) { - if(smooth == null) { - smooth = false; - } - if(repeat == null) { - repeat = true; - } - this.__commands.beginBitmapFill(bitmap,matrix != null ? matrix.clone() : null,repeat,smooth); - this.__visible = true; - } - ,beginFill: function(color,alpha) { - if(alpha == null) { - alpha = 1; - } - if(color == null) { - color = 0; - } - this.__commands.beginFill(color & 16777215,alpha); - if(alpha > 0) { - this.__visible = true; - } - } - ,beginGradientFill: function(type,colors,alphas,ratios,matrix,spreadMethod,interpolationMethod,focalPointRatio) { - if(focalPointRatio == null) { - focalPointRatio = 0; - } - if(interpolationMethod == null) { - interpolationMethod = 1; - } - if(spreadMethod == null) { - spreadMethod = 0; - } - if(colors == null || colors.length == 0) { - return; - } - if(alphas == null) { - alphas = []; - var _g = 0; - var _g1 = colors.length; - while(_g < _g1) { - var i = _g++; - alphas.push(1); - } - } - if(ratios == null) { - ratios = []; - var _g2 = 0; - var _g11 = colors.length; - while(_g2 < _g11) { - var i1 = _g2++; - ratios.push(Math.ceil(i1 / colors.length * 255)); - } - } - if(alphas.length < colors.length || ratios.length < colors.length) { - return; - } - this.__commands.beginGradientFill(type,colors,alphas,ratios,matrix,spreadMethod,interpolationMethod,focalPointRatio); - var _g3 = 0; - while(_g3 < alphas.length) { - var alpha = alphas[_g3]; - ++_g3; - if(alpha > 0) { - this.__visible = true; - break; - } - } - } - ,beginShaderFill: function(shader,matrix) { - if(shader != null) { - var shaderBuffer = this.__shaderBufferPool.get(); - this.__usedShaderBuffers.add(shaderBuffer); - shaderBuffer.update(shader); - this.__commands.beginShaderFill(shaderBuffer); - } - } - ,clear: function() { - var _g_head = this.__usedShaderBuffers.h; - while(_g_head != null) { - var val = _g_head.item; - _g_head = _g_head.next; - var shaderBuffer = val; - this.__shaderBufferPool.release(shaderBuffer); - } - this.__usedShaderBuffers.clear(); - this.__commands.clear(); - this.__strokePadding = 0; - if(this.__bounds != null) { - this.set___dirty(true); - this.__transformDirty = true; - this.__bounds = null; - } - this.__visible = false; - this.__positionX = 0; - this.__positionY = 0; - this.moveTo(0,0); - } - ,copyFrom: function(sourceGraphics) { - this.__bounds = sourceGraphics.__bounds != null ? sourceGraphics.__bounds.clone() : null; - this.__commands = sourceGraphics.__commands.copy(); - this.set___dirty(true); - this.__strokePadding = sourceGraphics.__strokePadding; - this.__positionX = sourceGraphics.__positionX; - this.__positionY = sourceGraphics.__positionY; - this.__transformDirty = true; - this.__visible = sourceGraphics.__visible; - } - ,cubicCurveTo: function(controlX1,controlY1,controlX2,controlY2,anchorX,anchorY) { - this.__inflateBounds(this.__positionX - this.__strokePadding,this.__positionY - this.__strokePadding); - this.__inflateBounds(this.__positionX + this.__strokePadding,this.__positionY + this.__strokePadding); - var ix1 = anchorX; - var ix2 = anchorX; - if(!((controlX1 < anchorX && controlX1 > this.__positionX || controlX1 > anchorX && controlX1 < this.__positionX) && (controlX2 < anchorX && controlX2 > this.__positionX || controlX2 > anchorX && controlX2 < this.__positionX))) { - var u = 2 * this.__positionX - 4 * controlX1 + 2 * controlX2; - var v = controlX1 - this.__positionX; - var w = -this.__positionX + 3 * controlX1 + anchorX - 3 * controlX2; - var t1 = (-u + Math.sqrt(u * u - 4 * v * w)) / (2 * w); - var t2 = (-u - Math.sqrt(u * u - 4 * v * w)) / (2 * w); - if(t1 > 0 && t1 < 1) { - ix1 = this.__calculateBezierCubicPoint(t1,this.__positionX,controlX1,controlX2,anchorX); - } - if(t2 > 0 && t2 < 1) { - ix2 = this.__calculateBezierCubicPoint(t2,this.__positionX,controlX1,controlX2,anchorX); - } - } - var iy1 = anchorY; - var iy2 = anchorY; - if(!((controlY1 < anchorY && controlY1 > this.__positionX || controlY1 > anchorY && controlY1 < this.__positionX) && (controlY2 < anchorY && controlY2 > this.__positionX || controlY2 > anchorY && controlY2 < this.__positionX))) { - var u1 = 2 * this.__positionX - 4 * controlY1 + 2 * controlY2; - var v1 = controlY1 - this.__positionX; - var w1 = -this.__positionX + 3 * controlY1 + anchorY - 3 * controlY2; - var t11 = (-u1 + Math.sqrt(u1 * u1 - 4 * v1 * w1)) / (2 * w1); - var t21 = (-u1 - Math.sqrt(u1 * u1 - 4 * v1 * w1)) / (2 * w1); - if(t11 > 0 && t11 < 1) { - iy1 = this.__calculateBezierCubicPoint(t11,this.__positionX,controlY1,controlY2,anchorY); - } - if(t21 > 0 && t21 < 1) { - iy2 = this.__calculateBezierCubicPoint(t21,this.__positionX,controlY1,controlY2,anchorY); - } - } - this.__inflateBounds(ix1 - this.__strokePadding,iy1 - this.__strokePadding); - this.__inflateBounds(ix1 + this.__strokePadding,iy1 + this.__strokePadding); - this.__inflateBounds(ix2 - this.__strokePadding,iy2 - this.__strokePadding); - this.__inflateBounds(ix2 + this.__strokePadding,iy2 + this.__strokePadding); - this.__positionX = anchorX; - this.__positionY = anchorY; - this.__inflateBounds(this.__positionX - this.__strokePadding,this.__positionY - this.__strokePadding); - this.__inflateBounds(this.__positionX + this.__strokePadding,this.__positionY + this.__strokePadding); - this.__commands.cubicCurveTo(controlX1,controlY1,controlX2,controlY2,anchorX,anchorY); - this.set___dirty(true); - } - ,curveTo: function(controlX,controlY,anchorX,anchorY) { - this.__inflateBounds(this.__positionX - this.__strokePadding,this.__positionY - this.__strokePadding); - this.__inflateBounds(this.__positionX + this.__strokePadding,this.__positionY + this.__strokePadding); - var ix; - var iy; - if(controlX < anchorX && controlX > this.__positionX || controlX > anchorX && controlX < this.__positionX) { - ix = anchorX; - } else { - var tx = (this.__positionX - controlX) / (this.__positionX - 2 * controlX + anchorX); - ix = this.__calculateBezierQuadPoint(tx,this.__positionX,controlX,anchorX); - } - if(controlY < anchorY && controlY > this.__positionY || controlY > anchorY && controlY < this.__positionY) { - iy = anchorY; - } else { - var ty = (this.__positionY - controlY) / (this.__positionY - 2 * controlY + anchorY); - iy = this.__calculateBezierQuadPoint(ty,this.__positionY,controlY,anchorY); - } - this.__inflateBounds(ix - this.__strokePadding,iy - this.__strokePadding); - this.__inflateBounds(ix + this.__strokePadding,iy + this.__strokePadding); - this.__positionX = anchorX; - this.__positionY = anchorY; - this.__commands.curveTo(controlX,controlY,anchorX,anchorY); - this.set___dirty(true); - } - ,drawCircle: function(x,y,radius) { - if(radius <= 0) { - return; - } - this.__inflateBounds(x - radius - this.__strokePadding,y - radius - this.__strokePadding); - this.__inflateBounds(x + radius + this.__strokePadding,y + radius + this.__strokePadding); - this.__commands.drawCircle(x,y,radius); - this.set___dirty(true); - } - ,drawEllipse: function(x,y,width,height) { - if(width <= 0 || height <= 0) { - return; - } - this.__inflateBounds(x - this.__strokePadding,y - this.__strokePadding); - this.__inflateBounds(x + width + this.__strokePadding,y + height + this.__strokePadding); - this.__commands.drawEllipse(x,y,width,height); - this.set___dirty(true); - } - ,drawGraphicsData: function(graphicsData) { - var fill; - var bitmapFill; - var gradientFill; - var shaderFill; - var stroke; - var path; - var trianglePath; - var quadPath; - var graphics = graphicsData.iterator(); - while(graphics.hasNext()) { - var graphics1 = graphics.next(); - switch(graphics1.__graphicsDataType) { - case 0: - stroke = graphics1; - if(stroke.fill != null) { - var thickness = stroke.thickness; - if(isNaN(thickness)) { - thickness = null; - } - switch(stroke.fill.__graphicsFillType) { - case 0: - fill = stroke.fill; - this.lineStyle(thickness,fill.color,fill.alpha,stroke.pixelHinting,stroke.scaleMode,stroke.caps,stroke.joints,stroke.miterLimit); - break; - case 1: - gradientFill = stroke.fill; - this.lineStyle(thickness,0,1,stroke.pixelHinting,stroke.scaleMode,stroke.caps,stroke.joints,stroke.miterLimit); - this.lineGradientStyle(gradientFill.type,gradientFill.colors,gradientFill.alphas,gradientFill.ratios,gradientFill.matrix,gradientFill.spreadMethod,gradientFill.interpolationMethod,gradientFill.focalPointRatio); - break; - case 2: - bitmapFill = stroke.fill; - this.lineStyle(thickness,0,1,stroke.pixelHinting,stroke.scaleMode,stroke.caps,stroke.joints,stroke.miterLimit); - this.lineBitmapStyle(bitmapFill.bitmapData,bitmapFill.matrix,bitmapFill.repeat,bitmapFill.smooth); - break; - default: - } - } else { - this.lineStyle(); - } - break; - case 1: - fill = graphics1; - this.beginFill(fill.color,fill.alpha); - break; - case 2: - gradientFill = graphics1; - this.beginGradientFill(gradientFill.type,gradientFill.colors,gradientFill.alphas,gradientFill.ratios,gradientFill.matrix,gradientFill.spreadMethod,gradientFill.interpolationMethod,gradientFill.focalPointRatio); - break; - case 3: - path = graphics1; - this.drawPath(path.commands,path.data,path.winding); - break; - case 4: - bitmapFill = graphics1; - this.beginBitmapFill(bitmapFill.bitmapData,bitmapFill.matrix,bitmapFill.repeat,bitmapFill.smooth); - break; - case 5: - this.endFill(); - break; - case 6: - quadPath = graphics1; - this.drawQuads(quadPath.rects,quadPath.indices,quadPath.transforms); - break; - case 7: - trianglePath = graphics1; - this.drawTriangles(trianglePath.vertices,trianglePath.indices,trianglePath.uvtData,trianglePath.culling); - break; - case 8: - shaderFill = graphics1; - this.beginShaderFill(shaderFill.shader,shaderFill.matrix); - break; - } - } - } - ,drawPath: function(commands,data,winding) { - if(winding == null) { - winding = 0; - } - var dataIndex = 0; - if(winding == 1) { - this.__commands.windingNonZero(); - } - var command = commands.iterator(); - _hx_loop1: while(command.hasNext()) { - var command1 = command.next(); - switch(command1) { - case 1: - this.moveTo(data.get(dataIndex),data.get(dataIndex + 1)); - dataIndex += 2; - break; - case 2: - this.lineTo(data.get(dataIndex),data.get(dataIndex + 1)); - dataIndex += 2; - break; - case 3: - this.curveTo(data.get(dataIndex),data.get(dataIndex + 1),data.get(dataIndex + 2),data.get(dataIndex + 3)); - dataIndex += 4; - break; - case 4: - this.moveTo(data.get(dataIndex + 2),data.get(dataIndex + 3)); - break _hx_loop1; - case 5: - this.lineTo(data.get(dataIndex + 2),data.get(dataIndex + 3)); - break _hx_loop1; - case 6: - this.cubicCurveTo(data.get(dataIndex),data.get(dataIndex + 1),data.get(dataIndex + 2),data.get(dataIndex + 3),data.get(dataIndex + 4),data.get(dataIndex + 5)); - dataIndex += 6; - break; - default: - } - } - } - ,drawQuads: function(rects,indices,transforms) { - if(rects == null) { - return; - } - var hasIndices = indices != null; - var transformABCD = false; - var transformXY = false; - var length = hasIndices ? indices.get_length() : Math.floor(rects.get_length() / 4); - if(length == 0) { - return; - } - if(transforms != null) { - if(transforms.get_length() >= length * 6) { - transformABCD = true; - transformXY = true; - } else if(transforms.get_length() >= length * 4) { - transformABCD = true; - } else if(transforms.get_length() >= length * 2) { - transformXY = true; - } - } - var tileRect = openfl_geom_Rectangle.__pool.get(); - var tileTransform = openfl_geom_Matrix.__pool.get(); - var minX = Infinity; - var minY = Infinity; - var maxX = -Infinity; - var maxY = -Infinity; - var ri; - var ti; - var _g = 0; - var _g1 = length; - while(_g < _g1) { - var i = _g++; - ri = hasIndices ? indices.get(i) * 4 : i * 4; - if(ri < 0) { - continue; - } - tileRect.setTo(0,0,rects.get(ri + 2),rects.get(ri + 3)); - if(tileRect.width <= 0 || tileRect.height <= 0) { - continue; - } - if(transformABCD && transformXY) { - ti = i * 6; - tileTransform.setTo(transforms.get(ti),transforms.get(ti + 1),transforms.get(ti + 2),transforms.get(ti + 3),transforms.get(ti + 4),transforms.get(ti + 5)); - } else if(transformABCD) { - ti = i * 4; - tileTransform.setTo(transforms.get(ti),transforms.get(ti + 1),transforms.get(ti + 2),transforms.get(ti + 3),tileRect.x,tileRect.y); - } else if(transformXY) { - ti = i * 2; - tileTransform.tx = transforms.get(ti); - tileTransform.ty = transforms.get(ti + 1); - } else { - tileTransform.tx = tileRect.x; - tileTransform.ty = tileRect.y; - } - tileRect.__transform(tileRect,tileTransform); - if(minX > tileRect.x) { - minX = tileRect.x; - } - if(minY > tileRect.y) { - minY = tileRect.y; - } - if(maxX < tileRect.get_right()) { - maxX = tileRect.get_right(); - } - if(maxY < tileRect.get_bottom()) { - maxY = tileRect.get_bottom(); - } - } - this.__inflateBounds(minX,minY); - this.__inflateBounds(maxX,maxY); - this.__commands.drawQuads(rects,indices,transforms); - this.set___dirty(true); - this.__visible = true; - openfl_geom_Rectangle.__pool.release(tileRect); - openfl_geom_Matrix.__pool.release(tileTransform); - } - ,drawRect: function(x,y,width,height) { - if(width == 0 && height == 0) { - return; - } - var xSign = width < 0 ? -1 : 1; - var ySign = height < 0 ? -1 : 1; - this.__inflateBounds(x - this.__strokePadding * xSign,y - this.__strokePadding * ySign); - this.__inflateBounds(x + width + this.__strokePadding * xSign,y + height + this.__strokePadding * ySign); - this.__commands.drawRect(x,y,width,height); - this.set___dirty(true); - } - ,drawRoundRect: function(x,y,width,height,ellipseWidth,ellipseHeight) { - if(width == 0 && height == 0) { - return; - } - var xSign = width < 0 ? -1 : 1; - var ySign = height < 0 ? -1 : 1; - this.__inflateBounds(x - this.__strokePadding * xSign,y - this.__strokePadding * ySign); - this.__inflateBounds(x + width + this.__strokePadding * xSign,y + height + this.__strokePadding * ySign); - this.__commands.drawRoundRect(x,y,width,height,ellipseWidth,ellipseHeight); - this.set___dirty(true); - } - ,drawRoundRectComplex: function(x,y,width,height,topLeftRadius,topRightRadius,bottomLeftRadius,bottomRightRadius) { - if(width <= 0 || height <= 0) { - return; - } - this.__inflateBounds(x - this.__strokePadding,y - this.__strokePadding); - this.__inflateBounds(x + width + this.__strokePadding,y + height + this.__strokePadding); - var xw = x + width; - var yh = y + height; - var minSize = width < height ? width * 2 : height * 2; - topLeftRadius = topLeftRadius < minSize ? topLeftRadius : minSize; - topRightRadius = topRightRadius < minSize ? topRightRadius : minSize; - bottomLeftRadius = bottomLeftRadius < minSize ? bottomLeftRadius : minSize; - bottomRightRadius = bottomRightRadius < minSize ? bottomRightRadius : minSize; - var anchor = 1 - Math.sin(45 * (Math.PI / 180)); - var control = 1 - Math.tan(22.5 * (Math.PI / 180)); - var a = bottomRightRadius * anchor; - var s = bottomRightRadius * control; - this.moveTo(xw,yh - bottomRightRadius); - this.curveTo(xw,yh - s,xw - a,yh - a); - this.curveTo(xw - s,yh,xw - bottomRightRadius,yh); - a = bottomLeftRadius * anchor; - s = bottomLeftRadius * control; - this.lineTo(x + bottomLeftRadius,yh); - this.curveTo(x + s,yh,x + a,yh - a); - this.curveTo(x,yh - s,x,yh - bottomLeftRadius); - a = topLeftRadius * anchor; - s = topLeftRadius * control; - this.lineTo(x,y + topLeftRadius); - this.curveTo(x,y + s,x + a,y + a); - this.curveTo(x + s,y,x + topLeftRadius,y); - a = topRightRadius * anchor; - s = topRightRadius * control; - this.lineTo(xw - topRightRadius,y); - this.curveTo(xw - s,y,xw - a,y + a); - this.curveTo(xw,y + s,xw,y + topRightRadius); - this.lineTo(xw,yh - bottomRightRadius); - this.set___dirty(true); - } - ,drawTriangles: function(vertices,indices,uvtData,culling) { - if(culling == null) { - culling = 1; - } - if(vertices == null || vertices.get_length() == 0) { - return; - } - var vertLength = vertices.get_length() / 2 | 0; - if(indices == null) { - if(vertLength % 3 != 0) { - throw new js__$Boot_HaxeError(new openfl_errors_ArgumentError("Not enough vertices to close a triangle.")); - } - indices = openfl__$Vector_Vector_$Impl_$.toIntVector(null); - var _g = 0; - var _g1 = vertLength; - while(_g < _g1) { - var i = _g++; - indices.push(i); - } - } - if(culling == null) { - culling = 1; - } - var x; - var y; - var minX = Infinity; - var minY = Infinity; - var maxX = -Infinity; - var maxY = -Infinity; - var _g2 = 0; - var _g11 = vertLength; - while(_g2 < _g11) { - var i1 = _g2++; - x = vertices.get(i1 * 2); - y = vertices.get(i1 * 2 + 1); - if(minX > x) { - minX = x; - } - if(minY > y) { - minY = y; - } - if(maxX < x) { - maxX = x; - } - if(maxY < y) { - maxY = y; - } - } - this.__inflateBounds(minX,minY); - this.__inflateBounds(maxX,maxY); - this.__commands.drawTriangles(vertices,indices,uvtData,culling); - this.set___dirty(true); - this.__visible = true; - } - ,endFill: function() { - this.__commands.endFill(); - } - ,lineBitmapStyle: function(bitmap,matrix,repeat,smooth) { - if(smooth == null) { - smooth = false; - } - if(repeat == null) { - repeat = true; - } - this.__commands.lineBitmapStyle(bitmap,matrix != null ? matrix.clone() : null,repeat,smooth); - } - ,lineGradientStyle: function(type,colors,alphas,ratios,matrix,spreadMethod,interpolationMethod,focalPointRatio) { - if(focalPointRatio == null) { - focalPointRatio = 0; - } - if(interpolationMethod == null) { - interpolationMethod = 1; - } - if(spreadMethod == null) { - spreadMethod = 0; - } - this.__commands.lineGradientStyle(type,colors,alphas,ratios,matrix,spreadMethod,interpolationMethod,focalPointRatio); - } - ,lineStyle: function(thickness,color,alpha,pixelHinting,scaleMode,caps,joints,miterLimit) { - if(miterLimit == null) { - miterLimit = 3; - } - if(scaleMode == null) { - scaleMode = 2; - } - if(pixelHinting == null) { - pixelHinting = false; - } - if(alpha == null) { - alpha = 1; - } - if(color == null) { - color = 0; - } - if(thickness != null) { - if(joints == 1) { - if(thickness > this.__strokePadding) { - this.__strokePadding = thickness; - } - } else if(thickness / 2 > this.__strokePadding) { - this.__strokePadding = thickness / 2; - } - } - this.__commands.lineStyle(thickness,color,alpha,pixelHinting,scaleMode,caps,joints,miterLimit); - if(thickness != null) { - this.__visible = true; - } - } - ,lineTo: function(x,y) { - if(!isFinite(x) || !isFinite(y)) { - return; - } - this.__inflateBounds(this.__positionX - this.__strokePadding,this.__positionY - this.__strokePadding); - this.__inflateBounds(this.__positionX + this.__strokePadding,this.__positionY + this.__strokePadding); - this.__positionX = x; - this.__positionY = y; - this.__inflateBounds(this.__positionX - this.__strokePadding,this.__positionY - this.__strokePadding); - this.__inflateBounds(this.__positionX + this.__strokePadding * 2,this.__positionY + this.__strokePadding); - this.__commands.lineTo(x,y); - this.set___dirty(true); - } - ,moveTo: function(x,y) { - this.__positionX = x; - this.__positionY = y; - this.__commands.moveTo(x,y); - } - ,overrideBlendMode: function(blendMode) { - if(blendMode == null) { - blendMode = 10; - } - this.__commands.overrideBlendMode(blendMode); - } - ,readGraphicsData: function(recurse) { - if(recurse == null) { - recurse = true; - } - var graphicsData = openfl__$Vector_Vector_$Impl_$.toObjectVector(null); - this.__owner.__readGraphicsData(graphicsData,recurse); - return graphicsData; - } - ,__calculateBezierCubicPoint: function(t,p1,p2,p3,p4) { - var iT = 1 - t; - return p1 * (iT * iT * iT) + 3 * p2 * t * (iT * iT) + 3 * p3 * iT * (t * t) + p4 * (t * t * t); - } - ,__calculateBezierQuadPoint: function(t,p1,p2,p3) { - var iT = 1 - t; - return iT * iT * p1 + 2 * iT * t * p2 + t * t * p3; - } - ,__cleanup: function() { - if(this.__bounds != null && this.__canvas != null) { - this.set___dirty(true); - this.__transformDirty = true; - } - this.__bitmap = null; - this.__canvas = null; - this.__context = null; - } - ,__getBounds: function(rect,matrix) { - if(this.__bounds == null) { - return; - } - var bounds = openfl_geom_Rectangle.__pool.get(); - this.__bounds.__transform(bounds,matrix); - rect.__expand(bounds.x,bounds.y,bounds.width,bounds.height); - openfl_geom_Rectangle.__pool.release(bounds); - } - ,__hitTest: function(x,y,shapeFlag,matrix) { - if(this.__bounds == null) { - return false; - } - var norm = matrix.a * matrix.d - matrix.b * matrix.c; - var px = norm == 0 ? -matrix.tx : 1.0 / norm * (matrix.c * (matrix.ty - y) + matrix.d * (x - matrix.tx)); - var norm1 = matrix.a * matrix.d - matrix.b * matrix.c; - var py = norm1 == 0 ? -matrix.ty : 1.0 / norm1 * (matrix.a * (y - matrix.ty) + matrix.b * (matrix.tx - x)); - if(px > this.__bounds.x && py > this.__bounds.y && this.__bounds.contains(px,py)) { - if(shapeFlag) { - return openfl__$internal_renderer_canvas_CanvasGraphics.hitTest(this,px,py); - } - return true; - } - return false; - } - ,__inflateBounds: function(x,y) { - if(this.__bounds == null) { - this.__bounds = new openfl_geom_Rectangle(x,y,0,0); - this.__transformDirty = true; - return; - } - if(x < this.__bounds.x) { - this.__bounds.width += this.__bounds.x - x; - this.__bounds.x = x; - this.__transformDirty = true; - } - if(y < this.__bounds.y) { - this.__bounds.height += this.__bounds.y - y; - this.__bounds.y = y; - this.__transformDirty = true; - } - if(x > this.__bounds.x + this.__bounds.width) { - this.__bounds.width = x - this.__bounds.x; - } - if(y > this.__bounds.y + this.__bounds.height) { - this.__bounds.height = y - this.__bounds.y; - } - } - ,__readGraphicsData: function(graphicsData) { - var data = new openfl__$internal_renderer_DrawCommandReader(this.__commands); - var path = null; - var stroke; - var _g = 0; - var _g1 = this.__commands.types; - while(_g < _g1.length) { - var type = _g1[_g]; - ++_g; - switch(type._hx_index) { - case 4:case 5:case 6:case 7:case 9:case 10:case 17:case 18: - if(path == null) { - path = new openfl_display_GraphicsPath(); - } - break; - default: - if(path != null) { - graphicsData.push(path); - path = null; - } - } - switch(type._hx_index) { - case 0: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_BITMAP_FILL; - var this1 = data; - var c = this1; - graphicsData.push(new openfl_display_GraphicsBitmapFill(c.buffer.o[c.oPos],c.buffer.o[c.oPos + 1],c.buffer.b[c.bPos],c.buffer.b[c.bPos + 1])); - break; - case 1: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_FILL; - var this2 = data; - var c1 = this2; - graphicsData.push(new openfl_display_GraphicsSolidFill(c1.buffer.i[c1.iPos],1)); - break; - case 2: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.BEGIN_GRADIENT_FILL; - var this3 = data; - var c2 = this3; - graphicsData.push(new openfl_display_GraphicsGradientFill(c2.buffer.o[c2.oPos],c2.buffer.ii[c2.iiPos],c2.buffer.ff[c2.ffPos],c2.buffer.ii[c2.iiPos + 1],c2.buffer.o[c2.oPos + 1],c2.buffer.o[c2.oPos + 2],c2.buffer.o[c2.oPos + 3],c2.buffer.f[c2.fPos])); - break; - case 3: - break; - case 4: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.CUBIC_CURVE_TO; - var this4 = data; - var c3 = this4; - path.cubicCurveTo(c3.buffer.f[c3.fPos],c3.buffer.f[c3.fPos + 1],c3.buffer.f[c3.fPos + 2],c3.buffer.f[c3.fPos + 3],c3.buffer.f[c3.fPos + 4],c3.buffer.f[c3.fPos + 5]); - break; - case 5: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.CURVE_TO; - var this5 = data; - var c4 = this5; - path.curveTo(c4.buffer.f[c4.fPos],c4.buffer.f[c4.fPos + 1],c4.buffer.f[c4.fPos + 2],c4.buffer.f[c4.fPos + 3]); - break; - case 6: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_CIRCLE; - var this6 = data; - var c5 = this6; - path.__drawCircle(c5.buffer.f[c5.fPos],c5.buffer.f[c5.fPos + 1],c5.buffer.f[c5.fPos + 2]); - break; - case 7: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_ELLIPSE; - var this7 = data; - var c6 = this7; - path.__drawEllipse(c6.buffer.f[c6.fPos],c6.buffer.f[c6.fPos + 1],c6.buffer.f[c6.fPos + 2],c6.buffer.f[c6.fPos + 3]); - break; - case 9: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_RECT; - var this8 = data; - var c7 = this8; - path.__drawRect(c7.buffer.f[c7.fPos],c7.buffer.f[c7.fPos + 1],c7.buffer.f[c7.fPos + 2],c7.buffer.f[c7.fPos + 3]); - break; - case 10: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.DRAW_ROUND_RECT; - var this9 = data; - var c8 = this9; - path.__drawRoundRect(c8.buffer.f[c8.fPos],c8.buffer.f[c8.fPos + 1],c8.buffer.f[c8.fPos + 2],c8.buffer.f[c8.fPos + 3],c8.buffer.f[c8.fPos + 4],c8.buffer.o[c8.oPos] != null ? c8.buffer.o[c8.oPos] : c8.buffer.f[c8.fPos + 4]); - break; - case 13: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.END_FILL; - var this10 = data; - graphicsData.push(new openfl_display_GraphicsEndFill()); - break; - case 14: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_BITMAP_STYLE; - var this11 = data; - var c9 = this11; - path = null; - break; - case 15: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_GRADIENT_STYLE; - var this12 = data; - var c10 = this12; - break; - case 16: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_STYLE; - var this13 = data; - var c11 = this13; - stroke = new openfl_display_GraphicsStroke(c11.buffer.o[c11.oPos],c11.buffer.b[c11.bPos],c11.buffer.o[c11.oPos + 1],c11.buffer.o[c11.oPos + 2],c11.buffer.o[c11.oPos + 3],c11.buffer.f[c11.fPos + 1]); - stroke.fill = new openfl_display_GraphicsSolidFill(c11.buffer.i[c11.iPos],c11.buffer.f[c11.fPos]); - graphicsData.push(stroke); - break; - case 17: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.LINE_TO; - var this14 = data; - var c12 = this14; - path.lineTo(c12.buffer.f[c12.fPos],c12.buffer.f[c12.fPos + 1]); - break; - case 18: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = openfl__$internal_renderer_DrawCommandType.MOVE_TO; - var this15 = data; - var c13 = this15; - path.moveTo(c13.buffer.f[c13.fPos],c13.buffer.f[c13.fPos + 1]); - break; - default: - switch(data.prev._hx_index) { - case 0: - data.oPos += 2; - data.bPos += 2; - break; - case 1: - data.iPos += 1; - data.fPos += 1; - break; - case 2: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 3: - data.oPos += 1; - break; - case 4: - data.fPos += 6; - break; - case 5: - data.fPos += 4; - break; - case 6: - data.fPos += 3; - break; - case 7: - data.fPos += 4; - break; - case 8: - data.oPos += 3; - break; - case 9: - data.fPos += 4; - break; - case 10: - data.fPos += 5; - data.oPos += 1; - break; - case 12: - data.oPos += 4; - break; - case 13: - break; - case 14: - data.oPos += 2; - data.bPos += 2; - break; - case 15: - data.oPos += 4; - data.iiPos += 2; - data.ffPos += 1; - data.fPos += 1; - break; - case 16: - data.oPos += 4; - data.iPos += 1; - data.fPos += 2; - data.bPos += 1; - break; - case 17: - data.fPos += 2; - break; - case 18: - data.fPos += 2; - break; - case 19: - data.oPos += 1; - break; - case 20: - data.oPos += 1; - break; - case 21:case 22: - break; - default: - } - data.prev = type; - } - } - if(path != null) { - graphicsData.push(path); - } - } - ,__update: function(displayMatrix) { - if(this.__bounds == null || this.__bounds.width <= 0 || this.__bounds.height <= 0) { - return; - } - var parentTransform = this.__owner.__renderTransform; - var scaleX = 1.0; - var scaleY = 1.0; - if(parentTransform != null) { - if(parentTransform.b == 0) { - scaleX = Math.abs(parentTransform.a); - } else { - scaleX = Math.sqrt(parentTransform.a * parentTransform.a + parentTransform.b * parentTransform.b); - } - if(parentTransform.c == 0) { - scaleY = Math.abs(parentTransform.d); - } else { - scaleY = Math.sqrt(parentTransform.c * parentTransform.c + parentTransform.d * parentTransform.d); - } - } else { - return; - } - if(displayMatrix != null) { - if(displayMatrix.b == 0) { - scaleX *= displayMatrix.a; - } else { - scaleX *= Math.sqrt(displayMatrix.a * displayMatrix.a + displayMatrix.b * displayMatrix.b); - } - if(displayMatrix.c == 0) { - scaleY *= displayMatrix.d; - } else { - scaleY *= Math.sqrt(displayMatrix.c * displayMatrix.c + displayMatrix.d * displayMatrix.d); - } - } - var width = this.__bounds.width * scaleX; - var height = this.__bounds.height * scaleY; - if(width < 1 || height < 1) { - if(this.__width >= 1 || this.__height >= 1) { - this.set___dirty(true); - } - this.__width = 0; - this.__height = 0; - return; - } - if(openfl_display_Graphics.maxTextureWidth != null && width > openfl_display_Graphics.maxTextureWidth) { - width = openfl_display_Graphics.maxTextureWidth; - scaleX = openfl_display_Graphics.maxTextureWidth / this.__bounds.width; - } - if(openfl_display_Graphics.maxTextureWidth != null && height > openfl_display_Graphics.maxTextureHeight) { - height = openfl_display_Graphics.maxTextureHeight; - scaleY = openfl_display_Graphics.maxTextureHeight / this.__bounds.height; - } - this.__renderTransform.a = width / this.__bounds.width; - this.__renderTransform.d = height / this.__bounds.height; - var inverseA = 1 / this.__renderTransform.a; - var inverseD = 1 / this.__renderTransform.d; - this.__worldTransform.a = inverseA * parentTransform.a; - this.__worldTransform.b = inverseA * parentTransform.b; - this.__worldTransform.c = inverseD * parentTransform.c; - this.__worldTransform.d = inverseD * parentTransform.d; - var x = this.__bounds.x; - var y = this.__bounds.y; - var tx = x * parentTransform.a + y * parentTransform.c + parentTransform.tx; - var ty = x * parentTransform.b + y * parentTransform.d + parentTransform.ty; - this.__worldTransform.tx = Math.floor(tx); - this.__worldTransform.ty = Math.floor(ty); - var _this = this.__worldTransform; - var norm = _this.a * _this.d - _this.b * _this.c; - this.__renderTransform.tx = norm == 0 ? -_this.tx : 1.0 / norm * (_this.c * (_this.ty - ty) + _this.d * (tx - _this.tx)); - var _this1 = this.__worldTransform; - var norm1 = _this1.a * _this1.d - _this1.b * _this1.c; - this.__renderTransform.ty = norm1 == 0 ? -_this1.ty : 1.0 / norm1 * (_this1.a * (ty - _this1.ty) + _this1.b * (_this1.tx - tx)); - var newWidth = Math.ceil(width + 1.0); - var newHeight = Math.ceil(height + 1.0); - if(newWidth != this.__width || newHeight != this.__height) { - this.set___dirty(true); - } - this.__width = newWidth; - this.__height = newHeight; - } - ,set___dirty: function(value) { - if(value && this.__owner != null) { - var _this = this.__owner; - if(!_this.__renderDirty) { - _this.__renderDirty = true; - _this.__setParentRenderDirty(); - } - } - if(value) { - this.__softwareDirty = true; - this.__hardwareDirty = true; - } - return this.__dirty = value; - } - ,__class__: openfl_display_Graphics - ,__properties__: {set___dirty:"set___dirty"} -}; -var openfl_display_IGraphicsFill = function() { }; -$hxClasses["openfl.display.IGraphicsFill"] = openfl_display_IGraphicsFill; -openfl_display_IGraphicsFill.__name__ = "openfl.display.IGraphicsFill"; -openfl_display_IGraphicsFill.__isInterface__ = true; -openfl_display_IGraphicsFill.prototype = { - __graphicsFillType: null - ,__class__: openfl_display_IGraphicsFill -}; -var openfl_display_IGraphicsData = function() { }; -$hxClasses["openfl.display.IGraphicsData"] = openfl_display_IGraphicsData; -openfl_display_IGraphicsData.__name__ = "openfl.display.IGraphicsData"; -openfl_display_IGraphicsData.__isInterface__ = true; -openfl_display_IGraphicsData.prototype = { - __graphicsDataType: null - ,__class__: openfl_display_IGraphicsData -}; -var openfl_display_GraphicsBitmapFill = function(bitmapData,matrix,repeat,smooth) { - if(smooth == null) { - smooth = false; - } - if(repeat == null) { - repeat = true; - } - this.bitmapData = bitmapData; - this.matrix = matrix; - this.repeat = repeat; - this.smooth = smooth; - this.__graphicsDataType = 4; - this.__graphicsFillType = 2; -}; -$hxClasses["openfl.display.GraphicsBitmapFill"] = openfl_display_GraphicsBitmapFill; -openfl_display_GraphicsBitmapFill.__name__ = "openfl.display.GraphicsBitmapFill"; -openfl_display_GraphicsBitmapFill.__interfaces__ = [openfl_display_IGraphicsFill,openfl_display_IGraphicsData]; -openfl_display_GraphicsBitmapFill.prototype = { - bitmapData: null - ,matrix: null - ,repeat: null - ,smooth: null - ,__graphicsDataType: null - ,__graphicsFillType: null - ,__class__: openfl_display_GraphicsBitmapFill -}; -var openfl_display_GraphicsEndFill = function() { - this.__graphicsDataType = 5; - this.__graphicsFillType = 3; -}; -$hxClasses["openfl.display.GraphicsEndFill"] = openfl_display_GraphicsEndFill; -openfl_display_GraphicsEndFill.__name__ = "openfl.display.GraphicsEndFill"; -openfl_display_GraphicsEndFill.__interfaces__ = [openfl_display_IGraphicsFill,openfl_display_IGraphicsData]; -openfl_display_GraphicsEndFill.prototype = { - __graphicsDataType: null - ,__graphicsFillType: null - ,__class__: openfl_display_GraphicsEndFill -}; -var openfl_display_GraphicsGradientFill = function(type,colors,alphas,ratios,matrix,spreadMethod,interpolationMethod,focalPointRatio) { - if(focalPointRatio == null) { - focalPointRatio = 0; - } - if(type == null) { - type = 0; - } - if(spreadMethod == null) { - spreadMethod = 0; - } - if(interpolationMethod == null) { - interpolationMethod = 1; - } - this.type = type; - this.colors = colors; - this.alphas = alphas; - this.ratios = ratios; - this.matrix = matrix; - this.spreadMethod = spreadMethod; - this.interpolationMethod = interpolationMethod; - this.focalPointRatio = focalPointRatio; - this.__graphicsDataType = 2; - this.__graphicsFillType = 1; -}; -$hxClasses["openfl.display.GraphicsGradientFill"] = openfl_display_GraphicsGradientFill; -openfl_display_GraphicsGradientFill.__name__ = "openfl.display.GraphicsGradientFill"; -openfl_display_GraphicsGradientFill.__interfaces__ = [openfl_display_IGraphicsFill,openfl_display_IGraphicsData]; -openfl_display_GraphicsGradientFill.prototype = { - alphas: null - ,colors: null - ,focalPointRatio: null - ,interpolationMethod: null - ,matrix: null - ,ratios: null - ,spreadMethod: null - ,type: null - ,__graphicsDataType: null - ,__graphicsFillType: null - ,__class__: openfl_display_GraphicsGradientFill -}; -var openfl_display_IGraphicsPath = function() { }; -$hxClasses["openfl.display.IGraphicsPath"] = openfl_display_IGraphicsPath; -openfl_display_IGraphicsPath.__name__ = "openfl.display.IGraphicsPath"; -openfl_display_IGraphicsPath.__isInterface__ = true; -var openfl_display_GraphicsPath = function(commands,data,winding) { - if(winding == null) { - winding = 0; - } - this.commands = commands; - this.data = data; - this.winding = winding; - this.__graphicsDataType = 3; -}; -$hxClasses["openfl.display.GraphicsPath"] = openfl_display_GraphicsPath; -openfl_display_GraphicsPath.__name__ = "openfl.display.GraphicsPath"; -openfl_display_GraphicsPath.__interfaces__ = [openfl_display_IGraphicsPath,openfl_display_IGraphicsData]; -openfl_display_GraphicsPath.prototype = { - commands: null - ,data: null - ,winding: null - ,__graphicsDataType: null - ,cubicCurveTo: function(controlX1,controlY1,controlX2,controlY2,anchorX,anchorY) { - if(this.commands == null) { - this.commands = openfl__$Vector_Vector_$Impl_$.toIntVector(null); - } - if(this.data == null) { - this.data = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - } - this.commands.push(6); - this.data.push(controlX1); - this.data.push(controlY1); - this.data.push(controlX2); - this.data.push(controlY2); - this.data.push(anchorX); - this.data.push(anchorY); - } - ,curveTo: function(controlX,controlY,anchorX,anchorY) { - if(this.commands == null) { - this.commands = openfl__$Vector_Vector_$Impl_$.toIntVector(null); - } - if(this.data == null) { - this.data = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - } - this.commands.push(3); - this.data.push(controlX); - this.data.push(controlY); - this.data.push(anchorX); - this.data.push(anchorY); - } - ,lineTo: function(x,y) { - if(this.commands == null) { - this.commands = openfl__$Vector_Vector_$Impl_$.toIntVector(null); - } - if(this.data == null) { - this.data = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - } - this.commands.push(2); - this.data.push(x); - this.data.push(y); - } - ,moveTo: function(x,y) { - if(this.commands == null) { - this.commands = openfl__$Vector_Vector_$Impl_$.toIntVector(null); - } - if(this.data == null) { - this.data = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - } - this.commands.push(1); - this.data.push(x); - this.data.push(y); - } - ,wideLineTo: function(x,y) { - if(this.commands == null) { - this.commands = openfl__$Vector_Vector_$Impl_$.toIntVector(null); - } - if(this.data == null) { - this.data = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - } - this.commands.push(2); - this.data.push(x); - this.data.push(y); - } - ,wideMoveTo: function(x,y) { - if(this.commands == null) { - this.commands = openfl__$Vector_Vector_$Impl_$.toIntVector(null); - } - if(this.data == null) { - this.data = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); - } - this.commands.push(1); - this.data.push(x); - this.data.push(y); - } - ,__drawCircle: function(x,y,radius) { - this.__drawRoundRect(x - radius,y - radius,radius * 2,radius * 2,radius * 2,radius * 2); - } - ,__drawEllipse: function(x,y,width,height) { - this.__drawRoundRect(x,y,width,height,width,height); - } - ,__drawRect: function(x,y,width,height) { - this.moveTo(x,y); - this.lineTo(x + width,y); - this.lineTo(x + width,y + height); - this.lineTo(x,y + height); - this.lineTo(x,y); - } - ,__drawRoundRect: function(x,y,width,height,ellipseWidth,ellipseHeight) { - ellipseWidth *= 0.5; - ellipseHeight *= 0.5; - if(ellipseWidth > width / 2) { - ellipseWidth = width / 2; - } - if(ellipseHeight > height / 2) { - ellipseHeight = height / 2; - } - var xe = x + width; - var ye = y + height; - var cx1 = -ellipseWidth + ellipseWidth * 0.70710678118654752440084436210485; - var cx2 = -ellipseWidth + ellipseWidth * 0.4142135623730950488016887242097; - var cy1 = -ellipseHeight + ellipseHeight * 0.70710678118654752440084436210485; - var cy2 = -ellipseHeight + ellipseHeight * 0.4142135623730950488016887242097; - this.moveTo(xe,ye - ellipseHeight); - this.curveTo(xe,ye + cy2,xe + cx1,ye + cy1); - this.curveTo(xe + cx2,ye,xe - ellipseWidth,ye); - this.lineTo(x + ellipseWidth,ye); - this.curveTo(x - cx2,ye,x - cx1,ye + cy1); - this.curveTo(x,ye + cy2,x,ye - ellipseHeight); - this.lineTo(x,y + ellipseHeight); - this.curveTo(x,y - cy2,x - cx1,y - cy1); - this.curveTo(x - cx2,y,x + ellipseWidth,y); - this.lineTo(xe - ellipseWidth,y); - this.curveTo(xe + cx2,y,xe + cx1,y - cy1); - this.curveTo(xe,y - cy2,xe,y + ellipseHeight); - this.lineTo(xe,ye - ellipseHeight); - } - ,__class__: openfl_display_GraphicsPath -}; -var openfl_display__$GraphicsPathWinding_GraphicsPathWinding_$Impl_$ = {}; -$hxClasses["openfl.display._GraphicsPathWinding.GraphicsPathWinding_Impl_"] = openfl_display__$GraphicsPathWinding_GraphicsPathWinding_$Impl_$; -openfl_display__$GraphicsPathWinding_GraphicsPathWinding_$Impl_$.__name__ = "openfl.display._GraphicsPathWinding.GraphicsPathWinding_Impl_"; -openfl_display__$GraphicsPathWinding_GraphicsPathWinding_$Impl_$.fromString = function(value) { - switch(value) { - case "evenOdd": - return 0; - case "nonZero": - return 1; - default: - return null; - } -}; -openfl_display__$GraphicsPathWinding_GraphicsPathWinding_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "evenOdd"; - case 1: - return "nonZero"; - default: - return null; - } -}; -var openfl_display_GraphicsQuadPath = function(rects,indices,transforms) { - this.rects = rects; - this.indices = indices; - this.transforms = transforms; - this.__graphicsDataType = 6; -}; -$hxClasses["openfl.display.GraphicsQuadPath"] = openfl_display_GraphicsQuadPath; -openfl_display_GraphicsQuadPath.__name__ = "openfl.display.GraphicsQuadPath"; -openfl_display_GraphicsQuadPath.__interfaces__ = [openfl_display_IGraphicsPath,openfl_display_IGraphicsData]; -openfl_display_GraphicsQuadPath.prototype = { - indices: null - ,rects: null - ,transforms: null - ,__graphicsDataType: null - ,__class__: openfl_display_GraphicsQuadPath -}; -var openfl_display_GraphicsShaderFill = function(shader,matrix) { - this.shader = shader; - this.matrix = matrix; - this.__graphicsDataType = 8; - this.__graphicsFillType = 4; -}; -$hxClasses["openfl.display.GraphicsShaderFill"] = openfl_display_GraphicsShaderFill; -openfl_display_GraphicsShaderFill.__name__ = "openfl.display.GraphicsShaderFill"; -openfl_display_GraphicsShaderFill.__interfaces__ = [openfl_display_IGraphicsFill,openfl_display_IGraphicsData]; -openfl_display_GraphicsShaderFill.prototype = { - matrix: null - ,shader: null - ,__graphicsDataType: null - ,__graphicsFillType: null - ,__class__: openfl_display_GraphicsShaderFill -}; -var openfl_display_GraphicsSolidFill = function(color,alpha) { - if(alpha == null) { - alpha = 1; - } - if(color == null) { - color = 0; - } - this.alpha = alpha; - this.color = color; - this.__graphicsDataType = 1; - this.__graphicsFillType = 0; -}; -$hxClasses["openfl.display.GraphicsSolidFill"] = openfl_display_GraphicsSolidFill; -openfl_display_GraphicsSolidFill.__name__ = "openfl.display.GraphicsSolidFill"; -openfl_display_GraphicsSolidFill.__interfaces__ = [openfl_display_IGraphicsFill,openfl_display_IGraphicsData]; -openfl_display_GraphicsSolidFill.prototype = { - alpha: null - ,color: null - ,__graphicsDataType: null - ,__graphicsFillType: null - ,__class__: openfl_display_GraphicsSolidFill -}; -var openfl_display_IGraphicsStroke = function() { }; -$hxClasses["openfl.display.IGraphicsStroke"] = openfl_display_IGraphicsStroke; -openfl_display_IGraphicsStroke.__name__ = "openfl.display.IGraphicsStroke"; -openfl_display_IGraphicsStroke.__isInterface__ = true; -var openfl_display_GraphicsStroke = function(thickness,pixelHinting,scaleMode,caps,joints,miterLimit,fill) { - if(miterLimit == null) { - miterLimit = 3; - } - if(joints == null) { - joints = 2; - } - if(caps == null) { - caps = 0; - } - if(scaleMode == null) { - scaleMode = 2; - } - if(pixelHinting == null) { - pixelHinting = false; - } - if(thickness == null) { - thickness = NaN; - } - this.caps = caps; - this.fill = fill; - this.joints = joints; - this.miterLimit = miterLimit; - this.pixelHinting = pixelHinting; - this.scaleMode = scaleMode; - this.thickness = thickness; - this.__graphicsDataType = 0; -}; -$hxClasses["openfl.display.GraphicsStroke"] = openfl_display_GraphicsStroke; -openfl_display_GraphicsStroke.__name__ = "openfl.display.GraphicsStroke"; -openfl_display_GraphicsStroke.__interfaces__ = [openfl_display_IGraphicsStroke,openfl_display_IGraphicsData]; -openfl_display_GraphicsStroke.prototype = { - caps: null - ,fill: null - ,joints: null - ,miterLimit: null - ,pixelHinting: null - ,scaleMode: null - ,thickness: null - ,__graphicsDataType: null - ,__class__: openfl_display_GraphicsStroke -}; -var openfl_display_GraphicsTrianglePath = function(vertices,indices,uvtData,culling) { - if(culling == null) { - culling = 1; - } - this.vertices = vertices; - this.indices = indices; - this.uvtData = uvtData; - this.culling = culling; - this.__graphicsDataType = 7; -}; -$hxClasses["openfl.display.GraphicsTrianglePath"] = openfl_display_GraphicsTrianglePath; -openfl_display_GraphicsTrianglePath.__name__ = "openfl.display.GraphicsTrianglePath"; -openfl_display_GraphicsTrianglePath.__interfaces__ = [openfl_display_IGraphicsPath,openfl_display_IGraphicsData]; -openfl_display_GraphicsTrianglePath.prototype = { - culling: null - ,indices: null - ,uvtData: null - ,vertices: null - ,__graphicsDataType: null - ,__class__: openfl_display_GraphicsTrianglePath -}; -var openfl_display__$InterpolationMethod_InterpolationMethod_$Impl_$ = {}; -$hxClasses["openfl.display._InterpolationMethod.InterpolationMethod_Impl_"] = openfl_display__$InterpolationMethod_InterpolationMethod_$Impl_$; -openfl_display__$InterpolationMethod_InterpolationMethod_$Impl_$.__name__ = "openfl.display._InterpolationMethod.InterpolationMethod_Impl_"; -openfl_display__$InterpolationMethod_InterpolationMethod_$Impl_$.fromInt = function(value) { - return value; -}; -openfl_display__$InterpolationMethod_InterpolationMethod_$Impl_$.fromString = function(value) { - switch(value) { - case "linearRGB": - return 0; - case "rgb": - return 1; - default: - return null; - } -}; -openfl_display__$InterpolationMethod_InterpolationMethod_$Impl_$.toInt = function(this1) { - return this1; -}; -openfl_display__$InterpolationMethod_InterpolationMethod_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "linearRGB"; - case 1: - return "rgb"; - default: - return null; - } -}; -var openfl_display_JPEGEncoderOptions = function(quality) { - if(quality == null) { - quality = 80; - } - this.quality = quality; -}; -$hxClasses["openfl.display.JPEGEncoderOptions"] = openfl_display_JPEGEncoderOptions; -openfl_display_JPEGEncoderOptions.__name__ = "openfl.display.JPEGEncoderOptions"; -openfl_display_JPEGEncoderOptions.prototype = { - quality: null - ,__class__: openfl_display_JPEGEncoderOptions -}; -var openfl_display__$JointStyle_JointStyle_$Impl_$ = {}; -$hxClasses["openfl.display._JointStyle.JointStyle_Impl_"] = openfl_display__$JointStyle_JointStyle_$Impl_$; -openfl_display__$JointStyle_JointStyle_$Impl_$.__name__ = "openfl.display._JointStyle.JointStyle_Impl_"; -openfl_display__$JointStyle_JointStyle_$Impl_$.fromInt = function(value) { - return value; -}; -openfl_display__$JointStyle_JointStyle_$Impl_$.fromString = function(value) { - switch(value) { - case "bevel": - return 0; - case "miter": - return 1; - case "round": - return 2; - default: - return null; - } -}; -openfl_display__$JointStyle_JointStyle_$Impl_$.toInt = function(this1) { - return this1; -}; -openfl_display__$JointStyle_JointStyle_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "bevel"; - case 1: - return "miter"; - case 2: - return "round"; - default: - return null; - } -}; -var openfl_display__$LineScaleMode_LineScaleMode_$Impl_$ = {}; -$hxClasses["openfl.display._LineScaleMode.LineScaleMode_Impl_"] = openfl_display__$LineScaleMode_LineScaleMode_$Impl_$; -openfl_display__$LineScaleMode_LineScaleMode_$Impl_$.__name__ = "openfl.display._LineScaleMode.LineScaleMode_Impl_"; -openfl_display__$LineScaleMode_LineScaleMode_$Impl_$.fromInt = function(value) { - return value; -}; -openfl_display__$LineScaleMode_LineScaleMode_$Impl_$.fromString = function(value) { - switch(value) { - case "horizontal": - return 0; - case "none": - return 1; - case "normal": - return 2; - case "vertical": - return 3; - default: - return null; - } -}; -openfl_display__$LineScaleMode_LineScaleMode_$Impl_$.toInt = function(this1) { - return this1; -}; -openfl_display__$LineScaleMode_LineScaleMode_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "horizontal"; - case 1: - return "none"; - case 2: - return "normal"; - case 3: - return "vertical"; - default: - return null; - } -}; -var openfl_display_Loader = function() { - openfl_display_DisplayObjectContainer.call(this); - this.contentLoaderInfo = openfl_display_LoaderInfo.create(this); - this.uncaughtErrorEvents = this.contentLoaderInfo.uncaughtErrorEvents; - this.__unloaded = true; -}; -$hxClasses["openfl.display.Loader"] = openfl_display_Loader; -openfl_display_Loader.__name__ = "openfl.display.Loader"; -openfl_display_Loader.__super__ = openfl_display_DisplayObjectContainer; -openfl_display_Loader.prototype = $extend(openfl_display_DisplayObjectContainer.prototype,{ - content: null - ,contentLoaderInfo: null - ,uncaughtErrorEvents: null - ,__library: null - ,__path: null - ,__unloaded: null - ,close: function() { - openfl__$internal_Lib.notImplemented({ fileName : "openfl/display/Loader.hx", lineNumber : 229, className : "openfl.display.Loader", methodName : "close"}); - } - ,load: function(request,context) { - this.unload(); - this.contentLoaderInfo.loaderURL = openfl_Lib.get_current().get_loaderInfo().url; - this.contentLoaderInfo.url = request.url; - this.__unloaded = false; - if(request.contentType == null || request.contentType == "") { - var extension = ""; - this.__path = request.url; - var queryIndex = this.__path.indexOf("?"); - if(queryIndex > -1) { - this.__path = this.__path.substring(0,queryIndex); - } - while(StringTools.endsWith(this.__path,"/")) this.__path = this.__path.substring(0,this.__path.length - 1); - if(StringTools.endsWith(this.__path,".bundle")) { - this.__path += "/library.json"; - if(queryIndex > -1) { - request.url = this.__path + request.url.substring(queryIndex); - } else { - request.url = this.__path; - } - } - var extIndex = this.__path.lastIndexOf("."); - if(extIndex > -1) { - extension = this.__path.substring(extIndex + 1); - } - var tmp; - switch(extension) { - case "gif": - tmp = "image/gif"; - break; - case "jpeg":case "jpg": - tmp = "image/jpeg"; - break; - case "js": - tmp = "application/javascript"; - break; - case "json": - tmp = "application/json"; - break; - case "png": - tmp = "image/png"; - break; - case "swf": - tmp = "application/x-shockwave-flash"; - break; - default: - tmp = "application/x-www-form-urlencoded"; - } - this.contentLoaderInfo.contentType = tmp; - } else { - this.contentLoaderInfo.contentType = request.contentType; - } - if(this.contentLoaderInfo.contentType.indexOf("image/") > -1 && request.method == "GET" && (request.requestHeaders == null || request.requestHeaders.length == 0) && request.userAgent == null) { - openfl_display_BitmapData.loadFromFile(request.url).onComplete($bind(this,this.BitmapData_onLoad)).onError($bind(this,this.BitmapData_onError)).onProgress($bind(this,this.BitmapData_onProgress)); - return; - } - var loader = new openfl_net_URLLoader(); - loader.dataFormat = 0; - if(this.contentLoaderInfo.contentType.indexOf("/json") > -1 || this.contentLoaderInfo.contentType.indexOf("/javascript") > -1 || this.contentLoaderInfo.contentType.indexOf("/ecmascript") > -1) { - loader.dataFormat = 1; - } - loader.addEventListener("complete",$bind(this,this.loader_onComplete)); - loader.addEventListener("ioError",$bind(this,this.loader_onError)); - loader.addEventListener("progress",$bind(this,this.loader_onProgress)); - loader.load(request); - } - ,loadBytes: function(buffer,context) { - openfl_display_BitmapData.loadFromBytes(buffer).onComplete($bind(this,this.BitmapData_onLoad)).onError($bind(this,this.BitmapData_onError)); - } - ,unload: function() { - if(!this.__unloaded) { - if(this.content != null && this.content.parent == this) { - openfl_display_DisplayObjectContainer.prototype.removeChild.call(this,this.content); - } - if(this.__library != null) { - openfl_utils_Assets.unloadLibrary(this.contentLoaderInfo.url); - this.__library = null; - } - this.content = null; - this.contentLoaderInfo.url = null; - this.contentLoaderInfo.contentType = null; - this.contentLoaderInfo.content = null; - this.contentLoaderInfo.bytesLoaded = 0; - this.contentLoaderInfo.bytesTotal = 0; - this.contentLoaderInfo.width = 0; - this.contentLoaderInfo.height = 0; - this.__unloaded = true; - this.contentLoaderInfo.dispatchEvent(new openfl_events_Event("unload")); - } - } - ,unloadAndStop: function(gc) { - if(gc == null) { - gc = true; - } - if(this.content != null) { - this.content.__stopAllMovieClips(); - } - var _g = 0; - var _g1 = this.get_numChildren(); - while(_g < _g1) { - var i = _g++; - this.getChildAt(i).__stopAllMovieClips(); - } - this.unload(); - var gc1 = gc; - } - ,__dispatchError: function(text) { - var event = new openfl_events_IOErrorEvent("ioError"); - event.text = text; - this.contentLoaderInfo.dispatchEvent(event); - } - ,__setContent: function(content,width,height) { - this.content = content; - this.contentLoaderInfo.content = content; - this.contentLoaderInfo.width = width; - this.contentLoaderInfo.height = height; - if(content != null) { - openfl_display_DisplayObjectContainer.prototype.addChildAt.call(this,content,0); - } - } - ,BitmapData_onError: function(error) { - this.__dispatchError(Std.string(error)); - } - ,BitmapData_onLoad: function(bitmapData) { - if(bitmapData == null) { - this.__dispatchError("Unknown error"); - return; - } - this.__setContent(new openfl_display_Bitmap(bitmapData),bitmapData.width,bitmapData.height); - this.contentLoaderInfo.dispatchEvent(new openfl_events_Event("complete")); - } - ,BitmapData_onProgress: function(bytesLoaded,bytesTotal) { - var event = new openfl_events_ProgressEvent("progress"); - event.bytesLoaded = bytesLoaded; - event.bytesTotal = bytesTotal; - this.contentLoaderInfo.dispatchEvent(event); - } - ,loader_onComplete: function(event) { - var _gthis = this; - var loader = event.target; - if(this.contentLoaderInfo.contentType != null && this.contentLoaderInfo.contentType.indexOf("/json") > -1) { - var manifest = lime_utils_AssetManifest.parse(loader.data,haxe_io_Path.directory(this.__path)); - if(manifest == null) { - this.__dispatchError("Cannot parse asset manifest"); - return; - } - var library = lime_utils_AssetLibrary.fromManifest(manifest); - if(library == null) { - this.__dispatchError("Cannot open library"); - return; - } - if(((library) instanceof openfl_utils_AssetLibrary)) { - library.load().onComplete(function(_) { - _gthis.__library = library; - openfl_utils_Assets.registerLibrary(_gthis.contentLoaderInfo.url,_gthis.__library); - if(manifest.name != null && !openfl_utils_Assets.hasLibrary(manifest.name)) { - openfl_utils_Assets.registerLibrary(manifest.name,_gthis.__library); - } - var clip = _gthis.__library.getMovieClip(""); - var tmp = clip.get_width() | 0; - var tmp1 = clip.get_height() | 0; - _gthis.__setContent(clip,tmp,tmp1); - _gthis.contentLoaderInfo.dispatchEvent(new openfl_events_Event("complete")); - }).onError(function(e) { - _gthis.__dispatchError(e); - }); - } - } else if(this.contentLoaderInfo.contentType != null && (this.contentLoaderInfo.contentType.indexOf("/javascript") > -1 || this.contentLoaderInfo.contentType.indexOf("/ecmascript") > -1)) { - this.__setContent(new openfl_display_Sprite(),0,0); - eval("(function () {" + Std.string(loader.data) + "})()"); - this.contentLoaderInfo.dispatchEvent(new openfl_events_Event("complete")); - } else { - this.contentLoaderInfo.bytes = loader.data; - openfl_display_BitmapData.loadFromBytes(loader.data).onComplete($bind(this,this.BitmapData_onLoad)).onError($bind(this,this.BitmapData_onError)); - } - } - ,loader_onError: function(event) { - event.target = this.contentLoaderInfo; - this.contentLoaderInfo.dispatchEvent(event); - } - ,loader_onProgress: function(event) { - event.target = this.contentLoaderInfo; - this.contentLoaderInfo.dispatchEvent(event); - } - ,__class__: openfl_display_Loader -}); -var openfl_display_LoaderInfo = function() { - openfl_events_EventDispatcher.call(this); - this.applicationDomain = openfl_system_ApplicationDomain.currentDomain; - this.bytesLoaded = 0; - this.bytesTotal = 0; - this.childAllowsParent = true; - this.parameters = { }; -}; -$hxClasses["openfl.display.LoaderInfo"] = openfl_display_LoaderInfo; -openfl_display_LoaderInfo.__name__ = "openfl.display.LoaderInfo"; -openfl_display_LoaderInfo.create = function(loader) { - var loaderInfo = new openfl_display_LoaderInfo(); - loaderInfo.uncaughtErrorEvents = new openfl_events_UncaughtErrorEvents(); - if(loader != null) { - loaderInfo.loader = loader; - } else { - loaderInfo.url = openfl_display_LoaderInfo.__rootURL; - } - return loaderInfo; -}; -openfl_display_LoaderInfo.__super__ = openfl_events_EventDispatcher; -openfl_display_LoaderInfo.prototype = $extend(openfl_events_EventDispatcher.prototype,{ - applicationDomain: null - ,bytes: null - ,bytesLoaded: null - ,bytesTotal: null - ,childAllowsParent: null - ,content: null - ,contentType: null - ,frameRate: null - ,height: null - ,loader: null - ,loaderURL: null - ,parameters: null - ,parentAllowsChild: null - ,sameDomain: null - ,sharedEvents: null - ,uncaughtErrorEvents: null - ,url: null - ,width: null - ,__completed: null - ,__complete: function() { - if(!this.__completed) { - if(this.bytesLoaded < this.bytesTotal) { - this.bytesLoaded = this.bytesTotal; - } - this.__update(this.bytesLoaded,this.bytesTotal); - this.__completed = true; - this.dispatchEvent(new openfl_events_Event("complete")); - } - } - ,__update: function(bytesLoaded,bytesTotal) { - this.bytesLoaded = bytesLoaded; - this.bytesTotal = bytesTotal; - this.dispatchEvent(new openfl_events_ProgressEvent("progress",false,false,bytesLoaded,bytesTotal)); - } - ,__class__: openfl_display_LoaderInfo -}); -var openfl_display_MovieClip = function() { - openfl_display_Sprite.call(this); - this.__currentFrame = 1; - this.__currentLabels = []; - this.__instanceFields = []; - this.__totalFrames = 0; - this.__enabled = true; - if(openfl_display_MovieClip.__initSymbol != null) { - this.__swf = openfl_display_MovieClip.__initSWF; - this.__symbol = openfl_display_MovieClip.__initSymbol; - openfl_display_MovieClip.__initSWF = null; - openfl_display_MovieClip.__initSymbol = null; - this.__fromSymbol(this.__swf,this.__symbol); - } -}; -$hxClasses["openfl.display.MovieClip"] = openfl_display_MovieClip; -openfl_display_MovieClip.__name__ = "openfl.display.MovieClip"; -openfl_display_MovieClip.__initSWF = null; -openfl_display_MovieClip.__initSymbol = null; -openfl_display_MovieClip.__super__ = openfl_display_Sprite; -openfl_display_MovieClip.prototype = $extend(openfl_display_Sprite.prototype,{ - __activeInstances: null - ,__activeInstancesByFrameObjectID: null - ,__currentFrame: null - ,__currentFrameLabel: null - ,__currentLabel: null - ,__currentLabels: null - ,__enabled: null - ,__frameScripts: null - ,__frameTime: null - ,__hasDown: null - ,__hasOver: null - ,__hasUp: null - ,__instanceFields: null - ,__lastFrameScriptEval: null - ,__lastFrameUpdate: null - ,__mouseIsDown: null - ,__playing: null - ,__swf: null - ,__symbol: null - ,__timeElapsed: null - ,__totalFrames: null - ,addFrameScript: function(index,method) { - if(index < 0) { - return; - } - var frame = index + 1; - if(method != null) { - if(this.__frameScripts == null) { - this.__frameScripts = new haxe_ds_IntMap(); - } - this.__frameScripts.h[frame] = method; - } else if(this.__frameScripts != null) { - this.__frameScripts.remove(frame); - } - } - ,gotoAndPlay: function(frame,scene) { - this.play(); - this.__goto(this.__resolveFrameReference(frame)); - } - ,gotoAndStop: function(frame,scene) { - this.stop(); - this.__goto(this.__resolveFrameReference(frame)); - } - ,nextFrame: function() { - this.stop(); - this.__goto(this.__currentFrame + 1); - } - ,play: function() { - if(this.__symbol == null || this.__playing || this.__totalFrames < 2) { - return; - } - this.__playing = true; - this.__frameTime = 1000 / this.__swf.frameRate | 0; - this.__timeElapsed = 0; - } - ,prevFrame: function() { - this.stop(); - this.__goto(this.__currentFrame - 1); - } - ,stop: function() { - this.__playing = false; - } - ,__enterFrame: function(deltaTime) { - this.__updateFrameScript(deltaTime); - this.__updateSymbol(this.__currentFrame); - openfl_display_Sprite.prototype.__enterFrame.call(this,deltaTime); - } - ,__updateFrameScript: function(deltaTime) { - if(this.__symbol != null && this.__playing) { - var nextFrame = this.__getNextFrame(deltaTime); - if(this.__lastFrameScriptEval == nextFrame) { - openfl_display_Sprite.prototype.__enterFrame.call(this,deltaTime); - return; - } - if(this.__frameScripts != null) { - if(nextFrame < this.__currentFrame) { - if(!this.__evaluateFrameScripts(this.__totalFrames)) { - openfl_display_Sprite.prototype.__enterFrame.call(this,deltaTime); - return; - } - this.__currentFrame = 1; - } - if(!this.__evaluateFrameScripts(nextFrame)) { - openfl_display_Sprite.prototype.__enterFrame.call(this,deltaTime); - return; - } - } else { - this.__currentFrame = nextFrame; - } - } - } - ,__updateSymbol: function(targetFrame) { - if(this.__symbol != null && this.__currentFrame != this.__lastFrameUpdate) { - this.__updateFrameLabel(); - var currentInstancesByFrameObjectID = new haxe_ds_IntMap(); - var frame; - var frameData; - var instance; - var _g = 0; - var _g1 = targetFrame; - while(_g < _g1) { - var i = _g++; - frame = i + 1; - frameData = this.__symbol.frames[i]; - if(frameData.objects == null) { - continue; - } - var _g2 = 0; - var _g11 = frameData.objects; - while(_g2 < _g11.length) { - var frameObject = _g11[_g2]; - ++_g2; - switch(frameObject.type._hx_index) { - case 0: - instance = this.__activeInstancesByFrameObjectID.h[frameObject.id]; - if(instance != null) { - currentInstancesByFrameObjectID.h[frameObject.id] = instance; - this.__updateDisplayObject(instance.displayObject,frameObject,true); - } - break; - case 1: - instance = currentInstancesByFrameObjectID.h[frameObject.id]; - if(instance != null && instance.displayObject != null) { - this.__updateDisplayObject(instance.displayObject,frameObject); - } - break; - case 2: - currentInstancesByFrameObjectID.remove(frameObject.id); - break; - } - } - } - var currentInstances = []; - var currentMasks = []; - var instance1 = currentInstancesByFrameObjectID.iterator(); - while(instance1.hasNext()) { - var instance2 = instance1.next(); - if(currentInstances.indexOf(instance2) == -1) { - currentInstances.push(instance2); - if(instance2.clipDepth > 0) { - currentMasks.push(instance2); - } - } - } - currentInstances.sort($bind(this,this.__sortDepths)); - var existingChild; - var targetDepth; - var targetChild; - var child; - var maskApplied; - var _g21 = 0; - var _g3 = currentInstances.length; - while(_g21 < _g3) { - var i1 = _g21++; - existingChild = this.__children[i1]; - instance = currentInstances[i1]; - targetDepth = instance.depth; - targetChild = instance.displayObject; - if(existingChild != targetChild) { - child = targetChild; - this.addChildAt(targetChild,i1); - } else { - child = this.__children[i1]; - } - maskApplied = false; - var _g22 = 0; - while(_g22 < currentMasks.length) { - var mask = currentMasks[_g22]; - ++_g22; - if(targetDepth > mask.depth && targetDepth <= mask.clipDepth) { - child.set_mask(mask.displayObject); - maskApplied = true; - break; - } - } - if(currentMasks.length > 0 && !maskApplied && child.get_mask() != null) { - child.set_mask(null); - } - } - var child1; - var i2 = currentInstances.length; - var length = this.__children.length; - while(i2 < length) { - child1 = this.__children[i2]; - var _g4 = 0; - var _g5 = this.__activeInstances; - while(_g4 < _g5.length) { - var instance3 = _g5[_g4]; - ++_g4; - if(instance3.displayObject == child1) { - if(((child1) instanceof openfl_display_MovieClip)) { - var movie = child1; - movie.gotoAndPlay(1); - } - this.removeChild(child1); - --i2; - --length; - } - } - ++i2; - } - this.__lastFrameUpdate = this.__currentFrame; - this.__updateInstanceFields(); - } - } - ,__evaluateFrameScripts: function(advanceToFrame) { - var _g = this.__currentFrame; - var _g1 = advanceToFrame + 1; - while(_g < _g1) { - var frame = _g++; - if(frame == this.__lastFrameScriptEval) { - continue; - } - this.__lastFrameScriptEval = frame; - this.__currentFrame = frame; - if(this.__frameScripts.h.hasOwnProperty(frame)) { - this.__updateSymbol(frame); - var script = this.__frameScripts.h[frame]; - script(); - if(this.__currentFrame != frame) { - return false; - } - } - if(!this.__playing) { - return false; - } - } - return true; - } - ,__fromSymbol: function(swf,symbol) { - if(this.__activeInstances != null) { - return; - } - this.__swf = swf; - this.__symbol = symbol; - this.__activeInstances = []; - this.__activeInstancesByFrameObjectID = new haxe_ds_IntMap(); - this.__currentFrame = 1; - this.__lastFrameScriptEval = -1; - this.__lastFrameUpdate = -1; - this.__totalFrames = this.__symbol.frames.length; - var frame; - var frameData; - var parser = null; - var _g = 0; - var _g1 = this.__symbol.frames.length; - while(_g < _g1) { - var i = _g++; - frame = i + 1; - frameData = this.__symbol.frames[i]; - if(frameData.label != null) { - this.__currentLabels.push(new openfl_display_FrameLabel(frameData.label,i + 1)); - } - if(frameData.script != null) { - if(this.__frameScripts == null) { - this.__frameScripts = new haxe_ds_IntMap(); - } - this.__frameScripts.h[frame] = frameData.script; - } else if(frameData.scriptSource != null) { - if(this.__frameScripts == null) { - this.__frameScripts = new haxe_ds_IntMap(); - } - try { - if(parser == null) { - parser = new hscript_Parser(); - parser.allowTypes = true; - } - var program = [parser.parseString(frameData.scriptSource)]; - var interp = [new hscript_Interp()]; - var _this = interp[0].variables; - if(__map_reserved["this"] != null) { - _this.setReserved("this",this); - } else { - _this.h["this"] = this; - } - var _this1 = interp[0].variables; - var value = openfl_events_Event; - if(__map_reserved["flash.events_Event"] != null) { - _this1.setReserved("flash.events_Event",value); - } else { - _this1.h["flash.events_Event"] = value; - } - var script = (function(interp1,program1) { - return function() { - interp1[0].execute(program1[0]); - }; - })(interp,program); - this.__frameScripts.h[frame] = script; - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - if(this.__symbol.className != null) { - lime_utils_Log.warn("Unable to evaluate frame script source for symbol \"" + this.__symbol.className + "\" frame " + frame + "\n" + frameData.scriptSource,{ fileName : "openfl/display/MovieClip.hx", lineNumber : 675, className : "openfl.display.MovieClip", methodName : "__fromSymbol"}); - } else { - lime_utils_Log.warn("Unable to evaluate frame script source:\n" + frameData.scriptSource,{ fileName : "openfl/display/MovieClip.hx", lineNumber : 680, className : "openfl.display.MovieClip", methodName : "__fromSymbol"}); - } - } - } - } - var frame1; - var frameData1; - var instance; - var duplicate; - var symbol1; - var displayObject; - var _g2 = 0; - var _g3 = this.__totalFrames; - while(_g2 < _g3) { - var i1 = _g2++; - frame1 = i1 + 1; - frameData1 = this.__symbol.frames[i1]; - if(frameData1.objects == null) { - continue; - } - var _g21 = 0; - var _g31 = frameData1.objects; - while(_g21 < _g31.length) { - var frameObject = _g31[_g21]; - ++_g21; - if(frameObject.type == openfl__$internal_symbols_timeline_FrameObjectType.CREATE) { - if(this.__activeInstancesByFrameObjectID.h.hasOwnProperty(frameObject.id)) { - continue; - } else { - instance = null; - duplicate = false; - var _g22 = 0; - var _g32 = this.__activeInstances; - while(_g22 < _g32.length) { - var activeInstance = _g32[_g22]; - ++_g22; - if(activeInstance.displayObject != null && activeInstance.characterID == frameObject.symbol && activeInstance.depth == frameObject.depth) { - instance = activeInstance; - duplicate = true; - break; - } - } - } - if(instance == null) { - symbol1 = this.__swf.symbols.h[frameObject.symbol]; - if(symbol1 != null) { - displayObject = symbol1.__createObject(this.__swf); - if(displayObject != null) { - displayObject.parent = this; - displayObject.stage = this.stage; - if(this.stage != null) { - displayObject.dispatchEvent(new openfl_events_Event("addedToStage",false,false)); - } - instance = new openfl_display__$MovieClip_FrameSymbolInstance(frame1,frameObject.id,frameObject.symbol,frameObject.depth,displayObject,frameObject.clipDepth); - } - } - } - if(instance != null) { - this.__activeInstancesByFrameObjectID.h[frameObject.id] = instance; - if(!duplicate) { - this.__activeInstances.push(instance); - this.__updateDisplayObject(instance.displayObject,frameObject); - } - } - } - } - } - if(this.__totalFrames > 1) { - this.play(); - } - this.__enterFrame(0); - this.__instanceFields = Type.getInstanceFields(js_Boot.getClass(this)); - this.__updateInstanceFields(); - } - ,__getNextFrame: function(deltaTime) { - var nextFrame = 0; - this.__timeElapsed += deltaTime; - nextFrame = this.__currentFrame + Math.floor(this.__timeElapsed / this.__frameTime); - if(nextFrame < 1) { - nextFrame = 1; - } - if(nextFrame > this.__totalFrames) { - nextFrame = Math.floor((nextFrame - 1) % this.__totalFrames) + 1; - } - this.__timeElapsed %= this.__frameTime; - return nextFrame; - } - ,__goto: function(frame) { - if(this.__symbol == null) { - return; - } - if(frame < 1) { - frame = 1; - } else if(frame > this.__totalFrames) { - frame = this.__totalFrames; - } - this.__currentFrame = frame; - this.__enterFrame(0); - } - ,__resolveFrameReference: function(frame) { - if(typeof(frame) == "number" && ((frame | 0) === frame)) { - return frame; - } else if(typeof(frame) == "string") { - var label = frame; - var _g = 0; - var _g1 = this.__currentLabels; - while(_g < _g1.length) { - var frameLabel = _g1[_g]; - ++_g; - if(frameLabel.get_name() == label) { - return frameLabel.get_frame(); - } - } - throw new js__$Boot_HaxeError(new openfl_errors_ArgumentError("Error #2109: Frame label " + label + " not found in scene.")); - } else { - throw new js__$Boot_HaxeError("Invalid type for frame " + frame.__name__); - } - } - ,__sortDepths: function(a,b) { - return a.depth - b.depth; - } - ,__stopAllMovieClips: function() { - openfl_display_Sprite.prototype.__stopAllMovieClips.call(this); - this.stop(); - } - ,__tabTest: function(stack) { - if(!this.__enabled) { - return; - } - openfl_display_Sprite.prototype.__tabTest.call(this,stack); - } - ,__updateDisplayObject: function(displayObject,frameObject,reset) { - if(reset == null) { - reset = false; - } - if(displayObject == null) { - return; - } - if(frameObject.name != null) { - displayObject.set_name(frameObject.name); - } - if(frameObject.matrix != null) { - displayObject.get_transform().set_matrix(frameObject.matrix); - } - if(frameObject.colorTransform != null) { - displayObject.get_transform().set_colorTransform(frameObject.colorTransform); - } else if(reset && !displayObject.get_transform().get_colorTransform().__isDefault(true)) { - displayObject.get_transform().set_colorTransform(new openfl_geom_ColorTransform()); - } - if(frameObject.filters != null) { - var filters = []; - var _g = 0; - var _g1 = frameObject.filters; - while(_g < _g1.length) { - var filter = _g1[_g]; - ++_g; - switch(filter._hx_index) { - case 0: - var quality = filter.quality; - var blurY = filter.blurY; - var blurX = filter.blurX; - filters.push(new openfl_filters_BlurFilter(blurX,blurY,quality)); - break; - case 1: - var matrix = filter.matrix; - filters.push(new openfl_filters_ColorMatrixFilter(matrix)); - break; - case 2: - var hideObject = filter.hideObject; - var knockout = filter.knockout; - var inner = filter.inner; - var quality1 = filter.quality; - var strength = filter.strength; - var blurY1 = filter.blurY; - var blurX1 = filter.blurX; - var alpha = filter.alpha; - var color = filter.color; - var angle = filter.angle; - var distance = filter.distance; - filters.push(new openfl_filters_DropShadowFilter(distance,angle,color,alpha,blurX1,blurY1,strength,quality1,inner,knockout,hideObject)); - break; - case 3: - var knockout1 = filter.knockout; - var inner1 = filter.inner; - var quality2 = filter.quality; - var strength1 = filter.strength; - var blurY2 = filter.blurY; - var blurX2 = filter.blurX; - var alpha1 = filter.alpha; - var color1 = filter.color; - filters.push(new openfl_filters_GlowFilter(color1,alpha1,blurX2,blurY2,strength1,quality2,inner1,knockout1)); - break; - } - } - displayObject.set_filters(filters); - } else { - displayObject.set_filters(null); - } - if(frameObject.visible != null) { - displayObject.set_visible(frameObject.visible); - } - if(frameObject.blendMode != null) { - displayObject.set_blendMode(frameObject.blendMode); - } - if(frameObject.cacheAsBitmap != null) { - displayObject.set_cacheAsBitmap(frameObject.cacheAsBitmap); - } - } - ,__updateFrameLabel: function() { - this.__currentFrameLabel = this.__symbol.frames[this.__currentFrame - 1].label; - if(this.__currentFrameLabel != null) { - this.__currentLabel = this.__currentFrameLabel; - } else { - this.__currentLabel = null; - var _g = 0; - var _g1 = this.__currentLabels; - while(_g < _g1.length) { - var label = _g1[_g]; - ++_g; - if(label.get_frame() < this.__currentFrame) { - this.__currentLabel = label.get_name(); - } else { - break; - } - } - } - } - ,__updateInstanceFields: function() { - var _g = 0; - var _g1 = this.__instanceFields; - while(_g < _g1.length) { - var field = _g1[_g]; - ++_g; - var _g2 = 0; - var _g11 = this.__children; - while(_g2 < _g11.length) { - var child = _g11[_g2]; - ++_g2; - if(child.get_name() == field) { - this[field] = child; - break; - } - } - } - } - ,__onMouseDown: function(event) { - if(this.__enabled && this.__hasDown) { - this.gotoAndStop("_down"); - } - this.__mouseIsDown = true; - this.stage.addEventListener("mouseUp",$bind(this,this.__onMouseUp),true); - } - ,__onMouseUp: function(event) { - this.__mouseIsDown = false; - if(this.stage != null) { - this.stage.removeEventListener("mouseUp",$bind(this,this.__onMouseUp)); - } - if(!this.__buttonMode) { - return; - } - if(event.target == this && this.__enabled && this.__hasOver) { - this.gotoAndStop("_over"); - } else if(this.__enabled && this.__hasUp) { - this.gotoAndStop("_up"); - } - } - ,__onRollOut: function(event) { - if(!this.__enabled) { - return; - } - if(this.__mouseIsDown && this.__hasOver) { - this.gotoAndStop("_over"); - } else if(this.__hasUp) { - this.gotoAndStop("_up"); - } - } - ,__onRollOver: function(event) { - if(this.__enabled && this.__hasOver) { - this.gotoAndStop("_over"); - } - } - ,set_buttonMode: function(value) { - if(this.__buttonMode != value) { - if(value) { - this.__hasDown = false; - this.__hasOver = false; - this.__hasUp = false; - var _g = 0; - var _g1 = this.__currentLabels; - while(_g < _g1.length) { - var frameLabel = _g1[_g]; - ++_g; - switch(frameLabel.get_name()) { - case "_down": - this.__hasDown = true; - break; - case "_over": - this.__hasOver = true; - break; - case "_up": - this.__hasUp = true; - break; - default: - } - } - if(this.__hasDown || this.__hasOver || this.__hasUp) { - this.addEventListener("rollOver",$bind(this,this.__onRollOver)); - this.addEventListener("rollOut",$bind(this,this.__onRollOut)); - this.addEventListener("mouseDown",$bind(this,this.__onMouseDown)); - } - } else { - this.removeEventListener("rollOver",$bind(this,this.__onRollOver)); - this.removeEventListener("rollOut",$bind(this,this.__onRollOut)); - this.removeEventListener("mouseDown",$bind(this,this.__onMouseDown)); - } - this.__buttonMode = value; - } - return value; - } - ,get_currentFrame: function() { - return this.__currentFrame; - } - ,get_currentFrameLabel: function() { - return this.__currentFrameLabel; - } - ,get_currentLabel: function() { - return this.__currentLabel; - } - ,get_currentLabels: function() { - return this.__currentLabels; - } - ,get_enabled: function() { - return this.__enabled; - } - ,set_enabled: function(value) { - return this.__enabled = value; - } - ,get_framesLoaded: function() { - return this.__totalFrames; - } - ,get_isPlaying: function() { - return this.__playing; - } - ,get_totalFrames: function() { - return this.__totalFrames; - } - ,__class__: openfl_display_MovieClip - ,__properties__: $extend(openfl_display_Sprite.prototype.__properties__,{get_totalFrames:"get_totalFrames",get_isPlaying:"get_isPlaying",get_framesLoaded:"get_framesLoaded",set_enabled:"set_enabled",get_enabled:"get_enabled",get_currentLabels:"get_currentLabels",get_currentLabel:"get_currentLabel",get_currentFrameLabel:"get_currentFrameLabel",get_currentFrame:"get_currentFrame"}) -}); -var openfl_display__$MovieClip_FrameSymbolInstance = function(initFrame,initFrameObjectID,characterID,depth,displayObject,clipDepth) { - this.initFrame = initFrame; - this.initFrameObjectID = initFrameObjectID; - this.characterID = characterID; - this.depth = depth; - this.displayObject = displayObject; - this.clipDepth = clipDepth; -}; -$hxClasses["openfl.display._MovieClip.FrameSymbolInstance"] = openfl_display__$MovieClip_FrameSymbolInstance; -openfl_display__$MovieClip_FrameSymbolInstance.__name__ = "openfl.display._MovieClip.FrameSymbolInstance"; -openfl_display__$MovieClip_FrameSymbolInstance.prototype = { - characterID: null - ,clipDepth: null - ,depth: null - ,displayObject: null - ,initFrame: null - ,initFrameObjectID: null - ,__class__: openfl_display__$MovieClip_FrameSymbolInstance -}; -var openfl_display_OpenGLRenderer = function(context,defaultRenderTarget) { - openfl_display_DisplayObjectRenderer.call(this); - this.__context3D = context; - this.__context = context.__context; - this.gl = context.__context.webgl; - this.__gl = this.gl; - this.__defaultRenderTarget = defaultRenderTarget; - this.__flipped = this.__defaultRenderTarget == null; - if(openfl_display_Graphics.maxTextureWidth == null) { - openfl_display_Graphics.maxTextureWidth = openfl_display_Graphics.maxTextureHeight = this.__gl.getParameter(this.__gl.MAX_TEXTURE_SIZE); - } - this.__matrix = lime_math__$Matrix4_Matrix4_$Impl_$._new(); - this.__values = []; - this.__softwareRenderer = new openfl_display_CanvasRenderer(null); - this.__type = "opengl"; - this.__setBlendMode(10); - this.__context3D.__setGLBlend(true); - this.__clipRects = []; - this.__maskObjects = []; - this.__numClipRects = 0; - this.__projection = lime_math__$Matrix4_Matrix4_$Impl_$._new(); - this.__projectionFlipped = lime_math__$Matrix4_Matrix4_$Impl_$._new(); - this.__stencilReference = 0; - this.__tempRect = new openfl_geom_Rectangle(); - this.__defaultDisplayShader = new openfl_display_DisplayObjectShader(); - this.__defaultGraphicsShader = new openfl_display_GraphicsShader(); - this.__defaultShader = this.__defaultDisplayShader; - this.__initShader(this.__defaultShader); - this.__scrollRectMasks = new lime_utils_ObjectPool(function() { - return new openfl_display_Shape(); - }); - this.__maskShader = new openfl__$internal_renderer_context3D_Context3DMaskShader(); -}; -$hxClasses["openfl.display.OpenGLRenderer"] = openfl_display_OpenGLRenderer; -openfl_display_OpenGLRenderer.__name__ = "openfl.display.OpenGLRenderer"; -openfl_display_OpenGLRenderer.__super__ = openfl_display_DisplayObjectRenderer; -openfl_display_OpenGLRenderer.prototype = $extend(openfl_display_DisplayObjectRenderer.prototype,{ - gl: null - ,__context3D: null - ,__clipRects: null - ,__currentDisplayShader: null - ,__currentGraphicsShader: null - ,__currentRenderTarget: null - ,__currentShader: null - ,__currentShaderBuffer: null - ,__defaultDisplayShader: null - ,__defaultGraphicsShader: null - ,__defaultRenderTarget: null - ,__defaultShader: null - ,__displayHeight: null - ,__displayWidth: null - ,__flipped: null - ,__gl: null - ,__height: null - ,__maskShader: null - ,__matrix: null - ,__maskObjects: null - ,__numClipRects: null - ,__offsetX: null - ,__offsetY: null - ,__projection: null - ,__projectionFlipped: null - ,__scrollRectMasks: null - ,__softwareRenderer: null - ,__stencilReference: null - ,__tempRect: null - ,__updatedStencil: null - ,__upscaled: null - ,__values: null - ,__width: null - ,applyAlpha: function(alpha) { - openfl_display_OpenGLRenderer.__alphaValue[0] = alpha; - if(this.__currentShaderBuffer != null) { - this.__currentShaderBuffer.addFloatOverride("openfl_Alpha",openfl_display_OpenGLRenderer.__alphaValue); - } else if(this.__currentShader != null) { - if(this.__currentShader.__alpha != null) { - this.__currentShader.__alpha.value = openfl_display_OpenGLRenderer.__alphaValue; - } - } - } - ,applyBitmapData: function(bitmapData,smooth,repeat) { - if(repeat == null) { - repeat = false; - } - if(this.__currentShaderBuffer != null) { - if(bitmapData != null) { - openfl_display_OpenGLRenderer.__textureSizeValue[0] = bitmapData.__textureWidth; - openfl_display_OpenGLRenderer.__textureSizeValue[1] = bitmapData.__textureHeight; - this.__currentShaderBuffer.addFloatOverride("openfl_TextureSize",openfl_display_OpenGLRenderer.__textureSizeValue); - } - } else if(this.__currentShader != null) { - if(this.__currentShader.__bitmap != null) { - this.__currentShader.__bitmap.input = bitmapData; - this.__currentShader.__bitmap.filter = smooth && this.__allowSmoothing ? 4 : 5; - this.__currentShader.__bitmap.mipFilter = 2; - this.__currentShader.__bitmap.wrap = repeat ? 2 : 0; - } - if(this.__currentShader.__texture != null) { - this.__currentShader.__texture.input = bitmapData; - this.__currentShader.__texture.filter = smooth && this.__allowSmoothing ? 4 : 5; - this.__currentShader.__texture.mipFilter = 2; - this.__currentShader.__texture.wrap = repeat ? 2 : 0; - } - if(this.__currentShader.__textureSize != null) { - if(bitmapData != null) { - openfl_display_OpenGLRenderer.__textureSizeValue[0] = bitmapData.__textureWidth; - openfl_display_OpenGLRenderer.__textureSizeValue[1] = bitmapData.__textureHeight; - this.__currentShader.__textureSize.value = openfl_display_OpenGLRenderer.__textureSizeValue; - } else { - this.__currentShader.__textureSize.value = null; - } - } - } - } - ,applyColorTransform: function(colorTransform) { - var enabled = colorTransform != null && !colorTransform.__isDefault(true); - this.applyHasColorTransform(enabled); - if(enabled) { - colorTransform.__setArrays(openfl_display_OpenGLRenderer.__colorMultipliersValue,openfl_display_OpenGLRenderer.__colorOffsetsValue); - if(this.__currentShaderBuffer != null) { - this.__currentShaderBuffer.addFloatOverride("openfl_ColorMultiplier",openfl_display_OpenGLRenderer.__colorMultipliersValue); - this.__currentShaderBuffer.addFloatOverride("openfl_ColorOffset",openfl_display_OpenGLRenderer.__colorOffsetsValue); - } else if(this.__currentShader != null) { - if(this.__currentShader.__colorMultiplier != null) { - this.__currentShader.__colorMultiplier.value = openfl_display_OpenGLRenderer.__colorMultipliersValue; - } - if(this.__currentShader.__colorOffset != null) { - this.__currentShader.__colorOffset.value = openfl_display_OpenGLRenderer.__colorOffsetsValue; - } - } - } else if(this.__currentShaderBuffer != null) { - this.__currentShaderBuffer.addFloatOverride("openfl_ColorMultiplier",openfl_display_OpenGLRenderer.__emptyColorValue); - this.__currentShaderBuffer.addFloatOverride("openfl_ColorOffset",openfl_display_OpenGLRenderer.__emptyColorValue); - } else if(this.__currentShader != null) { - if(this.__currentShader.__colorMultiplier != null) { - this.__currentShader.__colorMultiplier.value = openfl_display_OpenGLRenderer.__emptyColorValue; - } - if(this.__currentShader.__colorOffset != null) { - this.__currentShader.__colorOffset.value = openfl_display_OpenGLRenderer.__emptyColorValue; - } - } - } - ,applyHasColorTransform: function(enabled) { - openfl_display_OpenGLRenderer.__hasColorTransformValue[0] = enabled; - if(this.__currentShaderBuffer != null) { - this.__currentShaderBuffer.addBoolOverride("openfl_HasColorTransform",openfl_display_OpenGLRenderer.__hasColorTransformValue); - } else if(this.__currentShader != null) { - if(this.__currentShader.__hasColorTransform != null) { - this.__currentShader.__hasColorTransform.value = openfl_display_OpenGLRenderer.__hasColorTransformValue; - } - } - } - ,applyMatrix: function(matrix) { - if(this.__currentShaderBuffer != null) { - this.__currentShaderBuffer.addFloatOverride("openfl_Matrix",matrix); - } else if(this.__currentShader != null) { - if(this.__currentShader.__matrix != null) { - this.__currentShader.__matrix.value = matrix; - } - } - } - ,getMatrix: function(transform) { - if(this.gl != null) { - var values = this.__getMatrix(transform,1); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,0,values[0]); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,1,values[1]); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,2,values[2]); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,3,values[3]); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,4,values[4]); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,5,values[5]); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,6,values[6]); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,7,values[7]); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,8,values[8]); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,9,values[9]); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,10,values[10]); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,11,values[11]); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,12,values[12]); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,13,values[13]); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,14,values[14]); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,15,values[15]); - return this.__matrix; - } else { - lime_math__$Matrix4_Matrix4_$Impl_$.identity(this.__matrix); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,0,transform.a); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,1,transform.b); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,4,transform.c); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,5,transform.d); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,12,transform.tx); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,13,transform.ty); - return this.__matrix; - } - } - ,setShader: function(shader) { - this.__currentShaderBuffer = null; - if(this.__currentShader == shader) { - return; - } - var tmp = this.__currentShader != null; - if(shader == null) { - this.__currentShader = null; - this.__context3D.setProgram(null); - return; - } else { - this.__currentShader = shader; - this.__initShader(shader); - this.__context3D.setProgram(shader.program); - this.__context3D.__flushGLProgram(); - this.__currentShader.__enable(); - this.__context3D.__state.shader = shader; - } - } - ,setViewport: function() { - this.__gl.viewport(this.__offsetX,this.__offsetY,this.__displayWidth,this.__displayHeight); - } - ,updateShader: function() { - if(this.__currentShader != null) { - if(this.__currentShader.__position != null) { - this.__currentShader.__position.__useArray = true; - } - if(this.__currentShader.__textureCoord != null) { - this.__currentShader.__textureCoord.__useArray = true; - } - this.__context3D.setProgram(this.__currentShader.program); - this.__context3D.__flushGLProgram(); - this.__context3D.__flushGLTextures(); - this.__currentShader.__update(); - } - } - ,useAlphaArray: function() { - if(this.__currentShader != null) { - if(this.__currentShader.__alpha != null) { - this.__currentShader.__alpha.__useArray = true; - } - } - } - ,useColorTransformArray: function() { - if(this.__currentShader != null) { - if(this.__currentShader.__colorMultiplier != null) { - this.__currentShader.__colorMultiplier.__useArray = true; - } - if(this.__currentShader.__colorOffset != null) { - this.__currentShader.__colorOffset.__useArray = true; - } - } - } - ,__cleanup: function() { - if(this.__stencilReference > 0) { - this.__stencilReference = 0; - this.__context3D.setStencilActions(); - this.__context3D.setStencilReferenceValue(0,0,0); - } - if(this.__numClipRects > 0) { - this.__numClipRects = 0; - this.__scissorRect(); - } - } - ,__clear: function() { - if(this.__stage == null || this.__stage.__transparent) { - this.__context3D.clear(0,0,0,0,0,0,1); - } else { - this.__context3D.clear(this.__stage.__colorSplit[0],this.__stage.__colorSplit[1],this.__stage.__colorSplit[2],1,0,0,1); - } - this.__cleared = true; - } - ,__clearShader: function() { - if(this.__currentShader != null) { - if(this.__currentShaderBuffer == null) { - if(this.__currentShader.__bitmap != null) { - this.__currentShader.__bitmap.input = null; - } - } else { - this.__currentShaderBuffer.clearOverride(); - } - if(this.__currentShader.__texture != null) { - this.__currentShader.__texture.input = null; - } - if(this.__currentShader.__textureSize != null) { - this.__currentShader.__textureSize.value = null; - } - if(this.__currentShader.__hasColorTransform != null) { - this.__currentShader.__hasColorTransform.value = null; - } - if(this.__currentShader.__position != null) { - this.__currentShader.__position.value = null; - } - if(this.__currentShader.__matrix != null) { - this.__currentShader.__matrix.value = null; - } - this.__currentShader.__clearUseArray(); - } - } - ,__copyShader: function(other) { - this.__currentShader = other.__currentShader; - this.__currentShaderBuffer = other.__currentShaderBuffer; - this.__currentDisplayShader = other.__currentDisplayShader; - this.__currentGraphicsShader = other.__currentGraphicsShader; - } - ,__getMatrix: function(transform,pixelSnapping) { - var _matrix = openfl_geom_Matrix.__pool.get(); - _matrix.copyFrom(transform); - _matrix.concat(this.__worldTransform); - if(pixelSnapping == 0 || pixelSnapping == 1 && _matrix.b == 0 && _matrix.c == 0 && (_matrix.a < 1.001 && _matrix.a > 0.999) && (_matrix.d < 1.001 && _matrix.d > 0.999)) { - _matrix.tx = Math.round(_matrix.tx); - _matrix.ty = Math.round(_matrix.ty); - } - lime_math__$Matrix4_Matrix4_$Impl_$.identity(this.__matrix); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,0,_matrix.a); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,1,_matrix.b); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,4,_matrix.c); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,5,_matrix.d); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,12,_matrix.tx); - lime_math__$Matrix4_Matrix4_$Impl_$.set(this.__matrix,13,_matrix.ty); - lime_math__$Matrix4_Matrix4_$Impl_$.append(this.__matrix,this.__flipped ? this.__projectionFlipped : this.__projection); - this.__values[0] = lime_math__$Matrix4_Matrix4_$Impl_$.get(this.__matrix,0); - this.__values[1] = lime_math__$Matrix4_Matrix4_$Impl_$.get(this.__matrix,1); - this.__values[2] = lime_math__$Matrix4_Matrix4_$Impl_$.get(this.__matrix,2); - this.__values[3] = lime_math__$Matrix4_Matrix4_$Impl_$.get(this.__matrix,3); - this.__values[4] = lime_math__$Matrix4_Matrix4_$Impl_$.get(this.__matrix,4); - this.__values[5] = lime_math__$Matrix4_Matrix4_$Impl_$.get(this.__matrix,5); - this.__values[6] = lime_math__$Matrix4_Matrix4_$Impl_$.get(this.__matrix,6); - this.__values[7] = lime_math__$Matrix4_Matrix4_$Impl_$.get(this.__matrix,7); - this.__values[8] = lime_math__$Matrix4_Matrix4_$Impl_$.get(this.__matrix,8); - this.__values[9] = lime_math__$Matrix4_Matrix4_$Impl_$.get(this.__matrix,9); - this.__values[10] = lime_math__$Matrix4_Matrix4_$Impl_$.get(this.__matrix,10); - this.__values[11] = lime_math__$Matrix4_Matrix4_$Impl_$.get(this.__matrix,11); - this.__values[12] = lime_math__$Matrix4_Matrix4_$Impl_$.get(this.__matrix,12); - this.__values[13] = lime_math__$Matrix4_Matrix4_$Impl_$.get(this.__matrix,13); - this.__values[14] = lime_math__$Matrix4_Matrix4_$Impl_$.get(this.__matrix,14); - this.__values[15] = lime_math__$Matrix4_Matrix4_$Impl_$.get(this.__matrix,15); - openfl_geom_Matrix.__pool.release(_matrix); - return this.__values; - } - ,__initShader: function(shader) { - if(shader != null) { - if(shader.__context == null) { - shader.__context = this.__context3D; - shader.__init(); - } - return shader; - } - return this.__defaultShader; - } - ,__initDisplayShader: function(shader) { - if(shader != null) { - if(shader.__context == null) { - shader.__context = this.__context3D; - shader.__init(); - } - return shader; - } - return this.__defaultDisplayShader; - } - ,__initGraphicsShader: function(shader) { - if(shader != null) { - if(shader.__context == null) { - shader.__context = this.__context3D; - shader.__init(); - } - return shader; - } - return this.__defaultGraphicsShader; - } - ,__initShaderBuffer: function(shaderBuffer) { - if(shaderBuffer != null) { - return this.__initGraphicsShader(shaderBuffer.shader); - } - return this.__defaultGraphicsShader; - } - ,__popMask: function() { - if(this.__stencilReference == 0) { - return; - } - var mask = this.__maskObjects.pop(); - if(this.__stencilReference > 1) { - this.__context3D.setStencilActions(2,1,0,0,5); - this.__context3D.setStencilReferenceValue(this.__stencilReference,255,255); - this.__context3D.setColorMask(false,false,false,false); - mask.__renderGLMask(this); - this.__stencilReference--; - this.__context3D.setStencilActions(2,1,5,5,5); - this.__context3D.setStencilReferenceValue(this.__stencilReference,255,0); - this.__context3D.setColorMask(true,true,true,true); - } else { - this.__stencilReference = 0; - this.__context3D.setStencilActions(); - this.__context3D.setStencilReferenceValue(0,0,0); - } - } - ,__popMaskObject: function(object,handleScrollRect) { - if(handleScrollRect == null) { - handleScrollRect = true; - } - if(object.__mask != null) { - this.__popMask(); - } - if(handleScrollRect && object.__scrollRect != null) { - if(object.__renderTransform.b != 0 || object.__renderTransform.c != 0) { - this.__scrollRectMasks.release(this.__maskObjects[this.__maskObjects.length - 1]); - this.__popMask(); - } else { - this.__popMaskRect(); - } - } - } - ,__popMaskRect: function() { - if(this.__numClipRects > 0) { - this.__numClipRects--; - if(this.__numClipRects > 0) { - this.__scissorRect(this.__clipRects[this.__numClipRects - 1]); - } else { - this.__scissorRect(); - } - } - } - ,__pushMask: function(mask) { - if(this.__stencilReference == 0) { - this.__context3D.clear(0,0,0,0,0,0,4); - this.__updatedStencil = true; - } - this.__context3D.setStencilActions(2,1,2,5,5); - this.__context3D.setStencilReferenceValue(this.__stencilReference,255,255); - this.__context3D.setColorMask(false,false,false,false); - mask.__renderGLMask(this); - this.__maskObjects.push(mask); - this.__stencilReference++; - this.__context3D.setStencilActions(2,1,5,5,5); - this.__context3D.setStencilReferenceValue(this.__stencilReference,255,0); - this.__context3D.setColorMask(true,true,true,true); - } - ,__pushMaskObject: function(object,handleScrollRect) { - if(handleScrollRect == null) { - handleScrollRect = true; - } - if(handleScrollRect && object.__scrollRect != null) { - if(object.__renderTransform.b != 0 || object.__renderTransform.c != 0) { - var shape = this.__scrollRectMasks.get(); - shape.get_graphics().clear(); - shape.get_graphics().beginFill(65280); - shape.get_graphics().drawRect(object.__scrollRect.x,object.__scrollRect.y,object.__scrollRect.width,object.__scrollRect.height); - shape.__renderTransform.copyFrom(object.__renderTransform); - this.__pushMask(shape); - } else { - this.__pushMaskRect(object.__scrollRect,object.__renderTransform); - } - } - if(object.__mask != null) { - this.__pushMask(object.__mask); - } - } - ,__pushMaskRect: function(rect,transform) { - if(this.__numClipRects == this.__clipRects.length) { - this.__clipRects[this.__numClipRects] = new openfl_geom_Rectangle(); - } - var _matrix = openfl_geom_Matrix.__pool.get(); - _matrix.copyFrom(transform); - _matrix.concat(this.__worldTransform); - var clipRect = this.__clipRects[this.__numClipRects]; - rect.__transform(clipRect,_matrix); - if(this.__numClipRects > 0) { - var parentClipRect = this.__clipRects[this.__numClipRects - 1]; - clipRect.__contract(parentClipRect.x,parentClipRect.y,parentClipRect.width,parentClipRect.height); - } - if(clipRect.height < 0) { - clipRect.height = 0; - } - if(clipRect.width < 0) { - clipRect.width = 0; - } - openfl_geom_Matrix.__pool.release(_matrix); - this.__scissorRect(clipRect); - this.__numClipRects++; - } - ,__render: function(object) { - this.__context3D.setColorMask(true,true,true,true); - this.__context3D.setCulling(3); - this.__context3D.setDepthTest(false,0); - this.__context3D.setStencilActions(); - this.__context3D.setStencilReferenceValue(0,0,0); - this.__context3D.setScissorRectangle(null); - this.__blendMode = null; - this.__setBlendMode(10); - if(this.__defaultRenderTarget == null) { - openfl_display_OpenGLRenderer.__scissorRectangle.setTo(this.__offsetX,this.__offsetY,this.__displayWidth,this.__displayHeight); - this.__context3D.setScissorRectangle(openfl_display_OpenGLRenderer.__scissorRectangle); - this.__upscaled = this.__worldTransform.a != 1 || this.__worldTransform.d != 1; - object.__renderGL(this); - if(this.__offsetX > 0 || this.__offsetY > 0) { - if(this.__offsetX > 0) { - openfl_display_OpenGLRenderer.__scissorRectangle.setTo(0,0,this.__offsetX,this.__height); - this.__context3D.setScissorRectangle(openfl_display_OpenGLRenderer.__scissorRectangle); - this.__context3D.__flushGL(); - this.__gl.clearColor(0,0,0,1); - this.__gl.clear(this.__gl.COLOR_BUFFER_BIT); - openfl_display_OpenGLRenderer.__scissorRectangle.setTo(this.__offsetX + this.__displayWidth,0,this.__width,this.__height); - this.__context3D.setScissorRectangle(openfl_display_OpenGLRenderer.__scissorRectangle); - this.__context3D.__flushGL(); - this.__gl.clearColor(0,0,0,1); - this.__gl.clear(this.__gl.COLOR_BUFFER_BIT); - } - if(this.__offsetY > 0) { - openfl_display_OpenGLRenderer.__scissorRectangle.setTo(0,0,this.__width,this.__offsetY); - this.__context3D.setScissorRectangle(openfl_display_OpenGLRenderer.__scissorRectangle); - this.__context3D.__flushGL(); - this.__gl.clearColor(0,0,0,1); - this.__gl.clear(this.__gl.COLOR_BUFFER_BIT); - openfl_display_OpenGLRenderer.__scissorRectangle.setTo(0,this.__offsetY + this.__displayHeight,this.__width,this.__height); - this.__context3D.setScissorRectangle(openfl_display_OpenGLRenderer.__scissorRectangle); - this.__context3D.__flushGL(); - this.__gl.clearColor(0,0,0,1); - this.__gl.clear(this.__gl.COLOR_BUFFER_BIT); - } - this.__context3D.setScissorRectangle(null); - } - } else { - openfl_display_OpenGLRenderer.__scissorRectangle.setTo(this.__offsetX,this.__offsetY,this.__displayWidth,this.__displayHeight); - this.__context3D.setScissorRectangle(openfl_display_OpenGLRenderer.__scissorRectangle); - var cacheMask = object.__mask; - var cacheScrollRect = object.__scrollRect; - object.__mask = null; - object.__scrollRect = null; - object.__renderGL(this); - object.__mask = cacheMask; - object.__scrollRect = cacheScrollRect; - } - this.__context3D.present(); - } - ,__renderFilterPass: function(source,shader,smooth,clear) { - if(clear == null) { - clear = true; - } - if(source == null || shader == null) { - return; - } - if(this.__defaultRenderTarget == null) { - return; - } - var cacheRTT = this.__context3D.__state.renderToTexture; - var cacheRTTDepthStencil = this.__context3D.__state.renderToTextureDepthStencil; - var cacheRTTAntiAlias = this.__context3D.__state.renderToTextureAntiAlias; - var cacheRTTSurfaceSelector = this.__context3D.__state.renderToTextureSurfaceSelector; - this.__context3D.setRenderToTexture(this.__defaultRenderTarget.getTexture(this.__context3D),false); - if(clear) { - this.__context3D.clear(0,0,0,0,0,0,1); - } - var shader1 = this.__initShader(shader); - this.setShader(shader1); - this.applyAlpha(1); - this.applyBitmapData(source,smooth); - this.applyColorTransform(null); - this.applyMatrix(this.__getMatrix(source.__renderTransform,1)); - this.updateShader(); - var vertexBuffer = source.getVertexBuffer(this.__context3D); - if(shader1.__position != null) { - this.__context3D.setVertexBufferAt(shader1.__position.index,vertexBuffer,0,3); - } - if(shader1.__textureCoord != null) { - this.__context3D.setVertexBufferAt(shader1.__textureCoord.index,vertexBuffer,3,2); - } - var indexBuffer = source.getIndexBuffer(this.__context3D); - this.__context3D.drawTriangles(indexBuffer); - if(cacheRTT != null) { - this.__context3D.setRenderToTexture(cacheRTT,cacheRTTDepthStencil,cacheRTTAntiAlias,cacheRTTSurfaceSelector); - } else { - this.__context3D.setRenderToBackBuffer(); - } - this.__clearShader(); - } - ,__resize: function(width,height) { - this.__width = width; - this.__height = height; - var w = this.__defaultRenderTarget == null ? this.__stage.stageWidth : this.__defaultRenderTarget.width; - var h = this.__defaultRenderTarget == null ? this.__stage.stageHeight : this.__defaultRenderTarget.height; - var tmp; - if(this.__defaultRenderTarget == null) { - var _this = this.__worldTransform; - tmp = Math.round(0 * _this.a + 0 * _this.c + _this.tx); - } else { - tmp = 0; - } - this.__offsetX = tmp; - var tmp1; - if(this.__defaultRenderTarget == null) { - var _this1 = this.__worldTransform; - tmp1 = Math.round(0 * _this1.b + 0 * _this1.d + _this1.ty); - } else { - tmp1 = 0; - } - this.__offsetY = tmp1; - var tmp2; - if(this.__defaultRenderTarget == null) { - var _this2 = this.__worldTransform; - tmp2 = Math.round(w * _this2.a + 0 * _this2.c + _this2.tx - this.__offsetX); - } else { - tmp2 = w; - } - this.__displayWidth = tmp2; - var tmp3; - if(this.__defaultRenderTarget == null) { - var _this3 = this.__worldTransform; - tmp3 = Math.round(0 * _this3.b + h * _this3.d + _this3.ty - this.__offsetY); - } else { - tmp3 = h; - } - this.__displayHeight = tmp3; - lime_math__$Matrix4_Matrix4_$Impl_$.createOrtho(this.__projection,0,this.__displayWidth + this.__offsetX * 2,0,this.__displayHeight + this.__offsetY * 2,-1000,1000); - lime_math__$Matrix4_Matrix4_$Impl_$.createOrtho(this.__projectionFlipped,0,this.__displayWidth + this.__offsetX * 2,this.__displayHeight + this.__offsetY * 2,0,-1000,1000); - } - ,__resumeClipAndMask: function(childRenderer) { - if(this.__stencilReference > 0) { - this.__context3D.setStencilActions(2,1,5,5,5); - this.__context3D.setStencilReferenceValue(this.__stencilReference,255,0); - } else { - this.__context3D.setStencilActions(); - this.__context3D.setStencilReferenceValue(0,0,0); - } - if(this.__numClipRects > 0) { - this.__scissorRect(this.__clipRects[this.__numClipRects - 1]); - } else { - this.__scissorRect(); - } - } - ,__scissorRect: function(clipRect) { - if(clipRect != null) { - var x = Math.floor(clipRect.x); - var y = Math.floor(clipRect.y); - var width = clipRect.width > 0 ? Math.ceil(clipRect.get_right()) - x : 0; - var height = clipRect.height > 0 ? Math.ceil(clipRect.get_bottom()) - y : 0; - if(width < 0) { - width = 0; - } - if(height < 0) { - height = 0; - } - openfl_display_OpenGLRenderer.__scissorRectangle.setTo(x,y,width,height); - this.__context3D.setScissorRectangle(openfl_display_OpenGLRenderer.__scissorRectangle); - } else { - this.__context3D.setScissorRectangle(null); - } - } - ,__setBlendMode: function(value) { - if(this.__overrideBlendMode != null) { - value = this.__overrideBlendMode; - } - if(this.__blendMode == value) { - return; - } - this.__blendMode = value; - switch(value) { - case 0: - this.__context3D.setBlendFactors(2,2); - break; - case 9: - this.__context3D.setBlendFactors(1,5); - break; - case 12: - this.__context3D.setBlendFactors(2,6); - break; - case 14: - this.__context3D.setBlendFactors(2,2); - this.__context3D.__setGLBlendEquation(this.__gl.FUNC_REVERSE_SUBTRACT); - break; - default: - this.__context3D.setBlendFactors(2,5); - } - } - ,__setRenderTarget: function(renderTarget) { - this.__defaultRenderTarget = renderTarget; - this.__flipped = renderTarget == null; - if(renderTarget != null) { - this.__resize(renderTarget.width,renderTarget.height); - } - } - ,__setShaderBuffer: function(shaderBuffer) { - this.setShader(shaderBuffer.shader); - this.__currentShaderBuffer = shaderBuffer; - } - ,__suspendClipAndMask: function() { - if(this.__stencilReference > 0) { - this.__context3D.setStencilActions(); - this.__context3D.setStencilReferenceValue(0,0,0); - } - if(this.__numClipRects > 0) { - this.__scissorRect(); - } - } - ,__updateShaderBuffer: function(bufferOffset) { - if(this.__currentShader != null && this.__currentShaderBuffer != null) { - this.__currentShader.__updateFromBuffer(this.__currentShaderBuffer,bufferOffset); - } - } - ,__class__: openfl_display_OpenGLRenderer -}); -var openfl_display_PNGEncoderOptions = function(fastCompression) { - if(fastCompression == null) { - fastCompression = false; - } - this.fastCompression = fastCompression; -}; -$hxClasses["openfl.display.PNGEncoderOptions"] = openfl_display_PNGEncoderOptions; -openfl_display_PNGEncoderOptions.__name__ = "openfl.display.PNGEncoderOptions"; -openfl_display_PNGEncoderOptions.prototype = { - fastCompression: null - ,__class__: openfl_display_PNGEncoderOptions -}; -var openfl_display__$PixelSnapping_PixelSnapping_$Impl_$ = {}; -$hxClasses["openfl.display._PixelSnapping.PixelSnapping_Impl_"] = openfl_display__$PixelSnapping_PixelSnapping_$Impl_$; -openfl_display__$PixelSnapping_PixelSnapping_$Impl_$.__name__ = "openfl.display._PixelSnapping.PixelSnapping_Impl_"; -openfl_display__$PixelSnapping_PixelSnapping_$Impl_$.fromString = function(value) { - switch(value) { - case "always": - return 0; - case "auto": - return 1; - case "never": - return 2; - default: - return null; - } -}; -openfl_display__$PixelSnapping_PixelSnapping_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "always"; - case 1: - return "auto"; - case 2: - return "never"; - default: - return null; - } -}; -var openfl_display_Preloader = function(display) { - this.onComplete = new lime_app__$Event_$Void_$Void(); - this.display = display; - if(display != null) { - display.addEventListener("unload",$bind(this,this.display_onUnload)); - openfl_Lib.get_current().addChild(display); - } -}; -$hxClasses["openfl.display.Preloader"] = openfl_display_Preloader; -openfl_display_Preloader.__name__ = "openfl.display.Preloader"; -openfl_display_Preloader.prototype = { - onComplete: null - ,complete: null - ,display: null - ,ready: null - ,start: function() { - this.ready = true; - openfl_Lib.get_current().get_loaderInfo().__complete(); - if(this.display != null) { - var complete = new openfl_events_Event("complete",true,true); - this.display.dispatchEvent(complete); - if(!complete.isDefaultPrevented()) { - this.display.dispatchEvent(new openfl_events_Event("unload")); - } - } else if(!this.complete) { - this.complete = true; - this.onComplete.dispatch(); - } - } - ,update: function(loaded,total) { - openfl_Lib.get_current().get_loaderInfo().__update(loaded,total); - if(this.display != null) { - this.display.dispatchEvent(new openfl_events_ProgressEvent("progress",true,true,loaded,total)); - } - } - ,display_onUnload: function(event) { - if(this.display != null) { - this.display.removeEventListener("unload",$bind(this,this.display_onUnload)); - if(this.display.parent == openfl_Lib.get_current()) { - openfl_Lib.get_current().removeChild(this.display); - } - openfl_Lib.get_current().stage.set_focus(null); - this.display = null; - } - if(this.ready) { - if(!this.complete) { - this.complete = true; - this.onComplete.dispatch(); - } - } - } - ,__class__: openfl_display_Preloader -}; -var openfl_display_DefaultPreloader = function() { - openfl_display_Sprite.call(this); - var backgroundColor = this.getBackgroundColor(); - var r = backgroundColor >> 16 & 255; - var g = backgroundColor >> 8 & 255; - var b = backgroundColor & 255; - var perceivedLuminosity = 0.299 * r + 0.587 * g + 0.114 * b; - var color = 0; - if(perceivedLuminosity < 70) { - color = 16777215; - } - var x = 30; - var height = 7; - var y = this.getHeight() / 2 - height / 2; - var width = this.getWidth() - x * 2; - var padding = 2; - this.outline = new openfl_display_Sprite(); - this.outline.get_graphics().beginFill(color,0.07); - this.outline.get_graphics().drawRect(0,0,width,height); - this.outline.set_x(x); - this.outline.set_y(y); - this.outline.set_alpha(0); - this.addChild(this.outline); - this.progress = new openfl_display_Sprite(); - this.progress.get_graphics().beginFill(color,0.35); - this.progress.get_graphics().drawRect(0,0,width - padding * 2,height - padding * 2); - this.progress.set_x(x + padding); - this.progress.set_y(y + padding); - this.progress.set_scaleX(0); - this.progress.set_alpha(0); - this.addChild(this.progress); - this.startAnimation = openfl_Lib.getTimer() + 100; - this.endAnimation = this.startAnimation + 1000; - this.addEventListener("addedToStage",$bind(this,this.this_onAddedToStage)); -}; -$hxClasses["openfl.display.DefaultPreloader"] = openfl_display_DefaultPreloader; -openfl_display_DefaultPreloader.__name__ = "openfl.display.DefaultPreloader"; -openfl_display_DefaultPreloader.__super__ = openfl_display_Sprite; -openfl_display_DefaultPreloader.prototype = $extend(openfl_display_Sprite.prototype,{ - endAnimation: null - ,outline: null - ,progress: null - ,startAnimation: null - ,getBackgroundColor: function() { - var attributes = openfl_Lib.get_current().stage.window.context.attributes; - if(Object.prototype.hasOwnProperty.call(attributes,"background") && attributes.background != null) { - return attributes.background; - } else { - return 0; - } - } - ,getHeight: function() { - var height = openfl_Lib.get_current().stage.window.__height; - if(height > 0) { - return height; - } else { - return openfl_Lib.get_current().stage.stageHeight; - } - } - ,getWidth: function() { - var width = openfl_Lib.get_current().stage.window.__width; - if(width > 0) { - return width; - } else { - return openfl_Lib.get_current().stage.stageWidth; - } - } - ,onInit: function() { - this.addEventListener("enterFrame",$bind(this,this.this_onEnterFrame)); - } - ,onLoaded: function() { - this.removeEventListener("enterFrame",$bind(this,this.this_onEnterFrame)); - this.dispatchEvent(new openfl_events_Event("unload")); - } - ,onUpdate: function(bytesLoaded,bytesTotal) { - var percentLoaded = 0.0; - if(bytesTotal > 0) { - percentLoaded = bytesLoaded / bytesTotal; - if(percentLoaded > 1) { - percentLoaded = 1; - } - } - this.progress.set_scaleX(percentLoaded); - } - ,this_onAddedToStage: function(event) { - this.removeEventListener("addedToStage",$bind(this,this.this_onAddedToStage)); - this.onInit(); - this.onUpdate(this.get_loaderInfo().bytesLoaded,this.get_loaderInfo().bytesTotal); - this.addEventListener("progress",$bind(this,this.this_onProgress)); - this.addEventListener("complete",$bind(this,this.this_onComplete)); - } - ,this_onComplete: function(event) { - event.preventDefault(); - this.removeEventListener("progress",$bind(this,this.this_onProgress)); - this.removeEventListener("complete",$bind(this,this.this_onComplete)); - this.onLoaded(); - } - ,this_onEnterFrame: function(event) { - var elapsed = openfl_Lib.getTimer() - this.startAnimation; - var total = this.endAnimation - this.startAnimation; - var percent = elapsed / total; - if(percent < 0) { - percent = 0; - } - if(percent > 1) { - percent = 1; - } - this.outline.set_alpha(percent); - this.progress.set_alpha(percent); - } - ,this_onProgress: function(event) { - this.onUpdate(event.bytesLoaded | 0,event.bytesTotal | 0); - } - ,__class__: openfl_display_DefaultPreloader -}); -var openfl_display__$ShaderData_ShaderData_$Impl_$ = {}; -$hxClasses["openfl.display._ShaderData.ShaderData_Impl_"] = openfl_display__$ShaderData_ShaderData_$Impl_$; -openfl_display__$ShaderData_ShaderData_$Impl_$.__name__ = "openfl.display._ShaderData.ShaderData_Impl_"; -openfl_display__$ShaderData_ShaderData_$Impl_$._new = function(byteArray) { - var this1 = { }; - return this1; -}; -var openfl_display_ShaderInput = function() { - this.channels = 0; - this.filter = 5; - this.height = 0; - this.index = 0; - this.mipFilter = 2; - this.width = 0; - this.wrap = 0; -}; -$hxClasses["openfl.display.ShaderInput"] = openfl_display_ShaderInput; -openfl_display_ShaderInput.__name__ = "openfl.display.ShaderInput"; -openfl_display_ShaderInput.prototype = { - channels: null - ,filter: null - ,height: null - ,index: null - ,input: null - ,mipFilter: null - ,name: null - ,width: null - ,wrap: null - ,__isUniform: null - ,__disableGL: function(context,id) { - var gl = context.gl; - context.setTextureAt(id,null); - } - ,__updateGL: function(context,id,overrideInput,overrideFilter,overrideMipFilter,overrideWrap) { - var gl = context.gl; - var input = overrideInput != null ? overrideInput : this.input; - var filter = overrideFilter != null ? overrideFilter : this.filter; - var mipFilter = overrideMipFilter != null ? overrideMipFilter : this.mipFilter; - var wrap = overrideWrap != null ? overrideWrap : this.wrap; - if(input != null) { - var bitmapData = input; - context.setTextureAt(id,bitmapData.getTexture(context)); - context.setSamplerStateAt(id,wrap,filter,mipFilter); - } else { - context.setTextureAt(id,null); - } - } - ,__class__: openfl_display_ShaderInput -}; -var openfl_display_ShaderParameter = function() { - this.index = 0; -}; -$hxClasses["openfl.display.ShaderParameter"] = openfl_display_ShaderParameter; -openfl_display_ShaderParameter.__name__ = "openfl.display.ShaderParameter"; -openfl_display_ShaderParameter.prototype = { - index: null - ,name: null - ,type: null - ,value: null - ,__arrayLength: null - ,__internal: null - ,__isBool: null - ,__isFloat: null - ,__isInt: null - ,__isUniform: null - ,__length: null - ,__uniformMatrix: null - ,__useArray: null - ,__disableGL: function(context) { - var gl = context.gl; - if(!this.__isUniform) { - var _g = 0; - var _g1 = this.__arrayLength; - while(_g < _g1) { - var i = _g++; - gl.disableVertexAttribArray(this.index + i); - } - } - } - ,__updateGL: function(context,overrideValue) { - var gl = context.gl; - var value = overrideValue != null ? overrideValue : this.value; - var boolValue = this.__isBool ? value : null; - var floatValue = this.__isFloat ? value : null; - var intValue = this.__isInt ? value : null; - if(this.__isUniform) { - if(value != null && value.length >= this.__length) { - switch(this.type) { - case 0: - gl.uniform1i(this.index,boolValue[0] ? 1 : 0); - break; - case 1: - gl.uniform2i(this.index,boolValue[0] ? 1 : 0,boolValue[1] ? 1 : 0); - break; - case 2: - gl.uniform3i(this.index,boolValue[0] ? 1 : 0,boolValue[1] ? 1 : 0,boolValue[2] ? 1 : 0); - break; - case 3: - gl.uniform4i(this.index,boolValue[0] ? 1 : 0,boolValue[1] ? 1 : 0,boolValue[2] ? 1 : 0,boolValue[3] ? 1 : 0); - break; - case 4: - gl.uniform1f(this.index,floatValue[0]); - break; - case 5: - gl.uniform2f(this.index,floatValue[0],floatValue[1]); - break; - case 6: - gl.uniform3f(this.index,floatValue[0],floatValue[1],floatValue[2]); - break; - case 7: - gl.uniform4f(this.index,floatValue[0],floatValue[1],floatValue[2],floatValue[3]); - break; - case 8: - gl.uniform1i(this.index,intValue[0]); - break; - case 9: - gl.uniform2i(this.index,intValue[0],intValue[1]); - break; - case 10: - gl.uniform3i(this.index,intValue[0],intValue[1],intValue[2]); - break; - case 11: - gl.uniform4i(this.index,intValue[0],intValue[1],intValue[2],intValue[3]); - break; - case 12: - this.__uniformMatrix[0] = floatValue[0]; - this.__uniformMatrix[1] = floatValue[1]; - this.__uniformMatrix[2] = floatValue[2]; - this.__uniformMatrix[3] = floatValue[3]; - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.uniformMatrix2fv(gl,this.index,false,this.__uniformMatrix); - break; - case 16: - this.__uniformMatrix[0] = floatValue[0]; - this.__uniformMatrix[1] = floatValue[1]; - this.__uniformMatrix[2] = floatValue[2]; - this.__uniformMatrix[3] = floatValue[3]; - this.__uniformMatrix[4] = floatValue[4]; - this.__uniformMatrix[5] = floatValue[5]; - this.__uniformMatrix[6] = floatValue[6]; - this.__uniformMatrix[7] = floatValue[7]; - this.__uniformMatrix[8] = floatValue[8]; - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.uniformMatrix3fv(gl,this.index,false,this.__uniformMatrix); - break; - case 20: - this.__uniformMatrix[0] = floatValue[0]; - this.__uniformMatrix[1] = floatValue[1]; - this.__uniformMatrix[2] = floatValue[2]; - this.__uniformMatrix[3] = floatValue[3]; - this.__uniformMatrix[4] = floatValue[4]; - this.__uniformMatrix[5] = floatValue[5]; - this.__uniformMatrix[6] = floatValue[6]; - this.__uniformMatrix[7] = floatValue[7]; - this.__uniformMatrix[8] = floatValue[8]; - this.__uniformMatrix[9] = floatValue[9]; - this.__uniformMatrix[10] = floatValue[10]; - this.__uniformMatrix[11] = floatValue[11]; - this.__uniformMatrix[12] = floatValue[12]; - this.__uniformMatrix[13] = floatValue[13]; - this.__uniformMatrix[14] = floatValue[14]; - this.__uniformMatrix[15] = floatValue[15]; - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.uniformMatrix4fv(gl,this.index,false,this.__uniformMatrix); - break; - default: - } - } else { - switch(this.type) { - case 1:case 9: - gl.uniform2i(this.index,0,0); - break; - case 3:case 11: - gl.uniform4i(this.index,0,0,0,0); - break; - case 4: - gl.uniform1f(this.index,0); - break; - case 5: - gl.uniform2f(this.index,0,0); - break; - case 6: - gl.uniform3f(this.index,0,0,0); - break; - case 7: - gl.uniform4f(this.index,0,0,0,0); - break; - case 0:case 8: - gl.uniform1i(this.index,0); - break; - case 2:case 10: - gl.uniform3i(this.index,0,0,0); - break; - case 12: - this.__uniformMatrix[0] = 0; - this.__uniformMatrix[1] = 0; - this.__uniformMatrix[2] = 0; - this.__uniformMatrix[3] = 0; - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.uniformMatrix2fv(gl,this.index,false,this.__uniformMatrix); - break; - case 16: - this.__uniformMatrix[0] = 0; - this.__uniformMatrix[1] = 0; - this.__uniformMatrix[2] = 0; - this.__uniformMatrix[3] = 0; - this.__uniformMatrix[4] = 0; - this.__uniformMatrix[5] = 0; - this.__uniformMatrix[6] = 0; - this.__uniformMatrix[7] = 0; - this.__uniformMatrix[8] = 0; - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.uniformMatrix3fv(gl,this.index,false,this.__uniformMatrix); - break; - case 20: - this.__uniformMatrix[0] = 0; - this.__uniformMatrix[1] = 0; - this.__uniformMatrix[2] = 0; - this.__uniformMatrix[3] = 0; - this.__uniformMatrix[4] = 0; - this.__uniformMatrix[5] = 0; - this.__uniformMatrix[6] = 0; - this.__uniformMatrix[7] = 0; - this.__uniformMatrix[8] = 0; - this.__uniformMatrix[9] = 0; - this.__uniformMatrix[10] = 0; - this.__uniformMatrix[11] = 0; - this.__uniformMatrix[12] = 0; - this.__uniformMatrix[13] = 0; - this.__uniformMatrix[14] = 0; - this.__uniformMatrix[15] = 0; - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.uniformMatrix4fv(gl,this.index,false,this.__uniformMatrix); - break; - default: - } - } - } else if(!this.__useArray && (value == null || value.length == this.__length)) { - var _g = 0; - var _g1 = this.__arrayLength; - while(_g < _g1) { - var i = _g++; - gl.disableVertexAttribArray(this.index + i); - } - if(value != null) { - switch(this.type) { - case 0: - gl.vertexAttrib1f(this.index,boolValue[0] ? 1 : 0); - break; - case 1: - gl.vertexAttrib2f(this.index,boolValue[0] ? 1 : 0,boolValue[1] ? 1 : 0); - break; - case 2: - gl.vertexAttrib3f(this.index,boolValue[0] ? 1 : 0,boolValue[1] ? 1 : 0,boolValue[2] ? 1 : 0); - break; - case 3: - gl.vertexAttrib4f(this.index,boolValue[0] ? 1 : 0,boolValue[1] ? 1 : 0,boolValue[2] ? 1 : 0,boolValue[3] ? 1 : 0); - break; - case 4: - gl.vertexAttrib1f(this.index,floatValue[0]); - break; - case 5: - gl.vertexAttrib2f(this.index,floatValue[0],floatValue[1]); - break; - case 6: - gl.vertexAttrib3f(this.index,floatValue[0],floatValue[1],floatValue[2]); - break; - case 7: - gl.vertexAttrib4f(this.index,floatValue[0],floatValue[1],floatValue[2],floatValue[3]); - break; - case 8: - gl.vertexAttrib1f(this.index,intValue[0]); - break; - case 9: - gl.vertexAttrib2f(this.index,intValue[0],intValue[1]); - break; - case 10: - gl.vertexAttrib3f(this.index,intValue[0],intValue[1],intValue[2]); - break; - case 11: - gl.vertexAttrib4f(this.index,intValue[0],intValue[1],intValue[2],intValue[3]); - break; - case 12: - gl.vertexAttrib2f(this.index + 0,floatValue[0],floatValue[1]); - gl.vertexAttrib2f(this.index + 1,floatValue[2],floatValue[3]); - break; - case 16: - gl.vertexAttrib3f(this.index + 0,floatValue[0],floatValue[1],floatValue[2]); - gl.vertexAttrib3f(this.index + 1,floatValue[3],floatValue[4],floatValue[5]); - gl.vertexAttrib3f(this.index + 2,floatValue[6],floatValue[7],floatValue[8]); - break; - case 20: - gl.vertexAttrib4f(this.index + 0,floatValue[0],floatValue[1],floatValue[2],floatValue[3]); - gl.vertexAttrib4f(this.index + 1,floatValue[4],floatValue[5],floatValue[6],floatValue[7]); - gl.vertexAttrib4f(this.index + 2,floatValue[8],floatValue[9],floatValue[10],floatValue[11]); - gl.vertexAttrib4f(this.index + 3,floatValue[12],floatValue[13],floatValue[14],floatValue[15]); - break; - default: - } - } else { - switch(this.type) { - case 1:case 5:case 9: - gl.vertexAttrib2f(this.index,0,0); - break; - case 3:case 7:case 11: - gl.vertexAttrib4f(this.index,0,0,0,0); - break; - case 0:case 4:case 8: - gl.vertexAttrib1f(this.index,0); - break; - case 2:case 6:case 10: - gl.vertexAttrib3f(this.index,0,0,0); - break; - case 12: - gl.vertexAttrib2f(this.index + 0,0,0); - gl.vertexAttrib2f(this.index + 1,0,0); - break; - case 16: - gl.vertexAttrib3f(this.index + 0,0,0,0); - gl.vertexAttrib3f(this.index + 1,0,0,0); - gl.vertexAttrib3f(this.index + 2,0,0,0); - break; - case 20: - gl.vertexAttrib4f(this.index + 0,0,0,0,0); - gl.vertexAttrib4f(this.index + 1,0,0,0,0); - gl.vertexAttrib4f(this.index + 2,0,0,0,0); - gl.vertexAttrib4f(this.index + 3,0,0,0,0); - break; - default: - } - } - } else { - var _g2 = 0; - var _g11 = this.__arrayLength; - while(_g2 < _g11) { - var i1 = _g2++; - gl.enableVertexAttribArray(this.index + i1); - } - } - } - ,__updateGLFromBuffer: function(context,buffer,position,length,bufferOffset) { - var gl = context.gl; - if(this.__isUniform) { - if(length >= this.__length) { - switch(this.type) { - case 1:case 9: - gl.uniform2i(this.index,buffer[position] | 0,buffer[position + 1] | 0); - break; - case 3:case 11: - gl.uniform4i(this.index,buffer[position] | 0,buffer[position + 1] | 0,buffer[position + 2] | 0,buffer[position + 3] | 0); - break; - case 4: - gl.uniform1f(this.index,buffer[position]); - break; - case 5: - gl.uniform2f(this.index,buffer[position],buffer[position + 1]); - break; - case 6: - gl.uniform3f(this.index,buffer[position],buffer[position + 1],buffer[position + 2]); - break; - case 7: - gl.uniform4f(this.index,buffer[position],buffer[position + 1],buffer[position + 2],buffer[position + 3]); - break; - case 0:case 8: - gl.uniform1i(this.index,buffer[position] | 0); - break; - case 2:case 10: - gl.uniform3i(this.index,buffer[position] | 0,buffer[position + 1] | 0,buffer[position + 2] | 0); - break; - case 12: - this.__uniformMatrix[0] = buffer[position]; - this.__uniformMatrix[1] = buffer[position + 1]; - this.__uniformMatrix[2] = buffer[position + 2]; - this.__uniformMatrix[3] = buffer[position + 3]; - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.uniformMatrix2fv(gl,this.index,false,this.__uniformMatrix); - break; - case 16: - this.__uniformMatrix[0] = buffer[position]; - this.__uniformMatrix[1] = buffer[position + 1]; - this.__uniformMatrix[2] = buffer[position + 2]; - this.__uniformMatrix[3] = buffer[position + 3]; - this.__uniformMatrix[4] = buffer[position + 4]; - this.__uniformMatrix[5] = buffer[position + 5]; - this.__uniformMatrix[6] = buffer[position + 6]; - this.__uniformMatrix[7] = buffer[position + 7]; - this.__uniformMatrix[8] = buffer[position + 8]; - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.uniformMatrix3fv(gl,this.index,false,this.__uniformMatrix); - break; - case 20: - this.__uniformMatrix[0] = buffer[position]; - this.__uniformMatrix[1] = buffer[position + 1]; - this.__uniformMatrix[2] = buffer[position + 2]; - this.__uniformMatrix[3] = buffer[position + 3]; - this.__uniformMatrix[4] = buffer[position + 4]; - this.__uniformMatrix[5] = buffer[position + 5]; - this.__uniformMatrix[6] = buffer[position + 6]; - this.__uniformMatrix[7] = buffer[position + 7]; - this.__uniformMatrix[8] = buffer[position + 8]; - this.__uniformMatrix[9] = buffer[position + 9]; - this.__uniformMatrix[10] = buffer[position + 10]; - this.__uniformMatrix[11] = buffer[position + 11]; - this.__uniformMatrix[12] = buffer[position + 12]; - this.__uniformMatrix[13] = buffer[position + 13]; - this.__uniformMatrix[14] = buffer[position + 14]; - this.__uniformMatrix[15] = buffer[position + 15]; - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.uniformMatrix4fv(gl,this.index,false,this.__uniformMatrix); - break; - default: - } - } - } else if(!this.__internal && (length == 0 || length == this.__length)) { - var _g = 0; - var _g1 = this.__arrayLength; - while(_g < _g1) { - var i = _g++; - gl.disableVertexAttribArray(this.index + i); - } - if(length > 0) { - switch(this.type) { - case 1:case 5:case 9: - gl.vertexAttrib2f(this.index,buffer[position],buffer[position + 1]); - break; - case 3:case 7:case 11: - gl.vertexAttrib4f(this.index,buffer[position],buffer[position + 1],buffer[position + 2],buffer[position + 3]); - break; - case 0:case 4:case 8: - gl.vertexAttrib1f(this.index,buffer[position]); - break; - case 2:case 6:case 10: - gl.vertexAttrib3f(this.index,buffer[position],buffer[position + 1],buffer[position + 2]); - break; - case 12: - gl.vertexAttrib2f(this.index + 0,buffer[position],buffer[position + 1]); - gl.vertexAttrib2f(this.index + 1,buffer[position + 2],buffer[position + 2 + 1]); - break; - case 16: - gl.vertexAttrib3f(this.index + 0,buffer[position],buffer[position + 1],buffer[position + 2]); - gl.vertexAttrib3f(this.index + 1,buffer[position + 3],buffer[position + 3 + 1],buffer[position + 3 + 2]); - gl.vertexAttrib3f(this.index + 2,buffer[position + 6],buffer[position + 6 + 1],buffer[position + 6 + 2]); - break; - case 20: - gl.vertexAttrib4f(this.index + 0,buffer[position],buffer[position + 1],buffer[position + 2],buffer[position + 3]); - gl.vertexAttrib4f(this.index + 1,buffer[position + 4],buffer[position + 4 + 1],buffer[position + 4 + 2],buffer[position + 4 + 3]); - gl.vertexAttrib4f(this.index + 2,buffer[position + 8],buffer[position + 8 + 1],buffer[position + 8 + 2],buffer[position + 8 + 3]); - gl.vertexAttrib4f(this.index + 3,buffer[position + 12],buffer[position + 12 + 1],buffer[position + 12 + 2],buffer[position + 12 + 3]); - break; - default: - } - } else { - switch(this.type) { - case 1:case 5:case 9: - gl.vertexAttrib2f(this.index,0,0); - break; - case 3:case 7:case 11: - gl.vertexAttrib4f(this.index,0,0,0,0); - break; - case 0:case 4:case 8: - gl.vertexAttrib1f(this.index,0); - break; - case 2:case 6:case 10: - gl.vertexAttrib3f(this.index,0,0,0); - break; - case 12: - gl.vertexAttrib2f(this.index + 0,0,0); - gl.vertexAttrib2f(this.index + 1,0,0); - break; - case 16: - gl.vertexAttrib3f(this.index + 0,0,0,0); - gl.vertexAttrib3f(this.index + 1,0,0,0); - gl.vertexAttrib3f(this.index + 2,0,0,0); - break; - case 20: - gl.vertexAttrib4f(this.index + 0,0,0,0,0); - gl.vertexAttrib4f(this.index + 1,0,0,0,0); - gl.vertexAttrib4f(this.index + 2,0,0,0,0); - gl.vertexAttrib4f(this.index + 3,0,0,0,0); - break; - default: - } - } - } else { - var type = gl.FLOAT; - if(this.__isBool) { - type = gl.INT; - } else if(this.__isInt) { - type = gl.INT; - } - var _g2 = 0; - var _g11 = this.__arrayLength; - while(_g2 < _g11) { - var i1 = _g2++; - gl.enableVertexAttribArray(this.index + i1); - } - if(length > 0) { - var _g21 = 0; - var _g3 = this.__arrayLength; - while(_g21 < _g3) { - var i2 = _g21++; - gl.vertexAttribPointer(this.index + i2,this.__length,type,false,this.__length * 4,(position + bufferOffset * this.__length + i2 * this.__arrayLength) * 4); - } - } - } - } - ,set_name: function(value) { - this.__internal = StringTools.startsWith(value,"openfl_"); - return this.name = value; - } - ,__class__: openfl_display_ShaderParameter - ,__properties__: {set_name:"set_name"} -}; -var openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$ = {}; -$hxClasses["openfl.display._ShaderParameterType.ShaderParameterType_Impl_"] = openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.__name__ = "openfl.display._ShaderParameterType.ShaderParameterType_Impl_"; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.fromString = function(value) { - switch(value) { - case "bool": - return 0; - case "bool2": - return 1; - case "bool3": - return 1; - case "bool4": - return 1; - case "float": - return 4; - case "float2": - return 5; - case "float3": - return 6; - case "float4": - return 7; - case "int": - return 8; - case "int2": - return 9; - case "int3": - return 10; - case "int4": - return 11; - case "matrix2x2": - return 12; - case "matrix2x3": - return 13; - case "matrix2x4": - return 14; - case "matrix3x2": - return 15; - case "matrix3x3": - return 16; - case "matrix3x4": - return 17; - case "matrix4x2": - return 18; - case "matrix4x3": - return 19; - case "matrix4x4": - return 20; - default: - return null; - } -}; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "bool"; - case 1: - return "bool2"; - case 2: - return "bool3"; - case 3: - return "bool4"; - case 4: - return "float"; - case 5: - return "float2"; - case 6: - return "float3"; - case 7: - return "float4"; - case 8: - return "int"; - case 9: - return "int2"; - case 10: - return "int3"; - case 11: - return "int4"; - case 12: - return "matrix2x2"; - case 13: - return "matrix2x3"; - case 14: - return "matrix2x4"; - case 15: - return "matrix3x2"; - case 16: - return "matrix3x3"; - case 17: - return "matrix3x4"; - case 18: - return "matrix4x2"; - case 19: - return "matrix4x3"; - case 20: - return "matrix4x4"; - default: - return null; - } -}; -var openfl_display__$ShaderPrecision_ShaderPrecision_$Impl_$ = {}; -$hxClasses["openfl.display._ShaderPrecision.ShaderPrecision_Impl_"] = openfl_display__$ShaderPrecision_ShaderPrecision_$Impl_$; -openfl_display__$ShaderPrecision_ShaderPrecision_$Impl_$.__name__ = "openfl.display._ShaderPrecision.ShaderPrecision_Impl_"; -openfl_display__$ShaderPrecision_ShaderPrecision_$Impl_$.fromString = function(value) { - switch(value) { - case "fast": - return 0; - case "full": - return 1; - default: - return null; - } -}; -openfl_display__$ShaderPrecision_ShaderPrecision_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "fast"; - case 1: - return "full"; - default: - return null; - } -}; -var openfl_display_Shape = function() { - openfl_display_DisplayObject.call(this); -}; -$hxClasses["openfl.display.Shape"] = openfl_display_Shape; -openfl_display_Shape.__name__ = "openfl.display.Shape"; -openfl_display_Shape.__super__ = openfl_display_DisplayObject; -openfl_display_Shape.prototype = $extend(openfl_display_DisplayObject.prototype,{ - get_graphics: function() { - if(this.__graphics == null) { - this.__graphics = new openfl_display_Graphics(this); - } - return this.__graphics; - } - ,__class__: openfl_display_Shape - ,__properties__: $extend(openfl_display_DisplayObject.prototype.__properties__,{get_graphics:"get_graphics"}) -}); -var openfl_display_SimpleButton = function(upState,overState,downState,hitTestState) { - openfl_display_InteractiveObject.call(this); - this.enabled = true; - this.trackAsMenu = false; - this.useHandCursor = true; - this.__upState = upState != null ? upState : new openfl_display_DisplayObject(); - this.__overState = overState; - this.__downState = downState; - this.set_hitTestState(hitTestState != null ? hitTestState : new openfl_display_DisplayObject()); - this.addEventListener("mouseDown",$bind(this,this.__this_onMouseDown)); - this.addEventListener("mouseOut",$bind(this,this.__this_onMouseOut)); - this.addEventListener("mouseOver",$bind(this,this.__this_onMouseOver)); - this.addEventListener("mouseUp",$bind(this,this.__this_onMouseUp)); - this.__tabEnabled = true; - this.set___currentState(this.__upState); - if(openfl_display_SimpleButton.__initSymbol != null) { - var swf = openfl_display_SimpleButton.__initSWF; - this.__symbol = openfl_display_SimpleButton.__initSymbol; - openfl_display_SimpleButton.__initSWF = null; - openfl_display_SimpleButton.__initSymbol = null; - this.__fromSymbol(swf,this.__symbol); - } -}; -$hxClasses["openfl.display.SimpleButton"] = openfl_display_SimpleButton; -openfl_display_SimpleButton.__name__ = "openfl.display.SimpleButton"; -openfl_display_SimpleButton.__initSWF = null; -openfl_display_SimpleButton.__initSymbol = null; -openfl_display_SimpleButton.__super__ = openfl_display_InteractiveObject; -openfl_display_SimpleButton.prototype = $extend(openfl_display_InteractiveObject.prototype,{ - enabled: null - ,trackAsMenu: null - ,useHandCursor: null - ,__currentState: null - ,__downState: null - ,__hitTestState: null - ,__ignoreEvent: null - ,__overState: null - ,__previousStates: null - ,__soundTransform: null - ,__symbol: null - ,__upState: null - ,__fromSymbol: function(swf,symbol) { - this.__symbol = symbol; - if(symbol.downState != null) { - this.set_downState(symbol.downState.__createObject(swf)); - } - if(symbol.hitState != null) { - this.set_hitTestState(symbol.hitState.__createObject(swf)); - } - if(symbol.overState != null) { - this.set_overState(symbol.overState.__createObject(swf)); - } - if(symbol.upState != null) { - this.set_upState(symbol.upState.__createObject(swf)); - } - } - ,__getBounds: function(rect,matrix) { - openfl_display_InteractiveObject.prototype.__getBounds.call(this,rect,matrix); - var childWorldTransform = openfl_geom_Matrix.__pool.get(); - var local = this.__currentState.__transform; - childWorldTransform.a = local.a * matrix.a + local.b * matrix.c; - childWorldTransform.b = local.a * matrix.b + local.b * matrix.d; - childWorldTransform.c = local.c * matrix.a + local.d * matrix.c; - childWorldTransform.d = local.c * matrix.b + local.d * matrix.d; - childWorldTransform.tx = local.tx * matrix.a + local.ty * matrix.c + matrix.tx; - childWorldTransform.ty = local.tx * matrix.b + local.ty * matrix.d + matrix.ty; - this.__currentState.__getBounds(rect,childWorldTransform); - openfl_geom_Matrix.__pool.release(childWorldTransform); - } - ,__getRenderBounds: function(rect,matrix) { - if(this.__scrollRect != null) { - openfl_display_InteractiveObject.prototype.__getRenderBounds.call(this,rect,matrix); - return; - } else { - openfl_display_InteractiveObject.prototype.__getBounds.call(this,rect,matrix); - } - var childWorldTransform = openfl_geom_Matrix.__pool.get(); - var local = this.__currentState.__transform; - childWorldTransform.a = local.a * matrix.a + local.b * matrix.c; - childWorldTransform.b = local.a * matrix.b + local.b * matrix.d; - childWorldTransform.c = local.c * matrix.a + local.d * matrix.c; - childWorldTransform.d = local.c * matrix.b + local.d * matrix.d; - childWorldTransform.tx = local.tx * matrix.a + local.ty * matrix.c + matrix.tx; - childWorldTransform.ty = local.tx * matrix.b + local.ty * matrix.d + matrix.ty; - this.__currentState.__getRenderBounds(rect,childWorldTransform); - openfl_geom_Matrix.__pool.release(childWorldTransform); - } - ,__getCursor: function() { - if(this.useHandCursor && !this.__ignoreEvent && this.enabled) { - return "button"; - } else { - return null; - } - } - ,__hitTest: function(x,y,shapeFlag,stack,interactiveOnly,hitObject) { - var hitTest = false; - if(this.get_hitTestState() != null) { - if(this.get_hitTestState().__hitTest(x,y,shapeFlag,stack,interactiveOnly,hitObject)) { - if(stack != null) { - if(stack.length == 0) { - stack[0] = hitObject; - } else { - stack[stack.length - 1] = hitObject; - } - } - hitTest = !interactiveOnly || this.mouseEnabled; - } - } else if(this.__currentState != null) { - if(!hitObject.get_visible() || this.__isMask || interactiveOnly && !this.mouseEnabled) { - return false; - } - if(this.get_mask() != null && !this.get_mask().__hitTestMask(x,y)) { - return false; - } - if(this.__currentState.__hitTest(x,y,shapeFlag,stack,interactiveOnly,hitObject)) { - hitTest = interactiveOnly; - } - } - if(stack != null) { - while(stack.length > 1 && stack[stack.length - 1] == stack[stack.length - 2]) stack.pop(); - } - return hitTest; - } - ,__hitTestMask: function(x,y) { - var hitTest = false; - if(this.__currentState.__hitTestMask(x,y)) { - hitTest = true; - } - return hitTest; - } - ,__renderCairo: function(renderer) { - if(!this.__renderable || this.__worldAlpha <= 0 || this.__currentState == null) { - return; - } - renderer.__pushMaskObject(this); - this.__currentState.__renderCairo(renderer); - renderer.__popMaskObject(this); - this.__renderEvent(renderer); - } - ,__renderCairoMask: function(renderer) { - this.__currentState.__renderCairoMask(renderer); - } - ,__renderCanvas: function(renderer) { - if(!this.__renderable || this.__worldAlpha <= 0 || this.__currentState == null) { - return; - } - renderer.__pushMaskObject(this); - this.__currentState.__renderCanvas(renderer); - renderer.__popMaskObject(this); - this.__renderEvent(renderer); - } - ,__renderCanvasMask: function(renderer) { - this.__currentState.__renderCanvasMask(renderer); - } - ,__renderDOM: function(renderer) { - renderer.__pushMaskObject(this); - var previousState = this.__previousStates.iterator(); - while(previousState.hasNext()) { - var previousState1 = previousState.next(); - previousState1.__renderDOM(renderer); - } - this.__previousStates.set_length(0); - if(this.__currentState != null) { - if(this.__currentState.stage != this.stage) { - this.__currentState.__setStageReference(this.stage); - } - this.__currentState.__renderDOM(renderer); - } - renderer.__popMaskObject(this); - this.__renderEvent(renderer); - } - ,__renderGL: function(renderer) { - if(!this.__renderable || this.__worldAlpha <= 0 || this.__currentState == null) { - return; - } - renderer.__pushMaskObject(this); - this.__currentState.__renderGL(renderer); - renderer.__popMaskObject(this); - this.__renderEvent(renderer); - } - ,__renderGLMask: function(renderer) { - if(this.__currentState == null) { - return; - } - this.__currentState.__renderGLMask(renderer); - } - ,__setStageReference: function(stage) { - openfl_display_InteractiveObject.prototype.__setStageReference.call(this,stage); - if(this.__currentState != null) { - this.__currentState.__setStageReference(stage); - } - if(this.get_hitTestState() != null && this.get_hitTestState() != this.__currentState) { - this.get_hitTestState().__setStageReference(stage); - } - } - ,__setTransformDirty: function() { - openfl_display_InteractiveObject.prototype.__setTransformDirty.call(this); - if(this.__currentState != null) { - this.__currentState.__setTransformDirty(); - } - if(this.get_hitTestState() != null && this.get_hitTestState() != this.__currentState) { - this.get_hitTestState().__setTransformDirty(); - } - } - ,__update: function(transformOnly,updateChildren) { - openfl_display_InteractiveObject.prototype.__update.call(this,transformOnly,updateChildren); - if(updateChildren) { - if(this.__currentState != null) { - this.__currentState.__update(transformOnly,true); - } - if(this.get_hitTestState() != null && this.get_hitTestState() != this.__currentState) { - this.get_hitTestState().__update(transformOnly,true); - } - } - } - ,__updateTransforms: function(overrideTransform) { - openfl_display_InteractiveObject.prototype.__updateTransforms.call(this,overrideTransform); - if(this.__currentState != null) { - this.__currentState.__updateTransforms(); - } - if(this.get_hitTestState() != null && this.get_hitTestState() != this.__currentState) { - this.get_hitTestState().__updateTransforms(); - } - } - ,get_downState: function() { - return this.__downState; - } - ,set_downState: function(downState) { - if(this.__downState != null && this.__currentState == this.__downState) { - this.set___currentState(this.__downState); - } - return this.__downState = downState; - } - ,get_hitTestState: function() { - return this.__hitTestState; - } - ,set_hitTestState: function(hitTestState) { - if(this.__hitTestState != null && this.__hitTestState != hitTestState) { - if(this.__hitTestState != this.get_downState() && this.__hitTestState != this.get_upState() && this.__hitTestState != this.get_overState()) { - this.__hitTestState.__renderParent = null; - } - } - if(hitTestState != null) { - hitTestState.__renderParent = this; - if(!hitTestState.__renderDirty) { - hitTestState.__renderDirty = true; - hitTestState.__setParentRenderDirty(); - } - } - return this.__hitTestState = hitTestState; - } - ,get_overState: function() { - return this.__overState; - } - ,set_overState: function(overState) { - if(this.__overState != null && this.__currentState == this.__overState) { - this.set___currentState(overState); - } - return this.__overState = overState; - } - ,get_soundTransform: function() { - if(this.__soundTransform == null) { - this.__soundTransform = new openfl_media_SoundTransform(); - } - return new openfl_media_SoundTransform(this.__soundTransform.volume,this.__soundTransform.pan); - } - ,set_soundTransform: function(value) { - this.__soundTransform = new openfl_media_SoundTransform(value.volume,value.pan); - return value; - } - ,get_upState: function() { - return this.__upState; - } - ,set_upState: function(upState) { - if(this.__upState != null && this.__currentState == this.__upState) { - this.set___currentState(upState); - } - return this.__upState = upState; - } - ,set___currentState: function(value) { - if(this.__currentState != null && this.__currentState != this.get_hitTestState()) { - this.__currentState.__renderParent = null; - } - if(value != null && value.parent != null) { - value.parent.removeChild(value); - } - if(openfl_display_DisplayObject.__supportDOM && this.__previousStates == null) { - this.__previousStates = openfl__$Vector_Vector_$Impl_$.toObjectVector(null); - } - if(value != this.__currentState) { - if(openfl_display_DisplayObject.__supportDOM) { - if(this.__currentState != null) { - this.__currentState.__setStageReference(null); - this.__previousStates.push(this.__currentState); - } - var index = this.__previousStates.indexOf(value,0); - if(index > -1) { - this.__previousStates.splice(index,1); - } - } - if(value != null) { - value.__renderParent = this; - if(!value.__renderDirty) { - value.__renderDirty = true; - value.__setParentRenderDirty(); - } - } - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - this.__currentState = value; - return value; - } - ,__this_onMouseDown: function(event) { - if(this.enabled) { - this.set___currentState(this.get_downState()); - } - } - ,__this_onMouseOut: function(event) { - this.__ignoreEvent = false; - if(this.get_upState() != this.__currentState) { - this.set___currentState(this.get_upState()); - } - } - ,__this_onMouseOver: function(event) { - if(event.buttonDown) { - this.__ignoreEvent = true; - } - if(this.get_overState() != this.__currentState && this.get_overState() != null && !this.__ignoreEvent && this.enabled) { - this.set___currentState(this.get_overState()); - } - } - ,__this_onMouseUp: function(event) { - this.__ignoreEvent = false; - if(this.enabled && this.get_overState() != null) { - this.set___currentState(this.get_overState()); - } else { - this.set___currentState(this.get_upState()); - } - } - ,__class__: openfl_display_SimpleButton - ,__properties__: $extend(openfl_display_InteractiveObject.prototype.__properties__,{set___currentState:"set___currentState",set_upState:"set_upState",get_upState:"get_upState",set_soundTransform:"set_soundTransform",get_soundTransform:"get_soundTransform",set_overState:"set_overState",get_overState:"get_overState",set_hitTestState:"set_hitTestState",get_hitTestState:"get_hitTestState",set_downState:"set_downState",get_downState:"get_downState"}) -}); -var openfl_display__$SpreadMethod_SpreadMethod_$Impl_$ = {}; -$hxClasses["openfl.display._SpreadMethod.SpreadMethod_Impl_"] = openfl_display__$SpreadMethod_SpreadMethod_$Impl_$; -openfl_display__$SpreadMethod_SpreadMethod_$Impl_$.__name__ = "openfl.display._SpreadMethod.SpreadMethod_Impl_"; -openfl_display__$SpreadMethod_SpreadMethod_$Impl_$.fromInt = function(value) { - return value; -}; -openfl_display__$SpreadMethod_SpreadMethod_$Impl_$.fromString = function(value) { - switch(value) { - case "pad": - return 0; - case "reflect": - return 1; - case "repeat": - return 2; - default: - return null; - } -}; -openfl_display__$SpreadMethod_SpreadMethod_$Impl_$.toInt = function(this1) { - return this1; -}; -openfl_display__$SpreadMethod_SpreadMethod_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "pad"; - case 1: - return "reflect"; - case 2: - return "repeat"; - default: - return null; - } -}; -var openfl_display_Stage = function($window,color) { - openfl_display_DisplayObjectContainer.call(this); - this.set_name(null); - this.__color = -1; - this.__colorSplit = [255,255,255]; - this.__colorString = "#FFFFFF"; - this.__contentsScaleFactor = 1; - this.__currentTabOrderIndex = 0; - this.__deltaTime = 0; - this.__displayState = 2; - this.__mouseX = 0; - this.__mouseY = 0; - this.__lastClickTime = 0; - this.__logicalWidth = 0; - this.__logicalHeight = 0; - this.__displayMatrix = new openfl_geom_Matrix(); - this.__displayRect = new openfl_geom_Rectangle(); - this.__renderDirty = true; - this.stage3Ds = openfl__$Vector_Vector_$Impl_$.toObjectVector(null); - this.stage3Ds.push(new openfl_display_Stage3D(this)); - this.stage3Ds.push(new openfl_display_Stage3D(this)); - this.stage3Ds.push(new openfl_display_Stage3D(this)); - this.stage3Ds.push(new openfl_display_Stage3D(this)); - this.stage = this; - this.align = 6; - this.allowsFullScreen = true; - this.allowsFullScreenInteractive = true; - this.__quality = 1; - this.__scaleMode = 2; - this.showDefaultContextMenu = true; - this.softKeyboardRect = new openfl_geom_Rectangle(); - this.stageFocusRect = true; - this.__macKeyboard = /AppleWebKit/.test (navigator.userAgent) && /Mobile\/\w+/.test (navigator.userAgent) || /Mac/.test (navigator.platform); - this.__clearBeforeRender = true; - this.__forceRender = false; - this.__stack = []; - this.__rollOutStack = []; - this.__mouseOutStack = []; - this.__touchData = new haxe_ds_IntMap(); - this.application = $window.application; - this.window = $window; - this.set_color(color); - this.__contentsScaleFactor = $window.__scale; - this.__wasFullscreen = $window.__fullscreen; - this.__resize(); - if(openfl_Lib.get_current().stage == null) { - this.stage.addChild(openfl_Lib.get_current()); - } -}; -$hxClasses["openfl.display.Stage"] = openfl_display_Stage; -openfl_display_Stage.__name__ = "openfl.display.Stage"; -openfl_display_Stage.__interfaces__ = [lime_app_IModule]; -openfl_display_Stage.__super__ = openfl_display_DisplayObjectContainer; -openfl_display_Stage.prototype = $extend(openfl_display_DisplayObjectContainer.prototype,{ - align: null - ,allowsFullScreen: null - ,allowsFullScreenInteractive: null - ,application: null - ,context3D: null - ,showDefaultContextMenu: null - ,softKeyboardRect: null - ,stage3Ds: null - ,stageFocusRect: null - ,stageHeight: null - ,stageWidth: null - ,window: null - ,__cacheFocus: null - ,__clearBeforeRender: null - ,__color: null - ,__colorSplit: null - ,__colorString: null - ,__contentsScaleFactor: null - ,__currentTabOrderIndex: null - ,__deltaTime: null - ,__dirty: null - ,__displayMatrix: null - ,__displayRect: null - ,__displayState: null - ,__dragBounds: null - ,__dragObject: null - ,__dragOffsetX: null - ,__dragOffsetY: null - ,__focus: null - ,__forceRender: null - ,__fullscreen: null - ,__fullScreenSourceRect: null - ,__invalidated: null - ,__lastClickTime: null - ,__logicalWidth: null - ,__logicalHeight: null - ,__macKeyboard: null - ,__mouseDownLeft: null - ,__mouseDownMiddle: null - ,__mouseDownRight: null - ,__mouseOutStack: null - ,__mouseOverTarget: null - ,__mouseX: null - ,__mouseY: null - ,__pendingMouseEvent: null - ,__pendingMouseX: null - ,__pendingMouseY: null - ,__quality: null - ,__renderer: null - ,__rendering: null - ,__rollOutStack: null - ,__scaleMode: null - ,__stack: null - ,__touchData: null - ,__transparent: null - ,__wasDirty: null - ,__wasFullscreen: null - ,__primaryTouch: null - ,invalidate: function() { - this.__invalidated = true; - this.__renderDirty = true; - } - ,localToGlobal: function(pos) { - return pos.clone(); - } - ,__broadcastEvent: function(event) { - var key = event.type; - var _this = openfl_display_DisplayObject.__broadcastEvents; - if(__map_reserved[key] != null ? _this.existsReserved(key) : _this.h.hasOwnProperty(key)) { - var key1 = event.type; - var _this1 = openfl_display_DisplayObject.__broadcastEvents; - var dispatchers = __map_reserved[key1] != null ? _this1.getReserved(key1) : _this1.h[key1]; - var _g = 0; - while(_g < dispatchers.length) { - var dispatcher = dispatchers[_g]; - ++_g; - if(dispatcher.stage == this || dispatcher.stage == null) { - try { - dispatcher.__dispatch(event); - } catch( e ) { - haxe_CallStack.lastException = e; - this.__handleError(((e) instanceof js__$Boot_HaxeError) ? e.val : e); - } - } - } - } - } - ,__createRenderer: function() { - var pixelRatio = 1; - if(this.window.__scale > 1) { - pixelRatio = this.window.devicePixelRatio || 1; - } - var windowWidth = this.window.__width * this.window.__scale | 0; - var windowHeight = this.window.__height * this.window.__scale | 0; - switch(this.window.context.type) { - case "cairo": - break; - case "canvas": - this.__renderer = new openfl_display_CanvasRenderer(this.window.context.canvas2D); - (js_Boot.__cast(this.__renderer , openfl_display_CanvasRenderer)).pixelRatio = pixelRatio; - break; - case "dom": - this.__renderer = new openfl_display_DOMRenderer(this.window.context.dom); - (js_Boot.__cast(this.__renderer , openfl_display_DOMRenderer)).pixelRatio = pixelRatio; - break; - case "opengl":case "opengles":case "webgl": - this.context3D = new openfl_display3D_Context3D(this); - this.context3D.configureBackBuffer(windowWidth,windowHeight,0,true,true,true); - this.context3D.present(); - this.__renderer = new openfl_display_OpenGLRenderer(this.context3D); - break; - default: - } - if(this.__renderer != null) { - var tmp = this.get_quality(); - this.__renderer.__allowSmoothing = tmp != 2; - this.__renderer.__worldTransform = this.__displayMatrix; - this.__renderer.__stage = this; - this.__renderer.__resize(windowWidth,windowHeight); - } - } - ,__dispatchEvent: function(event) { - try { - return openfl_display_DisplayObjectContainer.prototype.__dispatchEvent.call(this,event); - } catch( e ) { - haxe_CallStack.lastException = e; - this.__handleError(((e) instanceof js__$Boot_HaxeError) ? e.val : e); - return false; - } - } - ,__dispatchPendingMouseEvent: function() { - if(this.__pendingMouseEvent) { - this.__onMouse("mouseMove",this.__pendingMouseX,this.__pendingMouseY,0); - this.__pendingMouseEvent = false; - } - } - ,__dispatchStack: function(event,stack) { - try { - var target; - var length = stack.length; - if(length == 0) { - event.eventPhase = 2; - target = event.target; - target.__dispatch(event); - } else { - event.eventPhase = 1; - event.target = stack[stack.length - 1]; - var _g = 0; - var _g1 = length - 1; - while(_g < _g1) { - var i = _g++; - stack[i].__dispatch(event); - if(event.__isCanceled) { - return; - } - } - event.eventPhase = 2; - target = event.target; - target.__dispatch(event); - if(event.__isCanceled) { - return; - } - if(event.bubbles) { - event.eventPhase = 3; - var i1 = length - 2; - while(i1 >= 0) { - stack[i1].__dispatch(event); - if(event.__isCanceled) { - return; - } - --i1; - } - } - } - } catch( e ) { - haxe_CallStack.lastException = e; - this.__handleError(((e) instanceof js__$Boot_HaxeError) ? e.val : e); - } - } - ,__dispatchTarget: function(target,event) { - try { - return target.__dispatchEvent(event); - } catch( e ) { - haxe_CallStack.lastException = e; - this.__handleError(((e) instanceof js__$Boot_HaxeError) ? e.val : e); - return false; - } - } - ,__drag: function(mouse) { - var parent = this.__dragObject.parent; - if(parent != null) { - var _this = parent.__getWorldTransform(); - var norm = _this.a * _this.d - _this.b * _this.c; - if(norm == 0) { - mouse.x = -_this.tx; - mouse.y = -_this.ty; - } else { - var px = 1.0 / norm * (_this.c * (_this.ty - mouse.y) + _this.d * (mouse.x - _this.tx)); - mouse.y = 1.0 / norm * (_this.a * (mouse.y - _this.ty) + _this.b * (_this.tx - mouse.x)); - mouse.x = px; - } - } - var x = mouse.x + this.__dragOffsetX; - var y = mouse.y + this.__dragOffsetY; - if(this.__dragBounds != null) { - if(x < this.__dragBounds.x) { - x = this.__dragBounds.x; - } else if(x > this.__dragBounds.get_right()) { - x = this.__dragBounds.get_right(); - } - if(y < this.__dragBounds.y) { - y = this.__dragBounds.y; - } else if(y > this.__dragBounds.get_bottom()) { - y = this.__dragBounds.get_bottom(); - } - } - this.__dragObject.set_x(x); - this.__dragObject.set_y(y); - } - ,__getInteractive: function(stack) { - if(stack != null) { - stack.push(this); - } - return true; - } - ,__globalToLocal: function(global,local) { - if(global != local) { - local.copyFrom(global); - } - return local; - } - ,__handleError: function(e) { - var event = new openfl_events_UncaughtErrorEvent("uncaughtError",true,true,e); - try { - openfl_Lib.get_current().__loaderInfo.uncaughtErrorEvents.dispatchEvent(event); - } catch( e1 ) { - haxe_CallStack.lastException = e1; - var e2 = ((e1) instanceof js__$Boot_HaxeError) ? e1.val : e1; - } - if(!event.__preventDefault) { - try { - var exc = haxe_CallStack.lastException; - if(exc != null && Object.prototype.hasOwnProperty.call(exc,"stack") && exc.stack != null && exc.stack != "") { - console.log(exc.stack); - e.stack = exc.stack; - } else { - var msg = haxe_CallStack.toString(haxe_CallStack.callStack()); - console.log(msg); - } - } catch( e21 ) { - haxe_CallStack.lastException = e21; - var e22 = ((e21) instanceof js__$Boot_HaxeError) ? e21.val : e21; - } - throw e; - } - } - ,__onKey: function(type,keyCode,modifier) { - this.__dispatchPendingMouseEvent(); - openfl_events_MouseEvent.__altKey = lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_altKey(modifier); - openfl_events_MouseEvent.__commandKey = lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_metaKey(modifier); - openfl_events_MouseEvent.__ctrlKey = lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_ctrlKey(modifier); - openfl_events_MouseEvent.__shiftKey = lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_shiftKey(modifier); - var stack = []; - if(this.__focus == null) { - this.__getInteractive(stack); - } else { - this.__focus.__getInteractive(stack); - } - if(stack.length > 0) { - var keyLocation; - switch(keyCode) { - 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: - keyLocation = 3; - break; - case 1073742048:case 1073742049:case 1073742050:case 1073742051: - keyLocation = 1; - break; - case 1073742052:case 1073742053:case 1073742054:case 1073742055: - keyLocation = 2; - break; - default: - keyLocation = 0; - } - var keyCode1; - switch(keyCode) { - case 8: - keyCode1 = 8; - break; - case 9: - keyCode1 = 9; - break; - case 13: - keyCode1 = 13; - break; - case 27: - keyCode1 = 27; - break; - case 32: - keyCode1 = 32; - break; - case 33: - keyCode1 = 49; - break; - case 34: - keyCode1 = 222; - break; - case 35: - keyCode1 = 51; - break; - case 36: - keyCode1 = 52; - break; - case 37: - keyCode1 = 53; - break; - case 38: - keyCode1 = 55; - break; - case 39: - keyCode1 = 222; - break; - case 40: - keyCode1 = 57; - break; - case 41: - keyCode1 = 48; - break; - case 42: - keyCode1 = 56; - break; - case 44: - keyCode1 = 188; - break; - case 45: - keyCode1 = 189; - break; - case 46: - keyCode1 = 190; - break; - case 47: - keyCode1 = 191; - break; - case 48: - keyCode1 = 48; - break; - case 49: - keyCode1 = 49; - break; - case 50: - keyCode1 = 50; - break; - case 51: - keyCode1 = 51; - break; - case 52: - keyCode1 = 52; - break; - case 53: - keyCode1 = 53; - break; - case 54: - keyCode1 = 54; - break; - case 55: - keyCode1 = 55; - break; - case 56: - keyCode1 = 56; - break; - case 57: - keyCode1 = 57; - break; - case 58: - keyCode1 = 186; - break; - case 59: - keyCode1 = 186; - break; - case 60: - keyCode1 = 60; - break; - case 61: - keyCode1 = 187; - break; - case 62: - keyCode1 = 190; - break; - case 63: - keyCode1 = 191; - break; - case 64: - keyCode1 = 50; - break; - case 91: - keyCode1 = 219; - break; - case 92: - keyCode1 = 220; - break; - case 93: - keyCode1 = 221; - break; - case 94: - keyCode1 = 54; - break; - case 95: - keyCode1 = 189; - break; - case 96: - keyCode1 = 192; - break; - case 97: - keyCode1 = 65; - break; - case 98: - keyCode1 = 66; - break; - case 99: - keyCode1 = 67; - break; - case 100: - keyCode1 = 68; - break; - case 101: - keyCode1 = 69; - break; - case 102: - keyCode1 = 70; - break; - case 103: - keyCode1 = 71; - break; - case 104: - keyCode1 = 72; - break; - case 105: - keyCode1 = 73; - break; - case 106: - keyCode1 = 74; - break; - case 107: - keyCode1 = 75; - break; - case 108: - keyCode1 = 76; - break; - case 109: - keyCode1 = 77; - break; - case 110: - keyCode1 = 78; - break; - case 111: - keyCode1 = 79; - break; - case 112: - keyCode1 = 80; - break; - case 113: - keyCode1 = 81; - break; - case 114: - keyCode1 = 82; - break; - case 115: - keyCode1 = 83; - break; - case 116: - keyCode1 = 84; - break; - case 117: - keyCode1 = 85; - break; - case 118: - keyCode1 = 86; - break; - case 119: - keyCode1 = 87; - break; - case 120: - keyCode1 = 88; - break; - case 121: - keyCode1 = 89; - break; - case 122: - keyCode1 = 90; - break; - case 127: - keyCode1 = 46; - break; - case 1073741881: - keyCode1 = 20; - break; - case 1073741882: - keyCode1 = 112; - break; - case 1073741883: - keyCode1 = 113; - break; - case 1073741884: - keyCode1 = 114; - break; - case 1073741885: - keyCode1 = 115; - break; - case 1073741886: - keyCode1 = 116; - break; - case 1073741887: - keyCode1 = 117; - break; - case 1073741888: - keyCode1 = 118; - break; - case 1073741889: - keyCode1 = 119; - break; - case 1073741890: - keyCode1 = 120; - break; - case 1073741891: - keyCode1 = 121; - break; - case 1073741892: - keyCode1 = 122; - break; - case 1073741893: - keyCode1 = 123; - break; - case 1073741894: - keyCode1 = 301; - break; - case 1073741895: - keyCode1 = 145; - break; - case 1073741896: - keyCode1 = 19; - break; - case 1073741897: - keyCode1 = 45; - break; - case 1073741898: - keyCode1 = 36; - break; - case 1073741899: - keyCode1 = 33; - break; - case 1073741901: - keyCode1 = 35; - break; - case 1073741902: - keyCode1 = 34; - break; - case 1073741903: - keyCode1 = 39; - break; - case 1073741904: - keyCode1 = 37; - break; - case 1073741905: - keyCode1 = 40; - break; - case 1073741906: - keyCode1 = 38; - break; - case 1073741907: - keyCode1 = 144; - break; - case 1073741908: - keyCode1 = 111; - break; - case 1073741909: - keyCode1 = 106; - break; - case 1073741910: - keyCode1 = 109; - break; - case 1073741911: - keyCode1 = 107; - break; - case 1073741912: - keyCode1 = 13; - break; - case 1073741913: - keyCode1 = 97; - break; - case 1073741914: - keyCode1 = 98; - break; - case 1073741915: - keyCode1 = 99; - break; - case 1073741916: - keyCode1 = 100; - break; - case 1073741917: - keyCode1 = 101; - break; - case 1073741918: - keyCode1 = 102; - break; - case 1073741919: - keyCode1 = 103; - break; - case 1073741920: - keyCode1 = 104; - break; - case 1073741921: - keyCode1 = 105; - break; - case 1073741922: - keyCode1 = 96; - break; - case 1073741923: - keyCode1 = 110; - break; - case 1073741925: - keyCode1 = 302; - break; - case 1073741928: - keyCode1 = 124; - break; - case 1073741929: - keyCode1 = 125; - break; - case 1073741930: - keyCode1 = 126; - break; - case 1073741982: - keyCode1 = 13; - break; - case 1073742044: - keyCode1 = 110; - break; - case 1073742048: - keyCode1 = 17; - break; - case 1073742049: - keyCode1 = 16; - break; - case 1073742050: - keyCode1 = 18; - break; - case 1073742051: - keyCode1 = 15; - break; - case 1073742052: - keyCode1 = 17; - break; - case 1073742053: - keyCode1 = 16; - break; - case 1073742054: - keyCode1 = 18; - break; - case 1073742055: - keyCode1 = 15; - break; - default: - keyCode1 = keyCode; - } - var charCode = openfl_ui_Keyboard.__getCharCode(keyCode1,lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_shiftKey(modifier)); - var event = new openfl_events_KeyboardEvent(type,true,true,charCode,keyCode1,keyLocation,this.__macKeyboard ? lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_ctrlKey(modifier) || lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_metaKey(modifier) : lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_ctrlKey(modifier),lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_altKey(modifier),lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_shiftKey(modifier),lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_ctrlKey(modifier),lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_metaKey(modifier)); - stack.reverse(); - this.__dispatchStack(event,stack); - if(event.__preventDefault) { - if(type == "keyDown") { - this.window.onKeyDown.cancel(); - } else { - this.window.onKeyUp.cancel(); - } - } else if(type == "keyDown" && keyCode1 == 9) { - var tabStack = []; - this.__tabTest(tabStack); - var nextIndex = -1; - var nextObject = null; - var nextOffset = lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_shiftKey(modifier) ? -1 : 1; - if(tabStack.length > 1) { - haxe_ds_ArraySort.sort(tabStack,function(a,b) { - return a.get_tabIndex() - b.get_tabIndex(); - }); - if(tabStack[tabStack.length - 1].get_tabIndex() == -1) { - if(this.get_focus() != null) { - nextIndex = 0; - } else { - nextIndex = this.__currentTabOrderIndex; - } - } else { - var i = 0; - while(i < tabStack.length) { - if(tabStack[i].get_tabIndex() > -1) { - if(i > 0) { - tabStack.splice(0,i); - } - break; - } - ++i; - } - if(this.get_focus() != null) { - var index = tabStack.indexOf(this.get_focus()); - if(index < 0) { - nextIndex = 0; - } else { - nextIndex = index + nextOffset; - } - } else { - nextIndex = this.__currentTabOrderIndex; - } - } - } else if(tabStack.length == 1) { - nextObject = tabStack[0]; - if(this.get_focus() == nextObject) { - nextObject = null; - } - } - if(tabStack.length == 1 || tabStack.length == 0 && this.get_focus() != null) { - nextIndex = 0; - } else if(tabStack.length > 1) { - if(nextIndex < 0) { - nextIndex += tabStack.length; - } - nextIndex %= tabStack.length; - nextObject = tabStack[nextIndex]; - if(nextObject == this.get_focus()) { - nextIndex += nextOffset; - if(nextIndex < 0) { - nextIndex += tabStack.length; - } - nextIndex %= tabStack.length; - nextObject = tabStack[nextIndex]; - } - } - var focusEvent = null; - if(this.get_focus() != null) { - focusEvent = new openfl_events_FocusEvent("keyFocusChange",true,true,nextObject,lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_shiftKey(modifier),0); - stack = []; - this.get_focus().__getInteractive(stack); - stack.reverse(); - this.__dispatchStack(focusEvent,stack); - } - if(focusEvent == null || !focusEvent.isDefaultPrevented()) { - this.__currentTabOrderIndex = nextIndex; - if(nextObject != null) { - this.set_focus(nextObject); - } - } - } - } - } - ,__onLimeCreateWindow: function($window) { - if(this.window != $window) { - return; - } - var f = $bind(this,this.__onLimeWindowActivate); - var window1 = $window; - var tmp = function() { - f(window1); - }; - $window.onActivate.add(tmp); - var f1 = $bind(this,this.__onLimeWindowClose); - var window2 = $window; - var tmp1 = function() { - f1(window2); - }; - $window.onClose.add(tmp1,false,-9000); - var f2 = $bind(this,this.__onLimeWindowDeactivate); - var window3 = $window; - var tmp2 = function() { - f2(window3); - }; - $window.onDeactivate.add(tmp2); - var f3 = $bind(this,this.__onLimeWindowDropFile); - var window4 = $window; - var tmp3 = function(file) { - f3(window4,file); - }; - $window.onDropFile.add(tmp3); - var f4 = $bind(this,this.__onLimeWindowEnter); - var window5 = $window; - var tmp4 = function() { - f4(window5); - }; - $window.onEnter.add(tmp4); - var f5 = $bind(this,this.__onLimeWindowExpose); - var window6 = $window; - var tmp5 = function() { - f5(window6); - }; - $window.onExpose.add(tmp5); - var f6 = $bind(this,this.__onLimeWindowFocusIn); - var window7 = $window; - var tmp6 = function() { - f6(window7); - }; - $window.onFocusIn.add(tmp6); - var f7 = $bind(this,this.__onLimeWindowFocusOut); - var window8 = $window; - var tmp7 = function() { - f7(window8); - }; - $window.onFocusOut.add(tmp7); - var f8 = $bind(this,this.__onLimeWindowFullscreen); - var window9 = $window; - var tmp8 = function() { - f8(window9); - }; - $window.onFullscreen.add(tmp8); - var f9 = $bind(this,this.__onLimeKeyDown); - var window10 = $window; - var tmp9 = function(keyCode,modifier) { - f9(window10,keyCode,modifier); - }; - $window.onKeyDown.add(tmp9); - var f10 = $bind(this,this.__onLimeKeyUp); - var window11 = $window; - var tmp10 = function(keyCode1,modifier1) { - f10(window11,keyCode1,modifier1); - }; - $window.onKeyUp.add(tmp10); - var f11 = $bind(this,this.__onLimeWindowLeave); - var window12 = $window; - var tmp11 = function() { - f11(window12); - }; - $window.onLeave.add(tmp11); - var f12 = $bind(this,this.__onLimeWindowMinimize); - var window13 = $window; - var tmp12 = function() { - f12(window13); - }; - $window.onMinimize.add(tmp12); - var f13 = $bind(this,this.__onLimeMouseDown); - var window14 = $window; - var tmp13 = function(x,y,button) { - f13(window14,x,y,button); - }; - $window.onMouseDown.add(tmp13); - var f14 = $bind(this,this.__onLimeMouseMove); - var window15 = $window; - var tmp14 = function(x1,y1) { - f14(window15,x1,y1); - }; - $window.onMouseMove.add(tmp14); - var f15 = $bind(this,this.__onLimeMouseMoveRelative); - var window16 = $window; - var tmp15 = function(x2,y2) { - f15(window16,x2,y2); - }; - $window.onMouseMoveRelative.add(tmp15); - var f16 = $bind(this,this.__onLimeMouseUp); - var window17 = $window; - var tmp16 = function(x3,y3,button1) { - f16(window17,x3,y3,button1); - }; - $window.onMouseUp.add(tmp16); - var f17 = $bind(this,this.__onLimeMouseWheel); - var window18 = $window; - var tmp17 = function(deltaX,deltaY,deltaMode) { - f17(window18,deltaX,deltaY,deltaMode); - }; - $window.onMouseWheel.add(tmp17); - var f18 = $bind(this,this.__onLimeWindowMove); - var window19 = $window; - var tmp18 = function(x4,y4) { - f18(window19,x4,y4); - }; - $window.onMove.add(tmp18); - $window.onRender.add($bind(this,this.__onLimeRender)); - $window.onRenderContextLost.add($bind(this,this.__onLimeRenderContextLost)); - $window.onRenderContextRestored.add($bind(this,this.__onLimeRenderContextRestored)); - var f19 = $bind(this,this.__onLimeWindowResize); - var window20 = $window; - var tmp19 = function(width,height) { - f19(window20,width,height); - }; - $window.onResize.add(tmp19); - var f20 = $bind(this,this.__onLimeWindowRestore); - var window21 = $window; - var tmp20 = function() { - f20(window21); - }; - $window.onRestore.add(tmp20); - var f21 = $bind(this,this.__onLimeTextEdit); - var window22 = $window; - var tmp21 = function(text,start,length) { - f21(window22,text,start,length); - }; - $window.onTextEdit.add(tmp21); - var f22 = $bind(this,this.__onLimeTextInput); - var window23 = $window; - var tmp22 = function(text1) { - f22(window23,text1); - }; - $window.onTextInput.add(tmp22); - this.__onLimeWindowCreate($window); - } - ,__onLimeGamepadAxisMove: function(gamepad,axis,value) { - try { - openfl_ui_GameInput.__onGamepadAxisMove(gamepad,axis,value); - } catch( e ) { - haxe_CallStack.lastException = e; - this.__handleError(((e) instanceof js__$Boot_HaxeError) ? e.val : e); - } - } - ,__onLimeGamepadButtonDown: function(gamepad,button) { - try { - openfl_ui_GameInput.__onGamepadButtonDown(gamepad,button); - } catch( e ) { - haxe_CallStack.lastException = e; - this.__handleError(((e) instanceof js__$Boot_HaxeError) ? e.val : e); - } - } - ,__onLimeGamepadButtonUp: function(gamepad,button) { - try { - openfl_ui_GameInput.__onGamepadButtonUp(gamepad,button); - } catch( e ) { - haxe_CallStack.lastException = e; - this.__handleError(((e) instanceof js__$Boot_HaxeError) ? e.val : e); - } - } - ,__onLimeGamepadConnect: function(gamepad) { - try { - openfl_ui_GameInput.__onGamepadConnect(gamepad); - } catch( e ) { - haxe_CallStack.lastException = e; - this.__handleError(((e) instanceof js__$Boot_HaxeError) ? e.val : e); - } - var f = $bind(this,this.__onLimeGamepadAxisMove); - var gamepad1 = gamepad; - var tmp = function(axis,value) { - f(gamepad1,axis,value); - }; - gamepad.onAxisMove.add(tmp); - var f1 = $bind(this,this.__onLimeGamepadButtonDown); - var gamepad2 = gamepad; - var tmp1 = function(button) { - f1(gamepad2,button); - }; - gamepad.onButtonDown.add(tmp1); - var f2 = $bind(this,this.__onLimeGamepadButtonUp); - var gamepad3 = gamepad; - var tmp2 = function(button1) { - f2(gamepad3,button1); - }; - gamepad.onButtonUp.add(tmp2); - var f3 = $bind(this,this.__onLimeGamepadDisconnect); - var gamepad4 = gamepad; - var tmp3 = function() { - f3(gamepad4); - }; - gamepad.onDisconnect.add(tmp3); - } - ,__onLimeGamepadDisconnect: function(gamepad) { - try { - openfl_ui_GameInput.__onGamepadDisconnect(gamepad); - } catch( e ) { - haxe_CallStack.lastException = e; - this.__handleError(((e) instanceof js__$Boot_HaxeError) ? e.val : e); - } - } - ,__onLimeKeyDown: function($window,keyCode,modifier) { - if(this.window == null || this.window != $window) { - return; - } - this.__onKey("keyDown",keyCode,modifier); - } - ,__onLimeKeyUp: function($window,keyCode,modifier) { - if(this.window == null || this.window != $window) { - return; - } - this.__onKey("keyUp",keyCode,modifier); - } - ,__onLimeModuleExit: function(code) { - if(this.window != null) { - var event = null; - event = new openfl_events_Event("deactivate"); - this.__broadcastEvent(event); - } - } - ,__onLimeMouseDown: function($window,x,y,button) { - if(this.window == null || this.window != $window) { - return; - } - this.__dispatchPendingMouseEvent(); - var type; - switch(button) { - case 1: - type = "middleMouseDown"; - break; - case 2: - type = "rightMouseDown"; - break; - default: - type = "mouseDown"; - } - this.__onMouse(type,x * $window.__scale | 0,y * $window.__scale | 0,button); - if(!this.showDefaultContextMenu && button == 2) { - $window.onMouseDown.cancel(); - } - } - ,__onLimeMouseMove: function($window,x,y) { - if(this.window == null || this.window != $window) { - return; - } - this.__pendingMouseEvent = true; - this.__pendingMouseX = x * $window.__scale | 0; - this.__pendingMouseY = y * $window.__scale | 0; - } - ,__onLimeMouseMoveRelative: function($window,x,y) { - } - ,__onLimeMouseUp: function($window,x,y,button) { - if(this.window == null || this.window != $window) { - return; - } - this.__dispatchPendingMouseEvent(); - var type; - switch(button) { - case 1: - type = "middleMouseUp"; - break; - case 2: - type = "rightMouseUp"; - break; - default: - type = "mouseUp"; - } - this.__onMouse(type,x * $window.__scale | 0,y * $window.__scale | 0,button); - if(!this.showDefaultContextMenu && button == 2) { - $window.onMouseUp.cancel(); - } - } - ,__onLimeMouseWheel: function($window,deltaX,deltaY,deltaMode) { - if(this.window == null || this.window != $window) { - return; - } - this.__dispatchPendingMouseEvent(); - if(deltaMode == lime_ui_MouseWheelMode.PIXELS) { - this.__onMouseWheel(deltaX * $window.__scale | 0,deltaY * $window.__scale | 0,deltaMode); - } else { - this.__onMouseWheel(deltaX | 0,deltaY | 0,deltaMode); - } - } - ,__onLimeRender: function(context) { - if(this.__rendering) { - return; - } - this.__rendering = true; - var event = null; - this.__broadcastEvent(new openfl_events_Event("enterFrame")); - this.__broadcastEvent(new openfl_events_Event("frameConstructed")); - this.__broadcastEvent(new openfl_events_Event("exitFrame")); - this.__renderable = true; - this.__enterFrame(this.__deltaTime); - this.__deltaTime = 0; - var shouldRender = this.__renderer != null && (this.__renderDirty || this.__forceRender); - if(this.__invalidated && shouldRender) { - this.__invalidated = false; - event = new openfl_events_Event("render"); - this.__broadcastEvent(event); - } - this.__update(false,true); - if(this.__renderer != null) { - if(this.context3D != null) { - var stage3D = this.stage3Ds.iterator(); - while(stage3D.hasNext()) { - var stage3D1 = stage3D.next(); - this.context3D.__renderStage3D(stage3D1); - } - if(this.context3D.__present) { - shouldRender = true; - } - } - if(shouldRender) { - var tmp = this.__renderer.__type == "cairo"; - if(this.context3D == null) { - this.__renderer.__clear(); - } - this.__renderer.__render(this); - } else if(this.context3D == null) { - this.window.onRender.cancel(); - } - if(this.context3D != null) { - if(!this.context3D.__present) { - this.window.onRender.cancel(); - } else { - if(!this.__renderer.__cleared) { - this.__renderer.__clear(); - } - this.context3D.__present = false; - this.context3D.__cleared = false; - } - } - this.__renderer.__cleared = false; - } - this.__rendering = false; - } - ,__onLimeRenderContextLost: function() { - this.__renderer = null; - this.context3D = null; - var stage3D = this.stage3Ds.iterator(); - while(stage3D.hasNext()) { - var stage3D1 = stage3D.next(); - stage3D1.__lostContext(); - } - } - ,__onLimeRenderContextRestored: function(context) { - this.__createRenderer(); - var stage3D = this.stage3Ds.iterator(); - while(stage3D.hasNext()) { - var stage3D1 = stage3D.next(); - stage3D1.__restoreContext(); - } - } - ,__onLimeTextEdit: function($window,text,start,length) { - } - ,__onLimeTextInput: function($window,text) { - if(this.window == null || this.window != $window) { - return; - } - var stack = []; - if(this.__focus == null) { - this.__getInteractive(stack); - } else { - this.__focus.__getInteractive(stack); - } - var event = new openfl_events_TextEvent("textInput",true,true,text); - if(stack.length > 0) { - stack.reverse(); - this.__dispatchStack(event,stack); - } else { - this.__dispatchEvent(event); - } - if(event.isDefaultPrevented()) { - $window.onTextInput.cancel(); - } - } - ,__onLimeTouchCancel: function(touch) { - if(this.__primaryTouch == touch) { - this.__primaryTouch = null; - } - this.__onTouch("touchEnd",touch); - } - ,__onLimeTouchMove: function(touch) { - this.__onTouch("touchMove",touch); - } - ,__onLimeTouchEnd: function(touch) { - if(this.__primaryTouch == touch) { - this.__primaryTouch = null; - } - this.__onTouch("touchEnd",touch); - } - ,__onLimeTouchStart: function(touch) { - if(this.__primaryTouch == null) { - this.__primaryTouch = touch; - } - this.__onTouch("touchBegin",touch); - } - ,__onLimeUpdate: function(deltaTime) { - this.__deltaTime = deltaTime; - this.__dispatchPendingMouseEvent(); - } - ,__onLimeWindowActivate: function($window) { - if(this.window == null || this.window != $window) { - return; - } - } - ,__onLimeWindowClose: function($window) { - if(this.window == $window) { - this.window = null; - } - this.__primaryTouch = null; - var event = null; - event = new openfl_events_Event("deactivate"); - this.__broadcastEvent(event); - } - ,__onLimeWindowCreate: function($window) { - if(this.window == null || this.window != $window) { - return; - } - if($window.context != null) { - this.__createRenderer(); - } - } - ,__onLimeWindowDeactivate: function($window) { - if(this.window == null || this.window != $window) { - return; - } - } - ,__onLimeWindowDropFile: function($window,file) { - } - ,__onLimeWindowEnter: function($window) { - } - ,__onLimeWindowExpose: function($window) { - if(this.window == null || this.window != $window) { - return; - } - this.__renderDirty = true; - } - ,__onLimeWindowFocusIn: function($window) { - if(this.window == null || this.window != $window) { - return; - } - this.__renderDirty = true; - var event = null; - event = new openfl_events_Event("activate"); - this.__broadcastEvent(event); - this.set_focus(this.__cacheFocus); - } - ,__onLimeWindowFocusOut: function($window) { - if(this.window == null || this.window != $window) { - return; - } - this.__primaryTouch = null; - var event = null; - event = new openfl_events_Event("deactivate"); - this.__broadcastEvent(event); - var currentFocus = this.get_focus(); - this.set_focus(null); - this.__cacheFocus = currentFocus; - openfl_events_MouseEvent.__altKey = false; - openfl_events_MouseEvent.__commandKey = false; - openfl_events_MouseEvent.__ctrlKey = false; - openfl_events_MouseEvent.__shiftKey = false; - } - ,__onLimeWindowFullscreen: function($window) { - if(this.window == null || this.window != $window) { - return; - } - this.__resize(); - if(!this.__wasFullscreen) { - this.__wasFullscreen = true; - if(this.__displayState == 2) { - this.__displayState = 1; - } - this.__dispatchEvent(new openfl_events_FullScreenEvent("fullScreen",false,false,true,true)); - } - } - ,__onLimeWindowLeave: function($window) { - if(this.window == null || this.window != $window || openfl_events_MouseEvent.__buttonDown) { - return; - } - this.__dispatchPendingMouseEvent(); - var event = null; - event = new openfl_events_Event("mouseLeave"); - this.__dispatchEvent(event); - } - ,__onLimeWindowMinimize: function($window) { - if(this.window == null || this.window != $window) { - return; - } - } - ,__onLimeWindowMove: function($window,x,y) { - } - ,__onLimeWindowResize: function($window,width,height) { - if(this.window == null || this.window != $window) { - return; - } - this.__resize(); - if(this.__wasFullscreen && !$window.__fullscreen) { - this.__wasFullscreen = false; - this.__displayState = 2; - this.__dispatchEvent(new openfl_events_FullScreenEvent("fullScreen",false,false,false,true)); - } - } - ,__onLimeWindowRestore: function($window) { - if(this.window == null || this.window != $window) { - return; - } - if(this.__wasFullscreen && !$window.__fullscreen) { - this.__wasFullscreen = false; - this.__displayState = 2; - this.__dispatchEvent(new openfl_events_FullScreenEvent("fullScreen",false,false,false,true)); - } - } - ,__onMouse: function(type,x,y,button) { - if(button > 2) { - return; - } - var targetPoint = openfl_geom_Point.__pool.get(); - targetPoint.setTo(x,y); - var _this = this.__displayMatrix; - var norm = _this.a * _this.d - _this.b * _this.c; - if(norm == 0) { - targetPoint.x = -_this.tx; - targetPoint.y = -_this.ty; - } else { - var px = 1.0 / norm * (_this.c * (_this.ty - targetPoint.y) + _this.d * (targetPoint.x - _this.tx)); - targetPoint.y = 1.0 / norm * (_this.a * (targetPoint.y - _this.ty) + _this.b * (_this.tx - targetPoint.x)); - targetPoint.x = px; - } - this.__mouseX = targetPoint.x; - this.__mouseY = targetPoint.y; - var stack = []; - var target = null; - if(this.__hitTest(this.__mouseX,this.__mouseY,true,stack,true,this)) { - target = stack[stack.length - 1]; - } else { - target = this; - stack = [this]; - } - if(target == null) { - target = this; - } - var clickType = null; - switch(type) { - case "middleMouseDown": - this.__mouseDownMiddle = target; - break; - case "middleMouseUp": - if(this.__mouseDownMiddle == target) { - clickType = "middleClick"; - } - this.__mouseDownMiddle = null; - break; - case "mouseDown": - if(target.__allowMouseFocus()) { - if(this.get_focus() != null) { - var focusEvent = new openfl_events_FocusEvent("mouseFocusChange",true,true,target,false,0); - this.__dispatchStack(focusEvent,stack); - if(!focusEvent.isDefaultPrevented()) { - this.set_focus(target); - } - } else { - this.set_focus(target); - } - } else { - this.set_focus(null); - } - this.__mouseDownLeft = target; - openfl_events_MouseEvent.__buttonDown = true; - break; - case "mouseUp": - if(this.__mouseDownLeft != null) { - openfl_events_MouseEvent.__buttonDown = false; - if(this.__mouseDownLeft == target) { - clickType = "click"; - } else { - var event = null; - event = openfl_events_MouseEvent.__create("releaseOutside",1,this.__mouseX,this.__mouseY,new openfl_geom_Point(this.__mouseX,this.__mouseY),this); - this.__mouseDownLeft.dispatchEvent(event); - } - this.__mouseDownLeft = null; - } - break; - case "rightMouseDown": - this.__mouseDownRight = target; - break; - case "rightMouseUp": - if(this.__mouseDownRight == target) { - clickType = "rightClick"; - } - this.__mouseDownRight = null; - break; - default: - } - var localPoint = openfl_geom_Point.__pool.get(); - var event1 = null; - event1 = openfl_events_MouseEvent.__create(type,button,this.__mouseX,this.__mouseY,target.__globalToLocal(targetPoint,localPoint),target); - this.__dispatchStack(event1,stack); - if(clickType != null) { - event1 = openfl_events_MouseEvent.__create(clickType,button,this.__mouseX,this.__mouseY,target.__globalToLocal(targetPoint,localPoint),target); - this.__dispatchStack(event1,stack); - if(type == "mouseUp" && (js_Boot.__cast(target , openfl_display_InteractiveObject)).doubleClickEnabled) { - var currentTime = openfl_Lib.getTimer(); - if(currentTime - this.__lastClickTime < 500) { - event1 = openfl_events_MouseEvent.__create("doubleClick",button,this.__mouseX,this.__mouseY,target.__globalToLocal(targetPoint,localPoint),target); - this.__dispatchStack(event1,stack); - this.__lastClickTime = 0; - } else { - this.__lastClickTime = currentTime; - } - } - } - if(openfl_ui_Mouse.__cursor == "auto" && !openfl_ui_Mouse.__hidden) { - var cursor = null; - if(this.__mouseDownLeft != null) { - cursor = this.__mouseDownLeft.__getCursor(); - } else { - var _g = 0; - while(_g < stack.length) { - var target1 = stack[_g]; - ++_g; - cursor = target1.__getCursor(); - if(cursor != null) { - this.window.set_cursor(openfl_ui__$MouseCursor_MouseCursor_$Impl_$.toLimeCursor(cursor)); - break; - } - } - } - if(cursor == null) { - this.window.set_cursor(lime_ui_MouseCursor.ARROW); - } - } - var event2; - if(target != this.__mouseOverTarget) { - if(this.__mouseOverTarget != null) { - event2 = openfl_events_MouseEvent.__create("mouseOut",button,this.__mouseX,this.__mouseY,this.__mouseOverTarget.__globalToLocal(targetPoint,localPoint),this.__mouseOverTarget); - this.__dispatchStack(event2,this.__mouseOutStack); - } - } - var item; - var i = 0; - while(i < this.__rollOutStack.length) { - item = this.__rollOutStack[i]; - if(stack.indexOf(item) == -1) { - HxOverrides.remove(this.__rollOutStack,item); - event2 = openfl_events_MouseEvent.__create("rollOut",button,this.__mouseX,this.__mouseY,this.__mouseOverTarget.__globalToLocal(targetPoint,localPoint),this.__mouseOverTarget); - event2.bubbles = false; - this.__dispatchTarget(item,event2); - } else { - ++i; - } - } - var _g1 = 0; - while(_g1 < stack.length) { - var item1 = stack[_g1]; - ++_g1; - if(this.__rollOutStack.indexOf(item1) == -1 && this.__mouseOverTarget != null) { - if(item1.hasEventListener("rollOver")) { - event2 = openfl_events_MouseEvent.__create("rollOver",button,this.__mouseX,this.__mouseY,this.__mouseOverTarget.__globalToLocal(targetPoint,localPoint),item1); - event2.bubbles = false; - this.__dispatchTarget(item1,event2); - } - if(item1.hasEventListener("rollOut") || item1.hasEventListener("rollOver")) { - this.__rollOutStack.push(item1); - } - } - } - if(target != this.__mouseOverTarget) { - if(target != null) { - event2 = openfl_events_MouseEvent.__create("mouseOver",button,this.__mouseX,this.__mouseY,target.__globalToLocal(targetPoint,localPoint),target); - this.__dispatchStack(event2,stack); - } - this.__mouseOverTarget = target; - this.__mouseOutStack = stack; - } - if(this.__dragObject != null) { - this.__drag(targetPoint); - var dropTarget = null; - if(this.__mouseOverTarget == this.__dragObject) { - var cacheMouseEnabled = this.__dragObject.mouseEnabled; - var cacheMouseChildren = this.__dragObject.mouseChildren; - this.__dragObject.mouseEnabled = false; - this.__dragObject.mouseChildren = false; - var stack1 = []; - if(this.__hitTest(this.__mouseX,this.__mouseY,true,stack1,true,this)) { - dropTarget = stack1[stack1.length - 1]; - } - this.__dragObject.mouseEnabled = cacheMouseEnabled; - this.__dragObject.mouseChildren = cacheMouseChildren; - } else if(this.__mouseOverTarget != this) { - dropTarget = this.__mouseOverTarget; - } - this.__dragObject.dropTarget = dropTarget; - } - openfl_geom_Point.__pool.release(targetPoint); - openfl_geom_Point.__pool.release(localPoint); - } - ,__onMouseWheel: function(deltaX,deltaY,deltaMode) { - var x = this.__mouseX; - var y = this.__mouseY; - var stack = []; - var target = null; - if(this.__hitTest(this.__mouseX,this.__mouseY,true,stack,true,this)) { - target = stack[stack.length - 1]; - } else { - target = this; - stack = [this]; - } - if(target == null) { - target = this; - } - var targetPoint = openfl_geom_Point.__pool.get(); - targetPoint.setTo(x,y); - var _this = this.__displayMatrix; - var norm = _this.a * _this.d - _this.b * _this.c; - if(norm == 0) { - targetPoint.x = -_this.tx; - targetPoint.y = -_this.ty; - } else { - var px = 1.0 / norm * (_this.c * (_this.ty - targetPoint.y) + _this.d * (targetPoint.x - _this.tx)); - targetPoint.y = 1.0 / norm * (_this.a * (targetPoint.y - _this.ty) + _this.b * (_this.tx - targetPoint.x)); - targetPoint.x = px; - } - var delta = deltaY | 0; - var event = openfl_events_MouseEvent.__create("mouseWheel",0,this.__mouseX,this.__mouseY,target.__globalToLocal(targetPoint,targetPoint),target,delta); - event.cancelable = true; - this.__dispatchStack(event,stack); - if(event.isDefaultPrevented()) { - this.window.onMouseWheel.cancel(); - } - openfl_geom_Point.__pool.release(targetPoint); - } - ,__onTouch: function(type,touch) { - var targetPoint = openfl_geom_Point.__pool.get(); - targetPoint.setTo(Math.round(touch.x * this.window.__width * this.window.__scale),Math.round(touch.y * this.window.__height * this.window.__scale)); - var _this = this.__displayMatrix; - var norm = _this.a * _this.d - _this.b * _this.c; - if(norm == 0) { - targetPoint.x = -_this.tx; - targetPoint.y = -_this.ty; - } else { - var px = 1.0 / norm * (_this.c * (_this.ty - targetPoint.y) + _this.d * (targetPoint.x - _this.tx)); - targetPoint.y = 1.0 / norm * (_this.a * (targetPoint.y - _this.ty) + _this.b * (_this.tx - targetPoint.x)); - targetPoint.x = px; - } - var touchX = targetPoint.x; - var touchY = targetPoint.y; - var stack = []; - var target = null; - if(this.__hitTest(touchX,touchY,false,stack,true,this)) { - target = stack[stack.length - 1]; - } else { - target = this; - stack = [this]; - } - if(target == null) { - target = this; - } - var touchId = touch.id; - var touchData = null; - if(this.__touchData.h.hasOwnProperty(touchId)) { - touchData = this.__touchData.h[touchId]; - } else { - touchData = openfl__$internal_utils_TouchData.__pool.get(); - touchData.reset(); - touchData.touch = touch; - this.__touchData.h[touchId] = touchData; - } - var touchType = null; - var releaseTouchData = false; - switch(type) { - case "touchBegin": - touchData.touchDownTarget = target; - break; - case "touchEnd": - if(touchData.touchDownTarget == target) { - touchType = "touchTap"; - } - touchData.touchDownTarget = null; - releaseTouchData = true; - break; - default: - } - var localPoint = openfl_geom_Point.__pool.get(); - var isPrimaryTouchPoint = this.__primaryTouch == touch; - var touchEvent = openfl_events_TouchEvent.__create(type,null,touchX,touchY,target.__globalToLocal(targetPoint,localPoint),target); - touchEvent.touchPointID = touchId; - touchEvent.isPrimaryTouchPoint = isPrimaryTouchPoint; - touchEvent.pressure = touch.pressure; - this.__dispatchStack(touchEvent,stack); - if(touchType != null) { - touchEvent = openfl_events_TouchEvent.__create(touchType,null,touchX,touchY,target.__globalToLocal(targetPoint,localPoint),target); - touchEvent.touchPointID = touchId; - touchEvent.isPrimaryTouchPoint = isPrimaryTouchPoint; - touchEvent.pressure = touch.pressure; - this.__dispatchStack(touchEvent,stack); - } - var touchOverTarget = touchData.touchOverTarget; - if(target != touchOverTarget && touchOverTarget != null) { - touchEvent = openfl_events_TouchEvent.__create("touchOut",null,touchX,touchY,touchOverTarget.__globalToLocal(targetPoint,localPoint),touchOverTarget); - touchEvent.touchPointID = touchId; - touchEvent.isPrimaryTouchPoint = isPrimaryTouchPoint; - touchEvent.pressure = touch.pressure; - this.__dispatchTarget(touchOverTarget,touchEvent); - } - var touchOutStack = touchData.rollOutStack; - var item; - var i = 0; - while(i < touchOutStack.length) { - item = touchOutStack[i]; - if(stack.indexOf(item) == -1) { - HxOverrides.remove(touchOutStack,item); - touchEvent = openfl_events_TouchEvent.__create("touchRollOut",null,touchX,touchY,touchOverTarget.__globalToLocal(targetPoint,localPoint),touchOverTarget); - touchEvent.touchPointID = touchId; - touchEvent.isPrimaryTouchPoint = isPrimaryTouchPoint; - touchEvent.bubbles = false; - touchEvent.pressure = touch.pressure; - this.__dispatchTarget(item,touchEvent); - } else { - ++i; - } - } - var _g = 0; - while(_g < stack.length) { - var item1 = stack[_g]; - ++_g; - if(touchOutStack.indexOf(item1) == -1) { - if(item1.hasEventListener("touchRollOver")) { - touchEvent = openfl_events_TouchEvent.__create("touchRollOver",null,touchX,touchY,touchOverTarget.__globalToLocal(targetPoint,localPoint),item1); - touchEvent.touchPointID = touchId; - touchEvent.isPrimaryTouchPoint = isPrimaryTouchPoint; - touchEvent.bubbles = false; - touchEvent.pressure = touch.pressure; - this.__dispatchTarget(item1,touchEvent); - } - if(item1.hasEventListener("touchRollOut")) { - touchOutStack.push(item1); - } - } - } - if(target != touchOverTarget) { - if(target != null) { - touchEvent = openfl_events_TouchEvent.__create("touchOver",null,touchX,touchY,target.__globalToLocal(targetPoint,localPoint),target); - touchEvent.touchPointID = touchId; - touchEvent.isPrimaryTouchPoint = isPrimaryTouchPoint; - touchEvent.bubbles = true; - touchEvent.pressure = touch.pressure; - this.__dispatchTarget(target,touchEvent); - } - touchData.touchOverTarget = target; - } - openfl_geom_Point.__pool.release(targetPoint); - openfl_geom_Point.__pool.release(localPoint); - if(releaseTouchData) { - this.__touchData.remove(touchId); - touchData.reset(); - openfl__$internal_utils_TouchData.__pool.release(touchData); - } - } - ,__registerLimeModule: function(application) { - application.onCreateWindow.add($bind(this,this.__onLimeCreateWindow)); - application.onUpdate.add($bind(this,this.__onLimeUpdate)); - application.onExit.add($bind(this,this.__onLimeModuleExit),false,0); - var gamepad = lime_ui_Gamepad.devices.iterator(); - while(gamepad.hasNext()) { - var gamepad1 = gamepad.next(); - this.__onLimeGamepadConnect(gamepad1); - } - lime_ui_Gamepad.onConnect.add($bind(this,this.__onLimeGamepadConnect)); - lime_ui_Touch.onStart.add($bind(this,this.__onLimeTouchStart)); - lime_ui_Touch.onMove.add($bind(this,this.__onLimeTouchMove)); - lime_ui_Touch.onEnd.add($bind(this,this.__onLimeTouchEnd)); - lime_ui_Touch.onCancel.add($bind(this,this.__onLimeTouchCancel)); - } - ,__resize: function() { - var cacheWidth = this.stageWidth; - var cacheHeight = this.stageHeight; - var windowWidth = this.window.__width * this.window.__scale | 0; - var windowHeight = this.window.__height * this.window.__scale | 0; - this.__logicalWidth = windowWidth; - this.__logicalHeight = windowHeight; - this.__displayMatrix.identity(); - if(this.get_fullScreenSourceRect() != null && this.window.__fullscreen) { - this.stageWidth = this.get_fullScreenSourceRect().width | 0; - this.stageHeight = this.get_fullScreenSourceRect().height | 0; - var displayScaleX = windowWidth / this.stageWidth; - var displayScaleY = windowHeight / this.stageHeight; - this.__displayMatrix.translate(-this.get_fullScreenSourceRect().x,-this.get_fullScreenSourceRect().y); - this.__displayMatrix.scale(displayScaleX,displayScaleY); - this.__displayRect.setTo(this.get_fullScreenSourceRect().get_left(),this.get_fullScreenSourceRect().get_right(),this.get_fullScreenSourceRect().get_top(),this.get_fullScreenSourceRect().get_bottom()); - } else { - if(this.__logicalWidth == 0 && this.__logicalHeight == 0) { - this.stageWidth = windowWidth; - this.stageHeight = windowHeight; - } else { - this.stageWidth = this.__logicalWidth; - this.stageHeight = this.__logicalHeight; - var scaleX = windowWidth / this.stageWidth; - var scaleY = windowHeight / this.stageHeight; - var targetScale = Math.min(scaleX,scaleY); - var offsetX = Math.round((windowWidth - this.stageWidth * targetScale) / 2); - var offsetY = Math.round((windowHeight - this.stageHeight * targetScale) / 2); - this.__displayMatrix.scale(targetScale,targetScale); - this.__displayMatrix.translate(offsetX,offsetY); - } - this.__displayRect.setTo(0,0,this.stageWidth,this.stageHeight); - } - if(this.context3D != null) { - this.context3D.configureBackBuffer(windowWidth,windowHeight,0,true,true,true); - } - var stage3D = this.stage3Ds.iterator(); - while(stage3D.hasNext()) { - var stage3D1 = stage3D.next(); - stage3D1.__resize(windowWidth,windowHeight); - } - if(this.__renderer != null) { - this.__renderer.__resize(windowWidth,windowHeight); - } - if(this.stageWidth != cacheWidth || this.stageHeight != cacheHeight) { - this.__renderDirty = true; - this.__setTransformDirty(); - var event = null; - event = new openfl_events_Event("resize"); - this.__dispatchEvent(event); - } - } - ,__setLogicalSize: function(width,height) { - this.__logicalWidth = width; - this.__logicalHeight = height; - this.__resize(); - } - ,__startDrag: function(sprite,lockCenter,bounds) { - if(bounds == null) { - this.__dragBounds = null; - } else { - this.__dragBounds = new openfl_geom_Rectangle(); - var right = bounds.get_right(); - var bottom = bounds.get_bottom(); - this.__dragBounds.x = right < bounds.x ? right : bounds.x; - this.__dragBounds.y = bottom < bounds.y ? bottom : bounds.y; - this.__dragBounds.width = Math.abs(bounds.width); - this.__dragBounds.height = Math.abs(bounds.height); - } - this.__dragObject = sprite; - if(this.__dragObject != null) { - if(lockCenter) { - this.__dragOffsetX = 0; - this.__dragOffsetY = 0; - } else { - var mouse = openfl_geom_Point.__pool.get(); - mouse.setTo(this.get_mouseX(),this.get_mouseY()); - var parent = this.__dragObject.parent; - if(parent != null) { - var _this = parent.__getWorldTransform(); - var norm = _this.a * _this.d - _this.b * _this.c; - if(norm == 0) { - mouse.x = -_this.tx; - mouse.y = -_this.ty; - } else { - var px = 1.0 / norm * (_this.c * (_this.ty - mouse.y) + _this.d * (mouse.x - _this.tx)); - mouse.y = 1.0 / norm * (_this.a * (mouse.y - _this.ty) + _this.b * (_this.tx - mouse.x)); - mouse.x = px; - } - } - this.__dragOffsetX = this.__dragObject.get_x() - mouse.x; - this.__dragOffsetY = this.__dragObject.get_y() - mouse.y; - openfl_geom_Point.__pool.release(mouse); - } - } - } - ,__stopDrag: function(sprite) { - this.__dragBounds = null; - this.__dragObject = null; - } - ,__unregisterLimeModule: function(application) { - application.onCreateWindow.remove($bind(this,this.__onLimeCreateWindow)); - application.onUpdate.remove($bind(this,this.__onLimeUpdate)); - application.onExit.remove($bind(this,this.__onLimeModuleExit)); - lime_ui_Gamepad.onConnect.remove($bind(this,this.__onLimeGamepadConnect)); - lime_ui_Touch.onStart.remove($bind(this,this.__onLimeTouchStart)); - lime_ui_Touch.onMove.remove($bind(this,this.__onLimeTouchMove)); - lime_ui_Touch.onEnd.remove($bind(this,this.__onLimeTouchEnd)); - lime_ui_Touch.onCancel.remove($bind(this,this.__onLimeTouchCancel)); - } - ,__update: function(transformOnly,updateChildren) { - if(transformOnly) { - if(this.__transformDirty) { - openfl_display_DisplayObjectContainer.prototype.__update.call(this,true,updateChildren); - if(updateChildren) { - this.__transformDirty = false; - } - } - } else if(this.__transformDirty || this.__renderDirty) { - openfl_display_DisplayObjectContainer.prototype.__update.call(this,false,updateChildren); - if(updateChildren) { - if(openfl_display_DisplayObject.__supportDOM) { - this.__wasDirty = true; - } - } - } else if(!this.__renderDirty && this.__wasDirty) { - openfl_display_DisplayObjectContainer.prototype.__update.call(this,false,updateChildren); - if(updateChildren) { - this.__wasDirty = false; - } - } - } - ,get_color: function() { - return this.__color; - } - ,set_color: function(value) { - if(value == null) { - this.__transparent = true; - value = 0; - } else { - this.__transparent = false; - } - if(this.__color != value) { - var r = (value & 16711680) >>> 16; - var g = (value & 65280) >>> 8; - var b = value & 255; - this.__colorSplit[0] = r / 255; - this.__colorSplit[1] = g / 255; - this.__colorSplit[2] = b / 255; - this.__colorString = "#" + StringTools.hex(value & 16777215,6); - this.__renderDirty = true; - this.__color = -16777216 | value & 16777215; - } - return value; - } - ,get_contentsScaleFactor: function() { - return this.__contentsScaleFactor; - } - ,get_displayState: function() { - return this.__displayState; - } - ,set_displayState: function(value) { - if(this.window != null) { - if(value == 2) { - if(this.window.__fullscreen) { - this.window.set_fullscreen(false); - } - } else if(!this.window.__fullscreen) { - this.window.set_fullscreen(true); - } - } - return this.__displayState = value; - } - ,get_focus: function() { - return this.__focus; - } - ,set_focus: function(value) { - if(value != this.__focus) { - var oldFocus = this.__focus; - this.__focus = value; - this.__cacheFocus = value; - if(oldFocus != null) { - var event = new openfl_events_FocusEvent("focusOut",true,false,value,false,0); - var stack = []; - oldFocus.__getInteractive(stack); - stack.reverse(); - this.__dispatchStack(event,stack); - } - if(value != null) { - var event1 = new openfl_events_FocusEvent("focusIn",true,false,oldFocus,false,0); - var stack1 = []; - value.__getInteractive(stack1); - stack1.reverse(); - this.__dispatchStack(event1,stack1); - } - } - return value; - } - ,get_frameRate: function() { - if(this.window != null) { - return this.window.__backend.getFrameRate(); - } - return 0; - } - ,set_frameRate: function(value) { - if(this.window != null) { - return this.window.__backend.setFrameRate(value); - } - return value; - } - ,get_fullScreenHeight: function() { - return Math.ceil(this.window.get_display().currentMode.height * this.window.__scale); - } - ,get_fullScreenSourceRect: function() { - if(this.__fullScreenSourceRect == null) { - return null; - } else { - return this.__fullScreenSourceRect.clone(); - } - } - ,set_fullScreenSourceRect: function(value) { - if(value == null) { - if(this.__fullScreenSourceRect != null) { - this.__fullScreenSourceRect = null; - this.__resize(); - } - } else if(!value.equals(this.__fullScreenSourceRect)) { - this.__fullScreenSourceRect = value.clone(); - this.__resize(); - } - return value; - } - ,get_fullScreenWidth: function() { - return Math.ceil(this.window.get_display().currentMode.width * this.window.__scale); - } - ,set_height: function(value) { - return this.get_height(); - } - ,get_mouseX: function() { - return this.__mouseX; - } - ,get_mouseY: function() { - return this.__mouseY; - } - ,get_quality: function() { - return this.__quality; - } - ,set_quality: function(value) { - this.__quality = value; - if(this.__renderer != null) { - var tmp = this.get_quality(); - this.__renderer.__allowSmoothing = tmp != 2; - } - return value; - } - ,set_rotation: function(value) { - return 0; - } - ,get_scaleMode: function() { - return this.__scaleMode; - } - ,set_scaleMode: function(value) { - return this.__scaleMode = value; - } - ,set_scaleX: function(value) { - return 0; - } - ,set_scaleY: function(value) { - return 0; - } - ,get_tabEnabled: function() { - return false; - } - ,set_tabEnabled: function(value) { - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError("Error: The Stage class does not implement this property or method.")); - } - ,get_tabIndex: function() { - return -1; - } - ,set_tabIndex: function(value) { - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError("Error: The Stage class does not implement this property or method.")); - } - ,set_transform: function(value) { - return this.get_transform(); - } - ,set_width: function(value) { - return this.get_width(); - } - ,set_x: function(value) { - return 0; - } - ,set_y: function(value) { - return 0; - } - ,__class__: openfl_display_Stage - ,__properties__: $extend(openfl_display_DisplayObjectContainer.prototype.__properties__,{set_scaleMode:"set_scaleMode",get_scaleMode:"get_scaleMode",set_quality:"set_quality",get_quality:"get_quality",get_fullScreenWidth:"get_fullScreenWidth",set_fullScreenSourceRect:"set_fullScreenSourceRect",get_fullScreenSourceRect:"get_fullScreenSourceRect",get_fullScreenHeight:"get_fullScreenHeight",set_frameRate:"set_frameRate",get_frameRate:"get_frameRate",set_focus:"set_focus",get_focus:"get_focus",set_displayState:"set_displayState",get_displayState:"get_displayState",get_contentsScaleFactor:"get_contentsScaleFactor",set_color:"set_color",get_color:"get_color"}) -}); -var openfl_display_Stage3D = function(stage) { - openfl_events_EventDispatcher.call(this); - this.__stage = stage; - this.__height = 0; - this.__projectionTransform = new openfl_geom_Matrix3D(); - this.__renderTransform = new openfl_geom_Matrix3D(); - this.__width = 0; - this.__x = 0; - this.__y = 0; - this.visible = true; - if(stage.stageWidth > 0 && stage.stageHeight > 0) { - this.__resize(stage.stageWidth,stage.stageHeight); - } -}; -$hxClasses["openfl.display.Stage3D"] = openfl_display_Stage3D; -openfl_display_Stage3D.__name__ = "openfl.display.Stage3D"; -openfl_display_Stage3D.__active = null; -openfl_display_Stage3D.__super__ = openfl_events_EventDispatcher; -openfl_display_Stage3D.prototype = $extend(openfl_events_EventDispatcher.prototype,{ - context3D: null - ,visible: null - ,__contextLost: null - ,__contextRequested: null - ,__height: null - ,__indexBuffer: null - ,__projectionTransform: null - ,__renderTransform: null - ,__stage: null - ,__vertexBuffer: null - ,__width: null - ,__x: null - ,__y: null - ,__canvas: null - ,__renderContext: null - ,__style: null - ,__webgl: null - ,requestContext3D: function(context3DRenderMode,profile) { - if(profile == null) { - profile = 0; - } - if(context3DRenderMode == null) { - context3DRenderMode = 0; - } - if(this.__contextLost) { - this.__contextRequested = true; - return; - } - if(this.context3D != null) { - this.__contextRequested = true; - haxe_Timer.delay($bind(this,this.__dispatchCreate),1); - } else if(!this.__contextRequested) { - this.__contextRequested = true; - haxe_Timer.delay($bind(this,this.__createContext),1); - } - } - ,requestContext3DMatchingProfiles: function(profiles) { - this.requestContext3D(); - } - ,__createContext: function() { - var stage = this.__stage; - var renderer = stage.__renderer; - if(renderer.__type == "cairo" || renderer.__type == "canvas") { - this.__dispatchError(); - return; - } - if(renderer.__type == "opengl") { - this.context3D = new openfl_display3D_Context3D(stage,stage.context3D.__contextState,this); - this.__dispatchCreate(); - } else if(renderer.__type == "dom") { - this.__canvas = window.document.createElement("canvas"); - this.__canvas.width = stage.stageWidth; - this.__canvas.height = stage.stageHeight; - var $window = stage.window; - var attributes = renderer.__context.attributes; - var transparentBackground = Object.prototype.hasOwnProperty.call(attributes,"background") && attributes.background == null; - var colorDepth = Object.prototype.hasOwnProperty.call(attributes,"colorDepth") ? attributes.colorDepth : 32; - var options = Object.prototype.hasOwnProperty.call(attributes,"antialiasing") && attributes.antialiasing > 0; - var options1 = { alpha : transparentBackground || colorDepth > 16, antialias : options, depth : true, premultipliedAlpha : true, stencil : true, preserveDrawingBuffer : false}; - this.__webgl = js_html__$CanvasElement_CanvasUtil.getContextWebGL(this.__canvas,options1); - if(this.__webgl != null) { - this.__dispatchError(); - } else { - this.__dispatchError(); - } - } - } - ,__dispatchError: function() { - this.__contextRequested = false; - this.dispatchEvent(new openfl_events_ErrorEvent("error",false,false,"Context3D not available")); - } - ,__dispatchCreate: function() { - if(this.__contextRequested) { - this.__contextRequested = false; - this.dispatchEvent(new openfl_events_Event("context3DCreate")); - } - } - ,__lostContext: function() { - this.__contextLost = true; - if(this.context3D != null) { - this.context3D.__dispose(); - this.__contextRequested = true; - } - } - ,__resize: function(width,height) { - if(width != this.__width || height != this.__height) { - if(this.__canvas != null) { - this.__canvas.width = width; - this.__canvas.height = height; - } - this.__projectionTransform.copyRawDataFrom(openfl__$Vector_Vector_$Impl_$.toFloatVector(null,null,null,[2.0 / (width > 0 ? width : 1),0.0,0.0,0.0,0.0,-2.0 / (height > 0 ? height : 1),0.0,0.0,0.0,0.0,-0.001,0.0,-1.0,1.0,0.0,1.0])); - this.__renderTransform.identity(); - this.__renderTransform.appendTranslation(this.__x,this.__y,0); - this.__renderTransform.append(this.__projectionTransform); - this.__width = width; - this.__height = height; - } - } - ,__restoreContext: function() { - this.__contextLost = false; - this.__createContext(); - } - ,get_x: function() { - return this.__x; - } - ,set_x: function(value) { - if(this.__x == value) { - return value; - } - this.__x = value; - this.__renderTransform.identity(); - this.__renderTransform.appendTranslation(this.__x,this.__y,0); - this.__renderTransform.append(this.__projectionTransform); - return value; - } - ,get_y: function() { - return this.__y; - } - ,set_y: function(value) { - if(this.__y == value) { - return value; - } - this.__y = value; - this.__renderTransform.identity(); - this.__renderTransform.appendTranslation(this.__x,this.__y,0); - this.__renderTransform.append(this.__projectionTransform); - return value; - } - ,__class__: openfl_display_Stage3D - ,__properties__: {set_y:"set_y",get_y:"get_y",set_x:"set_x",get_x:"get_x"} -}); -var openfl_display__$StageAlign_StageAlign_$Impl_$ = {}; -$hxClasses["openfl.display._StageAlign.StageAlign_Impl_"] = openfl_display__$StageAlign_StageAlign_$Impl_$; -openfl_display__$StageAlign_StageAlign_$Impl_$.__name__ = "openfl.display._StageAlign.StageAlign_Impl_"; -openfl_display__$StageAlign_StageAlign_$Impl_$.fromString = function(value) { - switch(value) { - case "bottom": - return 0; - case "bottomLeft": - return 1; - case "bottomRight": - return 2; - case "left": - return 3; - case "right": - return 4; - case "top": - return 5; - case "topLeft": - return 6; - case "topRight": - return 7; - default: - return null; - } -}; -openfl_display__$StageAlign_StageAlign_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "bottom"; - case 1: - return "bottomLeft"; - case 2: - return "bottomRight"; - case 3: - return "left"; - case 4: - return "right"; - case 5: - return "top"; - case 6: - return "topLeft"; - case 7: - return "topRight"; - default: - return null; - } -}; -var openfl_display__$StageDisplayState_StageDisplayState_$Impl_$ = {}; -$hxClasses["openfl.display._StageDisplayState.StageDisplayState_Impl_"] = openfl_display__$StageDisplayState_StageDisplayState_$Impl_$; -openfl_display__$StageDisplayState_StageDisplayState_$Impl_$.__name__ = "openfl.display._StageDisplayState.StageDisplayState_Impl_"; -openfl_display__$StageDisplayState_StageDisplayState_$Impl_$.fromString = function(value) { - switch(value) { - case "fullScreen": - return 0; - case "fullScreenInteractive": - return 1; - case "normal": - return 2; - default: - return null; - } -}; -openfl_display__$StageDisplayState_StageDisplayState_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "fullScreen"; - case 1: - return "fullScreenInteractive"; - case 2: - return "normal"; - default: - return null; - } -}; -var openfl_display__$StageQuality_StageQuality_$Impl_$ = {}; -$hxClasses["openfl.display._StageQuality.StageQuality_Impl_"] = openfl_display__$StageQuality_StageQuality_$Impl_$; -openfl_display__$StageQuality_StageQuality_$Impl_$.__name__ = "openfl.display._StageQuality.StageQuality_Impl_"; -openfl_display__$StageQuality_StageQuality_$Impl_$.fromString = function(value) { - switch(value) { - case "best": - return 0; - case "high": - return 1; - case "low": - return 2; - case "medium": - return 3; - default: - return null; - } -}; -openfl_display__$StageQuality_StageQuality_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "best"; - case 1: - return "high"; - case 2: - return "low"; - case 3: - return "medium"; - default: - return null; - } -}; -var openfl_display__$StageScaleMode_StageScaleMode_$Impl_$ = {}; -$hxClasses["openfl.display._StageScaleMode.StageScaleMode_Impl_"] = openfl_display__$StageScaleMode_StageScaleMode_$Impl_$; -openfl_display__$StageScaleMode_StageScaleMode_$Impl_$.__name__ = "openfl.display._StageScaleMode.StageScaleMode_Impl_"; -openfl_display__$StageScaleMode_StageScaleMode_$Impl_$.fromString = function(value) { - switch(value) { - case "exactFit": - return 0; - case "noBorder": - return 1; - case "noScale": - return 2; - case "showAll": - return 3; - default: - return null; - } -}; -openfl_display__$StageScaleMode_StageScaleMode_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "exactFit"; - case 1: - return "noBorder"; - case 2: - return "noScale"; - case 3: - return "showAll"; - default: - return null; - } -}; -var openfl_display__$TriangleCulling_TriangleCulling_$Impl_$ = {}; -$hxClasses["openfl.display._TriangleCulling.TriangleCulling_Impl_"] = openfl_display__$TriangleCulling_TriangleCulling_$Impl_$; -openfl_display__$TriangleCulling_TriangleCulling_$Impl_$.__name__ = "openfl.display._TriangleCulling.TriangleCulling_Impl_"; -openfl_display__$TriangleCulling_TriangleCulling_$Impl_$.fromString = function(value) { - switch(value) { - case "negative": - return 0; - case "none": - return 1; - case "positive": - return 2; - default: - return null; - } -}; -openfl_display__$TriangleCulling_TriangleCulling_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "negative"; - case 1: - return "none"; - case 2: - return "positive"; - default: - return null; - } -}; -var openfl_display_Window = function(application,attributes) { - lime_ui_Window.call(this,application,attributes); - this.stage = new openfl_display_Stage(this,Object.prototype.hasOwnProperty.call(attributes.context,"background") ? attributes.context.background : 16777215); - if(Object.prototype.hasOwnProperty.call(attributes,"parameters")) { - try { - this.stage.get_loaderInfo().parameters = attributes.parameters; - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - } - } - if(Object.prototype.hasOwnProperty.call(attributes,"resizable") && !attributes.resizable) { - this.stage.__setLogicalSize(attributes.width,attributes.height); - } - application.addModule(this.stage); -}; -$hxClasses["openfl.display.Window"] = openfl_display_Window; -openfl_display_Window.__name__ = "openfl.display.Window"; -openfl_display_Window.__super__ = lime_ui_Window; -openfl_display_Window.prototype = $extend(lime_ui_Window.prototype,{ - __class__: openfl_display_Window -}); -var openfl_display3D_Context3D = function(stage,contextState,stage3D) { - this.profile = 3; - this.driverInfo = "OpenGL (Direct blitting)"; - this.backBufferWidth = 0; - this.backBufferHeight = 0; - openfl_events_EventDispatcher.call(this); - this.__stage = stage; - this.__contextState = contextState; - this.__stage3D = stage3D; - this.__context = stage.window.context; - this.gl = this.__context.webgl; - if(this.__contextState == null) { - this.__contextState = new openfl__$internal_renderer_context3D_Context3DState(); - } - this.__state = new openfl__$internal_renderer_context3D_Context3DState(); - var array = null; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this1 = new Float32Array(512); - this.__vertexConstants = this1; - var array1 = null; - var vector1 = null; - var view1 = null; - var buffer1 = null; - var len1 = null; - var this2 = new Float32Array(512); - this.__fragmentConstants = this2; - var elements = null; - var array2 = [1.0,1.0,1.0,1.0]; - var vector2 = null; - var view2 = null; - var buffer2 = null; - var len2 = null; - var this3; - if(elements != null) { - this3 = new Float32Array(elements); - } else if(array2 != null) { - this3 = new Float32Array(array2); - } else if(vector2 != null) { - this3 = new Float32Array(vector2.__array); - } else if(view2 != null) { - this3 = new Float32Array(view2); - } else if(buffer2 != null) { - if(len2 == null) { - this3 = new Float32Array(buffer2,0); - } else { - this3 = new Float32Array(buffer2,0,len2); - } - } else { - this3 = null; - } - this.__positionScale = this3; - this.__programs = new haxe_ds_StringMap(); - if(openfl_display3D_Context3D.__glMaxViewportDims == -1) { - openfl_display3D_Context3D.__glMaxViewportDims = this.gl.getParameter(this.gl.MAX_VIEWPORT_DIMS); - } - this.maxBackBufferWidth = openfl_display3D_Context3D.__glMaxViewportDims; - this.maxBackBufferHeight = openfl_display3D_Context3D.__glMaxViewportDims; - if(openfl_display3D_Context3D.__glMaxTextureMaxAnisotropy == -1) { - var extension = this.gl.getExtension("EXT_texture_filter_anisotropic"); - if(extension == null || !Object.prototype.hasOwnProperty.call(extension,"MAX_TEXTURE_MAX_ANISOTROPY_EXT")) { - extension = this.gl.getExtension("MOZ_EXT_texture_filter_anisotropic"); - } - if(extension == null || !Object.prototype.hasOwnProperty.call(extension,"MAX_TEXTURE_MAX_ANISOTROPY_EXT")) { - extension = this.gl.getExtension("WEBKIT_EXT_texture_filter_anisotropic"); - } - if(extension != null) { - openfl_display3D_Context3D.__glTextureMaxAnisotropy = extension.TEXTURE_MAX_ANISOTROPY_EXT; - openfl_display3D_Context3D.__glMaxTextureMaxAnisotropy = this.gl.getParameter(extension.MAX_TEXTURE_MAX_ANISOTROPY_EXT); - } else { - openfl_display3D_Context3D.__glTextureMaxAnisotropy = 0; - openfl_display3D_Context3D.__glMaxTextureMaxAnisotropy = 0; - } - } - if(openfl_display3D_Context3D.__glDepthStencil == -1) { - openfl_display3D_Context3D.__glDepthStencil = this.gl.DEPTH_STENCIL; - } - if(openfl_display3D_Context3D.__glMemoryTotalAvailable == -1) { - var extension1 = this.gl.getExtension("NVX_gpu_memory_info"); - if(extension1 != null) { - openfl_display3D_Context3D.__glMemoryTotalAvailable = extension1.GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX; - openfl_display3D_Context3D.__glMemoryCurrentAvailable = extension1.GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX; - } - } - if(openfl_display3D_Context3D.__driverInfo == null) { - var vendor = this.gl.getParameter(this.gl.VENDOR); - var version = this.gl.getParameter(this.gl.VERSION); - var renderer = this.gl.getParameter(this.gl.RENDERER); - var glslVersion = this.gl.getParameter(this.gl.SHADING_LANGUAGE_VERSION); - openfl_display3D_Context3D.__driverInfo = "OpenGL Vendor=" + vendor + " Version=" + version + " Renderer=" + renderer + " GLSL=" + glslVersion; - } - this.driverInfo = openfl_display3D_Context3D.__driverInfo; - this.__quadIndexBufferElements = 16383; - this.__quadIndexBufferCount = this.__quadIndexBufferElements * 6; - var elements1 = this.__quadIndexBufferCount; - var array3 = null; - var vector3 = null; - var view3 = null; - var buffer3 = null; - var len3 = null; - var this4; - if(elements1 != null) { - this4 = new Uint16Array(elements1); - } else if(array3 != null) { - this4 = new Uint16Array(array3); - } else if(vector3 != null) { - this4 = new Uint16Array(vector3.__array); - } else if(view3 != null) { - this4 = new Uint16Array(view3); - } else if(buffer3 != null) { - if(len3 == null) { - this4 = new Uint16Array(buffer3,0); - } else { - this4 = new Uint16Array(buffer3,0,len3); - } - } else { - this4 = null; - } - var data = this4; - var index = 0; - var vertex = 0; - var _g = 0; - var _g1 = this.__quadIndexBufferElements; - while(_g < _g1) { - var i = _g++; - data[index] = vertex; - data[index + 1] = vertex + 1; - data[index + 2] = vertex + 2; - data[index + 3] = vertex + 2; - data[index + 4] = vertex + 1; - data[index + 5] = vertex + 3; - index = index + 6; - vertex = vertex + 4; - } - this.__quadIndexBuffer = this.createIndexBuffer(this.__quadIndexBufferCount); - this.__quadIndexBuffer.uploadFromTypedArray(data); -}; -$hxClasses["openfl.display3D.Context3D"] = openfl_display3D_Context3D; -openfl_display3D_Context3D.__name__ = "openfl.display3D.Context3D"; -openfl_display3D_Context3D.__driverInfo = null; -openfl_display3D_Context3D.__super__ = openfl_events_EventDispatcher; -openfl_display3D_Context3D.prototype = $extend(openfl_events_EventDispatcher.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(red,green,blue,alpha,depth,stencil,mask) { - if(mask == null) { - mask = 7; - } - if(stencil == null) { - stencil = 0; - } - if(depth == null) { - depth = 1; - } - if(alpha == null) { - alpha = 1; - } - if(blue == null) { - blue = 0; - } - if(green == null) { - green = 0; - } - if(red == null) { - red = 0; - } - this.__flushGLFramebuffer(); - this.__flushGLViewport(); - var clearMask = 0; - if((mask & 1) != 0) { - if(this.__state.renderToTexture == null) { - if(this.__stage.context3D == this && !this.__stage.__renderer.__cleared) { - this.__stage.__renderer.__cleared = true; - } - this.__cleared = true; - } - clearMask |= this.gl.COLOR_BUFFER_BIT; - if(this.__contextState.colorMaskRed != true || this.__contextState.colorMaskGreen != true || this.__contextState.colorMaskBlue != true || this.__contextState.colorMaskAlpha != true) { - this.gl.colorMask(true,true,true,true); - this.__contextState.colorMaskRed = true; - this.__contextState.colorMaskGreen = true; - this.__contextState.colorMaskBlue = true; - this.__contextState.colorMaskAlpha = true; - } - this.gl.clearColor(red,green,blue,alpha); - } - if((mask & 2) != 0) { - clearMask |= this.gl.DEPTH_BUFFER_BIT; - if(this.__contextState.depthMask != true) { - this.gl.depthMask(true); - this.__contextState.depthMask = true; - } - this.gl.clearDepth(depth); - } - if((mask & 4) != 0) { - clearMask |= this.gl.STENCIL_BUFFER_BIT; - if(this.__contextState.stencilWriteMask != 255) { - this.gl.stencilMask(255); - this.__contextState.stencilWriteMask = 255; - } - this.gl.clearStencil(stencil); - this.__contextState.stencilWriteMask = 255; - } - if(clearMask == 0) { - return; - } - this.__setGLScissorTest(false); - this.gl.clear(clearMask); - } - ,configureBackBuffer: function(width,height,antiAlias,enableDepthAndStencil,wantsBestResolution,wantsBestResolutionOnBrowserZoom) { - if(wantsBestResolutionOnBrowserZoom == null) { - wantsBestResolutionOnBrowserZoom = false; - } - if(wantsBestResolution == null) { - wantsBestResolution = false; - } - if(enableDepthAndStencil == null) { - enableDepthAndStencil = true; - } - if(this.__stage3D == null) { - this.backBufferWidth = width; - this.backBufferHeight = height; - this.__backBufferAntiAlias = antiAlias; - this.__state.backBufferEnableDepthAndStencil = enableDepthAndStencil; - this.__backBufferWantsBestResolution = wantsBestResolution; - this.__backBufferWantsBestResolutionOnBrowserZoom = wantsBestResolutionOnBrowserZoom; - } else { - if(this.__backBufferTexture == null || this.backBufferWidth != width || this.backBufferHeight != height) { - if(this.__backBufferTexture != null) { - this.__backBufferTexture.dispose(); - } - if(this.__frontBufferTexture != null) { - this.__frontBufferTexture.dispose(); - } - this.__backBufferTexture = this.createRectangleTexture(width,height,1,true); - this.__frontBufferTexture = this.createRectangleTexture(width,height,1,true); - if(this.__stage3D.__vertexBuffer == null) { - this.__stage3D.__vertexBuffer = this.createVertexBuffer(4,5); - } - var vertexData = openfl__$Vector_Vector_$Impl_$.toFloatVector(null,null,null,[width,height,0,1,1,0,height,0,0,1,width,0,0,1,0,0,0,0,0,0.0]); - this.__stage3D.__vertexBuffer.uploadFromVector(vertexData,0,20); - if(this.__stage3D.__indexBuffer == null) { - this.__stage3D.__indexBuffer = this.createIndexBuffer(6); - var indexData = openfl__$Vector_Vector_$Impl_$.toIntVector(null,null,null,[0,1,2,2,1,3]); - this.__stage3D.__indexBuffer.uploadFromVector(indexData,0,6); - } - } - this.backBufferWidth = width; - this.backBufferHeight = height; - this.__backBufferAntiAlias = antiAlias; - this.__state.backBufferEnableDepthAndStencil = enableDepthAndStencil; - this.__backBufferWantsBestResolution = wantsBestResolution; - this.__backBufferWantsBestResolutionOnBrowserZoom = wantsBestResolutionOnBrowserZoom; - this.__state.__primaryGLFramebuffer = this.__backBufferTexture.__getGLFramebuffer(enableDepthAndStencil,antiAlias,0); - this.__frontBufferTexture.__getGLFramebuffer(enableDepthAndStencil,antiAlias,0); - } - } - ,createCubeTexture: function(size,format,optimizeForRenderToTexture,streamingLevels) { - if(streamingLevels == null) { - streamingLevels = 0; - } - return new openfl_display3D_textures_CubeTexture(this,size,format,optimizeForRenderToTexture,streamingLevels); - } - ,createIndexBuffer: function(numIndices,bufferUsage) { - if(bufferUsage == null) { - bufferUsage = 1; - } - return new openfl_display3D_IndexBuffer3D(this,numIndices,bufferUsage); - } - ,createProgram: function(format) { - if(format == null) { - format = 0; - } - return new openfl_display3D_Program3D(this,format); - } - ,createRectangleTexture: function(width,height,format,optimizeForRenderToTexture) { - return new openfl_display3D_textures_RectangleTexture(this,width,height,openfl_display3D__$Context3DTextureFormat_Context3DTextureFormat_$Impl_$.toString(format),optimizeForRenderToTexture); - } - ,createTexture: function(width,height,format,optimizeForRenderToTexture,streamingLevels) { - if(streamingLevels == null) { - streamingLevels = 0; - } - return new openfl_display3D_textures_Texture(this,width,height,format,optimizeForRenderToTexture,streamingLevels); - } - ,createVertexBuffer: function(numVertices,data32PerVertex,bufferUsage) { - if(bufferUsage == null) { - bufferUsage = 1; - } - return new openfl_display3D_VertexBuffer3D(this,numVertices,data32PerVertex,openfl_display3D__$Context3DBufferUsage_Context3DBufferUsage_$Impl_$.toString(bufferUsage)); - } - ,createVideoTexture: function() { - return new openfl_display3D_textures_VideoTexture(this); - } - ,dispose: function(recreate) { - if(recreate == null) { - recreate = true; - } - this.gl = null; - this.__dispose(); - } - ,drawToBitmapData: function(destination,srcRect,destPoint) { - if(destination == null) { - return; - } - var sourceRect = srcRect != null ? srcRect.__toLimeRectangle() : new lime_math_Rectangle(0,0,this.backBufferWidth,this.backBufferHeight); - var destVector = destPoint != null ? destPoint.__toLimeVector2() : new lime_math_Vector2(); - if(this.__stage.context3D == this) { - if(this.__stage.window != null) { - if(this.__stage3D != null) { - var xa = -this.__stage3D.get_x() | 0; - var ya = -this.__stage3D.get_y() | 0; - destVector.x = xa; - destVector.y = ya; - } - var image = this.__stage.window.readPixels(); - destination.image.copyPixels(image,sourceRect,destVector); - } - } else if(this.__backBufferTexture != null) { - var cacheRenderToTexture = this.__state.renderToTexture; - this.setRenderToBackBuffer(); - this.__flushGLFramebuffer(); - this.__flushGLViewport(); - var elements = this.backBufferWidth * this.backBufferHeight * 4; - var array = null; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this1; - if(elements != null) { - this1 = new Uint8Array(elements); - } else if(array != null) { - this1 = new Uint8Array(array); - } else if(vector != null) { - this1 = new Uint8Array(vector.__array); - } else if(view != null) { - this1 = new Uint8Array(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Uint8Array(buffer,0); - } else { - this1 = new Uint8Array(buffer,0,len); - } - } else { - this1 = null; - } - var data = this1; - var this2 = this.gl; - var width = this.backBufferWidth; - var height = this.backBufferHeight; - var format = this.__backBufferTexture.__format; - var type = this.gl.UNSIGNED_BYTE; - var pixels = data; - var dstOffset = null; - if(dstOffset != null) { - this2.readPixels(0,0,width,height,format,type,pixels,dstOffset); - } else { - this2.readPixels(0,0,width,height,format,type,pixels); - } - var image1 = new lime_graphics_Image(new lime_graphics_ImageBuffer(data,this.backBufferWidth,this.backBufferHeight,32,2)); - destination.image.copyPixels(image1,sourceRect,destVector); - if(cacheRenderToTexture != null) { - this.setRenderToTexture(cacheRenderToTexture,this.__state.renderToTextureDepthStencil,this.__state.renderToTextureAntiAlias,this.__state.renderToTextureSurfaceSelector); - } - } - } - ,drawTriangles: function(indexBuffer,firstIndex,numTriangles) { - if(numTriangles == null) { - numTriangles = -1; - } - if(firstIndex == null) { - firstIndex = 0; - } - if(this.__state.renderToTexture == null) { - if(this.__stage.context3D == this && !this.__stage.__renderer.__cleared) { - this.__stage.__renderer.__clear(); - } else if(!this.__cleared) { - this.clear(0,0,0,0,1,0,1); - } - } - this.__flushGL(); - if(this.__state.program != null) { - this.__state.program.__flush(); - } - var count = numTriangles == -1 ? indexBuffer.__numIndices : numTriangles * 3; - this.__bindGLElementArrayBuffer(indexBuffer.__id); - this.gl.drawElements(this.gl.TRIANGLES,count,this.gl.UNSIGNED_SHORT,firstIndex * 2); - } - ,present: function() { - this.setRenderToBackBuffer(); - if(this.__stage3D != null && this.__backBufferTexture != null) { - if(!this.__cleared) { - this.clear(0,0,0,0,1,0,1); - } - var cacheBuffer = this.__backBufferTexture; - this.__backBufferTexture = this.__frontBufferTexture; - this.__frontBufferTexture = cacheBuffer; - this.__state.__primaryGLFramebuffer = this.__backBufferTexture.__getGLFramebuffer(this.__state.backBufferEnableDepthAndStencil,this.__backBufferAntiAlias,0); - this.__cleared = false; - } - this.__present = true; - } - ,setBlendFactors: function(sourceFactor,destinationFactor) { - this.setBlendFactorsSeparate(sourceFactor,destinationFactor,sourceFactor,destinationFactor); - } - ,setBlendFactorsSeparate: function(sourceRGBFactor,destinationRGBFactor,sourceAlphaFactor,destinationAlphaFactor) { - this.__state.blendSourceRGBFactor = sourceRGBFactor; - this.__state.blendDestinationRGBFactor = destinationRGBFactor; - this.__state.blendSourceAlphaFactor = sourceAlphaFactor; - this.__state.blendDestinationAlphaFactor = destinationAlphaFactor; - this.__setGLBlendEquation(this.gl.FUNC_ADD); - } - ,setColorMask: function(red,green,blue,alpha) { - this.__state.colorMaskRed = red; - this.__state.colorMaskGreen = green; - this.__state.colorMaskBlue = blue; - this.__state.colorMaskAlpha = alpha; - } - ,setCulling: function(triangleFaceToCull) { - this.__state.culling = triangleFaceToCull; - } - ,setDepthTest: function(depthMask,passCompareMode) { - this.__state.depthMask = depthMask; - this.__state.depthCompareMode = passCompareMode; - } - ,setProgram: function(program) { - this.__state.program = program; - this.__state.shader = null; - if(program != null) { - var _g = 0; - var _g1 = program.__samplerStates.length; - while(_g < _g1) { - var i = _g++; - if(this.__state.samplerStates[i] == null) { - this.__state.samplerStates[i] = program.__samplerStates[i].clone(); - } else { - this.__state.samplerStates[i].copyFrom(program.__samplerStates[i]); - } - } - } - } - ,setProgramConstantsFromByteArray: function(programType,firstRegister,numRegisters,data,byteArrayOffset) { - if(numRegisters == 0 || this.__state.program == null) { - return; - } - if(!(this.__state.program != null && this.__state.program.__format == 1)) { - if(numRegisters == -1) { - numRegisters = (openfl_utils__$ByteArray_ByteArray_$Impl_$.get_length(data) >>> 2) - byteArrayOffset; - } - var isVertex = programType == 1; - var dest = isVertex ? this.__vertexConstants : this.__fragmentConstants; - var bytes = openfl_utils__$ByteArray_ByteArray_$Impl_$.toBytes(data); - var byteOffset = 0; - var len = openfl_utils__$ByteArray_ByteArray_$Impl_$.get_length(data); - if(byteOffset == null) { - byteOffset = 0; - } - var floatData = byteOffset == null ? new Float32Array(bytes.b.bufferValue) : len == null ? new Float32Array(bytes.b.bufferValue,byteOffset) : new Float32Array(bytes.b.bufferValue,byteOffset,len); - var outOffset = firstRegister * 4; - var inOffset = _$UInt_UInt_$Impl_$.toFloat(byteArrayOffset) / _$UInt_UInt_$Impl_$.toFloat(4) | 0; - var _g = 0; - var _g1 = numRegisters * 4; - while(_g < _g1) { - var i = _g++; - dest[outOffset + i] = floatData[inOffset + i]; - } - if(this.__state.program != null) { - this.__state.program.__markDirty(isVertex,firstRegister,numRegisters); - } - } - } - ,setProgramConstantsFromMatrix: function(programType,firstRegister,matrix,transposedMatrix) { - if(transposedMatrix == null) { - transposedMatrix = false; - } - if(this.__state.program != null && this.__state.program.__format == 1) { - this.__flushGLProgram(); - var array = null; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this1 = new Float32Array(16); - var data = this1; - data[0] = matrix.rawData.get(0); - data[1] = matrix.rawData.get(1); - data[2] = matrix.rawData.get(2); - data[3] = matrix.rawData.get(3); - data[4] = matrix.rawData.get(4); - data[5] = matrix.rawData.get(5); - data[6] = matrix.rawData.get(6); - data[7] = matrix.rawData.get(7); - data[8] = matrix.rawData.get(8); - data[9] = matrix.rawData.get(9); - data[10] = matrix.rawData.get(10); - data[11] = matrix.rawData.get(11); - data[12] = matrix.rawData.get(12); - data[13] = matrix.rawData.get(13); - data[14] = matrix.rawData.get(14); - data[15] = matrix.rawData.get(15); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.uniformMatrix4fv(this.gl,firstRegister,transposedMatrix,data); - } else { - var isVertex = programType == 1; - var dest = isVertex ? this.__vertexConstants : this.__fragmentConstants; - var source = matrix.rawData; - var i = firstRegister * 4; - if(transposedMatrix) { - dest[i++] = source.get(0); - dest[i++] = source.get(4); - dest[i++] = source.get(8); - dest[i++] = source.get(12); - dest[i++] = source.get(1); - dest[i++] = source.get(5); - dest[i++] = source.get(9); - dest[i++] = source.get(13); - dest[i++] = source.get(2); - dest[i++] = source.get(6); - dest[i++] = source.get(10); - dest[i++] = source.get(14); - dest[i++] = source.get(3); - dest[i++] = source.get(7); - dest[i++] = source.get(11); - dest[i++] = source.get(15); - } else { - dest[i++] = source.get(0); - dest[i++] = source.get(1); - dest[i++] = source.get(2); - dest[i++] = source.get(3); - dest[i++] = source.get(4); - dest[i++] = source.get(5); - dest[i++] = source.get(6); - dest[i++] = source.get(7); - dest[i++] = source.get(8); - dest[i++] = source.get(9); - dest[i++] = source.get(10); - dest[i++] = source.get(11); - dest[i++] = source.get(12); - dest[i++] = source.get(13); - dest[i++] = source.get(14); - dest[i++] = source.get(15); - } - if(this.__state.program != null) { - this.__state.program.__markDirty(isVertex,firstRegister,4); - } - } - } - ,setProgramConstantsFromVector: function(programType,firstRegister,data,numRegisters) { - if(numRegisters == null) { - numRegisters = -1; - } - if(numRegisters == 0) { - return; - } - if(!(this.__state.program != null && this.__state.program.__format == 1)) { - if(numRegisters == -1) { - numRegisters = data.get_length() >> 2; - } - var isVertex = programType == 1; - var dest = isVertex ? this.__vertexConstants : this.__fragmentConstants; - var source = data; - var sourceIndex = 0; - var destIndex = firstRegister * 4; - var _g = 0; - var _g1 = numRegisters; - while(_g < _g1) { - var i = _g++; - dest[destIndex++] = source.get(sourceIndex++); - dest[destIndex++] = source.get(sourceIndex++); - dest[destIndex++] = source.get(sourceIndex++); - dest[destIndex++] = source.get(sourceIndex++); - } - if(this.__state.program != null) { - this.__state.program.__markDirty(isVertex,firstRegister,numRegisters); - } - } - } - ,setRenderToBackBuffer: function() { - this.__state.renderToTexture = null; - } - ,setRenderToTexture: function(texture,enableDepthAndStencil,antiAlias,surfaceSelector) { - if(surfaceSelector == null) { - surfaceSelector = 0; - } - if(antiAlias == null) { - antiAlias = 0; - } - if(enableDepthAndStencil == null) { - enableDepthAndStencil = false; - } - this.__state.renderToTexture = texture; - this.__state.renderToTextureDepthStencil = enableDepthAndStencil; - this.__state.renderToTextureAntiAlias = antiAlias; - this.__state.renderToTextureSurfaceSelector = surfaceSelector; - } - ,setSamplerStateAt: function(sampler,wrap,filter,mipfilter) { - if(this.__state.samplerStates[sampler] == null) { - this.__state.samplerStates[sampler] = new openfl__$internal_renderer_SamplerState(); - } - var state = this.__state.samplerStates[sampler]; - state.wrap = wrap; - state.filter = filter; - state.mipfilter = mipfilter; - } - ,setScissorRectangle: function(rectangle) { - if(rectangle != null) { - this.__state.scissorEnabled = true; - this.__state.scissorRectangle.copyFrom(rectangle); - } else { - this.__state.scissorEnabled = false; - } - } - ,setStencilActions: function(triangleFace,compareMode,actionOnBothPass,actionOnDepthFail,actionOnDepthPassStencilFail) { - if(actionOnDepthPassStencilFail == null) { - actionOnDepthPassStencilFail = 5; - } - if(actionOnDepthFail == null) { - actionOnDepthFail = 5; - } - if(actionOnBothPass == null) { - actionOnBothPass = 5; - } - if(compareMode == null) { - compareMode = 0; - } - if(triangleFace == null) { - triangleFace = 2; - } - this.__state.stencilTriangleFace = triangleFace; - this.__state.stencilCompareMode = compareMode; - this.__state.stencilPass = actionOnBothPass; - this.__state.stencilDepthFail = actionOnDepthFail; - this.__state.stencilFail = actionOnDepthPassStencilFail; - } - ,setStencilReferenceValue: function(referenceValue,readMask,writeMask) { - if(writeMask == null) { - writeMask = 255; - } - if(readMask == null) { - readMask = 255; - } - this.__state.stencilReferenceValue = referenceValue; - this.__state.stencilReadMask = readMask; - this.__state.stencilWriteMask = writeMask; - } - ,setTextureAt: function(sampler,texture) { - this.__state.textures[sampler] = texture; - } - ,setVertexBufferAt: function(index,buffer,bufferOffset,format) { - if(format == null) { - format = 4; - } - if(bufferOffset == null) { - bufferOffset = 0; - } - if(buffer == null) { - this.gl.disableVertexAttribArray(index); - this.__bindGLArrayBuffer(null); - return; - } - this.__bindGLArrayBuffer(buffer.__id); - this.gl.enableVertexAttribArray(index); - var byteOffset = bufferOffset * 4; - switch(format) { - case 0: - this.gl.vertexAttribPointer(index,4,this.gl.UNSIGNED_BYTE,true,buffer.__stride,byteOffset); - break; - case 1: - this.gl.vertexAttribPointer(index,1,this.gl.FLOAT,false,buffer.__stride,byteOffset); - break; - case 2: - this.gl.vertexAttribPointer(index,2,this.gl.FLOAT,false,buffer.__stride,byteOffset); - break; - case 3: - this.gl.vertexAttribPointer(index,3,this.gl.FLOAT,false,buffer.__stride,byteOffset); - break; - case 4: - this.gl.vertexAttribPointer(index,4,this.gl.FLOAT,false,buffer.__stride,byteOffset); - break; - default: - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError()); - } - } - ,__bindGLArrayBuffer: function(buffer) { - if(this.__contextState.__currentGLArrayBuffer != buffer) { - this.gl.bindBuffer(this.gl.ARRAY_BUFFER,buffer); - this.__contextState.__currentGLArrayBuffer = buffer; - } - } - ,__bindGLElementArrayBuffer: function(buffer) { - if(this.__contextState.__currentGLElementArrayBuffer != buffer) { - this.gl.bindBuffer(this.gl.ELEMENT_ARRAY_BUFFER,buffer); - this.__contextState.__currentGLElementArrayBuffer = buffer; - } - } - ,__bindGLFramebuffer: function(framebuffer) { - if(this.__contextState.__currentGLFramebuffer != framebuffer) { - this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,framebuffer); - this.__contextState.__currentGLFramebuffer = framebuffer; - } - } - ,__bindGLTexture2D: function(texture) { - this.gl.bindTexture(this.gl.TEXTURE_2D,texture); - this.__contextState.__currentGLTexture2D = texture; - } - ,__bindGLTextureCubeMap: function(texture) { - this.gl.bindTexture(this.gl.TEXTURE_CUBE_MAP,texture); - this.__contextState.__currentGLTextureCubeMap = texture; - } - ,__dispose: function() { - this.driverInfo += " (Disposed)"; - if(this.__stage3D != null) { - this.__stage3D.__indexBuffer = null; - this.__stage3D.__vertexBuffer = null; - this.__stage3D.context3D = null; - this.__stage3D = null; - } - this.__backBufferTexture = null; - this.__context = null; - this.__renderStage3DProgram = null; - this.__fragmentConstants = null; - this.__frontBufferTexture = null; - this.__positionScale = null; - this.__present = false; - this.__quadIndexBuffer = null; - this.__stage = null; - this.__vertexConstants = null; - } - ,__drawTriangles: function(firstIndex,count) { - if(firstIndex == null) { - firstIndex = 0; - } - if(this.__state.renderToTexture == null) { - if(this.__stage.context3D == this && !this.__stage.__renderer.__cleared) { - this.__stage.__renderer.__clear(); - } else if(!this.__cleared) { - this.clear(0,0,0,0,1,0,1); - } - } - this.__flushGL(); - if(this.__state.program != null) { - this.__state.program.__flush(); - } - this.gl.drawArrays(this.gl.TRIANGLES,firstIndex,count); - } - ,__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(true); - if(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)); - } else { - 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(this.__state.culling == 3) { - this.__setGLCullFace(false); - } else { - this.__setGLCullFace(true); - switch(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 new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError()); - } - } - this.__contextState.culling = this.__state.culling; - } - } - ,__flushGLDepth: function() { - var depthMask = this.__state.depthMask && (this.__state.renderToTexture != null ? this.__state.renderToTextureDepthStencil : this.__state.backBufferEnableDepthAndStencil); - if(this.__contextState.depthMask != depthMask) { - this.gl.depthMask(depthMask); - this.__contextState.depthMask = depthMask; - } - 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 new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError()); - } - this.__contextState.depthCompareMode = this.__state.depthCompareMode; - } - } - ,__flushGLFramebuffer: function() { - if(this.__state.renderToTexture != null) { - if(this.__contextState.renderToTexture != this.__state.renderToTexture || this.__contextState.renderToTextureSurfaceSelector != this.__state.renderToTextureSurfaceSelector) { - var framebuffer = this.__state.renderToTexture.__getGLFramebuffer(this.__state.renderToTextureDepthStencil,this.__state.renderToTextureAntiAlias,this.__state.renderToTextureSurfaceSelector); - this.__bindGLFramebuffer(framebuffer); - 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(true); - } else { - if(this.__stage == null && this.backBufferWidth == 0 && this.backBufferHeight == 0) { - throw new js__$Boot_HaxeError(new openfl_errors_Error("Context3D backbuffer has not been configured")); - } - if(this.__contextState.renderToTexture != null || 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 shader = this.__state.shader; - var program = this.__state.program; - if(this.__contextState.shader != shader) { - if(this.__contextState.shader != null) { - this.__contextState.shader.__disable(); - } - if(shader != null) { - shader.__enable(); - } - this.__contextState.shader = shader; - } - if(this.__contextState.program != program) { - if(this.__contextState.program != null) { - this.__contextState.program.__disable(); - } - if(program != null) { - program.__enable(); - } - this.__contextState.program = program; - } - if(program != null && program.__format == 0) { - this.__positionScale[1] = this.__stage.context3D == this && this.__state.renderToTexture == null ? 1.0 : -1.0; - program.__setPositionScale(this.__positionScale); - } - } - ,__flushGLScissor: function() { - if(!this.__state.scissorEnabled) { - if(this.__contextState.scissorEnabled != this.__state.scissorEnabled) { - this.__setGLScissorTest(false); - this.__contextState.scissorEnabled = false; - } - } else { - this.__setGLScissorTest(true); - this.__contextState.scissorEnabled = true; - var scissorX = this.__state.scissorRectangle.x | 0; - var scissorY = this.__state.scissorRectangle.y | 0; - var scissorWidth = this.__state.scissorRectangle.width | 0; - var scissorHeight = this.__state.scissorRectangle.height | 0; - if(this.__state.renderToTexture == null && this.__stage3D == null) { - var contextHeight = this.__stage.window.__height * this.__stage.window.__scale | 0; - scissorY = contextHeight - (this.__state.scissorRectangle.height | 0) - scissorY; - } - if(this.__contextState.scissorRectangle.x != scissorX || this.__contextState.scissorRectangle.y != scissorY || this.__contextState.scissorRectangle.width != scissorWidth || this.__contextState.scissorRectangle.height != scissorHeight) { - this.gl.scissor(scissorX,scissorY,scissorWidth,scissorHeight); - this.__contextState.scissorRectangle.setTo(scissorX,scissorY,scissorWidth,scissorHeight); - } - } - } - ,__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; - } - if(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() { - var sampler = 0; - var texture; - var samplerState; - var _g = 0; - var _g1 = this.__state.textures.length; - while(_g < _g1) { - var i = _g++; - texture = this.__state.textures[i]; - samplerState = this.__state.samplerStates[i]; - if(samplerState == null) { - this.__state.samplerStates[i] = new openfl__$internal_renderer_SamplerState(); - samplerState = this.__state.samplerStates[i]; - } - this.gl.activeTexture(this.gl.TEXTURE0 + sampler); - if(texture != null) { - if(texture.__textureTarget == this.gl.TEXTURE_2D) { - this.__bindGLTexture2D(texture.__getTexture()); - } else { - this.__bindGLTextureCubeMap(texture.__getTexture()); - } - this.__contextState.textures[i] = texture; - texture.__setSamplerState(samplerState); - } else { - this.__bindGLTexture2D(null); - } - if(this.__state.program != null && this.__state.program.__format == 0 && samplerState.textureAlpha) { - this.gl.activeTexture(this.gl.TEXTURE0 + sampler + 4); - if(texture != null && texture.__alphaTexture != null) { - if(texture.__alphaTexture.__textureTarget == this.gl.TEXTURE_2D) { - this.__bindGLTexture2D(texture.__alphaTexture.__getTexture()); - } else { - this.__bindGLTextureCubeMap(texture.__alphaTexture.__getTexture()); - } - texture.__alphaTexture.__setSamplerState(samplerState); - this.gl.uniform1i(this.__state.program.__agalAlphaSamplerEnabled[sampler].location,1); - } else { - this.__bindGLTexture2D(null); - if(this.__state.program.__agalAlphaSamplerEnabled[sampler] != null) { - this.gl.uniform1i(this.__state.program.__agalAlphaSamplerEnabled[sampler].location,0); - } - } - } - ++sampler; - } - } - ,__flushGLViewport: function() { - if(this.__state.renderToTexture == null) { - if(this.__stage.context3D == this) { - var x = this.__stage3D == null ? 0 : this.__stage3D.get_x() | 0; - var y = this.__stage.window.__height * this.__stage.window.__scale - this.backBufferHeight - (this.__stage3D == null ? 0 : this.__stage3D.get_y()) | 0; - this.gl.viewport(x,y,this.backBufferWidth,this.backBufferHeight); - } else { - this.gl.viewport(0,0,this.backBufferWidth,this.backBufferHeight); - } - } else { - var width = 0; - var height = 0; - if(((this.__state.renderToTexture) instanceof openfl_display3D_textures_Texture)) { - var texture2D = this.__state.renderToTexture; - width = texture2D.__width; - height = texture2D.__height; - } else if(((this.__state.renderToTexture) instanceof openfl_display3D_textures_RectangleTexture)) { - var rectTexture = this.__state.renderToTexture; - width = rectTexture.__width; - height = rectTexture.__height; - } else if(((this.__state.renderToTexture) instanceof openfl_display3D_textures_CubeTexture)) { - var cubeTexture = this.__state.renderToTexture; - width = cubeTexture.__size; - height = cubeTexture.__size; - } - this.gl.viewport(0,0,width,height); - } - } - ,__getGLBlend: function(blendFactor) { - switch(blendFactor) { - 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 new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError()); - } - } - ,__getGLCompareMode: function(mode) { - switch(mode) { - 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(action) { - switch(action) { - 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(face) { - switch(face) { - 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(stage3D) { - var context = stage3D.context3D; - if(context != null && context != this && context.__frontBufferTexture != null && stage3D.visible && this.backBufferHeight > 0 && this.backBufferWidth > 0) { - if(this.__renderStage3DProgram == null) { - var vertexAssembler = new openfl_utils_AGALMiniAssembler(); - vertexAssembler.assemble(openfl_display3D__$Context3DProgramType_Context3DProgramType_$Impl_$.toString(1),"m44 op, va0, vc0\n" + "mov v0, va1"); - var fragmentAssembler = new openfl_utils_AGALMiniAssembler(); - fragmentAssembler.assemble(openfl_display3D__$Context3DProgramType_Context3DProgramType_$Impl_$.toString(0),"tex ft1, v0, fs0 <2d,nearest,nomip>\n" + "mov oc, ft1"); - this.__renderStage3DProgram = this.createProgram(); - this.__renderStage3DProgram.upload(vertexAssembler.agalcode,fragmentAssembler.agalcode); - } - this.setProgram(this.__renderStage3DProgram); - this.setBlendFactors(2,9); - this.setColorMask(true,true,true,true); - this.setCulling(3); - this.setDepthTest(false,0); - this.setStencilActions(); - this.setStencilReferenceValue(0,0,0); - this.setScissorRectangle(null); - this.setTextureAt(0,context.__frontBufferTexture); - this.setVertexBufferAt(0,stage3D.__vertexBuffer,0,3); - this.setVertexBufferAt(1,stage3D.__vertexBuffer,3,2); - this.setProgramConstantsFromMatrix(1,0,stage3D.__renderTransform,true); - this.drawTriangles(stage3D.__indexBuffer); - this.__present = true; - } - } - ,__setGLBlend: function(enable) { - if(this.__contextState.__enableGLBlend != enable) { - if(enable) { - this.gl.enable(this.gl.BLEND); - } else { - this.gl.disable(this.gl.BLEND); - } - this.__contextState.__enableGLBlend = enable; - } - } - ,__setGLBlendEquation: function(value) { - if(this.__contextState.__glBlendEquation != value) { - this.gl.blendEquation(value); - this.__contextState.__glBlendEquation = value; - } - } - ,__setGLCullFace: function(enable) { - if(this.__contextState.__enableGLCullFace != enable) { - if(enable) { - this.gl.enable(this.gl.CULL_FACE); - } else { - this.gl.disable(this.gl.CULL_FACE); - } - this.__contextState.__enableGLCullFace = enable; - } - } - ,__setGLDepthTest: function(enable) { - if(this.__contextState.__enableGLDepthTest != enable) { - if(enable) { - this.gl.enable(this.gl.DEPTH_TEST); - } else { - this.gl.disable(this.gl.DEPTH_TEST); - } - this.__contextState.__enableGLDepthTest = enable; - } - } - ,__setGLFrontFace: function(counterClockWise) { - if(this.__contextState.__frontFaceGLCCW != counterClockWise) { - this.gl.frontFace(counterClockWise ? this.gl.CCW : this.gl.CW); - this.__contextState.__frontFaceGLCCW = counterClockWise; - } - } - ,__setGLScissorTest: function(enable) { - if(this.__contextState.__enableGLScissorTest != enable) { - if(enable) { - this.gl.enable(this.gl.SCISSOR_TEST); - } else { - this.gl.disable(this.gl.SCISSOR_TEST); - } - this.__contextState.__enableGLScissorTest = enable; - } - } - ,__setGLStencilTest: function(enable) { - if(this.__contextState.__enableGLStencilTest != enable) { - if(enable) { - this.gl.enable(this.gl.STENCIL_TEST); - } else { - this.gl.disable(this.gl.STENCIL_TEST); - } - this.__contextState.__enableGLStencilTest = enable; - } - } - ,get_enableErrorChecking: function() { - return this.__enableErrorChecking; - } - ,set_enableErrorChecking: function(value) { - return this.__enableErrorChecking = value; - } - ,get_totalGPUMemory: function() { - if(openfl_display3D_Context3D.__glMemoryCurrentAvailable != -1) { - var current = this.gl.getParameter(openfl_display3D_Context3D.__glMemoryCurrentAvailable); - var total = this.gl.getParameter(openfl_display3D_Context3D.__glMemoryTotalAvailable); - if(total > 0) { - return (total - current) * 1024; - } - } - return 0; - } - ,__class__: openfl_display3D_Context3D - ,__properties__: {get_totalGPUMemory:"get_totalGPUMemory",set_enableErrorChecking:"set_enableErrorChecking",get_enableErrorChecking:"get_enableErrorChecking"} -}); -var openfl_display3D__$Context3DBlendFactor_Context3DBlendFactor_$Impl_$ = {}; -$hxClasses["openfl.display3D._Context3DBlendFactor.Context3DBlendFactor_Impl_"] = openfl_display3D__$Context3DBlendFactor_Context3DBlendFactor_$Impl_$; -openfl_display3D__$Context3DBlendFactor_Context3DBlendFactor_$Impl_$.__name__ = "openfl.display3D._Context3DBlendFactor.Context3DBlendFactor_Impl_"; -openfl_display3D__$Context3DBlendFactor_Context3DBlendFactor_$Impl_$.fromString = function(value) { - switch(value) { - case "destinationAlpha": - return 0; - case "destinationColor": - return 1; - case "one": - return 2; - case "oneMinusDestinationAlpha": - return 3; - case "oneMinusDestinationColor": - return 4; - case "oneMinusSourceAlpha": - return 5; - case "oneMinusSourceColor": - return 6; - case "sourceAlpha": - return 7; - case "sourceColor": - return 8; - case "zero": - return 9; - default: - return null; - } -}; -openfl_display3D__$Context3DBlendFactor_Context3DBlendFactor_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "destinationAlpha"; - case 1: - return "destinationColor"; - case 2: - return "one"; - case 3: - return "oneMinusDestinationAlpha"; - case 4: - return "oneMinusDestinationColor"; - case 5: - return "oneMinusSourceAlpha"; - case 6: - return "oneMinusSourceColor"; - case 7: - return "sourceAlpha"; - case 8: - return "sourceColor"; - case 9: - return "zero"; - default: - return null; - } -}; -var openfl_display3D__$Context3DBufferUsage_Context3DBufferUsage_$Impl_$ = {}; -$hxClasses["openfl.display3D._Context3DBufferUsage.Context3DBufferUsage_Impl_"] = openfl_display3D__$Context3DBufferUsage_Context3DBufferUsage_$Impl_$; -openfl_display3D__$Context3DBufferUsage_Context3DBufferUsage_$Impl_$.__name__ = "openfl.display3D._Context3DBufferUsage.Context3DBufferUsage_Impl_"; -openfl_display3D__$Context3DBufferUsage_Context3DBufferUsage_$Impl_$.fromString = function(value) { - switch(value) { - case "dynamicDraw": - return 0; - case "staticDraw": - return 1; - default: - return null; - } -}; -openfl_display3D__$Context3DBufferUsage_Context3DBufferUsage_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "dynamicDraw"; - case 1: - return "staticDraw"; - default: - return null; - } -}; -var openfl_display3D__$Context3DCompareMode_Context3DCompareMode_$Impl_$ = {}; -$hxClasses["openfl.display3D._Context3DCompareMode.Context3DCompareMode_Impl_"] = openfl_display3D__$Context3DCompareMode_Context3DCompareMode_$Impl_$; -openfl_display3D__$Context3DCompareMode_Context3DCompareMode_$Impl_$.__name__ = "openfl.display3D._Context3DCompareMode.Context3DCompareMode_Impl_"; -openfl_display3D__$Context3DCompareMode_Context3DCompareMode_$Impl_$.fromString = function(value) { - switch(value) { - case "always": - return 0; - case "equal": - return 1; - case "greater": - return 2; - case "greaterEqual": - return 3; - case "less": - return 4; - case "lessEqual": - return 5; - case "never": - return 6; - case "notEqual": - return 7; - default: - return null; - } -}; -openfl_display3D__$Context3DCompareMode_Context3DCompareMode_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "always"; - case 1: - return "equal"; - case 2: - return "greater"; - case 3: - return "greaterEqual"; - case 4: - return "less"; - case 5: - return "lessEqual"; - case 6: - return "never"; - case 7: - return "notEqual"; - default: - return null; - } -}; -var openfl_display3D__$Context3DMipFilter_Context3DMipFilter_$Impl_$ = {}; -$hxClasses["openfl.display3D._Context3DMipFilter.Context3DMipFilter_Impl_"] = openfl_display3D__$Context3DMipFilter_Context3DMipFilter_$Impl_$; -openfl_display3D__$Context3DMipFilter_Context3DMipFilter_$Impl_$.__name__ = "openfl.display3D._Context3DMipFilter.Context3DMipFilter_Impl_"; -openfl_display3D__$Context3DMipFilter_Context3DMipFilter_$Impl_$.fromString = function(value) { - switch(value) { - case "miplinear": - return 0; - case "mipnearest": - return 1; - case "mipnone": - return 2; - default: - return null; - } -}; -openfl_display3D__$Context3DMipFilter_Context3DMipFilter_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "miplinear"; - case 1: - return "mipnearest"; - case 2: - return "mipnone"; - default: - return null; - } -}; -var openfl_display3D__$Context3DProfile_Context3DProfile_$Impl_$ = {}; -$hxClasses["openfl.display3D._Context3DProfile.Context3DProfile_Impl_"] = openfl_display3D__$Context3DProfile_Context3DProfile_$Impl_$; -openfl_display3D__$Context3DProfile_Context3DProfile_$Impl_$.__name__ = "openfl.display3D._Context3DProfile.Context3DProfile_Impl_"; -openfl_display3D__$Context3DProfile_Context3DProfile_$Impl_$.fromString = function(value) { - switch(value) { - case "baseline": - return 0; - case "baselineConstrained": - return 1; - case "baselineExtended": - return 2; - case "standard": - return 3; - case "standardConstrained": - return 4; - case "standardExtended": - return 5; - default: - return null; - } -}; -openfl_display3D__$Context3DProfile_Context3DProfile_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "baseline"; - case 1: - return "baselineConstrained"; - case 2: - return "baselineExtended"; - case 3: - return "standard"; - case 4: - return "standardConstrained"; - case 5: - return "standardExtended"; - default: - return null; - } -}; -var openfl_display3D__$Context3DProgramFormat_Context3DProgramFormat_$Impl_$ = {}; -$hxClasses["openfl.display3D._Context3DProgramFormat.Context3DProgramFormat_Impl_"] = openfl_display3D__$Context3DProgramFormat_Context3DProgramFormat_$Impl_$; -openfl_display3D__$Context3DProgramFormat_Context3DProgramFormat_$Impl_$.__name__ = "openfl.display3D._Context3DProgramFormat.Context3DProgramFormat_Impl_"; -openfl_display3D__$Context3DProgramFormat_Context3DProgramFormat_$Impl_$.fromString = function(value) { - switch(value) { - case "agal": - return 0; - case "glsl": - return 1; - default: - return null; - } -}; -openfl_display3D__$Context3DProgramFormat_Context3DProgramFormat_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "agal"; - case 1: - return "glsl"; - default: - return null; - } -}; -var openfl_display3D__$Context3DProgramType_Context3DProgramType_$Impl_$ = {}; -$hxClasses["openfl.display3D._Context3DProgramType.Context3DProgramType_Impl_"] = openfl_display3D__$Context3DProgramType_Context3DProgramType_$Impl_$; -openfl_display3D__$Context3DProgramType_Context3DProgramType_$Impl_$.__name__ = "openfl.display3D._Context3DProgramType.Context3DProgramType_Impl_"; -openfl_display3D__$Context3DProgramType_Context3DProgramType_$Impl_$.fromString = function(value) { - switch(value) { - case "fragment": - return 0; - case "vertex": - return 1; - default: - return null; - } -}; -openfl_display3D__$Context3DProgramType_Context3DProgramType_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "fragment"; - case 1: - return "vertex"; - default: - return null; - } -}; -var openfl_display3D__$Context3DRenderMode_Context3DRenderMode_$Impl_$ = {}; -$hxClasses["openfl.display3D._Context3DRenderMode.Context3DRenderMode_Impl_"] = openfl_display3D__$Context3DRenderMode_Context3DRenderMode_$Impl_$; -openfl_display3D__$Context3DRenderMode_Context3DRenderMode_$Impl_$.__name__ = "openfl.display3D._Context3DRenderMode.Context3DRenderMode_Impl_"; -openfl_display3D__$Context3DRenderMode_Context3DRenderMode_$Impl_$.fromString = function(value) { - switch(value) { - case "auto": - return 0; - case "software": - return 1; - default: - return null; - } -}; -openfl_display3D__$Context3DRenderMode_Context3DRenderMode_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "auto"; - case 1: - return "software"; - default: - return null; - } -}; -var openfl_display3D__$Context3DStencilAction_Context3DStencilAction_$Impl_$ = {}; -$hxClasses["openfl.display3D._Context3DStencilAction.Context3DStencilAction_Impl_"] = openfl_display3D__$Context3DStencilAction_Context3DStencilAction_$Impl_$; -openfl_display3D__$Context3DStencilAction_Context3DStencilAction_$Impl_$.__name__ = "openfl.display3D._Context3DStencilAction.Context3DStencilAction_Impl_"; -openfl_display3D__$Context3DStencilAction_Context3DStencilAction_$Impl_$.fromString = function(value) { - switch(value) { - case "decrementSaturate": - return 0; - case "decrementWrap": - return 1; - case "incrementSaturate": - return 2; - case "incrementWrap": - return 3; - case "invert": - return 4; - case "keep": - return 5; - case "set": - return 6; - case "zero": - return 7; - default: - return null; - } -}; -openfl_display3D__$Context3DStencilAction_Context3DStencilAction_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "decrementSaturate"; - case 1: - return "decrementWrap"; - case 2: - return "incrementSaturate"; - case 3: - return "incrementWrap"; - case 4: - return "invert"; - case 5: - return "keep"; - case 6: - return "set"; - case 7: - return "zero"; - default: - return null; - } -}; -var openfl_display3D__$Context3DTextureFilter_Context3DTextureFilter_$Impl_$ = {}; -$hxClasses["openfl.display3D._Context3DTextureFilter.Context3DTextureFilter_Impl_"] = openfl_display3D__$Context3DTextureFilter_Context3DTextureFilter_$Impl_$; -openfl_display3D__$Context3DTextureFilter_Context3DTextureFilter_$Impl_$.__name__ = "openfl.display3D._Context3DTextureFilter.Context3DTextureFilter_Impl_"; -openfl_display3D__$Context3DTextureFilter_Context3DTextureFilter_$Impl_$.fromString = function(value) { - switch(value) { - case "anisotropic16x": - return 0; - case "anisotropic2x": - return 1; - case "anisotropic4x": - return 2; - case "anisotropic8x": - return 3; - case "linear": - return 4; - case "nearest": - return 5; - default: - return null; - } -}; -openfl_display3D__$Context3DTextureFilter_Context3DTextureFilter_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "anisotropic16x"; - case 1: - return "anisotropic2x"; - case 2: - return "anisotropic4x"; - case 3: - return "anisotropic8x"; - case 4: - return "linear"; - case 5: - return "nearest"; - default: - return null; - } -}; -var openfl_display3D__$Context3DTextureFormat_Context3DTextureFormat_$Impl_$ = {}; -$hxClasses["openfl.display3D._Context3DTextureFormat.Context3DTextureFormat_Impl_"] = openfl_display3D__$Context3DTextureFormat_Context3DTextureFormat_$Impl_$; -openfl_display3D__$Context3DTextureFormat_Context3DTextureFormat_$Impl_$.__name__ = "openfl.display3D._Context3DTextureFormat.Context3DTextureFormat_Impl_"; -openfl_display3D__$Context3DTextureFormat_Context3DTextureFormat_$Impl_$.fromString = function(value) { - switch(value) { - 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; - } -}; -openfl_display3D__$Context3DTextureFormat_Context3DTextureFormat_$Impl_$.toString = function(this1) { - switch(this1) { - 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; - } -}; -var openfl_display3D__$Context3DTriangleFace_Context3DTriangleFace_$Impl_$ = {}; -$hxClasses["openfl.display3D._Context3DTriangleFace.Context3DTriangleFace_Impl_"] = openfl_display3D__$Context3DTriangleFace_Context3DTriangleFace_$Impl_$; -openfl_display3D__$Context3DTriangleFace_Context3DTriangleFace_$Impl_$.__name__ = "openfl.display3D._Context3DTriangleFace.Context3DTriangleFace_Impl_"; -openfl_display3D__$Context3DTriangleFace_Context3DTriangleFace_$Impl_$.fromString = function(value) { - switch(value) { - case "back": - return 0; - case "front": - return 1; - case "frontAndBack": - return 2; - case "none": - return 3; - default: - return null; - } -}; -openfl_display3D__$Context3DTriangleFace_Context3DTriangleFace_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "back"; - case 1: - return "front"; - case 2: - return "frontAndBack"; - case 3: - return "none"; - default: - return null; - } -}; -var openfl_display3D__$Context3DVertexBufferFormat_Context3DVertexBufferFormat_$Impl_$ = {}; -$hxClasses["openfl.display3D._Context3DVertexBufferFormat.Context3DVertexBufferFormat_Impl_"] = openfl_display3D__$Context3DVertexBufferFormat_Context3DVertexBufferFormat_$Impl_$; -openfl_display3D__$Context3DVertexBufferFormat_Context3DVertexBufferFormat_$Impl_$.__name__ = "openfl.display3D._Context3DVertexBufferFormat.Context3DVertexBufferFormat_Impl_"; -openfl_display3D__$Context3DVertexBufferFormat_Context3DVertexBufferFormat_$Impl_$.fromString = function(value) { - switch(value) { - case "bytes4": - return 0; - case "float1": - return 1; - case "float2": - return 2; - case "float3": - return 3; - case "float4": - return 4; - default: - return null; - } -}; -openfl_display3D__$Context3DVertexBufferFormat_Context3DVertexBufferFormat_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "bytes4"; - case 1: - return "float1"; - case 2: - return "float2"; - case 3: - return "float3"; - case 4: - return "float4"; - default: - return null; - } -}; -var openfl_display3D__$Context3DWrapMode_Context3DWrapMode_$Impl_$ = {}; -$hxClasses["openfl.display3D._Context3DWrapMode.Context3DWrapMode_Impl_"] = openfl_display3D__$Context3DWrapMode_Context3DWrapMode_$Impl_$; -openfl_display3D__$Context3DWrapMode_Context3DWrapMode_$Impl_$.__name__ = "openfl.display3D._Context3DWrapMode.Context3DWrapMode_Impl_"; -openfl_display3D__$Context3DWrapMode_Context3DWrapMode_$Impl_$.fromString = function(value) { - switch(value) { - case "clamp": - return 0; - case "clamp_u_repeat_v": - return 1; - case "repeat": - return 2; - case "repeat_u_clamp_v": - return 3; - default: - return null; - } -}; -openfl_display3D__$Context3DWrapMode_Context3DWrapMode_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "clamp"; - case 1: - return "clamp_u_repeat_v"; - case 2: - return "repeat"; - case 3: - return "repeat_u_clamp_v"; - default: - return null; - } -}; -var openfl_display3D_IndexBuffer3D = function(context3D,numIndices,bufferUsage) { - this.__context = context3D; - this.__numIndices = numIndices; - var gl = this.__context.gl; - this.__id = gl.createBuffer(); - this.__usage = bufferUsage == 0 ? gl.DYNAMIC_DRAW : gl.STATIC_DRAW; -}; -$hxClasses["openfl.display3D.IndexBuffer3D"] = openfl_display3D_IndexBuffer3D; -openfl_display3D_IndexBuffer3D.__name__ = "openfl.display3D.IndexBuffer3D"; -openfl_display3D_IndexBuffer3D.prototype = { - __context: null - ,__id: null - ,__memoryUsage: null - ,__numIndices: null - ,__tempUInt16Array: null - ,__usage: null - ,dispose: function() { - var gl = this.__context.gl; - gl.deleteBuffer(this.__id); - } - ,uploadFromByteArray: function(data,byteArrayOffset,startOffset,count) { - var offset = byteArrayOffset + startOffset * 2; - var elements = null; - var array = null; - var vector = null; - var view = null; - var buffer = openfl_utils__$ByteArray_ByteArray_$Impl_$.toArrayBuffer(data); - var byteoffset = offset; - if(byteoffset == null) { - byteoffset = 0; - } - var this1; - if(elements != null) { - this1 = new Uint16Array(elements); - } else if(array != null) { - this1 = new Uint16Array(array); - } else if(vector != null) { - this1 = new Uint16Array(vector.__array); - } else if(view != null) { - this1 = new Uint16Array(view); - } else if(buffer != null) { - if(count == null) { - this1 = new Uint16Array(buffer,byteoffset); - } else { - this1 = new Uint16Array(buffer,byteoffset,count); - } - } else { - this1 = null; - } - this.uploadFromTypedArray(this1); - } - ,uploadFromTypedArray: function(data,byteLength) { - if(byteLength == null) { - byteLength = -1; - } - if(data == null) { - return; - } - var gl = this.__context.gl; - this.__context.__bindGLElementArrayBuffer(this.__id); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.bufferData(gl,gl.ELEMENT_ARRAY_BUFFER,data,this.__usage); - } - ,uploadFromVector: function(data,startOffset,count) { - if(data == null) { - return; - } - var gl = this.__context.gl; - var length = startOffset + count; - var existingUInt16Array = this.__tempUInt16Array; - if(this.__tempUInt16Array == null || this.__tempUInt16Array.length < count) { - var array = null; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this1; - if(count != null) { - this1 = new Uint16Array(count); - } else if(array != null) { - this1 = new Uint16Array(array); - } else if(vector != null) { - this1 = new Uint16Array(vector.__array); - } else if(view != null) { - this1 = new Uint16Array(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Uint16Array(buffer,0); - } else { - this1 = new Uint16Array(buffer,0,len); - } - } else { - this1 = null; - } - this.__tempUInt16Array = this1; - if(existingUInt16Array != null) { - this.__tempUInt16Array.set(existingUInt16Array); - } - } - var _g = startOffset; - var _g1 = length; - while(_g < _g1) { - var i = _g++; - this.__tempUInt16Array[i - startOffset] = data.get(i); - } - this.uploadFromTypedArray(this.__tempUInt16Array); - } - ,__class__: openfl_display3D_IndexBuffer3D -}; -var openfl_display3D_Program3D = function(context3D,format) { - this.__context = context3D; - this.__format = format; - if(this.__format == 0) { - this.__agalSamplerUsageMask = 0; - this.__agalUniforms = new haxe_ds_List(); - this.__agalSamplerUniforms = new haxe_ds_List(); - this.__agalAlphaSamplerUniforms = new haxe_ds_List(); - this.__agalAlphaSamplerEnabled = []; - } else { - this.__glslAttribNames = []; - this.__glslAttribTypes = []; - this.__glslSamplerNames = []; - this.__glslUniformLocations = []; - this.__glslUniformNames = []; - this.__glslUniformTypes = []; - } - this.__samplerStates = []; -}; -$hxClasses["openfl.display3D.Program3D"] = openfl_display3D_Program3D; -openfl_display3D_Program3D.__name__ = "openfl.display3D.Program3D"; -openfl_display3D_Program3D.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(name) { - if(this.__format == 0) { - if(StringTools.startsWith(name,"va")) { - return Std.parseInt(name.substring(2)); - } else { - return -1; - } - } else { - var _g = 0; - var _g1 = this.__glslAttribNames.length; - while(_g < _g1) { - var i = _g++; - if(this.__glslAttribNames[i] == name) { - return i; - } - } - return -1; - } - } - ,getConstantIndex: function(name) { - if(this.__format == 0) { - if(StringTools.startsWith(name,"vc")) { - return Std.parseInt(name.substring(2)); - } else if(StringTools.startsWith(name,"fc")) { - return Std.parseInt(name.substring(2)); - } else { - return -1; - } - } else { - var _g = 0; - var _g1 = this.__glslUniformNames.length; - while(_g < _g1) { - var i = _g++; - if(this.__glslUniformNames[i] == name) { - return this.__glslUniformLocations[i]; - } - } - return -1; - } - } - ,upload: function(vertexProgram,fragmentProgram) { - if(this.__format != 0) { - return; - } - var samplerStates = []; - var glslVertex = openfl__$internal_formats_agal_AGALConverter.convertToGLSL(vertexProgram,null); - var glslFragment = openfl__$internal_formats_agal_AGALConverter.convertToGLSL(fragmentProgram,samplerStates); - if(lime_utils_Log.level == 5) { - lime_utils_Log.info(glslVertex,{ fileName : "openfl/display3D/Program3D.hx", lineNumber : 399, className : "openfl.display3D.Program3D", methodName : "upload"}); - lime_utils_Log.info(glslFragment,{ fileName : "openfl/display3D/Program3D.hx", lineNumber : 400, className : "openfl.display3D.Program3D", methodName : "upload"}); - } - this.__deleteShaders(); - this.__uploadFromGLSL(glslVertex,glslFragment); - this.__buildAGALUniformList(); - var _g = 0; - var _g1 = samplerStates.length; - while(_g < _g1) { - var i = _g++; - this.__samplerStates[i] = samplerStates[i]; - } - } - ,uploadSources: function(vertexSource,fragmentSource) { - if(this.__format != 1) { - return; - } - var prefix = "#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"; - var vertex = prefix + vertexSource; - var fragment = prefix + fragmentSource; - if(vertex == this.__glVertexSource && fragment == this.__glFragmentSource) { - return; - } - this.__processGLSLData(vertexSource,"attribute"); - this.__processGLSLData(vertexSource,"uniform"); - this.__processGLSLData(fragmentSource,"uniform"); - this.__deleteShaders(); - this.__uploadFromGLSL(vertex,fragment); - var samplerNames = this.__glslSamplerNames; - var attribNames = this.__glslAttribNames; - var attribTypes = this.__glslAttribTypes; - var uniformNames = this.__glslUniformNames; - this.__glslSamplerNames = []; - this.__glslAttribNames = []; - this.__glslAttribTypes = []; - this.__glslUniformLocations = []; - var gl = this.__context.gl; - var index; - var location; - var _g = 0; - while(_g < samplerNames.length) { - var name = samplerNames[_g]; - ++_g; - index = gl.getUniformLocation(this.__glProgram,name); - this.__glslSamplerNames[index] = name; - } - var _g1 = 0; - var _g2 = attribNames.length; - while(_g1 < _g2) { - var i = _g1++; - index = gl.getAttribLocation(this.__glProgram,attribNames[i]); - this.__glslAttribNames[index] = attribNames[i]; - this.__glslAttribTypes[index] = attribTypes[i]; - } - var _g3 = 0; - var _g4 = uniformNames.length; - while(_g3 < _g4) { - var i1 = _g3++; - location = gl.getUniformLocation(this.__glProgram,uniformNames[i1]); - this.__glslUniformLocations[i1] = location; - } - } - ,__buildAGALUniformList: function() { - if(this.__format == 1) { - return; - } - var gl = this.__context.gl; - this.__agalUniforms.clear(); - this.__agalSamplerUniforms.clear(); - this.__agalAlphaSamplerUniforms.clear(); - this.__agalAlphaSamplerEnabled = []; - this.__agalSamplerUsageMask = 0; - var numActive = 0; - numActive = gl.getProgramParameter(this.__glProgram,gl.ACTIVE_UNIFORMS); - var vertexUniforms = new haxe_ds_List(); - var fragmentUniforms = new haxe_ds_List(); - var _g = 0; - var _g1 = numActive; - while(_g < _g1) { - var i = _g++; - var info = gl.getActiveUniform(this.__glProgram,i); - var name = info.name; - var size = info.size; - var uniformType = info.type; - var uniform = new openfl_display3D_Uniform(this.__context); - uniform.name = name; - uniform.size = size; - uniform.type = uniformType; - uniform.location = gl.getUniformLocation(this.__glProgram,uniform.name); - var indexBracket = uniform.name.indexOf("["); - if(indexBracket >= 0) { - uniform.name = uniform.name.substring(0,indexBracket); - } - switch(uniform.type) { - case 35674: - uniform.regCount = 2; - break; - case 35675: - uniform.regCount = 3; - break; - case 35676: - uniform.regCount = 4; - break; - default: - uniform.regCount = 1; - } - uniform.regCount *= uniform.size; - this.__agalUniforms.add(uniform); - if(uniform.name == "vcPositionScale") { - this.__agalPositionScale = uniform; - } else if(StringTools.startsWith(uniform.name,"vc")) { - uniform.regIndex = Std.parseInt(uniform.name.substring(2)); - uniform.regData = this.__context.__vertexConstants; - vertexUniforms.add(uniform); - } else if(StringTools.startsWith(uniform.name,"fc")) { - uniform.regIndex = Std.parseInt(uniform.name.substring(2)); - uniform.regData = this.__context.__fragmentConstants; - fragmentUniforms.add(uniform); - } else if(StringTools.startsWith(uniform.name,"sampler") && uniform.name.indexOf("alpha") == -1) { - uniform.regIndex = Std.parseInt(uniform.name.substring(7)); - this.__agalSamplerUniforms.add(uniform); - var _g11 = 0; - var _g2 = uniform.regCount; - while(_g11 < _g2) { - var reg = _g11++; - this.__agalSamplerUsageMask |= 1 << uniform.regIndex + reg; - } - } else if(StringTools.startsWith(uniform.name,"sampler") && StringTools.endsWith(uniform.name,"_alpha")) { - var len = uniform.name.indexOf("_") - 7; - uniform.regIndex = Std.parseInt(uniform.name.substring(7,7 + len)) + 4; - this.__agalAlphaSamplerUniforms.add(uniform); - } else if(StringTools.startsWith(uniform.name,"sampler") && StringTools.endsWith(uniform.name,"_alphaEnabled")) { - uniform.regIndex = Std.parseInt(uniform.name.substring(7)); - this.__agalAlphaSamplerEnabled[uniform.regIndex] = uniform; - } - if(lime_utils_Log.level == 5) { - lime_utils_Log.verbose("" + i + " name:" + uniform.name + " type:" + uniform.type + " size:" + uniform.size + " location:" + Std.string(uniform.location),{ fileName : "openfl/display3D/Program3D.hx", lineNumber : 577, className : "openfl.display3D.Program3D", methodName : "__buildAGALUniformList"}); - } - } - this.__agalVertexUniformMap = new openfl_display3D_UniformMap(Lambda.array(vertexUniforms)); - this.__agalFragmentUniformMap = new openfl_display3D_UniformMap(Lambda.array(fragmentUniforms)); - } - ,__deleteShaders: function() { - var gl = this.__context.gl; - if(this.__glProgram != null) { - this.__glProgram = null; - } - if(this.__glVertexShader != null) { - gl.deleteShader(this.__glVertexShader); - this.__glVertexShader = null; - } - if(this.__glFragmentShader != null) { - gl.deleteShader(this.__glFragmentShader); - this.__glFragmentShader = null; - } - } - ,__disable: function() { - var tmp = this.__format == 1; - } - ,__enable: function() { - var gl = this.__context.gl; - gl.useProgram(this.__glProgram); - if(this.__format == 0) { - this.__agalVertexUniformMap.markAllDirty(); - this.__agalFragmentUniformMap.markAllDirty(); - var _g_head = this.__agalSamplerUniforms.h; - while(_g_head != null) { - var val = _g_head.item; - _g_head = _g_head.next; - var sampler = val; - if(sampler.regCount == 1) { - gl.uniform1i(sampler.location,sampler.regIndex); - } else { - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError("!!! TODO: uniform location on webgl")); - } - } - var _g1_head = this.__agalAlphaSamplerUniforms.h; - while(_g1_head != null) { - var val1 = _g1_head.item; - _g1_head = _g1_head.next; - var sampler1 = val1; - if(sampler1.regCount == 1) { - gl.uniform1i(sampler1.location,sampler1.regIndex); - } else { - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError("!!! TODO: uniform location on webgl")); - } - } - } - } - ,__flush: function() { - if(this.__format == 0) { - this.__agalVertexUniformMap.flush(); - this.__agalFragmentUniformMap.flush(); - } else { - return; - } - } - ,__getSamplerState: function(sampler) { - return this.__samplerStates[sampler]; - } - ,__markDirty: function(isVertex,index,count) { - if(this.__format == 1) { - return; - } - if(isVertex) { - this.__agalVertexUniformMap.markDirty(index,count); - } else { - this.__agalFragmentUniformMap.markDirty(index,count); - } - } - ,__processGLSLData: function(source,storageType) { - var lastMatch = 0; - var position; - var regex; - var name; - var type; - if(storageType == "uniform") { - regex = new EReg("uniform ([A-Za-z0-9]+) ([A-Za-z0-9_]+)",""); - } else { - regex = new EReg("attribute ([A-Za-z0-9]+) ([A-Za-z0-9_]+)",""); - } - while(regex.matchSub(source,lastMatch)) { - type = regex.matched(1); - name = regex.matched(2); - if(StringTools.startsWith(name,"gl_")) { - continue; - } - if(StringTools.startsWith(type,"sampler")) { - this.__glslSamplerNames.push(name); - } else { - var parameterType; - switch(type) { - case "bool": - parameterType = 0; - break; - case "bvec2": - parameterType = 1; - break; - case "bvec3": - parameterType = 2; - break; - case "bvec4": - parameterType = 3; - break; - case "dvec2":case "vec2": - parameterType = 5; - break; - case "dvec3":case "vec3": - parameterType = 6; - break; - case "double":case "float": - parameterType = 4; - break; - case "ivec3":case "uvec3": - parameterType = 10; - break; - case "ivec4":case "uvec4": - parameterType = 11; - break; - case "mat2":case "mat2x2": - parameterType = 12; - break; - case "mat2x3": - parameterType = 13; - break; - case "mat2x4": - parameterType = 14; - break; - case "mat3x2": - parameterType = 15; - break; - case "mat3":case "mat3x3": - parameterType = 16; - break; - case "mat3x4": - parameterType = 17; - break; - case "mat4":case "mat4x4": - parameterType = 20; - break; - case "mat4x2": - parameterType = 18; - break; - case "mat4x3": - parameterType = 19; - break; - case "int":case "uint": - parameterType = 8; - break; - case "ivec2":case "uvec2": - parameterType = 9; - break; - case "dvec4":case "vec4": - parameterType = 7; - break; - default: - parameterType = null; - } - if(storageType == "uniform") { - this.__glslUniformNames.push(name); - this.__glslUniformTypes.push(parameterType); - } else { - this.__glslAttribNames.push(name); - this.__glslAttribTypes.push(parameterType); - } - } - position = regex.matchedPos(); - lastMatch = position.pos + position.len; - } - } - ,__setPositionScale: function(positionScale) { - if(this.__format == 1) { - return; - } - if(this.__agalPositionScale != null) { - var gl = this.__context.gl; - var location = this.__agalPositionScale.location; - var data = positionScale; - var srcOffset = null; - if(srcOffset != null) { - gl.uniform4fv(location,data,srcOffset,null); - } else { - gl.uniform4fv(location,data); - } - } - } - ,__setSamplerState: function(sampler,state) { - this.__samplerStates[sampler] = state; - } - ,__uploadFromGLSL: function(vertexShaderSource,fragmentShaderSource) { - var gl = this.__context.gl; - this.__glVertexSource = vertexShaderSource; - this.__glFragmentSource = fragmentShaderSource; - this.__glVertexShader = gl.createShader(gl.VERTEX_SHADER); - gl.shaderSource(this.__glVertexShader,vertexShaderSource); - gl.compileShader(this.__glVertexShader); - if(gl.getShaderParameter(this.__glVertexShader,gl.COMPILE_STATUS) == 0) { - var message = "Error compiling vertex shader"; - message += "\n" + gl.getShaderInfoLog(this.__glVertexShader); - message += "\n" + vertexShaderSource; - lime_utils_Log.error(message,{ fileName : "openfl/display3D/Program3D.hx", lineNumber : 869, className : "openfl.display3D.Program3D", methodName : "__uploadFromGLSL"}); - } - this.__glFragmentShader = gl.createShader(gl.FRAGMENT_SHADER); - gl.shaderSource(this.__glFragmentShader,fragmentShaderSource); - gl.compileShader(this.__glFragmentShader); - if(gl.getShaderParameter(this.__glFragmentShader,gl.COMPILE_STATUS) == 0) { - var message1 = "Error compiling fragment shader"; - message1 += "\n" + gl.getShaderInfoLog(this.__glFragmentShader); - message1 += "\n" + fragmentShaderSource; - lime_utils_Log.error(message1,{ fileName : "openfl/display3D/Program3D.hx", lineNumber : 881, className : "openfl.display3D.Program3D", methodName : "__uploadFromGLSL"}); - } - this.__glProgram = gl.createProgram(); - if(this.__format == 0) { - var _g = 0; - while(_g < 16) { - var i = _g++; - var name = "va" + i; - if(vertexShaderSource.indexOf(" " + name) != -1) { - gl.bindAttribLocation(this.__glProgram,i,name); - } - } - } else { - var _g1 = 0; - var _g11 = this.__glslAttribNames; - while(_g1 < _g11.length) { - var name1 = _g11[_g1]; - ++_g1; - if(name1.indexOf("Position") > -1 && StringTools.startsWith(name1,"openfl_")) { - gl.bindAttribLocation(this.__glProgram,0,name1); - break; - } - } - } - gl.attachShader(this.__glProgram,this.__glVertexShader); - gl.attachShader(this.__glProgram,this.__glFragmentShader); - gl.linkProgram(this.__glProgram); - if(gl.getProgramParameter(this.__glProgram,gl.LINK_STATUS) == 0) { - var message2 = "Unable to initialize the shader program"; - message2 += "\n" + gl.getProgramInfoLog(this.__glProgram); - lime_utils_Log.error(message2,{ fileName : "openfl/display3D/Program3D.hx", lineNumber : 922, className : "openfl.display3D.Program3D", methodName : "__uploadFromGLSL"}); - } - } - ,__class__: openfl_display3D_Program3D -}; -var openfl_display3D_Uniform = function(context) { - this.context = context; - this.isDirty = true; - var this1 = new lime_utils_BytePointerData(null,0); - this.regDataPointer = this1; -}; -$hxClasses["openfl.display3D.Uniform"] = openfl_display3D_Uniform; -openfl_display3D_Uniform.__name__ = "openfl.display3D.Uniform"; -openfl_display3D_Uniform.prototype = { - name: null - ,location: null - ,type: null - ,size: null - ,regData: null - ,regIndex: null - ,regCount: null - ,isDirty: null - ,context: null - ,regDataPointer: null - ,flush: function() { - var gl = this.context.gl; - var index = this.regIndex * 4; - switch(this.type) { - case 35664: - lime_graphics__$WebGL2RenderContext_WebGL2RenderContext_$Impl_$.uniform2fv(gl,this.location,this.regData.subarray(index,index + this.regCount * 2)); - break; - case 35665: - var location = this.location; - var data = this.regData.subarray(index,index + this.regCount * 3); - var srcOffset = null; - if(srcOffset != null) { - gl.uniform3fv(location,data,srcOffset,null); - } else { - gl.uniform3fv(location,data); - } - break; - case 35666: - var location1 = this.location; - var data1 = this.regData.subarray(index,index + this.regCount * 4); - var srcOffset1 = null; - if(srcOffset1 != null) { - gl.uniform4fv(location1,data1,srcOffset1,null); - } else { - gl.uniform4fv(location1,data1); - } - break; - case 35674: - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.uniformMatrix2fv(gl,this.location,false,this.regData.subarray(index,index + this.size * 2 * 2)); - break; - case 35675: - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.uniformMatrix3fv(gl,this.location,false,this.regData.subarray(index,index + this.size * 3 * 3)); - break; - case 35676: - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.uniformMatrix4fv(gl,this.location,false,this.regData.subarray(index,index + this.size * 4 * 4)); - break; - default: - var location2 = this.location; - var data2 = this.regData.subarray(index,index + this.regCount * 4); - var srcOffset2 = null; - if(srcOffset2 != null) { - gl.uniform4fv(location2,data2,srcOffset2,null); - } else { - gl.uniform4fv(location2,data2); - } - } - } - ,__getUniformRegisters: function(index,size) { - return this.regData.subarray(index,index + size); - } - ,__class__: openfl_display3D_Uniform -}; -var openfl_display3D_UniformMap = function(list) { - this.__uniforms = list; - this.__uniforms.sort(function(a,b) { - return Reflect.compare(a.regIndex,b.regIndex); - }); - var total = 0; - var _g = 0; - var _g1 = this.__uniforms; - while(_g < _g1.length) { - var uniform = _g1[_g]; - ++_g; - if(uniform.regIndex + uniform.regCount > total) { - total = uniform.regIndex + uniform.regCount; - } - } - this.__registerLookup = openfl__$Vector_Vector_$Impl_$.toObjectVector(null,total); - var _g2 = 0; - var _g3 = this.__uniforms; - while(_g2 < _g3.length) { - var uniform1 = _g3[_g2]; - ++_g2; - var _g21 = 0; - var _g31 = uniform1.regCount; - while(_g21 < _g31) { - var i = _g21++; - this.__registerLookup.set(uniform1.regIndex + i,uniform1); - } - } - this.__anyDirty = this.__allDirty = true; -}; -$hxClasses["openfl.display3D.UniformMap"] = openfl_display3D_UniformMap; -openfl_display3D_UniformMap.__name__ = "openfl.display3D.UniformMap"; -openfl_display3D_UniformMap.prototype = { - __allDirty: null - ,__anyDirty: null - ,__registerLookup: null - ,__uniforms: null - ,flush: function() { - if(this.__anyDirty) { - var _g = 0; - var _g1 = this.__uniforms; - while(_g < _g1.length) { - var uniform = _g1[_g]; - ++_g; - if(this.__allDirty || uniform.isDirty) { - uniform.flush(); - uniform.isDirty = false; - } - } - this.__anyDirty = this.__allDirty = false; - } - } - ,markAllDirty: function() { - this.__allDirty = true; - this.__anyDirty = true; - } - ,markDirty: function(start,count) { - if(this.__allDirty) { - return; - } - var end = start + count; - if(end > this.__registerLookup.get_length()) { - end = this.__registerLookup.get_length(); - } - var index = start; - while(index < end) { - var uniform = this.__registerLookup.get(index); - if(uniform != null) { - uniform.isDirty = true; - this.__anyDirty = true; - index = uniform.regIndex + uniform.regCount; - } else { - ++index; - } - } - } - ,__class__: openfl_display3D_UniformMap -}; -var openfl_display3D_VertexBuffer3D = function(context3D,numVertices,dataPerVertex,bufferUsage) { - this.__context = context3D; - this.__numVertices = numVertices; - this.__vertexSize = dataPerVertex; - var gl = this.__context.gl; - this.__id = gl.createBuffer(); - this.__stride = this.__vertexSize * 4; - this.__usage = openfl_display3D__$Context3DBufferUsage_Context3DBufferUsage_$Impl_$.fromString(bufferUsage) == 0 ? gl.DYNAMIC_DRAW : gl.STATIC_DRAW; -}; -$hxClasses["openfl.display3D.VertexBuffer3D"] = openfl_display3D_VertexBuffer3D; -openfl_display3D_VertexBuffer3D.__name__ = "openfl.display3D.VertexBuffer3D"; -openfl_display3D_VertexBuffer3D.prototype = { - __context: null - ,__data: null - ,__id: null - ,__memoryUsage: null - ,__numVertices: null - ,__stride: null - ,__tempFloat32Array: null - ,__usage: null - ,__vertexSize: null - ,dispose: function() { - var gl = this.__context.gl; - gl.deleteBuffer(this.__id); - } - ,uploadFromByteArray: function(data,byteArrayOffset,startVertex,numVertices) { - var offset = byteArrayOffset + startVertex * this.__stride; - var length = numVertices * this.__vertexSize; - var elements = null; - var array = null; - var vector = null; - var view = null; - var buffer = openfl_utils__$ByteArray_ByteArray_$Impl_$.toArrayBuffer(data); - var byteoffset = offset; - if(byteoffset == null) { - byteoffset = 0; - } - var this1; - if(elements != null) { - this1 = new Float32Array(elements); - } else if(array != null) { - this1 = new Float32Array(array); - } else if(vector != null) { - this1 = new Float32Array(vector.__array); - } else if(view != null) { - this1 = new Float32Array(view); - } else if(buffer != null) { - if(length == null) { - this1 = new Float32Array(buffer,byteoffset); - } else { - this1 = new Float32Array(buffer,byteoffset,length); - } - } else { - this1 = null; - } - this.uploadFromTypedArray(this1); - } - ,uploadFromTypedArray: function(data,byteLength) { - if(byteLength == null) { - byteLength = -1; - } - if(data == null) { - return; - } - var gl = this.__context.gl; - this.__context.__bindGLArrayBuffer(this.__id); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.bufferData(gl,gl.ARRAY_BUFFER,data,this.__usage); - } - ,uploadFromVector: function(data,startVertex,numVertices) { - if(data == null) { - return; - } - var gl = this.__context.gl; - var start = startVertex * this.__vertexSize; - var count = numVertices * this.__vertexSize; - var length = start + count; - var existingFloat32Array = this.__tempFloat32Array; - if(this.__tempFloat32Array == null || this.__tempFloat32Array.length < count) { - var array = null; - var vector = null; - var view = null; - var buffer = null; - var len = null; - var this1; - if(count != null) { - this1 = new Float32Array(count); - } else if(array != null) { - this1 = new Float32Array(array); - } else if(vector != null) { - this1 = new Float32Array(vector.__array); - } else if(view != null) { - this1 = new Float32Array(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Float32Array(buffer,0); - } else { - this1 = new Float32Array(buffer,0,len); - } - } else { - this1 = null; - } - this.__tempFloat32Array = this1; - if(existingFloat32Array != null) { - this.__tempFloat32Array.set(existingFloat32Array); - } - } - var _g = start; - var _g1 = length; - while(_g < _g1) { - var i = _g++; - this.__tempFloat32Array[i - start] = data.get(i); - } - this.uploadFromTypedArray(this.__tempFloat32Array); - } - ,__class__: openfl_display3D_VertexBuffer3D -}; -var openfl_display3D_textures_TextureBase = function(context) { - openfl_events_EventDispatcher.call(this); - this.__context = context; - var gl = this.__context.gl; - this.__textureID = gl.createTexture(); - this.__textureContext = this.__context.__context; - if(openfl_display3D_textures_TextureBase.__supportsBGRA == null) { - openfl_display3D_textures_TextureBase.__textureInternalFormat = gl.RGBA; - var bgraExtension = null; - if(bgraExtension != null) { - openfl_display3D_textures_TextureBase.__supportsBGRA = true; - openfl_display3D_textures_TextureBase.__textureFormat = bgraExtension.BGRA_EXT; - if(context.__context.type == "opengles") { - openfl_display3D_textures_TextureBase.__textureInternalFormat = bgraExtension.BGRA_EXT; - } - } else { - openfl_display3D_textures_TextureBase.__supportsBGRA = false; - openfl_display3D_textures_TextureBase.__textureFormat = gl.RGBA; - } - openfl_display3D_textures_TextureBase.__compressedFormats = new haxe_ds_IntMap(); - openfl_display3D_textures_TextureBase.__compressedFormatsAlpha = new haxe_ds_IntMap(); - var dxtExtension = gl.getExtension("WEBGL_compressed_texture_s3tc"); - var etc1Extension = gl.getExtension("WEBGL_compressed_texture_etc1"); - var pvrtcExtension = gl.getExtension("WEBKIT_WEBGL_compressed_texture_pvrtc"); - if(dxtExtension != null) { - var v = dxtExtension.COMPRESSED_RGBA_S3TC_DXT1_EXT; - openfl_display3D_textures_TextureBase.__compressedFormats.h[0] = v; - var v1 = dxtExtension.COMPRESSED_RGBA_S3TC_DXT5_EXT; - openfl_display3D_textures_TextureBase.__compressedFormatsAlpha.h[0] = v1; - } - if(etc1Extension != null) { - var v2 = etc1Extension.COMPRESSED_RGB_ETC1_WEBGL; - openfl_display3D_textures_TextureBase.__compressedFormats.h[2] = v2; - var v3 = etc1Extension.COMPRESSED_RGB_ETC1_WEBGL; - openfl_display3D_textures_TextureBase.__compressedFormatsAlpha.h[2] = v3; - } - if(pvrtcExtension != null) { - var v4 = pvrtcExtension.COMPRESSED_RGB_PVRTC_4BPPV1_IMG; - openfl_display3D_textures_TextureBase.__compressedFormats.h[1] = v4; - var v5 = pvrtcExtension.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG; - openfl_display3D_textures_TextureBase.__compressedFormatsAlpha.h[1] = v5; - } - } - this.__internalFormat = openfl_display3D_textures_TextureBase.__textureInternalFormat; - this.__format = openfl_display3D_textures_TextureBase.__textureFormat; -}; -$hxClasses["openfl.display3D.textures.TextureBase"] = openfl_display3D_textures_TextureBase; -openfl_display3D_textures_TextureBase.__name__ = "openfl.display3D.textures.TextureBase"; -openfl_display3D_textures_TextureBase.__compressedFormats = null; -openfl_display3D_textures_TextureBase.__compressedFormatsAlpha = null; -openfl_display3D_textures_TextureBase.__textureFormat = null; -openfl_display3D_textures_TextureBase.__textureInternalFormat = null; -openfl_display3D_textures_TextureBase.__super__ = openfl_events_EventDispatcher; -openfl_display3D_textures_TextureBase.prototype = $extend(openfl_events_EventDispatcher.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 gl = this.__context.gl; - if(this.__alphaTexture != null) { - this.__alphaTexture.dispose(); - this.__alphaTexture = null; - } - if(this.__textureID != null) { - gl.deleteTexture(this.__textureID); - this.__textureID = null; - } - if(this.__glFramebuffer != null) { - gl.deleteFramebuffer(this.__glFramebuffer); - this.__glFramebuffer = null; - } - if(this.__glDepthRenderbuffer != null) { - gl.deleteRenderbuffer(this.__glDepthRenderbuffer); - this.__glDepthRenderbuffer = null; - } - if(this.__glStencilRenderbuffer != null) { - gl.deleteRenderbuffer(this.__glStencilRenderbuffer); - this.__glStencilRenderbuffer = null; - } - } - ,__getGLFramebuffer: function(enableDepthAndStencil,antiAlias,surfaceSelector) { - var gl = this.__context.gl; - if(this.__glFramebuffer == null) { - this.__glFramebuffer = gl.createFramebuffer(); - this.__context.__bindGLFramebuffer(this.__glFramebuffer); - gl.framebufferTexture2D(gl.FRAMEBUFFER,gl.COLOR_ATTACHMENT0,gl.TEXTURE_2D,this.__textureID,0); - if(this.__context.__enableErrorChecking) { - var code = gl.checkFramebufferStatus(gl.FRAMEBUFFER); - if(code != gl.FRAMEBUFFER_COMPLETE) { - lime_utils_Log.warn("Error: Context3D.setRenderToTexture status:" + code + " width:" + this.__width + " height:" + this.__height,{ fileName : "openfl/display3D/textures/TextureBase.hx", lineNumber : 201, className : "openfl.display3D.textures.TextureBase", methodName : "__getGLFramebuffer"}); - } - } - } - if(enableDepthAndStencil && this.__glDepthRenderbuffer == null) { - this.__context.__bindGLFramebuffer(this.__glFramebuffer); - if(openfl_display3D_Context3D.__glDepthStencil != 0) { - this.__glDepthRenderbuffer = gl.createRenderbuffer(); - this.__glStencilRenderbuffer = this.__glDepthRenderbuffer; - gl.bindRenderbuffer(gl.RENDERBUFFER,this.__glDepthRenderbuffer); - gl.renderbufferStorage(gl.RENDERBUFFER,openfl_display3D_Context3D.__glDepthStencil,this.__width,this.__height); - gl.framebufferRenderbuffer(gl.FRAMEBUFFER,gl.DEPTH_STENCIL_ATTACHMENT,gl.RENDERBUFFER,this.__glDepthRenderbuffer); - } else { - this.__glDepthRenderbuffer = gl.createRenderbuffer(); - this.__glStencilRenderbuffer = gl.createRenderbuffer(); - gl.bindRenderbuffer(gl.RENDERBUFFER,this.__glDepthRenderbuffer); - gl.renderbufferStorage(gl.RENDERBUFFER,gl.DEPTH_COMPONENT16,this.__width,this.__height); - gl.bindRenderbuffer(gl.RENDERBUFFER,this.__glStencilRenderbuffer); - gl.renderbufferStorage(gl.RENDERBUFFER,gl.STENCIL_INDEX8,this.__width,this.__height); - gl.framebufferRenderbuffer(gl.FRAMEBUFFER,gl.DEPTH_ATTACHMENT,gl.RENDERBUFFER,this.__glDepthRenderbuffer); - gl.framebufferRenderbuffer(gl.FRAMEBUFFER,gl.STENCIL_ATTACHMENT,gl.RENDERBUFFER,this.__glStencilRenderbuffer); - } - if(this.__context.__enableErrorChecking) { - var code1 = gl.checkFramebufferStatus(gl.FRAMEBUFFER); - if(code1 != gl.FRAMEBUFFER_COMPLETE) { - lime_utils_Log.warn("Error: Context3D.setRenderToTexture status:" + code1 + " width:" + this.__width + " height:" + this.__height,{ fileName : "openfl/display3D/textures/TextureBase.hx", lineNumber : 239, className : "openfl.display3D.textures.TextureBase", methodName : "__getGLFramebuffer"}); - } - } - gl.bindRenderbuffer(gl.RENDERBUFFER,null); - } - return this.__glFramebuffer; - } - ,__getImage: function(bitmapData) { - var image = bitmapData.image; - if(!bitmapData.__isValid || image == null) { - return null; - } - lime__$internal_graphics_ImageCanvasUtil.sync(image,false); - var gl = this.__context.gl; - if(image.type != lime_graphics_ImageType.DATA && !image.get_premultiplied()) { - gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1); - } else if(!image.get_premultiplied() && image.get_transparent()) { - gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL,0); - image = image.clone(); - image.set_premultiplied(true); - } - if(image.get_format() != 0) { - image = image.clone(); - image.set_format(0); - image.buffer.premultiplied = true; - } - return image; - } - ,__getTexture: function() { - return this.__textureID; - } - ,__setSamplerState: function(state) { - if(!state.equals(this.__samplerState)) { - var gl = this.__context.gl; - if(this.__textureTarget == this.__context.gl.TEXTURE_CUBE_MAP) { - this.__context.__bindGLTextureCubeMap(this.__textureID); - } else { - this.__context.__bindGLTexture2D(this.__textureID); - } - var wrapModeS = 0; - var wrapModeT = 0; - switch(state.wrap) { - case 0: - wrapModeS = gl.CLAMP_TO_EDGE; - wrapModeT = gl.CLAMP_TO_EDGE; - break; - case 1: - wrapModeS = gl.CLAMP_TO_EDGE; - wrapModeT = gl.REPEAT; - break; - case 2: - wrapModeS = gl.REPEAT; - wrapModeT = gl.REPEAT; - break; - case 3: - wrapModeS = gl.REPEAT; - wrapModeT = gl.CLAMP_TO_EDGE; - break; - default: - throw new js__$Boot_HaxeError(new openfl_errors_Error("wrap bad enum")); - } - var magFilter = 0; - var minFilter = 0; - if(state.filter == 5) { - magFilter = gl.NEAREST; - } else { - magFilter = gl.LINEAR; - } - switch(state.mipfilter) { - case 0: - minFilter = state.filter == 5 ? gl.NEAREST_MIPMAP_LINEAR : gl.LINEAR_MIPMAP_LINEAR; - break; - case 1: - minFilter = state.filter == 5 ? gl.NEAREST_MIPMAP_NEAREST : gl.LINEAR_MIPMAP_NEAREST; - break; - case 2: - minFilter = state.filter == 5 ? gl.NEAREST : gl.LINEAR; - break; - default: - throw new js__$Boot_HaxeError(new openfl_errors_Error("mipfiter bad enum")); - } - gl.texParameteri(this.__textureTarget,gl.TEXTURE_MIN_FILTER,minFilter); - gl.texParameteri(this.__textureTarget,gl.TEXTURE_MAG_FILTER,magFilter); - gl.texParameteri(this.__textureTarget,gl.TEXTURE_WRAP_S,wrapModeS); - gl.texParameteri(this.__textureTarget,gl.TEXTURE_WRAP_T,wrapModeT); - var tmp = state.lodBias != 0.0; - if(this.__samplerState == null) { - this.__samplerState = state.clone(); - } - this.__samplerState.copyFrom(state); - return true; - } - return false; - } - ,__uploadFromImage: function(image) { - var gl = this.__context.gl; - var internalFormat; - var format; - if(this.__textureTarget != gl.TEXTURE_2D) { - return; - } - if(image.buffer.bitsPerPixel == 1) { - internalFormat = gl.ALPHA; - format = gl.ALPHA; - } else { - internalFormat = openfl_display3D_textures_TextureBase.__textureInternalFormat; - format = openfl_display3D_textures_TextureBase.__textureFormat; - } - this.__context.__bindGLTexture2D(this.__textureID); - if(image.type != lime_graphics_ImageType.DATA && !image.get_premultiplied()) { - gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1); - } else if(!image.get_premultiplied() && image.get_transparent()) { - gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1); - } - if(image.type == lime_graphics_ImageType.DATA) { - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D(gl,gl.TEXTURE_2D,0,internalFormat,image.buffer.width,image.buffer.height,0,format,gl.UNSIGNED_BYTE,image.get_data()); - } else { - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D(gl,gl.TEXTURE_2D,0,internalFormat,format,gl.UNSIGNED_BYTE,image.get_src()); - } - this.__context.__bindGLTexture2D(null); - } - ,__class__: openfl_display3D_textures_TextureBase -}); -var openfl_display3D_textures_CubeTexture = function(context,size,format,optimizeForRenderToTexture,streamingLevels) { - openfl_display3D_textures_TextureBase.call(this,context); - this.__size = size; - this.__width = this.__height = this.__size; - this.__optimizeForRenderToTexture = optimizeForRenderToTexture; - this.__streamingLevels = streamingLevels; - this.__textureTarget = this.__context.gl.TEXTURE_CUBE_MAP; - this.__uploadedSides = 0; -}; -$hxClasses["openfl.display3D.textures.CubeTexture"] = openfl_display3D_textures_CubeTexture; -openfl_display3D_textures_CubeTexture.__name__ = "openfl.display3D.textures.CubeTexture"; -openfl_display3D_textures_CubeTexture.__super__ = openfl_display3D_textures_TextureBase; -openfl_display3D_textures_CubeTexture.prototype = $extend(openfl_display3D_textures_TextureBase.prototype,{ - __framebufferSurface: null - ,__size: null - ,__uploadedSides: null - ,uploadCompressedTextureFromByteArray: function(data,byteArrayOffset,async) { - if(async == null) { - async = false; - } - var _gthis = this; - if(!async) { - this.__uploadCompressedTextureFromByteArray(data,byteArrayOffset); - } else { - haxe_Timer.delay(function() { - _gthis.__uploadCompressedTextureFromByteArray(data,byteArrayOffset); - var event = null; - event = new openfl_events_Event("textureReady"); - _gthis.dispatchEvent(event); - },1); - } - } - ,uploadFromBitmapData: function(source,side,miplevel,generateMipmap) { - if(generateMipmap == null) { - generateMipmap = false; - } - if(miplevel == null) { - miplevel = 0; - } - if(source == null) { - return; - } - var size = this.__size >> miplevel; - if(size == 0) { - return; - } - var image = this.__getImage(source); - if(image == null) { - return; - } - if(miplevel == 0 && image.buffer != null && image.buffer.data == null && image.buffer.get_src() != null) { - var gl = this.__context.gl; - var size1 = this.__size >> miplevel; - if(size1 == 0) { - return; - } - var target = this.__sideToTarget(side); - this.__context.__bindGLTextureCubeMap(this.__textureID); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D(gl,target,miplevel,this.__internalFormat,this.__format,gl.UNSIGNED_BYTE,image.buffer.get_src()); - this.__context.__bindGLTextureCubeMap(null); - this.__uploadedSides |= 1 << side; - return; - } - this.uploadFromTypedArray(image.get_data(),side,miplevel); - } - ,uploadFromByteArray: function(data,byteArrayOffset,side,miplevel) { - if(miplevel == null) { - miplevel = 0; - } - if(byteArrayOffset == 0) { - this.uploadFromTypedArray(data.b,side,miplevel); - return; - } - var elements = null; - var array = null; - var vector = null; - var view = null; - var buffer = openfl_utils__$ByteArray_ByteArray_$Impl_$.toArrayBuffer(data); - var byteoffset = byteArrayOffset; - var len = null; - if(byteoffset == null) { - byteoffset = 0; - } - var this1; - if(elements != null) { - this1 = new Uint8Array(elements); - } else if(array != null) { - this1 = new Uint8Array(array); - } else if(vector != null) { - this1 = new Uint8Array(vector.__array); - } else if(view != null) { - this1 = new Uint8Array(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Uint8Array(buffer,byteoffset); - } else { - this1 = new Uint8Array(buffer,byteoffset,len); - } - } else { - this1 = null; - } - this.uploadFromTypedArray(this1,side,miplevel); - } - ,uploadFromTypedArray: function(data,side,miplevel) { - if(miplevel == null) { - miplevel = 0; - } - if(data == null) { - return; - } - var gl = this.__context.gl; - var size = this.__size >> miplevel; - if(size == 0) { - return; - } - var target = this.__sideToTarget(side); - this.__context.__bindGLTextureCubeMap(this.__textureID); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D(gl,target,miplevel,this.__internalFormat,size,size,0,this.__format,gl.UNSIGNED_BYTE,data); - this.__context.__bindGLTextureCubeMap(null); - this.__uploadedSides |= 1 << side; - } - ,__getGLFramebuffer: function(enableDepthAndStencil,antiAlias,surfaceSelector) { - var gl = this.__context.gl; - if(this.__glFramebuffer == null) { - this.__glFramebuffer = gl.createFramebuffer(); - this.__framebufferSurface = -1; - } - if(this.__framebufferSurface != surfaceSelector) { - this.__framebufferSurface = surfaceSelector; - this.__context.__bindGLFramebuffer(this.__glFramebuffer); - gl.framebufferTexture2D(gl.FRAMEBUFFER,gl.COLOR_ATTACHMENT0,gl.TEXTURE_CUBE_MAP_POSITIVE_X + surfaceSelector,this.__textureID,0); - if(this.__context.__enableErrorChecking) { - var code = gl.checkFramebufferStatus(gl.FRAMEBUFFER); - if(code != gl.FRAMEBUFFER_COMPLETE) { - lime_utils_Log.error("Error: Context3D.setRenderToTexture status:" + code + " width:" + this.__width + " height:" + this.__height,{ fileName : "openfl/display3D/textures/CubeTexture.hx", lineNumber : 278, className : "openfl.display3D.textures.CubeTexture", methodName : "__getGLFramebuffer"}); - } - } - } - return openfl_display3D_textures_TextureBase.prototype.__getGLFramebuffer.call(this,enableDepthAndStencil,antiAlias,surfaceSelector); - } - ,__setSamplerState: function(state) { - if(openfl_display3D_textures_TextureBase.prototype.__setSamplerState.call(this,state)) { - var gl = this.__context.gl; - if(state.mipfilter != 2 && !this.__samplerState.mipmapGenerated) { - gl.generateMipmap(gl.TEXTURE_CUBE_MAP); - this.__samplerState.mipmapGenerated = true; - } - if(openfl_display3D_Context3D.__glMaxTextureMaxAnisotropy != 0) { - var aniso; - switch(state.filter) { - case 0: - aniso = 16; - break; - case 1: - aniso = 2; - break; - case 2: - aniso = 4; - break; - case 3: - aniso = 8; - break; - default: - aniso = 1; - } - if(aniso > openfl_display3D_Context3D.__glMaxTextureMaxAnisotropy) { - aniso = openfl_display3D_Context3D.__glMaxTextureMaxAnisotropy; - } - gl.texParameterf(gl.TEXTURE_CUBE_MAP,openfl_display3D_Context3D.__glTextureMaxAnisotropy,aniso); - } - return true; - } - return false; - } - ,__sideToTarget: function(side) { - var gl = this.__context.gl; - switch(side) { - case 0: - return gl.TEXTURE_CUBE_MAP_POSITIVE_X; - case 1: - return gl.TEXTURE_CUBE_MAP_NEGATIVE_X; - case 2: - return gl.TEXTURE_CUBE_MAP_POSITIVE_Y; - case 3: - return gl.TEXTURE_CUBE_MAP_NEGATIVE_Y; - case 4: - return gl.TEXTURE_CUBE_MAP_POSITIVE_Z; - case 5: - return gl.TEXTURE_CUBE_MAP_NEGATIVE_Z; - default: - throw new js__$Boot_HaxeError(new openfl_errors_IllegalOperationError()); - } - } - ,__uploadCompressedTextureFromByteArray: function(data,byteArrayOffset) { - var _gthis = this; - var reader = new openfl__$internal_formats_atf_ATFReader(data,byteArrayOffset); - var alpha = reader.readHeader(this.__size,this.__size,true); - var gl = this.__context.gl; - this.__context.__bindGLTextureCubeMap(this.__textureID); - var hasTexture = false; - reader.readTextures(function(side,level,gpuFormat,width,height,blockLength,bytes) { - var format = alpha ? openfl_display3D_textures_TextureBase.__compressedFormatsAlpha.h[gpuFormat] : openfl_display3D_textures_TextureBase.__compressedFormats.h[gpuFormat]; - if(format == 0) { - return; - } - hasTexture = true; - var target = _gthis.__sideToTarget(side); - _gthis.__format = format; - _gthis.__internalFormat = format; - if(alpha && gpuFormat == 2) { - var size = blockLength / 2 | 0; - var elements = null; - var array = null; - var vector = null; - var view = null; - var buffer = bytes.b.buffer; - var byteoffset = 0; - if(byteoffset == null) { - byteoffset = 0; - } - var this1; - if(elements != null) { - this1 = new Uint8Array(elements); - } else if(array != null) { - this1 = new Uint8Array(array); - } else if(vector != null) { - this1 = new Uint8Array(vector.__array); - } else if(view != null) { - this1 = new Uint8Array(view); - } else if(buffer != null) { - if(size == null) { - this1 = new Uint8Array(buffer,byteoffset); - } else { - this1 = new Uint8Array(buffer,byteoffset,size); - } - } else { - this1 = null; - } - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.compressedTexImage2D(gl,target,level,_gthis.__internalFormat,width,height,0,this1); - var alphaTexture = new openfl_display3D_textures_CubeTexture(_gthis.__context,_gthis.__size,3,_gthis.__optimizeForRenderToTexture,_gthis.__streamingLevels); - alphaTexture.__format = format; - alphaTexture.__internalFormat = format; - _gthis.__context.__bindGLTextureCubeMap(alphaTexture.__textureID); - var elements1 = null; - var array1 = null; - var vector1 = null; - var view1 = null; - var buffer1 = bytes.b.buffer; - var byteoffset1 = size; - if(byteoffset1 == null) { - byteoffset1 = 0; - } - var this2; - if(elements1 != null) { - this2 = new Uint8Array(elements1); - } else if(array1 != null) { - this2 = new Uint8Array(array1); - } else if(vector1 != null) { - this2 = new Uint8Array(vector1.__array); - } else if(view1 != null) { - this2 = new Uint8Array(view1); - } else if(buffer1 != null) { - if(size == null) { - this2 = new Uint8Array(buffer1,byteoffset1); - } else { - this2 = new Uint8Array(buffer1,byteoffset1,size); - } - } else { - this2 = null; - } - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.compressedTexImage2D(gl,target,level,alphaTexture.__internalFormat,width,height,0,this2); - _gthis.__alphaTexture = alphaTexture; - } else { - var elements2 = null; - var array2 = null; - var vector2 = null; - var view2 = null; - var buffer2 = bytes.b.buffer; - var byteoffset2 = 0; - if(byteoffset2 == null) { - byteoffset2 = 0; - } - var this3; - if(elements2 != null) { - this3 = new Uint8Array(elements2); - } else if(array2 != null) { - this3 = new Uint8Array(array2); - } else if(vector2 != null) { - this3 = new Uint8Array(vector2.__array); - } else if(view2 != null) { - this3 = new Uint8Array(view2); - } else if(buffer2 != null) { - if(blockLength == null) { - this3 = new Uint8Array(buffer2,byteoffset2); - } else { - this3 = new Uint8Array(buffer2,byteoffset2,blockLength); - } - } else { - this3 = null; - } - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.compressedTexImage2D(gl,target,level,_gthis.__internalFormat,width,height,0,this3); - } - }); - if(!hasTexture) { - var elements3 = this.__size * this.__size * 4; - var array3 = null; - var vector3 = null; - var view3 = null; - var buffer3 = null; - var len = null; - var this4; - if(elements3 != null) { - this4 = new Uint8Array(elements3); - } else if(array3 != null) { - this4 = new Uint8Array(array3); - } else if(vector3 != null) { - this4 = new Uint8Array(vector3.__array); - } else if(view3 != null) { - this4 = new Uint8Array(view3); - } else if(buffer3 != null) { - if(len == null) { - this4 = new Uint8Array(buffer3,0); - } else { - this4 = new Uint8Array(buffer3,0,len); - } - } else { - this4 = null; - } - var data1 = this4; - var tmp = this.__sideToTarget(0); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D(gl,tmp,0,this.__internalFormat,this.__size,this.__size,0,this.__format,gl.UNSIGNED_BYTE,data1); - var elements4 = this.__size * this.__size * 4; - var array4 = null; - var vector4 = null; - var view4 = null; - var buffer4 = null; - var len1 = null; - var this5; - if(elements4 != null) { - this5 = new Uint8Array(elements4); - } else if(array4 != null) { - this5 = new Uint8Array(array4); - } else if(vector4 != null) { - this5 = new Uint8Array(vector4.__array); - } else if(view4 != null) { - this5 = new Uint8Array(view4); - } else if(buffer4 != null) { - if(len1 == null) { - this5 = new Uint8Array(buffer4,0); - } else { - this5 = new Uint8Array(buffer4,0,len1); - } - } else { - this5 = null; - } - var data2 = this5; - var tmp1 = this.__sideToTarget(1); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D(gl,tmp1,0,this.__internalFormat,this.__size,this.__size,0,this.__format,gl.UNSIGNED_BYTE,data2); - var elements5 = this.__size * this.__size * 4; - var array5 = null; - var vector5 = null; - var view5 = null; - var buffer5 = null; - var len2 = null; - var this6; - if(elements5 != null) { - this6 = new Uint8Array(elements5); - } else if(array5 != null) { - this6 = new Uint8Array(array5); - } else if(vector5 != null) { - this6 = new Uint8Array(vector5.__array); - } else if(view5 != null) { - this6 = new Uint8Array(view5); - } else if(buffer5 != null) { - if(len2 == null) { - this6 = new Uint8Array(buffer5,0); - } else { - this6 = new Uint8Array(buffer5,0,len2); - } - } else { - this6 = null; - } - var data3 = this6; - var tmp2 = this.__sideToTarget(2); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D(gl,tmp2,0,this.__internalFormat,this.__size,this.__size,0,this.__format,gl.UNSIGNED_BYTE,data3); - var elements6 = this.__size * this.__size * 4; - var array6 = null; - var vector6 = null; - var view6 = null; - var buffer6 = null; - var len3 = null; - var this7; - if(elements6 != null) { - this7 = new Uint8Array(elements6); - } else if(array6 != null) { - this7 = new Uint8Array(array6); - } else if(vector6 != null) { - this7 = new Uint8Array(vector6.__array); - } else if(view6 != null) { - this7 = new Uint8Array(view6); - } else if(buffer6 != null) { - if(len3 == null) { - this7 = new Uint8Array(buffer6,0); - } else { - this7 = new Uint8Array(buffer6,0,len3); - } - } else { - this7 = null; - } - var data4 = this7; - var tmp3 = this.__sideToTarget(3); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D(gl,tmp3,0,this.__internalFormat,this.__size,this.__size,0,this.__format,gl.UNSIGNED_BYTE,data4); - var elements7 = this.__size * this.__size * 4; - var array7 = null; - var vector7 = null; - var view7 = null; - var buffer7 = null; - var len4 = null; - var this8; - if(elements7 != null) { - this8 = new Uint8Array(elements7); - } else if(array7 != null) { - this8 = new Uint8Array(array7); - } else if(vector7 != null) { - this8 = new Uint8Array(vector7.__array); - } else if(view7 != null) { - this8 = new Uint8Array(view7); - } else if(buffer7 != null) { - if(len4 == null) { - this8 = new Uint8Array(buffer7,0); - } else { - this8 = new Uint8Array(buffer7,0,len4); - } - } else { - this8 = null; - } - var data5 = this8; - var tmp4 = this.__sideToTarget(4); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D(gl,tmp4,0,this.__internalFormat,this.__size,this.__size,0,this.__format,gl.UNSIGNED_BYTE,data5); - var elements8 = this.__size * this.__size * 4; - var array8 = null; - var vector8 = null; - var view8 = null; - var buffer8 = null; - var len5 = null; - var this9; - if(elements8 != null) { - this9 = new Uint8Array(elements8); - } else if(array8 != null) { - this9 = new Uint8Array(array8); - } else if(vector8 != null) { - this9 = new Uint8Array(vector8.__array); - } else if(view8 != null) { - this9 = new Uint8Array(view8); - } else if(buffer8 != null) { - if(len5 == null) { - this9 = new Uint8Array(buffer8,0); - } else { - this9 = new Uint8Array(buffer8,0,len5); - } - } else { - this9 = null; - } - var data6 = this9; - var tmp5 = this.__sideToTarget(5); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D(gl,tmp5,0,this.__internalFormat,this.__size,this.__size,0,this.__format,gl.UNSIGNED_BYTE,data6); - } - this.__context.__bindGLTextureCubeMap(null); - } - ,__class__: openfl_display3D_textures_CubeTexture -}); -var openfl_display3D_textures_RectangleTexture = function(context,width,height,format,optimizeForRenderToTexture) { - openfl_display3D_textures_TextureBase.call(this,context); - this.__width = width; - this.__height = height; - this.__optimizeForRenderToTexture = optimizeForRenderToTexture; - this.__textureTarget = this.__context.gl.TEXTURE_2D; - this.uploadFromTypedArray(null); - if(optimizeForRenderToTexture) { - this.__getGLFramebuffer(true,0,0); - } -}; -$hxClasses["openfl.display3D.textures.RectangleTexture"] = openfl_display3D_textures_RectangleTexture; -openfl_display3D_textures_RectangleTexture.__name__ = "openfl.display3D.textures.RectangleTexture"; -openfl_display3D_textures_RectangleTexture.__super__ = openfl_display3D_textures_TextureBase; -openfl_display3D_textures_RectangleTexture.prototype = $extend(openfl_display3D_textures_TextureBase.prototype,{ - uploadFromBitmapData: function(source) { - if(source == null) { - return; - } - var image = this.__getImage(source); - if(image == null) { - return; - } - if(image.buffer != null && image.buffer.data == null && image.buffer.get_src() != null) { - var gl = this.__context.gl; - this.__context.__bindGLTexture2D(this.__textureID); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D(gl,this.__textureTarget,0,this.__internalFormat,this.__format,gl.UNSIGNED_BYTE,image.buffer.get_src()); - this.__context.__bindGLTexture2D(null); - return; - } - this.uploadFromTypedArray(image.get_data()); - } - ,uploadFromByteArray: function(data,byteArrayOffset) { - if(byteArrayOffset == 0) { - this.uploadFromTypedArray(data.b); - return; - } - var elements = null; - var array = null; - var vector = null; - var view = null; - var buffer = openfl_utils__$ByteArray_ByteArray_$Impl_$.toArrayBuffer(data); - var byteoffset = byteArrayOffset; - var len = null; - if(byteoffset == null) { - byteoffset = 0; - } - var this1; - if(elements != null) { - this1 = new Uint8Array(elements); - } else if(array != null) { - this1 = new Uint8Array(array); - } else if(vector != null) { - this1 = new Uint8Array(vector.__array); - } else if(view != null) { - this1 = new Uint8Array(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Uint8Array(buffer,byteoffset); - } else { - this1 = new Uint8Array(buffer,byteoffset,len); - } - } else { - this1 = null; - } - this.uploadFromTypedArray(this1); - } - ,uploadFromTypedArray: function(data) { - var gl = this.__context.gl; - this.__context.__bindGLTexture2D(this.__textureID); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D(gl,this.__textureTarget,0,this.__internalFormat,this.__width,this.__height,0,this.__format,gl.UNSIGNED_BYTE,data); - this.__context.__bindGLTexture2D(null); - } - ,__setSamplerState: function(state) { - if(openfl_display3D_textures_TextureBase.prototype.__setSamplerState.call(this,state)) { - var gl = this.__context.gl; - if(openfl_display3D_Context3D.__glMaxTextureMaxAnisotropy != 0) { - var aniso; - switch(state.filter) { - case 0: - aniso = 16; - break; - case 1: - aniso = 2; - break; - case 2: - aniso = 4; - break; - case 3: - aniso = 8; - break; - default: - aniso = 1; - } - if(aniso > openfl_display3D_Context3D.__glMaxTextureMaxAnisotropy) { - aniso = openfl_display3D_Context3D.__glMaxTextureMaxAnisotropy; - } - gl.texParameterf(gl.TEXTURE_2D,openfl_display3D_Context3D.__glTextureMaxAnisotropy,aniso); - } - return true; - } - return false; - } - ,__class__: openfl_display3D_textures_RectangleTexture -}); -var openfl_display3D_textures_Texture = function(context,width,height,format,optimizeForRenderToTexture,streamingLevels) { - openfl_display3D_textures_TextureBase.call(this,context); - this.__width = width; - this.__height = height; - this.__optimizeForRenderToTexture = optimizeForRenderToTexture; - this.__streamingLevels = streamingLevels; - var gl = this.__context.gl; - this.__textureTarget = gl.TEXTURE_2D; - this.__context.__bindGLTexture2D(this.__textureID); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D(gl,this.__textureTarget,0,this.__internalFormat,this.__width,this.__height,0,this.__format,gl.UNSIGNED_BYTE,null); - this.__context.__bindGLTexture2D(null); - if(optimizeForRenderToTexture) { - this.__getGLFramebuffer(true,0,0); - } -}; -$hxClasses["openfl.display3D.textures.Texture"] = openfl_display3D_textures_Texture; -openfl_display3D_textures_Texture.__name__ = "openfl.display3D.textures.Texture"; -openfl_display3D_textures_Texture.__super__ = openfl_display3D_textures_TextureBase; -openfl_display3D_textures_Texture.prototype = $extend(openfl_display3D_textures_TextureBase.prototype,{ - uploadCompressedTextureFromByteArray: function(data,byteArrayOffset,async) { - if(async == null) { - async = false; - } - var _gthis = this; - if(!async) { - this.__uploadCompressedTextureFromByteArray(data,byteArrayOffset); - } else { - haxe_Timer.delay(function() { - _gthis.__uploadCompressedTextureFromByteArray(data,byteArrayOffset); - var event = null; - event = new openfl_events_Event("textureReady"); - _gthis.dispatchEvent(event); - },1); - } - } - ,uploadFromBitmapData: function(source,miplevel,generateMipmap) { - if(generateMipmap == null) { - generateMipmap = false; - } - if(miplevel == null) { - miplevel = 0; - } - if(source == null) { - return; - } - var width = this.__width >> miplevel; - var height = this.__height >> miplevel; - if(width == 0 && height == 0) { - return; - } - if(width == 0) { - width = 1; - } - if(height == 0) { - height = 1; - } - if(source.width != width || source.height != height) { - var copy = new openfl_display_BitmapData(width,height,true,0); - copy.draw(source); - source = copy; - } - var image = this.__getImage(source); - if(image == null) { - return; - } - if(miplevel == 0 && image.buffer != null && image.buffer.data == null && image.buffer.get_src() != null) { - var gl = this.__context.gl; - var width1 = this.__width >> miplevel; - var height1 = this.__height >> miplevel; - if(width1 == 0 && height1 == 0) { - return; - } - if(width1 == 0) { - width1 = 1; - } - if(height1 == 0) { - height1 = 1; - } - this.__context.__bindGLTexture2D(this.__textureID); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D(gl,this.__textureTarget,miplevel,this.__internalFormat,this.__format,gl.UNSIGNED_BYTE,image.buffer.get_src()); - this.__context.__bindGLTexture2D(null); - return; - } - this.uploadFromTypedArray(image.get_data(),miplevel); - } - ,uploadFromByteArray: function(data,byteArrayOffset,miplevel) { - if(miplevel == null) { - miplevel = 0; - } - if(byteArrayOffset == 0) { - this.uploadFromTypedArray(data.b,miplevel); - return; - } - var elements = null; - var array = null; - var vector = null; - var view = null; - var buffer = openfl_utils__$ByteArray_ByteArray_$Impl_$.toArrayBuffer(data); - var byteoffset = byteArrayOffset; - var len = null; - if(byteoffset == null) { - byteoffset = 0; - } - var this1; - if(elements != null) { - this1 = new Uint8Array(elements); - } else if(array != null) { - this1 = new Uint8Array(array); - } else if(vector != null) { - this1 = new Uint8Array(vector.__array); - } else if(view != null) { - this1 = new Uint8Array(view); - } else if(buffer != null) { - if(len == null) { - this1 = new Uint8Array(buffer,byteoffset); - } else { - this1 = new Uint8Array(buffer,byteoffset,len); - } - } else { - this1 = null; - } - this.uploadFromTypedArray(this1,miplevel); - } - ,uploadFromTypedArray: function(data,miplevel) { - if(miplevel == null) { - miplevel = 0; - } - if(data == null) { - return; - } - var gl = this.__context.gl; - var width = this.__width >> miplevel; - var height = this.__height >> miplevel; - if(width == 0 && height == 0) { - return; - } - if(width == 0) { - width = 1; - } - if(height == 0) { - height = 1; - } - this.__context.__bindGLTexture2D(this.__textureID); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D(gl,this.__textureTarget,miplevel,this.__internalFormat,width,height,0,this.__format,gl.UNSIGNED_BYTE,data); - this.__context.__bindGLTexture2D(null); - } - ,__setSamplerState: function(state) { - if(openfl_display3D_textures_TextureBase.prototype.__setSamplerState.call(this,state)) { - var gl = this.__context.gl; - if(state.mipfilter != 2 && !this.__samplerState.mipmapGenerated) { - gl.generateMipmap(gl.TEXTURE_2D); - this.__samplerState.mipmapGenerated = true; - } - if(openfl_display3D_Context3D.__glMaxTextureMaxAnisotropy != 0) { - var aniso; - switch(state.filter) { - case 0: - aniso = 16; - break; - case 1: - aniso = 2; - break; - case 2: - aniso = 4; - break; - case 3: - aniso = 8; - break; - default: - aniso = 1; - } - if(aniso > openfl_display3D_Context3D.__glMaxTextureMaxAnisotropy) { - aniso = openfl_display3D_Context3D.__glMaxTextureMaxAnisotropy; - } - gl.texParameterf(gl.TEXTURE_2D,openfl_display3D_Context3D.__glTextureMaxAnisotropy,aniso); - } - return true; - } - return false; - } - ,__uploadCompressedTextureFromByteArray: function(data,byteArrayOffset) { - var _gthis = this; - var reader = new openfl__$internal_formats_atf_ATFReader(data,byteArrayOffset); - var alpha = reader.readHeader(this.__width,this.__height,false); - var context = this.__context; - var gl = context.gl; - this.__context.__bindGLTexture2D(this.__textureID); - var hasTexture = false; - reader.readTextures(function(target,level,gpuFormat,width,height,blockLength,bytes) { - var format = alpha ? openfl_display3D_textures_TextureBase.__compressedFormatsAlpha.h[gpuFormat] : openfl_display3D_textures_TextureBase.__compressedFormats.h[gpuFormat]; - if(format == 0) { - return; - } - hasTexture = true; - _gthis.__format = format; - _gthis.__internalFormat = format; - if(alpha && gpuFormat == 2) { - var size = blockLength / 2 | 0; - var elements = null; - var array = null; - var vector = null; - var view = null; - var buffer = bytes.b.buffer; - var byteoffset = 0; - if(byteoffset == null) { - byteoffset = 0; - } - var this1; - if(elements != null) { - this1 = new Uint8Array(elements); - } else if(array != null) { - this1 = new Uint8Array(array); - } else if(vector != null) { - this1 = new Uint8Array(vector.__array); - } else if(view != null) { - this1 = new Uint8Array(view); - } else if(buffer != null) { - if(size == null) { - this1 = new Uint8Array(buffer,byteoffset); - } else { - this1 = new Uint8Array(buffer,byteoffset,size); - } - } else { - this1 = null; - } - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.compressedTexImage2D(gl,_gthis.__textureTarget,level,_gthis.__internalFormat,width,height,0,this1); - var alphaTexture = new openfl_display3D_textures_Texture(_gthis.__context,_gthis.__width,_gthis.__height,3,_gthis.__optimizeForRenderToTexture,_gthis.__streamingLevels); - alphaTexture.__format = format; - alphaTexture.__internalFormat = format; - _gthis.__context.__bindGLTexture2D(alphaTexture.__textureID); - var elements1 = null; - var array1 = null; - var vector1 = null; - var view1 = null; - var buffer1 = bytes.b.buffer; - var byteoffset1 = size; - if(byteoffset1 == null) { - byteoffset1 = 0; - } - var this2; - if(elements1 != null) { - this2 = new Uint8Array(elements1); - } else if(array1 != null) { - this2 = new Uint8Array(array1); - } else if(vector1 != null) { - this2 = new Uint8Array(vector1.__array); - } else if(view1 != null) { - this2 = new Uint8Array(view1); - } else if(buffer1 != null) { - if(size == null) { - this2 = new Uint8Array(buffer1,byteoffset1); - } else { - this2 = new Uint8Array(buffer1,byteoffset1,size); - } - } else { - this2 = null; - } - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.compressedTexImage2D(gl,alphaTexture.__textureTarget,level,alphaTexture.__internalFormat,width,height,0,this2); - _gthis.__alphaTexture = alphaTexture; - } else { - var elements2 = null; - var array2 = null; - var vector2 = null; - var view2 = null; - var buffer2 = bytes.b.buffer; - var byteoffset2 = 0; - if(byteoffset2 == null) { - byteoffset2 = 0; - } - var this3; - if(elements2 != null) { - this3 = new Uint8Array(elements2); - } else if(array2 != null) { - this3 = new Uint8Array(array2); - } else if(vector2 != null) { - this3 = new Uint8Array(vector2.__array); - } else if(view2 != null) { - this3 = new Uint8Array(view2); - } else if(buffer2 != null) { - if(blockLength == null) { - this3 = new Uint8Array(buffer2,byteoffset2); - } else { - this3 = new Uint8Array(buffer2,byteoffset2,blockLength); - } - } else { - this3 = null; - } - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.compressedTexImage2D(gl,_gthis.__textureTarget,level,_gthis.__internalFormat,width,height,0,this3); - } - }); - if(!hasTexture) { - var elements3 = this.__width * this.__height * 4; - var array3 = null; - var vector3 = null; - var view3 = null; - var buffer3 = null; - var len = null; - var this4; - if(elements3 != null) { - this4 = new Uint8Array(elements3); - } else if(array3 != null) { - this4 = new Uint8Array(array3); - } else if(vector3 != null) { - this4 = new Uint8Array(vector3.__array); - } else if(view3 != null) { - this4 = new Uint8Array(view3); - } else if(buffer3 != null) { - if(len == null) { - this4 = new Uint8Array(buffer3,0); - } else { - this4 = new Uint8Array(buffer3,0,len); - } - } else { - this4 = null; - } - var data1 = this4; - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D(gl,this.__textureTarget,0,this.__internalFormat,this.__width,this.__height,0,this.__format,gl.UNSIGNED_BYTE,data1); - } - this.__context.__bindGLTexture2D(null); - } - ,__class__: openfl_display3D_textures_Texture -}); -var openfl_display3D_textures_VideoTexture = function(context) { - openfl_display3D_textures_TextureBase.call(this,context); - this.__textureTarget = this.__context.gl.TEXTURE_2D; -}; -$hxClasses["openfl.display3D.textures.VideoTexture"] = openfl_display3D_textures_VideoTexture; -openfl_display3D_textures_VideoTexture.__name__ = "openfl.display3D.textures.VideoTexture"; -openfl_display3D_textures_VideoTexture.__super__ = openfl_display3D_textures_TextureBase; -openfl_display3D_textures_VideoTexture.prototype = $extend(openfl_display3D_textures_TextureBase.prototype,{ - videoHeight: null - ,videoWidth: null - ,__netStream: null - ,attachNetStream: function(netStream) { - var _gthis = this; - if(this.__netStream != null) { - this.__netStream.__video.removeEventListener("canplay",$bind(this,this.__onCanPlay),false); - } - this.__netStream = netStream; - if(this.__netStream.__video.readyState == 4) { - haxe_Timer.delay(function() { - _gthis.__textureReady(); - },0); - } else { - this.__netStream.__video.addEventListener("canplay",$bind(this,this.__onCanPlay),false); - } - } - ,__onCanPlay: function(_) { - this.__textureReady(); - } - ,__getTexture: function() { - if((!this.__netStream.__video.paused || this.__netStream.get___seeking()) && this.__netStream.__video.readyState > 0) { - this.__netStream.set___seeking(false); - var gl = this.__context.gl; - this.__context.__bindGLTexture2D(this.__textureID); - lime_graphics__$WebGLRenderContext_WebGLRenderContext_$Impl_$.texImage2D(gl,gl.TEXTURE_2D,0,gl.RGBA,gl.RGBA,gl.UNSIGNED_BYTE,this.__netStream.__video); - } - return this.__textureID; - } - ,__textureReady: function() { - this.videoWidth = this.__netStream.__video.videoWidth; - this.videoHeight = this.__netStream.__video.videoHeight; - var event = null; - event = new openfl_events_Event("textureReady"); - this.dispatchEvent(event); - } - ,__class__: openfl_display3D_textures_VideoTexture -}); -var openfl_errors_Error = function(message,id) { - if(id == null) { - id = 0; - } - if(message == null) { - message = ""; - } - this.message = message; - this.errorID = id; - this.name = "Error"; -}; -$hxClasses["openfl.errors.Error"] = openfl_errors_Error; -openfl_errors_Error.__name__ = "openfl.errors.Error"; -openfl_errors_Error.prototype = { - errorID: null - ,message: null - ,name: null - ,getStackTrace: function() { - return haxe_CallStack.toString(haxe_CallStack.exceptionStack()); - } - ,toString: function() { - if(this.message != null) { - return this.message; - } else { - return "Error"; - } - } - ,__class__: openfl_errors_Error -}; -var openfl_errors_ArgumentError = function(message) { - if(message == null) { - message = ""; - } - openfl_errors_Error.call(this,message); - this.name = "ArgumentError"; -}; -$hxClasses["openfl.errors.ArgumentError"] = openfl_errors_ArgumentError; -openfl_errors_ArgumentError.__name__ = "openfl.errors.ArgumentError"; -openfl_errors_ArgumentError.__super__ = openfl_errors_Error; -openfl_errors_ArgumentError.prototype = $extend(openfl_errors_Error.prototype,{ - __class__: openfl_errors_ArgumentError -}); -var openfl_errors_IOError = function(message) { - if(message == null) { - message = ""; - } - openfl_errors_Error.call(this,message); - this.name = "IOError"; -}; -$hxClasses["openfl.errors.IOError"] = openfl_errors_IOError; -openfl_errors_IOError.__name__ = "openfl.errors.IOError"; -openfl_errors_IOError.__super__ = openfl_errors_Error; -openfl_errors_IOError.prototype = $extend(openfl_errors_Error.prototype,{ - __class__: openfl_errors_IOError -}); -var openfl_errors_EOFError = function(message,id) { - if(id == null) { - id = 0; - } - openfl_errors_IOError.call(this,"End of file was encountered"); - this.name = "EOFError"; - this.errorID = 2030; -}; -$hxClasses["openfl.errors.EOFError"] = openfl_errors_EOFError; -openfl_errors_EOFError.__name__ = "openfl.errors.EOFError"; -openfl_errors_EOFError.__super__ = openfl_errors_IOError; -openfl_errors_EOFError.prototype = $extend(openfl_errors_IOError.prototype,{ - __class__: openfl_errors_EOFError -}); -var openfl_errors_IllegalOperationError = function(message) { - if(message == null) { - message = ""; - } - openfl_errors_Error.call(this,message,0); - this.name = "IllegalOperationError"; -}; -$hxClasses["openfl.errors.IllegalOperationError"] = openfl_errors_IllegalOperationError; -openfl_errors_IllegalOperationError.__name__ = "openfl.errors.IllegalOperationError"; -openfl_errors_IllegalOperationError.__super__ = openfl_errors_Error; -openfl_errors_IllegalOperationError.prototype = $extend(openfl_errors_Error.prototype,{ - __class__: openfl_errors_IllegalOperationError -}); -var openfl_errors_RangeError = function(message) { - if(message == null) { - message = ""; - } - openfl_errors_Error.call(this,message,0); - this.name = "RangeError"; -}; -$hxClasses["openfl.errors.RangeError"] = openfl_errors_RangeError; -openfl_errors_RangeError.__name__ = "openfl.errors.RangeError"; -openfl_errors_RangeError.__super__ = openfl_errors_Error; -openfl_errors_RangeError.prototype = $extend(openfl_errors_Error.prototype,{ - __class__: openfl_errors_RangeError -}); -var openfl_errors_TypeError = function(message) { - if(message == null) { - message = ""; - } - openfl_errors_Error.call(this,message,0); - this.name = "TypeError"; -}; -$hxClasses["openfl.errors.TypeError"] = openfl_errors_TypeError; -openfl_errors_TypeError.__name__ = "openfl.errors.TypeError"; -openfl_errors_TypeError.__super__ = openfl_errors_Error; -openfl_errors_TypeError.prototype = $extend(openfl_errors_Error.prototype,{ - __class__: openfl_errors_TypeError -}); -var openfl_events_Event = function(type,bubbles,cancelable) { - if(cancelable == null) { - cancelable = false; - } - if(bubbles == null) { - bubbles = false; - } - this.type = type; - this.bubbles = bubbles; - this.cancelable = cancelable; - this.eventPhase = 2; -}; -$hxClasses["openfl.events.Event"] = openfl_events_Event; -openfl_events_Event.__name__ = "openfl.events.Event"; -openfl_events_Event.prototype = { - bubbles: null - ,cancelable: null - ,currentTarget: null - ,eventPhase: null - ,target: null - ,type: null - ,__isCanceled: null - ,__isCanceledNow: null - ,__preventDefault: null - ,clone: function() { - var event = new openfl_events_Event(this.type,this.bubbles,this.cancelable); - event.eventPhase = this.eventPhase; - event.target = this.target; - event.currentTarget = this.currentTarget; - return event; - } - ,formatToString: function(className,p1,p2,p3,p4,p5) { - var parameters = []; - if(p1 != null) { - parameters.push(p1); - } - if(p2 != null) { - parameters.push(p2); - } - if(p3 != null) { - parameters.push(p3); - } - if(p4 != null) { - parameters.push(p4); - } - if(p5 != null) { - parameters.push(p5); - } - return $bind(this,this.__formatToString).apply(this,[className,parameters]); - } - ,isDefaultPrevented: function() { - return this.__preventDefault; - } - ,preventDefault: function() { - if(this.cancelable) { - this.__preventDefault = true; - } - } - ,stopImmediatePropagation: function() { - this.__isCanceled = true; - this.__isCanceledNow = true; - } - ,stopPropagation: function() { - this.__isCanceled = true; - } - ,toString: function() { - return this.__formatToString("Event",["type","bubbles","cancelable"]); - } - ,__formatToString: function(className,parameters) { - var output = "[" + className; - var arg = null; - var _g = 0; - while(_g < parameters.length) { - var param = parameters[_g]; - ++_g; - arg = Reflect.field(this,param); - if(typeof(arg) == "string") { - output += " " + param + "=\"" + Std.string(arg) + "\""; - } else { - output += " " + param + "=" + Std.string(arg); - } - } - output += "]"; - return output; - } - ,__init: function() { - this.target = null; - this.currentTarget = null; - this.bubbles = false; - this.cancelable = false; - this.eventPhase = 2; - this.__isCanceled = false; - this.__isCanceledNow = false; - this.__preventDefault = false; - } - ,__class__: openfl_events_Event -}; -var openfl_events_AccelerometerEvent = function(type,bubbles,cancelable,timestamp,accelerationX,accelerationY,accelerationZ) { - if(accelerationZ == null) { - accelerationZ = 0; - } - if(accelerationY == null) { - accelerationY = 0; - } - if(accelerationX == null) { - accelerationX = 0; - } - if(timestamp == null) { - timestamp = 0; - } - if(cancelable == null) { - cancelable = false; - } - if(bubbles == null) { - bubbles = false; - } - openfl_events_Event.call(this,type,bubbles,cancelable); - this.timestamp = timestamp; - this.accelerationX = accelerationX; - this.accelerationY = accelerationY; - this.accelerationZ = accelerationZ; -}; -$hxClasses["openfl.events.AccelerometerEvent"] = openfl_events_AccelerometerEvent; -openfl_events_AccelerometerEvent.__name__ = "openfl.events.AccelerometerEvent"; -openfl_events_AccelerometerEvent.__super__ = openfl_events_Event; -openfl_events_AccelerometerEvent.prototype = $extend(openfl_events_Event.prototype,{ - accelerationX: null - ,accelerationY: null - ,accelerationZ: null - ,timestamp: null - ,clone: function() { - var event = new openfl_events_AccelerometerEvent(this.type,this.bubbles,this.cancelable,this.timestamp,this.accelerationX,this.accelerationY,this.accelerationZ); - event.target = this.target; - event.currentTarget = this.currentTarget; - event.eventPhase = this.eventPhase; - return event; - } - ,toString: function() { - return this.__formatToString("AccelerometerEvent",["type","bubbles","cancelable","timestamp","accelerationX","accelerationY","accelerationZ"]); - } - ,__init: function() { - openfl_events_Event.prototype.__init.call(this); - this.timestamp = 0; - this.accelerationX = 0; - this.accelerationY = 0; - this.accelerationZ = 0; - } - ,__class__: openfl_events_AccelerometerEvent -}); -var openfl_events_ActivityEvent = function(type,bubbles,cancelable,activating) { - if(activating == null) { - activating = false; - } - if(cancelable == null) { - cancelable = false; - } - if(bubbles == null) { - bubbles = false; - } - openfl_events_Event.call(this,type,bubbles,cancelable); - this.activating = activating; -}; -$hxClasses["openfl.events.ActivityEvent"] = openfl_events_ActivityEvent; -openfl_events_ActivityEvent.__name__ = "openfl.events.ActivityEvent"; -openfl_events_ActivityEvent.__super__ = openfl_events_Event; -openfl_events_ActivityEvent.prototype = $extend(openfl_events_Event.prototype,{ - activating: null - ,clone: function() { - var event = new openfl_events_ActivityEvent(this.type,this.bubbles,this.cancelable,this.activating); - event.target = this.target; - event.currentTarget = this.currentTarget; - event.eventPhase = this.eventPhase; - return event; - } - ,toString: function() { - return this.__formatToString("ActivityEvent",["type","bubbles","cancelable","activating"]); - } - ,__init: function() { - openfl_events_Event.prototype.__init.call(this); - this.activating = false; - } - ,__class__: openfl_events_ActivityEvent -}); -var openfl_events_TextEvent = function(type,bubbles,cancelable,text) { - if(text == null) { - text = ""; - } - if(cancelable == null) { - cancelable = false; - } - if(bubbles == null) { - bubbles = false; - } - openfl_events_Event.call(this,type,bubbles,cancelable); - this.text = text; -}; -$hxClasses["openfl.events.TextEvent"] = openfl_events_TextEvent; -openfl_events_TextEvent.__name__ = "openfl.events.TextEvent"; -openfl_events_TextEvent.__super__ = openfl_events_Event; -openfl_events_TextEvent.prototype = $extend(openfl_events_Event.prototype,{ - text: null - ,clone: function() { - var event = new openfl_events_TextEvent(this.type,this.bubbles,this.cancelable,this.text); - event.target = this.target; - event.currentTarget = this.currentTarget; - event.eventPhase = this.eventPhase; - return event; - } - ,toString: function() { - return this.__formatToString("TextEvent",["type","bubbles","cancelable","text"]); - } - ,__init: function() { - openfl_events_Event.prototype.__init.call(this); - this.text = ""; - } - ,__class__: openfl_events_TextEvent -}); -var openfl_events_ErrorEvent = function(type,bubbles,cancelable,text,id) { - if(id == null) { - id = 0; - } - if(text == null) { - text = ""; - } - if(cancelable == null) { - cancelable = false; - } - if(bubbles == null) { - bubbles = false; - } - openfl_events_TextEvent.call(this,type,bubbles,cancelable,text); - this.errorID = id; -}; -$hxClasses["openfl.events.ErrorEvent"] = openfl_events_ErrorEvent; -openfl_events_ErrorEvent.__name__ = "openfl.events.ErrorEvent"; -openfl_events_ErrorEvent.__super__ = openfl_events_TextEvent; -openfl_events_ErrorEvent.prototype = $extend(openfl_events_TextEvent.prototype,{ - errorID: null - ,clone: function() { - var event = new openfl_events_ErrorEvent(this.type,this.bubbles,this.cancelable,this.text,this.errorID); - event.target = this.target; - event.currentTarget = this.currentTarget; - event.eventPhase = this.eventPhase; - return event; - } - ,toString: function() { - return this.__formatToString("ErrorEvent",["type","bubbles","cancelable","text","errorID"]); - } - ,__init: function() { - openfl_events_TextEvent.prototype.__init.call(this); - this.errorID = 0; - } - ,__class__: openfl_events_ErrorEvent -}); -var openfl_events__$EventDispatcher_DispatchIterator = function(list) { - this.active = false; - this.reset(list); -}; -$hxClasses["openfl.events._EventDispatcher.DispatchIterator"] = openfl_events__$EventDispatcher_DispatchIterator; -openfl_events__$EventDispatcher_DispatchIterator.__name__ = "openfl.events._EventDispatcher.DispatchIterator"; -openfl_events__$EventDispatcher_DispatchIterator.prototype = { - active: null - ,index: null - ,isCopy: null - ,list: null - ,copy: function() { - if(!this.isCopy) { - this.list = this.list.slice(); - this.isCopy = true; - } - } - ,hasNext: function() { - return this.index < this.list.length; - } - ,next: function() { - return this.list[this.index++]; - } - ,remove: function(listener,listIndex) { - if(this.active) { - if(!this.isCopy) { - if(listIndex < this.index) { - this.index--; - } - } else { - var _g = this.index; - var _g1 = this.list.length; - while(_g < _g1) { - var i = _g++; - if(this.list[i] == listener) { - this.list.splice(i,1); - break; - } - } - } - } - } - ,reset: function(list) { - this.list = list; - this.isCopy = false; - this.index = 0; - } - ,start: function() { - this.active = true; - } - ,stop: function() { - this.active = false; - } - ,__class__: openfl_events__$EventDispatcher_DispatchIterator -}; -var openfl_events__$EventDispatcher_Listener = function(callback,useCapture,priority) { - this.callback = callback; - this.useCapture = useCapture; - this.priority = priority; -}; -$hxClasses["openfl.events._EventDispatcher.Listener"] = openfl_events__$EventDispatcher_Listener; -openfl_events__$EventDispatcher_Listener.__name__ = "openfl.events._EventDispatcher.Listener"; -openfl_events__$EventDispatcher_Listener.prototype = { - callback: null - ,priority: null - ,useCapture: null - ,match: function(callback,useCapture) { - if(Reflect.compareMethods(this.callback,callback)) { - return this.useCapture == useCapture; - } else { - return false; - } - } - ,__class__: openfl_events__$EventDispatcher_Listener -}; -var openfl_events__$EventType_EventType_$Impl_$ = {}; -$hxClasses["openfl.events._EventType.EventType_Impl_"] = openfl_events__$EventType_EventType_$Impl_$; -openfl_events__$EventType_EventType_$Impl_$.__name__ = "openfl.events._EventType.EventType_Impl_"; -openfl_events__$EventType_EventType_$Impl_$.equals = function(a,b) { - return a == b; -}; -openfl_events__$EventType_EventType_$Impl_$.notEquals = function(a,b) { - return a != b; -}; -var openfl_events_FocusEvent = function(type,bubbles,cancelable,relatedObject,shiftKey,keyCode) { - if(keyCode == null) { - keyCode = 0; - } - if(shiftKey == null) { - shiftKey = false; - } - if(cancelable == null) { - cancelable = false; - } - if(bubbles == null) { - bubbles = false; - } - openfl_events_Event.call(this,type,bubbles,cancelable); - this.keyCode = keyCode; - this.shiftKey = shiftKey; - this.relatedObject = relatedObject; -}; -$hxClasses["openfl.events.FocusEvent"] = openfl_events_FocusEvent; -openfl_events_FocusEvent.__name__ = "openfl.events.FocusEvent"; -openfl_events_FocusEvent.__super__ = openfl_events_Event; -openfl_events_FocusEvent.prototype = $extend(openfl_events_Event.prototype,{ - keyCode: null - ,relatedObject: null - ,shiftKey: null - ,clone: function() { - var event = new openfl_events_FocusEvent(this.type,this.bubbles,this.cancelable,this.relatedObject,this.shiftKey,this.keyCode); - event.target = this.target; - event.currentTarget = this.currentTarget; - event.eventPhase = this.eventPhase; - return event; - } - ,toString: function() { - return this.__formatToString("FocusEvent",["type","bubbles","cancelable","relatedObject","shiftKey","keyCode"]); - } - ,__init: function() { - openfl_events_Event.prototype.__init.call(this); - this.keyCode = 0; - this.shiftKey = false; - this.relatedObject = null; - } - ,__class__: openfl_events_FocusEvent -}); -var openfl_events_FullScreenEvent = function(type,bubbles,cancelable,fullScreen,interactive) { - if(interactive == null) { - interactive = false; - } - if(fullScreen == null) { - fullScreen = false; - } - if(cancelable == null) { - cancelable = false; - } - if(bubbles == null) { - bubbles = false; - } - openfl_events_ActivityEvent.call(this,type,bubbles,cancelable); - this.fullScreen = fullScreen; - this.interactive = interactive; -}; -$hxClasses["openfl.events.FullScreenEvent"] = openfl_events_FullScreenEvent; -openfl_events_FullScreenEvent.__name__ = "openfl.events.FullScreenEvent"; -openfl_events_FullScreenEvent.__super__ = openfl_events_ActivityEvent; -openfl_events_FullScreenEvent.prototype = $extend(openfl_events_ActivityEvent.prototype,{ - fullScreen: null - ,interactive: null - ,clone: function() { - var event = new openfl_events_FullScreenEvent(this.type,this.bubbles,this.cancelable,this.fullScreen,this.interactive); - event.target = this.target; - event.currentTarget = this.currentTarget; - event.eventPhase = this.eventPhase; - return event; - } - ,toString: function() { - return this.__formatToString("FullscreenEvent",["type","bubbles","cancelable","fullscreen","interactive"]); - } - ,__init: function() { - openfl_events_ActivityEvent.prototype.__init.call(this); - this.fullScreen = false; - this.interactive = false; - } - ,__class__: openfl_events_FullScreenEvent -}); -var openfl_events_GameInputEvent = function(type,bubbles,cancelable,device) { - if(cancelable == null) { - cancelable = false; - } - if(bubbles == null) { - bubbles = true; - } - openfl_events_Event.call(this,type,bubbles,cancelable); - this.device = device; -}; -$hxClasses["openfl.events.GameInputEvent"] = openfl_events_GameInputEvent; -openfl_events_GameInputEvent.__name__ = "openfl.events.GameInputEvent"; -openfl_events_GameInputEvent.__super__ = openfl_events_Event; -openfl_events_GameInputEvent.prototype = $extend(openfl_events_Event.prototype,{ - device: null - ,clone: function() { - var event = new openfl_events_GameInputEvent(this.type,this.bubbles,this.cancelable,this.device); - event.target = this.target; - event.currentTarget = this.currentTarget; - event.eventPhase = this.eventPhase; - return event; - } - ,toString: function() { - return this.__formatToString("GameInputEvent",["type","bubbles","cancelable","device"]); - } - ,__init: function() { - openfl_events_Event.prototype.__init.call(this); - this.device = null; - } - ,__class__: openfl_events_GameInputEvent -}); -var openfl_events_HTTPStatusEvent = function(type,bubbles,cancelable,status,redirected) { - if(redirected == null) { - redirected = false; - } - if(status == null) { - status = 0; - } - if(cancelable == null) { - cancelable = false; - } - if(bubbles == null) { - bubbles = false; - } - this.status = status; - this.redirected = redirected; - openfl_events_Event.call(this,type,bubbles,cancelable); -}; -$hxClasses["openfl.events.HTTPStatusEvent"] = openfl_events_HTTPStatusEvent; -openfl_events_HTTPStatusEvent.__name__ = "openfl.events.HTTPStatusEvent"; -openfl_events_HTTPStatusEvent.__super__ = openfl_events_Event; -openfl_events_HTTPStatusEvent.prototype = $extend(openfl_events_Event.prototype,{ - redirected: null - ,responseHeaders: null - ,responseURL: null - ,status: null - ,clone: function() { - var event = new openfl_events_HTTPStatusEvent(this.type,this.bubbles,this.cancelable,this.status,this.redirected); - event.target = this.target; - event.currentTarget = this.currentTarget; - event.eventPhase = this.eventPhase; - return event; - } - ,toString: function() { - return this.__formatToString("HTTPStatusEvent",["type","bubbles","cancelable","status","redirected"]); - } - ,__init: function() { - openfl_events_Event.prototype.__init.call(this); - this.status = 0; - this.redirected = false; - } - ,__class__: openfl_events_HTTPStatusEvent -}); -var openfl_events_IOErrorEvent = function(type,bubbles,cancelable,text,id) { - if(id == null) { - id = 0; - } - if(text == null) { - text = ""; - } - if(cancelable == null) { - cancelable = false; - } - if(bubbles == null) { - bubbles = true; - } - openfl_events_ErrorEvent.call(this,type,bubbles,cancelable,text,id); -}; -$hxClasses["openfl.events.IOErrorEvent"] = openfl_events_IOErrorEvent; -openfl_events_IOErrorEvent.__name__ = "openfl.events.IOErrorEvent"; -openfl_events_IOErrorEvent.__super__ = openfl_events_ErrorEvent; -openfl_events_IOErrorEvent.prototype = $extend(openfl_events_ErrorEvent.prototype,{ - clone: function() { - var event = new openfl_events_IOErrorEvent(this.type,this.bubbles,this.cancelable,this.text,this.errorID); - event.target = this.target; - event.currentTarget = this.currentTarget; - event.eventPhase = this.eventPhase; - return event; - } - ,toString: function() { - return this.__formatToString("IOErrorEvent",["type","bubbles","cancelable","text","errorID"]); - } - ,__class__: openfl_events_IOErrorEvent -}); -var openfl_events_KeyboardEvent = function(type,bubbles,cancelable,charCodeValue,keyCodeValue,keyLocationValue,ctrlKeyValue,altKeyValue,shiftKeyValue,controlKeyValue,commandKeyValue) { - if(commandKeyValue == null) { - commandKeyValue = false; - } - if(controlKeyValue == null) { - controlKeyValue = false; - } - if(shiftKeyValue == null) { - shiftKeyValue = false; - } - if(altKeyValue == null) { - altKeyValue = false; - } - if(ctrlKeyValue == null) { - ctrlKeyValue = false; - } - if(keyCodeValue == null) { - keyCodeValue = 0; - } - if(charCodeValue == null) { - charCodeValue = 0; - } - if(cancelable == null) { - cancelable = false; - } - if(bubbles == null) { - bubbles = false; - } - openfl_events_Event.call(this,type,bubbles,cancelable); - this.charCode = charCodeValue; - this.keyCode = keyCodeValue; - this.keyLocation = keyLocationValue != null ? keyLocationValue : 0; - this.ctrlKey = ctrlKeyValue; - this.altKey = altKeyValue; - this.shiftKey = shiftKeyValue; - this.controlKey = controlKeyValue; - this.commandKey = commandKeyValue; -}; -$hxClasses["openfl.events.KeyboardEvent"] = openfl_events_KeyboardEvent; -openfl_events_KeyboardEvent.__name__ = "openfl.events.KeyboardEvent"; -openfl_events_KeyboardEvent.__super__ = openfl_events_Event; -openfl_events_KeyboardEvent.prototype = $extend(openfl_events_Event.prototype,{ - altKey: null - ,charCode: null - ,commandKey: null - ,controlKey: null - ,ctrlKey: null - ,keyCode: null - ,keyLocation: null - ,shiftKey: null - ,clone: function() { - var event = new openfl_events_KeyboardEvent(this.type,this.bubbles,this.cancelable,this.charCode,this.keyCode,this.keyLocation,this.ctrlKey,this.altKey,this.shiftKey,this.controlKey,this.commandKey); - event.target = this.target; - event.currentTarget = this.currentTarget; - event.eventPhase = this.eventPhase; - return event; - } - ,toString: function() { - return this.__formatToString("KeyboardEvent",["type","bubbles","cancelable","charCode","keyCode","keyLocation","ctrlKey","altKey","shiftKey"]); - } - ,__init: function() { - openfl_events_Event.prototype.__init.call(this); - this.charCode = 0; - this.keyCode = 0; - this.keyLocation = 0; - this.ctrlKey = false; - this.altKey = false; - this.shiftKey = false; - this.controlKey = false; - this.commandKey = false; - } - ,__class__: openfl_events_KeyboardEvent -}); -var openfl_events_MouseEvent = function(type,bubbles,cancelable,localX,localY,relatedObject,ctrlKey,altKey,shiftKey,buttonDown,delta,commandKey,clickCount) { - if(clickCount == null) { - clickCount = 0; - } - if(commandKey == null) { - commandKey = false; - } - if(delta == null) { - delta = 0; - } - if(buttonDown == null) { - buttonDown = false; - } - if(shiftKey == null) { - shiftKey = false; - } - if(altKey == null) { - altKey = false; - } - if(ctrlKey == null) { - ctrlKey = false; - } - if(localY == null) { - localY = 0; - } - if(localX == null) { - localX = 0; - } - if(cancelable == null) { - cancelable = false; - } - if(bubbles == null) { - bubbles = true; - } - openfl_events_Event.call(this,type,bubbles,cancelable); - this.shiftKey = shiftKey; - this.altKey = altKey; - this.ctrlKey = ctrlKey; - this.bubbles = bubbles; - this.relatedObject = relatedObject; - this.delta = delta; - this.localX = localX; - this.localY = localY; - this.buttonDown = buttonDown; - this.commandKey = commandKey; - this.clickCount = clickCount; - this.isRelatedObjectInaccessible = false; - this.stageX = NaN; - this.stageY = NaN; -}; -$hxClasses["openfl.events.MouseEvent"] = openfl_events_MouseEvent; -openfl_events_MouseEvent.__name__ = "openfl.events.MouseEvent"; -openfl_events_MouseEvent.__altKey = null; -openfl_events_MouseEvent.__buttonDown = null; -openfl_events_MouseEvent.__commandKey = null; -openfl_events_MouseEvent.__ctrlKey = null; -openfl_events_MouseEvent.__shiftKey = null; -openfl_events_MouseEvent.__create = function(type,button,stageX,stageY,local,target,delta) { - if(delta == null) { - delta = 0; - } - var event = new openfl_events_MouseEvent(type,true,false,local.x,local.y,null,openfl_events_MouseEvent.__ctrlKey,openfl_events_MouseEvent.__altKey,openfl_events_MouseEvent.__shiftKey,openfl_events_MouseEvent.__buttonDown,delta,openfl_events_MouseEvent.__commandKey); - event.stageX = stageX; - event.stageY = stageY; - event.target = target; - return event; -}; -openfl_events_MouseEvent.__super__ = openfl_events_Event; -openfl_events_MouseEvent.prototype = $extend(openfl_events_Event.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 event = new openfl_events_MouseEvent(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); - event.target = this.target; - event.currentTarget = this.currentTarget; - event.eventPhase = this.eventPhase; - return event; - } - ,toString: function() { - return this.__formatToString("MouseEvent",["type","bubbles","cancelable","localX","localY","relatedObject","ctrlKey","altKey","shiftKey","buttonDown","delta"]); - } - ,updateAfterEvent: function() { - } - ,__init: function() { - openfl_events_Event.prototype.__init.call(this); - this.shiftKey = false; - this.altKey = false; - this.ctrlKey = false; - this.bubbles = false; - this.relatedObject = null; - this.delta = 0; - this.localX = 0; - this.localY = 0; - this.buttonDown = false; - this.commandKey = false; - this.clickCount = 0; - this.isRelatedObjectInaccessible = false; - this.stageX = NaN; - this.stageY = NaN; - } - ,__class__: openfl_events_MouseEvent -}); -var openfl_events_NetStatusEvent = function(type,bubbles,cancelable,info) { - if(cancelable == null) { - cancelable = false; - } - if(bubbles == null) { - bubbles = false; - } - this.info = info; - openfl_events_Event.call(this,type,bubbles,cancelable); -}; -$hxClasses["openfl.events.NetStatusEvent"] = openfl_events_NetStatusEvent; -openfl_events_NetStatusEvent.__name__ = "openfl.events.NetStatusEvent"; -openfl_events_NetStatusEvent.__super__ = openfl_events_Event; -openfl_events_NetStatusEvent.prototype = $extend(openfl_events_Event.prototype,{ - info: null - ,clone: function() { - var event = new openfl_events_NetStatusEvent(this.type,this.bubbles,this.cancelable,this.info); - event.target = this.target; - event.currentTarget = this.currentTarget; - event.eventPhase = this.eventPhase; - return event; - } - ,toString: function() { - return this.__formatToString("NetStatusEvent",["type","bubbles","cancelable","info"]); - } - ,__init: function() { - openfl_events_Event.prototype.__init.call(this); - this.info = null; - } - ,__class__: openfl_events_NetStatusEvent -}); -var openfl_events_ProgressEvent = function(type,bubbles,cancelable,bytesLoaded,bytesTotal) { - if(bytesTotal == null) { - bytesTotal = 0; - } - if(bytesLoaded == null) { - bytesLoaded = 0; - } - if(cancelable == null) { - cancelable = false; - } - if(bubbles == null) { - bubbles = false; - } - openfl_events_Event.call(this,type,bubbles,cancelable); - this.bytesLoaded = bytesLoaded; - this.bytesTotal = bytesTotal; -}; -$hxClasses["openfl.events.ProgressEvent"] = openfl_events_ProgressEvent; -openfl_events_ProgressEvent.__name__ = "openfl.events.ProgressEvent"; -openfl_events_ProgressEvent.__super__ = openfl_events_Event; -openfl_events_ProgressEvent.prototype = $extend(openfl_events_Event.prototype,{ - bytesLoaded: null - ,bytesTotal: null - ,clone: function() { - var event = new openfl_events_ProgressEvent(this.type,this.bubbles,this.cancelable,this.bytesLoaded,this.bytesTotal); - event.target = this.target; - event.currentTarget = this.currentTarget; - event.eventPhase = this.eventPhase; - return event; - } - ,toString: function() { - return this.__formatToString("ProgressEvent",["type","bubbles","cancelable","bytesLoaded","bytesTotal"]); - } - ,__init: function() { - openfl_events_Event.prototype.__init.call(this); - this.bytesLoaded = 0; - this.bytesTotal = 0; - } - ,__class__: openfl_events_ProgressEvent -}); -var openfl_events_RenderEvent = function(type,bubbles,cancelable,objectMatrix,objectColorTransform,allowSmoothing) { - if(allowSmoothing == null) { - allowSmoothing = true; - } - if(cancelable == null) { - cancelable = false; - } - if(bubbles == null) { - bubbles = false; - } - openfl_events_Event.call(this,type,bubbles,cancelable); - this.objectMatrix = objectMatrix; - this.objectColorTransform = objectColorTransform; - this.allowSmoothing = allowSmoothing; -}; -$hxClasses["openfl.events.RenderEvent"] = openfl_events_RenderEvent; -openfl_events_RenderEvent.__name__ = "openfl.events.RenderEvent"; -openfl_events_RenderEvent.__super__ = openfl_events_Event; -openfl_events_RenderEvent.prototype = $extend(openfl_events_Event.prototype,{ - allowSmoothing: null - ,objectColorTransform: null - ,objectMatrix: null - ,renderer: null - ,clone: function() { - var event = new openfl_events_RenderEvent(this.type,this.bubbles,this.cancelable,this.objectMatrix.clone(),this.objectColorTransform.__clone(),this.allowSmoothing); - event.target = this.target; - event.currentTarget = this.currentTarget; - event.eventPhase = this.eventPhase; - return event; - } - ,toString: function() { - return this.__formatToString("RenderEvent",["type","bubbles","cancelable"]); - } - ,__init: function() { - openfl_events_Event.prototype.__init.call(this); - this.objectMatrix = null; - this.objectColorTransform = null; - this.allowSmoothing = false; - this.renderer = null; - } - ,__class__: openfl_events_RenderEvent -}); -var openfl_events_SecurityErrorEvent = function(type,bubbles,cancelable,text,id) { - if(id == null) { - id = 0; - } - if(text == null) { - text = ""; - } - if(cancelable == null) { - cancelable = false; - } - if(bubbles == null) { - bubbles = false; - } - openfl_events_ErrorEvent.call(this,type,bubbles,cancelable,text,id); -}; -$hxClasses["openfl.events.SecurityErrorEvent"] = openfl_events_SecurityErrorEvent; -openfl_events_SecurityErrorEvent.__name__ = "openfl.events.SecurityErrorEvent"; -openfl_events_SecurityErrorEvent.__super__ = openfl_events_ErrorEvent; -openfl_events_SecurityErrorEvent.prototype = $extend(openfl_events_ErrorEvent.prototype,{ - clone: function() { - var event = new openfl_events_SecurityErrorEvent(this.type,this.bubbles,this.cancelable,this.text,this.errorID); - event.target = this.target; - event.currentTarget = this.currentTarget; - event.eventPhase = this.eventPhase; - return event; - } - ,toString: function() { - return this.__formatToString("SecurityErrorEvent",["type","bubbles","cancelable","text","errorID"]); - } - ,__class__: openfl_events_SecurityErrorEvent -}); -var openfl_events_TouchEvent = function(type,bubbles,cancelable,touchPointID,isPrimaryTouchPoint,localX,localY,sizeX,sizeY,pressure,relatedObject,ctrlKey,altKey,shiftKey,commandKey,controlKey,timestamp,touchIntent,samples,isTouchPointCanceled) { - if(isTouchPointCanceled == null) { - isTouchPointCanceled = false; - } - if(timestamp == null) { - timestamp = 0; - } - if(controlKey == null) { - controlKey = false; - } - if(commandKey == null) { - commandKey = false; - } - if(shiftKey == null) { - shiftKey = false; - } - if(altKey == null) { - altKey = false; - } - if(ctrlKey == null) { - ctrlKey = false; - } - if(pressure == null) { - pressure = 0; - } - if(sizeY == null) { - sizeY = 0; - } - if(sizeX == null) { - sizeX = 0; - } - if(localY == null) { - localY = 0; - } - if(localX == null) { - localX = 0; - } - if(isPrimaryTouchPoint == null) { - isPrimaryTouchPoint = false; - } - if(touchPointID == null) { - touchPointID = 0; - } - if(cancelable == null) { - cancelable = false; - } - if(bubbles == null) { - bubbles = true; - } - openfl_events_Event.call(this,type,bubbles,cancelable); - this.touchPointID = touchPointID; - this.isPrimaryTouchPoint = isPrimaryTouchPoint; - this.localX = localX; - this.localY = localY; - this.sizeX = sizeX; - this.sizeY = sizeY; - this.pressure = pressure; - this.relatedObject = relatedObject; - this.ctrlKey = ctrlKey; - this.altKey = altKey; - this.shiftKey = shiftKey; - this.commandKey = commandKey; - this.controlKey = controlKey; - this.stageX = NaN; - this.stageY = NaN; -}; -$hxClasses["openfl.events.TouchEvent"] = openfl_events_TouchEvent; -openfl_events_TouchEvent.__name__ = "openfl.events.TouchEvent"; -openfl_events_TouchEvent.__create = function(type,touch,stageX,stageY,local,target) { - var evt = new openfl_events_TouchEvent(type,true,false,0,true,local.x,local.y,1,1,1); - evt.stageX = stageX; - evt.stageY = stageY; - evt.target = target; - return evt; -}; -openfl_events_TouchEvent.__super__ = openfl_events_Event; -openfl_events_TouchEvent.prototype = $extend(openfl_events_Event.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 event = new openfl_events_TouchEvent(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); - event.target = this.target; - event.currentTarget = this.currentTarget; - event.eventPhase = this.eventPhase; - return event; - } - ,toString: function() { - return this.__formatToString("TouchEvent",["type","bubbles","cancelable","touchPointID","isPrimaryTouchPoint","localX","localY","sizeX","sizeY","pressure","relatedObject","ctrlKey","altKey","shiftKey","commandKey","controlKey"]); - } - ,updateAfterEvent: function() { - } - ,__init: function() { - openfl_events_Event.prototype.__init.call(this); - this.touchPointID = 0; - this.isPrimaryTouchPoint = false; - this.localX = 0; - this.localY = 0; - this.sizeX = 0; - this.sizeY = 0; - this.pressure = 0; - this.relatedObject = null; - this.ctrlKey = false; - this.altKey = false; - this.shiftKey = false; - this.commandKey = false; - this.controlKey = false; - this.stageX = NaN; - this.stageY = NaN; - } - ,__class__: openfl_events_TouchEvent -}); -var openfl_events_UncaughtErrorEvent = function(type,bubbles,cancelable,error) { - if(cancelable == null) { - cancelable = true; - } - if(bubbles == null) { - bubbles = true; - } - openfl_events_ErrorEvent.call(this,type,bubbles,cancelable); - this.error = error; -}; -$hxClasses["openfl.events.UncaughtErrorEvent"] = openfl_events_UncaughtErrorEvent; -openfl_events_UncaughtErrorEvent.__name__ = "openfl.events.UncaughtErrorEvent"; -openfl_events_UncaughtErrorEvent.__super__ = openfl_events_ErrorEvent; -openfl_events_UncaughtErrorEvent.prototype = $extend(openfl_events_ErrorEvent.prototype,{ - error: null - ,clone: function() { - var event = new openfl_events_UncaughtErrorEvent(this.type,this.bubbles,this.cancelable,this.error); - event.target = this.target; - event.currentTarget = this.currentTarget; - event.eventPhase = this.eventPhase; - return event; - } - ,toString: function() { - return this.__formatToString("UncaughtErrorEvent",["type","bubbles","cancelable","error"]); - } - ,__init: function() { - openfl_events_ErrorEvent.prototype.__init.call(this); - this.error = null; - } - ,__class__: openfl_events_UncaughtErrorEvent -}); -var openfl_events_UncaughtErrorEvents = function() { - openfl_events_EventDispatcher.call(this); -}; -$hxClasses["openfl.events.UncaughtErrorEvents"] = openfl_events_UncaughtErrorEvents; -openfl_events_UncaughtErrorEvents.__name__ = "openfl.events.UncaughtErrorEvents"; -openfl_events_UncaughtErrorEvents.__super__ = openfl_events_EventDispatcher; -openfl_events_UncaughtErrorEvents.prototype = $extend(openfl_events_EventDispatcher.prototype,{ - __class__: openfl_events_UncaughtErrorEvents -}); -var openfl_filters_BitmapFilter = function() { - this.__bottomExtension = 0; - this.__leftExtension = 0; - this.__needSecondBitmapData = true; - this.__numShaderPasses = 0; - this.__preserveObject = false; - this.__rightExtension = 0; - this.__shaderBlendMode = 10; - this.__topExtension = 0; - this.__smooth = true; -}; -$hxClasses["openfl.filters.BitmapFilter"] = openfl_filters_BitmapFilter; -openfl_filters_BitmapFilter.__name__ = "openfl.filters.BitmapFilter"; -openfl_filters_BitmapFilter.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 openfl_filters_BitmapFilter(); - } - ,__applyFilter: function(bitmapData,sourceBitmapData,sourceRect,destPoint) { - return sourceBitmapData; - } - ,__initShader: function(renderer,pass) { - return null; - } - ,__class__: openfl_filters_BitmapFilter -}; -var openfl_filters_BitmapFilterShader = function(code) { - if(this.__glFragmentSource == null) { - 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}"; - } - if(this.__glVertexSource == null) { - 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}"; - } - openfl_display_Shader.call(this,code); - this.__isGenerated = true; - this.__initGL(); -}; -$hxClasses["openfl.filters.BitmapFilterShader"] = openfl_filters_BitmapFilterShader; -openfl_filters_BitmapFilterShader.__name__ = "openfl.filters.BitmapFilterShader"; -openfl_filters_BitmapFilterShader.__super__ = openfl_display_Shader; -openfl_filters_BitmapFilterShader.prototype = $extend(openfl_display_Shader.prototype,{ - openfl_Position: null - ,openfl_TextureCoord: null - ,openfl_Matrix: null - ,openfl_TextureSize: null - ,openfl_Texture: null - ,__class__: openfl_filters_BitmapFilterShader -}); -var openfl_filters__$BlurFilter_BlurShader = function() { - if(this.__glFragmentSource == null) { - this.__glFragmentSource = "uniform sampler2D openfl_Texture;\n\n\t\tvarying vec2 vBlurCoords[7];\n\n\t\tvoid main(void) {\n\n\t\t\tvec4 sum = vec4(0.0);\n\t\t\tsum += texture2D(openfl_Texture, vBlurCoords[0]) * 0.00443;\n\t\t\tsum += texture2D(openfl_Texture, vBlurCoords[1]) * 0.05399;\n\t\t\tsum += texture2D(openfl_Texture, vBlurCoords[2]) * 0.24197;\n\t\t\tsum += texture2D(openfl_Texture, vBlurCoords[3]) * 0.39894;\n\t\t\tsum += texture2D(openfl_Texture, vBlurCoords[4]) * 0.24197;\n\t\t\tsum += texture2D(openfl_Texture, vBlurCoords[5]) * 0.05399;\n\t\t\tsum += texture2D(openfl_Texture, vBlurCoords[6]) * 0.00443;\n\n\t\t\tgl_FragColor = sum;\n\n\t\t}"; - } - if(this.__glVertexSource == null) { - this.__glVertexSource = "attribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\n\t\tuniform mat4 openfl_Matrix;\n\n\t\tuniform vec2 uRadius;\n\t\tvarying vec2 vBlurCoords[7];\n\t\tuniform vec2 uTextureSize;\n\n\t\tvoid main(void) {\n\n\t\t\tgl_Position = openfl_Matrix * openfl_Position;\n\n\t\t\tvec2 r = uRadius / uTextureSize;\n\t\t\tvBlurCoords[0] = openfl_TextureCoord - r * 1.0;\n\t\t\tvBlurCoords[1] = openfl_TextureCoord - r * 0.75;\n\t\t\tvBlurCoords[2] = openfl_TextureCoord - r * 0.5;\n\t\t\tvBlurCoords[3] = openfl_TextureCoord;\n\t\t\tvBlurCoords[4] = openfl_TextureCoord + r * 0.5;\n\t\t\tvBlurCoords[5] = openfl_TextureCoord + r * 0.75;\n\t\t\tvBlurCoords[6] = openfl_TextureCoord + r * 1.0;\n\n\t\t}"; - } - openfl_filters_BitmapFilterShader.call(this); - this.uRadius.value = [0,0]; - this.__isGenerated = true; - this.__initGL(); -}; -$hxClasses["openfl.filters._BlurFilter.BlurShader"] = openfl_filters__$BlurFilter_BlurShader; -openfl_filters__$BlurFilter_BlurShader.__name__ = "openfl.filters._BlurFilter.BlurShader"; -openfl_filters__$BlurFilter_BlurShader.__super__ = openfl_filters_BitmapFilterShader; -openfl_filters__$BlurFilter_BlurShader.prototype = $extend(openfl_filters_BitmapFilterShader.prototype,{ - __update: function() { - this.uTextureSize.value = [this.__texture.input.width,this.__texture.input.height]; - openfl_filters_BitmapFilterShader.prototype.__update.call(this); - } - ,uRadius: null - ,uTextureSize: null - ,__class__: openfl_filters__$BlurFilter_BlurShader -}); -var openfl_filters_BlurFilter = function(blurX,blurY,quality) { - if(quality == null) { - quality = 1; - } - if(blurY == null) { - blurY = 4; - } - if(blurX == null) { - blurX = 4; - } - openfl_filters_BitmapFilter.call(this); - this.set_blurX(blurX); - this.set_blurY(blurY); - this.set_quality(quality); - this.__needSecondBitmapData = true; - this.__preserveObject = false; - this.__renderDirty = true; -}; -$hxClasses["openfl.filters.BlurFilter"] = openfl_filters_BlurFilter; -openfl_filters_BlurFilter.__name__ = "openfl.filters.BlurFilter"; -openfl_filters_BlurFilter.__super__ = openfl_filters_BitmapFilter; -openfl_filters_BlurFilter.prototype = $extend(openfl_filters_BitmapFilter.prototype,{ - __blurX: null - ,__blurY: null - ,__horizontalPasses: null - ,__quality: null - ,__verticalPasses: null - ,clone: function() { - return new openfl_filters_BlurFilter(this.__blurX,this.__blurY,this.__quality); - } - ,__applyFilter: function(bitmapData,sourceBitmapData,sourceRect,destPoint) { - var time = new Date().getTime() / 1000; - var finalImage = lime__$internal_graphics_ImageDataUtil.gaussianBlur(bitmapData.image,sourceBitmapData.image,sourceRect.__toLimeRectangle(),destPoint.__toLimeVector2(),this.__blurX,this.__blurY,this.__quality); - var elapsed = new Date().getTime() / 1000 - time; - if(finalImage == bitmapData.image) { - return bitmapData; - } - return sourceBitmapData; - } - ,__initShader: function(renderer,pass) { - if(pass <= this.__horizontalPasses) { - var scale = Math.pow(0.5,pass >> 1); - openfl_filters_BlurFilter.__blurShader.uRadius.value[0] = this.get_blurX() * scale; - openfl_filters_BlurFilter.__blurShader.uRadius.value[1] = 0; - } else { - var scale1 = Math.pow(0.5,pass - this.__horizontalPasses >> 1); - openfl_filters_BlurFilter.__blurShader.uRadius.value[0] = 0; - openfl_filters_BlurFilter.__blurShader.uRadius.value[1] = this.get_blurY() * scale1; - } - return openfl_filters_BlurFilter.__blurShader; - } - ,get_blurX: function() { - return this.__blurX; - } - ,set_blurX: function(value) { - if(value != this.__blurX) { - this.__blurX = value; - this.__renderDirty = true; - this.__leftExtension = value > 0 ? Math.ceil(value) : 0; - this.__rightExtension = this.__leftExtension; - } - return value; - } - ,get_blurY: function() { - return this.__blurY; - } - ,set_blurY: function(value) { - if(value != this.__blurY) { - this.__blurY = value; - this.__renderDirty = true; - this.__topExtension = value > 0 ? Math.ceil(value) : 0; - this.__bottomExtension = this.__topExtension; - } - return value; - } - ,get_quality: function() { - return this.__quality; - } - ,set_quality: function(value) { - this.__horizontalPasses = this.__blurX <= 0 ? 0 : Math.round(this.__blurX * (value / 4)) + 1; - this.__verticalPasses = this.__blurY <= 0 ? 0 : Math.round(this.__blurY * (value / 4)) + 1; - this.__numShaderPasses = this.__horizontalPasses + this.__verticalPasses; - if(value != this.__quality) { - this.__renderDirty = true; - } - return this.__quality = value; - } - ,__class__: openfl_filters_BlurFilter - ,__properties__: {set_quality:"set_quality",get_quality:"get_quality",set_blurY:"set_blurY",get_blurY:"get_blurY",set_blurX:"set_blurX",get_blurX:"get_blurX"} -}); -var openfl_filters__$ColorMatrixFilter_ColorMatrixShader = function() { - if(this.__glFragmentSource == null) { - 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}"; - } - if(this.__glVertexSource == null) { - 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}"; - } - openfl_filters_BitmapFilterShader.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 = true; - this.__initGL(); -}; -$hxClasses["openfl.filters._ColorMatrixFilter.ColorMatrixShader"] = openfl_filters__$ColorMatrixFilter_ColorMatrixShader; -openfl_filters__$ColorMatrixFilter_ColorMatrixShader.__name__ = "openfl.filters._ColorMatrixFilter.ColorMatrixShader"; -openfl_filters__$ColorMatrixFilter_ColorMatrixShader.__super__ = openfl_filters_BitmapFilterShader; -openfl_filters__$ColorMatrixFilter_ColorMatrixShader.prototype = $extend(openfl_filters_BitmapFilterShader.prototype,{ - init: function(matrix) { - var multipliers = this.uMultipliers.value; - var offsets = this.uOffsets.value; - multipliers[0] = matrix[0]; - multipliers[1] = matrix[1]; - multipliers[2] = matrix[2]; - multipliers[3] = matrix[3]; - multipliers[4] = matrix[5]; - multipliers[5] = matrix[6]; - multipliers[6] = matrix[7]; - multipliers[7] = matrix[8]; - multipliers[8] = matrix[10]; - multipliers[9] = matrix[11]; - multipliers[10] = matrix[12]; - multipliers[11] = matrix[13]; - multipliers[12] = matrix[15]; - multipliers[13] = matrix[16]; - multipliers[14] = matrix[17]; - multipliers[15] = matrix[18]; - offsets[0] = matrix[4] / 255.0; - offsets[1] = matrix[9] / 255.0; - offsets[2] = matrix[14] / 255.0; - offsets[3] = matrix[19] / 255.0; - } - ,uMultipliers: null - ,uOffsets: null - ,__class__: openfl_filters__$ColorMatrixFilter_ColorMatrixShader -}); -var openfl_filters_ColorMatrixFilter = function(matrix) { - openfl_filters_BitmapFilter.call(this); - this.set_matrix(matrix); - this.__numShaderPasses = 1; - this.__needSecondBitmapData = false; -}; -$hxClasses["openfl.filters.ColorMatrixFilter"] = openfl_filters_ColorMatrixFilter; -openfl_filters_ColorMatrixFilter.__name__ = "openfl.filters.ColorMatrixFilter"; -openfl_filters_ColorMatrixFilter.__super__ = openfl_filters_BitmapFilter; -openfl_filters_ColorMatrixFilter.prototype = $extend(openfl_filters_BitmapFilter.prototype,{ - __matrix: null - ,clone: function() { - return new openfl_filters_ColorMatrixFilter(this.__matrix); - } - ,__applyFilter: function(destBitmapData,sourceBitmapData,sourceRect,destPoint) { - var sourceImage = sourceBitmapData.image; - var image = destBitmapData.image; - lime__$internal_graphics_ImageCanvasUtil.convertToData(sourceImage); - lime__$internal_graphics_ImageCanvasUtil.convertToData(image); - var sourceData = sourceImage.get_data(); - var destData = image.get_data(); - var offsetX = destPoint.x - sourceRect.x | 0; - var offsetY = destPoint.y - sourceRect.y | 0; - var sourceStride = sourceBitmapData.width * 4; - var destStride = destBitmapData.width * 4; - var sourceFormat = sourceImage.buffer.format; - var destFormat = image.buffer.format; - var sourcePremultiplied = sourceImage.buffer.premultiplied; - var destPremultiplied = image.buffer.premultiplied; - var sourcePixel; - var destPixel = 0; - var sourceOffset; - var destOffset; - var _g = sourceRect.y | 0; - var _g1 = sourceRect.height | 0; - while(_g < _g1) { - var row = _g++; - var _g2 = sourceRect.x | 0; - var _g11 = sourceRect.width | 0; - while(_g2 < _g11) { - var column = _g2++; - sourceOffset = row * sourceStride + column * 4; - destOffset = (row + offsetX) * destStride + (column + offsetY) * 4; - var format = sourceFormat; - var premultiplied = sourcePremultiplied; - if(premultiplied == null) { - premultiplied = false; - } - if(format == null) { - format = 0; - } - switch(format) { - case 0: - sourcePixel = (sourceData[sourceOffset] & 255) << 24 | (sourceData[sourceOffset + 1] & 255) << 16 | (sourceData[sourceOffset + 2] & 255) << 8 | sourceData[sourceOffset + 3] & 255; - break; - case 1: - sourcePixel = (sourceData[sourceOffset + 1] & 255) << 24 | (sourceData[sourceOffset + 2] & 255) << 16 | (sourceData[sourceOffset + 3] & 255) << 8 | sourceData[sourceOffset] & 255; - break; - case 2: - sourcePixel = (sourceData[sourceOffset + 2] & 255) << 24 | (sourceData[sourceOffset + 1] & 255) << 16 | (sourceData[sourceOffset] & 255) << 8 | sourceData[sourceOffset + 3] & 255; - break; - } - if(premultiplied) { - if((sourcePixel & 255) != 0 && (sourcePixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.unmult = 255.0 / (sourcePixel & 255); - sourcePixel = (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 24 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 16 | (lime_math__$RGBA_RGBA_$Impl_$.__clamp[Math.round((sourcePixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.unmult)] & 255) << 8 | sourcePixel & 255 & 255; - } - } - if((sourcePixel & 255) == 0) { - destPixel = 0; - } else { - var value = Math.max(0,Math.min(this.__matrix[0] * (sourcePixel >>> 24 & 255) + this.__matrix[1] * (sourcePixel >>> 16 & 255) + this.__matrix[2] * (sourcePixel >>> 8 & 255) + this.__matrix[3] * (sourcePixel & 255) + this.__matrix[4],255)) | 0; - destPixel = (value & 255) << 24 | (destPixel >>> 16 & 255 & 255) << 16 | (destPixel >>> 8 & 255 & 255) << 8 | destPixel & 255 & 255; - var value1 = Math.max(0,Math.min(this.__matrix[5] * (sourcePixel >>> 24 & 255) + this.__matrix[6] * (sourcePixel >>> 16 & 255) + this.__matrix[7] * (sourcePixel >>> 8 & 255) + this.__matrix[8] * (sourcePixel & 255) + this.__matrix[9],255)) | 0; - destPixel = (destPixel >>> 24 & 255 & 255) << 24 | (value1 & 255) << 16 | (destPixel >>> 8 & 255 & 255) << 8 | destPixel & 255 & 255; - var value2 = Math.max(0,Math.min(this.__matrix[10] * (sourcePixel >>> 24 & 255) + this.__matrix[11] * (sourcePixel >>> 16 & 255) + this.__matrix[12] * (sourcePixel >>> 8 & 255) + this.__matrix[13] * (sourcePixel & 255) + this.__matrix[14],255)) | 0; - destPixel = (destPixel >>> 24 & 255 & 255) << 24 | (destPixel >>> 16 & 255 & 255) << 16 | (value2 & 255) << 8 | destPixel & 255 & 255; - var value3 = Math.max(0,Math.min(this.__matrix[15] * (sourcePixel >>> 24 & 255) + this.__matrix[16] * (sourcePixel >>> 16 & 255) + this.__matrix[17] * (sourcePixel >>> 8 & 255) + this.__matrix[18] * (sourcePixel & 255) + this.__matrix[19],255)) | 0; - destPixel = (destPixel >>> 24 & 255 & 255) << 24 | (destPixel >>> 16 & 255 & 255) << 16 | (destPixel >>> 8 & 255 & 255) << 8 | value3 & 255; - } - var format1 = destFormat; - var premultiplied1 = destPremultiplied; - if(premultiplied1 == null) { - premultiplied1 = false; - } - if(format1 == null) { - format1 = 0; - } - if(premultiplied1) { - if((destPixel & 255) == 0) { - if(destPixel != 0) { - destPixel = 0; - } - } else if((destPixel & 255) != 255) { - lime_math__$RGBA_RGBA_$Impl_$.a16 = lime_math__$RGBA_RGBA_$Impl_$.__alpha16[destPixel & 255]; - destPixel = ((destPixel >>> 24 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 24 | ((destPixel >>> 16 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 16 | ((destPixel >>> 8 & 255) * lime_math__$RGBA_RGBA_$Impl_$.a16 >> 16 & 255) << 8 | destPixel & 255 & 255; - } - } - switch(format1) { - case 0: - destData[destOffset] = destPixel >>> 24 & 255; - destData[destOffset + 1] = destPixel >>> 16 & 255; - destData[destOffset + 2] = destPixel >>> 8 & 255; - destData[destOffset + 3] = destPixel & 255; - break; - case 1: - destData[destOffset] = destPixel & 255; - destData[destOffset + 1] = destPixel >>> 24 & 255; - destData[destOffset + 2] = destPixel >>> 16 & 255; - destData[destOffset + 3] = destPixel >>> 8 & 255; - break; - case 2: - destData[destOffset] = destPixel >>> 8 & 255; - destData[destOffset + 1] = destPixel >>> 16 & 255; - destData[destOffset + 2] = destPixel >>> 24 & 255; - destData[destOffset + 3] = destPixel & 255; - break; - } - } - } - destBitmapData.image.dirty = true; - return destBitmapData; - } - ,__initShader: function(renderer,pass) { - openfl_filters_ColorMatrixFilter.__colorMatrixShader.init(this.get_matrix()); - return openfl_filters_ColorMatrixFilter.__colorMatrixShader; - } - ,get_matrix: function() { - return this.__matrix; - } - ,set_matrix: function(value) { - if(value == null) { - value = [1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0]; - } - return this.__matrix = value; - } - ,__class__: openfl_filters_ColorMatrixFilter - ,__properties__: {set_matrix:"set_matrix",get_matrix:"get_matrix"} -}); -var openfl_filters__$ConvolutionFilter_ConvolutionShader = function() { - if(this.__glFragmentSource == null) { - this.__glFragmentSource = "varying vec2 vBlurCoords[9];\n\n\t\tuniform sampler2D openfl_Texture;\n\n\t\tuniform float uBias;\n\t\tuniform mat3 uConvoMatrix;\n\t\tuniform float uDivisor;\n\t\tuniform bool uPreserveAlpha;\n\n\t\tvoid main(void) {\n\n\t\t\tvec4 tc = texture2D (openfl_Texture, vBlurCoords[4]);\n\t\t\tvec4 c = vec4 (0.0);\n\n\t\t\tc += texture2D (openfl_Texture, vBlurCoords[0]) * uConvoMatrix[0][0];\n\t\t\tc += texture2D (openfl_Texture, vBlurCoords[1]) * uConvoMatrix[0][1];\n\t\t\tc += texture2D (openfl_Texture, vBlurCoords[2]) * uConvoMatrix[0][2];\n\n\t\t\tc += texture2D (openfl_Texture, vBlurCoords[3]) * uConvoMatrix[1][0];\n\t\t\tc += tc * uConvoMatrix[1][1];\n\t\t\tc += texture2D (openfl_Texture, vBlurCoords[5]) * uConvoMatrix[1][2];\n\n\t\t\tc += texture2D (openfl_Texture, vBlurCoords[6]) * uConvoMatrix[2][0];\n\t\t\tc += texture2D (openfl_Texture, vBlurCoords[7]) * uConvoMatrix[2][1];\n\t\t\tc += texture2D (openfl_Texture, vBlurCoords[8]) * uConvoMatrix[2][2];\n\n\t\t\tif (uDivisor > 0.0) {\n\n\t\t\t\tc /= vec4 (uDivisor, uDivisor, uDivisor, uDivisor);\n\n\t\t\t}\n\n\t\t\tc += vec4 (uBias, uBias, uBias, uBias);\n\n\t\t\tif (uPreserveAlpha) {\n\n\t\t\t\tc.a = tc.a;\n\n\t\t\t}\n\n\t\t\tgl_FragColor = c;\n\n\t\t}"; - } - if(this.__glVertexSource == null) { - this.__glVertexSource = "attribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\n\t\tvarying vec2 vBlurCoords[9];\n\n\t\tuniform mat4 openfl_Matrix;\n\t\tuniform vec2 openfl_TextureSize;\n\n\t\tvoid main(void) {\n\n\t\t\tvec2 r = vec2 (1.0, 1.0) / openfl_TextureSize;\n\t\t\tvec2 t = openfl_TextureCoord;\n\n\t\t\tvBlurCoords[0] = t + r * vec2 (-1.0, -1.0);\n\t\t\tvBlurCoords[1] = t + r * vec2 (0.0, -1.0);\n\t\t\tvBlurCoords[2] = t + r * vec2 (1.0, -1.0);\n\n\t\t\tvBlurCoords[3] = t + r * vec2 (-1.0, 0.0);\n\t\t\tvBlurCoords[4] = t;\n\t\t\tvBlurCoords[5] = t + r * vec2 (1.0, 0.0);\n\n\t\t\tvBlurCoords[6] = t + r * vec2 (-1.0, 1.0);\n\t\t\tvBlurCoords[7] = t + r * vec2 (0.0, 1.0);\n\t\t\tvBlurCoords[8] = t + r * vec2 (1.0, 1.0);\n\n\t\t\tgl_Position = openfl_Matrix * openfl_Position;\n\n\t\t}"; - } - openfl_filters_BitmapFilterShader.call(this); - this.uDivisor.value = [1]; - this.uBias.value = [0]; - this.uPreserveAlpha.value = [true]; - this.__isGenerated = true; - this.__initGL(); -}; -$hxClasses["openfl.filters._ConvolutionFilter.ConvolutionShader"] = openfl_filters__$ConvolutionFilter_ConvolutionShader; -openfl_filters__$ConvolutionFilter_ConvolutionShader.__name__ = "openfl.filters._ConvolutionFilter.ConvolutionShader"; -openfl_filters__$ConvolutionFilter_ConvolutionShader.__super__ = openfl_filters_BitmapFilterShader; -openfl_filters__$ConvolutionFilter_ConvolutionShader.prototype = $extend(openfl_filters_BitmapFilterShader.prototype,{ - uBias: null - ,uConvoMatrix: null - ,uDivisor: null - ,uPreserveAlpha: null - ,__class__: openfl_filters__$ConvolutionFilter_ConvolutionShader -}); -var openfl_filters_ConvolutionFilter = function(matrixX,matrixY,matrix,divisor,bias,preserveAlpha,clamp,color,alpha) { - if(alpha == null) { - alpha = 0.0; - } - if(color == null) { - color = 0; - } - if(clamp == null) { - clamp = true; - } - if(preserveAlpha == null) { - preserveAlpha = true; - } - if(bias == null) { - bias = 0.0; - } - if(divisor == null) { - divisor = 1.0; - } - if(matrixY == null) { - matrixY = 0; - } - if(matrixX == null) { - matrixX = 0; - } - openfl_filters_BitmapFilter.call(this); - this.matrixX = matrixX; - this.matrixY = matrixY; - this.__matrix = matrix; - this.divisor = divisor; - this.bias = bias; - this.preserveAlpha = preserveAlpha; - this.clamp = clamp; - this.color = color; - this.alpha = alpha; - this.__numShaderPasses = 1; -}; -$hxClasses["openfl.filters.ConvolutionFilter"] = openfl_filters_ConvolutionFilter; -openfl_filters_ConvolutionFilter.__name__ = "openfl.filters.ConvolutionFilter"; -openfl_filters_ConvolutionFilter.__super__ = openfl_filters_BitmapFilter; -openfl_filters_ConvolutionFilter.prototype = $extend(openfl_filters_BitmapFilter.prototype,{ - alpha: null - ,bias: null - ,clamp: null - ,color: null - ,divisor: null - ,matrixX: null - ,matrixY: null - ,preserveAlpha: null - ,__matrix: null - ,clone: function() { - return new openfl_filters_ConvolutionFilter(this.matrixX,this.matrixY,this.__matrix,this.divisor,this.bias,this.preserveAlpha,this.clamp,this.color,this.alpha); - } - ,__initShader: function(renderer,pass) { - openfl_filters_ConvolutionFilter.__convolutionShader.uConvoMatrix.value = this.get_matrix(); - openfl_filters_ConvolutionFilter.__convolutionShader.uDivisor.value[0] = this.divisor; - openfl_filters_ConvolutionFilter.__convolutionShader.uBias.value[0] = this.bias; - openfl_filters_ConvolutionFilter.__convolutionShader.uPreserveAlpha.value[0] = this.preserveAlpha; - return openfl_filters_ConvolutionFilter.__convolutionShader; - } - ,get_matrix: function() { - return this.__matrix; - } - ,set_matrix: function(v) { - if(v == null) { - v = [0,0,0,0,1,0,0,0,0]; - } - if(v.length != 9) { - throw new js__$Boot_HaxeError("Only a 3x3 matrix is supported"); - } - return this.__matrix = v; - } - ,__class__: openfl_filters_ConvolutionFilter - ,__properties__: {set_matrix:"set_matrix",get_matrix:"get_matrix"} -}); -var openfl_filters__$DisplacementMapFilter_DisplacementMapShader = function() { - if(this.__glFragmentSource == null) { - this.__glFragmentSource = "\n\n\t\tuniform sampler2D openfl_Texture;\n\t\tuniform sampler2D mapTexture;\n\n\t\tuniform mat4 openfl_Matrix;\n\n\t\tuniform vec4 uOffsets;\n\t\tuniform mat4 uDisplacements;\n\n\t\tvarying vec2 openfl_TextureCoordV;\n\t\tvarying vec2 mapTextureCoords;\n\n\t\tvoid main(void) {\n\n\t\t\tvec4 map_color = texture2D(mapTexture, mapTextureCoords);\n\t\t\tvec4 map_color_mod = map_color - uOffsets;\n\n\t\t\tmap_color_mod = map_color_mod * vec4(map_color.w, map_color.w, 1.0, 1.0);\n\n\t\t\tvec4 displacements_multiplied = map_color_mod * uDisplacements;\n\t\t\tvec4 result = vec4(openfl_TextureCoordV.x, openfl_TextureCoordV.y, 0.0, 1.0) + displacements_multiplied;\n\n\t\t\tgl_FragColor = texture2D(openfl_Texture, vec2(result));\n\n\t\t}\n\n\t"; - } - if(this.__glVertexSource == null) { - this.__glVertexSource = "\n\n\t\tuniform mat4 openfl_Matrix;\n\n\t\tuniform vec2 mapTextureCoordsOffset;\n\n\t\tattribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\n\t\tvarying vec2 openfl_TextureCoordV;\n\n\t\tvarying vec2 mapTextureCoords;\n\n\t\tvoid main(void) {\n\n\t\t\tgl_Position = openfl_Matrix * openfl_Position;\n\n\t\t\topenfl_TextureCoordV = openfl_TextureCoord;\n\t\t\tmapTextureCoords = openfl_TextureCoord - mapTextureCoordsOffset;\n\n\t\t}\n\n\t"; - } - openfl_filters_BitmapFilterShader.call(this); - this.__isGenerated = true; - this.__initGL(); -}; -$hxClasses["openfl.filters._DisplacementMapFilter.DisplacementMapShader"] = openfl_filters__$DisplacementMapFilter_DisplacementMapShader; -openfl_filters__$DisplacementMapFilter_DisplacementMapShader.__name__ = "openfl.filters._DisplacementMapFilter.DisplacementMapShader"; -openfl_filters__$DisplacementMapFilter_DisplacementMapShader.__super__ = openfl_filters_BitmapFilterShader; -openfl_filters__$DisplacementMapFilter_DisplacementMapShader.prototype = $extend(openfl_filters_BitmapFilterShader.prototype,{ - mapTextureCoordsOffset: null - ,mapTexture: null - ,uOffsets: null - ,uDisplacements: null - ,__class__: openfl_filters__$DisplacementMapFilter_DisplacementMapShader -}); -var openfl_filters_DisplacementMapFilter = function(mapBitmap,mapPoint,componentX,componentY,scaleX,scaleY,mode,color,alpha) { - if(alpha == null) { - alpha = 0.0; - } - if(color == null) { - color = 0; - } - if(mode == null) { - mode = "wrap"; - } - if(scaleY == null) { - scaleY = 0.0; - } - if(scaleX == null) { - scaleX = 0.0; - } - if(componentY == null) { - componentY = 0; - } - if(componentX == null) { - componentX = 0; - } - openfl_filters_BitmapFilter.call(this); - this.__mapBitmap = mapBitmap; - this.__mapPoint = mapPoint != null ? mapPoint : new openfl_geom_Point(); - this.__componentX = componentX; - this.__componentY = componentY; - this.__scaleX = scaleX; - this.__scaleY = scaleY; - this.__mode = mode; - this.__color = color; - this.__alpha = alpha; - this.__needSecondBitmapData = true; - this.__preserveObject = false; - this.__renderDirty = true; - this.__numShaderPasses = 1; -}; -$hxClasses["openfl.filters.DisplacementMapFilter"] = openfl_filters_DisplacementMapFilter; -openfl_filters_DisplacementMapFilter.__name__ = "openfl.filters.DisplacementMapFilter"; -openfl_filters_DisplacementMapFilter.__super__ = openfl_filters_BitmapFilter; -openfl_filters_DisplacementMapFilter.prototype = $extend(openfl_filters_BitmapFilter.prototype,{ - __alpha: null - ,__color: null - ,__componentX: null - ,__componentY: null - ,__mapBitmap: null - ,__mapPoint: null - ,__mode: null - ,__scaleX: null - ,__scaleY: null - ,clone: function() { - return new openfl_filters_DisplacementMapFilter(this.__mapBitmap,this.__mapPoint.clone(),this.__componentX,this.__componentY,this.__scaleX,this.__scaleY,this.__mode,this.__color,this.__alpha); - } - ,__applyFilter: function(bitmapData,sourceBitmapData,sourceRect,destPoint) { - this.__updateMapMatrix(); - lime__$internal_graphics_ImageCanvasUtil.convertToData(bitmapData.image); - lime__$internal_graphics_ImageCanvasUtil.convertToData(sourceBitmapData.image); - lime__$internal_graphics_ImageCanvasUtil.convertToData(this.__mapBitmap.image); - lime__$internal_graphics_ImageDataUtil.displaceMap(bitmapData.image,sourceBitmapData.image,this.__mapBitmap.image,new lime_math_Vector2(this.__mapPoint.x / this.__mapBitmap.width,this.__mapPoint.y / this.__mapBitmap.height),new lime_math_Vector4(openfl_filters_DisplacementMapFilter.__matrixData[0],openfl_filters_DisplacementMapFilter.__matrixData[4],openfl_filters_DisplacementMapFilter.__matrixData[8],openfl_filters_DisplacementMapFilter.__matrixData[12]),new lime_math_Vector4(openfl_filters_DisplacementMapFilter.__matrixData[1],openfl_filters_DisplacementMapFilter.__matrixData[5],openfl_filters_DisplacementMapFilter.__matrixData[9],openfl_filters_DisplacementMapFilter.__matrixData[13]),this.__smooth); - return bitmapData; - } - ,__initShader: function(renderer,pass) { - this.__updateMapMatrix(); - openfl_filters_DisplacementMapFilter.__displacementMapShader.uOffsets.value = openfl_filters_DisplacementMapFilter.__offset; - openfl_filters_DisplacementMapFilter.__displacementMapShader.uDisplacements.value = openfl_filters_DisplacementMapFilter.__matrixData; - var tmp = this.get_mapPoint().x / this.__mapBitmap.width; - var tmp1 = this.get_mapPoint().y / this.__mapBitmap.height; - openfl_filters_DisplacementMapFilter.__displacementMapShader.mapTextureCoordsOffset.value = [tmp,tmp1]; - openfl_filters_DisplacementMapFilter.__displacementMapShader.mapTexture.input = this.__mapBitmap; - return openfl_filters_DisplacementMapFilter.__displacementMapShader; - } - ,__updateMapMatrix: function() { - var columnX; - var columnY; - var scale = 1.0; - var textureWidth = this.__mapBitmap.width; - var textureHeight = this.__mapBitmap.height; - openfl_filters_DisplacementMapFilter.__matrixData[0] = 0; - openfl_filters_DisplacementMapFilter.__matrixData[1] = 0; - openfl_filters_DisplacementMapFilter.__matrixData[2] = 0; - openfl_filters_DisplacementMapFilter.__matrixData[3] = 0; - openfl_filters_DisplacementMapFilter.__matrixData[4] = 0; - openfl_filters_DisplacementMapFilter.__matrixData[5] = 0; - openfl_filters_DisplacementMapFilter.__matrixData[6] = 0; - openfl_filters_DisplacementMapFilter.__matrixData[7] = 0; - openfl_filters_DisplacementMapFilter.__matrixData[8] = 0; - openfl_filters_DisplacementMapFilter.__matrixData[9] = 0; - openfl_filters_DisplacementMapFilter.__matrixData[10] = 0; - openfl_filters_DisplacementMapFilter.__matrixData[11] = 0; - openfl_filters_DisplacementMapFilter.__matrixData[12] = 0; - openfl_filters_DisplacementMapFilter.__matrixData[13] = 0; - openfl_filters_DisplacementMapFilter.__matrixData[14] = 0; - openfl_filters_DisplacementMapFilter.__matrixData[15] = 0; - if(this.__componentX == 1) { - columnX = 0; - } else if(this.__componentX == 2) { - columnX = 1; - } else if(this.__componentX == 4) { - columnX = 2; - } else { - columnX = 3; - } - if(this.__componentY == 1) { - columnY = 0; - } else if(this.__componentY == 2) { - columnY = 1; - } else if(this.__componentY == 4) { - columnY = 2; - } else { - columnY = 3; - } - openfl_filters_DisplacementMapFilter.__matrixData[columnX * 4] = this.__scaleX * scale / textureWidth; - openfl_filters_DisplacementMapFilter.__matrixData[columnY * 4 + 1] = this.__scaleY * scale / textureHeight; - } - ,get_alpha: function() { - return this.__alpha; - } - ,set_alpha: function(value) { - if(value != this.__alpha) { - this.__renderDirty = true; - } - return this.__alpha = value; - } - ,get_componentX: function() { - return this.__componentX; - } - ,set_componentX: function(value) { - if(value != this.__componentX) { - this.__renderDirty = true; - } - return this.__componentX = value; - } - ,get_componentY: function() { - return this.__componentY; - } - ,set_componentY: function(value) { - if(value != this.__componentY) { - this.__renderDirty = true; - } - return this.__componentY = value; - } - ,get_color: function() { - return this.__color; - } - ,set_color: function(value) { - if(value != this.__color) { - this.__renderDirty = true; - } - return this.__color = value; - } - ,get_scaleX: function() { - return this.__scaleX; - } - ,set_scaleX: function(value) { - if(value != this.__scaleX) { - this.__renderDirty = true; - } - return this.__scaleX = value; - } - ,get_scaleY: function() { - return this.__scaleY; - } - ,set_scaleY: function(value) { - if(value != this.__scaleY) { - this.__renderDirty = true; - } - return this.__scaleY = value; - } - ,get_mapBitmap: function() { - return this.__mapBitmap; - } - ,set_mapBitmap: function(value) { - if(value != this.__mapBitmap) { - this.__renderDirty = true; - } - return this.__mapBitmap = value; - } - ,get_mapPoint: function() { - return this.__mapPoint; - } - ,set_mapPoint: function(value) { - if(value != this.__mapPoint) { - this.__renderDirty = true; - } - return this.__mapPoint = value; - } - ,get_mode: function() { - return this.__mode; - } - ,set_mode: function(value) { - if(value != this.__mode) { - this.__renderDirty = true; - } - return this.__mode = value; - } - ,__class__: openfl_filters_DisplacementMapFilter - ,__properties__: {set_scaleY:"set_scaleY",get_scaleY:"get_scaleY",set_scaleX:"set_scaleX",get_scaleX:"get_scaleX",set_mode:"set_mode",get_mode:"get_mode",set_mapPoint:"set_mapPoint",get_mapPoint:"get_mapPoint",set_mapBitmap:"set_mapBitmap",get_mapBitmap:"get_mapBitmap",set_componentY:"set_componentY",get_componentY:"get_componentY",set_componentX:"set_componentX",get_componentX:"get_componentX",set_color:"set_color",get_color:"get_color",set_alpha:"set_alpha",get_alpha:"get_alpha"} -}); -var openfl_filters_DropShadowFilter = function(distance,angle,color,alpha,blurX,blurY,strength,quality,inner,knockout,hideObject) { - if(hideObject == null) { - hideObject = false; - } - if(knockout == null) { - knockout = false; - } - if(inner == null) { - inner = false; - } - if(quality == null) { - quality = 1; - } - if(strength == null) { - strength = 1; - } - if(blurY == null) { - blurY = 4; - } - if(blurX == null) { - blurX = 4; - } - if(alpha == null) { - alpha = 1; - } - if(color == null) { - color = 0; - } - if(angle == null) { - angle = 45; - } - if(distance == null) { - distance = 4; - } - openfl_filters_BitmapFilter.call(this); - this.__offsetX = 0; - this.__offsetY = 0; - this.__distance = distance; - this.__angle = angle; - this.__color = color; - this.__alpha = alpha; - this.__blurX = blurX; - this.__blurY = blurY; - this.__strength = strength; - this.__quality = quality; - this.__inner = inner; - this.__knockout = knockout; - this.__hideObject = hideObject; - this.__updateSize(); - this.__needSecondBitmapData = true; - this.__preserveObject = !this.__hideObject; - this.__renderDirty = true; -}; -$hxClasses["openfl.filters.DropShadowFilter"] = openfl_filters_DropShadowFilter; -openfl_filters_DropShadowFilter.__name__ = "openfl.filters.DropShadowFilter"; -openfl_filters_DropShadowFilter.__super__ = openfl_filters_BitmapFilter; -openfl_filters_DropShadowFilter.prototype = $extend(openfl_filters_BitmapFilter.prototype,{ - __alpha: null - ,__angle: null - ,__blurX: null - ,__blurY: null - ,__color: null - ,__distance: null - ,__hideObject: null - ,__inner: null - ,__knockout: null - ,__offsetX: null - ,__offsetY: null - ,__quality: null - ,__strength: null - ,clone: function() { - return new openfl_filters_DropShadowFilter(this.__distance,this.__angle,this.__color,this.__alpha,this.__blurX,this.__blurY,this.__strength,this.__quality,this.__inner,this.__knockout,this.__hideObject); - } - ,__applyFilter: function(bitmapData,sourceBitmapData,sourceRect,destPoint) { - var r = this.__color >> 16 & 255; - var g = this.__color >> 8 & 255; - var b = this.__color & 255; - var point = new openfl_geom_Point(destPoint.x + this.__offsetX,destPoint.y + this.__offsetY); - var finalImage = lime__$internal_graphics_ImageDataUtil.gaussianBlur(bitmapData.image,sourceBitmapData.image,sourceRect.__toLimeRectangle(),point.__toLimeVector2(),this.__blurX,this.__blurY,this.__quality,this.__strength); - finalImage.colorTransform(finalImage.get_rect(),new openfl_geom_ColorTransform(0,0,0,this.__alpha,r,g,b,0).__toLimeColorMatrix()); - if(finalImage == bitmapData.image) { - return bitmapData; - } - return sourceBitmapData; - } - ,__updateSize: function() { - this.__offsetX = this.__distance * Math.cos(this.__angle * Math.PI / 180) | 0; - this.__offsetY = this.__distance * Math.sin(this.__angle * Math.PI / 180) | 0; - this.__topExtension = Math.ceil((this.__offsetY < 0 ? -this.__offsetY : 0) + this.__blurY); - this.__bottomExtension = Math.ceil((this.__offsetY > 0 ? this.__offsetY : 0) + this.__blurY); - this.__leftExtension = Math.ceil((this.__offsetX < 0 ? -this.__offsetX : 0) + this.__blurX); - this.__rightExtension = Math.ceil((this.__offsetX > 0 ? this.__offsetX : 0) + this.__blurX); - } - ,get_alpha: function() { - return this.__alpha; - } - ,set_alpha: function(value) { - if(value != this.__alpha) { - this.__renderDirty = true; - } - return this.__alpha = value; - } - ,get_angle: function() { - return this.__angle; - } - ,set_angle: function(value) { - if(value != this.__angle) { - this.__angle = value; - this.__renderDirty = true; - this.__updateSize(); - } - return value; - } - ,get_blurX: function() { - return this.__blurX; - } - ,set_blurX: function(value) { - if(value != this.__blurX) { - this.__blurX = value; - this.__renderDirty = true; - this.__updateSize(); - } - return value; - } - ,get_blurY: function() { - return this.__blurY; - } - ,set_blurY: function(value) { - if(value != this.__blurY) { - this.__blurY = value; - this.__renderDirty = true; - this.__updateSize(); - } - return value; - } - ,get_color: function() { - return this.__color; - } - ,set_color: function(value) { - if(value != this.__color) { - this.__renderDirty = true; - } - return this.__color = value; - } - ,get_distance: function() { - return this.__distance; - } - ,set_distance: function(value) { - if(value != this.__distance) { - this.__distance = value; - this.__renderDirty = true; - this.__updateSize(); - } - return value; - } - ,get_hideObject: function() { - return this.__hideObject; - } - ,set_hideObject: function(value) { - if(value != this.__hideObject) { - this.__renderDirty = true; - this.__preserveObject = !value; - } - return this.__hideObject = value; - } - ,get_inner: function() { - return this.__inner; - } - ,set_inner: function(value) { - if(value != this.__inner) { - this.__renderDirty = true; - } - return this.__inner = value; - } - ,get_knockout: function() { - return this.__knockout; - } - ,set_knockout: function(value) { - if(value != this.__knockout) { - this.__renderDirty = true; - } - return this.__knockout = value; - } - ,get_quality: function() { - return this.__quality; - } - ,set_quality: function(value) { - if(value != this.__quality) { - this.__renderDirty = true; - } - return this.__quality = value; - } - ,get_strength: function() { - return this.__strength; - } - ,set_strength: function(value) { - if(value != this.__strength) { - this.__renderDirty = true; - } - return this.__strength = value; - } - ,__class__: openfl_filters_DropShadowFilter - ,__properties__: {set_strength:"set_strength",get_strength:"get_strength",set_quality:"set_quality",get_quality:"get_quality",set_knockout:"set_knockout",get_knockout:"get_knockout",set_inner:"set_inner",get_inner:"get_inner",set_hideObject:"set_hideObject",get_hideObject:"get_hideObject",set_distance:"set_distance",get_distance:"get_distance",set_color:"set_color",get_color:"get_color",set_blurY:"set_blurY",get_blurY:"get_blurY",set_blurX:"set_blurX",get_blurX:"get_blurX",set_angle:"set_angle",get_angle:"get_angle",set_alpha:"set_alpha",get_alpha:"get_alpha"} -}); -var openfl_filters__$GlowFilter_GlowShader = function() { - if(this.__glFragmentSource == null) { - this.__glFragmentSource = "uniform sampler2D openfl_Texture;\n\t\t\n\t\tuniform vec4 uColor;\n\t\t\n\t\tvarying vec2 vBlurCoords[7];\n\t\t\n\t\tvoid main(void) {\n\t\t\t\n\t\t\tfloat a = 0.0;\n\t\t\ta += texture2D(openfl_Texture, vBlurCoords[0]).a * 0.00443;\n\t\t\ta += texture2D(openfl_Texture, vBlurCoords[1]).a * 0.05399;\n\t\t\ta += texture2D(openfl_Texture, vBlurCoords[2]).a * 0.24197;\n\t\t\ta += texture2D(openfl_Texture, vBlurCoords[3]).a * 0.39894;\n\t\t\ta += texture2D(openfl_Texture, vBlurCoords[4]).a * 0.24197;\n\t\t\ta += texture2D(openfl_Texture, vBlurCoords[5]).a * 0.05399;\n\t\t\ta += texture2D(openfl_Texture, vBlurCoords[6]).a * 0.00443;\n\t\t\ta *= uColor.a;\n\t\t\t\n\t\t\tgl_FragColor = vec4(uColor.rgb * a, a);\n\t\t\t\n\t\t}"; - } - if(this.__glVertexSource == null) { - this.__glVertexSource = "attribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\t\t\n\t\tuniform mat4 openfl_Matrix;\n\t\tuniform vec2 openfl_TextureSize;\n\t\t\n\t\tuniform vec2 uRadius;\n\t\tvarying vec2 vBlurCoords[7];\n\t\t\n\t\tvoid main(void) {\n\t\t\t\n\t\t\tgl_Position = openfl_Matrix * openfl_Position;\n\t\t\t\n\t\t\tvec2 r = uRadius / openfl_TextureSize;\n\t\t\tvBlurCoords[0] = openfl_TextureCoord - r * 1.0;\n\t\t\tvBlurCoords[1] = openfl_TextureCoord - r * 0.75;\n\t\t\tvBlurCoords[2] = openfl_TextureCoord - r * 0.5;\n\t\t\tvBlurCoords[3] = openfl_TextureCoord;\n\t\t\tvBlurCoords[4] = openfl_TextureCoord + r * 0.5;\n\t\t\tvBlurCoords[5] = openfl_TextureCoord + r * 0.75;\n\t\t\tvBlurCoords[6] = openfl_TextureCoord + r * 1.0;\n\t\t\t\n\t\t}"; - } - openfl_filters_BitmapFilterShader.call(this); - this.uRadius.value = [0,0]; - this.uColor.value = [0,0,0,0]; - this.__isGenerated = true; - this.__initGL(); -}; -$hxClasses["openfl.filters._GlowFilter.GlowShader"] = openfl_filters__$GlowFilter_GlowShader; -openfl_filters__$GlowFilter_GlowShader.__name__ = "openfl.filters._GlowFilter.GlowShader"; -openfl_filters__$GlowFilter_GlowShader.__super__ = openfl_filters_BitmapFilterShader; -openfl_filters__$GlowFilter_GlowShader.prototype = $extend(openfl_filters_BitmapFilterShader.prototype,{ - uRadius: null - ,uColor: null - ,__class__: openfl_filters__$GlowFilter_GlowShader -}); -var openfl_filters_GlowFilter = function(color,alpha,blurX,blurY,strength,quality,inner,knockout) { - if(knockout == null) { - knockout = false; - } - if(inner == null) { - inner = false; - } - if(quality == null) { - quality = 1; - } - if(strength == null) { - strength = 2; - } - if(blurY == null) { - blurY = 6; - } - if(blurX == null) { - blurX = 6; - } - if(alpha == null) { - alpha = 1; - } - if(color == null) { - color = 16711680; - } - openfl_filters_BitmapFilter.call(this); - this.__color = color; - this.__alpha = alpha; - this.set_blurX(blurX); - this.set_blurY(blurY); - this.__strength = strength; - this.set_quality(quality); - this.__inner = inner; - this.__knockout = knockout; - this.__needSecondBitmapData = true; - this.__preserveObject = true; - this.__renderDirty = true; -}; -$hxClasses["openfl.filters.GlowFilter"] = openfl_filters_GlowFilter; -openfl_filters_GlowFilter.__name__ = "openfl.filters.GlowFilter"; -openfl_filters_GlowFilter.__super__ = openfl_filters_BitmapFilter; -openfl_filters_GlowFilter.prototype = $extend(openfl_filters_BitmapFilter.prototype,{ - __alpha: null - ,__blurX: null - ,__blurY: null - ,__color: null - ,__horizontalPasses: null - ,__inner: null - ,__knockout: null - ,__quality: null - ,__strength: null - ,__verticalPasses: null - ,clone: function() { - return new openfl_filters_GlowFilter(this.__color,this.__alpha,this.__blurX,this.__blurY,this.__strength,this.__quality,this.__inner,this.__knockout); - } - ,__applyFilter: function(bitmapData,sourceBitmapData,sourceRect,destPoint) { - var r = this.__color >> 16 & 255; - var g = this.__color >> 8 & 255; - var b = this.__color & 255; - var finalImage = lime__$internal_graphics_ImageDataUtil.gaussianBlur(bitmapData.image,sourceBitmapData.image,sourceRect.__toLimeRectangle(),destPoint.__toLimeVector2(),this.__blurX,this.__blurY,this.__quality,this.__strength); - finalImage.colorTransform(finalImage.get_rect(),new openfl_geom_ColorTransform(0,0,0,this.__alpha,r,g,b,0).__toLimeColorMatrix()); - if(finalImage == bitmapData.image) { - return bitmapData; - } - return sourceBitmapData; - } - ,__initShader: function(renderer,pass) { - if(pass <= this.__horizontalPasses) { - var scale = Math.pow(0.5,pass >> 1); - openfl_filters_GlowFilter.__glowShader.uRadius.value[0] = this.get_blurX() * scale; - openfl_filters_GlowFilter.__glowShader.uRadius.value[1] = 0; - } else { - var scale1 = Math.pow(0.5,pass - this.__horizontalPasses >> 1); - openfl_filters_GlowFilter.__glowShader.uRadius.value[0] = 0; - openfl_filters_GlowFilter.__glowShader.uRadius.value[1] = this.get_blurY() * scale1; - } - openfl_filters_GlowFilter.__glowShader.uColor.value[0] = (this.get_color() >> 16 & 255) / 255; - openfl_filters_GlowFilter.__glowShader.uColor.value[1] = (this.get_color() >> 8 & 255) / 255; - openfl_filters_GlowFilter.__glowShader.uColor.value[2] = (this.get_color() & 255) / 255; - openfl_filters_GlowFilter.__glowShader.uColor.value[3] = this.get_alpha() * (this.__strength / this.__numShaderPasses); - return openfl_filters_GlowFilter.__glowShader; - } - ,get_alpha: function() { - return this.__alpha; - } - ,set_alpha: function(value) { - if(value != this.__alpha) { - this.__renderDirty = true; - } - return this.__alpha = value; - } - ,get_blurX: function() { - return this.__blurX; - } - ,set_blurX: function(value) { - if(value != this.__blurX) { - this.__blurX = value; - this.__renderDirty = true; - this.__leftExtension = value > 0 ? Math.ceil(value * 1.5) : 0; - this.__rightExtension = this.__leftExtension; - } - return value; - } - ,get_blurY: function() { - return this.__blurY; - } - ,set_blurY: function(value) { - if(value != this.__blurY) { - this.__blurY = value; - this.__renderDirty = true; - this.__topExtension = value > 0 ? Math.ceil(value * 1.5) : 0; - this.__bottomExtension = this.__topExtension; - } - return value; - } - ,get_color: function() { - return this.__color; - } - ,set_color: function(value) { - if(value != this.__color) { - this.__renderDirty = true; - } - return this.__color = value; - } - ,get_inner: function() { - return this.__inner; - } - ,set_inner: function(value) { - if(value != this.__inner) { - this.__renderDirty = true; - } - return this.__inner = value; - } - ,get_knockout: function() { - return this.__knockout; - } - ,set_knockout: function(value) { - if(value != this.__knockout) { - this.__renderDirty = true; - } - return this.__knockout = value; - } - ,get_quality: function() { - return this.__quality; - } - ,set_quality: function(value) { - this.__horizontalPasses = this.__blurX <= 0 ? 0 : Math.round(this.__blurX * (value / 4)) + 1; - this.__verticalPasses = this.__blurY <= 0 ? 0 : Math.round(this.__blurY * (value / 4)) + 1; - this.__numShaderPasses = this.__horizontalPasses + this.__verticalPasses; - if(value != this.__quality) { - this.__renderDirty = true; - } - return this.__quality = value; - } - ,get_strength: function() { - return this.__strength; - } - ,set_strength: function(value) { - if(value != this.__strength) { - this.__renderDirty = true; - } - return this.__strength = value; - } - ,__class__: openfl_filters_GlowFilter - ,__properties__: {set_strength:"set_strength",get_strength:"get_strength",set_quality:"set_quality",get_quality:"get_quality",set_knockout:"set_knockout",get_knockout:"get_knockout",set_inner:"set_inner",get_inner:"get_inner",set_color:"set_color",get_color:"get_color",set_blurY:"set_blurY",get_blurY:"get_blurY",set_blurX:"set_blurX",get_blurX:"get_blurX",set_alpha:"set_alpha",get_alpha:"get_alpha"} -}); -var openfl_geom_Matrix3D = function(v) { - if(v != null && v.get_length() == 16) { - this.rawData = v.concat(null); - } else { - this.rawData = openfl__$Vector_Vector_$Impl_$.toFloatVector(null,null,null,[1.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,0.0,1.0]); - } -}; -$hxClasses["openfl.geom.Matrix3D"] = openfl_geom_Matrix3D; -openfl_geom_Matrix3D.__name__ = "openfl.geom.Matrix3D"; -openfl_geom_Matrix3D.create2D = function(x,y,scale,rotation) { - if(rotation == null) { - rotation = 0; - } - if(scale == null) { - scale = 1; - } - var theta = rotation * Math.PI / 180.0; - var c = Math.cos(theta); - var s = Math.sin(theta); - return new openfl_geom_Matrix3D(openfl__$Vector_Vector_$Impl_$.toFloatVector(null,null,null,[c * scale,-s * scale,0,0,s * scale,c * scale,0,0,0,0,1,0,x,y,0,1])); -}; -openfl_geom_Matrix3D.createABCD = function(a,b,c,d,tx,ty) { - return new openfl_geom_Matrix3D(openfl__$Vector_Vector_$Impl_$.toFloatVector(null,null,null,[a,b,0,0,c,d,0,0,0,0,1,0,tx,ty,0,1])); -}; -openfl_geom_Matrix3D.createOrtho = function(x0,x1,y0,y1,zNear,zFar) { - var sx = 1.0 / (x1 - x0); - var sy = 1.0 / (y1 - y0); - var sz = 1.0 / (zFar - zNear); - return new openfl_geom_Matrix3D(openfl__$Vector_Vector_$Impl_$.toFloatVector(null,null,null,[2.0 * sx,0,0,0,0,2.0 * sy,0,0,0,0,-2.0 * sz,0,-(x0 + x1) * sx,-(y0 + y1) * sy,-(zNear + zFar) * sz,1])); -}; -openfl_geom_Matrix3D.interpolate = function(thisMat,toMat,percent) { - var m = new openfl_geom_Matrix3D(); - var _g = 0; - while(_g < 16) { - var i = _g++; - m.rawData.set(i,thisMat.rawData.get(i) + (toMat.rawData.get(i) - thisMat.rawData.get(i)) * percent); - } - return m; -}; -openfl_geom_Matrix3D.__getAxisRotation = function(x,y,z,degrees) { - var m = new openfl_geom_Matrix3D(); - var a1 = new openfl_geom_Vector3D(x,y,z); - var rad = -degrees * (Math.PI / 180); - var c = Math.cos(rad); - var s = Math.sin(rad); - var t = 1.0 - c; - m.rawData.set(0,c + a1.x * a1.x * t); - m.rawData.set(5,c + a1.y * a1.y * t); - m.rawData.set(10,c + a1.z * a1.z * t); - var tmp1 = a1.x * a1.y * t; - var tmp2 = a1.z * s; - m.rawData.set(4,tmp1 + tmp2); - m.rawData.set(1,tmp1 - tmp2); - tmp1 = a1.x * a1.z * t; - tmp2 = a1.y * s; - m.rawData.set(8,tmp1 - tmp2); - m.rawData.set(2,tmp1 + tmp2); - tmp1 = a1.y * a1.z * t; - tmp2 = a1.x * s; - m.rawData.set(9,tmp1 + tmp2); - m.rawData.set(6,tmp1 - tmp2); - return m; -}; -openfl_geom_Matrix3D.prototype = { - rawData: null - ,append: function(lhs) { - var m111 = this.rawData.get(0); - var m121 = this.rawData.get(4); - var m131 = this.rawData.get(8); - var m141 = this.rawData.get(12); - var m112 = this.rawData.get(1); - var m122 = this.rawData.get(5); - var m132 = this.rawData.get(9); - var m142 = this.rawData.get(13); - var m113 = this.rawData.get(2); - var m123 = this.rawData.get(6); - var m133 = this.rawData.get(10); - var m143 = this.rawData.get(14); - var m114 = this.rawData.get(3); - var m124 = this.rawData.get(7); - var m134 = this.rawData.get(11); - var m144 = this.rawData.get(15); - var m211 = lhs.rawData.get(0); - var m221 = lhs.rawData.get(4); - var m231 = lhs.rawData.get(8); - var m241 = lhs.rawData.get(12); - var m212 = lhs.rawData.get(1); - var m222 = lhs.rawData.get(5); - var m232 = lhs.rawData.get(9); - var m242 = lhs.rawData.get(13); - var m213 = lhs.rawData.get(2); - var m223 = lhs.rawData.get(6); - var m233 = lhs.rawData.get(10); - var m243 = lhs.rawData.get(14); - var m214 = lhs.rawData.get(3); - var m224 = lhs.rawData.get(7); - var m234 = lhs.rawData.get(11); - var m244 = lhs.rawData.get(15); - this.rawData.set(0,m111 * m211 + m112 * m221 + m113 * m231 + m114 * m241); - this.rawData.set(1,m111 * m212 + m112 * m222 + m113 * m232 + m114 * m242); - this.rawData.set(2,m111 * m213 + m112 * m223 + m113 * m233 + m114 * m243); - this.rawData.set(3,m111 * m214 + m112 * m224 + m113 * m234 + m114 * m244); - this.rawData.set(4,m121 * m211 + m122 * m221 + m123 * m231 + m124 * m241); - this.rawData.set(5,m121 * m212 + m122 * m222 + m123 * m232 + m124 * m242); - this.rawData.set(6,m121 * m213 + m122 * m223 + m123 * m233 + m124 * m243); - this.rawData.set(7,m121 * m214 + m122 * m224 + m123 * m234 + m124 * m244); - this.rawData.set(8,m131 * m211 + m132 * m221 + m133 * m231 + m134 * m241); - this.rawData.set(9,m131 * m212 + m132 * m222 + m133 * m232 + m134 * m242); - this.rawData.set(10,m131 * m213 + m132 * m223 + m133 * m233 + m134 * m243); - this.rawData.set(11,m131 * m214 + m132 * m224 + m133 * m234 + m134 * m244); - this.rawData.set(12,m141 * m211 + m142 * m221 + m143 * m231 + m144 * m241); - this.rawData.set(13,m141 * m212 + m142 * m222 + m143 * m232 + m144 * m242); - this.rawData.set(14,m141 * m213 + m142 * m223 + m143 * m233 + m144 * m243); - this.rawData.set(15,m141 * m214 + m142 * m224 + m143 * m234 + m144 * m244); - } - ,appendRotation: function(degrees,axis,pivotPoint) { - var tz = 0; - var ty = tz; - var tx = ty; - if(pivotPoint != null) { - tx = pivotPoint.x; - ty = pivotPoint.y; - tz = pivotPoint.z; - } - var radian = degrees * Math.PI / 180; - var cos = Math.cos(radian); - var sin = Math.sin(radian); - var x = axis.x; - var y = axis.y; - var z = axis.z; - var x2 = x * x; - var y2 = y * y; - var z2 = z * z; - var ls = x2 + y2 + z2; - if(ls != 0) { - var l = Math.sqrt(ls); - x /= l; - y /= l; - z /= l; - x2 /= ls; - y2 /= ls; - z2 /= ls; - } - var ccos = 1 - cos; - var m = new openfl_geom_Matrix3D(); - var d = m.rawData; - d.set(0,x2 + (y2 + z2) * cos); - d.set(1,x * y * ccos + z * sin); - d.set(2,x * z * ccos - y * sin); - d.set(4,x * y * ccos - z * sin); - d.set(5,y2 + (x2 + z2) * cos); - d.set(6,y * z * ccos + x * sin); - d.set(8,x * z * ccos + y * sin); - d.set(9,y * z * ccos - x * sin); - d.set(10,z2 + (x2 + y2) * cos); - d.set(12,(tx * (y2 + z2) - x * (ty * y + tz * z)) * ccos + (ty * z - tz * y) * sin); - d.set(13,(ty * (x2 + z2) - y * (tx * x + tz * z)) * ccos + (tz * x - tx * z) * sin); - d.set(14,(tz * (x2 + y2) - z * (tx * x + ty * y)) * ccos + (tx * y - ty * x) * sin); - this.append(m); - } - ,appendScale: function(xScale,yScale,zScale) { - this.append(new openfl_geom_Matrix3D(openfl__$Vector_Vector_$Impl_$.toFloatVector(null,null,null,[xScale,0.0,0.0,0.0,0.0,yScale,0.0,0.0,0.0,0.0,zScale,0.0,0.0,0.0,0.0,1.0]))); - } - ,appendTranslation: function(x,y,z) { - var _g = this.rawData; - _g.set(12,_g.get(12) + x); - var _g1 = this.rawData; - _g1.set(13,_g1.get(13) + y); - var _g2 = this.rawData; - _g2.set(14,_g2.get(14) + z); - } - ,clone: function() { - return new openfl_geom_Matrix3D(this.rawData.copy()); - } - ,copyColumnFrom: function(column,vector3D) { - switch(column) { - case 0: - this.rawData.set(0,vector3D.x); - this.rawData.set(1,vector3D.y); - this.rawData.set(2,vector3D.z); - this.rawData.set(3,vector3D.w); - break; - case 1: - this.rawData.set(4,vector3D.x); - this.rawData.set(5,vector3D.y); - this.rawData.set(6,vector3D.z); - this.rawData.set(7,vector3D.w); - break; - case 2: - this.rawData.set(8,vector3D.x); - this.rawData.set(9,vector3D.y); - this.rawData.set(10,vector3D.z); - this.rawData.set(11,vector3D.w); - break; - case 3: - this.rawData.set(12,vector3D.x); - this.rawData.set(13,vector3D.y); - this.rawData.set(14,vector3D.z); - this.rawData.set(15,vector3D.w); - break; - default: - } - } - ,copyColumnTo: function(column,vector3D) { - switch(column) { - case 0: - vector3D.x = this.rawData.get(0); - vector3D.y = this.rawData.get(1); - vector3D.z = this.rawData.get(2); - vector3D.w = this.rawData.get(3); - break; - case 1: - vector3D.x = this.rawData.get(4); - vector3D.y = this.rawData.get(5); - vector3D.z = this.rawData.get(6); - vector3D.w = this.rawData.get(7); - break; - case 2: - vector3D.x = this.rawData.get(8); - vector3D.y = this.rawData.get(9); - vector3D.z = this.rawData.get(10); - vector3D.w = this.rawData.get(11); - break; - case 3: - vector3D.x = this.rawData.get(12); - vector3D.y = this.rawData.get(13); - vector3D.z = this.rawData.get(14); - vector3D.w = this.rawData.get(15); - break; - default: - } - } - ,copyFrom: function(other) { - this.rawData = other.rawData.copy(); - } - ,copyRawDataFrom: function(vector,index,transpose) { - if(transpose == null) { - transpose = false; - } - if(index == null) { - index = 0; - } - if(transpose) { - this.transpose(); - } - var length = vector.get_length() - index; - var _g = 0; - var _g1 = length; - while(_g < _g1) { - var i = _g++; - this.rawData.set(i,vector.get(i + index)); - } - if(transpose) { - this.transpose(); - } - } - ,copyRawDataTo: function(vector,index,transpose) { - if(transpose == null) { - transpose = false; - } - if(index == null) { - index = 0; - } - if(transpose) { - this.transpose(); - } - var _g = 0; - var _g1 = this.rawData.get_length(); - while(_g < _g1) { - var i = _g++; - vector.set(i + index,this.rawData.get(i)); - } - if(transpose) { - this.transpose(); - } - } - ,copyRowFrom: function(row,vector3D) { - switch(row) { - case 0: - this.rawData.set(0,vector3D.x); - this.rawData.set(4,vector3D.y); - this.rawData.set(8,vector3D.z); - this.rawData.set(12,vector3D.w); - break; - case 1: - this.rawData.set(1,vector3D.x); - this.rawData.set(5,vector3D.y); - this.rawData.set(9,vector3D.z); - this.rawData.set(13,vector3D.w); - break; - case 2: - this.rawData.set(2,vector3D.x); - this.rawData.set(6,vector3D.y); - this.rawData.set(10,vector3D.z); - this.rawData.set(14,vector3D.w); - break; - case 3: - this.rawData.set(3,vector3D.x); - this.rawData.set(7,vector3D.y); - this.rawData.set(11,vector3D.z); - this.rawData.set(15,vector3D.w); - break; - default: - } - } - ,copyRowTo: function(row,vector3D) { - switch(row) { - case 0: - vector3D.x = this.rawData.get(0); - vector3D.y = this.rawData.get(4); - vector3D.z = this.rawData.get(8); - vector3D.w = this.rawData.get(12); - break; - case 1: - vector3D.x = this.rawData.get(1); - vector3D.y = this.rawData.get(5); - vector3D.z = this.rawData.get(9); - vector3D.w = this.rawData.get(13); - break; - case 2: - vector3D.x = this.rawData.get(2); - vector3D.y = this.rawData.get(6); - vector3D.z = this.rawData.get(10); - vector3D.w = this.rawData.get(14); - break; - case 3: - vector3D.x = this.rawData.get(3); - vector3D.y = this.rawData.get(7); - vector3D.z = this.rawData.get(11); - vector3D.w = this.rawData.get(15); - break; - default: - } - } - ,copyToMatrix3D: function(other) { - other.rawData = this.rawData.copy(); - } - ,decompose: function(orientationStyle) { - if(orientationStyle == null) { - orientationStyle = 1; - } - var vec = openfl__$Vector_Vector_$Impl_$.toObjectVector(null); - var m = this.clone(); - var mr = m.rawData.copy(); - var pos = new openfl_geom_Vector3D(mr.get(12),mr.get(13),mr.get(14)); - mr.set(12,0); - mr.set(13,0); - mr.set(14,0); - var scale = new openfl_geom_Vector3D(); - scale.x = Math.sqrt(mr.get(0) * mr.get(0) + mr.get(1) * mr.get(1) + mr.get(2) * mr.get(2)); - scale.y = Math.sqrt(mr.get(4) * mr.get(4) + mr.get(5) * mr.get(5) + mr.get(6) * mr.get(6)); - scale.z = Math.sqrt(mr.get(8) * mr.get(8) + mr.get(9) * mr.get(9) + mr.get(10) * mr.get(10)); - if(mr.get(0) * (mr.get(5) * mr.get(10) - mr.get(6) * mr.get(9)) - mr.get(1) * (mr.get(4) * mr.get(10) - mr.get(6) * mr.get(8)) + mr.get(2) * (mr.get(4) * mr.get(9) - mr.get(5) * mr.get(8)) < 0) { - scale.z = -scale.z; - } - var _g = mr; - _g.set(0,_g.get(0) / scale.x); - var _g1 = mr; - _g1.set(1,_g1.get(1) / scale.x); - var _g2 = mr; - _g2.set(2,_g2.get(2) / scale.x); - var _g3 = mr; - _g3.set(4,_g3.get(4) / scale.y); - var _g4 = mr; - _g4.set(5,_g4.get(5) / scale.y); - var _g5 = mr; - _g5.set(6,_g5.get(6) / scale.y); - var _g6 = mr; - _g6.set(8,_g6.get(8) / scale.z); - var _g7 = mr; - _g7.set(9,_g7.get(9) / scale.z); - var _g8 = mr; - _g8.set(10,_g8.get(10) / scale.z); - var rot = new openfl_geom_Vector3D(); - switch(orientationStyle) { - case 0: - rot.w = Math.acos((mr.get(0) + mr.get(5) + mr.get(10) - 1) / 2); - var len = Math.sqrt((mr.get(6) - mr.get(9)) * (mr.get(6) - mr.get(9)) + (mr.get(8) - mr.get(2)) * (mr.get(8) - mr.get(2)) + (mr.get(1) - mr.get(4)) * (mr.get(1) - mr.get(4))); - if(len != 0) { - rot.x = (mr.get(6) - mr.get(9)) / len; - rot.y = (mr.get(8) - mr.get(2)) / len; - rot.z = (mr.get(1) - mr.get(4)) / len; - } else { - rot.x = rot.y = rot.z = 0; - } - break; - case 1: - rot.y = Math.asin(-mr.get(2)); - if(mr.get(2) != 1 && mr.get(2) != -1) { - rot.x = Math.atan2(mr.get(6),mr.get(10)); - rot.z = Math.atan2(mr.get(1),mr.get(0)); - } else { - rot.z = 0; - rot.x = Math.atan2(mr.get(4),mr.get(5)); - } - break; - case 2: - var tr = mr.get(0) + mr.get(5) + mr.get(10); - if(tr > 0) { - rot.w = Math.sqrt(1 + tr) / 2; - rot.x = (mr.get(6) - mr.get(9)) / (4 * rot.w); - rot.y = (mr.get(8) - mr.get(2)) / (4 * rot.w); - rot.z = (mr.get(1) - mr.get(4)) / (4 * rot.w); - } else if(mr.get(0) > mr.get(5) && mr.get(0) > mr.get(10)) { - rot.x = Math.sqrt(1 + mr.get(0) - mr.get(5) - mr.get(10)) / 2; - rot.w = (mr.get(6) - mr.get(9)) / (4 * rot.x); - rot.y = (mr.get(1) + mr.get(4)) / (4 * rot.x); - rot.z = (mr.get(8) + mr.get(2)) / (4 * rot.x); - } else if(mr.get(5) > mr.get(10)) { - rot.y = Math.sqrt(1 + mr.get(5) - mr.get(0) - mr.get(10)) / 2; - rot.x = (mr.get(1) + mr.get(4)) / (4 * rot.y); - rot.w = (mr.get(8) - mr.get(2)) / (4 * rot.y); - rot.z = (mr.get(6) + mr.get(9)) / (4 * rot.y); - } else { - rot.z = Math.sqrt(1 + mr.get(10) - mr.get(0) - mr.get(5)) / 2; - rot.x = (mr.get(8) + mr.get(2)) / (4 * rot.z); - rot.y = (mr.get(6) + mr.get(9)) / (4 * rot.z); - rot.w = (mr.get(1) - mr.get(4)) / (4 * rot.z); - } - break; - } - vec.push(pos); - vec.push(rot); - vec.push(scale); - return vec; - } - ,deltaTransformVector: function(v) { - var x = v.x; - var y = v.y; - var z = v.z; - return new openfl_geom_Vector3D(x * this.rawData.get(0) + y * this.rawData.get(4) + z * this.rawData.get(8),x * this.rawData.get(1) + y * this.rawData.get(5) + z * this.rawData.get(9),x * this.rawData.get(2) + y * this.rawData.get(6) + z * this.rawData.get(10),x * this.rawData.get(3) + y * this.rawData.get(7) + z * this.rawData.get(11)); - } - ,identity: function() { - this.rawData = openfl__$Vector_Vector_$Impl_$.toFloatVector(null,null,null,[1.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,0.0,1.0]); - } - ,interpolateTo: function(toMat,percent) { - var _g = 0; - while(_g < 16) { - var i = _g++; - this.rawData.set(i,this.rawData.get(i) + (toMat.rawData.get(i) - this.rawData.get(i)) * percent); - } - } - ,invert: function() { - var d = this.get_determinant(); - var invertable = Math.abs(d) > 0.00000000001; - if(invertable) { - d = 1 / d; - var m11 = this.rawData.get(0); - var m21 = this.rawData.get(4); - var m31 = this.rawData.get(8); - var m41 = this.rawData.get(12); - var m12 = this.rawData.get(1); - var m22 = this.rawData.get(5); - var m32 = this.rawData.get(9); - var m42 = this.rawData.get(13); - var m13 = this.rawData.get(2); - var m23 = this.rawData.get(6); - var m33 = this.rawData.get(10); - var m43 = this.rawData.get(14); - var m14 = this.rawData.get(3); - var m24 = this.rawData.get(7); - var m34 = this.rawData.get(11); - var m44 = this.rawData.get(15); - this.rawData.set(0,d * (m22 * (m33 * m44 - m43 * m34) - m32 * (m23 * m44 - m43 * m24) + m42 * (m23 * m34 - m33 * m24))); - this.rawData.set(1,-d * (m12 * (m33 * m44 - m43 * m34) - m32 * (m13 * m44 - m43 * m14) + m42 * (m13 * m34 - m33 * m14))); - this.rawData.set(2,d * (m12 * (m23 * m44 - m43 * m24) - m22 * (m13 * m44 - m43 * m14) + m42 * (m13 * m24 - m23 * m14))); - this.rawData.set(3,-d * (m12 * (m23 * m34 - m33 * m24) - m22 * (m13 * m34 - m33 * m14) + m32 * (m13 * m24 - m23 * m14))); - this.rawData.set(4,-d * (m21 * (m33 * m44 - m43 * m34) - m31 * (m23 * m44 - m43 * m24) + m41 * (m23 * m34 - m33 * m24))); - this.rawData.set(5,d * (m11 * (m33 * m44 - m43 * m34) - m31 * (m13 * m44 - m43 * m14) + m41 * (m13 * m34 - m33 * m14))); - this.rawData.set(6,-d * (m11 * (m23 * m44 - m43 * m24) - m21 * (m13 * m44 - m43 * m14) + m41 * (m13 * m24 - m23 * m14))); - this.rawData.set(7,d * (m11 * (m23 * m34 - m33 * m24) - m21 * (m13 * m34 - m33 * m14) + m31 * (m13 * m24 - m23 * m14))); - this.rawData.set(8,d * (m21 * (m32 * m44 - m42 * m34) - m31 * (m22 * m44 - m42 * m24) + m41 * (m22 * m34 - m32 * m24))); - this.rawData.set(9,-d * (m11 * (m32 * m44 - m42 * m34) - m31 * (m12 * m44 - m42 * m14) + m41 * (m12 * m34 - m32 * m14))); - this.rawData.set(10,d * (m11 * (m22 * m44 - m42 * m24) - m21 * (m12 * m44 - m42 * m14) + m41 * (m12 * m24 - m22 * m14))); - this.rawData.set(11,-d * (m11 * (m22 * m34 - m32 * m24) - m21 * (m12 * m34 - m32 * m14) + m31 * (m12 * m24 - m22 * m14))); - this.rawData.set(12,-d * (m21 * (m32 * m43 - m42 * m33) - m31 * (m22 * m43 - m42 * m23) + m41 * (m22 * m33 - m32 * m23))); - this.rawData.set(13,d * (m11 * (m32 * m43 - m42 * m33) - m31 * (m12 * m43 - m42 * m13) + m41 * (m12 * m33 - m32 * m13))); - this.rawData.set(14,-d * (m11 * (m22 * m43 - m42 * m23) - m21 * (m12 * m43 - m42 * m13) + m41 * (m12 * m23 - m22 * m13))); - this.rawData.set(15,d * (m11 * (m22 * m33 - m32 * m23) - m21 * (m12 * m33 - m32 * m13) + m31 * (m12 * m23 - m22 * m13))); - } - return invertable; - } - ,pointAt: function(pos,at,up) { - if(at == null) { - at = new openfl_geom_Vector3D(0,0,-1); - } - if(up == null) { - up = new openfl_geom_Vector3D(0,-1,0); - } - var dir = at.subtract(pos); - var vup = up.clone(); - dir.normalize(); - vup.normalize(); - var dir2 = dir.clone(); - dir2.scaleBy(vup.dotProduct(dir)); - vup = vup.subtract(dir2); - if(vup.get_length() > 0) { - vup.normalize(); - } else if(dir.x != 0) { - vup = new openfl_geom_Vector3D(-dir.y,dir.x,0); - } else { - vup = new openfl_geom_Vector3D(1,0,0); - } - var right = vup.crossProduct(dir); - right.normalize(); - this.rawData.set(0,right.x); - this.rawData.set(4,right.y); - this.rawData.set(8,right.z); - this.rawData.set(12,0.0); - this.rawData.set(1,vup.x); - this.rawData.set(5,vup.y); - this.rawData.set(9,vup.z); - this.rawData.set(13,0.0); - this.rawData.set(2,dir.x); - this.rawData.set(6,dir.y); - this.rawData.set(10,dir.z); - this.rawData.set(14,0.0); - this.rawData.set(3,pos.x); - this.rawData.set(7,pos.y); - this.rawData.set(11,pos.z); - this.rawData.set(15,1.0); - } - ,prepend: function(rhs) { - var m111 = rhs.rawData.get(0); - var m121 = rhs.rawData.get(4); - var m131 = rhs.rawData.get(8); - var m141 = rhs.rawData.get(12); - var m112 = rhs.rawData.get(1); - var m122 = rhs.rawData.get(5); - var m132 = rhs.rawData.get(9); - var m142 = rhs.rawData.get(13); - var m113 = rhs.rawData.get(2); - var m123 = rhs.rawData.get(6); - var m133 = rhs.rawData.get(10); - var m143 = rhs.rawData.get(14); - var m114 = rhs.rawData.get(3); - var m124 = rhs.rawData.get(7); - var m134 = rhs.rawData.get(11); - var m144 = rhs.rawData.get(15); - var m211 = this.rawData.get(0); - var m221 = this.rawData.get(4); - var m231 = this.rawData.get(8); - var m241 = this.rawData.get(12); - var m212 = this.rawData.get(1); - var m222 = this.rawData.get(5); - var m232 = this.rawData.get(9); - var m242 = this.rawData.get(13); - var m213 = this.rawData.get(2); - var m223 = this.rawData.get(6); - var m233 = this.rawData.get(10); - var m243 = this.rawData.get(14); - var m214 = this.rawData.get(3); - var m224 = this.rawData.get(7); - var m234 = this.rawData.get(11); - var m244 = this.rawData.get(15); - this.rawData.set(0,m111 * m211 + m112 * m221 + m113 * m231 + m114 * m241); - this.rawData.set(1,m111 * m212 + m112 * m222 + m113 * m232 + m114 * m242); - this.rawData.set(2,m111 * m213 + m112 * m223 + m113 * m233 + m114 * m243); - this.rawData.set(3,m111 * m214 + m112 * m224 + m113 * m234 + m114 * m244); - this.rawData.set(4,m121 * m211 + m122 * m221 + m123 * m231 + m124 * m241); - this.rawData.set(5,m121 * m212 + m122 * m222 + m123 * m232 + m124 * m242); - this.rawData.set(6,m121 * m213 + m122 * m223 + m123 * m233 + m124 * m243); - this.rawData.set(7,m121 * m214 + m122 * m224 + m123 * m234 + m124 * m244); - this.rawData.set(8,m131 * m211 + m132 * m221 + m133 * m231 + m134 * m241); - this.rawData.set(9,m131 * m212 + m132 * m222 + m133 * m232 + m134 * m242); - this.rawData.set(10,m131 * m213 + m132 * m223 + m133 * m233 + m134 * m243); - this.rawData.set(11,m131 * m214 + m132 * m224 + m133 * m234 + m134 * m244); - this.rawData.set(12,m141 * m211 + m142 * m221 + m143 * m231 + m144 * m241); - this.rawData.set(13,m141 * m212 + m142 * m222 + m143 * m232 + m144 * m242); - this.rawData.set(14,m141 * m213 + m142 * m223 + m143 * m233 + m144 * m243); - this.rawData.set(15,m141 * m214 + m142 * m224 + m143 * m234 + m144 * m244); - } - ,prependRotation: function(degrees,axis,pivotPoint) { - var tz = 0; - var ty = tz; - var tx = ty; - if(pivotPoint != null) { - tx = pivotPoint.x; - ty = pivotPoint.y; - tz = pivotPoint.z; - } - var radian = degrees * Math.PI / 180; - var cos = Math.cos(radian); - var sin = Math.sin(radian); - var x = axis.x; - var y = axis.y; - var z = axis.z; - var x2 = x * x; - var y2 = y * y; - var z2 = z * z; - var ls = x2 + y2 + z2; - if(ls != 0) { - var l = Math.sqrt(ls); - x /= l; - y /= l; - z /= l; - x2 /= ls; - y2 /= ls; - z2 /= ls; - } - var ccos = 1 - cos; - var m = new openfl_geom_Matrix3D(); - var d = m.rawData; - d.set(0,x2 + (y2 + z2) * cos); - d.set(1,x * y * ccos + z * sin); - d.set(2,x * z * ccos - y * sin); - d.set(4,x * y * ccos - z * sin); - d.set(5,y2 + (x2 + z2) * cos); - d.set(6,y * z * ccos + x * sin); - d.set(8,x * z * ccos + y * sin); - d.set(9,y * z * ccos - x * sin); - d.set(10,z2 + (x2 + y2) * cos); - d.set(12,(tx * (y2 + z2) - x * (ty * y + tz * z)) * ccos + (ty * z - tz * y) * sin); - d.set(13,(ty * (x2 + z2) - y * (tx * x + tz * z)) * ccos + (tz * x - tx * z) * sin); - d.set(14,(tz * (x2 + y2) - z * (tx * x + ty * y)) * ccos + (tx * y - ty * x) * sin); - this.prepend(m); - } - ,prependScale: function(xScale,yScale,zScale) { - this.prepend(new openfl_geom_Matrix3D(openfl__$Vector_Vector_$Impl_$.toFloatVector(null,null,null,[xScale,0.0,0.0,0.0,0.0,yScale,0.0,0.0,0.0,0.0,zScale,0.0,0.0,0.0,0.0,1.0]))); - } - ,prependTranslation: function(x,y,z) { - var m = new openfl_geom_Matrix3D(); - m.set_position(new openfl_geom_Vector3D(x,y,z)); - this.prepend(m); - } - ,recompose: function(components,orientationStyle) { - if(orientationStyle == null) { - orientationStyle = 1; - } - if(components.get_length() < 3 || components.get(2).x == 0 || components.get(2).y == 0 || components.get(2).z == 0) { - return false; - } - this.identity(); - var scale = []; - scale[0] = scale[1] = scale[2] = components.get(2).x; - scale[4] = scale[5] = scale[6] = components.get(2).y; - scale[8] = scale[9] = scale[10] = components.get(2).z; - if(orientationStyle == 1) { - var cx = Math.cos(components.get(1).x); - var cy = Math.cos(components.get(1).y); - var cz = Math.cos(components.get(1).z); - var sx = Math.sin(components.get(1).x); - var sy = Math.sin(components.get(1).y); - var sz = Math.sin(components.get(1).z); - this.rawData.set(0,cy * cz * scale[0]); - this.rawData.set(1,cy * sz * scale[1]); - this.rawData.set(2,-sy * scale[2]); - this.rawData.set(3,0); - this.rawData.set(4,(sx * sy * cz - cx * sz) * scale[4]); - this.rawData.set(5,(sx * sy * sz + cx * cz) * scale[5]); - this.rawData.set(6,sx * cy * scale[6]); - this.rawData.set(7,0); - this.rawData.set(8,(cx * sy * cz + sx * sz) * scale[8]); - this.rawData.set(9,(cx * sy * sz - sx * cz) * scale[9]); - this.rawData.set(10,cx * cy * scale[10]); - this.rawData.set(11,0); - this.rawData.set(12,components.get(0).x); - this.rawData.set(13,components.get(0).y); - this.rawData.set(14,components.get(0).z); - this.rawData.set(15,1); - } else { - var x = components.get(1).x; - var y = components.get(1).y; - var z = components.get(1).z; - var w = components.get(1).w; - if(orientationStyle == 0) { - x *= Math.sin(w / 2); - y *= Math.sin(w / 2); - z *= Math.sin(w / 2); - w = Math.cos(w / 2); - } - this.rawData.set(0,(1 - 2 * y * y - 2 * z * z) * scale[0]); - this.rawData.set(1,(2 * x * y + 2 * w * z) * scale[1]); - this.rawData.set(2,(2 * x * z - 2 * w * y) * scale[2]); - this.rawData.set(3,0); - this.rawData.set(4,(2 * x * y - 2 * w * z) * scale[4]); - this.rawData.set(5,(1 - 2 * x * x - 2 * z * z) * scale[5]); - this.rawData.set(6,(2 * y * z + 2 * w * x) * scale[6]); - this.rawData.set(7,0); - this.rawData.set(8,(2 * x * z + 2 * w * y) * scale[8]); - this.rawData.set(9,(2 * y * z - 2 * w * x) * scale[9]); - this.rawData.set(10,(1 - 2 * x * x - 2 * y * y) * scale[10]); - this.rawData.set(11,0); - this.rawData.set(12,components.get(0).x); - this.rawData.set(13,components.get(0).y); - this.rawData.set(14,components.get(0).z); - this.rawData.set(15,1); - } - if(components.get(2).x == 0) { - this.rawData.set(0,1e-15); - } - if(components.get(2).y == 0) { - this.rawData.set(5,1e-15); - } - if(components.get(2).z == 0) { - this.rawData.set(10,1e-15); - } - return !(components.get(2).x == 0 || components.get(2).y == 0 || components.get(2).y == 0); - } - ,transformVector: function(v) { - var x = v.x; - var y = v.y; - var z = v.z; - return new openfl_geom_Vector3D(x * this.rawData.get(0) + y * this.rawData.get(4) + z * this.rawData.get(8) + this.rawData.get(12),x * this.rawData.get(1) + y * this.rawData.get(5) + z * this.rawData.get(9) + this.rawData.get(13),x * this.rawData.get(2) + y * this.rawData.get(6) + z * this.rawData.get(10) + this.rawData.get(14),x * this.rawData.get(3) + y * this.rawData.get(7) + z * this.rawData.get(11) + this.rawData.get(15)); - } - ,transformVectors: function(vin,vout) { - var i = 0; - var x; - var y; - var z; - while(i + 3 <= vin.get_length()) { - x = vin.get(i); - y = vin.get(i + 1); - z = vin.get(i + 2); - vout.set(i,x * this.rawData.get(0) + y * this.rawData.get(4) + z * this.rawData.get(8) + this.rawData.get(12)); - vout.set(i + 1,x * this.rawData.get(1) + y * this.rawData.get(5) + z * this.rawData.get(9) + this.rawData.get(13)); - vout.set(i + 2,x * this.rawData.get(2) + y * this.rawData.get(6) + z * this.rawData.get(10) + this.rawData.get(14)); - i += 3; - } - } - ,transpose: function() { - var oRawData = this.rawData.copy(); - this.rawData.set(1,oRawData.get(4)); - this.rawData.set(2,oRawData.get(8)); - this.rawData.set(3,oRawData.get(12)); - this.rawData.set(4,oRawData.get(1)); - this.rawData.set(6,oRawData.get(9)); - this.rawData.set(7,oRawData.get(13)); - this.rawData.set(8,oRawData.get(2)); - this.rawData.set(9,oRawData.get(6)); - this.rawData.set(11,oRawData.get(14)); - this.rawData.set(12,oRawData.get(3)); - this.rawData.set(13,oRawData.get(7)); - this.rawData.set(14,oRawData.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 openfl_geom_Vector3D(this.rawData.get(12),this.rawData.get(13),this.rawData.get(14)); - } - ,set_position: function(val) { - this.rawData.set(12,val.x); - this.rawData.set(13,val.y); - this.rawData.set(14,val.z); - return val; - } - ,__class__: openfl_geom_Matrix3D - ,__properties__: {set_position:"set_position",get_position:"get_position",get_determinant:"get_determinant"} -}; -var openfl_geom__$Orientation3D_Orientation3D_$Impl_$ = {}; -$hxClasses["openfl.geom._Orientation3D.Orientation3D_Impl_"] = openfl_geom__$Orientation3D_Orientation3D_$Impl_$; -openfl_geom__$Orientation3D_Orientation3D_$Impl_$.__name__ = "openfl.geom._Orientation3D.Orientation3D_Impl_"; -openfl_geom__$Orientation3D_Orientation3D_$Impl_$.fromString = function(value) { - switch(value) { - case "axisAngle": - return 0; - case "eulerAngles": - return 1; - case "quaternion": - return 2; - default: - return null; - } -}; -openfl_geom__$Orientation3D_Orientation3D_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "axisAngle"; - case 1: - return "eulerAngles"; - case 2: - return "quaternion"; - default: - return null; - } -}; -var openfl_geom_Transform = function(displayObject) { - this.__colorTransform = new openfl_geom_ColorTransform(); - this.concatenatedColorTransform = new openfl_geom_ColorTransform(); - this.pixelBounds = new openfl_geom_Rectangle(); - this.__displayObject = displayObject; - this.__hasMatrix = true; -}; -$hxClasses["openfl.geom.Transform"] = openfl_geom_Transform; -openfl_geom_Transform.__name__ = "openfl.geom.Transform"; -openfl_geom_Transform.prototype = { - concatenatedColorTransform: null - ,pixelBounds: null - ,__colorTransform: null - ,__displayObject: null - ,__hasMatrix: null - ,__hasMatrix3D: null - ,get_colorTransform: function() { - return this.__colorTransform; - } - ,set_colorTransform: function(value) { - if(!this.__colorTransform.__equals(value,false)) { - this.__colorTransform.__copyFrom(value); - if(value != null) { - this.__displayObject.set_alpha(value.alphaMultiplier); - } - var _this = this.__displayObject; - if(!_this.__renderDirty) { - _this.__renderDirty = true; - _this.__setParentRenderDirty(); - } - } - return this.__colorTransform; - } - ,get_concatenatedMatrix: function() { - if(this.__hasMatrix) { - return this.__displayObject.__getWorldTransform().clone(); - } - return null; - } - ,get_matrix: function() { - if(this.__hasMatrix) { - return this.__displayObject.__transform.clone(); - } - return null; - } - ,set_matrix: function(value) { - if(value == null) { - this.__hasMatrix = false; - return null; - } - this.__hasMatrix = true; - this.__hasMatrix3D = false; - if(this.__displayObject != null) { - this.__setTransform(value.a,value.b,value.c,value.d,value.tx,value.ty); - } - return value; - } - ,get_matrix3D: function() { - if(this.__hasMatrix3D) { - var matrix = this.__displayObject.__transform; - return new openfl_geom_Matrix3D(openfl__$Vector_Vector_$Impl_$.toFloatVector(null,null,null,[matrix.a,matrix.b,0.0,0.0,matrix.c,matrix.d,0.0,0.0,0.0,0.0,1.0,0.0,matrix.tx,matrix.ty,0.0,1.0])); - } - return null; - } - ,set_matrix3D: function(value) { - if(value == null) { - this.__hasMatrix3D = false; - return null; - } - this.__hasMatrix = false; - this.__hasMatrix3D = true; - this.__setTransform(value.rawData.get(0),value.rawData.get(1),value.rawData.get(5),value.rawData.get(6),value.rawData.get(12),value.rawData.get(13)); - return value; - } - ,__setTransform: function(a,b,c,d,tx,ty) { - if(this.__displayObject != null) { - var transform = this.__displayObject.__transform; - if(transform.a == a && transform.b == b && transform.c == c && transform.d == d && transform.tx == tx && transform.ty == ty) { - return; - } - var scaleX = 0.0; - var scaleY = 0.0; - if(b == 0) { - scaleX = a; - } else { - scaleX = Math.sqrt(a * a + b * b); - } - if(c == 0) { - scaleY = d; - } else { - scaleY = Math.sqrt(c * c + d * d); - } - this.__displayObject.__scaleX = scaleX; - this.__displayObject.__scaleY = scaleY; - var rotation = 180 / Math.PI * Math.atan2(d,c) - 90; - if(rotation != this.__displayObject.__rotation) { - this.__displayObject.__rotation = rotation; - var radians = rotation * (Math.PI / 180); - this.__displayObject.__rotationSine = Math.sin(radians); - this.__displayObject.__rotationCosine = Math.cos(radians); - } - transform.a = a; - transform.b = b; - transform.c = c; - transform.d = d; - transform.tx = tx; - transform.ty = ty; - this.__displayObject.__setTransformDirty(); - } - } - ,__class__: openfl_geom_Transform - ,__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 openfl_geom_Vector3D = function(x,y,z,w) { - if(w == null) { - w = 0; - } - if(z == null) { - z = 0; - } - if(y == null) { - y = 0; - } - if(x == null) { - x = 0; - } - this.w = w; - this.x = x; - this.y = y; - this.z = z; -}; -$hxClasses["openfl.geom.Vector3D"] = openfl_geom_Vector3D; -openfl_geom_Vector3D.__name__ = "openfl.geom.Vector3D"; -openfl_geom_Vector3D.__properties__ = {get_Z_AXIS:"get_Z_AXIS",get_Y_AXIS:"get_Y_AXIS",get_X_AXIS:"get_X_AXIS"}; -openfl_geom_Vector3D.angleBetween = function(a,b) { - var la = a.get_length(); - var lb = b.get_length(); - var dot = a.dotProduct(b); - if(la != 0) { - dot /= la; - } - if(lb != 0) { - dot /= lb; - } - return Math.acos(dot); -}; -openfl_geom_Vector3D.distance = function(pt1,pt2) { - var x = pt2.x - pt1.x; - var y = pt2.y - pt1.y; - var z = pt2.z - pt1.z; - return Math.sqrt(x * x + y * y + z * z); -}; -openfl_geom_Vector3D.get_X_AXIS = function() { - return new openfl_geom_Vector3D(1,0,0); -}; -openfl_geom_Vector3D.get_Y_AXIS = function() { - return new openfl_geom_Vector3D(0,1,0); -}; -openfl_geom_Vector3D.get_Z_AXIS = function() { - return new openfl_geom_Vector3D(0,0,1); -}; -openfl_geom_Vector3D.prototype = { - w: null - ,x: null - ,y: null - ,z: null - ,add: function(a) { - return new openfl_geom_Vector3D(this.x + a.x,this.y + a.y,this.z + a.z); - } - ,clone: function() { - return new openfl_geom_Vector3D(this.x,this.y,this.z,this.w); - } - ,copyFrom: function(sourceVector3D) { - this.x = sourceVector3D.x; - this.y = sourceVector3D.y; - this.z = sourceVector3D.z; - } - ,crossProduct: function(a) { - return new openfl_geom_Vector3D(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(toCompare,allFour) { - if(allFour == null) { - allFour = false; - } - if(this.x == toCompare.x && this.y == toCompare.y && this.z == toCompare.z) { - if(!(!allFour)) { - return this.w == toCompare.w; - } else { - return true; - } - } else { - return false; - } - } - ,incrementBy: function(a) { - this.x += a.x; - this.y += a.y; - this.z += a.z; - } - ,nearEquals: function(toCompare,tolerance,allFour) { - if(allFour == null) { - allFour = false; - } - if(Math.abs(this.x - toCompare.x) < tolerance && Math.abs(this.y - toCompare.y) < tolerance && Math.abs(this.z - toCompare.z) < tolerance) { - if(!(!allFour)) { - return Math.abs(this.w - toCompare.w) < tolerance; - } else { - return true; - } - } else { - return false; - } - } - ,negate: function() { - this.x *= -1; - this.y *= -1; - this.z *= -1; - } - ,normalize: function() { - var l = this.get_length(); - if(l != 0) { - this.x /= l; - this.y /= l; - this.z /= l; - } - return l; - } - ,project: function() { - this.x /= this.w; - this.y /= this.w; - this.z /= this.w; - } - ,scaleBy: function(s) { - this.x *= s; - this.y *= s; - this.z *= s; - } - ,setTo: function(xa,ya,za) { - this.x = xa; - this.y = ya; - this.z = za; - } - ,subtract: function(a) { - return new openfl_geom_Vector3D(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__: openfl_geom_Vector3D - ,__properties__: {get_lengthSquared:"get_lengthSquared",get_length:"get_length"} -}; -var openfl_media_ID3Info = function() { -}; -$hxClasses["openfl.media.ID3Info"] = openfl_media_ID3Info; -openfl_media_ID3Info.__name__ = "openfl.media.ID3Info"; -openfl_media_ID3Info.prototype = { - album: null - ,artist: null - ,comment: null - ,genre: null - ,songName: null - ,track: null - ,year: null - ,__class__: openfl_media_ID3Info -}; -var openfl_media_Sound = function(stream,context) { - openfl_events_EventDispatcher.call(this,this); - this.bytesLoaded = 0; - this.bytesTotal = 0; - this.isBuffering = false; - this.url = null; - if(stream != null) { - this.load(stream,context); - } -}; -$hxClasses["openfl.media.Sound"] = openfl_media_Sound; -openfl_media_Sound.__name__ = "openfl.media.Sound"; -openfl_media_Sound.fromAudioBuffer = function(buffer) { - var sound = new openfl_media_Sound(); - sound.__buffer = buffer; - return sound; -}; -openfl_media_Sound.fromFile = function(path) { - return openfl_media_Sound.fromAudioBuffer(lime_media_AudioBuffer.fromFile(path)); -}; -openfl_media_Sound.loadFromFile = function(path) { - return lime_media_AudioBuffer.loadFromFile(path).then(function(audioBuffer) { - return lime_app_Future.withValue(openfl_media_Sound.fromAudioBuffer(audioBuffer)); - }); -}; -openfl_media_Sound.loadFromFiles = function(paths) { - return lime_media_AudioBuffer.loadFromFiles(paths).then(function(audioBuffer) { - return lime_app_Future.withValue(openfl_media_Sound.fromAudioBuffer(audioBuffer)); - }); -}; -openfl_media_Sound.__super__ = openfl_events_EventDispatcher; -openfl_media_Sound.prototype = $extend(openfl_events_EventDispatcher.prototype,{ - bytesLoaded: null - ,bytesTotal: null - ,isBuffering: null - ,url: null - ,__buffer: null - ,close: function() { - if(this.__buffer != null) { - this.__buffer.dispose(); - this.__buffer = null; - } - } - ,load: function(stream,context) { - var _gthis = this; - this.url = stream.url; - var defaultLibrary = lime_utils_Assets.getLibrary("default"); - var tmp; - if(defaultLibrary != null) { - var key = this.url; - var _this = defaultLibrary.cachedAudioBuffers; - tmp = __map_reserved[key] != null ? _this.existsReserved(key) : _this.h.hasOwnProperty(key); - } else { - tmp = false; - } - if(tmp) { - var key1 = this.url; - var _this1 = defaultLibrary.cachedAudioBuffers; - this.AudioBuffer_onURLLoad(__map_reserved[key1] != null ? _this1.getReserved(key1) : _this1.h[key1]); - } else { - lime_media_AudioBuffer.loadFromFile(this.url).onComplete($bind(this,this.AudioBuffer_onURLLoad)).onError(function(_) { - _gthis.AudioBuffer_onURLLoad(null); - }); - } - } - ,loadCompressedDataFromByteArray: function(bytes,bytesLength) { - if(bytes == null || bytesLength <= 0) { - this.dispatchEvent(new openfl_events_IOErrorEvent("ioError")); - return; - } - if(_$UInt_UInt_$Impl_$.gt(bytes.position,0) || _$UInt_UInt_$Impl_$.gt(openfl_utils__$ByteArray_ByteArray_$Impl_$.get_length(bytes),bytesLength)) { - var length = bytesLength; - if(length == null) { - length = 0; - } - var this1 = new openfl_utils_ByteArrayData(length); - var copy = this1; - var offset = bytes.position; - var length1 = bytesLength; - if(length1 == null) { - length1 = 0; - } - if(offset == null) { - offset = 0; - } - copy.writeBytes(bytes,offset,length1); - bytes = copy; - } - this.__buffer = lime_media_AudioBuffer.fromBytes(openfl_utils__$ByteArray_ByteArray_$Impl_$.toBytes(bytes)); - if(this.__buffer == null) { - this.dispatchEvent(new openfl_events_IOErrorEvent("ioError")); - } else { - this.dispatchEvent(new openfl_events_Event("complete")); - } - } - ,loadPCMFromByteArray: function(bytes,samples,format,stereo,sampleRate) { - if(sampleRate == null) { - sampleRate = 44100; - } - if(stereo == null) { - stereo = true; - } - if(format == null) { - format = "float"; - } - if(bytes == null) { - this.dispatchEvent(new openfl_events_IOErrorEvent("ioError")); - return; - } - var bitsPerSample = format == "float" ? 32 : 16; - var channels = stereo ? 2 : 1; - var bytesLength = samples * channels * (bitsPerSample / 8) | 0; - if(_$UInt_UInt_$Impl_$.gt(bytes.position,0) || _$UInt_UInt_$Impl_$.gt(openfl_utils__$ByteArray_ByteArray_$Impl_$.get_length(bytes),bytesLength)) { - var length = bytesLength; - if(length == null) { - length = 0; - } - var this1 = new openfl_utils_ByteArrayData(length); - var copy = this1; - var offset = bytes.position; - var length1 = bytesLength; - if(length1 == null) { - length1 = 0; - } - if(offset == null) { - offset = 0; - } - copy.writeBytes(bytes,offset,length1); - bytes = copy; - } - var audioBuffer = new lime_media_AudioBuffer(); - audioBuffer.bitsPerSample = bitsPerSample; - audioBuffer.channels = channels; - var elements = null; - var array = null; - var vector = null; - var view = null; - var buffer = openfl_utils__$ByteArray_ByteArray_$Impl_$.toArrayBuffer(bytes); - var len = null; - var this2; - if(elements != null) { - this2 = new Uint8Array(elements); - } else if(array != null) { - this2 = new Uint8Array(array); - } else if(vector != null) { - this2 = new Uint8Array(vector.__array); - } else if(view != null) { - this2 = new Uint8Array(view); - } else if(buffer != null) { - if(len == null) { - this2 = new Uint8Array(buffer,0); - } else { - this2 = new Uint8Array(buffer,0,len); - } - } else { - this2 = null; - } - audioBuffer.data = this2; - audioBuffer.sampleRate = sampleRate | 0; - this.__buffer = audioBuffer; - this.dispatchEvent(new openfl_events_Event("complete")); - } - ,play: function(startTime,loops,sndTransform) { - if(loops == null) { - loops = 0; - } - if(startTime == null) { - startTime = 0.0; - } - if(this.__buffer == null || openfl_media_SoundMixer.__soundChannels.length >= 32) { - return null; - } - if(sndTransform == null) { - sndTransform = new openfl_media_SoundTransform(); - } else { - sndTransform = sndTransform.clone(); - } - var pan = openfl_media_SoundMixer.__soundTransform.pan + sndTransform.pan; - if(pan > 1) { - pan = 1; - } - if(pan < -1) { - pan = -1; - } - var volume = openfl_media_SoundMixer.__soundTransform.volume * sndTransform.volume; - var source = new lime_media_AudioSource(this.__buffer); - source.offset = startTime | 0; - if(loops > 1) { - source.set_loops(loops - 1); - } - source.set_gain(volume); - var position = source.get_position(); - position.x = pan; - position.z = -1 * Math.sqrt(1 - Math.pow(pan,2)); - source.set_position(position); - return new openfl_media_SoundChannel(source,sndTransform); - } - ,get_id3: function() { - return new openfl_media_ID3Info(); - } - ,get_length: function() { - if(this.__buffer != null) { - return this.__buffer.get_src().duration() * 1000 | 0; - } - return 0; - } - ,AudioBuffer_onURLLoad: function(buffer) { - if(buffer == null) { - this.dispatchEvent(new openfl_events_IOErrorEvent("ioError")); - } else { - this.__buffer = buffer; - this.dispatchEvent(new openfl_events_Event("complete")); - } - } - ,__class__: openfl_media_Sound - ,__properties__: {get_length:"get_length",get_id3:"get_id3"} -}); -var openfl_media_SoundChannel = function(source,soundTransform) { - openfl_events_EventDispatcher.call(this,this); - this.leftPeak = 1; - this.rightPeak = 1; - if(soundTransform != null) { - this.__soundTransform = soundTransform; - } else { - this.__soundTransform = new openfl_media_SoundTransform(); - } - if(source != null) { - this.__source = source; - this.__source.onComplete.add($bind(this,this.source_onComplete)); - this.__isValid = true; - this.__source.play(); - } - openfl_media_SoundMixer.__registerSoundChannel(this); -}; -$hxClasses["openfl.media.SoundChannel"] = openfl_media_SoundChannel; -openfl_media_SoundChannel.__name__ = "openfl.media.SoundChannel"; -openfl_media_SoundChannel.__super__ = openfl_events_EventDispatcher; -openfl_media_SoundChannel.prototype = $extend(openfl_events_EventDispatcher.prototype,{ - leftPeak: null - ,rightPeak: null - ,__isValid: null - ,__soundTransform: null - ,__source: null - ,stop: function() { - openfl_media_SoundMixer.__unregisterSoundChannel(this); - if(!this.__isValid) { - return; - } - this.__source.stop(); - this.__dispose(); - } - ,__dispose: function() { - if(!this.__isValid) { - return; - } - this.__source.onComplete.remove($bind(this,this.source_onComplete)); - this.__source.dispose(); - this.__source = null; - this.__isValid = false; - } - ,__updateTransform: function() { - this.set_soundTransform(this.get_soundTransform()); - } - ,get_position: function() { - if(!this.__isValid) { - return 0; - } - return this.__source.get_currentTime() + this.__source.offset; - } - ,set_position: function(value) { - if(!this.__isValid) { - return 0; - } - this.__source.set_currentTime((value | 0) - this.__source.offset); - return value; - } - ,get_soundTransform: function() { - return this.__soundTransform.clone(); - } - ,set_soundTransform: function(value) { - if(value != null) { - this.__soundTransform.pan = value.pan; - this.__soundTransform.volume = value.volume; - var pan = openfl_media_SoundMixer.__soundTransform.pan + this.__soundTransform.pan; - if(pan < -1) { - pan = -1; - } - if(pan > 1) { - pan = 1; - } - var volume = openfl_media_SoundMixer.__soundTransform.volume * this.__soundTransform.volume; - if(this.__isValid) { - this.__source.set_gain(volume); - var position = this.__source.get_position(); - position.x = pan; - position.z = -1 * Math.sqrt(1 - Math.pow(pan,2)); - this.__source.set_position(position); - return value; - } - } - return value; - } - ,source_onComplete: function() { - openfl_media_SoundMixer.__unregisterSoundChannel(this); - this.__dispose(); - this.dispatchEvent(new openfl_events_Event("soundComplete")); - } - ,__class__: openfl_media_SoundChannel - ,__properties__: {set_soundTransform:"set_soundTransform",get_soundTransform:"get_soundTransform",set_position:"set_position",get_position:"get_position"} -}); -var openfl_media_SoundLoaderContext = function(bufferTime,checkPolicyFile) { - if(checkPolicyFile == null) { - checkPolicyFile = false; - } - if(bufferTime == null) { - bufferTime = 1000; - } - this.bufferTime = bufferTime; - this.checkPolicyFile = checkPolicyFile; -}; -$hxClasses["openfl.media.SoundLoaderContext"] = openfl_media_SoundLoaderContext; -openfl_media_SoundLoaderContext.__name__ = "openfl.media.SoundLoaderContext"; -openfl_media_SoundLoaderContext.prototype = { - bufferTime: null - ,checkPolicyFile: null - ,__class__: openfl_media_SoundLoaderContext -}; -var openfl_media_SoundTransform = function(vol,panning) { - if(panning == null) { - panning = 0; - } - if(vol == null) { - vol = 1; - } - this.volume = vol; - this.pan = panning; - this.leftToLeft = 0; - this.leftToRight = 0; - this.rightToLeft = 0; - this.rightToRight = 0; -}; -$hxClasses["openfl.media.SoundTransform"] = openfl_media_SoundTransform; -openfl_media_SoundTransform.__name__ = "openfl.media.SoundTransform"; -openfl_media_SoundTransform.prototype = { - leftToLeft: null - ,leftToRight: null - ,pan: null - ,rightToLeft: null - ,rightToRight: null - ,volume: null - ,clone: function() { - return new openfl_media_SoundTransform(this.volume,this.pan); - } - ,__class__: openfl_media_SoundTransform -}; -var openfl_media_SoundMixer = function() { }; -$hxClasses["openfl.media.SoundMixer"] = openfl_media_SoundMixer; -openfl_media_SoundMixer.__name__ = "openfl.media.SoundMixer"; -openfl_media_SoundMixer.__properties__ = {set_soundTransform:"set_soundTransform",get_soundTransform:"get_soundTransform"}; -openfl_media_SoundMixer.bufferTime = null; -openfl_media_SoundMixer.areSoundsInaccessible = function() { - return false; -}; -openfl_media_SoundMixer.stopAll = function() { - var _g = 0; - var _g1 = openfl_media_SoundMixer.__soundChannels; - while(_g < _g1.length) { - var channel = _g1[_g]; - ++_g; - channel.stop(); - } -}; -openfl_media_SoundMixer.__registerSoundChannel = function(soundChannel) { - openfl_media_SoundMixer.__soundChannels.push(soundChannel); -}; -openfl_media_SoundMixer.__unregisterSoundChannel = function(soundChannel) { - HxOverrides.remove(openfl_media_SoundMixer.__soundChannels,soundChannel); -}; -openfl_media_SoundMixer.get_soundTransform = function() { - return openfl_media_SoundMixer.__soundTransform; -}; -openfl_media_SoundMixer.set_soundTransform = function(value) { - openfl_media_SoundMixer.__soundTransform = value.clone(); - var _g = 0; - var _g1 = openfl_media_SoundMixer.__soundChannels; - while(_g < _g1.length) { - var channel = _g1[_g]; - ++_g; - channel.__updateTransform(); - } - return value; -}; -var openfl_net_NetConnection = function() { - openfl_events_EventDispatcher.call(this); -}; -$hxClasses["openfl.net.NetConnection"] = openfl_net_NetConnection; -openfl_net_NetConnection.__name__ = "openfl.net.NetConnection"; -openfl_net_NetConnection.__super__ = openfl_events_EventDispatcher; -openfl_net_NetConnection.prototype = $extend(openfl_events_EventDispatcher.prototype,{ - connect: function(command,p1,p2,p3,p4,p5) { - if(command != null) { - throw new js__$Boot_HaxeError("Error: Can only connect in \"HTTP streaming\" mode"); - } - this.dispatchEvent(new openfl_events_NetStatusEvent("netStatus",false,true,{ code : "NetConnection.Connect.Success"})); - } - ,__class__: openfl_net_NetConnection -}); -var openfl_net_NetStream = function(connection,peerID) { - openfl_events_EventDispatcher.call(this); - this.__connection = connection; - this.__soundTransform = new openfl_media_SoundTransform(); - this.__video = window.document.createElement("video"); - this.__video.setAttribute("playsinline",""); - this.__video.setAttribute("webkit-playsinline",""); - this.__video.setAttribute("crossorigin","anonymous"); - this.__video.addEventListener("error",$bind(this,this.video_onError),false); - this.__video.addEventListener("waiting",$bind(this,this.video_onWaiting),false); - this.__video.addEventListener("ended",$bind(this,this.video_onEnd),false); - this.__video.addEventListener("pause",$bind(this,this.video_onPause),false); - this.__video.addEventListener("seeking",$bind(this,this.video_onSeeking),false); - this.__video.addEventListener("playing",$bind(this,this.video_onPlaying),false); - this.__video.addEventListener("timeupdate",$bind(this,this.video_onTimeUpdate),false); - this.__video.addEventListener("loadstart",$bind(this,this.video_onLoadStart),false); - this.__video.addEventListener("stalled",$bind(this,this.video_onStalled),false); - this.__video.addEventListener("durationchanged",$bind(this,this.video_onDurationChanged),false); - this.__video.addEventListener("canplay",$bind(this,this.video_onCanPlay),false); - this.__video.addEventListener("canplaythrough",$bind(this,this.video_onCanPlayThrough),false); - this.__video.addEventListener("loadedmetadata",$bind(this,this.video_onLoadMetaData),false); -}; -$hxClasses["openfl.net.NetStream"] = openfl_net_NetStream; -openfl_net_NetStream.__name__ = "openfl.net.NetStream"; -openfl_net_NetStream.__super__ = openfl_events_EventDispatcher; -openfl_net_NetStream.prototype = $extend(openfl_events_EventDispatcher.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 - ,__seeking: null - ,__video: null - ,close: function() { - if(this.__video == null) { - return; - } - this.__closed = true; - this.__video.pause(); - this.__video.src = ""; - this.time = 0; - } - ,dispose: function() { - this.close(); - this.__video = null; - } - ,pause: function() { - if(this.__video != null) { - this.__video.pause(); - } - } - ,play: function(url,p1,p2,p3,p4,p5) { - if(this.__video == null) { - return; - } - this.__video.volume = openfl_media_SoundMixer.__soundTransform.volume * this.__soundTransform.volume; - if(typeof(url) == "string") { - this.__video.src = url; - } else { - this.__video.srcObject = url; - } - this.__video.play(); - } - ,requestVideoStatus: function() { - var _gthis = this; - if(this.__video == null) { - return; - } - if(this.__timer == null) { - this.__timer = new haxe_Timer(1); - } - this.__timer.run = function() { - if(_gthis.__video.paused) { - _gthis.__playStatus("NetStream.Play.pause"); - } else { - _gthis.__playStatus("NetStream.Play.playing"); - } - _gthis.__timer.stop(); - }; - } - ,resume: function() { - if(this.__video != null) { - this.__video.play(); - } - } - ,seek: function(time) { - if(this.__video == null) { - return; - } - if(time < 0) { - time = 0; - } else if(time > this.__video.duration) { - time = this.__video.duration; - } - this.set___seeking(true); - this.__connection.dispatchEvent(new openfl_events_NetStatusEvent("netStatus",false,false,{ code : "NetStream.SeekStart.Notify"})); - this.__video.currentTime = time; - } - ,togglePause: function() { - if(this.__video == null) { - return; - } - if(this.__video.paused) { - this.__video.play(); - } else { - this.__video.pause(); - } - } - ,__playStatus: function(code) { - if(this.__video == null) { - return; - } - if(this.client != null) { - try { - var handler = this.client.onPlayStatus; - handler({ code : code, duration : this.__video.duration, position : this.__video.currentTime, speed : this.__video.playbackRate, start : this.__video.startTime}); - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - } - } - } - ,video_onCanPlay: function(event) { - this.__playStatus("NetStream.Play.canplay"); - } - ,video_onCanPlayThrough: function(event) { - this.__playStatus("NetStream.Play.canplaythrough"); - } - ,video_onDurationChanged: function(event) { - this.__playStatus("NetStream.Play.durationchanged"); - } - ,video_onEnd: function(event) { - this.__connection.dispatchEvent(new openfl_events_NetStatusEvent("netStatus",false,false,{ code : "NetStream.Play.Stop"})); - this.__connection.dispatchEvent(new openfl_events_NetStatusEvent("netStatus",false,false,{ code : "NetStream.Play.Complete"})); - this.__playStatus("NetStream.Play.Complete"); - } - ,video_onError: function(event) { - this.__connection.dispatchEvent(new openfl_events_NetStatusEvent("netStatus",false,false,{ code : "NetStream.Play.Stop"})); - this.__playStatus("NetStream.Play.error"); - } - ,video_onLoadMetaData: function(event) { - if(this.__video == null) { - return; - } - if(this.client != null) { - try { - var handler = this.client.onMetaData; - handler({ width : this.__video.videoWidth, height : this.__video.videoHeight, duration : this.__video.duration}); - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - } - } - } - ,video_onLoadStart: function(event) { - this.__playStatus("NetStream.Play.loadstart"); - } - ,video_onPause: function(event) { - this.__playStatus("NetStream.Play.pause"); - } - ,video_onPlaying: function(event) { - this.__connection.dispatchEvent(new openfl_events_NetStatusEvent("netStatus",false,false,{ code : "NetStream.Play.Start"})); - this.__playStatus("NetStream.Play.playing"); - } - ,video_onSeeking: function(event) { - this.__playStatus("NetStream.Play.seeking"); - this.__connection.dispatchEvent(new openfl_events_NetStatusEvent("netStatus",false,false,{ code : "NetStream.Seek.Complete"})); - } - ,video_onStalled: function(event) { - this.__playStatus("NetStream.Play.stalled"); - } - ,video_onTimeUpdate: function(event) { - if(this.__video == null) { - return; - } - this.time = this.__video.currentTime; - this.__playStatus("NetStream.Play.timeupdate"); - } - ,video_onWaiting: function(event) { - this.__playStatus("NetStream.Play.waiting"); - } - ,get_soundTransform: function() { - return this.__soundTransform.clone(); - } - ,set_soundTransform: function(value) { - if(value != null) { - this.__soundTransform.pan = value.pan; - this.__soundTransform.volume = value.volume; - if(this.__video != null) { - this.__video.volume = openfl_media_SoundMixer.__soundTransform.volume * this.__soundTransform.volume; - } - } - return value; - } - ,get_speed: function() { - if(this.__video != null) { - return this.__video.playbackRate; - } else { - return 1; - } - } - ,set_speed: function(value) { - if(this.__video != null) { - return this.__video.playbackRate = value; - } else { - return value; - } - } - ,get___seeking: function() { - if(!this.__seeking) { - return this.__video.seeking; - } else { - return true; - } - } - ,set___seeking: function(value) { - return this.__seeking = value; - } - ,__class__: openfl_net_NetStream - ,__properties__: {set___seeking:"set___seeking",get___seeking:"get___seeking",set_speed:"set_speed",get_speed:"get_speed",set_soundTransform:"set_soundTransform",get_soundTransform:"get_soundTransform"} -}); -var openfl_net_SharedObject = function() { - openfl_events_EventDispatcher.call(this); - this.client = this; - this.objectEncoding = openfl_net_SharedObject.defaultObjectEncoding; -}; -$hxClasses["openfl.net.SharedObject"] = openfl_net_SharedObject; -openfl_net_SharedObject.__name__ = "openfl.net.SharedObject"; -openfl_net_SharedObject.__sharedObjects = null; -openfl_net_SharedObject.getLocal = function(name,localPath,secure) { - if(secure == null) { - secure = false; - } - var illegalValues = [" ","~","%","&","\\",";",":","\"","'",",","<",">","?","#"]; - var allowed = true; - if(name == null || name == "") { - allowed = false; - } else { - var _g = 0; - while(_g < illegalValues.length) { - var value = illegalValues[_g]; - ++_g; - if(name.indexOf(value) > -1) { - allowed = false; - break; - } - } - } - if(!allowed) { - throw new js__$Boot_HaxeError(new openfl_errors_Error("Error #2134: Cannot create SharedObject.")); - } - if(openfl_net_SharedObject.__sharedObjects == null) { - openfl_net_SharedObject.__sharedObjects = new haxe_ds_StringMap(); - if(lime_app_Application.current != null) { - lime_app_Application.current.onExit.add(openfl_net_SharedObject.application_onExit); - } - } - var id = localPath + "/" + name; - var _this = openfl_net_SharedObject.__sharedObjects; - if(!(__map_reserved[id] != null ? _this.existsReserved(id) : _this.h.hasOwnProperty(id))) { - var encodedData = null; - try { - var storage = js_Browser.getLocalStorage(); - if(localPath == null) { - if(storage != null) { - encodedData = storage.getItem(window.location.href + ":" + name); - storage.removeItem(window.location.href + ":" + name); - } - localPath = window.location.pathname; - } - if(storage != null && encodedData == null) { - encodedData = storage.getItem(localPath + ":" + name); - } - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - } - var sharedObject = new openfl_net_SharedObject(); - sharedObject.data = { }; - sharedObject.__localPath = localPath; - sharedObject.__name = name; - if(encodedData != null && encodedData != "") { - try { - var unserializer = new haxe_Unserializer(encodedData); - unserializer.setResolver({ resolveEnum : Type.resolveEnum, resolveClass : openfl_net_SharedObject.__resolveClass}); - sharedObject.data = unserializer.unserialize(); - } catch( e2 ) { - haxe_CallStack.lastException = e2; - var e3 = ((e2) instanceof js__$Boot_HaxeError) ? e2.val : e2; - } - } - var _this1 = openfl_net_SharedObject.__sharedObjects; - if(__map_reserved[id] != null) { - _this1.setReserved(id,sharedObject); - } else { - _this1.h[id] = sharedObject; - } - } - var _this2 = openfl_net_SharedObject.__sharedObjects; - if(__map_reserved[id] != null) { - return _this2.getReserved(id); - } else { - return _this2.h[id]; - } -}; -openfl_net_SharedObject.getRemote = function(name,remotePath,persistence,secure) { - if(secure == null) { - secure = false; - } - if(persistence == null) { - persistence = false; - } - openfl__$internal_Lib.notImplemented({ fileName : "openfl/net/SharedObject.hx", lineNumber : 808, className : "openfl.net.SharedObject", methodName : "getRemote"}); - return null; -}; -openfl_net_SharedObject.__getPath = function(localPath,name) { - var path = lime_system_System.get_applicationStorageDirectory() + "/" + localPath + "/"; - name = StringTools.replace(name,"//","/"); - name = StringTools.replace(name,"//","/"); - if(StringTools.startsWith(name,"/")) { - name = HxOverrides.substr(name,1,null); - } - if(StringTools.endsWith(name,"/")) { - name = name.substring(0,name.length - 1); - } - if(name.indexOf("/") > -1) { - var split = name.split("/"); - name = ""; - var _g = 0; - var _g1 = split.length - 1; - while(_g < _g1) { - var i = _g++; - name += "#" + split[i] + "/"; - } - name += split[split.length - 1]; - } - return path + name + ".sol"; -}; -openfl_net_SharedObject.__mkdir = function(directory) { -}; -openfl_net_SharedObject.__resolveClass = function(name) { - if(name != null) { - if(StringTools.startsWith(name,"neash.")) { - name = StringTools.replace(name,"neash.","openfl."); - } - if(StringTools.startsWith(name,"native.")) { - name = StringTools.replace(name,"native.","openfl."); - } - if(StringTools.startsWith(name,"flash.")) { - name = StringTools.replace(name,"flash.","openfl."); - } - if(StringTools.startsWith(name,"openfl._v2.")) { - name = StringTools.replace(name,"openfl._v2.","openfl."); - } - if(StringTools.startsWith(name,"openfl._legacy.")) { - name = StringTools.replace(name,"openfl._legacy.","openfl."); - } - return $hxClasses[name]; - } - return null; -}; -openfl_net_SharedObject.application_onExit = function(_) { - var _this = openfl_net_SharedObject.__sharedObjects; - var sharedObject = new haxe_ds__$StringMap_StringMapIterator(_this,_this.arrayKeys()); - while(sharedObject.hasNext()) { - var sharedObject1 = sharedObject.next(); - sharedObject1.flush(); - } -}; -openfl_net_SharedObject.__super__ = openfl_events_EventDispatcher; -openfl_net_SharedObject.prototype = $extend(openfl_events_EventDispatcher.prototype,{ - client: null - ,data: null - ,fps: null - ,objectEncoding: null - ,__localPath: null - ,__name: null - ,clear: function() { - this.data = { }; - try { - var storage = js_Browser.getLocalStorage(); - if(storage != null) { - storage.removeItem(this.__localPath + ":" + this.__name); - } - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - } - } - ,close: function() { - } - ,connect: function(myConnection,params) { - openfl__$internal_Lib.notImplemented({ fileName : "openfl/net/SharedObject.hx", lineNumber : 392, className : "openfl.net.SharedObject", methodName : "connect"}); - } - ,flush: function(minDiskSpace) { - if(minDiskSpace == null) { - minDiskSpace = 0; - } - if(Reflect.fields(this.data).length == 0) { - return 0; - } - var encodedData = haxe_Serializer.run(this.data); - try { - var storage = js_Browser.getLocalStorage(); - if(storage != null) { - storage.removeItem(this.__localPath + ":" + this.__name); - storage.setItem(this.__localPath + ":" + this.__name,encodedData); - } - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - return 1; - } - return 0; - } - ,send: function(args) { - openfl__$internal_Lib.notImplemented({ fileName : "openfl/net/SharedObject.hx", lineNumber : 824, className : "openfl.net.SharedObject", methodName : "send"}); - } - ,setDirty: function(propertyName) { - } - ,setProperty: function(propertyName,value) { - if(this.data != null) { - this.data[propertyName] = value; - } - } - ,get_size: function() { - try { - var d = haxe_Serializer.run(this.data); - return haxe_io_Bytes.ofString(d).length; - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - return 0; - } - } - ,__class__: openfl_net_SharedObject - ,__properties__: {get_size:"get_size"} -}); -var openfl_net__$SharedObjectFlushStatus_SharedObjectFlushStatus_$Impl_$ = {}; -$hxClasses["openfl.net._SharedObjectFlushStatus.SharedObjectFlushStatus_Impl_"] = openfl_net__$SharedObjectFlushStatus_SharedObjectFlushStatus_$Impl_$; -openfl_net__$SharedObjectFlushStatus_SharedObjectFlushStatus_$Impl_$.__name__ = "openfl.net._SharedObjectFlushStatus.SharedObjectFlushStatus_Impl_"; -openfl_net__$SharedObjectFlushStatus_SharedObjectFlushStatus_$Impl_$.fromString = function(value) { - switch(value) { - case "flushed": - return 0; - case "pending": - return 1; - default: - return null; - } -}; -openfl_net__$SharedObjectFlushStatus_SharedObjectFlushStatus_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "flushed"; - case 1: - return "pending"; - default: - return null; - } -}; -var openfl_net_URLLoader = function(request) { - openfl_events_EventDispatcher.call(this); - this.bytesLoaded = 0; - this.bytesTotal = 0; - this.dataFormat = 1; - if(request != null) { - this.load(request); - } -}; -$hxClasses["openfl.net.URLLoader"] = openfl_net_URLLoader; -openfl_net_URLLoader.__name__ = "openfl.net.URLLoader"; -openfl_net_URLLoader.__super__ = openfl_events_EventDispatcher; -openfl_net_URLLoader.prototype = $extend(openfl_events_EventDispatcher.prototype,{ - bytesLoaded: null - ,bytesTotal: null - ,data: null - ,dataFormat: null - ,__httpRequest: null - ,close: function() { - if(this.__httpRequest != null) { - this.__httpRequest.cancel(); - } - } - ,load: function(request) { - var _gthis = this; - if(this.dataFormat == 0) { - var httpRequest = new lime_net__$HTTPRequest_$openfl_$utils_$ByteArray(); - this.__prepareRequest(httpRequest,request); - httpRequest.load().onProgress($bind(this,this.httpRequest_onProgress)).onError($bind(this,this.httpRequest_onError)).onComplete(function(data) { - _gthis.__dispatchStatus(); - _gthis.data = data; - var event = new openfl_events_Event("complete"); - _gthis.dispatchEvent(event); - }); - } else { - var httpRequest1 = new lime_net__$HTTPRequest_$String(); - this.__prepareRequest(httpRequest1,request); - httpRequest1.load().onProgress($bind(this,this.httpRequest_onProgress)).onError($bind(this,this.httpRequest_onError)).onComplete(function(data1) { - _gthis.__dispatchStatus(); - _gthis.data = data1; - var event1 = new openfl_events_Event("complete"); - _gthis.dispatchEvent(event1); - }); - } - } - ,__dispatchStatus: function() { - var event = new openfl_events_HTTPStatusEvent("httpStatus",false,false,this.__httpRequest.responseStatus); - event.responseURL = this.__httpRequest.uri; - var headers = []; - if(this.__httpRequest.enableResponseHeaders && this.__httpRequest.responseHeaders != null) { - var _g = 0; - var _g1 = this.__httpRequest.responseHeaders; - while(_g < _g1.length) { - var header = _g1[_g]; - ++_g; - headers.push(new openfl_net_URLRequestHeader(header.name,header.value)); - } - } - event.responseHeaders = headers; - this.dispatchEvent(event); - } - ,__prepareRequest: function(httpRequest,request) { - this.__httpRequest = httpRequest; - this.__httpRequest.uri = request.url; - this.__httpRequest.method = request.method; - if(request.data != null) { - if(Type.typeof(request.data) == ValueType.TObject) { - var fields = Reflect.fields(request.data); - var _g = 0; - while(_g < fields.length) { - var field = fields[_g]; - ++_g; - var _this = this.__httpRequest.formData; - var value = Reflect.field(request.data,field); - if(__map_reserved[field] != null) { - _this.setReserved(field,value); - } else { - _this.h[field] = value; - } - } - } else if(((request.data) instanceof haxe_io_Bytes)) { - this.__httpRequest.data = request.data; - } else { - this.__httpRequest.data = haxe_io_Bytes.ofString(Std.string(request.data)); - } - } - this.__httpRequest.contentType = request.contentType; - if(request.requestHeaders != null) { - var _g1 = 0; - var _g11 = request.requestHeaders; - while(_g1 < _g11.length) { - var header = _g11[_g1]; - ++_g1; - this.__httpRequest.headers.push(new lime_net_HTTPRequestHeader(header.name,header.value)); - } - } - this.__httpRequest.followRedirects = request.followRedirects; - this.__httpRequest.timeout = request.idleTimeout | 0; - this.__httpRequest.withCredentials = request.manageCookies; - var userAgent = request.userAgent; - if(userAgent == null) { - userAgent = "Mozilla/5.0 (Windows; U; en) AppleWebKit/420+ (KHTML, like Gecko) OpenFL/1.0"; - } - this.__httpRequest.userAgent = request.userAgent; - this.__httpRequest.enableResponseHeaders = true; - } - ,httpRequest_onError: function(error) { - this.__dispatchStatus(); - if(error == 403) { - var event = new openfl_events_SecurityErrorEvent("securityError"); - event.text = Std.string(error); - this.dispatchEvent(event); - } else { - var event1 = new openfl_events_IOErrorEvent("ioError"); - event1.text = Std.string(error); - this.dispatchEvent(event1); - } - } - ,httpRequest_onProgress: function(bytesLoaded,bytesTotal) { - var event = new openfl_events_ProgressEvent("progress"); - event.bytesLoaded = bytesLoaded; - event.bytesTotal = bytesTotal; - this.dispatchEvent(event); - } - ,__class__: openfl_net_URLLoader -}); -var openfl_net__$URLLoaderDataFormat_URLLoaderDataFormat_$Impl_$ = {}; -$hxClasses["openfl.net._URLLoaderDataFormat.URLLoaderDataFormat_Impl_"] = openfl_net__$URLLoaderDataFormat_URLLoaderDataFormat_$Impl_$; -openfl_net__$URLLoaderDataFormat_URLLoaderDataFormat_$Impl_$.__name__ = "openfl.net._URLLoaderDataFormat.URLLoaderDataFormat_Impl_"; -openfl_net__$URLLoaderDataFormat_URLLoaderDataFormat_$Impl_$.fromString = function(value) { - switch(value) { - case "binary": - return 0; - case "text": - return 1; - case "variables": - return 2; - default: - return null; - } -}; -openfl_net__$URLLoaderDataFormat_URLLoaderDataFormat_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "binary"; - case 1: - return "text"; - case 2: - return "variables"; - default: - return null; - } -}; -var openfl_net_URLRequest = function(url) { - if(url != null) { - this.url = url; - } - this.contentType = null; - this.followRedirects = openfl_net_URLRequestDefaults.followRedirects; - if(openfl_net_URLRequestDefaults.idleTimeout > 0) { - this.idleTimeout = openfl_net_URLRequestDefaults.idleTimeout; - } else { - this.idleTimeout = 30000; - } - this.manageCookies = openfl_net_URLRequestDefaults.manageCookies; - this.method = "GET"; - this.requestHeaders = []; - this.userAgent = openfl_net_URLRequestDefaults.userAgent; -}; -$hxClasses["openfl.net.URLRequest"] = openfl_net_URLRequest; -openfl_net_URLRequest.__name__ = "openfl.net.URLRequest"; -openfl_net_URLRequest.prototype = { - contentType: null - ,data: null - ,followRedirects: null - ,idleTimeout: null - ,manageCookies: null - ,method: null - ,requestHeaders: null - ,url: null - ,userAgent: null - ,__class__: openfl_net_URLRequest -}; -var openfl_net_URLRequestDefaults = function() { }; -$hxClasses["openfl.net.URLRequestDefaults"] = openfl_net_URLRequestDefaults; -openfl_net_URLRequestDefaults.__name__ = "openfl.net.URLRequestDefaults"; -openfl_net_URLRequestDefaults.userAgent = null; -var openfl_net_URLRequestHeader = function(name,value) { - if(value == null) { - value = ""; - } - if(name == null) { - name = ""; - } - this.name = name; - this.value = value; -}; -$hxClasses["openfl.net.URLRequestHeader"] = openfl_net_URLRequestHeader; -openfl_net_URLRequestHeader.__name__ = "openfl.net.URLRequestHeader"; -openfl_net_URLRequestHeader.prototype = { - name: null - ,value: null - ,__class__: openfl_net_URLRequestHeader -}; -var openfl_sensors_Accelerometer = function() { - openfl_events_EventDispatcher.call(this); - openfl_sensors_Accelerometer.initialize(); - this.__interval = 0; - this.__muted = false; - this.setRequestedUpdateInterval(openfl_sensors_Accelerometer.defaultInterval); -}; -$hxClasses["openfl.sensors.Accelerometer"] = openfl_sensors_Accelerometer; -openfl_sensors_Accelerometer.__name__ = "openfl.sensors.Accelerometer"; -openfl_sensors_Accelerometer.__properties__ = {get_isSupported:"get_isSupported"}; -openfl_sensors_Accelerometer.initialize = function() { - if(!openfl_sensors_Accelerometer.initialized) { - var sensors = lime_system_Sensor.getSensors(lime_system_SensorType.ACCELEROMETER); - if(sensors.length > 0) { - sensors[0].onUpdate.add(openfl_sensors_Accelerometer.accelerometer_onUpdate); - openfl_sensors_Accelerometer.supported = true; - } - openfl_sensors_Accelerometer.initialized = true; - } -}; -openfl_sensors_Accelerometer.accelerometer_onUpdate = function(x,y,z) { - openfl_sensors_Accelerometer.currentX = x; - openfl_sensors_Accelerometer.currentY = y; - openfl_sensors_Accelerometer.currentZ = z; -}; -openfl_sensors_Accelerometer.get_isSupported = function() { - openfl_sensors_Accelerometer.initialize(); - return openfl_sensors_Accelerometer.supported; -}; -openfl_sensors_Accelerometer.__super__ = openfl_events_EventDispatcher; -openfl_sensors_Accelerometer.prototype = $extend(openfl_events_EventDispatcher.prototype,{ - __interval: null - ,__muted: null - ,__timer: null - ,addEventListener: function(type,listener,useCapture,priority,useWeakReference) { - if(useWeakReference == null) { - useWeakReference = false; - } - if(priority == null) { - priority = 0; - } - if(useCapture == null) { - useCapture = false; - } - openfl_events_EventDispatcher.prototype.addEventListener.call(this,type,listener,useCapture,priority,useWeakReference); - this.update(); - } - ,setRequestedUpdateInterval: function(interval) { - this.__interval = interval; - if(this.__interval < 0) { - throw new js__$Boot_HaxeError(new openfl_errors_ArgumentError()); - } else if(this.__interval == 0) { - this.__interval = openfl_sensors_Accelerometer.defaultInterval; - } - if(this.__timer != null) { - this.__timer.stop(); - this.__timer = null; - } - if(openfl_sensors_Accelerometer.supported && !this.get_muted()) { - this.__timer = new haxe_Timer(this.__interval); - this.__timer.run = $bind(this,this.update); - } - } - ,update: function() { - var event = new openfl_events_AccelerometerEvent("update"); - event.timestamp = new Date().getTime() / 1000; - event.accelerationX = openfl_sensors_Accelerometer.currentX; - event.accelerationY = openfl_sensors_Accelerometer.currentY; - event.accelerationZ = openfl_sensors_Accelerometer.currentZ; - this.dispatchEvent(event); - } - ,get_muted: function() { - return this.__muted; - } - ,set_muted: function(value) { - this.__muted = value; - this.setRequestedUpdateInterval(this.__interval); - return value; - } - ,__class__: openfl_sensors_Accelerometer - ,__properties__: {set_muted:"set_muted",get_muted:"get_muted"} -}); -var openfl_system_ApplicationDomain = function(parentDomain) { - if(parentDomain != null) { - this.parentDomain = parentDomain; - } else { - this.parentDomain = openfl_system_ApplicationDomain.currentDomain; - } -}; -$hxClasses["openfl.system.ApplicationDomain"] = openfl_system_ApplicationDomain; -openfl_system_ApplicationDomain.__name__ = "openfl.system.ApplicationDomain"; -openfl_system_ApplicationDomain.prototype = { - parentDomain: null - ,getDefinition: function(name) { - return $hxClasses[name]; - } - ,hasDefinition: function(name) { - return $hxClasses[name] != null; - } - ,__class__: openfl_system_ApplicationDomain -}; -var openfl_system_LoaderContext = function(checkPolicyFile,applicationDomain,securityDomain) { - if(checkPolicyFile == null) { - checkPolicyFile = false; - } - this.checkPolicyFile = checkPolicyFile; - this.securityDomain = securityDomain; - this.applicationDomain = applicationDomain; - this.allowCodeImport = true; - this.allowLoadBytesCodeExecution = true; -}; -$hxClasses["openfl.system.LoaderContext"] = openfl_system_LoaderContext; -openfl_system_LoaderContext.__name__ = "openfl.system.LoaderContext"; -openfl_system_LoaderContext.prototype = { - allowCodeImport: null - ,allowLoadBytesCodeExecution: null - ,applicationDomain: null - ,checkPolicyFile: null - ,securityDomain: null - ,__class__: openfl_system_LoaderContext -}; -var openfl_system_SecurityDomain = function() { -}; -$hxClasses["openfl.system.SecurityDomain"] = openfl_system_SecurityDomain; -openfl_system_SecurityDomain.__name__ = "openfl.system.SecurityDomain"; -openfl_system_SecurityDomain.prototype = { - __class__: openfl_system_SecurityDomain -}; -var openfl_system_System = function() { }; -$hxClasses["openfl.system.System"] = openfl_system_System; -openfl_system_System.__name__ = "openfl.system.System"; -openfl_system_System.__properties__ = {get_vmVersion:"get_vmVersion",get_totalMemory:"get_totalMemory"}; -openfl_system_System.disposeXML = function(node) { -}; -openfl_system_System.exit = function(code) { - lime_system_System.exit(code); -}; -openfl_system_System.gc = function() { -}; -openfl_system_System.pause = function() { - openfl__$internal_Lib.notImplemented({ fileName : "openfl/system/System.hx", lineNumber : 213, className : "openfl.system.System", methodName : "pause"}); -}; -openfl_system_System.resume = function() { - openfl__$internal_Lib.notImplemented({ fileName : "openfl/system/System.hx", lineNumber : 229, className : "openfl.system.System", methodName : "resume"}); -}; -openfl_system_System.setClipboard = function(string) { - lime_system_Clipboard.set_text(string); -}; -openfl_system_System.get_totalMemory = function() { - return (window.performance && window.performance.memory) ? window.performance.memory.usedJSHeapSize : 0; -}; -openfl_system_System.get_vmVersion = function() { - return "1.0.0"; -}; -var openfl_text__$AntiAliasType_AntiAliasType_$Impl_$ = {}; -$hxClasses["openfl.text._AntiAliasType.AntiAliasType_Impl_"] = openfl_text__$AntiAliasType_AntiAliasType_$Impl_$; -openfl_text__$AntiAliasType_AntiAliasType_$Impl_$.__name__ = "openfl.text._AntiAliasType.AntiAliasType_Impl_"; -openfl_text__$AntiAliasType_AntiAliasType_$Impl_$.fromString = function(value) { - switch(value) { - case "advanced": - return 0; - case "normal": - return 1; - default: - return null; - } -}; -openfl_text__$AntiAliasType_AntiAliasType_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "advanced"; - case 1: - return "normal"; - default: - return null; - } -}; -var openfl_text__$FontStyle_FontStyle_$Impl_$ = {}; -$hxClasses["openfl.text._FontStyle.FontStyle_Impl_"] = openfl_text__$FontStyle_FontStyle_$Impl_$; -openfl_text__$FontStyle_FontStyle_$Impl_$.__name__ = "openfl.text._FontStyle.FontStyle_Impl_"; -openfl_text__$FontStyle_FontStyle_$Impl_$.fromString = function(value) { - switch(value) { - case "bold": - return 0; - case "boldItalic": - return 1; - case "italic": - return 2; - case "regular": - return 3; - default: - return null; - } -}; -openfl_text__$FontStyle_FontStyle_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "bold"; - case 1: - return "boldItalic"; - case 2: - return "italic"; - case 3: - return "regular"; - default: - return null; - } -}; -var openfl_text__$FontType_FontType_$Impl_$ = {}; -$hxClasses["openfl.text._FontType.FontType_Impl_"] = openfl_text__$FontType_FontType_$Impl_$; -openfl_text__$FontType_FontType_$Impl_$.__name__ = "openfl.text._FontType.FontType_Impl_"; -openfl_text__$FontType_FontType_$Impl_$.fromString = function(value) { - switch(value) { - case "device": - return 0; - case "embedded": - return 1; - case "embeddedCFF": - return 2; - default: - return null; - } -}; -openfl_text__$FontType_FontType_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "device"; - case 1: - return "embedded"; - case 2: - return "embeddedCFF"; - default: - return null; - } -}; -var openfl_text__$GridFitType_GridFitType_$Impl_$ = {}; -$hxClasses["openfl.text._GridFitType.GridFitType_Impl_"] = openfl_text__$GridFitType_GridFitType_$Impl_$; -openfl_text__$GridFitType_GridFitType_$Impl_$.__name__ = "openfl.text._GridFitType.GridFitType_Impl_"; -openfl_text__$GridFitType_GridFitType_$Impl_$.fromString = function(value) { - switch(value) { - case "none": - return 0; - case "pixel": - return 1; - case "subpixel": - return 2; - default: - return null; - } -}; -openfl_text__$GridFitType_GridFitType_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "none"; - case 1: - return "pixel"; - case 2: - return "subpixel"; - default: - return null; - } -}; -var openfl_text_StaticText = function() { - openfl_display_DisplayObject.call(this); - this.__graphics = new openfl_display_Graphics(this); -}; -$hxClasses["openfl.text.StaticText"] = openfl_text_StaticText; -openfl_text_StaticText.__name__ = "openfl.text.StaticText"; -openfl_text_StaticText.__super__ = openfl_display_DisplayObject; -openfl_text_StaticText.prototype = $extend(openfl_display_DisplayObject.prototype,{ - text: null - ,__class__: openfl_text_StaticText -}); -var openfl_text_TextField = function() { - this.__forceCachedBitmapUpdate = false; - this.__renderedOnCanvasWhileOnDOM = false; - openfl_display_InteractiveObject.call(this); - this.__caretIndex = -1; - this.__displayAsPassword = false; - this.__graphics = new openfl_display_Graphics(this); - this.__textEngine = new openfl__$internal_text_TextEngine(this); - this.__layoutDirty = true; - this.__offsetX = 0; - this.__offsetY = 0; - this.__mouseWheelEnabled = true; - this.__text = ""; - if(openfl_text_TextField.__defaultTextFormat == null) { - openfl_text_TextField.__defaultTextFormat = new openfl_text_TextFormat("Times New Roman",12,0,false,false,false,"","",3,0,0,0,0); - openfl_text_TextField.__defaultTextFormat.blockIndent = 0; - openfl_text_TextField.__defaultTextFormat.bullet = false; - openfl_text_TextField.__defaultTextFormat.letterSpacing = 0; - openfl_text_TextField.__defaultTextFormat.kerning = false; - } - this.__textFormat = openfl_text_TextField.__defaultTextFormat.clone(); - this.__textEngine.textFormatRanges.push(new openfl__$internal_text_TextFormatRange(this.__textFormat,0,0)); - this.addEventListener("mouseDown",$bind(this,this.this_onMouseDown)); - this.addEventListener("focusIn",$bind(this,this.this_onFocusIn)); - this.addEventListener("focusOut",$bind(this,this.this_onFocusOut)); - this.addEventListener("keyDown",$bind(this,this.this_onKeyDown)); - this.addEventListener("mouseWheel",$bind(this,this.this_onMouseWheel)); -}; -$hxClasses["openfl.text.TextField"] = openfl_text_TextField; -openfl_text_TextField.__name__ = "openfl.text.TextField"; -openfl_text_TextField.__defaultTextFormat = null; -openfl_text_TextField.__super__ = openfl_display_InteractiveObject; -openfl_text_TextField.prototype = $extend(openfl_display_InteractiveObject.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 - ,__symbol: null - ,__text: null - ,__htmlText: null - ,__textEngine: null - ,__textFormat: null - ,__div: null - ,__renderedOnCanvasWhileOnDOM: null - ,__rawHtmlText: null - ,__forceCachedBitmapUpdate: null - ,appendText: function(text) { - if(text == null || text == "") { - return; - } - this.__dirty = true; - this.__layoutDirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - this.__updateText(this.__text + text); - this.__textEngine.textFormatRanges.get(this.__textEngine.textFormatRanges.get_length() - 1).end = this.__text.length; - this.__updateScrollV(); - this.__updateScrollH(); - } - ,getCharBoundaries: function(charIndex) { - if(charIndex < 0 || charIndex > this.__text.length - 1) { - return null; - } - var rect = new openfl_geom_Rectangle(); - if(this.__getCharBoundaries(charIndex,rect)) { - return rect; - } else { - return null; - } - } - ,getCharIndexAtPoint: function(x,y) { - if(x <= 2 || x > this.get_width() + 4 || y <= 0 || y > this.get_height() + 4) { - return -1; - } - this.__updateLayout(); - x += this.get_scrollH(); - var _g = 0; - var _g1 = this.get_scrollV() - 1; - while(_g < _g1) { - var i = _g++; - y += this.__textEngine.lineHeights.get(i); - } - var group = this.__textEngine.layoutGroups.iterator(); - while(group.hasNext()) { - var group1 = group.next(); - if(y >= group1.offsetY && y <= group1.offsetY + group1.height) { - if(x >= group1.offsetX && x <= group1.offsetX + group1.width) { - var advance = 0.0; - var _g3 = 0; - var _g4 = group1.positions.length; - while(_g3 < _g4) { - var i1 = _g3++; - advance += group1.positions[i1]; - if(x <= group1.offsetX + advance) { - return group1.startIndex + i1; - } - } - return group1.endIndex; - } - } - } - return -1; - } - ,getFirstCharInParagraph: function(charIndex) { - if(charIndex < 0 || charIndex > this.get_text().length) { - return -1; - } - var index = this.__textEngine.getLineBreakIndex(); - var startIndex = 0; - while(index > -1) { - if(index < charIndex) { - startIndex = index + 1; - } else if(index >= charIndex) { - break; - } - index = this.__textEngine.getLineBreakIndex(index + 1); - } - return startIndex; - } - ,getLineIndexAtPoint: function(x,y) { - this.__updateLayout(); - if(x <= 2 || x > this.get_width() + 4 || y <= 0 || y > this.get_height() + 4) { - return -1; - } - var _g = 0; - var _g1 = this.get_scrollV() - 1; - while(_g < _g1) { - var i = _g++; - y += this.__textEngine.lineHeights.get(i); - } - var group = this.__textEngine.layoutGroups.iterator(); - while(group.hasNext()) { - var group1 = group.next(); - if(y >= group1.offsetY && y <= group1.offsetY + group1.height) { - return group1.lineIndex; - } - } - return -1; - } - ,getLineIndexOfChar: function(charIndex) { - if(charIndex < 0 || charIndex > this.__text.length) { - return -1; - } - this.__updateLayout(); - var group = this.__textEngine.layoutGroups.iterator(); - while(group.hasNext()) { - var group1 = group.next(); - if(group1.startIndex <= charIndex && group1.endIndex >= charIndex) { - return group1.lineIndex; - } - } - return -1; - } - ,getLineLength: function(lineIndex) { - this.__updateLayout(); - if(lineIndex < 0 || lineIndex > this.__textEngine.numLines - 1) { - return 0; - } - var startIndex = -1; - var endIndex = -1; - var group = this.__textEngine.layoutGroups.iterator(); - while(group.hasNext()) { - var group1 = group.next(); - if(group1.lineIndex == lineIndex) { - if(startIndex == -1) { - startIndex = group1.startIndex; - } - } else if(group1.lineIndex == lineIndex + 1) { - endIndex = group1.startIndex; - break; - } - } - if(endIndex == -1) { - endIndex = this.__text.length; - } - return endIndex - startIndex; - } - ,getLineMetrics: function(lineIndex) { - this.__updateLayout(); - var ascender = this.__textEngine.lineAscents.get(lineIndex); - var descender = this.__textEngine.lineDescents.get(lineIndex); - var leading = this.__textEngine.lineLeadings.get(lineIndex); - var lineHeight = this.__textEngine.lineHeights.get(lineIndex); - var lineWidth = this.__textEngine.lineWidths.get(lineIndex); - var margin; - switch(this.__textFormat.align) { - case 0: - margin = (this.__textEngine.width - lineWidth) / 2; - break; - case 1:case 4: - margin = this.__textEngine.width - lineWidth - 2; - break; - case 2:case 3:case 5: - margin = 2; - break; - } - return new openfl_text_TextLineMetrics(margin,lineWidth,lineHeight,ascender,descender,leading); - } - ,getLineOffset: function(lineIndex) { - this.__updateLayout(); - if(lineIndex < 0 || lineIndex > this.__textEngine.numLines - 1) { - return -1; - } - var group = this.__textEngine.layoutGroups.iterator(); - while(group.hasNext()) { - var group1 = group.next(); - if(group1.lineIndex == lineIndex) { - return group1.startIndex; - } - } - return 0; - } - ,getLineText: function(lineIndex) { - this.__updateLayout(); - if(lineIndex < 0 || lineIndex > this.__textEngine.numLines - 1) { - return null; - } - var startIndex = -1; - var endIndex = -1; - var group = this.__textEngine.layoutGroups.iterator(); - while(group.hasNext()) { - var group1 = group.next(); - if(group1.lineIndex == lineIndex) { - if(startIndex == -1) { - startIndex = group1.startIndex; - } - } else if(group1.lineIndex == lineIndex + 1) { - endIndex = group1.startIndex; - break; - } - } - if(endIndex == -1) { - endIndex = this.__text.length; - } - return this.__textEngine.text.substring(startIndex,endIndex); - } - ,getParagraphLength: function(charIndex) { - if(charIndex < 0 || charIndex > this.get_text().length) { - return -1; - } - var startIndex = this.getFirstCharInParagraph(charIndex); - if(charIndex >= this.get_text().length) { - return this.get_text().length - startIndex + 1; - } - var endIndex = this.__textEngine.getLineBreakIndex(charIndex) + 1; - if(endIndex == 0) { - endIndex = this.__text.length; - } - return endIndex - startIndex; - } - ,getTextFormat: function(beginIndex,endIndex) { - if(endIndex == null) { - endIndex = -1; - } - if(beginIndex == null) { - beginIndex = -1; - } - var format = null; - if(beginIndex >= this.get_text().length || beginIndex < -1 || endIndex > this.get_text().length || endIndex < -1) { - throw new js__$Boot_HaxeError(new openfl_errors_RangeError("The supplied index is out of bounds")); - } - if(beginIndex == -1) { - beginIndex = 0; - } - if(endIndex == -1) { - endIndex = this.get_text().length; - } - if(beginIndex >= endIndex) { - return new openfl_text_TextFormat(); - } - var group = this.__textEngine.textFormatRanges.iterator(); - while(group.hasNext()) { - var group1 = group.next(); - if(group1.start <= beginIndex && group1.end > beginIndex || group1.start < endIndex && group1.end >= endIndex) { - if(format == null) { - format = group1.format.clone(); - } else { - if(group1.format.font != format.font) { - format.font = null; - } - if(group1.format.size != format.size) { - format.size = null; - } - if(group1.format.color != format.color) { - format.color = null; - } - if(group1.format.bold != format.bold) { - format.bold = null; - } - if(group1.format.italic != format.italic) { - format.italic = null; - } - if(group1.format.underline != format.underline) { - format.underline = null; - } - if(group1.format.url != format.url) { - format.url = null; - } - if(group1.format.target != format.target) { - format.target = null; - } - if(group1.format.align != format.align) { - format.align = null; - } - if(group1.format.leftMargin != format.leftMargin) { - format.leftMargin = null; - } - if(group1.format.rightMargin != format.rightMargin) { - format.rightMargin = null; - } - if(group1.format.indent != format.indent) { - format.indent = null; - } - if(group1.format.leading != format.leading) { - format.leading = null; - } - if(group1.format.blockIndent != format.blockIndent) { - format.blockIndent = null; - } - if(group1.format.bullet != format.bullet) { - format.bullet = null; - } - if(group1.format.kerning != format.kerning) { - format.kerning = null; - } - if(group1.format.letterSpacing != format.letterSpacing) { - format.letterSpacing = null; - } - if(group1.format.tabStops != format.tabStops) { - format.tabStops = null; - } - } - } - } - if(format == null) { - format = new openfl_text_TextFormat(); - } - return format; - } - ,replaceSelectedText: function(value) { - this.__replaceSelectedText(value,false); - } - ,replaceText: function(beginIndex,endIndex,newText) { - this.__replaceText(beginIndex,endIndex,newText,false); - } - ,setSelection: function(beginIndex,endIndex) { - this.__selectionIndex = beginIndex; - this.__caretIndex = endIndex; - this.__updateScrollV(); - this.__stopCursorTimer(); - this.__startCursorTimer(); - } - ,setTextFormat: function(format,beginIndex,endIndex) { - if(endIndex == null) { - endIndex = 0; - } - if(beginIndex == null) { - beginIndex = 0; - } - var max = this.get_text().length; - var range; - if(beginIndex < 0) { - beginIndex = 0; - } - if(endIndex < 0) { - endIndex = 0; - } - if(endIndex == 0) { - if(beginIndex == 0) { - endIndex = max; - } else { - endIndex = beginIndex + 1; - } - } - if(endIndex < beginIndex) { - return; - } - if(beginIndex == 0 && endIndex >= max) { - this.__textFormat.__merge(format); - var _g = 0; - var _g1 = this.__textEngine.textFormatRanges.get_length(); - while(_g < _g1) { - var i = _g++; - range = this.__textEngine.textFormatRanges.get(i); - range.format.__merge(format); - } - } else { - var index = 0; - var newRange; - while(index < this.__textEngine.textFormatRanges.get_length()) { - range = this.__textEngine.textFormatRanges.get(index); - if(range.start == beginIndex && range.end == endIndex) { - range.format.__merge(format); - break; - } else if(range.start >= beginIndex && range.end <= endIndex) { - range.format.__merge(format); - } else if(range.start >= beginIndex && range.start < endIndex && range.end > beginIndex) { - newRange = new openfl__$internal_text_TextFormatRange(range.format.clone(),range.start,endIndex); - newRange.format.__merge(format); - this.__textEngine.textFormatRanges.insertAt(index,newRange); - range.start = endIndex; - ++index; - } else if(range.start < beginIndex && range.end > beginIndex && range.end >= endIndex) { - newRange = new openfl__$internal_text_TextFormatRange(range.format.clone(),beginIndex,range.end); - newRange.format.__merge(format); - this.__textEngine.textFormatRanges.insertAt(index + 1,newRange); - range.end = beginIndex; - ++index; - } - ++index; - } - } - this.__dirty = true; - this.__layoutDirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - ,__allowMouseFocus: function() { - if(!(this.__textEngine.type == 1 || this.get_tabEnabled())) { - return this.get_selectable(); - } else { - return true; - } - } - ,__caretBeginningOfLine: function() { - if(this.__selectionIndex == this.__caretIndex || this.__caretIndex < this.__selectionIndex) { - this.__caretIndex = this.getLineOffset(this.getLineIndexOfChar(this.__caretIndex)); - } else { - this.__selectionIndex = this.getLineOffset(this.getLineIndexOfChar(this.__selectionIndex)); - } - } - ,__caretEndOfLine: function() { - var lineIndex; - if(this.__selectionIndex == this.__caretIndex) { - lineIndex = this.getLineIndexOfChar(this.__caretIndex); - } else { - lineIndex = this.getLineIndexOfChar(Math.max(this.__caretIndex,this.__selectionIndex) | 0); - } - if(lineIndex < this.__textEngine.numLines - 1) { - this.__caretIndex = this.getLineOffset(lineIndex + 1) - 1; - } else { - this.__caretIndex = this.__text.length; - } - } - ,__caretNextCharacter: function() { - if(this.__caretIndex < this.__text.length) { - this.__caretIndex++; - } - } - ,__caretNextLine: function(lineIndex,caretIndex) { - if(lineIndex == null) { - lineIndex = this.getLineIndexOfChar(this.__caretIndex); - } - if(lineIndex < this.__textEngine.numLines - 1) { - if(caretIndex == null) { - caretIndex = this.__caretIndex; - } - this.__caretIndex = this.__getCharIndexOnDifferentLine(caretIndex,lineIndex + 1); - } else { - this.__caretIndex = this.__text.length; - } - } - ,__caretPreviousCharacter: function() { - if(this.__caretIndex > 0) { - this.__caretIndex--; - } - } - ,__caretPreviousLine: function(lineIndex,caretIndex) { - if(lineIndex == null) { - lineIndex = this.getLineIndexOfChar(this.__caretIndex); - } - if(lineIndex > 0) { - if(caretIndex == null) { - caretIndex = this.__caretIndex; - } - this.__caretIndex = this.__getCharIndexOnDifferentLine(caretIndex,lineIndex - 1); - } else { - this.__caretIndex = 0; - } - } - ,__disableInput: function() { - if(this.__inputEnabled && this.stage != null) { - this.stage.window.__backend.setTextInputEnabled(false); - this.stage.window.onTextInput.remove($bind(this,this.window_onTextInput)); - this.stage.window.onKeyDown.remove($bind(this,this.window_onKeyDown)); - this.__inputEnabled = false; - this.__stopCursorTimer(); - } - } - ,__dispatch: function(event) { - if(event.eventPhase == 2 && event.type == "mouseUp") { - var event1 = event; - var group = this.__getGroup(this.get_mouseX(),this.get_mouseY(),true); - if(group != null) { - var url = group.format.url; - if(url != null && url != "") { - if(StringTools.startsWith(url,"event:")) { - this.dispatchEvent(new openfl_events_TextEvent("link",false,false,HxOverrides.substr(url,6,null))); - } else { - openfl_Lib.getURL(new openfl_net_URLRequest(url)); - } - } - } - } - return openfl_display_InteractiveObject.prototype.__dispatch.call(this,event); - } - ,__enableInput: function() { - if(this.stage != null) { - this.stage.window.__backend.setTextInputEnabled(true); - if(!this.__inputEnabled) { - this.stage.window.__backend.setTextInputEnabled(true); - if(!this.stage.window.onTextInput.has($bind(this,this.window_onTextInput))) { - this.stage.window.onTextInput.add($bind(this,this.window_onTextInput)); - this.stage.window.onKeyDown.add($bind(this,this.window_onKeyDown)); - } - this.__inputEnabled = true; - this.__startCursorTimer(); - } - } - } - ,__fromSymbol: function(swf,symbol) { - this.__symbol = symbol; - this.set_width(symbol.width); - this.set_height(symbol.height); - this.__offsetX = symbol.x; - this.__offsetY = symbol.y; - this.set_multiline(symbol.multiline); - this.set_wordWrap(symbol.wordWrap); - this.set_displayAsPassword(symbol.password); - if(symbol.border) { - this.set_border(true); - this.set_background(true); - } - this.set_selectable(symbol.selectable); - if(symbol.input) { - this.set_type(1); - } - var format = new openfl_text_TextFormat(); - if(symbol.color != null) { - format.color = symbol.color & 16777215; - } - format.size = Math.round(symbol.fontHeight / 20); - var font = swf.symbols.h[symbol.fontID]; - if(font != null) { - format.__ascent = font.ascent / 20 / 1024; - format.__descent = font.descent / 20 / 1024; - } - format.font = symbol.fontName; - var found = false; - var _g = format.font; - if(_g == null) { - found = true; - } else { - switch(_g) { - case "":case "_sans":case "_serif":case "_typewriter": - found = true; - break; - default: - var _g1 = 0; - var _g11 = openfl_text_Font.enumerateFonts(); - while(_g1 < _g11.length) { - var font1 = _g11[_g1]; - ++_g1; - if(font1.name == format.font) { - found = true; - break; - } - } - } - } - if(!found) { - var alpha_r = new RegExp("[^a-zA-Z]+","g".split("u").join("")); - var _g12 = 0; - var _g2 = openfl_text_Font.enumerateFonts(); - while(_g12 < _g2.length) { - var font2 = _g2[_g12]; - ++_g12; - if(HxOverrides.substr(font2.name.replace(alpha_r,""),0,symbol.fontName.length) == symbol.fontName) { - format.font = font2.name; - found = true; - break; - } - } - } - if(found) { - this.set_embedFonts(true); - } else { - var key = format.font; - var _this = openfl_text_TextField.__missingFontWarning; - if(!(__map_reserved[key] != null ? _this.existsReserved(key) : _this.h.hasOwnProperty(key))) { - var k = format.font; - var _this1 = openfl_text_TextField.__missingFontWarning; - if(__map_reserved[k] != null) { - _this1.setReserved(k,true); - } else { - _this1.h[k] = true; - } - lime_utils_Log.warn("Could not find required font \"" + format.font + "\", it has not been embedded",{ fileName : "openfl/text/TextField.hx", lineNumber : 1773, className : "openfl.text.TextField", methodName : "__fromSymbol"}); - } - } - if(symbol.align != null) { - if(symbol.align == "center") { - format.align = 0; - } else if(symbol.align == "right") { - format.align = 4; - } else if(symbol.align == "justify") { - format.align = 2; - } - format.leftMargin = symbol.leftMargin / 20 | 0; - format.rightMargin = symbol.rightMargin / 20 | 0; - format.indent = symbol.indent / 20 | 0; - format.leading = symbol.leading / 20 | 0; - } - this.set_defaultTextFormat(format); - if(symbol.text != null) { - if(symbol.html) { - this.set_htmlText(symbol.text); - } else { - this.set_text(symbol.text); - } - } - } - ,__getAdvance: function(position) { - return position; - } - ,__getBounds: function(rect,matrix) { - this.__updateLayout(); - var bounds = openfl_geom_Rectangle.__pool.get(); - bounds.copyFrom(this.__textEngine.bounds); - matrix.tx += this.__offsetX; - matrix.ty += this.__offsetY; - bounds.__transform(bounds,matrix); - rect.__expand(bounds.x,bounds.y,bounds.width,bounds.height); - openfl_geom_Rectangle.__pool.release(bounds); - } - ,__getCharBoundaries: function(charIndex,rect) { - if(charIndex < 0 || charIndex > this.__text.length - 1) { - return false; - } - this.__updateLayout(); - var group = this.__textEngine.layoutGroups.iterator(); - while(group.hasNext()) { - var group1 = group.next(); - if(charIndex >= group1.startIndex && charIndex < group1.endIndex) { - try { - var x = group1.offsetX; - var _g1 = 0; - var _g2 = charIndex - group1.startIndex; - while(_g1 < _g2) { - var i = _g1++; - x += group1.positions[i]; - } - var lastPosition = group1.positions[charIndex - group1.startIndex]; - rect.setTo(x,group1.offsetY,lastPosition,group1.ascent + group1.descent); - return true; - } catch( e ) { - haxe_CallStack.lastException = e; - var e1 = ((e) instanceof js__$Boot_HaxeError) ? e.val : e; - } - } - } - return false; - } - ,__getCharIndexOnDifferentLine: function(charIndex,lineIndex) { - if(charIndex < 0 || charIndex > this.__text.length) { - return -1; - } - if(lineIndex < 0 || lineIndex > this.__textEngine.numLines - 1) { - return -1; - } - var x = null; - var y = null; - var group = this.__textEngine.layoutGroups.iterator(); - while(group.hasNext()) { - var group1 = group.next(); - if(charIndex >= group1.startIndex && charIndex <= group1.endIndex) { - x = group1.offsetX; - var _g1 = 0; - var _g2 = charIndex - group1.startIndex; - while(_g1 < _g2) { - var i = _g1++; - x += group1.positions[i]; - } - if(y != null) { - return this.__getPosition(x,y); - } - } - if(group1.lineIndex == lineIndex) { - y = group1.offsetY + group1.height / 2; - var _g11 = 0; - var _g21 = this.get_scrollV() - 1; - while(_g11 < _g21) { - var i1 = _g11++; - y -= this.__textEngine.lineHeights.get(i1); - } - if(x != null) { - return this.__getPosition(x,y); - } - } - } - return -1; - } - ,__getCursor: function() { - var group = this.__getGroup(this.get_mouseX(),this.get_mouseY(),true); - if(group != null && group.format.url != "") { - return "button"; - } else if(this.__textEngine.selectable) { - return "ibeam"; - } - return null; - } - ,__getGroup: function(x,y,precise) { - if(precise == null) { - precise = false; - } - this.__updateLayout(); - x += this.get_scrollH(); - var _g = 0; - var _g1 = this.get_scrollV() - 1; - while(_g < _g1) { - var i = _g++; - y += this.__textEngine.lineHeights.get(i); - } - if(!precise && y > this.__textEngine.textHeight) { - y = this.__textEngine.textHeight; - } - var firstGroup = true; - var group; - var nextGroup; - var _g2 = 0; - var _g3 = this.__textEngine.layoutGroups.get_length(); - while(_g2 < _g3) { - var i1 = _g2++; - group = this.__textEngine.layoutGroups.get(i1); - if(i1 < this.__textEngine.layoutGroups.get_length() - 1) { - nextGroup = this.__textEngine.layoutGroups.get(i1 + 1); - } else { - nextGroup = null; - } - if(firstGroup) { - if(y < group.offsetY) { - y = group.offsetY; - } - if(x < group.offsetX) { - x = group.offsetX; - } - firstGroup = false; - } - if(y >= group.offsetY && y <= group.offsetY + group.height || !precise && nextGroup == null) { - if(x >= group.offsetX && x <= group.offsetX + group.width || !precise && (nextGroup == null || nextGroup.lineIndex != group.lineIndex)) { - return group; - } - } - } - return null; - } - ,__getPosition: function(x,y) { - var group = this.__getGroup(x,y); - if(group == null) { - return this.__text.length; - } - var advance = 0.0; - var _g = 0; - var _g1 = group.positions.length; - while(_g < _g1) { - var i = _g++; - advance += group.positions[i]; - if(x <= group.offsetX + advance) { - if(x <= group.offsetX + (advance - group.positions[i]) + group.positions[i] / 2) { - return group.startIndex + i; - } else if(group.startIndex + i < group.endIndex) { - return group.startIndex + i + 1; - } else { - return group.endIndex; - } - } - } - return group.endIndex; - } - ,__hitTest: function(x,y,shapeFlag,stack,interactiveOnly,hitObject) { - if(!hitObject.get_visible() || this.__isMask || interactiveOnly && !this.mouseEnabled) { - return false; - } - if(this.get_mask() != null && !this.get_mask().__hitTestMask(x,y)) { - return false; - } - this.__getRenderTransform(); - this.__updateLayout(); - var _this = this.__renderTransform; - var norm = _this.a * _this.d - _this.b * _this.c; - var px = norm == 0 ? -_this.tx : 1.0 / norm * (_this.c * (_this.ty - y) + _this.d * (x - _this.tx)); - var _this1 = this.__renderTransform; - var norm1 = _this1.a * _this1.d - _this1.b * _this1.c; - var py = norm1 == 0 ? -_this1.ty : 1.0 / norm1 * (_this1.a * (y - _this1.ty) + _this1.b * (_this1.tx - x)); - if(this.__textEngine.bounds.contains(px,py)) { - if(stack != null) { - stack.push(hitObject); - } - return true; - } - return false; - } - ,__hitTestMask: function(x,y) { - this.__getRenderTransform(); - this.__updateLayout(); - var _this = this.__renderTransform; - var norm = _this.a * _this.d - _this.b * _this.c; - var px = norm == 0 ? -_this.tx : 1.0 / norm * (_this.c * (_this.ty - y) + _this.d * (x - _this.tx)); - var _this1 = this.__renderTransform; - var norm1 = _this1.a * _this1.d - _this1.b * _this1.c; - var py = norm1 == 0 ? -_this1.ty : 1.0 / norm1 * (_this1.a * (y - _this1.ty) + _this1.b * (_this1.tx - x)); - if(this.__textEngine.bounds.contains(px,py)) { - return true; - } - return false; - } - ,__renderCairo: function(renderer) { - } - ,__renderCanvas: function(renderer) { - if(renderer.__isDOM && !this.__renderedOnCanvasWhileOnDOM) { - this.__renderedOnCanvasWhileOnDOM = true; - if(this.get_type() == 1) { - this.replaceText(0,this.__text.length,this.__text); - } - if(this.__isHTML) { - this.__updateText(openfl__$internal_formats_html_HTMLParser.parse(this.__text,this.__textFormat,this.__textEngine.textFormatRanges)); - } - this.__dirty = true; - this.__layoutDirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - if(this.get_mask() == null || this.get_mask().get_width() > 0 && this.get_mask().get_height() > 0) { - this.__updateCacheBitmap(renderer,false); - if(this.__cacheBitmap != null && !this.__isCacheBitmapRender) { - var bitmap = this.__cacheBitmap; - if(!(!bitmap.__renderable)) { - var alpha = renderer.__getAlpha(bitmap.__worldAlpha); - if(alpha > 0 && bitmap.__bitmapData != null && bitmap.__bitmapData.__isValid && bitmap.__bitmapData.readable) { - var context = renderer.context; - renderer.__setBlendMode(bitmap.__worldBlendMode); - renderer.__pushMaskObject(bitmap,false); - lime__$internal_graphics_ImageCanvasUtil.convertToCanvas(bitmap.__bitmapData.image); - context.globalAlpha = alpha; - var scrollRect = bitmap.__scrollRect; - renderer.setTransform(bitmap.__renderTransform,context); - if(!renderer.__allowSmoothing || !bitmap.smoothing) { - context.imageSmoothingEnabled = false; - } - if(scrollRect == null) { - context.drawImage(bitmap.__bitmapData.image.get_src(),0,0,bitmap.__bitmapData.image.width,bitmap.__bitmapData.image.height); - } else { - context.drawImage(bitmap.__bitmapData.image.get_src(),scrollRect.x,scrollRect.y,scrollRect.width,scrollRect.height); - } - if(!renderer.__allowSmoothing || !bitmap.smoothing) { - context.imageSmoothingEnabled = true; - } - renderer.__popMaskObject(bitmap,false); - } - } - } else { - var transform = this.__worldTransform; - var textEngine = this.__textEngine; - var bounds = textEngine.background || textEngine.border ? textEngine.bounds : textEngine.textBounds; - var graphics = this.__graphics; - if(this.__dirty) { - this.__updateLayout(); - if(graphics.__bounds == null) { - graphics.__bounds = new openfl_geom_Rectangle(); - } - graphics.__bounds.copyFrom(bounds); - } - graphics.__update(renderer.__worldTransform); - if(this.__dirty || graphics.__softwareDirty) { - var width = graphics.__width; - var height = graphics.__height; - if((textEngine.text == null || textEngine.text == "") && !textEngine.background && !textEngine.border && !textEngine.__hasFocus && (textEngine.type != 1 || !textEngine.selectable) || (textEngine.width <= 0 || textEngine.height <= 0) && textEngine.autoSize != 2) { - this.__graphics.__canvas = null; - this.__graphics.__context = null; - this.__graphics.__bitmap = null; - this.__graphics.__softwareDirty = false; - this.__graphics.set___dirty(false); - this.__dirty = false; - } else { - if(this.__graphics.__canvas == null) { - this.__graphics.__canvas = window.document.createElement("canvas"); - this.__graphics.__context = this.__graphics.__canvas.getContext("2d"); - } - openfl__$internal_renderer_canvas_CanvasTextField.context = graphics.__context; - var transform1 = graphics.__renderTransform; - if(renderer.__isDOM) { - var scale = renderer.pixelRatio; - graphics.__canvas.width = width * scale | 0; - graphics.__canvas.height = height * scale | 0; - graphics.__canvas.style.width = width + "px"; - graphics.__canvas.style.height = height + "px"; - var matrix = openfl_geom_Matrix.__pool.get(); - matrix.copyFrom(transform1); - matrix.scale(scale,scale); - renderer.setTransform(matrix,openfl__$internal_renderer_canvas_CanvasTextField.context); - openfl_geom_Matrix.__pool.release(matrix); - } else { - graphics.__canvas.width = width; - graphics.__canvas.height = height; - openfl__$internal_renderer_canvas_CanvasTextField.context.setTransform(transform1.a,transform1.b,transform1.c,transform1.d,transform1.tx,transform1.ty); - } - if(openfl__$internal_renderer_canvas_CanvasTextField.clearRect == null) { - openfl__$internal_renderer_canvas_CanvasTextField.clearRect = (typeof navigator !== 'undefined' && typeof navigator['isCocoonJS'] !== 'undefined'); - } - if(openfl__$internal_renderer_canvas_CanvasTextField.clearRect) { - openfl__$internal_renderer_canvas_CanvasTextField.context.clearRect(0,0,graphics.__canvas.width,graphics.__canvas.height); - } - if(textEngine.text != null && textEngine.text != "" || textEngine.__hasFocus) { - var text = textEngine.text; - if(!renderer.__allowSmoothing || textEngine.antiAliasType == 0 && textEngine.sharpness == 400) { - graphics.__context.imageSmoothingEnabled = false; - } else { - graphics.__context.imageSmoothingEnabled = true; - } - if(textEngine.border || textEngine.background) { - openfl__$internal_renderer_canvas_CanvasTextField.context.rect(0.5,0.5,bounds.width - 1,bounds.height - 1); - if(textEngine.background) { - var tmp = StringTools.hex(textEngine.backgroundColor & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = "#" + tmp; - openfl__$internal_renderer_canvas_CanvasTextField.context.fill(); - } - if(textEngine.border) { - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - var tmp1 = StringTools.hex(textEngine.borderColor & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = "#" + tmp1; - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - } - } - openfl__$internal_renderer_canvas_CanvasTextField.context.textBaseline = "alphabetic"; - openfl__$internal_renderer_canvas_CanvasTextField.context.textAlign = "start"; - var scrollX = -this.get_scrollH(); - var scrollY = 0.0; - var _g = 0; - var _g1 = this.get_scrollV() - 1; - while(_g < _g1) { - var i = _g++; - scrollY -= textEngine.lineHeights.get(i); - } - var advance; - var group = textEngine.layoutGroups.iterator(); - while(group.hasNext()) { - var group1 = group.next(); - if(group1.lineIndex < this.get_scrollV() - 1) { - continue; - } - if(group1.lineIndex > textEngine.get_bottomScrollV() - 1) { - break; - } - var color = "#" + StringTools.hex(group1.format.color & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.font = openfl__$internal_text_TextEngine.getFont(group1.format); - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = color; - openfl__$internal_renderer_canvas_CanvasTextField.context.fillText(text.substring(group1.startIndex,group1.endIndex),group1.offsetX + scrollX - bounds.x,group1.offsetY + group1.ascent + scrollY - bounds.y); - if(this.__caretIndex > -1 && textEngine.selectable) { - if(this.__selectionIndex == this.__caretIndex) { - if(this.__showCursor && group1.startIndex <= this.__caretIndex && group1.endIndex >= this.__caretIndex) { - advance = 0.0; - var _g3 = 0; - var _g4 = this.__caretIndex - group1.startIndex; - while(_g3 < _g4) { - var i1 = _g3++; - if(group1.positions.length <= i1) { - break; - } - advance += group1.positions[i1]; - } - var scrollY1 = 0.0; - var _g5 = this.get_scrollV(); - var _g6 = group1.lineIndex + 1; - while(_g5 < _g6) { - var i2 = _g5++; - scrollY1 += textEngine.lineHeights.get(i2 - 1); - } - openfl__$internal_renderer_canvas_CanvasTextField.context.beginPath(); - var tmp2 = StringTools.hex(group1.format.color & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = "#" + tmp2; - openfl__$internal_renderer_canvas_CanvasTextField.context.moveTo(group1.offsetX + advance - this.get_scrollH() - bounds.x,scrollY1 + 2 - bounds.y); - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - openfl__$internal_renderer_canvas_CanvasTextField.context.lineTo(group1.offsetX + advance - this.get_scrollH() - bounds.x,scrollY1 + openfl__$internal_text_TextEngine.getFormatHeight(this.get_defaultTextFormat()) - 1 - bounds.y); - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - openfl__$internal_renderer_canvas_CanvasTextField.context.closePath(); - } - } else if(group1.startIndex <= this.__caretIndex && group1.endIndex >= this.__caretIndex || group1.startIndex <= this.__selectionIndex && group1.endIndex >= this.__selectionIndex || group1.startIndex > this.__caretIndex && group1.endIndex < this.__selectionIndex || group1.startIndex > this.__selectionIndex && group1.endIndex < this.__caretIndex) { - var selectionStart = Math.min(this.__selectionIndex,this.__caretIndex) | 0; - var selectionEnd = Math.max(this.__selectionIndex,this.__caretIndex) | 0; - if(group1.startIndex > selectionStart) { - selectionStart = group1.startIndex; - } - if(group1.endIndex < selectionEnd) { - selectionEnd = group1.endIndex; - } - var end; - var start = this.getCharBoundaries(selectionStart); - if(selectionEnd >= group1.endIndex) { - end = this.getCharBoundaries(group1.endIndex - 1); - if(end != null) { - end.x += end.width + 2; - } - } else { - end = this.getCharBoundaries(selectionEnd); - } - if(start != null && end != null) { - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = "#000000"; - openfl__$internal_renderer_canvas_CanvasTextField.context.fillRect(start.x + scrollX,start.y + scrollY,end.x - start.x,group1.height); - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = "#FFFFFF"; - openfl__$internal_renderer_canvas_CanvasTextField.context.fillText(text.substring(selectionStart,selectionEnd),scrollX + start.x,group1.offsetY + group1.ascent + scrollY); - } - } - } - if(group1.format.underline) { - openfl__$internal_renderer_canvas_CanvasTextField.context.beginPath(); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = color; - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - var x = group1.offsetX + scrollX - bounds.x; - var y = Math.floor(group1.offsetY + scrollY + group1.ascent - bounds.y) + 0.5; - openfl__$internal_renderer_canvas_CanvasTextField.context.moveTo(x,y); - openfl__$internal_renderer_canvas_CanvasTextField.context.lineTo(x + group1.width,y); - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - openfl__$internal_renderer_canvas_CanvasTextField.context.closePath(); - } - } - } else { - if(textEngine.border || textEngine.background) { - if(textEngine.border) { - openfl__$internal_renderer_canvas_CanvasTextField.context.rect(0.5,0.5,bounds.width - 1,bounds.height - 1); - } else { - openfl__$internal_renderer_canvas_CanvasTextField.context.rect(0,0,bounds.width,bounds.height); - } - if(textEngine.background) { - var tmp3 = StringTools.hex(textEngine.backgroundColor & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.fillStyle = "#" + tmp3; - openfl__$internal_renderer_canvas_CanvasTextField.context.fill(); - } - if(textEngine.border) { - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - openfl__$internal_renderer_canvas_CanvasTextField.context.lineCap = "square"; - var tmp4 = StringTools.hex(textEngine.borderColor & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = "#" + tmp4; - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - } - } - if(this.__caretIndex > -1 && textEngine.selectable && this.__showCursor) { - var scrollX1 = -this.get_scrollH(); - var scrollY2 = 0.0; - var _g2 = 0; - var _g11 = this.get_scrollV() - 1; - while(_g2 < _g11) { - var i3 = _g2++; - scrollY2 += textEngine.lineHeights.get(i3); - } - openfl__$internal_renderer_canvas_CanvasTextField.context.beginPath(); - var tmp5 = StringTools.hex(this.get_defaultTextFormat().color & 16777215,6); - openfl__$internal_renderer_canvas_CanvasTextField.context.strokeStyle = "#" + tmp5; - openfl__$internal_renderer_canvas_CanvasTextField.context.moveTo(scrollX1 + 2.5,scrollY2 + 2.5); - openfl__$internal_renderer_canvas_CanvasTextField.context.lineWidth = 1; - openfl__$internal_renderer_canvas_CanvasTextField.context.lineTo(scrollX1 + 2.5,scrollY2 + openfl__$internal_text_TextEngine.getFormatHeight(this.get_defaultTextFormat()) - 1); - openfl__$internal_renderer_canvas_CanvasTextField.context.stroke(); - openfl__$internal_renderer_canvas_CanvasTextField.context.closePath(); - } - } - graphics.__bitmap = openfl_display_BitmapData.fromCanvas(this.__graphics.__canvas); - graphics.__visible = true; - this.__dirty = false; - graphics.__softwareDirty = false; - graphics.set___dirty(false); - } - } - var smoothingEnabled = false; - if(this.__textEngine.antiAliasType == 0 && this.__textEngine.gridFitType == 1) { - smoothingEnabled = renderer.context.imageSmoothingEnabled; - if(smoothingEnabled) { - renderer.context.imageSmoothingEnabled = false; - } - } - if(!(this.opaqueBackground == null && this.__graphics == null)) { - if(!(!this.__renderable)) { - var alpha1 = renderer.__getAlpha(this.__worldAlpha); - if(!(alpha1 <= 0)) { - if(this.opaqueBackground != null && !this.__isCacheBitmapRender && this.get_width() > 0 && this.get_height() > 0) { - renderer.__setBlendMode(this.__worldBlendMode); - renderer.__pushMaskObject(this); - var context1 = renderer.context; - renderer.setTransform(this.__renderTransform,context1); - var color1 = this.opaqueBackground; - context1.fillStyle = "rgb(" + (color1 >>> 16 & 255) + "," + (color1 >>> 8 & 255) + "," + (color1 & 255) + ")"; - context1.fillRect(0,0,this.get_width(),this.get_height()); - renderer.__popMaskObject(this); - } - if(this.__graphics != null) { - if(!(!this.__renderable)) { - var alpha2 = renderer.__getAlpha(this.__worldAlpha); - if(!(alpha2 <= 0)) { - var graphics1 = this.__graphics; - if(graphics1 != null) { - openfl__$internal_renderer_canvas_CanvasGraphics.render(graphics1,renderer); - var width1 = graphics1.__width; - var height1 = graphics1.__height; - var canvas = graphics1.__canvas; - if(canvas != null && graphics1.__visible && width1 >= 1 && height1 >= 1) { - var transform2 = graphics1.__worldTransform; - var context2 = renderer.context; - var scrollRect1 = this.__scrollRect; - var scale9Grid = this.__worldScale9Grid; - if(scrollRect1 == null || scrollRect1.width > 0 && scrollRect1.height > 0) { - renderer.__setBlendMode(this.__worldBlendMode); - renderer.__pushMaskObject(this); - context2.globalAlpha = alpha2; - if(scale9Grid != null && transform2.b == 0 && transform2.c == 0) { - context2.setTransform(1,0,0,1,transform2.tx,transform2.ty); - var bounds1 = graphics1.__bounds; - var scaleX = graphics1.__renderTransform.a; - var scaleY = graphics1.__renderTransform.d; - var renderScaleX = transform2.a; - var renderScaleY = transform2.d; - var left = Math.max(1,Math.round(scale9Grid.x * scaleX)); - var top = Math.round(scale9Grid.y * scaleY); - var right = Math.max(1,Math.round((bounds1.get_right() - scale9Grid.get_right()) * scaleX)); - var bottom = Math.round((bounds1.get_bottom() - scale9Grid.get_bottom()) * scaleY); - var centerWidth = Math.round(scale9Grid.width * scaleX); - var centerHeight = Math.round(scale9Grid.height * scaleY); - var renderLeft = Math.round(scale9Grid.x * renderScaleX); - var renderTop = Math.round(scale9Grid.y * renderScaleY); - var renderRight = Math.round((bounds1.get_right() - scale9Grid.get_right()) * renderScaleX); - var renderBottom = Math.round((bounds1.get_bottom() - scale9Grid.get_bottom()) * renderScaleY); - var renderCenterWidth = Math.round(width1 * renderScaleX) - renderLeft - renderRight; - var renderCenterHeight = Math.round(height1 * renderScaleY) - renderTop - renderBottom; - renderer.applySmoothing(context2,false); - if(centerWidth != 0 && centerHeight != 0) { - context2.drawImage(canvas,0,0,left,top,0,0,renderLeft,renderTop); - context2.drawImage(canvas,left,0,centerWidth,top,renderLeft,0,renderCenterWidth,renderTop); - context2.drawImage(canvas,left + centerWidth,0,right,top,renderLeft + renderCenterWidth,0,renderRight,renderTop); - context2.drawImage(canvas,0,top,left,centerHeight,0,renderTop,renderLeft,renderCenterHeight); - context2.drawImage(canvas,left,top,centerWidth,centerHeight,renderLeft,renderTop,renderCenterWidth,renderCenterHeight); - context2.drawImage(canvas,left + centerWidth,top,right,centerHeight,renderLeft + renderCenterWidth,renderTop,renderRight,renderCenterHeight); - context2.drawImage(canvas,0,top + centerHeight,left,bottom,0,renderTop + renderCenterHeight,renderLeft,renderBottom); - context2.drawImage(canvas,left,top + centerHeight,centerWidth,bottom,renderLeft,renderTop + renderCenterHeight,renderCenterWidth,renderBottom); - context2.drawImage(canvas,left + centerWidth,top + centerHeight,right,bottom,renderLeft + renderCenterWidth,renderTop + renderCenterHeight,renderRight,renderBottom); - } else if(centerWidth == 0 && centerHeight != 0) { - var renderWidth = renderLeft + renderCenterWidth + renderRight; - context2.drawImage(canvas,0,0,width1,top,0,0,renderWidth,renderTop); - context2.drawImage(canvas,0,top,width1,centerHeight,0,renderTop,renderWidth,renderCenterHeight); - context2.drawImage(canvas,0,top + centerHeight,width1,bottom,0,renderTop + renderCenterHeight,renderWidth,renderBottom); - } else if(centerHeight == 0 && centerWidth != 0) { - var renderHeight = renderTop + renderCenterHeight + renderBottom; - context2.drawImage(canvas,0,0,left,height1,0,0,renderLeft,renderHeight); - context2.drawImage(canvas,left,0,centerWidth,height1,renderLeft,0,renderCenterWidth,renderHeight); - context2.drawImage(canvas,left + centerWidth,0,right,height1,renderLeft + renderCenterWidth,0,renderRight,renderHeight); - } - } else { - renderer.setTransform(transform2,context2); - if(renderer.__isDOM) { - var reverseScale = 1 / renderer.pixelRatio; - context2.scale(reverseScale,reverseScale); - } - context2.drawImage(canvas,0,0,width1,height1); - } - renderer.__popMaskObject(this); - } - } - } - } - } - } - } - } - } - if(smoothingEnabled) { - renderer.context.imageSmoothingEnabled = true; - } - } - } - } - ,__renderDOM: function(renderer) { - this.__domRender = true; - this.__updateCacheBitmap(renderer,this.__forceCachedBitmapUpdate); - this.__forceCachedBitmapUpdate = false; - this.__domRender = false; - if(this.__cacheBitmap != null && !this.__isCacheBitmapRender) { - this.__renderDOMClear(renderer); - this.__cacheBitmap.stage = this.stage; - var bitmap = this.__cacheBitmap; - if(bitmap.stage != null && bitmap.__worldVisible && bitmap.__renderable && bitmap.__bitmapData != null && bitmap.__bitmapData.__isValid && bitmap.__bitmapData.readable) { - renderer.__pushMaskObject(bitmap); - if(bitmap.__bitmapData.image.buffer.__srcImage != null) { - openfl__$internal_renderer_dom_DOMBitmap.renderImage(bitmap,renderer); - } else { - openfl__$internal_renderer_dom_DOMBitmap.renderCanvas(bitmap,renderer); - } - renderer.__popMaskObject(bitmap); - } else { - openfl__$internal_renderer_dom_DOMBitmap.clear(bitmap,renderer); - } - } else { - if(this.__renderedOnCanvasWhileOnDOM) { - this.__renderedOnCanvasWhileOnDOM = false; - if(this.__isHTML && this.__rawHtmlText != null) { - this.__updateText(this.__rawHtmlText); - this.__dirty = true; - this.__layoutDirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - } - var textField = this; - var textEngine = textField.__textEngine; - if(textField.stage != null && textField.__worldVisible && textField.__renderable) { - if(textField.__dirty || textField.__renderTransformChanged || textField.__div == null) { - if(textEngine.text != "" || textEngine.background || textEngine.border || textEngine.type == 1) { - if(textField.__div == null) { - textField.__div = window.document.createElement("div"); - renderer.__initializeElement(textField,textField.__div); - textField.__style.setProperty("outline","none",null); - textField.__div.addEventListener("input",function(event) { - event.preventDefault(); - if(textField.get_htmlText() != textField.__div.innerHTML) { - textField.set_htmlText(textField.__div.innerHTML); - var textField1 = textField.__displayAsPassword; - textField.__dirty = false; - } - },true); - } - if(!textEngine.wordWrap) { - textField.__style.setProperty("white-space","nowrap",null); - } else { - textField.__style.setProperty("word-wrap","break-word",null); - } - textField.__style.setProperty("overflow","hidden",null); - if(textEngine.selectable) { - textField.__style.setProperty("cursor","text",null); - textField.__style.setProperty("-webkit-user-select","text",null); - textField.__style.setProperty("-moz-user-select","text",null); - textField.__style.setProperty("-ms-user-select","text",null); - textField.__style.setProperty("-o-user-select","text",null); - } else { - textField.__style.setProperty("cursor","inherit",null); - } - var div = textField.__div; - div.contentEditable = textEngine.type == 1; - var style = textField.__style; - if(textEngine.background) { - style.setProperty("background-color","#" + StringTools.hex(textEngine.backgroundColor & 16777215,6),null); - } else { - style.removeProperty("background-color"); - } - var w = textEngine.width; - var h = textEngine.height; - var scale = 1; - var unscaledSize = textField.__textFormat.size; - var scaledSize = unscaledSize; - var t = textField.__renderTransform; - if(t.a != 1.0 || t.d != 1.0) { - if(t.a == t.d) { - scale = t.a; - t.a = t.d = 1.0; - } else if(t.a > t.d) { - scale = t.a; - t.d /= t.a; - t.a = 1.0; - } else { - scale = t.d; - t.a /= t.d; - t.d = 1.0; - } - scaledSize *= scale; - w = Math.ceil(w * scale); - h = Math.ceil(h * scale); - } - textField.__textFormat.size = scaledSize; - var text = textEngine.text; - var adjustment = 0; - if(!textField.__isHTML) { - text = StringTools.htmlEscape(text); - } else { - var matchText = text; - while(openfl__$internal_renderer_dom_DOMTextField.__regexFont.match(matchText)) { - var fontText = openfl__$internal_renderer_dom_DOMTextField.__regexFont.matched(0); - var style1 = ""; - if(openfl__$internal_renderer_dom_DOMTextField.__regexFace.match(fontText)) { - style1 += "font-family:'" + openfl__$internal_renderer_dom_DOMTextField.__getAttributeMatch(openfl__$internal_renderer_dom_DOMTextField.__regexFace) + "';"; - } - if(openfl__$internal_renderer_dom_DOMTextField.__regexColor.match(fontText)) { - style1 += "color:#" + openfl__$internal_renderer_dom_DOMTextField.__getAttributeMatch(openfl__$internal_renderer_dom_DOMTextField.__regexColor) + ";"; - } - if(openfl__$internal_renderer_dom_DOMTextField.__regexSize.match(fontText)) { - var sizeAttr = openfl__$internal_renderer_dom_DOMTextField.__getAttributeMatch(openfl__$internal_renderer_dom_DOMTextField.__regexSize); - var firstChar = HxOverrides.cca(sizeAttr,0); - var size; - adjustment = parseFloat(sizeAttr) * scale; - if(firstChar == 43 || firstChar == 45) { - size = scaledSize + adjustment; - } else { - size = adjustment; - } - style1 += "font-size:" + size + "px;"; - } - text = StringTools.replace(text,fontText,""); - matchText = openfl__$internal_renderer_dom_DOMTextField.__regexFont.matchedRight(); - } - text = text.replace(openfl__$internal_renderer_dom_DOMTextField.__regexCloseFont.r,""); - } - text = StringTools.replace(text,"

"); - textField.__div.innerHTML = tmp; - var _this_r1 = new RegExp("\n","g".split("u").join("")); - var tmp1 = textField.__div.innerHTML.replace(_this_r1,"
"); - textField.__div.innerHTML = tmp1; - var _this_r2 = new RegExp("\r","g".split("u").join("")); - var tmp2 = textField.__div.innerHTML.replace(_this_r2,"
"); - textField.__div.innerHTML = tmp2; - style.setProperty("font",openfl__$internal_text_TextEngine.getFont(textField.__textFormat),null); - textField.__textFormat.size = unscaledSize; - textField.__textFormat.leading = unscaledLeading; - style.setProperty("top","3px",null); - if(textEngine.border) { - style.setProperty("border","solid 1px #" + StringTools.hex(textEngine.borderColor & 16777215,6),null); - textField.__renderTransform.translate(-1,-1); - textField.__renderTransformChanged = true; - textField.__transformDirty = true; - } else if(style.border != "") { - style.removeProperty("border"); - textField.__renderTransformChanged = true; - } - style.setProperty("color","#" + StringTools.hex(textField.__textFormat.color & 16777215,6),null); - style.setProperty("width",w + "px",null); - style.setProperty("height",h + "px",null); - switch(textField.__textFormat.align) { - case 0: - style.setProperty("text-align","center",null); - break; - case 4: - style.setProperty("text-align","right",null); - break; - default: - style.setProperty("text-align","left",null); - } - textField.__dirty = false; - } else if(textField.__div != null) { - renderer.element.removeChild(textField.__div); - textField.__div = null; - } - } - if(textField.__div != null) { - var old = renderer.__roundPixels; - renderer.__roundPixels = true; - renderer.__updateClip(textField); - renderer.__applyStyle(textField,true,true,true); - renderer.__roundPixels = old; - } - } else { - openfl__$internal_renderer_dom_DOMTextField.clear(textField,renderer); - } - } - this.__renderEvent(renderer); - } - ,__renderDOMClear: function(renderer) { - openfl__$internal_renderer_dom_DOMTextField.clear(this,renderer); - } - ,__renderGL: function(renderer) { - this.__updateCacheBitmap(renderer,false); - if(this.__cacheBitmap != null && !this.__isCacheBitmapRender) { - openfl__$internal_renderer_context3D_Context3DBitmap.render(this.__cacheBitmap,renderer); - } else { - openfl__$internal_renderer_context3D_Context3DTextField.render(this,renderer); - if(!(this.opaqueBackground == null && this.__graphics == null)) { - if(!(!this.__renderable || this.__worldAlpha <= 0)) { - if(this.opaqueBackground != null && !this.__isCacheBitmapRender && this.get_width() > 0 && this.get_height() > 0) { - renderer.__setBlendMode(this.__worldBlendMode); - renderer.__pushMaskObject(this); - var context = renderer.__context3D; - var rect = openfl_geom_Rectangle.__pool.get(); - rect.setTo(0,0,this.get_width(),this.get_height()); - renderer.__pushMaskRect(rect,this.__renderTransform); - var color = this.opaqueBackground; - context.clear((color >>> 16 & 255) / 255,(color >>> 8 & 255) / 255,(color & 255) / 255,1,0,0,1); - renderer.__popMaskRect(); - renderer.__popMaskObject(this); - openfl_geom_Rectangle.__pool.release(rect); - } - if(this.__graphics != null) { - openfl__$internal_renderer_context3D_Context3DShape.render(this,renderer); - } - } - } - } - this.__renderEvent(renderer); - } - ,__renderGLMask: function(renderer) { - openfl__$internal_renderer_context3D_Context3DTextField.renderMask(this,renderer); - openfl_display_InteractiveObject.prototype.__renderGLMask.call(this,renderer); - } - ,__replaceSelectedText: function(value,restrict) { - if(restrict == null) { - restrict = true; - } - if(value == null) { - value = ""; - } - if(value == "" && this.__selectionIndex == this.__caretIndex) { - return; - } - var startIndex = this.__caretIndex < this.__selectionIndex ? this.__caretIndex : this.__selectionIndex; - var endIndex = this.__caretIndex > this.__selectionIndex ? this.__caretIndex : this.__selectionIndex; - if(startIndex == endIndex && this.__textEngine.maxChars > 0 && this.__text.length == this.__textEngine.maxChars) { - return; - } - if(startIndex > this.__text.length) { - startIndex = this.__text.length; - } - if(endIndex > this.__text.length) { - endIndex = this.__text.length; - } - if(endIndex < startIndex) { - var cache = endIndex; - endIndex = startIndex; - startIndex = cache; - } - if(startIndex < 0) { - startIndex = 0; - } - this.__replaceText(startIndex,endIndex,value,restrict); - var i = startIndex + (js_Boot.__cast(value , String)).length; - if(i > this.__text.length) { - i = this.__text.length; - } - this.setSelection(i,i); - this.__updateScrollH(); - } - ,__replaceText: function(beginIndex,endIndex,newText,restrict) { - if(endIndex < beginIndex || beginIndex < 0 || endIndex > this.__text.length || newText == null) { - return; - } - if(restrict) { - newText = this.__textEngine.restrictText(newText); - if(this.__textEngine.maxChars > 0) { - var removeLength = endIndex - beginIndex; - var maxLength = this.__textEngine.maxChars - this.__text.length + removeLength; - if(maxLength <= 0) { - newText = ""; - } else if(maxLength < newText.length) { - newText = HxOverrides.substr(newText,0,maxLength); - } - } - } - this.__updateText(this.__text.substring(0,beginIndex) + newText + this.__text.substring(endIndex)); - if(endIndex > this.__text.length) { - endIndex = this.__text.length; - } - var offset = newText.length - (endIndex - beginIndex); - var i = 0; - var range; - while(i < this.__textEngine.textFormatRanges.get_length()) { - range = this.__textEngine.textFormatRanges.get(i); - if(range.start <= beginIndex && range.end >= endIndex) { - range.end += offset; - ++i; - } else if(range.start >= beginIndex && range.end <= endIndex) { - if(i > 0) { - this.__textEngine.textFormatRanges.splice(i,1); - } else { - range.start = 0; - range.end = beginIndex + newText.length; - ++i; - } - offset -= range.end - range.start; - } else if(range.start > beginIndex && range.start <= endIndex) { - range.start += offset; - ++i; - } else { - ++i; - } - } - this.__updateScrollV(); - this.__updateScrollH(); - this.__dirty = true; - this.__layoutDirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - ,__shouldCacheHardware: function(value) { - if(value == true) { - return true; - } else { - return false; - } - } - ,__startCursorTimer: function() { - this.__cursorTimer = haxe_Timer.delay($bind(this,this.__startCursorTimer),600); - this.__showCursor = !this.__showCursor; - this.__dirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - ,__startTextInput: function() { - if(this.__caretIndex < 0) { - this.__caretIndex = this.__text.length; - this.__selectionIndex = this.__caretIndex; - } - var enableInput = openfl_display_DisplayObject.__supportDOM ? this.__renderedOnCanvasWhileOnDOM : true; - if(enableInput) { - this.__enableInput(); - } - } - ,__stopCursorTimer: function() { - if(this.__cursorTimer != null) { - this.__cursorTimer.stop(); - this.__cursorTimer = null; - } - if(this.__showCursor) { - this.__showCursor = false; - this.__dirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - } - ,__stopTextInput: function() { - var disableInput = openfl_display_DisplayObject.__supportDOM ? this.__renderedOnCanvasWhileOnDOM : true; - if(disableInput) { - this.__disableInput(); - } - } - ,__updateCacheBitmap: function(renderer,force) { - if(this.__filters == null && renderer.__type == "opengl" && this.__cacheBitmap == null && !this.__domRender) { - return false; - } - if(openfl_display_InteractiveObject.prototype.__updateCacheBitmap.call(this,renderer,force || this.__dirty)) { - if(this.__cacheBitmap != null) { - this.__cacheBitmap.__renderTransform.tx -= this.__offsetX; - this.__cacheBitmap.__renderTransform.ty -= this.__offsetY; - } - return true; - } - return false; - } - ,__updateLayout: function() { - if(this.__layoutDirty) { - var cacheWidth = this.__textEngine.width; - this.__textEngine.update(); - if(this.__textEngine.autoSize != 2) { - if(this.__textEngine.width != cacheWidth) { - switch(this.__textEngine.autoSize) { - case 0: - var _g = this; - _g.set_x(_g.get_x() + (cacheWidth - this.__textEngine.width) / 2); - break; - case 3: - var _g1 = this; - _g1.set_x(_g1.get_x() + (cacheWidth - this.__textEngine.width)); - break; - default: - } - } - this.__textEngine.getBounds(); - } - this.__layoutDirty = false; - } - } - ,__updateScrollH: function() { - if(!this.get_multiline() && this.get_type() == 1) { - this.__layoutDirty = true; - this.__updateLayout(); - var offsetX = this.__textEngine.textWidth - this.__textEngine.width + 4; - if(offsetX > 0) { - if(this.__caretIndex >= this.get_text().length) { - this.set_scrollH(Math.ceil(offsetX)); - } else { - var caret = openfl_geom_Rectangle.__pool.get(); - this.__getCharBoundaries(this.__caretIndex,caret); - if(caret.x < this.get_scrollH()) { - this.set_scrollH(Math.floor(caret.x - 2)); - } else if(caret.x > this.get_scrollH() + this.__textEngine.width) { - this.set_scrollH(Math.ceil(caret.x - this.__textEngine.width - 2)); - } - openfl_geom_Rectangle.__pool.release(caret); - } - } else { - this.set_scrollH(0); - } - } - } - ,__updateScrollV: function() { - this.__layoutDirty = true; - this.__updateLayout(); - var lineIndex = this.getLineIndexOfChar(this.__caretIndex); - if(lineIndex == -1 && this.__caretIndex > 0) { - lineIndex = this.getLineIndexOfChar(this.__caretIndex - 1) + 1; - } - if(lineIndex + 1 < this.get_scrollV()) { - this.set_scrollV(lineIndex + 1); - } else if(lineIndex + 1 > this.get_bottomScrollV()) { - var i = lineIndex; - var tempHeight = 0.0; - while(i >= 0) if(tempHeight + this.__textEngine.lineHeights.get(i) <= this.get_height() - 4) { - tempHeight += this.__textEngine.lineHeights.get(i); - --i; - } else { - break; - } - this.set_scrollV(i + 2); - } else { - this.set_scrollV(this.get_scrollV()); - } - } - ,__updateText: function(value) { - if(openfl_display_DisplayObject.__supportDOM && this.__renderedOnCanvasWhileOnDOM) { - this.__forceCachedBitmapUpdate = this.__text != value; - } - this.__textEngine.set_text(value); - this.__text = this.__textEngine.text; - if(this.__text.length < this.__caretIndex) { - this.__selectionIndex = this.__caretIndex = this.__text.length; - } - if(!this.__displayAsPassword || openfl_display_DisplayObject.__supportDOM && !this.__renderedOnCanvasWhileOnDOM) { - this.__textEngine.set_text(this.__text); - } else { - var length = this.get_text().length; - var mask = ""; - var _g = 0; - var _g1 = length; - while(_g < _g1) { - var i = _g++; - mask += "*"; - } - this.__textEngine.set_text(mask); - } - } - ,__updateTransforms: function(overrideTransform) { - openfl_display_InteractiveObject.prototype.__updateTransforms.call(this,overrideTransform); - var _this = this.__renderTransform; - var px = this.__offsetX; - var py = this.__offsetY; - _this.tx = px * _this.a + py * _this.c + _this.tx; - _this.ty = px * _this.b + py * _this.d + _this.ty; - } - ,get_antiAliasType: function() { - return this.__textEngine.antiAliasType; - } - ,set_antiAliasType: function(value) { - var tmp = value != this.__textEngine.antiAliasType; - return this.__textEngine.antiAliasType = value; - } - ,get_autoSize: function() { - return this.__textEngine.autoSize; - } - ,set_autoSize: function(value) { - if(value != this.__textEngine.autoSize) { - this.__dirty = true; - this.__layoutDirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - return this.__textEngine.autoSize = value; - } - ,get_background: function() { - return this.__textEngine.background; - } - ,set_background: function(value) { - if(value != this.__textEngine.background) { - this.__dirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - return this.__textEngine.background = value; - } - ,get_backgroundColor: function() { - return this.__textEngine.backgroundColor; - } - ,set_backgroundColor: function(value) { - if(value != this.__textEngine.backgroundColor) { - this.__dirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - return this.__textEngine.backgroundColor = value; - } - ,get_border: function() { - return this.__textEngine.border; - } - ,set_border: function(value) { - if(value != this.__textEngine.border) { - this.__dirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - return this.__textEngine.border = value; - } - ,get_borderColor: function() { - return this.__textEngine.borderColor; - } - ,set_borderColor: function(value) { - if(value != this.__textEngine.borderColor) { - this.__dirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - return this.__textEngine.borderColor = value; - } - ,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(value) { - this.__textFormat.__merge(value); - this.__layoutDirty = true; - this.__dirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - return value; - } - ,get_displayAsPassword: function() { - return this.__displayAsPassword; - } - ,set_displayAsPassword: function(value) { - if(value != this.__displayAsPassword) { - this.__dirty = true; - this.__layoutDirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - this.__displayAsPassword = value; - this.__updateText(this.__text); - } - return value; - } - ,get_embedFonts: function() { - return this.__textEngine.embedFonts; - } - ,set_embedFonts: function(value) { - return this.__textEngine.embedFonts = value; - } - ,get_gridFitType: function() { - return this.__textEngine.gridFitType; - } - ,set_gridFitType: function(value) { - return this.__textEngine.gridFitType = value; - } - ,get_height: function() { - this.__updateLayout(); - return this.__textEngine.height * Math.abs(this.get_scaleY()); - } - ,set_height: function(value) { - if(value != this.__textEngine.height) { - this.__setTransformDirty(); - this.__dirty = true; - this.__layoutDirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - this.__textEngine.height = value; - } - return this.__textEngine.height * Math.abs(this.get_scaleY()); - } - ,get_htmlText: function() { - if(this.__isHTML) { - return this.__rawHtmlText; - } else { - return this.__text; - } - } - ,set_htmlText: function(value) { - if(!this.__isHTML || this.__text != value) { - this.__dirty = true; - this.__layoutDirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - this.__isHTML = true; - this.__rawHtmlText = value; - value = openfl__$internal_formats_html_HTMLParser.parse(value,this.__textFormat,this.__textEngine.textFormatRanges); - if(openfl_display_DisplayObject.__supportDOM) { - if(this.__textEngine.textFormatRanges.get_length() > 1) { - this.__textEngine.textFormatRanges.splice(1,this.__textEngine.textFormatRanges.get_length() - 1); - } - var range = this.__textEngine.textFormatRanges.get(0); - range.format = this.__textFormat; - range.start = 0; - if(this.__renderedOnCanvasWhileOnDOM) { - range.end = value.length; - this.__updateText(value); - } else { - range.end = this.__rawHtmlText.length; - this.__updateText(this.__rawHtmlText); - } - } else { - this.__updateText(value); - } - this.__updateScrollV(); - return value; - } - ,get_length: function() { - if(this.__text != null) { - return this.__text.length; - } - return 0; - } - ,get_maxChars: function() { - return this.__textEngine.maxChars; - } - ,set_maxChars: function(value) { - if(value != this.__textEngine.maxChars) { - this.__textEngine.maxChars = value; - this.__dirty = true; - this.__layoutDirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - return value; - } - ,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(value) { - return this.__mouseWheelEnabled = value; - } - ,get_multiline: function() { - return this.__textEngine.multiline; - } - ,set_multiline: function(value) { - if(value != this.__textEngine.multiline) { - this.__dirty = true; - this.__layoutDirty = true; - this.__updateText(this.__text); - this.__updateScrollH(); - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - return this.__textEngine.multiline = value; - } - ,get_numLines: function() { - this.__updateLayout(); - return this.__textEngine.numLines; - } - ,get_restrict: function() { - return this.__textEngine.restrict; - } - ,set_restrict: function(value) { - if(this.__textEngine.restrict != value) { - this.__textEngine.set_restrict(value); - this.__updateText(this.__text); - } - return value; - } - ,get_scrollH: function() { - return this.__textEngine.scrollH; - } - ,set_scrollH: function(value) { - this.__updateLayout(); - if(value > this.__textEngine.maxScrollH) { - value = this.__textEngine.maxScrollH; - } - if(value < 0) { - value = 0; - } - if(value != this.__textEngine.scrollH) { - this.__dirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - this.dispatchEvent(new openfl_events_Event("scroll")); - } - return this.__textEngine.scrollH = value; - } - ,get_scrollV: function() { - return this.__textEngine.get_scrollV(); - } - ,set_scrollV: function(value) { - this.__updateLayout(); - if(value != this.__textEngine.get_scrollV()) { - this.__dirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - this.dispatchEvent(new openfl_events_Event("scroll")); - } - return this.__textEngine.set_scrollV(value); - } - ,get_selectable: function() { - return this.__textEngine.selectable; - } - ,set_selectable: function(value) { - if(value != this.__textEngine.selectable && this.get_type() == 1) { - if(this.stage != null && this.stage.get_focus() == this) { - this.__startTextInput(); - } else if(!value) { - this.__stopTextInput(); - } - } - return this.__textEngine.selectable = value; - } - ,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(value) { - if(value != this.__textEngine.sharpness) { - this.__dirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - return this.__textEngine.sharpness = value; - } - ,get_tabEnabled: function() { - if(this.__tabEnabled == null) { - return this.__textEngine.type == 1; - } else { - return this.__tabEnabled; - } - } - ,get_text: function() { - return this.__text; - } - ,set_text: function(value) { - if(this.__isHTML || this.__text != value) { - this.__dirty = true; - this.__layoutDirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } else { - return value; - } - if(this.__textEngine.textFormatRanges.get_length() > 1) { - this.__textEngine.textFormatRanges.splice(1,this.__textEngine.textFormatRanges.get_length() - 1); - } - var utfValue = value; - var range = this.__textEngine.textFormatRanges.get(0); - range.format = this.__textFormat; - range.start = 0; - range.end = utfValue.length; - this.__isHTML = false; - this.__updateText(value); - this.__updateScrollV(); - return value; - } - ,get_textColor: function() { - return this.__textFormat.color; - } - ,set_textColor: function(value) { - if(value != this.__textFormat.color) { - this.__dirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - var range = this.__textEngine.textFormatRanges.iterator(); - while(range.hasNext()) { - var range1 = range.next(); - range1.format.color = value; - } - return this.__textFormat.color = value; - } - ,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(value) { - if(value != this.__textEngine.type) { - if(value == 1) { - this.addEventListener("addedToStage",$bind(this,this.this_onAddedToStage)); - this.this_onFocusIn(null); - this.__textEngine.__useIntAdvances = true; - } else { - this.removeEventListener("addedToStage",$bind(this,this.this_onAddedToStage)); - this.__stopTextInput(); - this.__textEngine.__useIntAdvances = null; - } - this.__dirty = true; - this.__layoutDirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - return this.__textEngine.type = value; - } - ,get_width: function() { - this.__updateLayout(); - return this.__textEngine.width * Math.abs(this.__scaleX); - } - ,set_width: function(value) { - if(value != this.__textEngine.width) { - this.__setTransformDirty(); - this.__dirty = true; - this.__layoutDirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - this.__textEngine.width = value; - } - return this.__textEngine.width * Math.abs(this.__scaleX); - } - ,get_wordWrap: function() { - return this.__textEngine.wordWrap; - } - ,set_wordWrap: function(value) { - if(value != this.__textEngine.wordWrap) { - this.__dirty = true; - this.__layoutDirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - return this.__textEngine.wordWrap = value; - } - ,get_x: function() { - return this.__transform.tx + this.__offsetX; - } - ,set_x: function(value) { - if(value != this.__transform.tx + this.__offsetX) { - this.__setTransformDirty(); - } - return this.__transform.tx = value - this.__offsetX; - } - ,get_y: function() { - return this.__transform.ty + this.__offsetY; - } - ,set_y: function(value) { - if(value != this.__transform.ty + this.__offsetY) { - this.__setTransformDirty(); - } - return this.__transform.ty = value - this.__offsetY; - } - ,stage_onMouseMove: function(event) { - if(this.stage == null) { - return; - } - if(this.__textEngine.selectable && this.__selectionIndex >= 0) { - this.__updateLayout(); - var position = this.__getPosition(this.get_mouseX() + this.get_scrollH(),this.get_mouseY()); - if(position != this.__caretIndex) { - this.__caretIndex = position; - if(openfl_display_DisplayObject.__supportDOM) { - if(this.__renderedOnCanvasWhileOnDOM) { - this.__forceCachedBitmapUpdate = true; - } - } else { - this.__dirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - } - } - } - ,stage_onMouseUp: function(event) { - if(this.stage == null) { - return; - } - this.stage.removeEventListener("mouseMove",$bind(this,this.stage_onMouseMove)); - this.stage.removeEventListener("mouseUp",$bind(this,this.stage_onMouseUp)); - if(this.stage.get_focus() == this) { - this.__getWorldTransform(); - this.__updateLayout(); - var upPos = this.__getPosition(this.get_mouseX() + this.get_scrollH(),this.get_mouseY()); - var leftPos = Math.min(this.__selectionIndex,upPos) | 0; - var rightPos = Math.max(this.__selectionIndex,upPos) | 0; - this.__selectionIndex = leftPos; - this.__caretIndex = rightPos; - if(this.__inputEnabled) { - this.this_onFocusIn(null); - this.__stopCursorTimer(); - this.__startCursorTimer(); - if(openfl_display_DisplayObject.__supportDOM && this.__renderedOnCanvasWhileOnDOM) { - this.__forceCachedBitmapUpdate = true; - } - } - } - } - ,this_onAddedToStage: function(event) { - this.this_onFocusIn(null); - } - ,this_onFocusIn: function(event) { - if(this.get_type() == 1 && this.stage != null && this.stage.get_focus() == this) { - this.__startTextInput(); - } - } - ,this_onFocusOut: function(event) { - this.__stopCursorTimer(); - if(event.relatedObject == null || !((event.relatedObject) instanceof openfl_text_TextField)) { - this.__stopTextInput(); - } else { - if(this.stage != null) { - this.stage.window.onTextInput.remove($bind(this,this.window_onTextInput)); - this.stage.window.onKeyDown.remove($bind(this,this.window_onKeyDown)); - } - this.__inputEnabled = false; - } - if(this.__selectionIndex != this.__caretIndex) { - this.__selectionIndex = this.__caretIndex; - this.__dirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - } - ,this_onKeyDown: function(event) { - if(this.get_selectable() && this.get_type() != 1 && event.keyCode == 67 && (event.commandKey || event.ctrlKey)) { - if(this.__caretIndex != this.__selectionIndex) { - lime_system_Clipboard.set_text(this.__text.substring(this.__caretIndex,this.__selectionIndex)); - } - } - } - ,this_onMouseDown: function(event) { - if(!this.get_selectable() && this.get_type() != 1) { - return; - } - this.__updateLayout(); - this.__caretIndex = this.__getPosition(this.get_mouseX() + this.get_scrollH(),this.get_mouseY()); - this.__selectionIndex = this.__caretIndex; - if(!openfl_display_DisplayObject.__supportDOM) { - this.__dirty = true; - if(!this.__renderDirty) { - this.__renderDirty = true; - this.__setParentRenderDirty(); - } - } - this.stage.addEventListener("mouseMove",$bind(this,this.stage_onMouseMove)); - this.stage.addEventListener("mouseUp",$bind(this,this.stage_onMouseUp)); - } - ,this_onMouseWheel: function(event) { - if(this.get_mouseWheelEnabled()) { - var _g = this; - _g.set_scrollV(_g.get_scrollV() - event.delta); - } - } - ,window_onKeyDown: function(key,modifier) { - switch(key) { - case 8: - if(this.__selectionIndex == this.__caretIndex && this.__caretIndex > 0) { - this.__selectionIndex = this.__caretIndex - 1; - } - if(this.__selectionIndex != this.__caretIndex) { - this.replaceSelectedText(""); - this.__selectionIndex = this.__caretIndex; - this.dispatchEvent(new openfl_events_Event("change",true)); - } - break; - case 97: - if(this.get_selectable()) { - if(lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_metaKey(modifier) || lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_ctrlKey(modifier)) { - this.__caretIndex = this.__text.length; - this.__selectionIndex = 0; - } - } - break; - case 99: - if(lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_metaKey(modifier) || lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_ctrlKey(modifier)) { - if(this.__caretIndex != this.__selectionIndex) { - lime_system_Clipboard.set_text(this.__text.substring(this.__caretIndex,this.__selectionIndex)); - } - } - break; - case 120: - if(lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_metaKey(modifier) || lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_ctrlKey(modifier)) { - if(this.__caretIndex != this.__selectionIndex) { - lime_system_Clipboard.set_text(this.__text.substring(this.__caretIndex,this.__selectionIndex)); - this.replaceSelectedText(""); - this.dispatchEvent(new openfl_events_Event("change",true)); - } - } - break; - case 127: - if(this.__selectionIndex == this.__caretIndex && this.__caretIndex < this.__text.length) { - this.__selectionIndex = this.__caretIndex + 1; - } - if(this.__selectionIndex != this.__caretIndex) { - this.replaceSelectedText(""); - this.__selectionIndex = this.__caretIndex; - this.dispatchEvent(new openfl_events_Event("change",true)); - } - break; - case 1073741898: - if(this.get_selectable()) { - this.__caretBeginningOfLine(); - this.__stopCursorTimer(); - this.__startCursorTimer(); - } - break; - case 1073741901: - if(this.get_selectable()) { - this.__caretEndOfLine(); - this.__stopCursorTimer(); - this.__startCursorTimer(); - } - break; - case 1073741903: - if(this.get_selectable()) { - if(lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_metaKey(modifier)) { - this.__caretEndOfLine(); - if(!lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_shiftKey(modifier)) { - this.__selectionIndex = this.__caretIndex; - } - } else if(lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_shiftKey(modifier)) { - this.__caretNextCharacter(); - } else { - if(this.__selectionIndex == this.__caretIndex) { - this.__caretNextCharacter(); - } else { - this.__caretIndex = Math.max(this.__caretIndex,this.__selectionIndex) | 0; - } - this.__selectionIndex = this.__caretIndex; - } - this.__updateScrollH(); - this.__updateScrollV(); - this.__stopCursorTimer(); - this.__startCursorTimer(); - } - break; - case 1073741904: - if(this.get_selectable()) { - if(lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_metaKey(modifier)) { - this.__caretBeginningOfLine(); - if(!lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_shiftKey(modifier)) { - this.__selectionIndex = this.__caretIndex; - } - } else if(lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_shiftKey(modifier)) { - this.__caretPreviousCharacter(); - } else { - if(this.__selectionIndex == this.__caretIndex) { - this.__caretPreviousCharacter(); - } else { - this.__caretIndex = Math.min(this.__caretIndex,this.__selectionIndex) | 0; - } - this.__selectionIndex = this.__caretIndex; - } - this.__updateScrollH(); - this.__updateScrollV(); - this.__stopCursorTimer(); - this.__startCursorTimer(); - } - break; - case 1073741905: - if(this.get_selectable()) { - if(!this.__textEngine.multiline) { - return; - } - if(lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_shiftKey(modifier)) { - this.__caretNextLine(); - } else { - if(this.__selectionIndex == this.__caretIndex) { - this.__caretNextLine(); - } else { - var lineIndex = this.getLineIndexOfChar(Math.max(this.__caretIndex,this.__selectionIndex) | 0); - this.__caretNextLine(lineIndex,Math.min(this.__caretIndex,this.__selectionIndex) | 0); - } - this.__selectionIndex = this.__caretIndex; - } - this.__updateScrollV(); - this.__stopCursorTimer(); - this.__startCursorTimer(); - } - break; - case 1073741906: - if(this.get_selectable()) { - if(!this.__textEngine.multiline) { - return; - } - if(lime_ui__$KeyModifier_KeyModifier_$Impl_$.get_shiftKey(modifier)) { - this.__caretPreviousLine(); - } else { - if(this.__selectionIndex == this.__caretIndex) { - this.__caretPreviousLine(); - } else { - var lineIndex1 = this.getLineIndexOfChar(Math.min(this.__caretIndex,this.__selectionIndex) | 0); - this.__caretPreviousLine(lineIndex1,Math.min(this.__caretIndex,this.__selectionIndex) | 0); - } - this.__selectionIndex = this.__caretIndex; - } - this.__updateScrollV(); - this.__stopCursorTimer(); - this.__startCursorTimer(); - } - break; - case 13:case 1073741912: - if(this.__textEngine.multiline) { - var te = new openfl_events_TextEvent("textInput",true,true,"\n"); - this.dispatchEvent(te); - if(!te.isDefaultPrevented()) { - this.__replaceSelectedText("\n",true); - this.dispatchEvent(new openfl_events_Event("change",true)); - } - } - break; - default: - } - } - ,window_onTextInput: function(value) { - this.__replaceSelectedText(value,true); - this.dispatchEvent(new openfl_events_Event("change",true)); - } - ,__class__: openfl_text_TextField - ,__properties__: $extend(openfl_display_InteractiveObject.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 openfl_text__$TextFieldAutoSize_TextFieldAutoSize_$Impl_$ = {}; -$hxClasses["openfl.text._TextFieldAutoSize.TextFieldAutoSize_Impl_"] = openfl_text__$TextFieldAutoSize_TextFieldAutoSize_$Impl_$; -openfl_text__$TextFieldAutoSize_TextFieldAutoSize_$Impl_$.__name__ = "openfl.text._TextFieldAutoSize.TextFieldAutoSize_Impl_"; -openfl_text__$TextFieldAutoSize_TextFieldAutoSize_$Impl_$.fromString = function(value) { - switch(value) { - case "center": - return 0; - case "left": - return 1; - case "none": - return 2; - case "right": - return 3; - default: - return null; - } -}; -openfl_text__$TextFieldAutoSize_TextFieldAutoSize_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "center"; - case 1: - return "left"; - case 2: - return "none"; - case 3: - return "right"; - default: - return null; - } -}; -var openfl_text__$TextFieldType_TextFieldType_$Impl_$ = {}; -$hxClasses["openfl.text._TextFieldType.TextFieldType_Impl_"] = openfl_text__$TextFieldType_TextFieldType_$Impl_$; -openfl_text__$TextFieldType_TextFieldType_$Impl_$.__name__ = "openfl.text._TextFieldType.TextFieldType_Impl_"; -openfl_text__$TextFieldType_TextFieldType_$Impl_$.fromString = function(value) { - switch(value) { - case "dynamic": - return 0; - case "input": - return 1; - default: - return null; - } -}; -openfl_text__$TextFieldType_TextFieldType_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "dynamic"; - case 1: - return "input"; - default: - return null; - } -}; -var openfl_text_TextFormat = function(font,size,color,bold,italic,underline,url,target,align,leftMargin,rightMargin,indent,leading) { - this.font = font; - this.size = size; - this.color = color; - this.bold = bold; - this.italic = italic; - this.underline = underline; - this.url = url; - this.target = target; - this.align = align; - this.leftMargin = leftMargin; - this.rightMargin = rightMargin; - this.indent = indent; - this.leading = leading; -}; -$hxClasses["openfl.text.TextFormat"] = openfl_text_TextFormat; -openfl_text_TextFormat.__name__ = "openfl.text.TextFormat"; -openfl_text_TextFormat.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 newFormat = new openfl_text_TextFormat(this.font,this.size,this.color,this.bold,this.italic,this.underline,this.url,this.target); - newFormat.align = this.align; - newFormat.leftMargin = this.leftMargin; - newFormat.rightMargin = this.rightMargin; - newFormat.indent = this.indent; - newFormat.leading = this.leading; - newFormat.blockIndent = this.blockIndent; - newFormat.bullet = this.bullet; - newFormat.kerning = this.kerning; - newFormat.letterSpacing = this.letterSpacing; - newFormat.tabStops = this.tabStops; - newFormat.__ascent = this.__ascent; - newFormat.__descent = this.__descent; - return newFormat; - } - ,__merge: function(format) { - if(format.font != null) { - this.font = format.font; - } - if(format.size != null) { - this.size = format.size; - } - if(format.color != null) { - this.color = format.color; - } - if(format.bold != null) { - this.bold = format.bold; - } - if(format.italic != null) { - this.italic = format.italic; - } - if(format.underline != null) { - this.underline = format.underline; - } - if(format.url != null) { - this.url = format.url; - } - if(format.target != null) { - this.target = format.target; - } - if(format.align != null) { - this.align = format.align; - } - if(format.leftMargin != null) { - this.leftMargin = format.leftMargin; - } - if(format.rightMargin != null) { - this.rightMargin = format.rightMargin; - } - if(format.indent != null) { - this.indent = format.indent; - } - if(format.leading != null) { - this.leading = format.leading; - } - if(format.blockIndent != null) { - this.blockIndent = format.blockIndent; - } - if(format.bullet != null) { - this.bullet = format.bullet; - } - if(format.kerning != null) { - this.kerning = format.kerning; - } - if(format.letterSpacing != null) { - this.letterSpacing = format.letterSpacing; - } - if(format.tabStops != null) { - this.tabStops = format.tabStops; - } - if(format.__ascent != null) { - this.__ascent = format.__ascent; - } - if(format.__descent != null) { - this.__descent = format.__descent; - } - } - ,__class__: openfl_text_TextFormat -}; -var openfl_text__$TextFormatAlign_TextFormatAlign_$Impl_$ = {}; -$hxClasses["openfl.text._TextFormatAlign.TextFormatAlign_Impl_"] = openfl_text__$TextFormatAlign_TextFormatAlign_$Impl_$; -openfl_text__$TextFormatAlign_TextFormatAlign_$Impl_$.__name__ = "openfl.text._TextFormatAlign.TextFormatAlign_Impl_"; -openfl_text__$TextFormatAlign_TextFormatAlign_$Impl_$.fromString = function(value) { - switch(value) { - 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; - } -}; -openfl_text__$TextFormatAlign_TextFormatAlign_$Impl_$.toString = function(this1) { - switch(this1) { - 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; - } -}; -var openfl_text_TextLineMetrics = function(x,width,height,ascent,descent,leading) { - this.x = x; - this.width = width; - this.height = height; - this.ascent = ascent; - this.descent = descent; - this.leading = leading; -}; -$hxClasses["openfl.text.TextLineMetrics"] = openfl_text_TextLineMetrics; -openfl_text_TextLineMetrics.__name__ = "openfl.text.TextLineMetrics"; -openfl_text_TextLineMetrics.prototype = { - ascent: null - ,descent: null - ,height: null - ,leading: null - ,width: null - ,x: null - ,__class__: openfl_text_TextLineMetrics -}; -var openfl_ui_GameInput = function() { - openfl_events_EventDispatcher.call(this); - openfl_ui_GameInput.__instances.push(this); -}; -$hxClasses["openfl.ui.GameInput"] = openfl_ui_GameInput; -openfl_ui_GameInput.__name__ = "openfl.ui.GameInput"; -openfl_ui_GameInput.getDeviceAt = function(index) { - if(index >= 0 && index < openfl_ui_GameInput.__deviceList.length) { - return openfl_ui_GameInput.__deviceList[index]; - } - return null; -}; -openfl_ui_GameInput.__getDevice = function(gamepad) { - if(gamepad == null) { - return null; - } - if(openfl_ui_GameInput.__devices.h.__keys__[gamepad.__id__] == null) { - var devices = lime_ui_Joystick.__getDeviceData(); - var device = devices[gamepad.id].id; - var devices1 = lime_ui_Joystick.__getDeviceData(); - var device1 = new openfl_ui_GameInputDevice(device,devices1[gamepad.id].id); - openfl_ui_GameInput.__deviceList.push(device1); - openfl_ui_GameInput.__devices.set(gamepad,device1); - openfl_ui_GameInput.numDevices = openfl_ui_GameInput.__deviceList.length; - } - return openfl_ui_GameInput.__devices.h[gamepad.__id__]; -}; -openfl_ui_GameInput.__onGamepadAxisMove = function(gamepad,axis,value) { - var device = openfl_ui_GameInput.__getDevice(gamepad); - if(device == null) { - return; - } - if(device.enabled) { - if(!device.__axis.h.hasOwnProperty(axis)) { - var control; - switch(axis) { - case 0: - control = "LEFT_X"; - break; - case 1: - control = "LEFT_Y"; - break; - case 2: - control = "RIGHT_X"; - break; - case 3: - control = "RIGHT_Y"; - break; - case 4: - control = "TRIGGER_LEFT"; - break; - case 5: - control = "TRIGGER_RIGHT"; - break; - default: - control = "UNKNOWN (" + axis + ")"; - } - var control1 = new openfl_ui_GameInputControl(device,"AXIS_" + control,-1,1); - device.__axis.h[axis] = control1; - device.__controls.push(control1); - } - var control2 = device.__axis.h[axis]; - control2.value = value; - control2.dispatchEvent(new openfl_events_Event("change")); - } -}; -openfl_ui_GameInput.__onGamepadButtonDown = function(gamepad,button) { - var device = openfl_ui_GameInput.__getDevice(gamepad); - if(device == null) { - return; - } - if(device.enabled) { - if(!device.__button.h.hasOwnProperty(button)) { - var control; - switch(button) { - case 0: - control = "A"; - break; - case 1: - control = "B"; - break; - case 2: - control = "X"; - break; - case 3: - control = "Y"; - break; - case 4: - control = "BACK"; - break; - case 5: - control = "GUIDE"; - break; - case 6: - control = "START"; - break; - case 7: - control = "LEFT_STICK"; - break; - case 8: - control = "RIGHT_STICK"; - break; - case 9: - control = "LEFT_SHOULDER"; - break; - case 10: - control = "RIGHT_SHOULDER"; - break; - case 11: - control = "DPAD_UP"; - break; - case 12: - control = "DPAD_DOWN"; - break; - case 13: - control = "DPAD_LEFT"; - break; - case 14: - control = "DPAD_RIGHT"; - break; - default: - control = "UNKNOWN (" + button + ")"; - } - var control1 = new openfl_ui_GameInputControl(device,"BUTTON_" + control,0,1); - device.__button.h[button] = control1; - device.__controls.push(control1); - } - var control2 = device.__button.h[button]; - control2.value = 1; - control2.dispatchEvent(new openfl_events_Event("change")); - } -}; -openfl_ui_GameInput.__onGamepadButtonUp = function(gamepad,button) { - var device = openfl_ui_GameInput.__getDevice(gamepad); - if(device == null) { - return; - } - if(device.enabled) { - if(!device.__button.h.hasOwnProperty(button)) { - var control; - switch(button) { - case 0: - control = "A"; - break; - case 1: - control = "B"; - break; - case 2: - control = "X"; - break; - case 3: - control = "Y"; - break; - case 4: - control = "BACK"; - break; - case 5: - control = "GUIDE"; - break; - case 6: - control = "START"; - break; - case 7: - control = "LEFT_STICK"; - break; - case 8: - control = "RIGHT_STICK"; - break; - case 9: - control = "LEFT_SHOULDER"; - break; - case 10: - control = "RIGHT_SHOULDER"; - break; - case 11: - control = "DPAD_UP"; - break; - case 12: - control = "DPAD_DOWN"; - break; - case 13: - control = "DPAD_LEFT"; - break; - case 14: - control = "DPAD_RIGHT"; - break; - default: - control = "UNKNOWN (" + button + ")"; - } - var control1 = new openfl_ui_GameInputControl(device,"BUTTON_" + control,0,1); - device.__button.h[button] = control1; - device.__controls.push(control1); - } - var control2 = device.__button.h[button]; - control2.value = 0; - control2.dispatchEvent(new openfl_events_Event("change")); - } -}; -openfl_ui_GameInput.__onGamepadConnect = function(gamepad) { - var device = openfl_ui_GameInput.__getDevice(gamepad); - if(device == null) { - return; - } - var _g = 0; - var _g1 = openfl_ui_GameInput.__instances; - while(_g < _g1.length) { - var instance = _g1[_g]; - ++_g; - instance.dispatchEvent(new openfl_events_GameInputEvent("deviceAdded",true,false,device)); - } -}; -openfl_ui_GameInput.__onGamepadDisconnect = function(gamepad) { - var device = openfl_ui_GameInput.__devices.h[gamepad.__id__]; - if(device != null) { - if(openfl_ui_GameInput.__devices.h.__keys__[gamepad.__id__] != null) { - HxOverrides.remove(openfl_ui_GameInput.__deviceList,openfl_ui_GameInput.__devices.h[gamepad.__id__]); - openfl_ui_GameInput.__devices.remove(gamepad); - } - openfl_ui_GameInput.numDevices = openfl_ui_GameInput.__deviceList.length; - var _g = 0; - var _g1 = openfl_ui_GameInput.__instances; - while(_g < _g1.length) { - var instance = _g1[_g]; - ++_g; - instance.dispatchEvent(new openfl_events_GameInputEvent("deviceRemoved",true,false,device)); - } - } -}; -openfl_ui_GameInput.__super__ = openfl_events_EventDispatcher; -openfl_ui_GameInput.prototype = $extend(openfl_events_EventDispatcher.prototype,{ - addEventListener: function(type,listener,useCapture,priority,useWeakReference) { - if(useWeakReference == null) { - useWeakReference = false; - } - if(priority == null) { - priority = 0; - } - if(useCapture == null) { - useCapture = false; - } - openfl_events_EventDispatcher.prototype.addEventListener.call(this,type,listener,useCapture,priority,useWeakReference); - if(type == "deviceAdded") { - var _g = 0; - var _g1 = openfl_ui_GameInput.__deviceList; - while(_g < _g1.length) { - var device = _g1[_g]; - ++_g; - this.dispatchEvent(new openfl_events_GameInputEvent("deviceAdded",true,false,device)); - } - } - } - ,__class__: openfl_ui_GameInput -}); -var openfl_ui_GameInputControl = function(device,id,minValue,maxValue,value) { - if(value == null) { - value = 0; - } - openfl_events_EventDispatcher.call(this); - this.device = device; - this.id = id; - this.minValue = minValue; - this.maxValue = maxValue; - this.value = value; -}; -$hxClasses["openfl.ui.GameInputControl"] = openfl_ui_GameInputControl; -openfl_ui_GameInputControl.__name__ = "openfl.ui.GameInputControl"; -openfl_ui_GameInputControl.__super__ = openfl_events_EventDispatcher; -openfl_ui_GameInputControl.prototype = $extend(openfl_events_EventDispatcher.prototype,{ - device: null - ,id: null - ,maxValue: null - ,minValue: null - ,value: null - ,__class__: openfl_ui_GameInputControl -}); -var openfl_ui_GameInputDevice = function(id,name) { - this.__controls = []; - this.__button = new haxe_ds_IntMap(); - this.__axis = new haxe_ds_IntMap(); - this.id = id; - this.name = name; - var control; - control = new openfl_ui_GameInputControl(this,"AXIS_" + 0,-1,1); - this.__axis.h[0] = control; - this.__controls.push(control); - control = new openfl_ui_GameInputControl(this,"AXIS_" + 1,-1,1); - this.__axis.h[1] = control; - this.__controls.push(control); - control = new openfl_ui_GameInputControl(this,"AXIS_" + 2,-1,1); - this.__axis.h[2] = control; - this.__controls.push(control); - control = new openfl_ui_GameInputControl(this,"AXIS_" + 3,-1,1); - this.__axis.h[3] = control; - this.__controls.push(control); - control = new openfl_ui_GameInputControl(this,"AXIS_" + 4,-1,1); - this.__axis.h[4] = control; - this.__controls.push(control); - control = new openfl_ui_GameInputControl(this,"AXIS_" + 5,-1,1); - this.__axis.h[5] = control; - this.__controls.push(control); - var _g = 0; - while(_g < 15) { - var i = _g++; - control = new openfl_ui_GameInputControl(this,"BUTTON_" + i,0,1); - this.__button.h[i] = control; - this.__controls.push(control); - } -}; -$hxClasses["openfl.ui.GameInputDevice"] = openfl_ui_GameInputDevice; -openfl_ui_GameInputDevice.__name__ = "openfl.ui.GameInputDevice"; -openfl_ui_GameInputDevice.prototype = { - enabled: null - ,id: null - ,name: null - ,sampleInterval: null - ,__axis: null - ,__button: null - ,__controls: null - ,__gamepad: null - ,getCachedSamples: function(data,append) { - if(append == null) { - append = false; - } - return 0; - } - ,getControlAt: function(i) { - if(i >= 0 && i < this.__controls.length) { - return this.__controls[i]; - } - return null; - } - ,startCachingSamples: function(numSamples,controls) { - } - ,stopCachingSamples: function() { - } - ,get_numControls: function() { - return this.__controls.length; - } - ,__class__: openfl_ui_GameInputDevice - ,__properties__: {get_numControls:"get_numControls"} -}; -var openfl_ui_Keyboard = function() { }; -$hxClasses["openfl.ui.Keyboard"] = openfl_ui_Keyboard; -openfl_ui_Keyboard.__name__ = "openfl.ui.Keyboard"; -openfl_ui_Keyboard.capsLock = null; -openfl_ui_Keyboard.numLock = null; -openfl_ui_Keyboard.isAccessible = function() { - return false; -}; -openfl_ui_Keyboard.__convertKeyCode = function(key) { - switch(key) { - 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 key; - } -}; -openfl_ui_Keyboard.__getCharCode = function(key,shift) { - if(shift == null) { - shift = false; - } - if(!shift) { - switch(key) { - 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(key >= 48 && key <= 57) { - return key - 48 + 48; - } - if(key >= 65 && key <= 90) { - return key - 65 + 97; - } - } else { - switch(key) { - 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(key >= 65 && key <= 90) { - return key - 65 + 65; - } - } - if(key >= 96 && key <= 105) { - return key - 96 + 48; - } - switch(key) { - 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; -}; -openfl_ui_Keyboard.__getKeyLocation = function(key) { - switch(key) { - 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 openfl_ui_Mouse = function() { }; -$hxClasses["openfl.ui.Mouse"] = openfl_ui_Mouse; -openfl_ui_Mouse.__name__ = "openfl.ui.Mouse"; -openfl_ui_Mouse.__properties__ = {set_cursor:"set_cursor",get_cursor:"get_cursor"}; -openfl_ui_Mouse.__hidden = null; -openfl_ui_Mouse.hide = function() { - openfl_ui_Mouse.__hidden = true; - var _g = 0; - var _g1 = lime_app_Application.current.__windows; - while(_g < _g1.length) { - var $window = _g1[_g]; - ++_g; - $window.set_cursor(null); - } -}; -openfl_ui_Mouse.show = function() { - openfl_ui_Mouse.__hidden = false; - var cacheCursor = openfl_ui_Mouse.__cursor; - openfl_ui_Mouse.__cursor = null; - openfl_ui_Mouse.set_cursor(cacheCursor); -}; -openfl_ui_Mouse.get_cursor = function() { - return openfl_ui_Mouse.__cursor; -}; -openfl_ui_Mouse.set_cursor = function(value) { - if(value == null) { - value = "auto"; - } - var setCursor = null; - switch(value) { - case "arrow": - setCursor = lime_ui_MouseCursor.ARROW; - break; - case "button": - setCursor = lime_ui_MouseCursor.POINTER; - break; - case "crosshair": - setCursor = lime_ui_MouseCursor.CROSSHAIR; - break; - case "custom": - setCursor = lime_ui_MouseCursor.CUSTOM; - break; - case "hand": - setCursor = lime_ui_MouseCursor.MOVE; - break; - case "ibeam": - setCursor = lime_ui_MouseCursor.TEXT; - break; - case "resize_nesw": - setCursor = lime_ui_MouseCursor.RESIZE_NESW; - break; - case "resize_ns": - setCursor = lime_ui_MouseCursor.RESIZE_NS; - break; - case "resize_nwse": - setCursor = lime_ui_MouseCursor.RESIZE_NWSE; - break; - case "resize_we": - setCursor = lime_ui_MouseCursor.RESIZE_WE; - break; - case "wait": - setCursor = lime_ui_MouseCursor.WAIT; - break; - case "waitarrow": - setCursor = lime_ui_MouseCursor.WAIT_ARROW; - break; - default: - } - if(setCursor != null && !openfl_ui_Mouse.__hidden) { - var _g = 0; - var _g1 = lime_app_Application.current.__windows; - while(_g < _g1.length) { - var $window = _g1[_g]; - ++_g; - $window.set_cursor(setCursor); - } - } - return openfl_ui_Mouse.__cursor = value; -}; -var openfl_ui__$MouseCursor_MouseCursor_$Impl_$ = {}; -$hxClasses["openfl.ui._MouseCursor.MouseCursor_Impl_"] = openfl_ui__$MouseCursor_MouseCursor_$Impl_$; -openfl_ui__$MouseCursor_MouseCursor_$Impl_$.__name__ = "openfl.ui._MouseCursor.MouseCursor_Impl_"; -openfl_ui__$MouseCursor_MouseCursor_$Impl_$.fromLimeCursor = function(cursor) { - switch(cursor._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"; - } -}; -openfl_ui__$MouseCursor_MouseCursor_$Impl_$.toLimeCursor = function(this1) { - switch(this1) { - case "arrow": - return lime_ui_MouseCursor.ARROW; - case "auto": - return lime_ui_MouseCursor.DEFAULT; - case "button": - return lime_ui_MouseCursor.POINTER; - case "crosshair": - return lime_ui_MouseCursor.CROSSHAIR; - case "custom": - return lime_ui_MouseCursor.CUSTOM; - case "hand": - return lime_ui_MouseCursor.MOVE; - case "ibeam": - return lime_ui_MouseCursor.TEXT; - case "resize_nesw": - return lime_ui_MouseCursor.RESIZE_NESW; - case "resize_ns": - return lime_ui_MouseCursor.RESIZE_NS; - case "resize_nwse": - return lime_ui_MouseCursor.RESIZE_NWSE; - case "resize_we": - return lime_ui_MouseCursor.RESIZE_WE; - case "wait": - return lime_ui_MouseCursor.WAIT; - case "waitarrow": - return lime_ui_MouseCursor.WAIT_ARROW; - default: - return lime_ui_MouseCursor.DEFAULT; - } -}; -var openfl_ui_Multitouch = function() { }; -$hxClasses["openfl.ui.Multitouch"] = openfl_ui_Multitouch; -openfl_ui_Multitouch.__name__ = "openfl.ui.Multitouch"; -openfl_ui_Multitouch.__properties__ = {get_supportsTouchEvents:"get_supportsTouchEvents"}; -openfl_ui_Multitouch.inputMode = null; -openfl_ui_Multitouch.maxTouchPoints = null; -openfl_ui_Multitouch.supportedGestures = null; -openfl_ui_Multitouch.supportsGestureEvents = null; -openfl_ui_Multitouch.get_supportsTouchEvents = function() { - if(('ontouchstart' in document.documentElement) || (window.DocumentTouch && document instanceof DocumentTouch)) { - return true; - } - return false; -}; -var openfl_ui__$MultitouchInputMode_MultitouchInputMode_$Impl_$ = {}; -$hxClasses["openfl.ui._MultitouchInputMode.MultitouchInputMode_Impl_"] = openfl_ui__$MultitouchInputMode_MultitouchInputMode_$Impl_$; -openfl_ui__$MultitouchInputMode_MultitouchInputMode_$Impl_$.__name__ = "openfl.ui._MultitouchInputMode.MultitouchInputMode_Impl_"; -openfl_ui__$MultitouchInputMode_MultitouchInputMode_$Impl_$.fromString = function(value) { - switch(value) { - case "gesture": - return 0; - case "none": - return 1; - case "touchPoint": - return 2; - default: - return null; - } -}; -openfl_ui__$MultitouchInputMode_MultitouchInputMode_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "gesture"; - case 1: - return "none"; - case 2: - return "touchPoint"; - default: - return null; - } -}; -var openfl_utils_AGALMiniAssembler = function(debugging) { - if(debugging == null) { - debugging = false; - } - this.debugEnabled = false; - this.debugEnabled = debugging; - if(!openfl_utils_AGALMiniAssembler.initialized) { - openfl_utils_AGALMiniAssembler.init(); - } -}; -$hxClasses["openfl.utils.AGALMiniAssembler"] = openfl_utils_AGALMiniAssembler; -openfl_utils_AGALMiniAssembler.__name__ = "openfl.utils.AGALMiniAssembler"; -openfl_utils_AGALMiniAssembler.init = function() { - openfl_utils_AGALMiniAssembler.initialized = true; - var this1 = openfl_utils_AGALMiniAssembler.OPMAP; - var v = new openfl_utils__$AGALMiniAssembler_OpCode("mov",2,0,0); - var _this = this1; - if(__map_reserved["mov"] != null) { - _this.setReserved("mov",v); - } else { - _this.h["mov"] = v; - } - var this2 = openfl_utils_AGALMiniAssembler.OPMAP; - var v1 = new openfl_utils__$AGALMiniAssembler_OpCode("add",3,1,0); - var _this1 = this2; - if(__map_reserved["add"] != null) { - _this1.setReserved("add",v1); - } else { - _this1.h["add"] = v1; - } - var this3 = openfl_utils_AGALMiniAssembler.OPMAP; - var v2 = new openfl_utils__$AGALMiniAssembler_OpCode("sub",3,2,0); - var _this2 = this3; - if(__map_reserved["sub"] != null) { - _this2.setReserved("sub",v2); - } else { - _this2.h["sub"] = v2; - } - var this4 = openfl_utils_AGALMiniAssembler.OPMAP; - var v3 = new openfl_utils__$AGALMiniAssembler_OpCode("mul",3,3,0); - var _this3 = this4; - if(__map_reserved["mul"] != null) { - _this3.setReserved("mul",v3); - } else { - _this3.h["mul"] = v3; - } - var this5 = openfl_utils_AGALMiniAssembler.OPMAP; - var v4 = new openfl_utils__$AGALMiniAssembler_OpCode("div",3,4,0); - var _this4 = this5; - if(__map_reserved["div"] != null) { - _this4.setReserved("div",v4); - } else { - _this4.h["div"] = v4; - } - var this6 = openfl_utils_AGALMiniAssembler.OPMAP; - var v5 = new openfl_utils__$AGALMiniAssembler_OpCode("rcp",2,5,0); - var _this5 = this6; - if(__map_reserved["rcp"] != null) { - _this5.setReserved("rcp",v5); - } else { - _this5.h["rcp"] = v5; - } - var this7 = openfl_utils_AGALMiniAssembler.OPMAP; - var v6 = new openfl_utils__$AGALMiniAssembler_OpCode("min",3,6,0); - var _this6 = this7; - if(__map_reserved["min"] != null) { - _this6.setReserved("min",v6); - } else { - _this6.h["min"] = v6; - } - var this8 = openfl_utils_AGALMiniAssembler.OPMAP; - var v7 = new openfl_utils__$AGALMiniAssembler_OpCode("max",3,7,0); - var _this7 = this8; - if(__map_reserved["max"] != null) { - _this7.setReserved("max",v7); - } else { - _this7.h["max"] = v7; - } - var this9 = openfl_utils_AGALMiniAssembler.OPMAP; - var v8 = new openfl_utils__$AGALMiniAssembler_OpCode("frc",2,8,0); - var _this8 = this9; - if(__map_reserved["frc"] != null) { - _this8.setReserved("frc",v8); - } else { - _this8.h["frc"] = v8; - } - var this10 = openfl_utils_AGALMiniAssembler.OPMAP; - var v9 = new openfl_utils__$AGALMiniAssembler_OpCode("sqt",2,9,0); - var _this9 = this10; - if(__map_reserved["sqt"] != null) { - _this9.setReserved("sqt",v9); - } else { - _this9.h["sqt"] = v9; - } - var this11 = openfl_utils_AGALMiniAssembler.OPMAP; - var v10 = new openfl_utils__$AGALMiniAssembler_OpCode("rsq",2,10,0); - var _this10 = this11; - if(__map_reserved["rsq"] != null) { - _this10.setReserved("rsq",v10); - } else { - _this10.h["rsq"] = v10; - } - var this12 = openfl_utils_AGALMiniAssembler.OPMAP; - var v11 = new openfl_utils__$AGALMiniAssembler_OpCode("pow",3,11,0); - var _this11 = this12; - if(__map_reserved["pow"] != null) { - _this11.setReserved("pow",v11); - } else { - _this11.h["pow"] = v11; - } - var this13 = openfl_utils_AGALMiniAssembler.OPMAP; - var v12 = new openfl_utils__$AGALMiniAssembler_OpCode("log",2,12,0); - var _this12 = this13; - if(__map_reserved["log"] != null) { - _this12.setReserved("log",v12); - } else { - _this12.h["log"] = v12; - } - var this14 = openfl_utils_AGALMiniAssembler.OPMAP; - var v13 = new openfl_utils__$AGALMiniAssembler_OpCode("exp",2,13,0); - var _this13 = this14; - if(__map_reserved["exp"] != null) { - _this13.setReserved("exp",v13); - } else { - _this13.h["exp"] = v13; - } - var this15 = openfl_utils_AGALMiniAssembler.OPMAP; - var v14 = new openfl_utils__$AGALMiniAssembler_OpCode("nrm",2,14,0); - var _this14 = this15; - if(__map_reserved["nrm"] != null) { - _this14.setReserved("nrm",v14); - } else { - _this14.h["nrm"] = v14; - } - var this16 = openfl_utils_AGALMiniAssembler.OPMAP; - var v15 = new openfl_utils__$AGALMiniAssembler_OpCode("sin",2,15,0); - var _this15 = this16; - if(__map_reserved["sin"] != null) { - _this15.setReserved("sin",v15); - } else { - _this15.h["sin"] = v15; - } - var this17 = openfl_utils_AGALMiniAssembler.OPMAP; - var v16 = new openfl_utils__$AGALMiniAssembler_OpCode("cos",2,16,0); - var _this16 = this17; - if(__map_reserved["cos"] != null) { - _this16.setReserved("cos",v16); - } else { - _this16.h["cos"] = v16; - } - var this18 = openfl_utils_AGALMiniAssembler.OPMAP; - var v17 = new openfl_utils__$AGALMiniAssembler_OpCode("crs",3,17,0); - var _this17 = this18; - if(__map_reserved["crs"] != null) { - _this17.setReserved("crs",v17); - } else { - _this17.h["crs"] = v17; - } - var this19 = openfl_utils_AGALMiniAssembler.OPMAP; - var v18 = new openfl_utils__$AGALMiniAssembler_OpCode("dp3",3,18,0); - var _this18 = this19; - if(__map_reserved["dp3"] != null) { - _this18.setReserved("dp3",v18); - } else { - _this18.h["dp3"] = v18; - } - var this20 = openfl_utils_AGALMiniAssembler.OPMAP; - var v19 = new openfl_utils__$AGALMiniAssembler_OpCode("dp4",3,19,0); - var _this19 = this20; - if(__map_reserved["dp4"] != null) { - _this19.setReserved("dp4",v19); - } else { - _this19.h["dp4"] = v19; - } - var this21 = openfl_utils_AGALMiniAssembler.OPMAP; - var v20 = new openfl_utils__$AGALMiniAssembler_OpCode("abs",2,20,0); - var _this20 = this21; - if(__map_reserved["abs"] != null) { - _this20.setReserved("abs",v20); - } else { - _this20.h["abs"] = v20; - } - var this22 = openfl_utils_AGALMiniAssembler.OPMAP; - var v21 = new openfl_utils__$AGALMiniAssembler_OpCode("neg",2,21,0); - var _this21 = this22; - if(__map_reserved["neg"] != null) { - _this21.setReserved("neg",v21); - } else { - _this21.h["neg"] = v21; - } - var this23 = openfl_utils_AGALMiniAssembler.OPMAP; - var v22 = new openfl_utils__$AGALMiniAssembler_OpCode("sat",2,22,0); - var _this22 = this23; - if(__map_reserved["sat"] != null) { - _this22.setReserved("sat",v22); - } else { - _this22.h["sat"] = v22; - } - var this24 = openfl_utils_AGALMiniAssembler.OPMAP; - var v23 = new openfl_utils__$AGALMiniAssembler_OpCode("m33",3,23,16); - var _this23 = this24; - if(__map_reserved["m33"] != null) { - _this23.setReserved("m33",v23); - } else { - _this23.h["m33"] = v23; - } - var this25 = openfl_utils_AGALMiniAssembler.OPMAP; - var v24 = new openfl_utils__$AGALMiniAssembler_OpCode("m44",3,24,16); - var _this24 = this25; - if(__map_reserved["m44"] != null) { - _this24.setReserved("m44",v24); - } else { - _this24.h["m44"] = v24; - } - var this26 = openfl_utils_AGALMiniAssembler.OPMAP; - var v25 = new openfl_utils__$AGALMiniAssembler_OpCode("m34",3,25,16); - var _this25 = this26; - if(__map_reserved["m34"] != null) { - _this25.setReserved("m34",v25); - } else { - _this25.h["m34"] = v25; - } - var this27 = openfl_utils_AGALMiniAssembler.OPMAP; - var v26 = new openfl_utils__$AGALMiniAssembler_OpCode("ddx",2,26,288); - var _this26 = this27; - if(__map_reserved["ddx"] != null) { - _this26.setReserved("ddx",v26); - } else { - _this26.h["ddx"] = v26; - } - var this28 = openfl_utils_AGALMiniAssembler.OPMAP; - var v27 = new openfl_utils__$AGALMiniAssembler_OpCode("ddy",2,27,288); - var _this27 = this28; - if(__map_reserved["ddy"] != null) { - _this27.setReserved("ddy",v27); - } else { - _this27.h["ddy"] = v27; - } - var this29 = openfl_utils_AGALMiniAssembler.OPMAP; - var v28 = new openfl_utils__$AGALMiniAssembler_OpCode("ife",2,28,897); - var _this28 = this29; - if(__map_reserved["ife"] != null) { - _this28.setReserved("ife",v28); - } else { - _this28.h["ife"] = v28; - } - var this30 = openfl_utils_AGALMiniAssembler.OPMAP; - var v29 = new openfl_utils__$AGALMiniAssembler_OpCode("ine",2,29,897); - var _this29 = this30; - if(__map_reserved["ine"] != null) { - _this29.setReserved("ine",v29); - } else { - _this29.h["ine"] = v29; - } - var this31 = openfl_utils_AGALMiniAssembler.OPMAP; - var v30 = new openfl_utils__$AGALMiniAssembler_OpCode("ifg",2,30,897); - var _this30 = this31; - if(__map_reserved["ifg"] != null) { - _this30.setReserved("ifg",v30); - } else { - _this30.h["ifg"] = v30; - } - var this32 = openfl_utils_AGALMiniAssembler.OPMAP; - var v31 = new openfl_utils__$AGALMiniAssembler_OpCode("ifl",2,31,897); - var _this31 = this32; - if(__map_reserved["ifl"] != null) { - _this31.setReserved("ifl",v31); - } else { - _this31.h["ifl"] = v31; - } - var this33 = openfl_utils_AGALMiniAssembler.OPMAP; - var v32 = new openfl_utils__$AGALMiniAssembler_OpCode("els",0,32,1921); - var _this32 = this33; - if(__map_reserved["els"] != null) { - _this32.setReserved("els",v32); - } else { - _this32.h["els"] = v32; - } - var this34 = openfl_utils_AGALMiniAssembler.OPMAP; - var v33 = new openfl_utils__$AGALMiniAssembler_OpCode("eif",0,33,1409); - var _this33 = this34; - if(__map_reserved["eif"] != null) { - _this33.setReserved("eif",v33); - } else { - _this33.h["eif"] = v33; - } - var this35 = openfl_utils_AGALMiniAssembler.OPMAP; - var v34 = new openfl_utils__$AGALMiniAssembler_OpCode("kil",1,39,160); - var _this34 = this35; - if(__map_reserved["kil"] != null) { - _this34.setReserved("kil",v34); - } else { - _this34.h["kil"] = v34; - } - var this36 = openfl_utils_AGALMiniAssembler.OPMAP; - var v35 = new openfl_utils__$AGALMiniAssembler_OpCode("tex",3,40,40); - var _this35 = this36; - if(__map_reserved["tex"] != null) { - _this35.setReserved("tex",v35); - } else { - _this35.h["tex"] = v35; - } - var this37 = openfl_utils_AGALMiniAssembler.OPMAP; - var v36 = new openfl_utils__$AGALMiniAssembler_OpCode("sge",3,41,0); - var _this36 = this37; - if(__map_reserved["sge"] != null) { - _this36.setReserved("sge",v36); - } else { - _this36.h["sge"] = v36; - } - var this38 = openfl_utils_AGALMiniAssembler.OPMAP; - var v37 = new openfl_utils__$AGALMiniAssembler_OpCode("slt",3,42,0); - var _this37 = this38; - if(__map_reserved["slt"] != null) { - _this37.setReserved("slt",v37); - } else { - _this37.h["slt"] = v37; - } - var this39 = openfl_utils_AGALMiniAssembler.OPMAP; - var v38 = new openfl_utils__$AGALMiniAssembler_OpCode("sgn",2,43,0); - var _this38 = this39; - if(__map_reserved["sgn"] != null) { - _this38.setReserved("sgn",v38); - } else { - _this38.h["sgn"] = v38; - } - var this40 = openfl_utils_AGALMiniAssembler.OPMAP; - var v39 = new openfl_utils__$AGALMiniAssembler_OpCode("seq",3,44,0); - var _this39 = this40; - if(__map_reserved["seq"] != null) { - _this39.setReserved("seq",v39); - } else { - _this39.h["seq"] = v39; - } - var this41 = openfl_utils_AGALMiniAssembler.OPMAP; - var v40 = new openfl_utils__$AGALMiniAssembler_OpCode("sne",3,45,0); - var _this40 = this41; - if(__map_reserved["sne"] != null) { - _this40.setReserved("sne",v40); - } else { - _this40.h["sne"] = v40; - } - var this42 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v41 = new openfl_utils__$AGALMiniAssembler_Sampler("rgba",8,0); - var _this41 = this42; - if(__map_reserved["rgba"] != null) { - _this41.setReserved("rgba",v41); - } else { - _this41.h["rgba"] = v41; - } - var this43 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v42 = new openfl_utils__$AGALMiniAssembler_Sampler("compressed",8,1); - var _this42 = this43; - if(__map_reserved["compressed"] != null) { - _this42.setReserved("compressed",v42); - } else { - _this42.h["compressed"] = v42; - } - var this44 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v43 = new openfl_utils__$AGALMiniAssembler_Sampler("compressedalpha",8,2); - var _this43 = this44; - if(__map_reserved["compressedalpha"] != null) { - _this43.setReserved("compressedalpha",v43); - } else { - _this43.h["compressedalpha"] = v43; - } - var this45 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v44 = new openfl_utils__$AGALMiniAssembler_Sampler("dxt1",8,1); - var _this44 = this45; - if(__map_reserved["dxt1"] != null) { - _this44.setReserved("dxt1",v44); - } else { - _this44.h["dxt1"] = v44; - } - var this46 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v45 = new openfl_utils__$AGALMiniAssembler_Sampler("dxt5",8,2); - var _this45 = this46; - if(__map_reserved["dxt5"] != null) { - _this45.setReserved("dxt5",v45); - } else { - _this45.h["dxt5"] = v45; - } - var this47 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v46 = new openfl_utils__$AGALMiniAssembler_Sampler("video",8,3); - var _this46 = this47; - if(__map_reserved["video"] != null) { - _this46.setReserved("video",v46); - } else { - _this46.h["video"] = v46; - } - var this48 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v47 = new openfl_utils__$AGALMiniAssembler_Sampler("2d",12,0); - var _this47 = this48; - if(__map_reserved["2d"] != null) { - _this47.setReserved("2d",v47); - } else { - _this47.h["2d"] = v47; - } - var this49 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v48 = new openfl_utils__$AGALMiniAssembler_Sampler("3d",12,2); - var _this48 = this49; - if(__map_reserved["3d"] != null) { - _this48.setReserved("3d",v48); - } else { - _this48.h["3d"] = v48; - } - var this50 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v49 = new openfl_utils__$AGALMiniAssembler_Sampler("cube",12,1); - var _this49 = this50; - if(__map_reserved["cube"] != null) { - _this49.setReserved("cube",v49); - } else { - _this49.h["cube"] = v49; - } - var this51 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v50 = new openfl_utils__$AGALMiniAssembler_Sampler("mipnearest",24,1); - var _this50 = this51; - if(__map_reserved["mipnearest"] != null) { - _this50.setReserved("mipnearest",v50); - } else { - _this50.h["mipnearest"] = v50; - } - var this52 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v51 = new openfl_utils__$AGALMiniAssembler_Sampler("miplinear",24,2); - var _this51 = this52; - if(__map_reserved["miplinear"] != null) { - _this51.setReserved("miplinear",v51); - } else { - _this51.h["miplinear"] = v51; - } - var this53 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v52 = new openfl_utils__$AGALMiniAssembler_Sampler("mipnone",24,0); - var _this52 = this53; - if(__map_reserved["mipnone"] != null) { - _this52.setReserved("mipnone",v52); - } else { - _this52.h["mipnone"] = v52; - } - var this54 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v53 = new openfl_utils__$AGALMiniAssembler_Sampler("nomip",24,0); - var _this53 = this54; - if(__map_reserved["nomip"] != null) { - _this53.setReserved("nomip",v53); - } else { - _this53.h["nomip"] = v53; - } - var this55 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v54 = new openfl_utils__$AGALMiniAssembler_Sampler("nearest",28,0); - var _this54 = this55; - if(__map_reserved["nearest"] != null) { - _this54.setReserved("nearest",v54); - } else { - _this54.h["nearest"] = v54; - } - var this56 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v55 = new openfl_utils__$AGALMiniAssembler_Sampler("linear",28,1); - var _this55 = this56; - if(__map_reserved["linear"] != null) { - _this55.setReserved("linear",v55); - } else { - _this55.h["linear"] = v55; - } - var this57 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v56 = new openfl_utils__$AGALMiniAssembler_Sampler("anisotropic2x",28,2); - var _this56 = this57; - if(__map_reserved["anisotropic2x"] != null) { - _this56.setReserved("anisotropic2x",v56); - } else { - _this56.h["anisotropic2x"] = v56; - } - var this58 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v57 = new openfl_utils__$AGALMiniAssembler_Sampler("anisotropic4x",28,3); - var _this57 = this58; - if(__map_reserved["anisotropic4x"] != null) { - _this57.setReserved("anisotropic4x",v57); - } else { - _this57.h["anisotropic4x"] = v57; - } - var this59 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v58 = new openfl_utils__$AGALMiniAssembler_Sampler("anisotropic8x",28,4); - var _this58 = this59; - if(__map_reserved["anisotropic8x"] != null) { - _this58.setReserved("anisotropic8x",v58); - } else { - _this58.h["anisotropic8x"] = v58; - } - var this60 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v59 = new openfl_utils__$AGALMiniAssembler_Sampler("anisotropic16x",28,5); - var _this59 = this60; - if(__map_reserved["anisotropic16x"] != null) { - _this59.setReserved("anisotropic16x",v59); - } else { - _this59.h["anisotropic16x"] = v59; - } - var this61 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v60 = new openfl_utils__$AGALMiniAssembler_Sampler("centroid",16,1); - var _this60 = this61; - if(__map_reserved["centroid"] != null) { - _this60.setReserved("centroid",v60); - } else { - _this60.h["centroid"] = v60; - } - var this62 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v61 = new openfl_utils__$AGALMiniAssembler_Sampler("single",16,2); - var _this61 = this62; - if(__map_reserved["single"] != null) { - _this61.setReserved("single",v61); - } else { - _this61.h["single"] = v61; - } - var this63 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v62 = new openfl_utils__$AGALMiniAssembler_Sampler("ignoresampler",16,4); - var _this62 = this63; - if(__map_reserved["ignoresampler"] != null) { - _this62.setReserved("ignoresampler",v62); - } else { - _this62.h["ignoresampler"] = v62; - } - var this64 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v63 = new openfl_utils__$AGALMiniAssembler_Sampler("repeat",20,1); - var _this63 = this64; - if(__map_reserved["repeat"] != null) { - _this63.setReserved("repeat",v63); - } else { - _this63.h["repeat"] = v63; - } - var this65 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v64 = new openfl_utils__$AGALMiniAssembler_Sampler("wrap",20,1); - var _this64 = this65; - if(__map_reserved["wrap"] != null) { - _this64.setReserved("wrap",v64); - } else { - _this64.h["wrap"] = v64; - } - var this66 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v65 = new openfl_utils__$AGALMiniAssembler_Sampler("clamp",20,0); - var _this65 = this66; - if(__map_reserved["clamp"] != null) { - _this65.setReserved("clamp",v65); - } else { - _this65.h["clamp"] = v65; - } - var this67 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v66 = new openfl_utils__$AGALMiniAssembler_Sampler("clamp_u_repeat_v",20,2); - var _this66 = this67; - if(__map_reserved["clamp_u_repeat_v"] != null) { - _this66.setReserved("clamp_u_repeat_v",v66); - } else { - _this66.h["clamp_u_repeat_v"] = v66; - } - var this68 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var v67 = new openfl_utils__$AGALMiniAssembler_Sampler("repeat_u_clamp_v",20,3); - var _this67 = this68; - if(__map_reserved["repeat_u_clamp_v"] != null) { - _this67.setReserved("repeat_u_clamp_v",v67); - } else { - _this67.h["repeat_u_clamp_v"] = v67; - } -}; -openfl_utils_AGALMiniAssembler.prototype = { - agalcode: null - ,error: null - ,verbose: null - ,debugEnabled: null - ,assemble2: function(context3D,version,vertexSource,fragmentSource) { - var agalVertex = this.assemble("vertex",vertexSource,version); - var agalFragment = this.assemble("fragment",fragmentSource,version); - var program = context3D.createProgram(); - program.upload(agalVertex,agalFragment); - return program; - } - ,assemble: function(mode,source,version,ignoreLimits) { - if(ignoreLimits == null) { - ignoreLimits = false; - } - if(version == null) { - version = 1; - } - var start = openfl_Lib.getTimer(); - var this1 = new openfl_utils_ByteArrayData(0); - this.agalcode = this1; - this.error = ""; - var isFrag = false; - if(mode == "fragment") { - isFrag = true; - } else if(mode != "vertex") { - this.error = "ERROR: mode needs to be \"" + "fragment" + "\" or \"" + "vertex" + "\" but is \"" + mode + "\"."; - } - this.agalcode.__endian = 1; - this.agalcode.writeByte(160); - this.agalcode.writeUnsignedInt(version); - this.agalcode.writeByte(161); - this.agalcode.writeByte(isFrag ? 1 : 0); - this.initregmap(version,ignoreLimits); - var lines = StringTools.replace(source,"\r","\n").split("\n"); - var nops = 0; - var lng = lines.length; - var reg1 = new EReg("<.*>","g"); - var reg2 = new EReg("([\\w\\.\\-\\+]+)","gi"); - var reg3 = new EReg("^\\w{3}","ig"); - var reg4 = new EReg("vc\\[([vofi][acostdip]?[d]?)(\\d*)?(\\.[xyzw](\\+\\d{1,3})?)?\\](\\.[xyzw]{1,4})?|([vofi][acostdip]?[d]?)(\\d*)?(\\.[xyzw]{1,4})?","gi"); - var reg5 = new EReg("\\[.*\\]","ig"); - var reg6 = new EReg("^\\b[A-Za-z]{1,3}","ig"); - var reg7 = new EReg("\\d+",""); - var reg8 = new EReg("(\\.[xyzw]{1,4})",""); - var reg9 = new EReg("[A-Za-z]{1,3}","ig"); - var reg10 = new EReg("(\\.[xyzw]{1,1})",""); - var reg11 = new EReg("\\+\\d{1,3}","ig"); - var i = 0; - while(i < lng && this.error == "") { - var line = StringTools.trim(lines[i]); - var startcomment = line.indexOf("//"); - if(startcomment != -1) { - line = HxOverrides.substr(line,0,startcomment); - } - var optsi = reg1.match(line) ? reg1.matchedPos().pos : -1; - var opts = null; - if(optsi != -1) { - opts = this.match(HxOverrides.substr(line,optsi,null),reg2); - line = HxOverrides.substr(line,0,optsi); - } - var opCode = null; - var opFound = null; - if(reg3.match(line)) { - opCode = reg3.matched(0); - var _this = openfl_utils_AGALMiniAssembler.OPMAP; - opFound = __map_reserved[opCode] != null ? _this.getReserved(opCode) : _this.h[opCode]; - } - if(opFound == null) { - if(line.length >= 3) { - lime_utils_Log.warn("warning: bad line " + i + ": " + lines[i],{ fileName : "openfl/utils/AGALMiniAssembler.hx", lineNumber : 262, className : "openfl.utils.AGALMiniAssembler", methodName : "assemble"}); - } - ++i; - continue; - } - if(this.debugEnabled) { - lime_utils_Log.info(opFound,{ fileName : "openfl/utils/AGALMiniAssembler.hx", lineNumber : 272, className : "openfl.utils.AGALMiniAssembler", methodName : "assemble"}); - } - if(opFound == null) { - if(line.length >= 3) { - lime_utils_Log.warn("warning: bad line " + i + ": " + lines[i],{ fileName : "openfl/utils/AGALMiniAssembler.hx", lineNumber : 279, className : "openfl.utils.AGALMiniAssembler", methodName : "assemble"}); - } - ++i; - continue; - } - line = HxOverrides.substr(line,line.indexOf(opFound.name) + opFound.name.length,null); - if((opFound.flags & 256) != 0 && version < 2) { - this.error = "error: opcode requires version 2."; - break; - } - if((opFound.flags & 64) != 0 && isFrag) { - this.error = "error: opcode is only allowed in vertex programs."; - break; - } - if((opFound.flags & 32) != 0 && !isFrag) { - this.error = "error: opcode is only allowed in fragment programs."; - break; - } - if(this.verbose) { - lime_utils_Log.info("emit opcode=" + Std.string(opFound),{ fileName : "openfl/utils/AGALMiniAssembler.hx", lineNumber : 308, className : "openfl.utils.AGALMiniAssembler", methodName : "assemble"}); - } - this.agalcode.writeUnsignedInt(opFound.emitCode); - ++nops; - if(nops > 4096) { - this.error = "error: too many opcodes. maximum is " + 4096 + "."; - break; - } - var regs = this.match(line,reg4); - if(regs.length != opFound.numRegister) { - this.error = "error: wrong number of operands. found " + regs.length + " but expected " + opFound.numRegister + "."; - break; - } - var badreg = false; - var pad = 160; - var regLength = regs.length; - var _g = 0; - var _g1 = regLength; - while(_g < _g1) { - var j = _g++; - var isRelative = false; - var relreg = this.match(regs[j],reg5); - if(relreg.length > 0) { - regs[j] = StringTools.replace(regs[j],relreg[0],"0"); - if(this.verbose) { - lime_utils_Log.info("IS REL",{ fileName : "openfl/utils/AGALMiniAssembler.hx", lineNumber : 344, className : "openfl.utils.AGALMiniAssembler", methodName : "assemble"}); - } - isRelative = true; - } - var res = this.match(regs[j],reg6); - if(res.length == 0) { - this.error = "error: could not parse operand " + j + " (" + regs[j] + ")."; - badreg = true; - break; - } - var _this1 = openfl_utils_AGALMiniAssembler.REGMAP; - var key = res[0]; - var regFound = __map_reserved[key] != null ? _this1.getReserved(key) : _this1.h[key]; - if(this.debugEnabled) { - lime_utils_Log.info(regFound,{ fileName : "openfl/utils/AGALMiniAssembler.hx", lineNumber : 363, className : "openfl.utils.AGALMiniAssembler", methodName : "assemble"}); - } - if(regFound == null) { - this.error = "error: could not find register name for operand " + j + " (" + regs[j] + ")."; - badreg = true; - break; - } - if(isFrag) { - if((regFound.flags & 32) == 0) { - this.error = "error: register operand " + j + " (" + regs[j] + ") only allowed in vertex programs."; - badreg = true; - break; - } - if(isRelative) { - this.error = "error: register operand " + j + " (" + regs[j] + ") relative adressing not allowed in fragment programs."; - badreg = true; - break; - } - } else if((regFound.flags & 64) == 0) { - this.error = "error: register operand " + j + " (" + regs[j] + ") only allowed in fragment programs."; - badreg = true; - break; - } - regs[j] = HxOverrides.substr(regs[j],regs[j].indexOf(regFound.name) + regFound.name.length,null); - var idxmatch = isRelative ? this.match(relreg[0],reg7) : this.match(regs[j],reg7); - var regidx = 0; - if(idxmatch.length > 0) { - regidx = Std.parseInt(idxmatch[0]); - } - if(_$UInt_UInt_$Impl_$.gt(regidx,regFound.range)) { - var this2 = regFound.range + 1; - this.error = "error: register operand " + j + " (" + regs[j] + ") index exceeds limit of " + Std.string(this2 == null ? null : _$UInt_UInt_$Impl_$.toFloat(this2)) + "."; - badreg = true; - break; - } - var regmask = 0; - var maskmatch = this.match(regs[j],reg8); - var isDest = j == 0 && (opFound.flags & 128) == 0; - var isSampler = j == 2 && (opFound.flags & 8) != 0; - var reltype = 0; - var relsel = 0; - var reloffset = 0; - if(isDest && isRelative) { - this.error = "error: relative can not be destination"; - badreg = true; - break; - } - if(maskmatch.length > 0) { - regmask = 0; - var cv = 0; - var maskLength = maskmatch[0].length; - var k = 1; - while(k < maskLength) { - cv = HxOverrides.cca(maskmatch[0],k) - 120; - if(_$UInt_UInt_$Impl_$.gt(cv,2)) { - cv = 3; - } - if(isDest) { - regmask |= 1 << cv; - } else { - regmask = regmask | cv << (k - 1 << 1); - } - ++k; - } - if(!isDest) { - while(k <= 4) { - regmask = regmask | cv << (k - 1 << 1); - ++k; - } - } - } else { - regmask = isDest ? 15 : 228; - } - if(isRelative) { - var relname = this.match(relreg[0],reg9); - var _this2 = openfl_utils_AGALMiniAssembler.REGMAP; - var key1 = relname[0]; - var regFoundRel = __map_reserved[key1] != null ? _this2.getReserved(key1) : _this2.h[key1]; - if(regFoundRel == null) { - this.error = "error: bad index register"; - badreg = true; - break; - } - reltype = regFoundRel.emitCode; - var selmatch = this.match(relreg[0],reg10); - if(selmatch.length == 0) { - this.error = "error: bad index register select"; - badreg = true; - break; - } - relsel = HxOverrides.cca(selmatch[0],1) - 120; - if(_$UInt_UInt_$Impl_$.gt(relsel,2)) { - relsel = 3; - } - var relofs = this.match(relreg[0],reg11); - if(relofs.length > 0) { - reloffset = Std.parseInt(relofs[0]); - } - if(reloffset < 0 || reloffset > 255) { - this.error = "error: index offset " + reloffset + " out of bounds. [0..255]"; - badreg = true; - break; - } - if(this.verbose) { - lime_utils_Log.info("RELATIVE: type=" + reltype + "==" + relname[0] + " sel=" + Std.string(relsel == null ? null : _$UInt_UInt_$Impl_$.toFloat(relsel)) + "==" + selmatch[0] + " idx=" + Std.string(regidx == null ? null : _$UInt_UInt_$Impl_$.toFloat(regidx)) + " offset=" + reloffset,{ fileName : "openfl/utils/AGALMiniAssembler.hx", lineNumber : 518, className : "openfl.utils.AGALMiniAssembler", methodName : "assemble"}); - } - } - if(this.verbose) { - lime_utils_Log.info(" emit argcode=" + Std.string(regFound) + "[" + Std.string(regidx == null ? null : _$UInt_UInt_$Impl_$.toFloat(regidx)) + "][" + regmask + "]",{ fileName : "openfl/utils/AGALMiniAssembler.hx", lineNumber : 525, className : "openfl.utils.AGALMiniAssembler", methodName : "assemble"}); - } - if(isDest) { - this.agalcode.writeShort(regidx); - this.agalcode.writeByte(regmask); - this.agalcode.writeByte(regFound.emitCode); - pad -= 32; - } else if(isSampler) { - if(this.verbose) { - lime_utils_Log.info(" emit sampler",{ fileName : "openfl/utils/AGALMiniAssembler.hx", lineNumber : 541, className : "openfl.utils.AGALMiniAssembler", methodName : "assemble"}); - } - var samplerbits = 5; - var optsLength = opts == null ? 0 : opts.length; - var bias = 0.0; - var _g2 = 0; - var _g11 = optsLength; - while(_g2 < _g11) { - var k1 = _g2++; - if(this.verbose) { - lime_utils_Log.info(" opt: " + opts[k1],{ fileName : "openfl/utils/AGALMiniAssembler.hx", lineNumber : 552, className : "openfl.utils.AGALMiniAssembler", methodName : "assemble"}); - } - var _this3 = openfl_utils_AGALMiniAssembler.SAMPLEMAP; - var key2 = opts[k1]; - var optfound = __map_reserved[key2] != null ? _this3.getReserved(key2) : _this3.h[key2]; - if(optfound == null) { - bias = parseFloat(opts[k1]); - if(this.verbose) { - lime_utils_Log.info(" bias: " + bias,{ fileName : "openfl/utils/AGALMiniAssembler.hx", lineNumber : 565, className : "openfl.utils.AGALMiniAssembler", methodName : "assemble"}); - } - } else { - if(optfound.flag != 16) { - samplerbits &= ~(15 << optfound.flag); - } - samplerbits = samplerbits | optfound.mask << optfound.flag; - } - } - this.agalcode.writeShort(regidx); - this.agalcode.writeByte(bias * 8.0 | 0); - this.agalcode.writeByte(0); - this.agalcode.writeUnsignedInt(samplerbits); - if(this.verbose) { - lime_utils_Log.info(" bits: " + (samplerbits - 5),{ fileName : "openfl/utils/AGALMiniAssembler.hx", lineNumber : 586, className : "openfl.utils.AGALMiniAssembler", methodName : "assemble"}); - } - pad -= 64; - } else { - if(j == 0) { - this.agalcode.writeUnsignedInt(0); - pad -= 32; - } - this.agalcode.writeShort(regidx); - this.agalcode.writeByte(reloffset); - this.agalcode.writeByte(regmask); - this.agalcode.writeByte(regFound.emitCode); - this.agalcode.writeByte(reltype); - this.agalcode.writeShort(isRelative ? relsel | 32768 : 0); - pad -= 64; - } - } - var j1 = 0; - while(j1 < pad) { - this.agalcode.writeByte(0); - j1 += 8; - } - if(badreg) { - break; - } - ++i; - } - if(this.error != "") { - this.error += "\n at line " + i + " " + lines[i]; - openfl_utils__$ByteArray_ByteArray_$Impl_$.set_length(this.agalcode,0); - lime_utils_Log.info(this.error,{ fileName : "openfl/utils/AGALMiniAssembler.hx", lineNumber : 631, className : "openfl.utils.AGALMiniAssembler", methodName : "assemble"}); - } - if(this.debugEnabled) { - var dbgLine = "generated bytecode:"; - var agalLength = openfl_utils__$ByteArray_ByteArray_$Impl_$.get_length(this.agalcode); - var _g3 = 0; - var _g12 = agalLength; - while(_g3 < _g12) { - var index = _g3++; - if(index % 16 == 0) { - dbgLine += "\n"; - } - if(index % 4 == 0) { - dbgLine += " "; - } - var byteStr = StringTools.hex(this.agalcode.b[index],2); - if(byteStr.length < 2) { - byteStr = "0" + byteStr; - } - dbgLine += byteStr; - } - lime_utils_Log.info(dbgLine,{ fileName : "openfl/utils/AGALMiniAssembler.hx", lineNumber : 662, className : "openfl.utils.AGALMiniAssembler", methodName : "assemble"}); - } - if(this.verbose) { - lime_utils_Log.info("AGALMiniAssembler.assemble time: " + (openfl_Lib.getTimer() - start) / 1000 + "s",{ fileName : "openfl/utils/AGALMiniAssembler.hx", lineNumber : 667, className : "openfl.utils.AGALMiniAssembler", methodName : "assemble"}); - } - return this.agalcode; - } - ,initregmap: function(version,ignorelimits) { - var this1 = openfl_utils_AGALMiniAssembler.REGMAP; - var v = new openfl_utils__$AGALMiniAssembler_Register("va","vertex attribute",0,ignorelimits ? 1024 : version == 1 || version == 2 ? 7 : 15,66); - var _this = this1; - if(__map_reserved["va"] != null) { - _this.setReserved("va",v); - } else { - _this.h["va"] = v; - } - var this2 = openfl_utils_AGALMiniAssembler.REGMAP; - var v1 = new openfl_utils__$AGALMiniAssembler_Register("vc","vertex constant",1,ignorelimits ? 1024 : version == 1 ? 127 : 249,66); - var _this1 = this2; - if(__map_reserved["vc"] != null) { - _this1.setReserved("vc",v1); - } else { - _this1.h["vc"] = v1; - } - var this3 = openfl_utils_AGALMiniAssembler.REGMAP; - var v2 = new openfl_utils__$AGALMiniAssembler_Register("vt","vertex temporary",2,ignorelimits ? 1024 : version == 1 ? 7 : 25,67); - var _this2 = this3; - if(__map_reserved["vt"] != null) { - _this2.setReserved("vt",v2); - } else { - _this2.h["vt"] = v2; - } - var this4 = openfl_utils_AGALMiniAssembler.REGMAP; - var v3 = new openfl_utils__$AGALMiniAssembler_Register("vo","vertex output",3,ignorelimits ? 1024 : 0,65); - var _this3 = this4; - if(__map_reserved["vo"] != null) { - _this3.setReserved("vo",v3); - } else { - _this3.h["vo"] = v3; - } - var this5 = openfl_utils_AGALMiniAssembler.REGMAP; - var v4 = new openfl_utils__$AGALMiniAssembler_Register("vi","varying",4,ignorelimits ? 1024 : version == 1 ? 7 : 9,99); - var _this4 = this5; - if(__map_reserved["vi"] != null) { - _this4.setReserved("vi",v4); - } else { - _this4.h["vi"] = v4; - } - var this6 = openfl_utils_AGALMiniAssembler.REGMAP; - var v5 = new openfl_utils__$AGALMiniAssembler_Register("fc","fragment constant",1,ignorelimits ? 1024 : version == 1 ? 27 : version == 2 ? 63 : 199,34); - var _this5 = this6; - if(__map_reserved["fc"] != null) { - _this5.setReserved("fc",v5); - } else { - _this5.h["fc"] = v5; - } - var this7 = openfl_utils_AGALMiniAssembler.REGMAP; - var v6 = new openfl_utils__$AGALMiniAssembler_Register("ft","fragment temporary",2,ignorelimits ? 1024 : version == 1 ? 7 : 25,35); - var _this6 = this7; - if(__map_reserved["ft"] != null) { - _this6.setReserved("ft",v6); - } else { - _this6.h["ft"] = v6; - } - var this8 = openfl_utils_AGALMiniAssembler.REGMAP; - var v7 = new openfl_utils__$AGALMiniAssembler_Register("fs","texture sampler",5,ignorelimits ? 1024 : 7,34); - var _this7 = this8; - if(__map_reserved["fs"] != null) { - _this7.setReserved("fs",v7); - } else { - _this7.h["fs"] = v7; - } - var this9 = openfl_utils_AGALMiniAssembler.REGMAP; - var v8 = new openfl_utils__$AGALMiniAssembler_Register("fo","fragment output",3,ignorelimits ? 1024 : version == 1 ? 0 : 3,33); - var _this8 = this9; - if(__map_reserved["fo"] != null) { - _this8.setReserved("fo",v8); - } else { - _this8.h["fo"] = v8; - } - var this10 = openfl_utils_AGALMiniAssembler.REGMAP; - var v9 = new openfl_utils__$AGALMiniAssembler_Register("fd","fragment depth output",6,ignorelimits ? 1024 : version == 1 ? -1 : 0,33); - var _this9 = this10; - if(__map_reserved["fd"] != null) { - _this9.setReserved("fd",v9); - } else { - _this9.h["fd"] = v9; - } - var this11 = openfl_utils_AGALMiniAssembler.REGMAP; - var v10 = new openfl_utils__$AGALMiniAssembler_Register("iid","instance id",7,ignorelimits ? 1024 : 0,66); - var _this10 = this11; - if(__map_reserved["iid"] != null) { - _this10.setReserved("iid",v10); - } else { - _this10.h["iid"] = v10; - } - var this12 = openfl_utils_AGALMiniAssembler.REGMAP; - var _this11 = openfl_utils_AGALMiniAssembler.REGMAP; - var v11 = __map_reserved["vo"] != null ? _this11.getReserved("vo") : _this11.h["vo"]; - var _this12 = this12; - if(__map_reserved["op"] != null) { - _this12.setReserved("op",v11); - } else { - _this12.h["op"] = v11; - } - var this13 = openfl_utils_AGALMiniAssembler.REGMAP; - var _this13 = openfl_utils_AGALMiniAssembler.REGMAP; - var v12 = __map_reserved["vi"] != null ? _this13.getReserved("vi") : _this13.h["vi"]; - var _this14 = this13; - if(__map_reserved["i"] != null) { - _this14.setReserved("i",v12); - } else { - _this14.h["i"] = v12; - } - var this14 = openfl_utils_AGALMiniAssembler.REGMAP; - var _this15 = openfl_utils_AGALMiniAssembler.REGMAP; - var v13 = __map_reserved["vi"] != null ? _this15.getReserved("vi") : _this15.h["vi"]; - var _this16 = this14; - if(__map_reserved["v"] != null) { - _this16.setReserved("v",v13); - } else { - _this16.h["v"] = v13; - } - var this15 = openfl_utils_AGALMiniAssembler.REGMAP; - var _this17 = openfl_utils_AGALMiniAssembler.REGMAP; - var v14 = __map_reserved["fo"] != null ? _this17.getReserved("fo") : _this17.h["fo"]; - var _this18 = this15; - if(__map_reserved["oc"] != null) { - _this18.setReserved("oc",v14); - } else { - _this18.h["oc"] = v14; - } - var this16 = openfl_utils_AGALMiniAssembler.REGMAP; - var _this19 = openfl_utils_AGALMiniAssembler.REGMAP; - var v15 = __map_reserved["fd"] != null ? _this19.getReserved("fd") : _this19.h["fd"]; - var _this20 = this16; - if(__map_reserved["od"] != null) { - _this20.setReserved("od",v15); - } else { - _this20.h["od"] = v15; - } - var this17 = openfl_utils_AGALMiniAssembler.REGMAP; - var _this21 = openfl_utils_AGALMiniAssembler.REGMAP; - var v16 = __map_reserved["vi"] != null ? _this21.getReserved("vi") : _this21.h["vi"]; - var _this22 = this17; - if(__map_reserved["fi"] != null) { - _this22.setReserved("fi",v16); - } else { - _this22.h["fi"] = v16; - } - } - ,match: function(value,reg) { - var matches = []; - var index = 0; - var match; - while(reg.matchSub(value,index)) { - match = reg.matched(0); - matches.push(match); - index = reg.matchedPos().pos + match.length; - } - return matches; - } - ,__class__: openfl_utils_AGALMiniAssembler -}; -var openfl_utils__$AGALMiniAssembler_OpCode = function(name,numRegister,emitCode,flags) { - this.name = name; - this.numRegister = numRegister; - this.emitCode = emitCode; - this.flags = flags; -}; -$hxClasses["openfl.utils._AGALMiniAssembler.OpCode"] = openfl_utils__$AGALMiniAssembler_OpCode; -openfl_utils__$AGALMiniAssembler_OpCode.__name__ = "openfl.utils._AGALMiniAssembler.OpCode"; -openfl_utils__$AGALMiniAssembler_OpCode.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__: openfl_utils__$AGALMiniAssembler_OpCode -}; -var openfl_utils__$AGALMiniAssembler_Register = function(name,longName,emitCode,range,flags) { - this.name = name; - this.longName = longName; - this.emitCode = emitCode; - this.range = range; - this.flags = flags; -}; -$hxClasses["openfl.utils._AGALMiniAssembler.Register"] = openfl_utils__$AGALMiniAssembler_Register; -openfl_utils__$AGALMiniAssembler_Register.__name__ = "openfl.utils._AGALMiniAssembler.Register"; -openfl_utils__$AGALMiniAssembler_Register.prototype = { - emitCode: null - ,name: null - ,longName: null - ,flags: null - ,range: null - ,toString: function() { - var this1 = this.emitCode; - var tmp = "[Register name=\"" + this.name + "\", longName=\"" + this.longName + "\", emitCode=" + Std.string(this1 == null ? null : _$UInt_UInt_$Impl_$.toFloat(this1)) + ", range="; - var this2 = this.range; - var tmp1 = tmp + Std.string(this2 == null ? null : _$UInt_UInt_$Impl_$.toFloat(this2)) + ", flags="; - var this3 = this.flags; - return tmp1 + Std.string(this3 == null ? null : _$UInt_UInt_$Impl_$.toFloat(this3)) + "]"; - } - ,__class__: openfl_utils__$AGALMiniAssembler_Register -}; -var openfl_utils__$AGALMiniAssembler_Sampler = function(name,flag,mask) { - this.name = name; - this.flag = flag; - this.mask = mask; -}; -$hxClasses["openfl.utils._AGALMiniAssembler.Sampler"] = openfl_utils__$AGALMiniAssembler_Sampler; -openfl_utils__$AGALMiniAssembler_Sampler.__name__ = "openfl.utils._AGALMiniAssembler.Sampler"; -openfl_utils__$AGALMiniAssembler_Sampler.prototype = { - flag: null - ,mask: null - ,name: null - ,toString: function() { - var this1 = this.flag; - var tmp = "[Sampler name=\"" + this.name + "\", flag=\"" + Std.string(this1 == null ? null : _$UInt_UInt_$Impl_$.toFloat(this1)) + "\", mask="; - var this2 = this.mask; - return tmp + Std.string(this2 == null ? null : _$UInt_UInt_$Impl_$.toFloat(this2)) + "]"; - } - ,__class__: openfl_utils__$AGALMiniAssembler_Sampler -}; -var openfl_utils_IAssetCache = function() { }; -$hxClasses["openfl.utils.IAssetCache"] = openfl_utils_IAssetCache; -openfl_utils_IAssetCache.__name__ = "openfl.utils.IAssetCache"; -openfl_utils_IAssetCache.__isInterface__ = true; -openfl_utils_IAssetCache.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__: openfl_utils_IAssetCache - ,__properties__: {set_enabled:"set_enabled",get_enabled:"get_enabled"} -}; -var openfl_utils_AssetCache = function() { - this.__enabled = true; - this.bitmapData = new haxe_ds_StringMap(); - this.font = new haxe_ds_StringMap(); - this.sound = new haxe_ds_StringMap(); -}; -$hxClasses["openfl.utils.AssetCache"] = openfl_utils_AssetCache; -openfl_utils_AssetCache.__name__ = "openfl.utils.AssetCache"; -openfl_utils_AssetCache.__interfaces__ = [openfl_utils_IAssetCache]; -openfl_utils_AssetCache.prototype = { - bitmapData: null - ,font: null - ,sound: null - ,__enabled: null - ,clear: function(prefix) { - if(prefix == null) { - this.bitmapData = new haxe_ds_StringMap(); - this.font = new haxe_ds_StringMap(); - this.sound = new haxe_ds_StringMap(); - } else { - var keys = this.bitmapData.keys(); - var key = keys; - while(key.hasNext()) { - var key1 = key.next(); - if(StringTools.startsWith(key1,prefix)) { - this.removeBitmapData(key1); - } - } - var keys1 = this.font.keys(); - var key2 = keys1; - while(key2.hasNext()) { - var key3 = key2.next(); - if(StringTools.startsWith(key3,prefix)) { - this.removeFont(key3); - } - } - var keys2 = this.sound.keys(); - var key4 = keys2; - while(key4.hasNext()) { - var key5 = key4.next(); - if(StringTools.startsWith(key5,prefix)) { - this.removeSound(key5); - } - } - } - } - ,getBitmapData: function(id) { - var _this = this.bitmapData; - if(__map_reserved[id] != null) { - return _this.getReserved(id); - } else { - return _this.h[id]; - } - } - ,getFont: function(id) { - var _this = this.font; - if(__map_reserved[id] != null) { - return _this.getReserved(id); - } else { - return _this.h[id]; - } - } - ,getSound: function(id) { - var _this = this.sound; - if(__map_reserved[id] != null) { - return _this.getReserved(id); - } else { - return _this.h[id]; - } - } - ,hasBitmapData: function(id) { - var _this = this.bitmapData; - if(__map_reserved[id] != null) { - return _this.existsReserved(id); - } else { - return _this.h.hasOwnProperty(id); - } - } - ,hasFont: function(id) { - var _this = this.font; - if(__map_reserved[id] != null) { - return _this.existsReserved(id); - } else { - return _this.h.hasOwnProperty(id); - } - } - ,hasSound: function(id) { - var _this = this.sound; - if(__map_reserved[id] != null) { - return _this.existsReserved(id); - } else { - return _this.h.hasOwnProperty(id); - } - } - ,removeBitmapData: function(id) { - lime_utils_Assets.cache.image.remove(id); - return this.bitmapData.remove(id); - } - ,removeFont: function(id) { - lime_utils_Assets.cache.font.remove(id); - return this.font.remove(id); - } - ,removeSound: function(id) { - lime_utils_Assets.cache.audio.remove(id); - return this.sound.remove(id); - } - ,setBitmapData: function(id,bitmapData) { - var _this = this.bitmapData; - if(__map_reserved[id] != null) { - _this.setReserved(id,bitmapData); - } else { - _this.h[id] = bitmapData; - } - } - ,setFont: function(id,font) { - var _this = this.font; - if(__map_reserved[id] != null) { - _this.setReserved(id,font); - } else { - _this.h[id] = font; - } - } - ,setSound: function(id,sound) { - var _this = this.sound; - if(__map_reserved[id] != null) { - _this.setReserved(id,sound); - } else { - _this.h[id] = sound; - } - } - ,get_enabled: function() { - return this.__enabled; - } - ,set_enabled: function(value) { - return this.__enabled = value; - } - ,__class__: openfl_utils_AssetCache - ,__properties__: {set_enabled:"set_enabled",get_enabled:"get_enabled"} -}; -var openfl_utils_Assets = function() { }; -$hxClasses["openfl.utils.Assets"] = openfl_utils_Assets; -openfl_utils_Assets.__name__ = "openfl.utils.Assets"; -openfl_utils_Assets.addEventListener = function(type,listener,useCapture,priority,useWeakReference) { - if(useWeakReference == null) { - useWeakReference = false; - } - if(priority == null) { - priority = 0; - } - if(useCapture == null) { - useCapture = false; - } - if(!lime_utils_Assets.onChange.has(openfl_utils_Assets.LimeAssets_onChange)) { - lime_utils_Assets.onChange.add(openfl_utils_Assets.LimeAssets_onChange); - } - openfl_utils_Assets.dispatcher.addEventListener(type,listener,useCapture,priority,useWeakReference); -}; -openfl_utils_Assets.dispatchEvent = function(event) { - return openfl_utils_Assets.dispatcher.dispatchEvent(event); -}; -openfl_utils_Assets.exists = function(id,type) { - return lime_utils_Assets.exists(id,type); -}; -openfl_utils_Assets.getBitmapData = function(id,useCache) { - if(useCache == null) { - useCache = true; - } - if(useCache && openfl_utils_Assets.cache.get_enabled() && openfl_utils_Assets.cache.hasBitmapData(id)) { - var bitmapData = openfl_utils_Assets.cache.getBitmapData(id); - if(openfl_utils_Assets.isValidBitmapData(bitmapData)) { - return bitmapData; - } - } - var image = lime_utils_Assets.getImage(id,false); - if(image != null) { - var bitmapData1 = openfl_display_BitmapData.fromImage(image); - if(useCache && openfl_utils_Assets.cache.get_enabled()) { - openfl_utils_Assets.cache.setBitmapData(id,bitmapData1); - } - return bitmapData1; - } - return null; -}; -openfl_utils_Assets.getBytes = function(id) { - return openfl_utils__$ByteArray_ByteArray_$Impl_$.fromBytes(lime_utils_Assets.getBytes(id)); -}; -openfl_utils_Assets.getFont = function(id,useCache) { - if(useCache == null) { - useCache = true; - } - if(useCache && openfl_utils_Assets.cache.get_enabled() && openfl_utils_Assets.cache.hasFont(id)) { - return openfl_utils_Assets.cache.getFont(id); - } - var limeFont = lime_utils_Assets.getFont(id,false); - if(limeFont != null) { - var font = new openfl_text_Font(); - font.__fromLimeFont(limeFont); - if(useCache && openfl_utils_Assets.cache.get_enabled()) { - openfl_utils_Assets.cache.setFont(id,font); - } - return font; - } - return new openfl_text_Font(); -}; -openfl_utils_Assets.getLibrary = function(name) { - return lime_utils_Assets.getLibrary(name); -}; -openfl_utils_Assets.getMovieClip = function(id) { - var libraryName = id.substring(0,id.indexOf(":")); - var symbolName = HxOverrides.substr(id,id.indexOf(":") + 1,null); - var limeLibrary = openfl_utils_Assets.getLibrary(libraryName); - if(limeLibrary != null) { - if(((limeLibrary) instanceof openfl_utils_AssetLibrary)) { - var library = limeLibrary; - if(library.exists(symbolName,"MOVIE_CLIP")) { - if(library.isLocal(symbolName,"MOVIE_CLIP")) { - return library.getMovieClip(symbolName); - } else { - lime_utils_Log.error("MovieClip asset \"" + id + "\" exists, but only asynchronously",{ fileName : "openfl/utils/Assets.hx", lineNumber : 207, className : "openfl.utils.Assets", methodName : "getMovieClip"}); - return null; - } - } - } - lime_utils_Log.error("There is no MovieClip asset with an ID of \"" + id + "\"",{ fileName : "openfl/utils/Assets.hx", lineNumber : 213, className : "openfl.utils.Assets", methodName : "getMovieClip"}); - } else { - lime_utils_Log.error("There is no asset library named \"" + libraryName + "\"",{ fileName : "openfl/utils/Assets.hx", lineNumber : 217, className : "openfl.utils.Assets", methodName : "getMovieClip"}); - } - return null; -}; -openfl_utils_Assets.getMusic = function(id,useCache) { - if(useCache == null) { - useCache = true; - } - return openfl_utils_Assets.getSound(id,useCache); -}; -openfl_utils_Assets.getPath = function(id) { - return lime_utils_Assets.getPath(id); -}; -openfl_utils_Assets.getSound = function(id,useCache) { - if(useCache == null) { - useCache = true; - } - if(useCache && openfl_utils_Assets.cache.get_enabled() && openfl_utils_Assets.cache.hasSound(id)) { - var sound = openfl_utils_Assets.cache.getSound(id); - if(openfl_utils_Assets.isValidSound(sound)) { - return sound; - } - } - var buffer = lime_utils_Assets.getAudioBuffer(id,false); - if(buffer != null) { - var sound1 = openfl_media_Sound.fromAudioBuffer(buffer); - if(useCache && openfl_utils_Assets.cache.get_enabled()) { - openfl_utils_Assets.cache.setSound(id,sound1); - } - return sound1; - } - return null; -}; -openfl_utils_Assets.getText = function(id) { - return lime_utils_Assets.getText(id); -}; -openfl_utils_Assets.hasEventListener = function(type) { - return openfl_utils_Assets.dispatcher.hasEventListener(type); -}; -openfl_utils_Assets.hasLibrary = function(name) { - return lime_utils_Assets.hasLibrary(name); -}; -openfl_utils_Assets.isLocal = function(id,type,useCache) { - if(useCache == null) { - useCache = true; - } - if(useCache && openfl_utils_Assets.cache.get_enabled()) { - if(type == "IMAGE" || type == null) { - if(openfl_utils_Assets.cache.hasBitmapData(id)) { - return true; - } - } - if(type == "FONT" || type == null) { - if(openfl_utils_Assets.cache.hasFont(id)) { - return true; - } - } - if(type == "SOUND" || type == "MUSIC" || type == null) { - if(openfl_utils_Assets.cache.hasSound(id)) { - return true; - } - } - } - var libraryName = id.substring(0,id.indexOf(":")); - var symbolName = HxOverrides.substr(id,id.indexOf(":") + 1,null); - var library = openfl_utils_Assets.getLibrary(libraryName); - if(library != null) { - return library.isLocal(symbolName,type); - } - return false; -}; -openfl_utils_Assets.isValidBitmapData = function(bitmapData) { - return bitmapData != null && bitmapData.image != null; -}; -openfl_utils_Assets.isValidSound = function(sound) { - return true; -}; -openfl_utils_Assets.list = function(type) { - return lime_utils_Assets.list(type); -}; -openfl_utils_Assets.loadBitmapData = function(id,useCache) { - if(useCache == null) { - useCache = true; - } - if(useCache == null) { - useCache = true; - } - var promise = new lime_app_Promise(); - if(useCache && openfl_utils_Assets.cache.get_enabled() && openfl_utils_Assets.cache.hasBitmapData(id)) { - var bitmapData = openfl_utils_Assets.cache.getBitmapData(id); - if(openfl_utils_Assets.isValidBitmapData(bitmapData)) { - promise.complete(bitmapData); - return promise.future; - } - } - lime_utils_Assets.loadImage(id,false).onComplete(function(image) { - if(image != null) { - var bitmapData1 = openfl_display_BitmapData.fromImage(image); - if(useCache && openfl_utils_Assets.cache.get_enabled()) { - openfl_utils_Assets.cache.setBitmapData(id,bitmapData1); - } - promise.complete(bitmapData1); - } else { - promise.error("[Assets] Could not load Image \"" + id + "\""); - } - }).onError($bind(promise,promise.error)).onProgress($bind(promise,promise.progress)); - return promise.future; -}; -openfl_utils_Assets.loadBytes = function(id) { - var promise = new lime_app_Promise(); - var future = lime_utils_Assets.loadBytes(id); - future.onComplete(function(bytes) { - promise.complete(openfl_utils__$ByteArray_ByteArray_$Impl_$.fromBytes(bytes)); - }); - future.onProgress(function(progress,total) { - promise.progress(progress,total); - }); - future.onError(function(msg) { - promise.error(msg); - }); - return promise.future; -}; -openfl_utils_Assets.loadFont = function(id,useCache) { - if(useCache == null) { - useCache = true; - } - if(useCache == null) { - useCache = true; - } - var promise = new lime_app_Promise(); - if(useCache && openfl_utils_Assets.cache.get_enabled() && openfl_utils_Assets.cache.hasFont(id)) { - var tmp = openfl_utils_Assets.cache.getFont(id); - promise.complete(tmp); - return promise.future; - } - lime_utils_Assets.loadFont(id).onComplete(function(limeFont) { - var font = new openfl_text_Font(); - font.__fromLimeFont(limeFont); - if(useCache && openfl_utils_Assets.cache.get_enabled()) { - openfl_utils_Assets.cache.setFont(id,font); - } - promise.complete(font); - }).onError($bind(promise,promise.error)).onProgress($bind(promise,promise.progress)); - return promise.future; -}; -openfl_utils_Assets.loadLibrary = function(name) { - return lime_utils_Assets.loadLibrary(name).then(function(library) { - var _library = null; - if(library != null) { - if(((library) instanceof openfl_utils_AssetLibrary)) { - _library = library; - } else { - _library = new openfl_utils_AssetLibrary(); - _library.__proxy = library; - lime_utils_Assets.registerLibrary(name,_library); - } - } - return lime_app_Future.withValue(_library); - }); -}; -openfl_utils_Assets.loadMusic = function(id,useCache) { - if(useCache == null) { - useCache = true; - } - if(useCache == null) { - useCache = true; - } - var future = new lime_app_Future(function() { - return openfl_utils_Assets.getMusic(id,useCache); - }); - return future; -}; -openfl_utils_Assets.loadMovieClip = function(id) { - var promise = new lime_app_Promise(); - var libraryName = id.substring(0,id.indexOf(":")); - var symbolName = HxOverrides.substr(id,id.indexOf(":") + 1,null); - var limeLibrary = openfl_utils_Assets.getLibrary(libraryName); - if(limeLibrary != null) { - if(((limeLibrary) instanceof openfl_utils_AssetLibrary)) { - var library = limeLibrary; - if(library.exists(symbolName,"MOVIE_CLIP")) { - promise.completeWith(library.loadMovieClip(symbolName)); - return promise.future; - } - } - promise.error("[Assets] There is no MovieClip asset with an ID of \"" + id + "\""); - } else { - promise.error("[Assets] There is no asset library named \"" + libraryName + "\""); - } - return promise.future; -}; -openfl_utils_Assets.loadSound = function(id,useCache) { - if(useCache == null) { - useCache = true; - } - if(useCache == null) { - useCache = true; - } - var promise = new lime_app_Promise(); - lime_utils_Assets.loadAudioBuffer(id,useCache).onComplete(function(buffer) { - if(buffer != null) { - var sound = openfl_media_Sound.fromAudioBuffer(buffer); - if(useCache && openfl_utils_Assets.cache.get_enabled()) { - openfl_utils_Assets.cache.setSound(id,sound); - } - promise.complete(sound); - } else { - promise.error("[Assets] Could not load Sound \"" + id + "\""); - } - }).onError($bind(promise,promise.error)).onProgress($bind(promise,promise.progress)); - return promise.future; -}; -openfl_utils_Assets.loadText = function(id) { - var future = lime_utils_Assets.loadText(id); - return future; -}; -openfl_utils_Assets.registerLibrary = function(name,library) { - lime_utils_Assets.registerLibrary(name,library); -}; -openfl_utils_Assets.removeEventListener = function(type,listener,capture) { - if(capture == null) { - capture = false; - } - openfl_utils_Assets.dispatcher.removeEventListener(type,listener,capture); -}; -openfl_utils_Assets.resolveClass = function(name) { - return $hxClasses[name]; -}; -openfl_utils_Assets.resolveEnum = function(name) { - var value = $hxEnums[name]; - return value; -}; -openfl_utils_Assets.unloadLibrary = function(name) { - lime_utils_Assets.unloadLibrary(name); -}; -openfl_utils_Assets.LimeAssets_onChange = function() { - openfl_utils_Assets.dispatchEvent(new openfl_events_Event("change")); -}; -var openfl_utils__$ByteArray_ByteArray_$Impl_$ = {}; -$hxClasses["openfl.utils._ByteArray.ByteArray_Impl_"] = openfl_utils__$ByteArray_ByteArray_$Impl_$; -openfl_utils__$ByteArray_ByteArray_$Impl_$.__name__ = "openfl.utils._ByteArray.ByteArray_Impl_"; -openfl_utils__$ByteArray_ByteArray_$Impl_$.__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"}; -openfl_utils__$ByteArray_ByteArray_$Impl_$._new = function(length) { - if(length == null) { - length = 0; - } - var this1 = new openfl_utils_ByteArrayData(length); - return this1; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.clear = function(this1) { - this1.clear(); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.compress = function(this1,algorithm) { - this1.compress(algorithm); - return; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.deflate = function(this1) { - this1.deflate(); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.fromArrayBuffer = function(buffer) { - if(buffer == null) { - return null; - } - return openfl_utils_ByteArrayData.fromBytes(haxe_io_Bytes.ofData(buffer)); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.fromBytes = function(bytes) { - if(bytes == null) { - return null; - } - if(((bytes) instanceof openfl_utils_ByteArrayData)) { - return bytes; - } else { - return openfl_utils_ByteArrayData.fromBytes(bytes); - } -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.fromBytesData = function(bytesData) { - if(bytesData == null) { - return null; - } - return openfl_utils_ByteArrayData.fromBytes(haxe_io_Bytes.ofData(bytesData)); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.fromFile = function(path) { - return openfl_utils__$ByteArray_ByteArray_$Impl_$.fromBytes(lime_utils__$Bytes_Bytes_$Impl_$.fromFile(path)); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.fromLimeBytes = function(bytes) { - return openfl_utils__$ByteArray_ByteArray_$Impl_$.fromBytes(bytes); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.get = function(this1,index) { - return this1.b[index]; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.inflate = function(this1) { - this1.inflate(); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.loadFromBytes = function(bytes) { - return lime_utils__$Bytes_Bytes_$Impl_$.loadFromBytes(bytes).then(function(limeBytes) { - var byteArray = openfl_utils__$ByteArray_ByteArray_$Impl_$.fromBytes(limeBytes); - return lime_app_Future.withValue(byteArray); - }); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.loadFromFile = function(path) { - return lime_utils__$Bytes_Bytes_$Impl_$.loadFromFile(path).then(function(limeBytes) { - var byteArray = openfl_utils__$ByteArray_ByteArray_$Impl_$.fromBytes(limeBytes); - return lime_app_Future.withValue(byteArray); - }); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.readBoolean = function(this1) { - return this1.readBoolean(); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.readByte = function(this1) { - return this1.readByte(); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.readBytes = function(this1,bytes,offset,length) { - if(length == null) { - length = 0; - } - if(offset == null) { - offset = 0; - } - this1.readBytes(bytes,offset,length); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.readDouble = function(this1) { - return this1.readDouble(); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.readFloat = function(this1) { - return this1.readFloat(); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.readInt = function(this1) { - return this1.readInt(); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.readMultiByte = function(this1,length,charSet) { - return this1.readMultiByte(length,charSet); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.readObject = function(this1) { - return this1.readObject(); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.readShort = function(this1) { - return this1.readShort(); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.readUTF = function(this1) { - return this1.readUTF(); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.readUTFBytes = function(this1,length) { - return this1.readUTFBytes(length); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.readUnsignedByte = function(this1) { - return this1.readUnsignedByte(); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.readUnsignedInt = function(this1) { - return this1.readUnsignedInt(); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.readUnsignedShort = function(this1) { - return this1.readUnsignedShort(); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.set = function(this1,index,value) { - this1.__resize(index + 1); - this1.b[index] = value & 255; - return value; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.toArrayBuffer = function(byteArray) { - return byteArray.b.bufferValue; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.toBytePointer = function(byteArray) { - lime_utils__$BytePointer_BytePointer_$Impl_$.set(openfl_utils__$ByteArray_ByteArray_$Impl_$.__bytePointer,byteArray,null,null,byteArray.position); - return openfl_utils__$ByteArray_ByteArray_$Impl_$.__bytePointer; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.toBytes = function(byteArray) { - return byteArray; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.toBytesData = function(byteArray) { - return byteArray.b.bufferValue; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.toLimeBytes = function(byteArray) { - return openfl_utils__$ByteArray_ByteArray_$Impl_$.toBytes(openfl_utils__$ByteArray_ByteArray_$Impl_$.fromBytes(openfl_utils__$ByteArray_ByteArray_$Impl_$.toBytes(byteArray))); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.toString = function(this1) { - return this1.toString(); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.uncompress = function(this1,algorithm) { - this1.uncompress(algorithm); - return; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.writeBoolean = function(this1,value) { - this1.writeBoolean(value); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.writeByte = function(this1,value) { - this1.writeByte(value); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.writeBytes = function(this1,bytes,offset,length) { - if(length == null) { - length = 0; - } - if(offset == null) { - offset = 0; - } - this1.writeBytes(bytes,offset,length); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.writeDouble = function(this1,value) { - this1.writeDouble(value); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.writeFloat = function(this1,value) { - this1.writeFloat(value); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.writeInt = function(this1,value) { - this1.writeInt(value); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.writeMultiByte = function(this1,value,charSet) { - this1.writeMultiByte(value,charSet); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.writeObject = function(this1,object) { - this1.writeObject(object); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.writeShort = function(this1,value) { - this1.writeShort(value); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.writeUTF = function(this1,value) { - this1.writeUTF(value); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.writeUTFBytes = function(this1,value) { - this1.writeUTFBytes(value); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.writeUnsignedInt = function(this1,value) { - this1.writeUnsignedInt(value); -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.get_bytesAvailable = function(this1) { - return this1.length - this1.position; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.get_defaultEndian = function() { - if(openfl_utils_ByteArrayData.__defaultEndian == null) { - if(lime_system_System.get_endianness() == lime_system_Endian.LITTLE_ENDIAN) { - openfl_utils_ByteArrayData.__defaultEndian = 1; - } else { - openfl_utils_ByteArrayData.__defaultEndian = 0; - } - } - return openfl_utils_ByteArrayData.__defaultEndian; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.set_defaultEndian = function(value) { - return openfl_utils_ByteArrayData.__defaultEndian = value; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.get_defaultObjectEncoding = function() { - return openfl_utils_ByteArrayData.defaultObjectEncoding; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.set_defaultObjectEncoding = function(value) { - return openfl_utils_ByteArrayData.defaultObjectEncoding = value; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.get_endian = function(this1) { - return this1.__endian; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.set_endian = function(this1,value) { - return this1.__endian = value; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.get_length = function(this1) { - if(this1 == null) { - return 0; - } else { - return this1.length; - } -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.set_length = function(this1,value) { - if(value > 0) { - this1.__resize(value); - if(value < this1.position) { - this1.position = value; - } - } - this1.length = value; - return value; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.get_objectEncoding = function(this1) { - return this1.objectEncoding; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.set_objectEncoding = function(this1,value) { - return this1.objectEncoding = value; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.get_position = function(this1) { - return this1.position; -}; -openfl_utils__$ByteArray_ByteArray_$Impl_$.set_position = function(this1,value) { - return this1.position = value; -}; -var openfl_utils__$CompressionAlgorithm_CompressionAlgorithm_$Impl_$ = {}; -$hxClasses["openfl.utils._CompressionAlgorithm.CompressionAlgorithm_Impl_"] = openfl_utils__$CompressionAlgorithm_CompressionAlgorithm_$Impl_$; -openfl_utils__$CompressionAlgorithm_CompressionAlgorithm_$Impl_$.__name__ = "openfl.utils._CompressionAlgorithm.CompressionAlgorithm_Impl_"; -openfl_utils__$CompressionAlgorithm_CompressionAlgorithm_$Impl_$.fromString = function(value) { - switch(value) { - case "deflate": - return 0; - case "lzma": - return 1; - case "zlib": - return 2; - default: - return null; - } -}; -openfl_utils__$CompressionAlgorithm_CompressionAlgorithm_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "deflate"; - case 1: - return "lzma"; - case 2: - return "zlib"; - default: - return null; - } -}; -var openfl_utils__$Endian_Endian_$Impl_$ = {}; -$hxClasses["openfl.utils._Endian.Endian_Impl_"] = openfl_utils__$Endian_Endian_$Impl_$; -openfl_utils__$Endian_Endian_$Impl_$.__name__ = "openfl.utils._Endian.Endian_Impl_"; -openfl_utils__$Endian_Endian_$Impl_$.fromLimeEndian = function(value) { - switch(value._hx_index) { - case 0: - return 1; - case 1: - return 0; - } -}; -openfl_utils__$Endian_Endian_$Impl_$.fromString = function(value) { - switch(value) { - case "bigEndian": - return 0; - case "littleEndian": - return 1; - default: - return null; - } -}; -openfl_utils__$Endian_Endian_$Impl_$.toLimeEndian = function(this1) { - switch(this1) { - case 0: - return lime_system_Endian.BIG_ENDIAN; - case 1: - return lime_system_Endian.LITTLE_ENDIAN; - default: - return null; - } -}; -openfl_utils__$Endian_Endian_$Impl_$.toString = function(this1) { - switch(this1) { - case 0: - return "bigEndian"; - case 1: - return "littleEndian"; - default: - return null; - } -}; -var openfl_utils__$Object_Object_$Impl_$ = {}; -$hxClasses["openfl.utils._Object.Object_Impl_"] = openfl_utils__$Object_Object_$Impl_$; -openfl_utils__$Object_Object_$Impl_$.__name__ = "openfl.utils._Object.Object_Impl_"; -openfl_utils__$Object_Object_$Impl_$._new = function() { - var this1 = { }; - return this1; -}; -openfl_utils__$Object_Object_$Impl_$.hasOwnProperty = function(this1,name) { - if(this1 != null) { - return Object.prototype.hasOwnProperty.call(this1,name); - } else { - return false; - } -}; -openfl_utils__$Object_Object_$Impl_$.isPrototypeOf = function(this1,theClass) { - var c = js_Boot.getClass(this1); - while(c != null) { - if(c == theClass) { - return true; - } - c = c.__super__; - } - return false; -}; -openfl_utils__$Object_Object_$Impl_$.iterator = function(this1) { - var fields = Reflect.fields(this1); - if(fields == null) { - fields = []; - } - return HxOverrides.iter(fields); -}; -openfl_utils__$Object_Object_$Impl_$.propertyIsEnumerable = function(this1,name) { - if(this1 != null && Object.prototype.hasOwnProperty.call(this1,name)) { - return js_Boot.__implements(Reflect.field(this1,name),haxe_lang_Iterable); - } else { - return false; - } -}; -openfl_utils__$Object_Object_$Impl_$.toLocaleString = function(this1) { - return Std.string(this1); -}; -openfl_utils__$Object_Object_$Impl_$.toString = function(this1) { - return Std.string(this1); -}; -openfl_utils__$Object_Object_$Impl_$.valueOf = function(this1) { - return this1; -}; -openfl_utils__$Object_Object_$Impl_$.__get = function(this1,key) { - return Reflect.field(this1,key); -}; -openfl_utils__$Object_Object_$Impl_$.__set = function(this1,key,value) { - this1[key] = value; - return value; -}; -var haxe_lang_Iterator = function() { }; -$hxClasses["haxe.lang.Iterator"] = haxe_lang_Iterator; -haxe_lang_Iterator.__name__ = "haxe.lang.Iterator"; -haxe_lang_Iterator.__isInterface__ = true; -haxe_lang_Iterator.prototype = { - hasNext: null - ,next: null - ,__class__: haxe_lang_Iterator -}; -var haxe_lang_Iterable = function() { }; -$hxClasses["haxe.lang.Iterable"] = haxe_lang_Iterable; -haxe_lang_Iterable.__name__ = "haxe.lang.Iterable"; -haxe_lang_Iterable.__isInterface__ = true; -haxe_lang_Iterable.prototype = { - iterator: null - ,__class__: haxe_lang_Iterable -}; -function $getIterator(o) { if( o instanceof Array ) return HxOverrides.iter(o); else return o.iterator(); } -function $bind(o,m) { if( m == null ) return null; if( m.__id__ == null ) m.__id__ = $global.$haxeUID++; var f; if( o.hx__closures__ == null ) o.hx__closures__ = {}; else f = o.hx__closures__[m.__id__]; if( f == null ) { f = m.bind(o); o.hx__closures__[m.__id__] = f; } return f; } -$global.$haxeUID |= 0; -var init = lime__$internal_backend_html5_HTML5Application; -var init = lime_app_Application; -var __map_reserved = {}; -haxe_ds_ObjectMap.count = 0; -$hxClasses["Math"] = Math; -if( String.fromCodePoint == null ) String.fromCodePoint = function(c) { return c < 0x10000 ? String.fromCharCode(c) : String.fromCharCode((c>>10)+0xD7C0)+String.fromCharCode((c&0x3FF)+0xDC00); } -String.prototype.__class__ = $hxClasses["String"] = String; -String.__name__ = "String"; -$hxClasses["Array"] = Array; -Array.__name__ = "Array"; -Date.prototype.__class__ = $hxClasses["Date"] = Date; -Date.__name__ = "Date"; -var Int = { }; -var Dynamic = { }; -var Float = Number; -var Bool = Boolean; -var Class = { }; -var Enum = { }; -js_Boot.__toStr = ({ }).toString; -Object.defineProperty(js__$Boot_HaxeError.prototype,"message",{ get : function() { - return String(this.val); -}}); -haxe_Resource.content = [{ name : "__ASSET__:bitmap_flixel_system_debug_stats__Stats_GraphicMaximizeButton", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFvQUFBQUtDQVlBQUFDTk1zKzlBQUFBQm1KTFIwUUEvd0QvQVArZ3ZhZVRBQUFBQ1hCSVdYTUFBQUIyQUFBQWRnRk9leVlJQUFBQUIzUkpUVVVIM2dNSkNSOFVCaGtEeVFBQUFFOUpSRUZVR05PdGtFRVN3REFJQW92Ly8vUDJvb2FhOUJaUFpvQXdxd0NlTlpMVUQ5ZkNIVzc2VFkyZmR3MklVOVVwZUhlVU5kMVlBRm5kTUFGUW1ndTV0eGFWM202VDV5bW9EL0gwT3ZrTFNBOUI4bis0Y2pvQUFBQUFTVVZPUks1Q1lJST0"},{ name : "__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorScaleX", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFvQUFBQUtDQVlBQUFDTk1zKzlBQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUFUZ0FBQUU0QnNjMGZNd0FBQUJ4MFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1JtbHlaWGR2Y210eklFTlROdWk4c293QUFBQlBTVVJCVkJpVmpWQkJEc0F3Q0FLMy8vKzRZNWV5R05hREpoNVVCSlNTTUlrYW9RSW9BSXk1aktrOXRENWJHcmdBRkRVMGVZZGtMbjFXdUFsWHM5SGpzUlVmY3lWRHE4dlNQNWxUYi96SEY2VW9FeGRNWXJPSEFBQUFBRWxGVGtTdVFtQ0M"},{ name : "__ASSET__:bitmap_flixel_system_GraphicLogo", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUdRQUFBQmtDQVlBQUFCdzRwVlVBQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBS1QybERRMUJRYUc5MGIzTm9iM0FnU1VORElIQnliMlpwYkdVQUFIamFuVk5uVkZQcEZqMzMzdlJDUzRpQWxFdHZVaFVJSUZKQ2k0QVVrU1lxSVFrUVNvZ2hvZGtWVWNFUlJVVUVHOGlnaUFPT2pvQ01GVkVzRElvSzJBZmtJYUtPZzZPSWlzcjc0WHVqYTlhODkrYk4vclhYUHVlczg1Mnp6d2ZBQ0F5V1NETlJOWUFNcVVJZUVlQ0R4OFRHNGVRdVFJRUtKSEFBRUFpelpDRnovU01CQVBoK1BEd3JJc0FIdmdBQmVOTUxDQURBVFp2QU1CeUgvdy9xUXBsY0FZQ0VBY0Iwa1RoTENJQVVBRUI2amtLbUFFQkdBWUNkbUNaVEFLQUVBR0RMWTJMakFGQXRBR0FuZitiVEFJQ2QrSmw3QVFCYmxDRVZBYUNSQUNBVFpZaEVBR2c3QUt6UFZvcEZBRmd3QUJSbVM4UTVBTmd0QURCSlYyWklBTEMzQU1ET0VBdXlBQWdNQURCUmlJVXBBQVI3QUdESUl5TjRBSVNaQUJSRzhsYzg4U3V1RU9jcUFBQjRtYkk4dVNRNVJZRmJDQzF4QjFkWExoNG96a2tYS3hRMllRSmhta0F1d25tWkdUS0JOQS9nODh3QUFLQ1JGUkhnZy9QOWVNNE9yczdPTm82MkRsOHQ2cjhHL3lKaVl1UCs1YytyY0VBQUFPRjBmdEgrTEMrekdvQTdCb0J0L3FJbDdnUm9YZ3VnZGZlTFpySVBRTFVBb09uYVYvTncrSDQ4UEVXaGtMbloyZVhrNU5oS3hFSmJZY3BYZmY1bndsL0FWLzFzK1g0OC9QZjE0TDdpSklFeVhZRkhCUGpnd3N6MFRLVWN6NUlKaEdMYzVvOUgvTGNMLy93ZDB5TEVTV0s1V0NvVTQxRVNjWTVFbW96ek1xVWlpVUtTS2NVbDB2OWs0dDhzK3dNKzN6VUFzR28rQVh1UkxhaGRZd1AyU3ljUVdIVEE0dmNBQVBLN2I4SFVLQWdEZ0dpRDRjOTMvKzgvL1VlZ0pRQ0Faa21TY1FBQVhrUWtMbFRLc3ovSENBQUFSS0NCS3JCQkcvVEJHQ3pBQmh6QkJkekJDL3hnTm9SQ0pNVENRaEJDQ21TQUhISmdLYXlDUWlpR3piQWRLbUF2MUVBZE5NQlJhSWFUY0E0dXdsVzREajF3RC9waENKN0JLTHlCQ1FSQnlBZ1RZU0hhaUFGaWlsZ2pqZ2dYbVlYNEljRklCQktMSkNESmlCUlJJa3VSTlVneFVvcFVJRlZJSGZJOWNnSTVoMXhHdXBFN3lBQXlndnlHdkVjeGxJR3lVVDNVRExWRHVhZzNHb1JHb2d2UVpIUXhtbzhXb0p2UWNyUWFQWXcyb2VmUXEyZ1AybzgrUThjd3dPZ1lCelBFYkRBdXhzTkNzVGdzQ1pOank3RWlyQXlyeGhxd1Zxd0R1NG4xWTgreGR3UVNnVVhBQ1RZRWQwSWdZUjVCU0ZoTVdFN1lTS2dnSENRMEVkb0pOd2tEaEZIQ0p5S1RxRXUwSnJvUitjUVlZakl4aDFoSUxDUFdFbzhUTHhCN2lFUEVOeVFTaVVNeUo3bVFBa214cEZUU0V0SkcwbTVTSStrc3FaczBTQm9qazhuYVpHdXlCem1VTENBcnlJWGtuZVRENURQa0crUWg4bHNLbldKQWNhVDRVK0lvVXNwcVNobmxFT1UwNVFabG1ESkJWYU9hVXQyb29WUVJOWTlhUXEyaHRsS3ZVWWVvRXpSMW1qbk5neFpKUzZXdG9wWFRHbWdYYVBkcHIraDB1aEhkbFI1T2w5Qlgwc3ZwUitpWDZBUDBkd3dOaGhXRHg0aG5LQm1iR0FjWVp4bDNHSytZVEtZWjA0c1p4MVF3TnpIcm1PZVpENWx2VlZncXRpcDhGWkhLQ3BWS2xTYVZHeW92VkttcXBxcmVxZ3RWODFYTFZJK3BYbE45cmtaVk0xUGpxUW5VbHF0VnFwMVE2MU1iVTJlcE82aUhxbWVvYjFRL3BINVovWWtHV2NOTXcwOURwRkdnc1YvanZNWWdDMk1aczNnc0lXc05xNFoxZ1RYRUpySE4yWHgyS3J1WS9SMjdpejJxcWFFNVF6TktNMWV6VXZPVVpqOEg0NWh4K0p4MFRnbm5LS2VYODM2SzNoVHZLZUlwRzZZMFRMa3haVnhycXBhWGxsaXJTS3RScTBmcnZUYXU3YWVkcHIxRnUxbjdnUTVCeDBvblhDZEhaNC9PQlozblU5bFQzYWNLcHhaTlBUcjFyaTZxYTZVYm9idEVkNzl1cCs2WW5yNWVnSjVNYjZmZWViM24raHg5TC8xVS9XMzZwL1ZIREZnR3N3d2tCdHNNemhnOHhUVnhiendkTDhmYjhWRkRYY05BUTZWaGxXR1g0WVNSdWRFOG85VkdqVVlQakduR1hPTWs0MjNHYmNhakpnWW1JU1pMVGVwTjdwcFNUYm1tS2FZN1REdE14ODNNemFMTjFwazFtejB4MXpMbm0rZWIxNXZmdDJCYWVGb3N0cWkydUdWSnN1UmFwbG51dHJ4dWhWbzVXYVZZVlZwZHMwYXRuYTBsMXJ1dHU2Y1JwN2xPazA2cm50Wm53N0R4dHNtMnFiY1pzT1hZQnR1dXRtMjJmV0ZuWWhkbnQ4V3V3KzZUdlpOOXVuMk4vVDBIRFlmWkRxc2RXaDErYzdSeUZEcFdPdDZhenB6dVAzM0Y5SmJwTDJkWXp4RFAyRFBqdGhQTEtjUnBuVk9iMDBkbkYyZTVjNFB6aUl1SlM0TExMcGMrTHBzYnh0M0l2ZVJLZFBWeFhlRjYwdldkbTdPYnd1Mm8yNi91TnU1cDdvZmNuOHcwbnltZVdUTnowTVBJUStCUjVkRS9DNStWTUd2ZnJINVBRMCtCWjdYbkl5OWpMNUZYcmRld3Q2VjNxdmRoN3hjKzlqNXluK00rNHp3MzNqTGVXVi9NTjhDM3lMZkxUOE52bmwrRjMwTi9JLzlrLzNyLzBRQ25nQ1VCWndPSmdVR0JXd0w3K0hwOEliK09QenJiWmZheTJlMUJqS0M1UVJWQmo0S3RndVhCclNGb3lPeVFyU0gzNTVqT2tjNXBEb1ZRZnVqVzBBZGg1bUdMdzM0TUo0V0hoVmVHUDQ1d2lGZ2EwVEdYTlhmUjNFTnozMFQ2UkpaRTNwdG5NVTg1cnkxS05TbytxaTVxUE5vM3VqUzZQOFl1WmxuTTFWaWRXRWxzU3h3NUxpcXVObTVzdnQvODdmT0g0cDNpQytON0Y1Z3Z5RjF3ZWFIT3d2U0ZweGFwTGhJc09wWkFUSWhPT0pUd1FSQXFxQmFNSmZJVGR5V09Dbm5DSGNKbklpL1JOdEdJMkVOY0toNU84a2dxVFhxUzdKRzhOWGtreFRPbExPVzVoQ2Vwa0x4TURVemRtenFlRnBwMklHMHlQVHE5TVlPU2taQnhRcW9oVFpPMlorcG41bVoyeTZ4bGhiTCt4VzZMdHk4ZWxRZkphN09RckFWWkxRcTJRcWJvVkZvbzF5b0hzbWRsVjJhL3pZbktPWmFybml2TjdjeXp5dHVRTjV6dm4vL3RFc0lTNFpLMnBZWkxWeTBkV09hOXJHbzVzanh4ZWRzSzR4VUZLNFpXQnF3OHVJcTJLbTNWVDZ2dFY1ZXVmcjBtZWsxcmdWN0J5b0xCdFFGcjZ3dFZDdVdGZmV2YzErMWRUMWd2V2QrMVlmcUduUnMrRlltS3JoVGJGNWNWZjlnbzNIamxHNGR2eXIrWjNKUzBxYXZFdVdUUFp0Sm02ZWJlTFo1YkRwYXFsK2FYRG00TjJkcTBEZDlXdE8zMTlrWGJMNWZOS051N2c3WkR1YU8vUExpOFphZkp6czA3UDFTa1ZQUlUrbFEyN3RMZHRXSFgrRzdSN2h0N3ZQWTA3TlhiVzd6My9UN0p2dHRWQVZWTjFXYlZaZnRKKzdQM1A2NkpxdW40bHZ0dFhhMU9iWEh0eHdQU0EvMEhJdzYyMTduVTFSM1NQVlJTajlZcjYwY094eCsrL3AzdmR5ME5OZzFWalp6RzRpTndSSG5rNmZjSjMvY2VEVHJhZG94N3JPRUgweDkySFdjZEwycENtdkthUnB0VG12dGJZbHU2VDh3KzBkYnEzbnI4UjlzZkQ1dzBQRmw1U3ZOVXlXbmE2WUxUazJmeXo0eWRsWjE5Zmk3NTNHRGJvclo3NTJQTzMyb1BiKys2RUhUaDBrWC9pK2M3dkR2T1hQSzRkUEt5MitVVFY3aFhtcTg2WDIzcWRPbzgvcFBUVDhlN25MdWFycmxjYTdudWVyMjFlMmIzNlJ1ZU44N2Q5TDE1OFJiLzF0V2VPVDNkdmZONmIvZkY5L1hmRnQxK2NpZjl6c3U3MlhjbjdxMjhUN3hmOUVEdFFkbEQzWWZWUDF2KzNOanYzSDlxd0hlZzg5SGNSL2NHaFlQUC9wSDFqdzlEQlkrWmo4dUdEWWJybmpnK09UbmlQM0w5NmZ5blE4OWt6eWFlRi82aS9zdXVGeFl2ZnZqVjY5Zk8wWmpSb1pmeWw1Ty9iWHlsL2VyQTZ4bXYyOGJDeGg2K3lYZ3pNVjcwVnZ2dHdYZmNkeDN2bzk4UFQrUjhJSDhvLzJqNXNmVlQwS2Y3a3htVGsvOEVBNWp6L0dNekxkc0FBQUFnWTBoU1RRQUFlaVVBQUlDREFBRDUvd0FBZ09rQUFIVXdBQURxWUFBQU9wZ0FBQmR2a2wvRlJnQUFCTTFKUkVGVWVOcnMyOCtMRzJVWXdQSFhabTZDdVhrMGRFMFRzVCtTbVQxb2Q1Rmsrd3ZwbXRHYmlFaE9YbFZRTDE0Q25rdjNYRVFESG9SQ1llbXBiS21kcE10U3dVejIxUE1jUlBCU2dwQmxZVWQ0UEd5em1VMDJ1L01tNzQvbm1mZDk0ZmtIOHVHYk4rL2tIUVpkRDVSTXgydkRqbHRnUkJjczNjanZsUnJ0dmJJUE1vY3BBK2w2QUIxM0FGMnZCYjNsUEMwSXZ6VXMrUVBaR09wQkNNR29odEFMY2d5bTJzU0dNU3o1emIyeUg2bUV3QUV5aG9rd3dPaUV3QVdTaEhubTFsUkQ3QmNidGIyU3Y2c1RBaWZJR0NaUUFiTmZiTlNHNVVhQUFRSTNTQkptMjYySS8ycjZxSUlOZ2dhSTREUE0vdm5iQlJWbmlleURMQWhEQVlJbUNPY1pSdGRad2l5UUZEQVVJZWlEekRoY0RrdCtreUpFZGtCZXpSL0JsYWh6NjJaRUZTSlRJTHRCQmZKYmIwTitzd2pQcjkyMElCZ3cyTllTc0swbDhpZ3NTeGhaUUdGWnc2Q093cktJa1p4N1gzeGdRV1RPNXRQTHFURW9vcEFDYVQrOXhBVkJFWVdaZ0VFSmhabUNRUVdGbVlSQkFZV1pob0VkaFptSWdSbUZtWXFCRllWQnh3MU14UmpORDkrOGp3amttVnN6R1dNMG4vL280UUJoakRIb2VHMlRNVENoSElMMGx2T3YvaEkxRmdNSlNqVCtIN3BiL1ZvSHhzYnZGOUZnNkVZWmx2emoxMmtQNzlpcXcyZytlUWNkaGthVWFQcmFqTUlOSGpPR0RwU3BPc2FWZUpzV1F6bEtOUHR5Mlk1YmtMbkJVOEpRaFRLemp2RUc3N1VzeGpUSzM5VjF0WFVjZ1J6K0RJNHN4dkc1L1BPN3dsSE9yR084d1ZjL3RoaVNVVXIrTHQrTGp3S2VjMlVKUXpUS2ZySEI5MUlTYkxzVml5RUhaVmh1QlBPOUh0ejFOaXlHZUJUdU9pWTIrSUhGRUljeWR4Mko1MXhOaXlFT1plNDZKamI0M2RNZ0JoMFhLbzh2R0lmQmk3SndIV21lYzVtT3dZTWlwSTdFYzY2MnhUaDkzdnF0UFBPU3Q3QTZabTN3Rm9QdjVyM1FPaWFmYzFrTVBoVGhkU1RYeTA0MXNoaDhLRkxxR0sxTHplZEI3bUhGZnVncFVSNnRYNWRYeDlVMXFLMnVBVlErZlFFV0pjVTh1UTI1UC8rUkI3SmFoMkIxRGNDaXBNVjRDVTRZZzlPUGE5THFTSTVGU1lFUnh1RDA0a0JxSGNrcGZ2WEFBcHlHTVJxUmxaeFVoMFhod0JCZHlhdzZMRXBLREpHVm5GV0hSVW1KSWFxU05IVVlqWklXUTBRbFBIVVlpY0tMc1dnbHZIV1loUEphOENVL3hpS1Z6RnRIY3M1Ly8wczJNVHJmemdleFNDV0wxSkdjTis5OFp6RVdyVVJFSFZsRUVZWVJ4cERyeFp2SzY4Z1Npa2lNMGJBK0ZKVFhrUVVVR1JoT0dFTXVQR2hycVlNeWlpeU1WSlhJcklNaWlteU1NeXVSWFFjbEZCVVlwMWFpcW83a3ZQSFRaOFpqekt4RVpSMmplZS9EZitIMVg5ZU54aml4RWgxMVlFVFJoVEZWaVk0NnNLSG94RGlxUkhjZFdGQXdZQnlCNks1RE53b1dEQ2VNQVUwZHVsQXdZVGhoREtqcVVJMkNEZU1RQkNIR2FKWS8rVXZhblMrTUdPaEJaRjNFdzRwQkFrUTB5cm50dTJneHlJQ0lRam0zY3g4MUJpbVFSVkVvWUpBRG1SZUZDZ1pKRUY0VVNoaGtRZEtpVU1NZ0RYTFdSVHlLR09SQlpxRlF4Y2dFeUNRS1pZek1nSXhRcUdOa0JtU2xEdTJWYTFCZ2ZTamt3b08yQmRFMWRRaXVyc0gwL2RnK1ZKeGVIRmdRM1JBVHkrbkhOV293ak5oWFU3UmFoeWJ2TFg1S01DekxFSk1yMS91dm1Rc1BJZ3N5LzFmVFlLVU9MZEh2MjJPR1laZ2hsbTlBbmtsY0dHRVlRb3dOMlJESFZnL3lUaGkzY21FOHNDQW5uU1YwTFNRd0RNTlBXSzBReUdBWTlyT0V0cVhwMVAvL0FOd29yczhWOE1oV0FBQUFBRWxGVGtTdVFtQ0M"},{ name : "__ASSET__:bitmap_flixel_system_debug_GraphicArrowRight", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUQ1SlJFRlVlTnBpK1AvLy96SWdqZ1JpQmtJWVJNQUFRVTNJaWdscXdxWVlweVo4aWpFME1mNEhheUVLTENmSlpJcmRURlJvRUJYT1JNY2dRSUFCQU1xdGZ6aUhGZ2JoQUFBQUFFbEZUa1N1UW1DQw"},{ name : "__ASSET__:bitmap_flixel_system_debug_GraphicWatch", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUlHTklVazBBQUhvbEFBQ0Fnd0FBK2Y4QUFJRHBBQUIxTUFBQTZtQUFBRHFZQUFBWGI1SmZ4VVlBQUFEY1NVUkJWSGphakpBaFM4TmhHTVIvZTFGWkdNSmd3U2FyVnNPS1dSSGJtcGo4Qkg0Q205L0JabDJ3R3NSZ0U5Um1GbHcwQ0NKWUxIZG44UDF2KzZ1SUIwOTU3cmk3NStrazRiOG9BTmdGZXhmN0d2c0ZlNHA5Z2oxb3FaTVFhVDlTSXQxSE9vNTBGdWs5MG1Xa2ZoS1N6TVRUU0xlUnVnMFI2VENTSXgwMHUxSUQxb0VIU3ZsWUNMMEJYb0ZodS9NWHNZYzlxamVzQWtkQXQzS3R6cHVSSGlPOVJicUtkRmR2T0krMDFOVG96RjVuYndEakd0c0hkb0JuWUp0U251Yk9peU90Uk9wRk9xM3VGeitkdjhOZUF5YkFNcVZzQVgrSWY4SG5BTlI0d3BRazlwRnhBQUFBQUVsRlRrU3VRbUND"},{ name : "__ASSET__:bitmap_flixel_system_debug_GraphicInteractive", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUxFZ0FBQ3hJQjB0MSsvQUFBQUJ4MFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1JtbHlaWGR2Y210eklFTlROdWk4c293QUFBQndTVVJCVkJpVmpaR3hEWUF3REFSZnpNSTYyU0JTT3RaZ0tBWmdBYW9NUVU5SmRSUUprUXVjOE5MTHNuVitGeGFnanFQdEovbUtrdVphaXpxSkFiaXJvNWNjSlYyU1ZqTXJGNXpFQXpockRXL3liOURDeXdpMDhFNlJDelk0NTR4WitBUWJuRkxDTEN6ZWt3UnNneTgyUDZENlFrZUFUREtHQUFBQUFFbEZUa1N1UW1DQw"},{ name : "__ASSET__:bitmap_flixel_system_GraphicVirtualInput", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQVk4QUFBQzNDQVlBQUFEcXhOS1RBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNNQUFBN0RBY2R2cUdRQUFJLzRTVVJCVkhoZTdWMEhlQlRWMm9aQVFocEo2RFVKRUZJZ0NUV0IwRU12Z3ZUUWV4VlJxaUJGQVJYcjlkcTc2RlV2WEFWQkZPV2lRRUxvSllRV0NFMUV4UUplRkZFUkNQRDkzM3QyWmptemV6YVp0TjBOZjg3enZNOU9kcy9NZWVma20vZWRjNzRwSllqSUZpV3RlT1MxYUVhY2t4Rmw0R0RQenhaRmw2OTd3TUFQeGZZN2hyVithbXBxOUpZdFcrS2NDVzR6ejMxODh1VEphRWFjay9IL0tpWWVlWXFpSDNtUzRweUtweWpQZlZ6VStMb0pEUHhFMmVBWEthQlZBRHhvMFN1ejZPR1hMOURDNTRubVA4ZjRwNVBBYlMxOGdVVGJpMTZaSkxob3ZDU2VPdXo1TG5tRkJCWTdDWHA3S3I3TmU1WUFlTm1lcndXbE5KUjJNdlIyZFI0V3Zsci9va3lkT2xWQS93MzFVbEpTWmlVbkoxOUlUdDVNeWNtYm5BeTBtWHlCT1JqNldPSnAxOGZIangrZnhiaVFtWG1NamgwNzZsU2dUYlROTVBCZHVuUnBDWUNYN2ZocWNLdVkwUHNYcFZiNEV3TDZiNmkzNkhHYTlmQlN1c0NmeEovMDhHTk9BcmVsdFltMkRYMnM4MndZWjRIK1Blcm9mQjk5aWdoZ1FYY0s5TFpVZkJuV3ZyWHRYdzF1RlJNNlQxRWs0N0FRZmZpbGoyZ0cvMmNTeHhIVjcwOFUxYys1UUp1ZEpoRE5RblF3bDlzN0lBU09QKzM1TG42WmFESkgxTkNIaUlZc2RDN1E1aFRtdW9RNTJQSzliUjYzK1ZyK01aNE1MdzFsbkF5OVhYRFFnOFRhdnlpU2NRak9MTm9mYmRyMEpYMzAwVWYwM252djBiLys5UytuQW0ydVdyV1NObTM2aXNBRm5EUnVRdUQ0MDhDWFJmdWpJMGNPMGJadHFiUng0MWYwMVZmT0JkcmN2bjBiWldRY2hva1krRXJtVVNSaVFqWVAvSzE5WDRxRjhLUDVTNGlTUmhGMXZwc1AyVjdPQmRvY01wWm93U05DbEExOURLNlNjVmo1TG4yR1pXVStTOFUwb2tuM094ZG9jemEzRFE0cXZyYjl5M0RibUxDYUIvN1F2aXhGaTE0ZVRiT2ZKR3FZcEJaMlp3SWN3QVdjSk9JYWJ2T0ZjWXg0bUdqd0F0Y0NITUFsTzc2V2Z3VCtNZDVkdW5TcEhSRVIwZHJaQ0FzTGE5V3paODhRY05DNGdKT1ZyMjFNc0ZpUDNyejVLL3JnZy9lVnd1NU1nQU80Z0JPNGFSd05mY3hpUFJxaXZXblRKcVd3T3hQZ29CbUlMVjk4Q3I2TUloY1RpNStnMFF0WnRIdmdQRThoN000RU9DeDhsQTg5NWdSdUdrZERUT0MzeDFpMDc1MUpOUEUrMXdJY1lDRFo4V1VVaVpoQVVPaUV2V2orODRlb3h6MUVrWDNkQTcybThLbkY4enNFTnd0SEdSYStVNTlRaTdrcmNEK2JuWm92bkJ2ZmVWZXJWcTFQNmRLbDk2RHJPMVlPb2I0MTZqb1Y3U3JWeElRbE1ZZHR3Y0hCWGNGSjR3YWVIcll4a1p5Y2ZHajE2bytWWXU0S3JGbXpHbE5ZRG1QaTJMRmpoM2J1M0s0VWMxZGcxNjRkeEp4a3ZySkEyTVZFZ3dZTktDRWh3YW1JaVluSlZVeXdjUndhTVpHb0k0dTNPMkEwUzlaRGo1RERtQURmT1F2Vll1NEtQTWpubVE3NEtuV2lXdlhXRkJMYXphbW9VaTBoeDVoQVVJZ09admhjZitEcExISEdyeEp5VnlCdUtQMDE2OG0vbVp0T0hBY2NPaGhPYU9FNzRpRVdiaDRQdWdQR0xITElsOCtXL2IyOXZkOUNsNy9icWlkZG5jMm5Id3VlSjVyM0hPT2ZUZ0szdGVBRjBmYUxjWjFGY1BqNStURUp3VmVjV2RqR3hJWU5HN0krK09BRHBaQzdBaXRXTEtjdnZ2akNZVXdjUG53NGEvTm0xNDg2ZEtTa0pGTjZlcnJPVitlS1QwTk1USnMyamY3NzMvOXErUjFWM3Fjd3NWbTBQWEhpUkZNeE1mZmg2MW5kKzdGdzkzUVA5R0xKZW1EQlh3NWpBbnp2bmM3Q1BkVTljTjhzeDN6bG1Halg4VVdhL2VEdjlOQ1NHN1J3eVUxYXVOaEo0TFllZXVTR2FMdEY2NlVPWXdKQmdUKzhmWHg4bnFMWi95Q0tnbkQzY1E4MFNxSkw5ejFHL3Y3K2p6RkhId2FDUVFTRWxTOUVlNUNiWVBoRDJmRjlFZDE5cUQrUHBxYTdPcWZFcDQwem5oQmN3RW5qS3dMRE5pWTJidHlvRkhGWEFVYTJkdTFhaHpGeDlPaFJwWWk3Q3BzM2I2YmR1M2ZiOGtWZlcyUGlsVmRlb1kwYmtWUDYwTVU1cFM4Rmw1eGlZaTZmT1dQS1NDWGtyZ0NtcnFiUHZlUXdKc0FYWi93VFdMamRBVlBZeUxMaEsySmk4UEFkTk8vaFc1UTAwb1U1cFRGOHZybm9sdUNpaWdrRWhWZEVSRVE4TDk2Z21VK3JSZHhWNEZIUW4xTWZCZkViVFpzMmpVWG5BdlhyMTI5bTVUdG9udnRnMkVMbSs1Z2QzOGpJeUJibzZpY2J0aVdhNlVZNXBWbFBDazRTWHk5ZU5zUUVCRkFsT0s0QzhoNmZmdnFwdzVqSXlNaFFpcmlyZ0x6SDNyMTdaYjQ0K0h4alltSmFsaXhaa2thT0hDbnlPTzZVVXdJbmlhOWRUTXpod1g2SHU5d0hHQVZObi9PSDRKeVFrTkFBOFFEb01RRytFKzUxSDl3ekRlWmh6emNxS2tyb1JGeXpCVFNmUmR0ZGNrcmdBazdnSzhjRWdvSkhTWlpoRWsxallWT0p1S3ZBQW5mMW5rZEFtbng5ZmQ5Z3JuNE1meDVDdlkwRFQvQlZpYmlyd09aeDlWNWhkZ2ErZkRheEVueC9HYnVBSTkyTmNrbzk3NlZ6SXg0UWZEa0dYbWV1WlhqWkVCTmZmdm1sVW1qeUFwelZBcXJmekFJQ3QyN2RPb2N4Y2VUSUVhV0k1d1ZmZlBHRmdPbzNzNEI1N04rL1grYnJ5eWlyeHdTdVlITzNuQkpHZCtEcktDWm1jeGlyUk54VmdIbE1lK0FLb1Q4NURxd3h3ZjM5dHM1M1BJdTJ1d0JYWGsyYlk4KzNUSmt5SzhGMzRwVHZhTVFFSGxXeGVMc0RSazhpR2pQaHBGMU1JQ2g4UER3OHpvckYrNWF5cVBUT0YwN1g2VVI3UTl0WmNhUldlMlU5VTJnNGtLNVBXaVJJTThkTTVob0FsQzVkK2l3Nlh2Qk5lakJmT04xak11M3ROTXFLSTEzSEtldVp3dEFGZEgzS0VoWGZuOEQzeGd3ZUtibFpUdW5hZlU4SXZxVktsVHFCV09CbFEweHMyTEJCS1RLNXhUUFBQRVB6NTgrbkJRc1c1TXRBWlBOUXhjVGh3NGVWSXA1YnJGbXpodDUvLzMyQi9CaUliQjRhMzdMZzYrbnBLV0lDL2V1R09hVnNZMkltbnllcFJOd1JFdHBsVWx5cnZWYTA2bmhPV2E5bGg3T202dG1pTzRmeWZiUC9GbUxNY1dDTkNabXZTc1FkWWNEUVRPbzljSzhWUTBhZlU5WWJQUEtzcVhxMmdIbmMvNENTNzAvZ08rdkJhOElRVlZOMHJnQnlTdE1mK05NdUpoQVV2dnh4UXl4T2VaUW9na1U3SC9qNjJiZnA0czc5VnB6NzZITzZFczRNRkhWelJBTTJqL0VQQ2RMYzBiOHgxMENBZCtBR09sN3dWWWw0THZEMXU2dm80b0dqVnB4YnY0V3U5Sit0ckpzallCNlRGaHY0Wm1Sa2xHZStOd1hmV2U2WFU3cCszK002MzB0NlVNZ3hnVVNxU21SeWc2VkxsOUtERHo0b0RBUll1SENoc3A0WndEdysrK3d6aHpGeDZOQWhwWWpuQmhnTm9DMFlDQUJ4VjlVekE1aEhXbHFhekRjZ016T3pnaDRUcUdPN2o2NEU5bFUzRDBjeE1YMHVVZnNlNXZIUjZyOXBYOXBGS3g1KzVDZ2xkczh5MUduWDlRbzkvYy9NMi9YMi8wcFAvdk9tb1k0amRPTlF2bmVtVll5dE1TSHpIVGZGUFA3NzFkOTA2UEJGSy83NXdsRWFNem5MVUdmMHhDdjArbHVadCtzZCtaWGVmdSttb1k0ajRMNlBxYk9NZktFVHpQVW0rRDR3NzZhWU1sSUp1U3ZRQTlPQ3M2L1l4WVFlRk9JSG1yUkVMZUltY1Q2c0cyWDkvZ2R2MGxqT3RSbXVySjhqWUI1akYrcWtzZUVnZ0E4ODBmR0M3MENPakR6aS9OMzNVZFlmZndxT2NqbkhiYXJxNTRnaDg5anNIamJ3WGJKa1NiQ1Y3M1QzeXlsZG55SnlOT0NIamtBc0dHSmkvZnIxU3BFeGk4Y2VlNHdlZnZoaE1kcDQ2YVdYNk9XWFg2YlhYMzlkV2RjTVlCNWF6a01aRXdjUEhyUVQ4TndBeHZIdmYvOWJDQ2hHT0o5Ly9ya3dVRlZkTTRCNTdOdTN6MkZNRk9TMFlFRUEvWXQ5MXZncVkrTCtCOVFpN2dneitOQ1F5K1hMV2RTcDV4bERuYnNIWkdpL1dzb2ZmOXlpWGdPTjIzR0VyaHpLOTB5M2lyRTFKbVMrS2hGM2hLZWZFeFNzNVk4L3MyajBoRE9HT2hQdk5mTDk2NjliNGlvcXVZNGpJSGsvWllhUjc2SkZpMEowdnJNZXZLa2NZYmtLR05uZFA4dHFIdGFZTUpvSEN4OUYzSjFuZkR2aElmU2pYVG16K0VWbC9Sd1JPNEN1ajVvbmt6YWFCL2dPbkpObmZMdjRKY0hQdHB4NTVRTmwvUnd4NUVHNlBrWWtscXg4V1NoQ3JYeHhINGhLeEYwRm1NZGtTMDVKRGdydFUzd1BFVldKakJub3hnSERnSEhBUU41ODgwMXhOcStxYndZUU4xeHRKWEUyeE1TQkF3ZVVJbTRHdW5GQVBHRWMySGRNSyszY3VWTlozd3lraExreUpncHFXaEFvNkp5U281aVl5aUxadm52dXNPcVRtN3lKMitXMU4wOVJ1eTVYeEcrdE8xMms1QzNudFY4czVhRkgxTnRSb1N1ZlowNjYzeXJHMXBpUStZNjlKM2Y0Y3BPUjd3ZkxUOUdvQ1ZmRWI4UEdYcVFkdTR4OFgzcGR2UjBWY01YVjVHbEd2b3NYTDY2bDg1MHh4LzNNWStxTW5NeGpESjl4cTBUY0JMTENlNGtwS2xXNW5IR1Nyb1F6QzhWNjJRTG1NWHl1VE5wb0h1QTdnRVU3RDhqcVA1dk9yVThSL0d6TDVaUGYwSlcrTTVYclpZdkJiQjRqaldZM2QrN2NPbGErOXo3T29zMlJuZzhVZUU1cGduV2F6Um9VMnFmNEhrS3FFcG1jb0J2SHE2KythZ1dNQTZPR0R6LzhVTG1PR1VEY1B2bmtFNGN4a1o2ZXJoVHhuQ0NQT0hSQTJIR1o3ZGF0VzVYcm1BSE1ZOCtlUFE1am9pQ21CWUdDekNsSjA0TEttSmd5Z3lpUlJUczM2RG5BTXBxUVN5OGViZUMzQ1ZPTVovRmJkOXl3V3o4N2RPRlFuampWc1htQTc5akp1Y05VWGdlakNibE11Q2REL0Radm9aSHYvdlFiZHV0bkIxeHhOZkUrSTk4NWMrYUU2WHluemM2ZGVSUjJUcWtibThlVWFUbVpCd3NmUmZUS0UzNXN4QzFJNWNiR25kcVNwWnh1UFVTNVhyYUk3VWZYaDh5V1NSdk5BM3dIOEpnMEQvZ3hpYzFCS2pkMkg5YVdMT1gwU0I1cks5YkxGb1Btc3RuTk1mQTFtTWRrTjh3cGpiWG1sS3hCb1gySzczRVdxaEtaN0lBY2g2MXh2UEhHRzJKYksxZXVGRWxvMVhwbUFISER5RVhpYklnSkpLZFZJcDRkVk1ZQlVjZUlZZHUyYlpTY25LeGN6d3hnSGpBZ21hOGNFL21kRmdRS09xY2tUUXNxWTJMU05MV0k1d1E4MGtRdW0zbTBFZC82Q0IwL2NWbjdCZ1p6a3dhUFZxL3ZDRENQY2ZjNk5nL3dIY09pblZ1ODlKcWdaQzBZYmZSSk9rS252NzdOOTgrL2J0SURDOVRyTzRJbGNlN1lQTzZiYVM3WG82T3djMHFZRnB4OFgwN21NWXdGazBjUWVjSFpXVStnTDI4WDNBUW5sWE52ZmFoY0wxdkVzSG13eUlPYlJ0cG9IdUNMNUhZZWNQYnB0d1F2YTdsbnFiWmdLZWRXclZldWx5MlM1dGlabmNFOEpyaFpUaW1XeldPME5hZGtEUXJ0VTN5UHMxQ1Z5RGdDaEd6Um9rVWlyd0hUZU8yMTEyalpzbVZpQktNYlIzNXVoTXZKUEpDY1ZvbTRJOEE0bGk5Zkxzd0NwZ0V4eC9leWNlQkdQOXYxekFMbXNXdlhMb2N4Z1RaVisya1doWkZUc3BrV3RJdUpDZmV4R0hYTEc5SVBHcWVEMXE0N3B5MVpDcVovVk90bEI5elFOdVlleCtZQnZyamNOQzg0ZHR6STk4dU5ScjRyVnFyWHl3N0llNHkxNFN1Yng3M1RjMmNlenNncFRidzNKL01ZekFLSXM5aGM0a3JkN25UK3Yxc0VLWlJyUjArTDcvLytjcnYyRGRHVjczNmt5eXgrdHV0bWk1aStkTDMvTkptMDBUekFWeVhpT2VCS24rbDBmdXNld1F2bDJ0ZmZpZS8vM25sUSs0YjUvblNCTHZlKzMyN2RiQUh6U0pwaDRHc3dqN0Z1bUZNYVlaaG1zeE1LQ0lsS1pGUjQ4c2tucmNZQjA4Q25iQnd3amZ5TU9nQ0kyOGNmZit3d0ppRDZLaEZYWWRXcVZWYmpnR25vaVhIZE9HQWFNQThZZ08yNlpvRjFkK3l3M0tHcmlvbThUZ3NDaFpWVHNwa1d0SXNKaUo5S3hNMWcwQ2dXTng1ZHFFcjZ3UnZLZFhJQ3pHUFVSTWZtQWI2akorWU5zK2RaUmhlcWNpenpobktkbkREdUh2NmM1Tmc4N3JtZnpZTkhWTGxCWWVlVUprekp5VHdHekZTTGVBNDQxMmFZSUtTWDY0KzlJYjYvT2NkNDJjSTMzY2ZiclpzdFlCNTk3cE5KRzgwRGZQdk55alhPalhwUThOSEw5YmZYaU85dnZyUkMrOFpTdnBtOHlHN2RiREh3QWJyZWI3cUJyOEU4UnJsaFRtbW9JYWRrSnhRUUVwWElxUERJSTQ4STA4QVVsUTZZRDg3dThidHVIUGtkZVVEMEpjNkdtRUIrUVNYaUt2em5QLyt4bW9ZT1RESEJPQ0Q2dW5Ia2QrU1JuWG5rWlZvUUtNeWNrczNJemk0bU1QV2lFbkd6ZVBjRDNwcWk1TldVWUI0anhqczJEL0FkeGFLZFYzenltYUJuVng1NlZGMC9KeUJwUG5LQ1kvT1lPUFdtM2RSY1RpanNuTkxZeVRtWlI5OXBMTm9zUXJuRW1jVXZDRkxXa2pqVzhsdlRKTzBMUzdGTVhkbXY3eERSZmVoNnIzdGwwa2J6QU45K01KRGM0Y3hMN3drKzFqTDVNY3R2SXhab1gxakt1WlZmMksyYkxRYk9wdXU5aldabk1JL2hicGhUR21TWVpyTVRpdHlleGNyR0FUejk5Tk9FMFFjTVE0WnFYVE9BdUdFVUkzRTJ4QVRFWHlYaUtrRFlaZU1BVnE5ZUxYNkRZY2l3WGRjczBNYjI3ZHNkeGtSdXB3VUJKK2VVN0dKaUpBdGcyNjU1UjhzT0Y4WFVpbHpXcnZ1Uno1Q3ZLT3ZuQk53VE1YU3NZL01BMzFFVDhvN0JJeStLeTNYbDh1WEdIMm40bUN2Sytqa0JTZk5oNHh5YngvZ3B1VGNQb0RCelNyaXZCZHprbURDYXg5MVRpZXF5YU9jQ1Y4SzY4Wmt2YmpxMGxHdEhUeGwrRjM5ckJWTlg1MnQzTnZ5ZUxlcXplZlNZTEpNMm1nZjQ0cXFvWE9ESzNmZlQ1Wk5uQkIrVWE2ZS9NL3d1L3RiS2xSL1AwM2x1WC80OVd3eGc4K2hwZWRpZ3p0ZGdIa1BjTUtmRW96ZUpyNTFRUUV4VklxTUNoQkRDaFROZ2lCaytIMy84Y1pIQWhZSG85ZDU5OTEzRGVya0J4QTBqR1lteklTYVFYMUNKdUFvWXBXQjBnYXVxWUJ6NGhQanFOd1ZDK0hYWXJtc1dXQmNqR1ptdkhCTVlLYWoyMHhHY2tWUEMvMXppYXhjVHc4ZXJSZHdNMm5USm9uR1REL0htakFWbWNsZmZROHAxY2tLbm5pendveDJiQi9pT1pOSE9DMGFNeTZJSDV0bnpoWm1NbVhoSXVVNU93RWhveUJqSDVqRjI4azNsQ01zTUNpdW5OSEo4VHVaeEY0OGJWU0tlRGM2MjRqTmVxV1F1K2lkdHFON01Ddnd0bDI4bjhObTlZanRLd0R5NldoNFRyWkUybWdmNDlwMlJLNXdkOFlEZ29aZk1GOTZoRFMzN1dZRy81Zkx0d3p5cVVteEhpZjR6N2N6T1lCNUpzMW0wYmFibVRLQlFjMHI5RERrbE82RkFma0VsTWlvZ2Y0QnBJSWpYVzIrOVpUVVE1RUllZXVnaGc0SGtGUkEzVE10SW5BMHhrWnQ3TXJaczJTSVM3QmhaNEdZOTNVQXdMWWFycjFDbklNd0RsL3JLZk9XWUtBSTVKYnVZR0RxV1JidEwzdENoMnhuNjRZY3J2RG43c2pmdElyVklQSzljTHp0MFpLbElHdW5ZUE1CM0pBd2tEeGcrNWd6OS9MT2E3OEZERnlscDJIbmxldGxoekNUa2ZoeWJ4K2dKZVRlUFFza3A4WGttUmxuZ0pzZUUwVHk2OFY3VjdaRXJuSDNXNXFxbEhNcVBtTGRYYkVlSityM3BlcWR4TW1tamVZQnZuK201d3RsM1Znb2Vac3VQWHlRcnQ2TkV2eGxzZGhNTWZBM213ZWFpRlBFY1VHZzVwV2cyRCtNMG01MVFRSlJVSXFQQ08rKzhReXRXckRBWUNNd0RlT0tKSjZ3amtQeU1QQ0NPYUVQaWJJZ0o1QmRVSXE0Q0hqZWZtcHBxTUJDWWgyNGc4Z2pFZGwyendMcG9RK1lyeDBRUnlDblp4UVFFcWcyTGRtN1Jzc05sZXVXTjJ6TVJLTGJ6OU5ObUg2TFduYk9VNnpzQzdrVVlNTXl4ZVlEdkNCNm81eGFEUjE2bTl6NHc4clc5OTJQUkk0ZFlXTE9VNnp2Q3FJbk1kN2hqOHhneEx1L21BUlI0VG9uTlk4aW9uTXlqTTR1UFNzUWQ0SEtkTHVLTU56Y2w2L2ZMZEw1MkorWDI3RkQvYnJyZVliUk0ybWdlNEtzU2NRZTQzSE9LbUlyS1RjSGpTODUzNS8rMlludDJnSGwwR212Z2F6Q1BQbTZZVStwcHlDblpDWVV1VEdZQVU0Q0I2RmN3UWN6ZWZ2dHRZU0lBRENTL0k1RDMzMzlQYkYvaWJJZ0o1QmRVSXE0Q2hCMEdvbzlBOVBzNVlDS0FQQUxKSzlBR3RpL3psV01pTjlPQ2dHd2NRR0hrbEd5bUJlMWlZdUFJdFlqbmhFRWpqSW5iSDMrNktiWWxGMHhmSlhZOXFWemZFV0FlL1lZNk5nKzBvUkx4bkRCMW1wSHZoVjl1MmwwVys4Y2ZXVFJrNUVubCtvNkF2RWQvRzc2eWVRd2JjMU01UFdjV0JaMVR3dk90Qm8zSXlUemFzeWpWN1c0YTMzVGorbmtvWDQ5L1VMazlPOVRyUmRmYmluY0w2S1NONWdHK0VHU1QrR2JpUXRGK2JzdlhELzFUdVQwNzlKdE8xeE9OWm1jd2oxNzM4WDV4cE9jQ2haNVQ2bjZQWFZCb24rTDczRnk1QS9QUW9Sc0l6dDUxQThFbmNpQ1l0MWV0YndZd0R3aTZ4TmtRRThndnFFUmNCUWk3RHBXQjRCTWpMNGlwdkY1dUFITktTVWx4R0JPNW1SWjBWazdKWmxyUUxpYjY4MEM0RFlkWmJ0Q3N6Vmt4TFNXWCsyZGJmbHYybm5HYTVmM2xaNmxGNGtXN2JUaENCejdQN0RQWXNYbUE3M0FXN2R5Zzc2Q3pZbHBLTGt1ZnR2eTJlcTJSNzhkcnpsTFM4SXQyMjNBRTVEMzZEbkZzSGtORzVkMDhDaU9uQlBOSUdwYVRlYlRsOFYwWWk3WkpmUGZtZndReGErR3pXRlU5YW9kM3ZkOHVtTC9QcXNQaklWVmRHVkZzSHEyR3k2U041Z0crdUJmREpMNzdjSjFvMzFxbVA2V3NSeE1XYXhVczVYenFic3BDY2w1VlYwYmZhWFM5amRIc0RPYlJ3dzF6U2wwTU9TVTdvY0RsckNxUlVRR2pEdmxUdjJ0Yk5oQWd2K2FCN1VtY0RUR0JLU0tWaUtzQVlkZEhIL2lFeU9NaGhyWWprUHlhQjZiRVpMNXlUR0IwbzlwUEZaeVZVOEwvWE9KckZ4TjlPU1JiczJpYlJjdU9WK2lwWjIrZkFLR2ticjloL1IyUHY3Q2RweDg3Q2ROWDl0dFNBVGV5M1ozazJEekFkemlmWjVvRnBtaGVmZDNJZDkvK0c5YmY4U3BaMjNzL1pzODlaTmhHZGtEZW8vY2d4K2FSTklMTmcwZFVlVUZoNVpUNkQ4M0pQRnJ4K0U0bDRncWNyOVZSVEVIcEpldjduNVQxZEZ5VnpwQlJmb3p0cGF4bkFNd2pZYWhNMm1nZTRLc1NjUVhPZDV0Z2VJSnUxcysvS092cHVIcjZXNjJtcGZ6WTM2UjUySmlkd1R5NnVtRk9xYU1ocDJRbkZNZ3ZxRVJHQlhua0FRT1JSeURZRGd3RXlFMGV4Ull3RDV4OVM1d05NWUVSaEVyRVZaQkhIcnFCNkNNUTJZUnlNNXF4aGI1ZG1hOGNFMFVncDJRWEU3MEhzV2gzTW84ZWZUSU0weWd3aWdFOEdwRHI0S3hlTHVkWUFPTmFuVGJVY1FUY3lOWnpnR1B6QU45aFk4eGp6UGdNTVIybGx6Ly92RW5USHpEV2VlTnQ3VWV0L1BUekZlbzk0TFNoamlOZzZxclhRTWZtTVdEWVRidXBPVE1vekp4UzM4RTVtVWNML28vaWloMFR1RFRSZUxmejllZmZWOWJUSVg2WHl1K3orYXhmVWMrQXFKNTB2ZGxnbWJUUlBNRDM3dnRNNGRLU1YwUzdlcm0rbkVWV1VVK0grRjBxdi8vakhXVTlBL3JjVDlkYkdNM09ZQjZkZUx5cUVuRUhjRXBPcWYwWXU2RFFQc1gzRUgrVnlLZ0FjZE9oR3dpQUVZaCtPU3hHSW5tNXQwRUh6QVBDS1hFMnhBUkdEeW9SVndIQ3JrTTNFQURid0RPeVlDSVlpZVRteGtOYjZOdVUrY294VVFSeVNuWXhnY2RhcUVSY2hWWWRzeWhsS3paenV5eDdUMTMzNUNuajJmd2J5eTRxNjlrQzV0R2puMlB6QUYrVmlLc3dkRlFXN2Q1ajVMdDZyYnJ1TjJlTmZQL3owVVZsUFZ2QVBPN3E3OWc4K2czSm0za1VaazZwZDFKTzVzRkNyUlJ4RlNZdklYcmhnOXRvaHlrdlJUMGQrRjJ1ai9WVjlXVEFQSm9PbEVrYnpRTjhWU0t1d3VOOEJyOWkvVzJNWDZTdXB3Ty95L1d4dnFxZURCNTlYRzgyeU1EWFlCN3VuMU95RXdvSXYwcGtWTkROQXRDRkRrS0dUd2crNXZlUklNYmZxdlhOQU9LR1Q0bXpJU2IwS1NjejBJVWQwTTFEL3g1VFRiaHlDOUMvend2MGRXVytja3dVZ1p5U1hVemMxVjh0NGlyZ1JVMHdDeG1xZWdBdVlUVmJWd2JNbzFzZngrWUJ2a05adE0wQUR5MzhtTTFDaHFvZU1JOGx3bXhkR2NoN2RPL3IyRHo2Sk4xUzVuYXlRMkhubEhxeDJZR2JIQk5HODhEVk95b1JkeFZnSG8zN3k2U041Z0crS2hGM0ZXQWVObVpuTUkrMm8zbS9PTkpOd2prNXBSRjJRYUY5aXU4aFRpcVJjUlVnYmhCUGliTWhKdkp6TjNoaEFPYUJ2SW5NVjQ2SklwQlRzb3NKdk4raEZZdTJ1MERjQlgyM1kvTUEzNkY4aUxnTGtQZm8ydHV4ZWZRYWNNdVEwOGtKenNncDlXQ3pBemM1Sm96bTBYZ0FpMHBYOTBIVVhYUzlZVitadE5FOHdCZUpiSGRCNzZsMlptY3dqMVlqZWI5c0JOd0JuSmRUR21ZWEZOcW4rQjVUSXlxUmNSVWdiaEJQaWJNaEpqQ0NVSW00cXdEendKU2R6RmVPaVNLUVU3S0xDVHdvcjFWSDkwRTdsb3JPUFIyYkIvaXFSTnhWZ0hsMDd1WFlQTzdxeCtiQnBtZ1d6c2dwZFdPekF6YzVKb3ptMGFBZlVUak9XRzFFM0ZXb3grWVIwMXNtYlRRUDhNVVpmeThXYm5kQW4vdm9lZ09qMlJuTXcvMXpTblpDZ2VrbVFDVTByZ0N1QnNySlBEWnVWQXU1SzdCcFUvYm1VUVJ5U25ZeGdjZFZ0R0ZSVVFtNUs1RElvZHp4THNmbUFiNFE3U0dqM0FNajJEdzYyWmlkYkI3ZCs1ZzNENmZrbExoL3U3RFpnWnNjRTRhZ3VGYVB6MVliY0UvWFllRjJCelRxUTFkNDlBRnVHbW1EVUZ5TDdVUFUvMzRXN252ZEE4emxTcXpSN0F6bTBXeUlXc1JWY0ZwT0tja3VLT1NZd0puczh1WG04eDZGalJVci9pMnVMcEk0RzJJQ0FwcWM3RDVUVnlrcHllTHhJVEpmT1NhS1FFN0pMaVlTdS84bG5pZWxFbkpYQUNPTGR0MStGLzJwTW8vMlBmNFNOK2FwaE53VkdETVJaL05HdnJKNWRPMXQzanlja1ZPQ09XTmtCMjV5VEJpQzR1ZGFIZGhpeGhCRjlGQ0x1VE1SY1JkSHhUajZOaVJSSm0wUWlwOWhkSU5taUROK3BaZzdFMzJadzVDWjlHMkRuZ2ErQnZOb09rZ3Q0cTZDeUNrTnNBc0tPU2FlZSs0NUZxU1AzV0wwQVE1cjFud3M3cXFXT0J0aUFsY3ZiZCsrTFY5SjdvSUNPSUNMVFFMYUVCTkZJS2RrRnhQTjI1MFF6NHZDbFRndFdieGRDZHpFTm13Y1VYenJnNkkvVmViUnV0TUptblRmTFJvKzloYUx0MnN4Z2psTW5uYUxXbll3OHBYTm8zT3ZXOHJjanF1QVI1UmdaQWR1Y2t3WWdtSnJZQXpkaUdUUjdzWTIzWXlGTG9iRnVUNlBScHdKdE5tYzIrNDJucm4wcEs4Q28yWFNCcUhZR3QrVGJtQzBOR29lMGZDNVJBUHdpQkRjNmUxRW9NM2hEd29PNFBKVmsrNEd2ck5temFwdE5ZL0dBMW0wT2RyZEJTS24xTTh1S09TWVlQN2k3SGJ0MmpYaXlpQUlJUVRQbVVDYk1BVThCd3BjcGsxei9JS3dmL3pqSDJMMHNXUEhkbkhQQmhMb21NcHlKdEJtYXVvV3dRRmNjQVdVekZlT2lTS1FVN0tMaWZENnI3Tm9YNk1SNDRsNjlyZGNqWU41Y1dmQ2NnV1E1YkxYZHQyeUtLemVTNkkvVmViUnVQbnJYT2NhM1RmckZwdklUUjZGM0tTUjQ1MEx0SW0ycHpJSDhHMFliK1E3WThhTU9qcmZUbmV4ZWJBeHVndVFVK3JRUFFmejJPQVhTZWtWbWxBV0x1UHNpWHZvcHhEZGZRLy9sNXdFdE5XSDI3eHJBbDJyMjQzMk01ZlZ2dUV5YVlOUWJHamVrOUtiOUtRc0dON1FXVVQzTENMQ0M1d21QZXdjb0szSi9EbDRKbDFqRHZ1WnkrcTRiZ2EraXhZdENyR2FSME9PZG5mTEtjWDJzUXNLT1NhbVRwMUtDeFlzRUZmeHdFRFdyZnVNUHZ2c1U4WmFKd0Z0ZmNadHJ4YlRWZUF5Y2FMakp5M2pTaU84VVE4MzB1M2N1WjEyNzk0bEh0UHVUS0JOdEkzOEE5N3loM3N2Wkw3ejU4OFA4ZkR3RUh3eG1uS0hVWjBPUlU3SkxpWnFoVDlCOVJwOXpDT1BxK0sxcXVQNWtOWGZ6KzBzb00xUjNIYnJ6bjlSdllZcktTUnNrZWhQbFhrMGpIdUM0bHAreklaM2xhWk12MFVQekw5SnN4bXo1amtIYUF1NGg5dHUyK1V2NXJLU1lob2IrUzVjdURCVTU5dWgreTIzeXlrbGRsV2Jodysrd09KSHZuV0ZnV3dKaUthdnE3YWdYME02ME8raEhaMktpeUh0UmR2Slplc0xMc3Q5dzNUU3Z6TFhBSUNGNGs5MC9FZE51Z2dEMmNJamtLOWo3NkpmbzNyUTcwN0d4WG85Uk52SnpBRmNsamZ1SlBNTlpERXB6M3l2Z2U5Vk44d3AvUlZsbldZRFh4OWVOc1RFdUhIamhJSHdtWkU0ZzM3eHhSZUZJRG9UYUJOdFQ1OCtYWEFaTThaNlk2TmRUTEF3Q3dQQjFCYW1YNUFId011Tm5BazhjZ1J0UC9YVVU0TEwzTG5XdHpYYXhRUk0yZDF5U25qc2ljVFhMaWFDNnl3VUJoSlc3MlZxMUh3SE5XLzNQU1VrL3VSVU5HLzNyV2k3VHRRTGdrdHc3WG5nQ3pHMnhvVE9ON3JSUW1FZ2padTlUTTNiN3FDV0hiOW5VZnpKcVdqWjRWdlJkcU5tTHdndTlSc1krQWJ1M0xtelBQOTlEWHpiZFA3RHZYSktMRm10TzEyeWl3a0VoVGZ2UUFZV0gvYXVJUVRibmZCQW1XcUN0S2VuSjE0NlhoYnc4dkxLUU1jL0hCRW5CTnVkOEVCWUl3UGZBd2NPQk9sOGo0VzJkYnVjMHY3Z1ZqSmZiMTQyeEVTUEhqMkVZTHNUT25mdTdEQW1oZzBiSmdUYm5UQmdnQ1d2eEJ6Qk55QXRMUzBRZlBFZFhpZnJiamtsdktWUTZsKzdtS2hjYmJnUWJIZEN4YXBKUW95OXZiMnRNY0Y4ajRKdnJiRGhRckRkQ1NHMWpYelQwOU9EZEw1TkV2YlJrTkh1azFOQ2ZxdGhNOHRyQmVTWVFGQ1U4ZlB6ZXgyTDFUMjg2QlBmY0tXSXV3S2YrVVZRVGVZRWJnRUJBZjlncm40QUw3OGgrSHI3MFNkeDNaUWk3Z3A4RnQrZGFucjdxL2lLL20zcEhVUlpmS1pQM2QwZ3A4UWNia1Qxb25iZTVRVGZzbVhMUG9WWTRHVkRUQVFHQnRLa1NaT1VJdTRLVEo0OG1jcVZzM0JXeFVTRkNoWEVDNU5VSXU0S0xGNjhtQ3BXckNqejlXZjRjbisvaHUvQ3dzTEVGVzN1bEZPS2pJek1OaVk4UFN0UVNOZ1NwWWk3QXFGMUh5RlByMHFDTThmR000Z0h3Ti9mWC9BdFU2WUN4VFpab2hSeFZ5QzJ5U05VeHRzeDM3SUJjZFM2NDFWeFA0aXJjMHJnMExyVGRRb0lhbUVYRXdnS3o5RFEwSzRlSGg3ZjQ4K0VVdjRpejZBU2MyY0NVMmpOU3ZrSnd1Qld0MjdkVHN6VkcrQURycHVWYjdrcUlzK2dFbk5uQWxOb3pZSXFxL2o2UkVSRUpQSjNGL0RiQXdHMTZIbzQvMmQ2VGlUcWU2OXJja3JjOXRYdzdqUWpJTVRLdDM3OStzMFFDL3kzWFV6VXJsMWI1QmxVWXU1TVlBcXRWcTFhT2NaRXZYcjFSSjVCSmViT0JLYlFJalVoQnJmdzhQRE9pQWZ3bFdPaWE5ZXVicEZUd25TVlBxb0QzK3hpd3Rldm5zZ3pxTVRjbWNBVW1vOWZsREltNnRTcFk0MkpnS0I2SXMrZ0VuTm5BbE5vQVlGS3ZqNGNIOWFZcUZaekNyWHM4TGQ0ZlB0NFBteHhtYTB6TVk3YkhEbmhGclZvL3dkVnJUbEpHUk1JaXRKOFFEYm5zNk5KUEl5NmhLOHFsQ3hObzd3cTByUGVJZlNTVDZoVDhZeDNzR2c3c0dRcFFaZzVYYTVjdWZJNFB0amltS3NYd0IyZVlPRHI1VTJqYWtiU3MvVmIwa3N4Ylp5S1orcTFFRzBIZWxwR1NDcStyVnExQ21PK1UvaTNLNmdUNCtsUG4xVnVST2RDRXVsOGFBZW40anR1RTIySGxmWXg4RzNkdW5VSVlvRy9VOFlFbjNWU1FrSUM5ZS9mbjVLU2tweUt2bjM3aXJaOWZJeWNzNHNKUHNzWFFnalRtekpsaWxNeGZ2eDQwVGI2VE1HM0RNTXpQajYramh3VDFhdFhGd2FKcThWd2ViUXpnZndRMnE1VXlYSTJyUFBOS1NaS2xRNmdjaFc2Q0hHcEhqTFZxYWhhYzZKb3U1UjJncWx6WnJPMnhnU2ZVQmhpd3RNcmdLclc2RUoxb3laUlJQMnBUa1ZZNUVUUmR1blNqdm0yYU5IQ29CTStmQklkR2JPY21yWThTWEd0djNVcW1yUTRMdHIyOWc1MUdCTUlDZzhPaWxvY3ZKMXIxS2lSNU9ucHVRTmZ1d05LbFNxVlVhVktsVkhneHVKUWs3bVdBb29ZMzlMcjE2OHZFeHdjM0FhZHozVk9xZFoxQlhTK0lTRWhyZFBTMGp3UkMveDljVXdVSUdTKzBkSFJ3WWdIb0RnbUNnNUZPU2FLc2s0Z0tFcnljTld6ZlBueUxiaENKeWJmaFplbjgxblRNaTh2cjFUc2hEUEJiYVp3MjIrQ0E3aUFFN2lscEtUZ29QTUFpaHBmUnFuRXhNUWcvcTBEeDNQWGN1WEt6WFlYdmxXclZrM3MzcjA3cms1QkFKY3Nqb244d3dUZmtvemltTWdIVFBSeHNVN2tBN1o4VlRFaGdnTGc0VlBab0tDZ3RoVXFWT2lFSFlNcllpWHNoQXgyeWdLRjdmYlJKdG9HQjNBQkp6NWpRNUpSOEN5cWZCa2U2SHl1MTl4ZCtISkF4QThjT0JCY2RVR3pDZ1ZRSEJQbVlMdjlIUGhhK3hyTHhURmhEcmJiejZHUHJTaldDWE93M2I3TTExRk1JQ2lzZ2NHa2NVVkZBMzkvL3c2QmdZRWRzWk02c0pIQ2hOd1cyZ1lIWDEvZnBseDhkWDRhMXlMTGx5SE9McUtpb2lxRWhvYldybG16WmdQZUZvS2tPUSt0RXdvVGVqdmNaaXpham8yTkxhZnhrY1dzT0NieUFibXQ0cGdvSE1odEZjZEV3VU52eDB4TTZLUU41SG00Rk1qT0dNbzdHc003R2g4UUVPQVVvQzF1TXhwdGc0UE9SK09tUXBIa3EwSC9oNGhBY1JMa05tVXVWbzdGTVpFLzVJR3YyNk00SnZLSHZQTFZJQit6cW1PNk1DQzNLWE94Y2l3dXhhVzRGSmZpVWx6eVZtUTMwV0IxbWh0SGwwUXo0cHlNS0prRFE4VlJScEhsNnlZdzhNc3BKbEpUVTZPM2JOa1M1MHh3bTNudTQ1TW5UMFl6NHB5TS93OHg0VXBnS2dYM0d3eGl6R0E4eG5pTzhhWUdMT003L0lZNkNReXNvOXFXUzNCSGxHOW5XOEE3cEFlT3g0Mk1oMmZkeUhqb3dvM2pDK2ptOFhsT3hZM01CU1Rhem5oNEVyam92Q1NlT3V6NW5saENOMDgrNGxTZ1RSWGZzeTkzTEFId3NoMWZEZm9RRVZkYk9CTzJRMVBCUys5ZmxLbFRwd3JvdjZGZVNrcktyT1RrNUF0NFYwWnk4aVluQTIwbVgyQU9oajZXZU5yMThmSGp4MmN4TG1SbUhxTmp4NDQ2RldnVGJUTU1mSmN1WFZvQzRHVTd2aHJjS2liMC9rWGh2L09GL0JSZUgvZEN6R1I4d3ZpV2tkZUNkYkVOYkN0TzI3eFRDcmRYWVAzaE5rVXlEaEc4TnpNZSt1alc2VmxFMy9SaEpETGFPUmxvc3orQkE3aUFrOFpOQ0J4LzJ2UDlkaW5SL3g0aSttMHVZNDZUd1czKzhoRGRPcnZVanE5a0hsYStEQnlzdUZaYTNCakV3RTFqem9UZUxqam93bUh0WHhUSk9BUm5GdTJQTm0zNlVqekN3aFhQWUVLYnExYXRwRTJiOEhLbEZFTWZTK1poNWN1aS9kR1JJNGRvMjdaVWw3eFZFRzNpUFI0WkdZZGhJZ2Era25rVWlaaHdsWG53T3YwWWVJbi9PWWFoWExwMGlmYnYzMDlyUC8yVTNucDdHVDN6ajJmcDBjZVcwcno1QytuQmVmTnA4WkpINk1tbm5xTFhYbnRkUEJoeno1NDk5TnR2djJsckd3cTJqVGI2YWMwV1d1RTI4dFVmYmxsNFIyNEw4ZEZGbzIrZG1zM2kzWkhvREF1NUs4RWNicDE2Z01BSjNEU080R3JrK3cyUFRuK2JSL1FyQzdrcndSekFKVHUrREJ5Y09GaTl1M1RwVWpzaUlxSzFzeEVXRnRhcVo4K2V1RXNVajBRQUYzQ3k4cldOQ1JicjBaczNmMFY0VkxkSzJKMEpjQUFYY0FJM2phT2hqMW1zUjBPMDhWNE5sYkE3RStDZ0dZZ3RYM3dLdm95aUVoUDVncG5DOVpveVhtVWNabGpMc1dPWjlPNi8zcU1ac3g2Z3Uvc09wR1l0MnVRYURadkVVOXZFRGpSbTdEaDY2YVdYNlBCaFF4TW8rQUp0RjhxSWhMZWI2LzV3KzhJN29nZXgxODJNK1lmbzYwRkVYN040dXdQT0RHRXhYckFEM0RTT01peDhmMzZZUngwUHVBZVlpd08rT0p2RGQ5N1ZxbFhyVTdwMDZUM28rbTVOSzFGU20ycE9SY2RHRlJDNWVCVDB0dURnNEs3Z3BIRURUK3ZkeE5yZlhzbkp5WWZ3MUZlVm1Mc0NhOWFzeGhTV3c1ZzRkdXpZSWJ4TFF5WG1yc0N1WFR0WS9JN0pmR1hUc0l1SkJnMGFpRWV4T0JNeE1URm1ZaUpmeUs3dzc0a01UQ2RaeTlHalIrbVpaNStqbnIzN0tjMGd2MmpZcEJrMVQyZ2hIcGQvNE1BQnJWVnJBWmRFalY2QkZONmU2ZjRvTW9WM1JCeDBESityQitkazBkYzg2ampkMWszUWpmNU1tLzAzYzlPREdRY2NoQmhuUnhhK0Z6QnR4TUx0RHJnd3p5RmZQbHYyOS9iMmZndGQvdEhDNW5SMTMweTZjWHcrM1R6K29GTnhJM08rYVB1dDZVMkVZUGo1K1QydjhSVm5tN1l4c1dIRGhpdzhlVlVsNUs3QWloWEw4WklsaHpIQlo1UlptemU3ZnRTaEErOHdUMDlQMS9ucVhQRnBpQW04SFZGLy83bzY3MU9ZMkN6YTFsK3k1U0FtOGdWVjRlK2JNOVl4UlBucnI3L29nMzh2cHlIRFJsSjhRbXVuSWJwQlkwcHMzMEU4NSt2UFAvR3VJMnNCdCtZYTNYd1YzazZPL1ZIa0N1OElBc1RieDhmbnFac1pjNGhPOFJuL0tSWnVkOERwVHZUcjdtbms3KytQS3lmd05GSUloQkFKSzk4THM5MEg1K2RreC9kRmRQZUo1WDNwNXVtWjVNcWMwcTB6L2VqbXFWbUNDemhwZklWWTJNWUUzc090RW5GWEFVYTJkdTFhaHpHQk0xYVZpTHNLZUNYdDd0MjdiZm1pcjYweGdUY2ZidHlJbk5LSExzNHBmU200T0lpSmZFRXUvRGRNZnhsRGxOOHZYNlkzMzFwR25idmRwUlIzWndHamtlaVlCdlRvbzQrS3ZJcFV3TlZMbzUrbnd1czc3SThpVzlBcEVSRVI4Yng0NDJZR0MrQkpGbTEzd2FsTzlNZmUrOURUTjVvMmJSckxYSEh3K2VDeHdGYSs1MmU1RDM1K2dQN1lKOTZ2YmVBYkdSblpBbDM5L09RWUlkcnVrbE82ZVdxMjRDVHhGUWNJUHZXWWdBQ3FCTWRWUU43ajAwOC9kUmdUR1JrWlNoRjNGWkQzMkx0M3I4d1hndXdiRXhQVHNtVEpralJ5NUVpUngzR25uQkk0U1h6MW1NZ1g5TUxMQXhuSEdIVDkrblg2MS9zZlVJZE8zWlJpN2lyRU5tcEtFUkZSNGduSDE2NWRBMVVVY0I2ZzdVYXVDNityN0k4aVhYaEhlT1JzR1RyZnpHQmhPOUhHZlhDeUkxM2RQeFU5VGI2K3ZtOHdWN3cweForSDFXL2p3Qk44ZjNZai9QUUFYVTBYNW1IZ3kyZVlLOEgzMHFZeDVGWTVwYStIMElYMXd3VmZqb0hYbWF2KzRoOXJUSHo1NVpkS29ja05jRFlMcUg3TExTQnc2OWF0Y3hnVFI0NGNVWXA0Ym9CM2p3T3EzM0lMbUFldURKTDQ0ckVVWmZXWXdCVnM3cFpUd3VnT2ZHMWlJbC9RdG1FZGJlemV2WWY2SncxUmlyZTdJQ3c4aWswa0FoZG9hS3hGV1NaMkpwZUYxN1ByanlKZmVFZDhQRHc4em1MeDVwRVpSTWRadEUzaTlGZnh0T0h0bUJ5eDR6OE5SZDJzbzYyVjIzR0lFeDNwK3Y0cElwQ1pZeVp6RmU4bUxsMjY5RmxoSHVENzAwelRPTDFyTEczNFQ3OGNzZU96d2FKdTF2ZlRsZHR4aUI5bjAvVUQ5NnY0L2dTK053NXdIVGZMS1YzZlorRmJxbFNwRTRnRlhqYkV4SVlORzVRaVl4WXdqUVVMRm9nWEl6M3p6RFBLT3JtQmJCNnFtTUJWTkNvUk53dVl4dnZ2dnkrQTk1R3I2dVFHc25sb2ZQR0sxQUJQVDA4UkUraGZOOHdwcVdJaVA4Qmp4Ly9MRUdmeS8vakhQNmtaQkxwNUs3ZEhYSHdMcWxxdHVzaEpYYjE2RmJ1QWduMnBpWDR4VzdpK0FYZEU0UjN4NVk4YldMeDVaSnBheEIzZzRtbmN6Smx6dWZ5L1REcTEveFhhczdwMTdneUV6U05yLzJRUnlIeWc0VUp0UEJjbWtJUDZoc1U4bU8rUEVHMXp1UGpkV3NFbnAzTDUxek4wNnZDSHRPZS9iQ0Rmc1lFb3RxWEVEN01wNjRCbHBLVHp6Y2pJS005OGJ3cStoMmFUVytXVVRuV2lySDFpV2hCOE1jbXJDNFUxSnBCSVZZbU1XU3hjdUZDWUJ2RGdndytLTit5cDZwa0Z6QU52dnRNNDI4WEVvVU9IbENKdUZoQnltQWFBOWpBeVVOVXpDNWhIV2xxYXpEY2dNek96Z2g0VHFHTzdqNjRFOWw4M0Q1dVl5Q3R3dC8xWkJuMzMzWGMwWXZRNGlvTW9GekhVREE2bHVMZzRPblBtREhZRkJUY2NScUZ2ekJTdWE4QWRVWGhISUJRaVdHNGVtVXFVeWFKdEVtYk5ReTh3a1dQL1pmRlViRXVKNHpBUHl4VWdITWgvOENhQ0FEN3c4TGVGN3c4OCtqQUpzK2FoRjVqSXNkVEp5bTJwTVl2TjR4NEQzeVZMbGdSYitSNWlnMUhsZGx3R21NZTlPbDljWm9KWU1NVEUrdlhybFNKakZxKy8vanE5L1BMTDR0cDZqRUllZnZoaGV1eXh4NVIxelFEbW9lVThsREZ4OE9CQk93SFBEV0NXbjMvK3VSamRRRVQxOTN1cjZwb0J6R1Bmdm4wT1k2SWdwZ1VMRXVoZjdML0dWNDZKdkFCWFUvM0ZvSlF0cWRTK1UxZWxNQmNWMUkyb1IwRkJRYUovdElKOU0zVTFGdGN6NEk0b3ZDT1NlVXdod3NqQUpDNmV3aFJ1N3NxUEoxbkFGZHRTNGxnSE5vL3hjaURibUFmenhkU1NTVno4Tm5mbWdmTGptV1RsdHRTWXllWmhlZCt2enBlRkl0VEs5eURYVWVWMlhBWTI1NzFXczFPYUJ3UlVKVEptZ1RQNE45OThVeGdIREFSR2toOERnYmpoYWl1SnN5RW1jTTIrU3NUTll1Zk9uV0lxQ2ZzTkE0RlE1TWRBcElTNU1pYnlPeTBJRkZaT3lTWW1jZ3MrZ0MzbGs3V2ZVdk9XYlpXQ1hOUVFGZDBBOThPSXZwSkthL1JSZG9YckdIQkhGTjRSeVR6NExEdUQvK2NtSVp2SDVmUDdsSFhvOUJpNjhlZEpyUlpSMXJYTDZub3FIRzNQNWpIV29WQUl2cGhXTWduWlBDNy83Nml5RHYzMEROMzQrM3V0RnZoeXM2cDZTc3hnODdDT2xBVGZ1WFBuMXJsdEh2ZmJUODFsZzBMUEtXRmt0OWM2TFNnTGhUVW1JSjYyQXBNYmZQamhoMktrQUFONTlkVlhyY2lyZ1VEY1B2bmtFNGN4a1o2ZXJoUnhzOWk2ZGF1NHRGWTNFQjE1TlJDWUJ4NlBJZk9WWXlLLzA0S0ZrVk9TcGdYbG1NZ05PQkF0NVYvdmZTQkV0Mm16bG5jTVlobzBvY3BWcW9tcnNhU1NyWUh3N3diY0VZVjM1TFo1SEo1SWRJVC83eVp4OGFTTmVTanFBTCtrczhqTFJWRkhpUXcyajdUUkRvVkM4UDEybW1sY1BIdjdKbFpoSG9vNndDK1pUMnUxdEtLb284WjB5a28zanBRTTVuRmdxa0xBSGFQUWMwb3dqejBHczdNekQ1eUZxa1RHTEpCNFhybHlwZGpPRzIrOFlXY2d1YzJCUU53d21wRTRHMklDeVdtVmlKdEZjbkl5YmR1MlRZd1dJT3o1TlJDWUI4eEk1aXZIUkg2bkJRc2pweVJOQzhveFlSYkljZnpPb0xlWHZhc1UzenNCc1EyYmlqNTY0b2tuc0tzbzJPZDY2Q3RWNGQ4TXVDTUs3NGhrSHVPSkRyVXlqWXNuYnB2SHBaLzIwY1d0emUxd2RrTWNIZDJ5UUt2RlovSlhmbEJ1UzRuRGlXd2U0cHB6cFZBSXZ0K3dhSnZFeFc5dW04ZWxDMGZwNG9GSmRqaTdmU3dkM2ZtU1ZvdjUvdjJMY2x0cXdEeU1JeVdEZWFSUFVlZDJIS0RRYzBxWkhTaHJ0OEhzN013RFo2RXFrVEdMOTk1N3oyb2dHTVVzVzdhTVhudnROV0VleUljc1dyUW9WNEtYazNrZ09hMFNjYlBBVFgyeWdlQTdDRHpNQTJheWZQbnlYQmtJekdQWHJsME9Zd0xiVmUybldSUkdUc2xtV2pBMzVoSE1FQTh5L0d6ZDUzZmNpTU1Xa2ZWaXhQOFFKeFZhd2I0SG83OXNDMzl2d0IxUmVFZXNRbkhyOEJpaWd5emFKaUdieCtWZk1tbnYydEYyeU56K0pHVmR2YXpWNHZMVE11VzJsRGlVU0RmU2hqa1VDc0gzelAybUladkg1WXRuYU8rR0JYYkkzUHUyWmFwS0w3K3VWMjVMaldsc0hxTWNDc1hOOUVuMmVaMXNVUGc1SlI3WjdSNmpFZ3ByVEVCSVZDS1RHOEE4WUNLeWdVRDBZQ0s2Z1R6NTVKUEtkVzBCY2NPVFVpWE9ocGpRQlQrdmdOakRQR0Fpc29IQU9HQWl1b0dzV3JYS2JsMFZzTDBkTzNZNGpJbjhUZ3NXUms3SlpsclFySG5nbVYyYkdiUnBjN0s0VDZKSmZJczdIa2lpNDMrSjBacFdraG5pZVdCeTRlOE11Q01LNzRoa0hxT0lEckJvbTRSc0htYkt6NW4vcHN2YkU1VGJVdUlnekdPSVE2RVFmTDltMFRZSjJUek1sSjlQZjBHWEQwOVdia3NObU1jSWgwSnhjLzhFKzd4T05uQktUbW1Yd2V6c3pBTkNvaElaczRCcDRCTUdnaytjdGNPUU1JV2xBeWJ5eUNPUEdOWnpCSWdiaEZ2aWJJZ0o1QmRVSW00V01BM2RRUEFKQThHMEUweERCMHprUC8vNWozSjlXK1JrSHZtZEZpeU1uSkxOeU02c2ViekxvTk5mZjAxdDIzZFdDdTJkaXBvaHRTZ3dNSkF5TTNFYmp5anZvcy9rd3Q4WmNFY1UzaEhKUEVZUXBiYzBqWXZIY1FPcStYTHgzRjdhczZvL1plMXJvZHllSFE2MFkvTVk3RkFvQk45VDk1bkd4VE5yQkErejVlSlBSMmpQdWhtVWRmeGU1ZmJzY1QrYmgzR2taRENQdEhIcTNJNERPQ1dudE5OZ2RuYm1BU0ZSaVl4WndEeGtZTlR4OU5OUEc4d0RVSzJyQXNRTkl4aUpzeUVtSVBRcUVUY0xtSWNNZkxkNjlXcURlUUF3QmR0MVZVQzk3ZHUzTzR5Si9FNExPaUduWk1ZOEJqUG83Ny8vcGdGSlE1VUNlNmNEQ2ZUNjlldlRsU3RYMEJVb1E5QnZldUcvRGJnakN1K0laQjVEaWZhemFKdUViQjQzY01aN09kMGVWMjZmRmFOZ0N1dTdMeE9WMjdORE9zeGpvRU9oRUh4UFRUVU4yVHh1WE9mTmdac3RydDYrMGdvRlUxamZiYjlIdVQxNzNNZm1ZVFE3bzNtTXRzL3JaQU9uNUpSMkRsVUpoVFVtSUp3cWtUR0xkOTk5MTdvTTQwQ0M5L0hISHhkbnloQTdmRUlBellvb3hBMmpGNG16SVNhUVgxQ0p1RmxBN0hYZ2I5dzBCM0hHMVZjd0RYeGlWR0oyaElQdFlQUWk4NVZqQXFNRzFYNmFCUXk1b0hOSytKOUxmTTJZeHlFR1BmSFVNOVE0THVIL0pSbzFiUzc2Yk1xVUtlZ0tsRVBvTjczdzN3YmNFWVYzNUxaNUhPSVRpRFFXYlpPNG1IbmJQQzcvekdmR2lqb0NlR0dUVkw3ZDk3UzZuaTMyczNuczYyODQ4QUNyZVlEdlNSWnRrN2o0OVczenVIemhxTEtPd004ZmFMVXM1ZHRELzFMWHN3T2J4LzVCQnI0Rzg5ZzMwajZ2a3cyY2tWUEsybUV3T3p2elFINUJKVEs1QlVUdG9ZY2VFcmtOM1RqZWV1c3RJWDZZQmtJZVFiV2VMU0J1bUtxUk9CdGlBdmRwcUVUY0xHVGpRQ0lVVTJTNmNlQ0dQb3hHa0pUZnNtV0wzYm9xWUZ1NC9GZm1LOGRFRWNncDVXUWU0cXFPZmR3bk9BTlhDZXYvRjRUV3JpditweGhwYXVWTjlCMEtMeHR3UnhUZUVjazhrb2oydGpDTmk4Y2s4L2hwcjdLT2prcy84dTlheWFtdUZmdmFzbmxZSGh1dUgzakFiZk5ndnBoU01vbUxwMWVMOWxFdVg4aFExdEZ4NlR6L3JwV2M2bHB4WWlxYmgzR2taRENQdmNQczh6clp3Qms1cGF3ZFNTcWhzTVlFQkVrbE1tYUJrWWMrNHNCbGpUQU9RRGFPRlN0VzBEdnZ2S05jM3hZUVN0U1hPQnRpQXZrRmxZaWJoVHppMEkwRGtJMGpOUld2dDkxb3Q2NEsyQjdxeTN6bG1DZ0NPYVhzekNPZVFWbFpXVFJveUFpbG9QNS9RNlhLVmFsaHc0YWlUN1FpM2t6SW53YmNFWVYzUkRLUC9rUjdXTFJOd3M0OEZIV0FjNTgzWlFHMkpwUG9MOHpmSytyWllXOGJObys3SFFxRjRKdUp5MS9Od2M0OEZIV0FjMXRHMGVYL2ZhM1ZaTDY0SjBSUnp3NXNJRm43K3prVWlwdDdodGpuZGJMQlJTZmtsTEsyRDFBSmhUVW1JRVlxa1RFTGZjUUI0NEJoQUcrLy9iWVFPNXpOWThRQjQ1Q250N0xEKysrL0o5YVJPQnRpQW1kOUtoSFBEZlFSQnd3RHdIZVlxdEpISERBTzNXUnlBdXBoSFptdkhCUDVuUmFFZWNoQWYrYzNwMlF6TFppZGVZam5kT0JHUUV6YkZLTTUxWXR1S1BvT0w1YlN5dWVxL3JzakN1K0laQjU5aVhhejhKaUViQjYvc25EdGZTZldEcW12UmRPUnIrWnJ0U3dsNjl4L2xOdXp3eDZZUjAvRGdRZmNOZy9tZTR4RjJ5Ums4L2oxcHlPMGQrVUFPNlMrMzRlT2JMSCs0MFhKT3I5SnVUMDdzSUZrN2U5ajRHczBEeDRwcVhJN0RpQ2JSK0hrbE5xeWVSaEdkbmJtZ1NraWxjaVlCZWJia2VPQVllakdnYk42M1RoZ0dqcFU2OXNDNWdGeGx6Z2JZZ0w1QlpXSW13V0VFNk10TEt1TUEyYWdRMTdQRVdBMGVLUzN6RmVPaWZ4T0M4cjlwby93OHB0VHNwa1dkR1FlUFJqMDIyKy9VZXQySFpWQyt2OFZWYXBXRjFkZlhieDRFVjJFZ3I0eTlOOGRVWGhISlBQb1RiUXJ3VFF1SG4yTlY3Y1VpTmJGNy9mWTRjcnY0cDRoWTBsbjBWZHN6dzU3V3JONTlIQW9GSUp2eGoybWNmSFViZk5BSXZ6aUQ0ZnRjT1h5ZWEyR1ZFNHNWRzdQRGtmdllmTXdqcFFNNXJGN2dEcTM0d0NGbjFOaTg5aldXeVVVMXBqQUpha3FrVEVMbUljODR0Q2YyZ29Ed08vNmRKWDVhYXYzeERZa3pvYVl3QlNSU3NUTkF1WmhPK0xBZ3cxaEFEQU1mZFJoZHRvSzlURGRKZk9WWXdJakhOVis1aGI2Q0s4Z2NrcjRuMHQ4SFptSGVIM3M4eSs4UkkyYU5DdUdCRHkrQkYwMmI5NDhkQkVLK3NyUWYzZEU0UjI1YlI0SGV4SHRaTkUyQ2RrOFRKZFRqeXEzcGNSdU5vKzkzUXdISG1BMUQvQTl3cUp0RWhkUDNqWVAwK1hjZThwdEtjRUdrcFZtSENrWnpHTlhQL3U4VGpZby9KeFNHOHJhMmt2bWEyY2V5QytvUk1Zc2NCWVAwd0N3TFhuRW9VOVg1WGJrZ1ROcGliTWhKc3dtc2gxQkhybkFpT1FSaDI0Y091VDFIRUZmUitZcngwUVJ5Q21wekFOUHk2VkxsMzRYb3c2OHZyVVlSaUQzZ1Nmd1NxK3pSWjlaKy9DT0tMd2prbm5jUmJTRFJkc2tycC9KeGVNemNDTmI1aHpsZGh4aUY4eWpxME9oRUh6eGNFU1R1UDZEOVM3UW5Bc2Vqdmd0bTZOaU93NlJNWm5Od3poU01wb0hqNVJVdVIwSGNFWk9LV3VyZ2ErZGVaZzlZM1VFVEpmb2ovWkE0aGtqRGdpWmJoejZzbmx4czh6dFM1d05NWUVSZ2tyRXpRS1g0R0trQWRQQWM3S3dQUmlBYmdMNk1xQmEzeFo2WFptdkhCTkZJS2VrTW8rM0dmVE91LzlTQ21jeG1sRmsvVmpSaDlMREU5Rm4xajY4SXdydmlHUWUzWWx3dFk1WjdPdkxvamtsWit6dXBGNC9KK3lFZVhRMkhIakFiZk5ndnJnRDNDeU9MeUQ2K3A4NTQrZ005Zm81Z1Ewa0s4MDRVaktZeDA0ZUthbHlPdzdnakp4U1ZxcUJyNTE1Nk5OTGVRV0VDMGxoek8xRDlQRTNCRThYTkh6cVVLMXZDNGdiUGlYT2hwakFOSk5LeE0wQ1FvOHJ0Z0JNTitrbWdjKzhtZ2MrWmI1eVRCU0JuSkt0ZWVBeEpIVHIxaTNxM1hjQU5Xd2NYd3dIOFBYenA4aklTTkZYV2tIZmlYNjhJd3J2aUZVbzZHQlhGbTBlWGJrTGRyWmk4K2pvVUNnRTMwT1QzQWVISjlHTk5PTkl5V0FlTzNpa3BNcnRPRUNoNTVSMnQ2YXNMUWErZHVZQklWS0pqS3NBY1lNUVNwd05NYUhmRmU0dWdIa2dmeUx6bFdPaUNPU1ViTTBqaVVGNzkrNmpCaXlReFhDTTZqVkRSRDlLOTMyZzcwUS8zaEdGZDBReWo4NUUyMWkwM1FVN1lCN3REUWNlY05zOG1POUJGbTEzQVJ2SWpUVGpTTWxnSHR1N0dYTTZPYURRYzBxNzJEeFNPc2w4N2N3RDB4OHFrWEVWSUc0UVFvbXpJU2JNNWlLY0JaZ0hwdXRrdm5KTUZJR2NrcTE1Zk1TZ3h4NS9naG8waWl0R05xZ1gzVUQwNDMzMzNZY3VRMEhmaVg2OEl3cnZpR1FlSFltMnNxaHNaZUYyQndqemFHYzQ4SURiNXNGOEQweG1zSEM3QXc1T1p2TXdqcFNNNXRIRm1OUEpBWVdlVTlvSjgrZ2c4N1V6RDB3MUFTcWhjUVZ3TlZCTzVyRnhvMXJJWFlGTm03STNqeUtRVTVMTnd6cGwxYUZ6ZDRwbGdTeEc5aWpqN1VQVnExZTNtN3E2SXdydmlGVW9idTV1emFMU2ppaVZoZHNkc0xNOVhkL1owcUZRM05qWFhnZzJwVTkwRHh5Nmg2N3ZNWTZVRE9heExaZTVuOExPS2UxZzgwaE9WQW1GTlNad1JydDhlZjd5SGdXSkZTditMYTRta2pnYllnSWltcHpzUGxOWEtTbko0cEVoTWw4NUpvcEFUa2syajJZTU9ucjBxRklvaTJHUGlwV3FpTDQ4ZlBnd3VnNEZmWWd1TGZxRmQ4UXFGSDk5RnNNQ09JRFArbHV3ZVBNK3VoSmJXektYZ2ZUYnFucUdBdy9RRDd5L05yV25XOGNtMHkwZWZkeGk4WFlwd09IWUZQcHR2VUdNYmN5akE0czJtNks3WUVkTE5vKzJNbDg3ODhDZHNxdFhXNFRKVm1pY0RYQllzK1pqY1FlMXhOa1FFN2g2YWZ2MmJhWVQyb1VKY0FBWG13UzBJU2FLUUU1Sk5vK1pESHJ6cmJmRm0vU0trVE5DUXV1SXZuejIyV2ZSZFNqb1EzUnAwUys4STFhaCtHR0pEOTNhMTRyRmNCRGQydEdOYm0xclI3ZTJ0bkV1MENiYVBzQWMwbHJUcVlVK2hnTVAwQSs4YzI5MzREcHQ2ZGJSbVhUekVPUEFWTVlVSjRQYlBEU0xqV01tM2RyZmxrNitZcHhtbXpWclZtMnJlV3hOVk9kMlhJWHRiQjZiVzh0ODdjeUQrWXN6MmJWcjE0Z3JneUNFRUR4bkFtM0NGUEFjS0hDWk5tMmF3NWpBcFpFWWZlellzVjNjbjRFRU9xYXluQW0wbVpxNlJYQUFGMXdOSmZPVlk2SUk1SlJrOHhCUEZwMTYvM1NLWVdFc1JzNklxQmNqK3JKLy8vN29PaFRjYklZdUxmcUZkOFFxRk4vT0xrRVhucTlBTi9lMm9GdEhodEN0UXlOWXhJY3poamtKM0JhM1NVY0cwODNkQ1hUaHVmS1VjWitGbTBvb3pyN2NrYzZ2YUU4MzA5aDBNbG5JTStlNUFBOXkyNVBweHQ0MmRINTVlenJ5ak5FOEZpMWFGR0kxajlTMlBLSkt1SjNUY1RXMnQ2S3NUWVpwUVR2em1EcDFLaTFZc0VCY3pRTURXYmZ1TS9yc3MwOFphNTBFdFBVWnQ3MWFURmVCeThTSmh2ZXVHMklDVngvaHJYcTRPVzduenUyMGUvY3U4WmgyWndKdG9tM2tJdkJtUDl5SElmT2RQMzkraUllSGgrQ0wwWlE3ak9wMEtISktzbmw4eTZET1hYdUl1NmlMWVE3NFg0ZUVoS0RyVU5DSDZOS2lYM2hIZkJBa1dFeWZZakdRY3c5NzBlOGZoTkxWcnhyUXRjMk5uSXFyWDhhS3RyOWY0Q200N0psc05ZOWZtV3NBd0VMeEp3Njg5Q2ZiQ0FQNS9zME9kR2xkTzdySzRueHRXeHVuNHU4dGJVWGIzNy9SUVhEWi9aajFUQjU4QTFsTXlqUGZhK0I3N1N2a0d0d29wN1NqUGYyOXdmSWVBbzJ2RHk4YlltTGN1SEhDUUdiTW1DSE9vRjk4OFVVaGlNNEUya1RiMDZkUEYxekdqTEcrT3RjdUpsaVloWUZnYWd2VEw4Z0Y0T1ZHemdRZU9ZSzJuM3JxS2NGbDd0eTVEbU1DcHV4dU9TVTgya1RpcThjRVRKcCsvLzEzaW1aQkxJWjUrUGo0aXY2VTdqWVBRcDhXK2NJNzRsMjZkT2tNTEw3WjIySWU3b1RuZWxqTXc5UFRjdzl6TFF0NGVYbGw0TUI3WTBJRElkanVoSCtPakRid1BYRGdRSkRPOTh5eUtMcTF0eCtmOWJ0SFR1bld2djUwOU5Wd21hODNMeHRpb2tlUEhrS3czUW1kTzFzdWgxYkZ4TEJodzRSZ3V4TUdETEE4dVpnNWdtOUFXbHBhSVBqaU83d3ExdDF5U25nRG9kUy9la3p3bVEvUnZuMXBGQjNidUJpNVFFQmdrT2hQUEwxQUs4M1FwMFcrOEk2VThmUHpleDJMdFlKSzBMRnBhaEYzQlU1TUwwRjF5bHZNSXlBZ0FQZjUrd0c4L0liZ1c4bUhqajZicUJSeFYrRDRjKzJwVGhYTFdZWU5YOUcvN2VwNVU5YW01bXdnU2E3UEtlMUxvaHViRTZoanJDV25WTFpzMmFjUUM3eHNpQWs4SFhUU3BFbEtFWGNGSmsrZVRPWEtsWE1ZRXhVcVZMQytQYzhkc0hqeFlxcFlzYUxNMTUvaHkvMzlHcjRMQ3dzVFY3UzVVMDRwTWpKU0ZSTkRHTFNhUjFiMVdSQ0xZUjdsSzFRUy9Zbi9yMVlHb1UrTGZPRWQ4UXdORGUzcTRlSHhQZjdzSEZaQzVCbFVZdTVNWUFxdFF4MkxjWUJiM2JwMU96RlhiNEFQdUc1V3ZyRVZSWjVCSmViT0JLYlFPc1JZUk1LR3IwOUVSRVFpZjNjQnZ6M1V2eHhsYll4bjhSNUV0L1lQcDF0cHd4aERuUVJ1YS84d3VzbkdjZTNMcGpTdmorV01DSHpyMTYvUHd4SHk1TC90WXFKMjdkb2l6NkFTYzJjQ1UyaTFhdFhLTVNicTFhc244Z3dxTVhjbU1JVVdxUWt4dUlXSGgzZEdQSUN2SEJOZHUzWjFpNXdTcHF2MFVSMzQyc1RFREFhOS9zYWJTb0VzaG1OVXFsSk45S24wam84WjZOTWlYM2hIU3ZNQjJaelBqaWJ4c1A4U3ZxcnFYNEptdHk1Qkh3OHBRWitQY0M0K0dtUnB1NEt2TmRkeHVYTGx5dVA0WUl0anJsNEFpMGFDZ1c5UUdacmRLNHhXeldoSzYrWTBjeW8rbXRaRXRGM2UzOHNoMzFhdFdvVXgzeW44MnhYVWFSVHFSUnNYMTZRTC82bFB2NjZLY1NwK1hsNVB0QjFSemRQQXQzWHIxc2pvbGVidmxESEJJeEZLU0VnUVY0MGtKU1U1RlgzNzloVnQrL2hZcjd6TE1TYjRMRjhJSVV3UDc1VjJKc2FQSHkvYVJwOHArSlpoZU1iSHg5ZVJZd0kza3NFZ2NiVVlSTWFaUUg0SWJWZXFaRGxEMXZuYXhJUjQ3ditUVHoxTjlXTWFGU01YcUZLdGh1aFhuTkJvNVZIMGFaRXZ2Q01lTEJTMU9IZzcxNmhSSThuVDAzTUh2bllIbENwVktxTktsU3Fqd0kzRm9TWnpMUVVVTWI2bDE2OWZYeVk0T0xnTkRraXVjMHExcml1Zzh3MEpDV21kbHBibWlWamc3NHRqb2dBaDg0Mk9qZzVHUEFCRk1DWmVaTkRDaHg2bWVpeUl4VENQcXRWcmlyN0ZKZVphZVFGOVd1UUw3MGhKSHE1NmxpOWZ2Z1VIVFNjTzZDNjhQSjNQbXBaNWVYbWxJckNkQ1c0emhkdCtFeHpBQlp6QUxTVWxCUWNkYnUzM0tHcDhHYVVTRXhPRCtMY09ySEZkeTVVck45dGQrRmF0V2pXeGUvZnV1R0lKSWx5eU9DYnlEeE44U3pLS1dreUlCNjNOZlhDZWVOVnFNY3lqcWpieXVPZWVlOUNGS01oM0ZmM0NPNEpBTGhrWkdWazJLQ2lvYllVS0ZUb2gySEdtaEVCQ1lNdmdzNzBDaGUzMjBTYmFCZ2R3QVNjK1kwT1NVZkFzcW53WkhqZ2d1VjV6ZCtITEloRS9jT0JBY05VRnpXb2VRSEZNbUlQdDluUGdhKzFyTEJlaG1CRG1NV2Z1Z3hURmdsZ004NmhjdGZvZGF4NVdzZUJBeGxVMkRmejkvVHNFQmdaMlJPRHJRR0FWSnVTMjBEWTQrUHI2TnVYaXEvUFR1Qlpadmd3Y2tLV2lvcUlxaElhRzFxNVpzMllEM2hhRW8zbU5HalVTQ2hONk85eG1MTnFPalkwdHAvR1J4YXc0SnZJQnVhMDdNQ2JFdE5XOCtRc29xbjZEWXVRQyt2T3Q3c1JwS3hraVlIZ0lIY2huUzZFYy9ERWMvUEVCQVFGT0FkcmlOcVBSTmpqb2ZEUnVLaFJKdmhyMGcxU0loNU1ndHlsenNYSXNqb244SVE5ODNSNWFUSWlFK2RLbGoxTWtDMkl4ektOY2VjdFZtSGRjd3J5NEZKZmlVbHh5S2l4NDRsTGRWMTU1bFNMcnhSWWpGeWdiRUNqTUExZTJhZVdPdVZUWEZ2cVpVc2xIemxFMEk4N0ppSkk1TUZRY1pSUlp2bTRDQTcrY1lpSTFOVFY2eTVZdGNjNEV0NW5uUGo1NThtUTBJODdKdUJOalF0d2tpSmRQcVFTeUdJN2g3VzI1eEJ4dmpkVEtFTkdwUmIzNHp0d293RHVrQjQ3SG91OXAxc1BmMDRWNVB4RE4rZEc1UUp0b216bE1BaGVkbDhSVGh4M2ZKVDhSTGZtWmFMR1RnTGJRcG9wdnc4VmZsUUI0Mlk2dkJuMHFTVnk2NlVUWVRtRUpYbnIvb2t5ZE9sVkEvdzMxVWxKU1ppVW5KMS9BdXpLU2t6YzVHV2d6K1FKek1QU3h4Tk91ajQ4ZlB6NkxjU0V6OHhnZE8zYlVxVUNiYUp0aDRMdDA2ZElTQUMvYjhkWGdWakdoOXk4Sy95MGVUN0o3OTI2S1lFRXNobmw0ZUhnSTg3ampIazhpR1ljSTNvZStwNC91WVZHcy93dFJBTVBmeVVDYkRTOFFUV0VPNEFKT0dqY2hjUHhweDNmeHIwU1RyaEVOdmNtVzdtU2d6WHV1c3Brd0IxdStrbmxZK1RKd3NPTDZlWEZ6R3dNM2pUa1RlcnZnb0F1SHRYOVJKT01RbkZtMFA5cTA2VXZ4Q0F0WFBJTUpiYTVhdFpJMmJjTExsVklNZlN5Wmg1VXZpL1pIUjQ0Y29tM2JVbDN5VmtHMGlmZDRaR1FjaG9rWStFcm1VU1JpUWpJUDhXQkVQTnl2ZGxnRVJVVEZGTU1FMEZmb1B1Qk9mRERpYlNFK1I2UHZaZEd1Q0NGbkFYY2x3R0VxRElRNWdadkdFVndOZkJmOWoyakVEYUxCTGdZNGdFdDJmQms0T0hHd2VuZnAwcVYyUkVSRWEyY2pMQ3lzVmMrZVBYSG5NQjdyQVM3Z1pPVnJHeE1zMXFNM2IvNks4S2h1bGJBN0UrQUFMdUFFYmhwSFF4K3pXSStHYU9POUdpcGhkeWJBUVRNUVc3NzRGSHdaUlNVbUFQRkk5cmhtQ1JUT3dsaU1uRkd0UnJBd2pqdjFrZXg2RUhzOStCMGRhbjZleGR0TjBKSXg3enZhQVc0YVJ4bUM3NzEvc1hoZmR3L2N4MXdjOE1YWkhMN3pybGF0V3AvU3BVdnZRZGRYanU5RU5STDdPaFdWR2x2ZWRNZ2N0Z1VIQjNjRko0MGJlRnJ2TU5mKzlrcE9UajZFcDc2cXhOd1ZXTE5tTmFhd0hNYkVzV1BIRHVGZEdpb3hkd1YyN2RwQnpFbm1LNXVHWFV3MGFOQkFQSXJGbVlpSnNieXdLSWVZQU1UTG9FYU1IRVhoa2RIRk1JR2djaFZFMzk2cEw0TVNCeDNEWithWjYxbVZJTng4eHU4T0NHWXUwMC8rOVRkejA0TVpCeHlFR0dkSGd1K0lxeXpjMTl3RG81bXBJNzU4dHV6djdlMzlGcnE4NVNQL29sa25ydExjSDRobS8raGNQTWh0b3UyNE9TK0pvUGJ6ODN0ZTR5dk9ObTFqWXNPR0RWbDQ4cXBLeUYyQkZTdVc0eVZMRG1QaThPSERXWnMzdTM3VW9RUHZNRTlQVDlmNTZsenhhWWdKM0FPZ3YzOWRuZmNwVEd3V2Jlc3YyWElRRTRCNERlM3p6ejlQZFZrWWk1RXp2TXFVRVgxNnA3NkdGZ0hpN2VQajg5UU1IbEQ1LzBUazV5YW93Z1l5SmVNUytmdjc0eHB6UEkwVUFpRkVRdWM3bU0xamtKdGdPRXRFTm54ZlJIZjNYM09ZSnZGKzFkUHlPNnE4VDJGQ3p5a2hyd1V1NEtUeEZXSmhHeE40RDdkS3hGMEZHTm5hdFdzZHhzVFJvMGVWSXU0cTRKVzBTRExiOEVWZlcyTUNiejdjdUJFNXBROWRuRlA2VW5CeEVCTUFuckpMQnc4ZXBGcDF3cWx1UlAxaVpBUDBFYm9PT0hUb0VMb09CWDJJTGkzNmhYZkVLeUlpSXA0WGI5elBZdXpIWjZmdWdzcU15Y2YrUkUvZmFOcTBhU3h6eGNIbmcwZEY2M3dIc1dDN0M0WmRZVkhPdE9jYkdSblpBbDNkNEw0bmFRcWJvcnZrbE1BRm5DUytYcnhzaUFrSW9FcHdYQVhrUFQ3OTlGT0hNWkdSa2FFVWNWY0JlWSs5ZS9mS2ZDSEl2akV4TVMxTGxpeEpJMGVPRkhrY2Q4b3BnWlBFVjQ4SkFGTnVkT3ZXTFlwdDBFZ3BtTVc0allxVnFxSWZ4Uk9UMFdkYVFSK2lTNHQrNFIzaGtiTmw2SHd2ek9PSC9NSDM2RVh5MlhuYUN0OUQ1OG52Mnl4bDNaeFFpYzFqd29tcjRoL2c2K3Y3Qm5QRmkzLzhlVmo5Tmc0ODhCM0VncDBmOVAzaEl0MlZjZHFLM3QrZXA2VExXY3E2T1dIWVgwU1RUdHJ6NVRQTWxlQTdldmYvcUptV3ozRUh0R0FNUy8xQjhPVVllSjI1NmkvK3NjYkVsMTkrcVJRYVZ3RUN0MjdkT29jeGNlVElFYVdJdXdvd2ovMzc5OHQ4OGFpU3NucE00QW8yZDhzcFlYUUh2all4b1FOWGo0bFhBb2V4UUJiRE1ieTExODlPblRvVlhZYUN2aFA5ZUVjVTNoRWZEdytQczFpY2ZKYVB4SE41ZysvdXMrVDk0U2Jxc21rdlBYcjRsQlVEVTlPcHlxcE41TFA1Q1BtZFpSTlJyT3NJbGRoQXhwNjRMdjRCekRHVHVZcjNWWmN1WGZvc0RqendUV0xCemd0NlpwNmxkbDlzb3Z0MzdLVjNqcCt5WXNHZWRPcXhmaE4xM1hlRUJ2NmVwVnpYRVliK1NUVCtwSkx2VCtCNy8ra2I1RTQ1cFpxTWU0OWZFM3hMbFNwMUFySEF5NGFZMkxCaGcxSmtYQVhaUEZReGNmandZYVdJdXdxeWVXaDg4ZHJjQUU5UFR4RVQ2RjgzekNtcFlrTEhZQVp0Mzc2ZGdrUHJVRmg0dldJb2dMNUJ0d0hidG0xRGw2RU1Zb2grdkNNSzc0Z3ZmOXpBNG5pWXgvZTVoOCttSXpRN0xaTXVYY3RDQnluTCsxK2ZveXFmN2lDL1UxZVUyMUNoRWh2SUtNMDgrRUQ3alRlRFp3VUZjbERmd0lFSHZra3MyTGxGMTcxSDZLVWptZlRIZGNkODEzOTdqbnB0M2tIOWY3bWkzSVlLUS84Z0dxT1poODQzSXlPalBQTzlDYjdUbUsrNzVaVHV1ZDIvdUFoZEZ3cHJUQ0NScWhJWlZ3SG1nVGZmYVp6dFlnSnp5eW9SZHhWZ0htbHBhVExmZ016TXpBcDZUS0NPYWo5ZEJSaVpiaDQyTWFIRE9uVVZGOStNNnJCUUZzTWVnVUhsUlI5R1JrYmFUVmtCZDBUaEhZRlFpQjBkL1EyTHluZTVnOCsyMC9UK2FWWjVFK1hzSDFjbzhzczA1WFpVcU1RR011eTRWZHhZbXNXTlNrRjg0T0Z2d1hjZ2Y1c2JkRDk4V2hpRG1mTFRYMWRvNlBZMDVYWlVHSHlaYU1SdE1lWnZLR2pKa2lYQk90K3A2Rjh0bitNT3dMVGd4TnY5eS9ZbllzRVFFK3ZYcjFlS2pLc0E4OUJ5SHNxWVFETFhWc0JkQ1pqSHZuMzdITWFFTzA0TGZ2NzU1NnFZa1BFMlE3ejFNTFIyT05XcEcxVU1DZWdUZEJtQVB0SUsrc3phaDNkRTRSMnhDc1VJaUJ0R0gyWngvQW85ZXZBVWI4SllQdUJEWkNtZlk3MzhPeHVHemNuOW9ZdVh5WGYzT2ZYMmJGQUpWMU1aeGMwZ0ZPQTdrTnN3aTM0L1g2RjNqdG56VGJsT3RQSXEwZWZYaUM3YzFMN1V5c2xMbDZsbjVqbmw5bXd4bU0vVGh0NDJEOEdYaFNKVTV6djVETytYVFY0bnR5am9uTkxZek96TkEyZWhLcEhKRFY1NDRRV2FPWE1tY1YvUSsrL25MekVNY2NQVlZoSm5RMHdjT0hCQUtlSzVBVVkyYjcvOXRuZ1dVWEp5c3JLT1dVZ0pjMlZNdVBPMG9FMU15R2pPb045Kys0MUNhOVZSQ3VqL1orajNkZ1FGQmNsM2xhUFBySDE0UnhUZUVhdFFESUc0d1VCTUltcjdhVjc5ZGpsNzdTYTFnRERaMUlPWnlHVmkraG03T2lwVVpBTVpZQlEzZzFDQTd3QTJLYk1ZZWNqSTkzeldUWnJOb3dYYmVpbHNJbko1K3RnWnV6b3FEUHFWS01uRzdPYk9uVnRINXp2aGE5NHZMWitUV3hSV1RtbjBzZXpOQTJlaEtwRXhDNXg1TFZxMGlGNSsrV1h4cnV5SEgzNDRYNWVqUXR3KytlUVRoekdSbnA2dUZIR3pXTE5tRFMxZnZsenM5K3JWcStuZi8vNjN1TnhXVmRjTVlCNTRwcEhNVjQ0Sk41OFdsR1BDRnVzWU5HL2VQQW9PRGFQYUxKckZpQko5Z2U0QzBEZGFRVjhaK3UrT0tMd2pWcUVZQ0hHRGdaakVTeWRZZ2FUU0RkTWhpbnJBMmI5dkQwRlNmN21zckdPTGltd2dmWTNpWmhBSzhCM0FnbTBXcTg0WStTNkNjU2pxQVQ5TCtadUR2MTVXMXJIRm9JdEUvVzNNVGhhS3NlaGZLYWRqRm9XWlV4cVJnM25nTEZRbE1tWUFzM2owMFVmcGpUZmVvRGZmZkZOODRnWXp2TmRBVmQ4TUlHNFFlSW16SVNhUW5GYUp1Qm5BTEQ3ODhFTWg2QmdSNEJOVFpEQVFtSUJxblp5QTlYQ2ZoOHhYamdrM254YVVZOElXUFJoMDhlSkZxbEV6aEdxSFJSYURFUkJZVHZSZFlHQ2c2QnV0b0s4TS9YZEhGTjRScTFEMGhianh5Ymtwbk1nU09ReTlwUDdHb3FXcXAySE9MMFJidWJvT1ZSMWJWR1ErdmJJeEQvRHQvejl6NlBkekZ2MzA1MjIraHk1ZlVkYlQ4UzYzbG5IOU5sUjFiSkhFKzlnN0cvTVlpZjFTNUhheVEySG5sSVljemQ0OGNCYXFFcG1jOE5SVFQxbU5RemVQMTE5L1hTeS8rT0tMZVRhUW5Nd0R5V21WaU9lRWp6LysyR29jc25rQTZJTzhHZ2pXMmJWcmw4T1lLSWhwd1lJRSt0ZG1XdENSZVFCZk1PakpKNStreWxXcUs4WDAveFBRQitncUFQR3ZsYzlWL1hkSEZONFJxMUQwZ3JpZE1vZHFCL2hVV3lxUC9jRG1vYWlYSDFSa1B0Mk40bVlRQ3ZEdHo0SnRCb05QRy9tdStCK2JoNkplZmpEd0F0RmRObVluQzhWUTdKZE5YaWRiRkhKT3FlSzN6Sm1kVWVKclp4NFFFcFhJWkFlTU9CNTc3REZoR0crOTlaYUFiaUQ2Q0VRM2tIZmZmVmU1RFVlQXVFSG9KYzZHbUVCK1FTWGkyUUVqRHR4dkFjTkFBaHZRRFVRM2tid2FDT3J2MkxIRFlVemtkMW9RS09pY2tzMjBZSGJtMFlwQlY2OWVwZkR3Y0twVkorTC9OZEJOQVBvQ2ZhS1ZscXIrdXlNSzc0aFZLTHJEUEU2YVE5ZmpsM25WMndWL3ErcmxCeFZZTnp0bll4N2cyNDhGMnd6bWZXL2tpNzlWOWZLREFlZTVIN0l4anlUc2wwMWVKenM0STZmVTkwajI1Z0VoVVltTUkrQ01DOGFobXdhQTd6RTlzMnJWS29PaHdFQ1FBN0hkUm5hQXVHRTdFbWREVENDL29CSnhSNEFSd1RoMDB3QWcrQmpCNEY0RzJWRHlZaUE1bVVkK3BnV0J3c2dwMll6c3NqTVA0QjJHdUxBQWw2ZXFSUFgvQS9UcEt2eFAwUmRhZVFkOWg4TExCdHdSaFhmRUtoU2RjV1o4M0J5Nlp0cVlCLyt0cXBjZlZEaEIxTjU0Wm13UUN2RHQ5N001elB2T3hqejRiMVc5L0dEQVQwU2RiTXhPRm9yK3ZEK3EzSTRqT0NPbjFEc0g4NENRcUVSR0JUM0hzV3paTW5HMUVvQ1JoWDdtams4SXYvNGI2dWtHWWxid0lHNTRtNTNFMlJBVHlDK29SRndGUGNjaGY2Y2JCMHhJTnhENWQ5MUF6Q2JSc1Qxc1ErWXJ4d1MycDlwUE0zQlNUaWtuODhDenVuRHpJMDJaTW9YS1Y2aWtGTmM3R2RobmRCR0FQdEFLK2tUY25ZL0N5d2JjRVlWM3hDb1U3V0Vldk10bTBQWEVYN3pxN2RMMTRDL0tldmxCQlRhUXR0bVlCL2oyWmNFMmcvbm5qSHpublBwRldTOC82TS9pbnBpTmVmU0dLV0owWndaT3lpbmRkVGg3ODREQXFrVEdGcGc2MFkwRG93cVlBNzdIaUFNSldDekRPSEFHcnh1SVh1K2xsMTZpUng1NXhMQTlSNEM0WWFRZ2NUYkVCUElMS2hHM0JVUmJOdzV3d3FkdUhMb0JRZlJ4OVpadUlIbzlqQlp3R1MrV2N3SzJpVHVNWmI1eVRPaDlrMXNVWms0Si8zT0piMDdtQVloWDFGNjVjb1hxMTY5UGxhdFdGL2M2L0g4QTloWGRBMkRmLy9yTHFqT0dWODN5M3diY0VZVjN4Q29VYlRDdGNzd2NXdkNacTF3bXBwOVQxdFBodStrcythemNhNFdxamkwcXNJRzBOSjRaRzRRQ2ZQdXlZSnZCVEJaWHVUeDk3Snl5bm82dWU4OVM0dnE5VnFqcTJLTC9EMFN0YmN4T0ZvcTdZQjR3YUJOd1JrNnBBaHRJMXh6TUE5TTZLcEdSQVJOQTBsUWZjZUFUMzJQS3gvYk1XamNRYkJmMWRNQjhYbnZ0TlVOZEZTQnVFSDJKc3lFbWR1N2NxUlJ4R2JxQnlkOUI1SEdsbHUyMGwyNGdtSHFTdjhkK3dSamw3MVRBZHJkdTNlb3dKb3BBVHNtTWVRRHZNdkRpSzNHbFVkVnFOWlZpZXljQis0aXVBYkRQbVprc1dKYnlML1NaWFBnN0ErNkl3anRpRllvV21GWTVhaDV5ZWYva2orUjNPRXRaRDVpOTl6U2wvbmpSZ2d0L0tPdllvandiU0xOc3pBTjgrN0JnbTRWY3Z2am1SK3I5YlpheUh2RGlvZE9VL3ZORmdRTVgvMURXc1VWZlJvSU5YMWtvdW1KRXBlVnpjb0t6Y2tvZEQyVnZIcGdpVW9tTURDUnBZUUR2dlBPT0FCNXhBZU53ZEZhdEd3ak9jUFYxeklvYzJscXhZb1hEbUxBVmVSWDBHLy93dUhrQWY4TTRIRTE1eVFhaXJ3TlRBRlQxWmFCT2FtcXF3NWdvQWprbHMrYUJSMjlzWm9qL2UrblNwYWxHY0cybDZONEp3TDZoV3dEOEw3SFBXa0hDUTd4QVN5NzhuUUYzUk9FZHNRcEZQTXdqd3p3KysrVnZYdDFTY0E5QzFiV0hsUFY4L251YXpsNitQUVdEOVZUMWJGR2VEYVJKTnVZQnZuM09tY2ZPMzI3ei9ZUDU5dHAwU0Ztdjg0N1Q5S04wV1MvV1U5V3pSVjlHWERibTBSRWpLaTJma3hPY2xWTktQSmk5ZVdDS1NDVXlNdlN6Y0l3SVVCL2ltdE1adFg3bWp5a2dtQTIyWVR0S1VlSDk5OThUTi9GSm5BMHhvVTh4WlFjOW40RVJBYWFVY0ZkNlRya1NiQmYxY0RVWHpBYmJNSk9jaDNsczJiTEZZVXlZblJZRW5KVlRzcGtXTkdzZVFEQ0Rqd0lTZWFHeUFVRlV2V1lvaGRTcWUwY0IrK1JmTmxEdkk3R3ZXc0crQjZPL2JBdC9iOEFkVVhoSHJFTFJtQVhGOTRoNVRCUmhjcnQ4K3MxNTh2NWdCL2xzUGtjKzJ5K1NUeXIvdlRLZEh0M0hwN2hTd1hxcTdkbWlIQnRJUStPMGlrRW93TGZQOStieG9uRW1pRksvTzA5dFA5bEIzZmFkb3g1SExsTDNBK2VwL1gvVDZlMURScjVZVDdVOVcvUmxOTGJoS3d0Rk80eW90SHhPVG5CV1RxbjFnZXpOQTRhZ0VobGI0TXdMSW9tejdOeWNUVU5nSWVBWXFhaCt0d1hNQXdlcnhOa1FFOWlXcllDckFMUEE0OXNCczNrU0FBYUNGMDZadlJrUlJwcVNrdUl3SnN4TUN3TE96Q25aVEF2bXhqeUFLTWJ2REhyaWlTZkVkakM5b3hMaG9naDVxZ3JBUG1vRisxeVB2MU1XL3MyQU82THdqbGlGSWhibWNTaDMyUHFIOVltUm9oejg1VEtOVHo1Q25UL2RTd00zcE5Pblo4NXJ2MWpLb2I5dUtyZWpRcm5EUk5IWm1BZjQ5djQyZHpoeXhjajM1TVhMOU5pT0kzVHZsM3RwYmtxNk1CUzVmSDMxcG5JN0t2Umh4R1pqSHEwd29wSnlPdG5CV1RtbGhQVHN6UU9KWVpYSXVBb3dELzE5RTZxWWdIbXBSTnhWZ0huZ3lpeVpyeHdURUhyVmZzcUFDVGd6cDRUL3VjUTN0K1lCdEdhSWd0RVM5ck5TNVdwS01TNUt3RDZnSzdTK29XZWVlVWJiUzFGYW81OGNGZjdkZ0R1aThJNVloYUllaTRudndkeWhHbzhRemw0ekNyS2pjdW5HTGFySG9xWGFqZ3JsMkVBaWpYUHlCcUVBMzk1bmM0ZWgzK0daVnViNC9ubnpGazNnVVpKcU95cjBZZFN6NFNzTFJYUHVLMVZ1eHhIa1VsZzVwYmo5MlpzSDhnc3FrWEVWWUI3SWUwaWNEVEdCMFk5S3hGMEZQVDhpODVWam9namtsUEppSG9EVlFOQTJjaUNCNVNxSVp6OFZSZWdQT3dTd0w5Z25xV1JySENoY3g0QTdvdkNPV0lVaVBBL21BY0JBdHRyY3FHWmI4SHR1akFNSVl2TUl5OFk4d1BmdWIzS1BJVHhDT0hJNy9hRXMrSDM4OStyMXMwTjROdWJSbEVkU3F0eU9JemdqcDlRNExYdnpRSDVCSlRLdUFzd0Q4L2NTWjBOTVlJcElKZUt1QXN3RGtQbktNVkVFY2twNU5RK2dCVU1FSnU2a0R3Z0lvTEpsQTZsbVNCMmxRTHNqd0JXYzBRVUE5Z0g3b2hYc1d3TDZKNmZDOVF5NEl3cnZpRlVvNmtEY0QrUWRDY2VKSHZ2SlloUTZYcnBBMVBXVXVuNU9DR0lEcVcxTTZCcUVBbnp2UHBOM1RPTlJ4WXBmTFVhaDQ5UGZpZWIvcUs1dkJtRTJmR1doYUlqcE9DMmZZd2JPeUNuRjdzdmVQSkJmVUltTXF3Qnh3NmZFMlJBVCtwVlU3Z0lJUFQ1bHZuSk1GSUdjVW43TUEwQU9oRS9YaU02Y09VTnhjWEZpMnhVcVZsR0t0VHNCSE1GVkI3aC8vZlhYMkJVVTdGTVVmMitxY0YwRDdvakNPMklWaWhDWVI3cjdJSWdOSkRnYjh3RGZ1L2wvNlRaZzh3ak54anhpdEZ4T2JsRFlPYVg2T1pnSHpscFZJdU1xUU53d1pTQnhOc1JFZmg2ZlhoaUFlV0FLU2VZcngwUVJ5Q25sMXp5QUVNWi9HZUtaVDNpbk4vWWRWeXhWclJGQ05WbW8zUW5ncEY5TnBmV0Q0Q3c5cjJvREl3VDlZclp3ZlFQdWlNSTdZaFdLR2tmNWovM3VneUEya09yR3E0RU1RZ0crZDU5Mkk3Q0IxTXpHUEtKc3B1WE1vREJ6U3BnV2pOaWJ2WGxnRGx3bE1xNEN4QTF6K0JKblEweVl1ZmZDbVlCNTRLeGY1aXZIUkJISUtSV0VlV0FUK0Z6R0VBVWpSRHhBRUYvamt0NXFNSkdRT2k0Rk9JQUxPT2tBUjB5RlNtVVpmNS9yd3V2WjlVZVJMN3dqVnFHb3ltTHNuOFpmdUFuS3NZRlV5Y1k4d1BmdVUwUzkzQVM5MlVDcVpXTWVkVEVkcHhEeG5GQ1lPYVU2ZTdJM0QrUVg4dk9ndllJR3JnYkt5VHcyYmxRTHVTdXdhVlAyNWxFRWNrb0ZaaDRvdkR5SWtjbWdhOWV1aWF1eGtFZkFULzVsQTZoSzFacEtZUzlNb0UxNXBBR0FFNjZtQWtldDhORkZnL2kzUEJWZVY5a2ZSYnJ3amxpRm91TCthMVFGVTBiNzNBUFZXR3dyN3YxYmNGTUpSWlgwYTlTWEJWc2w1SzRBdUZUWlorUXJDMFZ0OUsyV3o4a0xDaU9uVkd0Mzl1YUJTME9YTDNlZnZNZUtGZjhXZDFGTG5BMHhnUnZsa3BQZForb3FKU1ZaSkZobHZuSk1GSUdjVW9HYUJ3ci9qWWNwaXFmeG91QjF0cmlIcFVJRnl4Vk5ucDVlRkJoVW9WQkhJOWcyMmtCYmFGTUhPSUNMOVBwWUZIQzFQdVF3TDRYWGQ5Z2ZSYmJ3amxpRkl1aUw4OVNZendrQ2NPYXZFSE5uSXBBNU5HVXVnV3UrRTl4VVFsSHp5L1BVNjJ1aVBpZFp2RjJNdml6Z3ZURnQ5Wm1Scnl3VUlaaU8wL0k1N2dDUlU5cVZ2WGs4OTl4enRIcjF4MjR4K2dDSE5XcytGbWVyRW1kRFRPQnFwTzNidDFrVDFhNEVPSUNMN1UyTmNrd1VnWnhTZ1p1SFh2aDdYSTBsWGlpRjh1ZWZmNHFuQXNmR3hvcjJBWWc3UmdWSVhsZXRubmN6d2JyWUJyWmxheGdBMmtTc2c0TlV3TTNVMVZRNUZkNU9qdjFSNUFydmlGVW8vQmJ2WUVHNVFmRThRS3ZGd2xLSkJieUNrNEUyYTNQYjRCQjA2Q2I1TGpCZUl3L29CMTcwUDdaVHVZTTNhUEFab3VGODFqK0FCYndmQzdremdUYlJOamlVWTc1Ump4c3Z5NXcxYTFadG5XOE5LWi9qRGhBNXBSek1nL21MZXd6V3JsMGpyZ3lDRUVMd25BbTBDVlBBVlViZ01tM2FOSWN4Z2ZkYllQU3hZOGQyY1hVU0V1aVl5bkltMEdacTZoYkJBVndlZi94eGh6RlJCSEpLaFdZZWV1SGZFeGxyR2RhQ1o0bk5tREdEcWxXN2ZXTWVVTkxEZzd5OHlwQ1ByNStZNXNKN05QQWVFZHlIQVdBWjMrRTMxRUZkckNOdlF3ZTJqVGJRbGswQmwwU3VVMkNGdDJlNlA0cE00UjJ4Q29YdnpJM2s5L3hCQ2tqUG9vUVRSRzM0ekw4VmkzaExKd0Z0b1UxTXp3U2tYU08vNXc2UXo3MkdWMklhaEtMaDRxOG8vTTBEYkhoWjRxeC8zRGNXakhVUzlMWjZjdHZsOWwrajhEZlNLZVpCdzF2WWdoWXRXaFNpODYzS3h1aDJPYVdkMlpzSHJqSlpzR0NCdU1zWkJySnVIZTRYK0pTeDFrbEFXNTl4MjZ2RmRCVzRUSnc0MFdGTUxGMjZsRjU1NVJWeFg4VE9uZHRwOSs1ZDR2RWp6Z1RhUk50NHhTeGUwb1NuMjhwODU4K2ZIK0xCZ2dhK1JTQ25WT2ptb1JldTE1VHhLdU13UTVSYnQyNEpjWC8yMldlcGI5KytGQklTSXJqbEJWZ1gyOEFKQnJhSmJVc0ZiYUx0T0s1YjRJVzNtK3YrY1B2Q08rS0RJTUdpenowZkN3UHhYYmlWL1A1OWh2dzMvVWIrVzM1M0xqYitLdHIyblo4cXVQaE10RDRxQVUrbUNnQllLUDdFZ1JmOXdDcGhJTkZQcFZMd3FqTlVNZVUzcXJEMWQ2ZWlVdkt2b3UyWUo3WUlMdlZuV3UvT0JkOUFGcFB5elBjYStGYmNkcFdxNEt4Zk1VM25DbFRqRTY2S1c2N0lmSDE0MlJBVDQ4YU5Fd2FDTXpTY1FlTkJleEJFWndKdG91M3AwNmNMTG1QR2pIRVlFeXpNd2tBd3RZWHBGenltQXk4M2NpWndneDdheGhOd3dXWHUzTGtPWXdLbTdHNDVKVHpTWGVLcngwUytrTnZDNi9SanJHVFlGZVJJOEd3eWpJUXgxYlJ3NFVJeEdzVkpCWUJsZklmZlVBZDFzWTZEZ2piNmFjMFdXdUUyOHRVZmJsbDRSN3hMbHk2ZGdjVXlkeSsybUljYndhdWI1Y0R6OVBUY3cxekxBbDVlWGhrNDhHb05XaVFFMjUwUTBuZU9nZStCQXdlQ2RMNkJIMlJTNHlNWVZhbkYzSmtRT1NWd2VXdS96TmVibHcweDBhTkhEeUhZN29UT25UczdqSWxodzRZSndYWW5EQmd3UVBCbGp1QWJrSmFXRmdpKytBNlBWM2UzbkJLZXdpdjFyeDRUK1VKZUM2K0xSNzAzWTh4a2ZNSVFOeHptc1dCZGJHTTJvem5EN3RIcGhWVzRyUUxwRDdjcXZDTmwvUHo4WHNkaXlhRHE1SHZmWjBvUmR3bnUvNXc4eWdXTFFBNElDUGdIYy9VRGVQa05mRmVtZkhXS25mK3BVc1JkZ2RnRjY2aE1SY3RUTjIzNGl2NHRWYjhsQmUzTW9uZ1diWmZubEpoRDBLNGJWRG8yVWZBdFc3YnNVNGdGWGpiRUJGNXlNMm5TSktXSXV3S1RKMCttY3VVczc0dFd4UVN1bGxtMGFKRlN4RjJCeFlzWFU4V0tGV1crL2d4Zjd1L1g4RjFZV0ppNG9zMmRja3FSa1pHcW1IQW5sR01rTUhEWjd3ekdZNHdYR0c5cXdESyt3MitvZzdwWVI3VXRsK0NPS0x3am5xR2hvVjA5UER5K3g1K2x3bHFJUElOU3pKMElUS0dWcXROY0JERzQxYTFidHhOejlRYjRnT3VtOHcySWJDSHlEQ294ZHlZd2hSWVFvZVRyRXhFUmtjamZYY0J2WGtsektHRDdkVXJJSUdwemxNU1RkbHM2Q1dnTGJTWmd4TEgxS25uMW4ybmxXNzkrZlp6ZGVmTGZkakZSdTNadE1SMmdFbk5uQWxOb3RXclZ5akVtNnRXckovSU1LakYzSmpDRkZxa0pNYmlGaDRkM1JqeUFyeHdUWGJ0MmRZdWNFcWFyOUZFZCtNb3hVVnlLaTEzaDRDak5CMlJ6UGp1YXhNUCtTL2lxcEg5RjhtdzFocndIUFVmZXcxNTFMcEtlRlcyWDlMRytiT1Z5NWNxVngvSEJGc2RjdlFBV2pRU1pyMmRBUmFyYVlUVFZIZnRQaXBqNGlsTVJOdm9mb3UzU2ZvNzV0bXJWS296NVR1SGZycUNPUjYxWThsbTZqdnpXL0VCKzZ5NDRGNnUvRjIxN1ZBc3o4RzNkdWpVZUlWR2F2MVBHQkk5RUtDRWhnZnIzNzA5SlNVbE9CWktjYU52SHg4ZDBUUEJadmhCQ21ONlVLVk9jaXZIang0dTIwV2NLdnJqSHdUTStQcjZPSEJQVnExY1hCb2xrTHVicW5RbmtoOUIycFVxVkhNWkVBWmVTREV3WndaZ3dMWWFrZkZrYjREdjhoanFvaTNXS2l6c1ZEZzRQRm9wYUhMeWRhOVNva2VUcDZia0RYN3NEU3BVcWxWR2xTcFZSNE1iaVVKTzVsZ0tLR04vUzY5ZXZMeE1jSE53R0J5VFhPYVZhMXhYUStZYUVoTFJPUzB2elJDenc5OFV4VVlDUStVWkhSK05OZTZXQm9oWVRCVkFnL2pBaW1FSVFveFpqSUdNQjR4M0dLc2FYR3JDTTcvQWI2cUF1MXNHNjJFYXhrYmhENGVBb3ljTlZ6L0xseTdmZ29PbkVBZDJGbDZmeldkTXlMeSt2VkFTMk04RnRwbkRiYjRJRHVJQVR1S1drcE9DZ1EvTE1vNmp4WlpSS1RFd000dDg2c01aMUxWZXUzR3gzNFZ1MWF0WEU3dDI3NDRvbGlMQTRLUEZaSEJONWh3bStKUmxGS2lieVdMQXV6QWQ1RTRoL0U4YVRqQVBjNXEzSXlNaHJIVHAwK0h2dzRNRi9qeG8xK3U5Smt5WmQ0VkhiMzRNR0RmNnJWNjllZi9EbzdFODJzU3VsUzVlK2lYVzBkYkVOYkF2YkxCNlJ1TEpvZ1Z5Uy81RmxnNEtDMmxhb1VLRVRnaDFuU2dna0JMWU1QdHNyVU5odUgyMmliWEFBRjNEaU16WWtHUVhQb3NxWDRZRURrdXMxZHhlK0xCTHhBd2NPQkZkZDBLem1BUlRIaERuWWJqOEh2dGEreG5KUmlZazhGTjAweWpPR001TFpJRy8wN3QzbjZ0S2xqOTk4Ny8zM2J5MWI5ZzY5L3ZycjlOUlR6OURpeFV0b3laSWxOR2ZPWEhyZ2dibmlpcTk1OHhmUXdvVVBpL3pWMEtIRC9temNwTWtsWDEvZjY5aVd0azFzVzVoSXlaTEZIdUwwd3NGaEZRc09aRnhsMDhEZjM3OURZR0JnUndTK0RnUldZVUp1QzIyREF3ZEtVeTYrT2orTmE1SGx5OEFCV1NvcUtxcENhR2hvN1pvMWF6YmdiVUU0bXRlb1VTT2hNS0czdzIzR291M1kyRmhjZlFJK3NwZ1Z4MFErSUxkMXA4VkVMZ3BVSEhtS0FBWUVQaVU4UER4cjRjS0hycTFjdVVyY2dMajA4U2RvNnRUN2FHRFNJT3JZc1RPMWFkT1c0cHNsVUd5RHh0UzRjUk5HVTJyU05KN2F0azJrTGwyNlVzK2V2V0VlTkc3Y0JCb3pkdHl0RGgwNi9zNUdoUHVRdGpCR2FHMmh6V0lIY1daQmNFZ1FBY1AvbUVBK1d3cmw0SS9oNEk4UENBaHdDdEFXdHhtTnRzRkI1Nk54VTZGSTh0V2dINlJDUEp3RXVVMlppNVZqY1V6a0Qzbmc2L2JJUmNGb0EwbnVtb3ozS2xldWZJTkhFTmMvL25nMXZmVFN5elJqeGt6cTJldHVhdGl3Q2RXdVU1ZXFWUSttY3VVclU1V3FOUVRLVjZoS1ZhdlZGTUF5dnNOeTVTbzFLRHdpaXVMaW0xT0hEcDJwVDU5KzFMLy9RSXFQYi9hL01tWEs0SUtEOTdRMjBYWkI1V2lLUzNFcExzV2x1RGlobEdJZ29UMjBaTW1TTFBCOXJ1SWQ2cSsvL2dhUE11NFhONXZXQ1l1Z1NwV3JVVVJFQkZXb1dKVXFWcXBHOWV2WDUrK3FNMnBRVEV5TU1Bb0F5L2dPdjZFTzZnTDRIa2JTUEtFVjNYMzMzVHhxU2N5cVhLWEtUOXd1WEc2WXhnRmNpa3RoRjhXWmhuNm1WREkxTlRWNnk1WXRjYzRFdDRuWFZsbzVNRlFjWlZqcm5qeDVNcG9SNTJUa21hK2J3TUF2cDVoNGxQNFYvZ2k5RytkTW9FMlpBMFBGVVVhUjVlc21NUEF6VVNEV3VMeDJJWSs4Ymk1Y3VQRDZpaFgvb1lVUExhSzc3dXBGRVpIMTJSQ3FpMUZFOVJvaFZJbk5vV1p3YlFvT3FVMVZxZ1ZUU0dnZFJoai9IaUkramN0MVJCM1V4VHBZdDBiTlVQRjlSRVE5YXRhOEphTUZmeGY4RTV2V05YRFF1QlFiU0dHWHFWT25DbWhCQTNpa3BLVE1TazVPdm9EM0lpUW5iM0l5MEdieUJlWXdDVngwWGhKUEhWYSt4NDhmbjhXNGtKbDVqSTRkTytwVW9FMjB6VER3WGJwMGFRbUFsKzM0YXRDbmtzU2xtMDZFN1JTVzRLWDNMMHJRRkc4Qi9iZFhicTN4VzNScjJUOGZ2dlgycFFlelhxYloxNTUzS3RBbTJtWU9UNEtMemt2aWFlaGptZStpckRmb29XdXZPUlZvVThVMzR0NWFKUUNOcTVVdnd5MWpZdUxUaVNXQUhJcHVIRXZMbFN0Mzg0VVhYcnorOXR2TGFNcVVlNmxwMDNnVy9GQXhQWVVSUkkyYXRZUUo2TVlRV2d0VFY2SGlFNmhlSTVScTFRNFh3TEwrdlY1SE54VnNBOXZDUzV4cTF3bW4yQWFOZUhRU1MxV3JWci9FQnZJWGMzbGM0MVJzSUlWWkpPTVF3Y3VpL2RHbVRWK0t4eFc0NG5rN2FIUFZxcFcwYVJOZXBKUHlFVGhwM0lUQThhZUJMNHYyUjBlT0hLSnQyMUpkOGdZNXRJbDNObVJrSElhSkdQaEs1bUhseThEQml1dm54YzF0RE53MDVrem83WUtETGh6Vy9rV1JqRU53WG5qenpRMGpmMTlBRmI1cFJ5VlBOYUVTcHhvN0ZXaXpJcmM5NnZKQ1lpNWZiTDZWQnY2Q3MyUWVCcjRQL1A0czlUNXpMM1U4T1pZNk9CbG9FMjNQWVE2MmZDWHpLQkl4a1lONUlML2d4M2lvZlBueU4xNSsrWlVzM0tVK1pNZ3dpcW9YUTFGUlVjSTBJUElOR2pRUUpsQzlSaTFxMHFTSkVQOGFOV3V6d1RRVm4rYVdMZXRpRzlnV3RsbVZSeVg0UGo0K1hoaUp2My9nYnlWS0NBTjVTT05XbkFNcHJJSUEwUUlGeGpGNjgrYXZDSTlsVmdtN013RU80QUpPNEtaeEJGY3JYeGJyMFJCdHZFTkJKZXpPQkRob0JtTExGNStDTHdNSEp3NVc3eTVkdXRTT2lJaG83V3lFaFlXMTZ0bXpKKzRjeG1NOXdBV2NySHh0WStLaEcyL2VNK0h5SWlwektwNUtuR1F4ZHlIQUFWekFDZHcwam9hWXdHOXpMejlIWFU1T29QWW54cm9VNFBBZ2M4bU9MNk5JeElTaTRIc2txTWY0K1BqY2ZPYVpmMlR4cUlNR0RCaEVFVkgxcVhyTkVLck1waEVjV3B0SERXSDhkMjJxeGVKZU95eUNhZ1RYRVovNVdjYTJzRTFzTzZSV0hmNitGb1ZIUnJHUmhKQ2ZYOWxmbUJlbXNNWm9ISXV2d2lxTW9nVUlBc1VyT1RuNUVKN3dxUkp6VjJETm10V1l3dG9CYmhwSEdWN0hqaDA3aFBjbXFNVGNGZGkxYXdjeEo1bXZMQkQ0enJ0YXRXcDlTcGN1dlFkZGp6TW5QSGJEbVVEQ0VXMHpoMjNCd2NGZHdVbmpKdmhLTVlFelVLKzUxMTg1VXUrNzNsVGlCQXU0RzZEaDl3UG93ZXV2N2dZM2hoNExnSlh2a085bVUvdmpZOXdDdzcrZmt5MWZoaUVtYWphdFNSSGRJcDBLdEpsVFRDZ0tMbzBOUlhKOHpweTVmNy80NGt0aXhGRTNuQVVjcjQ5bE1jZm9BRk5RdGV0RThOOTFxRTVZcEVETjRMQUNXbVlqNFcxYnBybHE4V2NZMWEwYlNlVXJWQ0ZmUDMveDNEQUc3azRIMStKUzBFVUxFQVNLejRZTkc3THdsRTJWa0xzQ0sxWXN4d3QxL21adWVqQkRoSEhRNGV6STUvRGh3MW1iTjd0KzFLRUQ3NnRPVDAvWCtlcGN4WmtsajZEOHZiMjkzMEtYNDMwRCtydTIxWG1md3NSbTBiYitRaVUvUDcvbkpiNWlqaGlmREM5d252SFg4emU5VC9LbzQzZ2p0MEM1MDYxcDJxVm5sVEdoOCsxeVlqeTF6MlR4ZGdQY2RlcWViUGtpSnJ3RHlsRFN5aEYwMzIrUDA3MS9QazZUL25qRXFVQ2JhSHZBOHFFRUxxcVlzQ2t3bEVERys5MjZkYnVDRy8zR2pwMUE5ZW8zRUZOVnlFdEF6QnMxYWlURVBqaWtycGg2d21kaExLTU50RldqWmgzK3V3NUZSMGV6Z1ZTbVVxVktmd3VPR3RmaTZhdUNMbHFBZVBQUTh5bThjMWtsNHE0Q2pHenQyclhrNysrUHh5dmphYVF3RFdFYzRIdjA2RkdsaUxzS2VQMG9Yanhqd3hjSElmaStpTzdHVys0MmJrUk82VU1YNTVTK0ZGekFTZU1yeE1JbUpsNmMvdmR6VkNLVGhkdE40SCt5QmQxei9nbEhNU0g0Smg0YjdUYm9lbUppdG56UjNXUFRwbEhTeFJsVTRadTJWUEowRXlweG1rZFpUZ1Rhck1odEQ3bzRrOGJzdVo4OFBFdlp4WVJVTUFXRXU3cEhWYXBVNmZvTEw3eDRhK2JNMmVJbVB5U3lxMVVQNFJGQVhURWlDQTRKbzdDNlVRSWhvWFVMZFJsdG9VM2tQWkJZeDFWZDVTdFV5bUtldjRPcnhybDQrcW9nQ3dlSFYwUkVSRHd2M29BQXFnVEhWVURlNDlOUFA0WEEzZUN6akZnY2NBQWVGWTN2TWpJeWxDTHVLaUR2c1hmdlhwa3ZEajdmbUppWWxoamVqeHc1VXVSeDNDbW5CRTRTWHk5ZUZqRlJ0MjVkdlBpZjdydnlEeXB4aklYYlRlQjNJb0VtWFhqTUxpWWlJeU5iNkh3VGo3Snd1d202SEIvUGZKYzY1TnZ4MFM0MC9OY0hxTXhwSHQwcExoWndKc0JoK0s5ekJDZUpyNGdKcVdBa2dzZUNiSjA4ZWZMZmp6enlHSFh1MG8xQ2EyT0VnZHhEYmFxTmFTV0llNjF3Q2d1dkorQ01aYlNKdG1zeUQweGxWYWxXZzgrQWZNK0JxOGE1ZVBSUmtJV0RnMGZPbHVtVUw3LzhVaWswcmdJRWJ0MjZkUWhrOHZYMWZZTzU0ckpIZng1V3Z3MHhQbkxraUZMRVhRV1l4Lzc5bGpmemFYenhXSXF5ZklhNUVueHhCWnU3NVpRd3VnTmZqb0hYbVN2T3prUk1lSGw1ZllURmUvNThpa29jWmVGMkUvZ2RUNkR4RjViWXhZVGV4K0NibU1IQzdTYm9ram1lSnZ6eWlFTys0MC9QcFlodmV5b3ZFSEFGb3IvdlEyT1BXdDd6SXNlRVZNU29JelEwOU5vVFR6eUp4NFdJNlNPTU9HQWNtRDZDa0lmV2poRGY0OU9aeTJqYndxR3V1QklyT0RnWWo1ai9IM1BHWTB4czk2VzQ1S2R3Y1BoNGVIaWN4ZUtHRFJ1VUl1TXF5T2JCSERPWnEzaGZkZW5TcGMvaXdEdDgrTEJTeEYwRjJUdzB2bmhGYW9DbnB5ZHVZQkw5NjRZNUpjRzNWS2xTSnhBTHZDeGlndm4rZ01VSmx4K25FaGtzM0dieFZYMHE4ZDk2dDdHbmdib2VJTmNERGpWVTE1UGdsNWxBb3k4c3Nvc0o1djhEK2hoODJ4MFpaUnJOdit4UHpkYjNzNkwxN3FIS2VvQmNEMmg3Y0tTeW5vek94OGJSbUF1TFZURXNZbUxDYjRzdFY3S2Q0UDF6QXdTZGJrVVR6ajlrRnhOYXdiUVBubWk3WmZpSWtYL09uNytBMnJmdnlHZjZ0YWtXaXpXUzJCRHc4SWo2QXJYcVJMcGtHUnd3bFFWT2xhcFVKeDlmdi9QTU9VWGpYangxVlZDRmd3TzM4OS9BSWhLcEtwRnhGV0FlZU1zWnVQR0JoamZZNDFsQmdSelVOM0RnSFRwMFNDbmlyZ0xNSXkwdFRlWWJrSm1aV1lINTNnUmYxRkh0cDZzQUk5UE5nL2xkMG9WaSsvYnR1TUZLeE1UWVMzeldmSVJGM1NTbW4zeVNGdTE3M29wR0crNVcxaXV4UGNaUWI5R1JGeW5vV0d0MVhRbSt4NXJUaUo4WEdHSWlJeU9qdkI0VDROdnVNQXUzU1R4MzRsLzA2cjczclJqeTMvdVU5VnB0RzJ5bzkvcmg1WFRYMFh1VWRXVjBQanFPUnY2OFVNVlh4TVRZUzJ3c2lnc0RYQVcva3drMDlvS1ZyelVtdElKM2FUUXJXN2JzOWZrTEZ0NGFQWHFzdURrUEl3NFlSOTN3ZWtMRUl5S2pCV3FIUmJsa0dSekFCYWpPSTZLS2xhcmNZdDY0OTZPeHRnL0ZwU0FLQndmTVF3VEwrdlhybFNMaktzQTh0SndIQXZrUDVob0U4SUdIdituZ3dZTjJBdTVLd0R6MjdkdG40THRreVpKZ25hODdUZ3QrL3Zubk90OC90VmdvTVhyMDZLcjREaGo1SzUvbEgyYmhOb25SM3ovRW03bGRVbjdZVFNXMnhkalZTOXcwWEt0aEtTbS83N1dybzRMdjBlWTA1TWNISGZZeCtMWTd4Q01DazNqaXU3Y3NCTFN5OTRlRDFHcnJJTHQ2RXpiTjFXcFlTdnJ2UiszcXFOQTVZeXdOKzNHZVE3NmpmdVd6Zk1XRkFhNkM3NG5tTk9wbksxOXJUR2dGeTg4MGI5Nzgwb01QUGtpZE9uVVZ5V2xjL2wwTHlXb1djRXdmMWFsYlQ4Q1Z5K0NDL0FldXZNTHp0SGlrOXgxemYxcmJoK0pTRUVVTERoRXNPQXRWaVl3dDhLcE12RzRUbDV6Kzg1Ly9WTlpSQWMvbHh5V2lDeGN1VlA1dUM0Z2JycllDTnkyUURlWng0TUFCcFlqYllzMmFOZlRxcTYvU20yKytLYmFucXFQQ3YvLzliM3I1NVpmRkdicnFkMXRJQ1hNclh4YUtVSjJ2TzA4THlrTEIvNk5xK0E0WThqOCt5ei9Jd3AwTGZQUDNEN3lwMnlVeGViaXh6cDVZWVNweWFYUWl5VmpIQVh5UE5LT0I1MlliK25qcDBxVWhlaCtEYjlzREkzT0ZILysrWUNHaGxRbWI1eGwrYjcxN0dPMDlkMUQ3MVZMR0hsOW9xT01JSFErUHBhUnpjeHpHeFBDTDg1VVhCcmdLdnNlYjAvQ2ZESHgxc2RXbnJOS1RCZzM2YS9JOVU4UlRibkZsbFppcWlxeFBrZldpS1N3Y256RUNybDJPRnB6QURZOUlLVnMyQUhtUGRHMGZpcWV1Q3FKb3dTR0NCV2VoS3BHUmdmY2R6NW8xaXg1NTVCSHh3aFlZQ0w1VDFaVXhkKzVjbWoxN05qMzIyR1Awd0FNUGlFOVZQUmtRdDA4KytjUnc0QUg2Z1plZW5xNFVjUmw0c3VleVpjdm9QLy81anpBREdBaStVOVdWZ2ZheEhwTGNlQWNCUGxYMVpNQTg5dXpaWStETCsxMUg1K3ZtMDRKV29SZzNibHgxZkFjTXZEQ1hTaHhnNGM0RkVrK040MDNkTHArYytZcEs3STYxL2w1cmZRZnRGMHQ1OXdLZklFanJad2ZmdzgybzczZlREWDBzaXpINHRrMGZrU3ZjZi9KeEN4R3RiRDZ6blZydkdtcjl2ZGNYeHYxWmZ5SFZzSDUyNkhob05QWDd6cEtBVnNYRTRGOTRGR1Z6VVVDMjJGaWZTbXlvZHh0N0c2anJBWEk5QUtNM1ZUMEp2cG5OYWZBUEJuUFd6UU5YS3RYaU0vaWJiQnkzQmc0YVF2VllxTVhkM3BneWlvSnd4MUpZUkxUNGRJZGxjS3JOSTVHUVdtRlVzVkpsVE1QaTBsM2NORmg4MVZWQkZDMDRSTERnTEZRbE1qSndKdjdNTTg4SXczanFxYWVJei9wbyt2VHAyUnJJbkRsemFQNzgrYUtPanBkZWVrbFpWd2JFRGFNR2NOTVBQRUEvOEpDY1ZvbTREQmdpdGdIRCtQampqNFVKdlBYV1c5a2F5THZ2dmt2dnYvKytxS01EZmFPcUt3UG1nZnM4Wkw2eVVMajV0S0JWS0lZT0hScU03NEMrUDdPUXBMTkE1UklwbC9ieTVtNlhXbCswdC95Mkw1YmV6VnlsZldzcHRUSzYyYTN2Q0Q0SDQ2blgyZnNkOWpINHR0M1B3cDFMcEY4NmFpR2pGUmdHdm0remR6aXR6ZHlnZldzcFNVZG0ySzN2Q0IwUGpxYTd6MDV6eUhmZytRZW9SQWFMdWtsTVAvVWtMVXA3M2dxUlUxTFVLN0VqeGxCUDVKUXlXNnZyU3ZBOTFveVN2amVZblc0ZXVOOGpxV3JWcXBmSFQ1aEV2WHIxSWp3aXBGYnRTSEYxVTFoNE5OV05pQkZUUnZoMGgyVndhdHk0c2JnZnBHS2xxcmhnNFRmZWgwSGF2aFNYL0JZdE9FU3c0Q3hVSlRJeUlLeTQwUXdHZ3VrcmZEN3h4QlBDUUdBbXR2VXgybGl3WUlHb3A2L3oybXV2MmRWVElTZnpRSEphSmVJeUlPaTRlUS9iMGJGcTFTcGhJREFUMi9vWWJjQTQ1UG9RZld6SHRxNHRVR2ZYcmwwT2hjTHN0S0N6Z1A2MW1SYTBNNDllUC9KWi9uNFc3bHlpMGJHQnZMbmJCWVpSWW1jTUJhMlAxNzZ4bEhkLzRmWVY2enVDejRGNDZuNW1pc00rQnQ4MmFjTnpqYkhIRmxnSWFXWHRzUTNVYXNjUTZ2REZVTzBiUzFuL1M2cHlmVWZva0Q2SzdqcHpyME8rZlg5aW9WWmNHT0FJbzg4cGNrcmJZK3pxSlc1VzVKUnM2cWpnYzdRWjlmdldZSGE2ZWVBWlVZc2pJNk4rR3pWcURMVnNuU2h1eXNQVlRYVlpwT3ZWYnlnUUhobnJWc3ZnaGl1djhEaDRIalY5ei91d1JOdVg0cExmb2dXSENCWUlpVXBrYkxGaXhRcGF2bnc1UGZ2c3N3SXdCSXdtWnN5WVFVOCsrYVMxSHFhbmtPZlE2eUEvZ3R3RFJGdmVuaU5BM0ZBWDNQUUREOUFQUE9RWFZDSnVpOVRVVk5xeVpZdVlBZ05nQ0JoTndFQmdKSG85VEU5aGFrdXZnLzZBNE8vWXNjT3dQVWVBZWFDdXpGY1dDalBUZ29BemMwbzIwNEoyNXRIdDNGUXFrY2JDblFlOGUzNHRiL0oycWJVMmtSYnR4Wk12TE9XMzY1Y3A2RUFyNWJxTzRKTWVSNTFQV3g2dG91cGo4RzJ6ajRVN0QvamlmS3FGbUZidSttUU12YnIzUGUwdm9zdlgvNlR1NlJPVjZ6cEMrLzJqcU12WGt4enl2ZnNISGtYaEV1VmN3QzZubERMY1dHZXZJcWQwTXNsWXh3RjhqalNqM3Q4WXpFNDNEenloOWwrTkdqVytPR2p3VUlwcjFvTHExSTFrb1VadWdjVTZtc1dhRVJIVndLMld3UTAzRWVLT2N5K3ZNakNQZjJuN1VsenlXN1RnRU1FQ0lWR0pqQW9yVjY0VUJ2TGNjODlaQVFOQlB1VHh4eDhYT1E3a1JKNS8vbmtoZ1BqRU0zQWd5aEJwMVRadEFYR0R1SU9iZnVBQitvR0gvSUpLeEZYWXRtMmJNQkFZZ2c0WUNFWWEyQmUwQitQQU5BNSt3eWR5RkR0MzdpUTh0a1cxVFZ2a1pCNW1wZ1gxUG5SV1Rnbi9ENG12blhsMCtuWXlsZGpId3AwSDFEcmNUUmlFWGo3NStrdjY3ZXJ2Mmw5RWk3NS9WYmxlZHZEWkgwZnRUNDUxMk1mZzIyYnZzRHhoNEtIcHdpRDBzdm5yN1hUNUtpNlFzcFJsMzMrc1hDODd0RThiU1IxT2puZkl0OGM1Rm1ycGdnQXpTRHl0eUNudGliWCticGRUd3VoT1dqODcrQnlPNTVFUy84OXRZb0lMTHQvK21NM2pmSjkrQTZoRml4YmlpaVpNRCtFeDZaSDFHZ3BneXNpZGxzRU5DZlJxTlVMSno4OGY3ejFmcmUxTGNjbHYwWUpEQkF1RVJDVXlqZ0R4UlNJYStRc2RPR3ZHQ0dUUm9rV0c3M0dXRDBFMmF4d0F4QTNDRG03NmdRZm9CeDd5Q3lvUmR3UUlPMFloRUhFZDJHZHdneEhLMytPeVdtemZySEVBTUkvdDI3YzdGQW96MDRJdXppblptVWU3YjFqNElFeDV4S0x2WHVITjJwZmZydjlPUVdrdGxldGtCKzk5VGFuMThWRU8reGg4Y2FOZlhySHN1NDh0QkcwS1RLWGJ2dHh2TzNFdmowQ09qM2JJdDh0M0xOUUgyUmh6Q2J1YzB2cjJsdC8ySzNKS3g3clpyZThJUG9manFOdnBDWFl4d1FXQ3U2RlJveVlYNzc2N0R6VnNIQ2VtcktMcU5SQWlIUjNUV0NDcWZpTzNXZ2EzaU1nWXdsTitmWHo4Y09QckJtMWZpa3QraXhZY0lsaGdCaXFSeVE0UUg0d084SkE5VEVucG44aHI0Qk9BWVVDUWMyTWNBTVFOQ1c1dzB3ODhRRC93a0Y5UWlYaDJ3RWdDQW8vcEtCbklhK2pMTUF4TWllWEdPQUNZQjBZNE1sOVpLR0NlcXYyVTRleWNFdjduRWw4NzgyajFOUXNmcnBUS0k0TDJ0VFNNUHZRaVJoMksram5CZTI5VFNqZzJ6R0VmZ3krdWxNb3JZQkR5NkVNdkdIV282dWVFeEQzRHFlV3g0UTc1ZGpqTFFxMjRNQ0FuTk1wVTVKUjJ4VkRRZnhVNUpjWDZqdUJ6TUk0Nm5SeG5GeE5jaEhuRXhqYjRwWHVQWGhUYktJNGlvcUxGMUZCVWRHT0thZEJFb0Y2TTVkTmRsc0VOVjE0Rmg4QThmSC9FUG1qN1VsenlXN1RnRU1GaU5oZGhDeGdJZ0xlSVlXcEtCbjdIWEg5dWpRT0F1SDM0NFllR0F3L1FEendZZ1VyRWN3TFdBekF0WlFzWVFGNk1BOEM2VzdkdWRTZ1VtQTVUN2FjdFhKaFRzak9QWnFkWStCUWluaHVNL25vaGIvcDIrZWF2YzhwNlpnRHppTXNZNUxDUHdiZjFUaGJ1ZkdEcEtUelM2WGI1OGMvenlucG0wRzczY0lyUEdPeVFiOXN6WSt3dUNqQUxYT0lzbDFxZkpvcTc5ZlVpY2tvSFd5blhkUVR2QTNHVWVNSXdzcFBOWTNWNGVPU1BuYnAwRTIvdUMrY3orcWpvUm1KcXFINXNVd0ZNR2JuVE1yaEZzSG5nVFlSKy92NjR5N3g0MnFxZ2loWWNJbGowdWYrOEFPYUJuQWtNUkFmT29QTnFIQUN1ZW9LUWdwdCs0QUg2Z1djMmthMEN6QU1qRjlrNGNGVldYbzBEZ0hsZ1drem1Ld3RGRWNncDJabEhreE1zZkR0ajhnMjVMRHI2b3JLT0dYanZia3lORHZkMzJNZmdpNnVrOGd1NXZKR3hRbG5IRE5ydUdrYU5EdzkweUxmVjZaSEtDd1BNSU1lYzBqa2UzU25XeXc3ZTZYSFVKdE13VXRMTlF5VE1nNE5EZms1czM0a2FOb2tYWi9TWUdvSkl4emFNRTRodVlQbDBsMlZ3dzlSYWpacWg1RlhHRzAvWUxVNllGMVRSZ2tNRUM2YUlWQ0pqRmppTHhidytwbDR3WXNpUGNRRHZ2LytlRUZCdzB3ODhRRC93TVAya0VuR3pnUGtnNmE2UEdQSmpIQUMyZzZTOHpGY1dpdHhPQ3pvanAyUXpMV2huSGcweUI0aDdCdklMdVN6S1lQTlExREdETXJzYVU4ekJQZzc3R0h4YmJXZmh6aWZrSXN4RFVjY00ydTRjUnJFSCt6cmsyL3prVUhGMVZGNng2UHRzY2tyN1d5clh5UTdlYVUyb3hWSERTRWszRDF6ZXVxUmN1WEkvdG1qWmhwbzBUYUNvK213ZXNZMkZXRGRvWkVGTXczaTNXZ1kzM0hWZXZVWXdMdFhGdEZYeHBib0ZWYlRnRU1FQ3dWZUpURzRBTVVwSlNSSEc4ZmJiYnl2cm1BWE1BMWRBZ1p0KzRBSDZnWWY4Z2tyRWN3TnNBMC9uTlh2WmIzYUE4V0RmWmI2eVVPUmxXckN3YzBvMjA0SjI1bEV2ZzRVYTl4SGtFM0lSNXFHb1l3WmxkamFteVAwOUhmWXgrT0loaHZtRlhONDRzbHhaeHd6YTh1aWozdjVlRHZrMlBUNUllV0dBV2VDaUEyVk9DYU1PUmYyYzRMMnZDVFU3WWhncDZlWWhiaEwwOHZLNjBJaEhIWmkyUWpKYW54cUtiZFJNQUZORzdyUU1iblVqWTZoeTFScTRTUkF2aGlxK1NiQ2dpaFljSWxod2xxc1NHVmNCNXFHL2IwSS84QUQ5d01NVWtVckVYUVdZQjZhK1pMNnlVTUFFVlB1WkV3b3pwNFQvdWNUWHpqekNEN05RNDhHRytZUmNjTGV6cW80WmxOblJtT3FtZFhQWXgrRGJjdXVnZkVNdXI3TjVxT3FZUVp2dGd5azhyYnREdmcyUDhjaE9JZUs1Z1RLbnBLaG5CbVhZUEpvY01rd0w2dVloSGsvQzMyVkZSTmE3RWN0bjlGSDFHNGlrZEd6RFp0U3dzUVVOR2pWM3ErV1lCdkVVVmplU0tsV3FjcFA1RnorZXBDQ0xGaHdpV0pCZlVJbU1xd0R6UU40RDNQUUREOUFQUEV3UnFVVGNWWUI1WU9wSzVpc0xSUkhJS2RtWlIrMkRMSHhiV2JqekNia0k4MURVTVlNeTJ4dFRyYjJkSGZZeCtMWk1aZUhPSitRaXpFTlJ4d3hhOCtpajlsN3haajRsMytpTXZ1SXFxZnhDTGlLbnBLaGpCbVgyTktZR0J3elRncnA1V0IrTVdMNThwZk9SdUVTWHpTTWE1c0ZuK0EyYnNHQXpHalJPY0t2bCtyRk54TE90L01zR1hBSjNiUitLSDR4WUVFVUxEaEVzeUMrb1JNWlZnSGxBSU1GTlAvQUEvY0RERkpGS3hGMEZtQWNnODVXRm9namtsT3pNSXppZGhUbzFPdCtReTZKakxHNktPbWJndGEwaDFkemQzbUVmZzIvTExTemMrWVJjM2ppNlFsbkhERnB2SFV6QnV6czY1QnQ1dUpmeXdvRGNRaTc1dVNDaHpPN0dWTjg0TGFpYkJ3cVcvMUdtalBmWFlXRmg0bjRLVEZ2aCtWRU5tN1FRd0pTUk95M2prZXg0eTJIcDBwNC9NL2ZpUjdJWFpOR0NRd1FMOGdzcWtYRVZJRzc0QkRmOXdBUDBBeTg1T1ZrcDRxNENqQU9mTWw5WktJcEFUc25PUEtydDcwQWx0ckJ3NXhNcHYrMjFZdlR4QmNvNlp1QzF0U0ZWM2RYT1lSK0RiOHVVcEh3ai9iZWpWanlXK2FxeWpobTA1dEZIOVYySkR2bldQZGhEZVdGQWJpR1gvRjZRRUxYUE1NMG1pNjE0R1JUamo1QmE0YmR3bndjUzVwZ21hc1JuK1kyYkpsQ2pwaTNGcHpzc04yZ1VUM1hDNjFPbHlsWHhNcWkvR2NVdmd5cklvZ1dIQ0JaM2VrVXFBSEhEV1RhNDZRY2VvQjk0eUMvWUNyZ3JBZlBBbmVreVgxa29pa0JPeWM0OEt1OXJxeFJ4VndIbVVYbEhLNGQ5REw0dGtwUGNCcTIySkZHVkhhMGQ4cTJWM2xWNVlVQnVJWmY4WFpEUWlPb2FwOWxrODlDbnJyWUVCVlU0aXpmMTFZOXVTTEZzSG8yYk5xY21jUzJvY1Z3cjhla095ekZzYkRWRDZwQ3ZueCtlcGx2OEd0cUNMbHB3aUdEQkhMaEtaRndGaUJ1bVpjQk5QL0FBL2NCRGZrRWw0cTRDekFNdmZKTDV5a0pSQkhKS2R1WlJmZzhMZFFvTHQ1dkFLN1VobGQrVzRMQ1B3VmNsNHE1Q1N6YVBDdHRhT09RYnZMK1Q4c0tBM0VJdStia2d3V3RISTZxOWh6blp4SVJVeWpCR01mK0xlSHRnWlAyRzFLQkJBOHZaUG9zMnBveWF4TGNXY09WeXd5WUo0aWJHeXBVcll6K1E3eGloY1M4dUJWVzA0QkRCZ3Z3Q29CSWFWd0JYQStWa0hoczNxb1hjRmRpMEtYdnpLQUk1SlR2ekNOeVZRQjRwTEN6SkxONXVnREpiR2xGZ2FyekRQZ2JmVmhEdXpRUGRBcTFTa2lnb3RabER2dFgydGFjU1czbmY4Z201aUp5U29vNFpJS2NVdk11UVU3STFqMUtNOG95dDVjcFYrQW1qRDl4TDBhaHhNM0cyMzdSWkcyb2EzOUlDRnkzRFFEQ2RKcDVuNWV1SE53aHUxVGdYWDJWVmtFVUxEaEVzbUVOZnZ0eDk4aDRyVmxqZS9BZHUrb0VINkFjZTdncFBUbmFmcWF1VWxHU1JpNUQ1eWtKUkJISktkdWJobjl5RUFsTGpxTVJtRmhjM1FMbXR6Y2gvVTJPSGZSeVFFa2Z0dGd5aEZwdFl2TjBBN2JjT3BjQk5UUjN5cmJ5bnJmTENnTnpDTHFla3FHTUdtQmFzdm9NNTJjU0VWRER0STBZZi9QdWxrRnAxYm1EMGdXZGROWTVMb0NZUThXWThBZ0dhdDNYSmNnTWVkZFNwRzBFVktsYkc1Ymw0a3U0b2pYUHhsRlZCRmkwNFJMRGdFUmlyVjMvc0ZxTVBjRml6NW1QeFNBNXcwdzg4UUQvd2tEemV2bjJiTlZIdFNvQUR1TmplMUNnTFJSSElLZG1aaDk5L3dxbHhXaC95M055QVNteXE3MUtVU1c1RVRkUDZrdDk3WVE3N3VQeUhzZFJsM3hocXZXa3dKV3djNkZLMDNUeUV1dThiU3hYZVkyRjJ3TGZDN2xaS0VYY1Z4QVVKMncwNUpWdnpRTUVaZkNEamZhOHlaYzdVcWxXTDZzVTJvWVpJV0RkdVRIRUpiUVV3ZmVUczVjYnhyU2c4UEp5cVZLdUJPOHAvQVVlTmEvR29vNkNMRmh3aVdQRGNKTHpmWXUzYU5lTEtJQWdoQk0rWlFKc3dCZHpUQUM1NG53VzQ2UWNlb0I5NGVGUUhSaDg3ZG13WDkzd2dnWTZwTEdjQ2JhYW1iaEVjd0FYUG5aTDVjcC9XMXZrV2daeVNFSW9CQXdiVXhIZEE0TndBOGtwcFFLMzJENkd3SFYycDNKWUVDdGpTektrb245cUM2dTdzU3EzU2g1TFhsb1lVTUN2QVlSL1hubHVIdkZNYVVsTGEvZFIvKzczVWVjc282cGd5d3Fub3NtVTBEZGd4bFpMMjMwOWxtRy9vck5vTytRYnRiS0c4TU1CVlFFNnAwbFpEamtabEhpaTRTMXVjWkFTVksvOGRYcmdVelFiU1dFd2h0YUs0NXEwcHZrVTc4ZW1zNVNieExjUlRmcXZYRENWZlh6L2NUWTc5QU1maU84b0xvMmpCSVlKbDZ0U3A0dkhlZUU0U0RHVGR1cy9vczg4K1pheDFFdERXWjl6MmFqRmRCUzU0TXg2NDZRY2VvQjk0ZU5jRkh0ZUJ4Nm52M0xtZGR1L2VKUjUyNkV5Z1RiU05SN25qWFJ4NHlxM01kLzc4K1NFZUhoNkNieEhJS1FtaEdEVnFWRFY4QndSTjhTYi9wUlY1NUJGRExkT1RxT3ZCc2RUNXdCaW5vc3ZCTWRSaWZ4SjVib3dtLzhjcVVPQjRiME1mTDFxMEtFU1BpWWg3YTFITngrdVMxK1pZdW12L2VCcDdZQzZOTy9BZ2Z6b0hhR3ZNZ1RuVWJmOVlLck14bG1vdXJVdDFKNFE0NUZ0MlJ6UHkyQktqdkRqQUZTaURDeEtNT1JwSDVvRXBJRHdqYWpqamF1VXExWDZyRzFHZllodkZVK09tTFNpdVdXdHF4b0llMzd5TlFMTVdpWVc2REFPcEg5T0lhZ1RYSXYreWdYOHdwK3NNSk1uQnNYaTZxakFLQjRjUGdnU0w0OGFORXdhQ0IrL2hEUHJGRjE4VWd1aE1vRTIwamZkWGdNdVlNV1AwUVA2VnVRWUFmT0Q5aVFNUEwwQ0NnV0JxQzlNdnVJbE9mNVNIczRCSGpxQnQvY1ZOYytmT2xma0dzc0dVWjc3WHdOZnkwaW4zeWluaFRuV0pydzh2bC9qMDAwL0w4dC9YOEgzZ21ETENRQUpuK1pQUGF6WEljM1ZkOGx3YjdseDhIQ2JhRHB6aEo3Z0VqQ3Jqc0kvRHhnWUxBNmt6dXpaVmVEMkNmRmZYSTUrMTlaMEt2NC9yaWJiRFp0YTJjQmtkN0pCdnVjM3hGTEExVG5seGdDdFFibHN6cXJEUmVrR0NOU1ljRkV3RjRRbTFEekgrcUZLdHhxKzRlVEMyY1hPUis4QnpwWnExVEdTMEY5TksrQ3o0NVVScXlzWVJGUlVsTHNzTkNBekNZOWV2YXB6QXJYaTZxckFLQjRkMzZkS2xNN0RZbzBjUElkanVoTTZkTFkraThQVDAzTU5jeXdKZVhsNFpPUENHRFJzbUJOdWRNR0RBQU1HWE9ZSnZRRnBhV2lENDRqdThHdGJkY2twNHJMdlV2K0pwb3l0WHJ2VFhZOEt2bTZjUWJIZUNiMGRQUTB4czI3YXRuQjRUMWJ0WEZvTHRUcWphcWFLQjc0RURCNEowdmpYZmIwU045dlVteitRR1ZHSnpmWmVpVElvbHB4VDhWa083bU1pbTRPb3J2QjlqS2VPdlNsV3EvaElXSGlXZWVZVXJvT0lUTUVKb1M4MWJkUkNmQmJrTUEya2MxNElpNjhkUzlab1ljUVRveHZHNHhnbmNpa3RoRlE2T01uNStmcTlqTVRBd2tDWk5tcVFVY1ZkZzh1VEpWSzVjT1JISUFRRUIvMkN1ZmdBdnY0SHZLbFNvSUI1TnJoSnhWMkR4NHNWVXNhSkZLRFMrL2d6ZnNtWEx2b2J2Y0ZhR0s5cmNLYWNVR1JrcCtETEhweEFMdkZ4aTNicDF2bnBNZUFTV3BNQUphaEYzQlFJbmVwTkhVRWxEVE96WnM0Y1hMVEhoR2VoSmRTZUdLRVhjRlFpZkZFcGVRUmF6MC9rQ3ZDejZ0MnhNSVBra043YmtsSFoycFhLcENSU1Eyc3lwS0wrMUJkWGQxWlU1RENWdk5wQ0Foa0YyTVpGRDBRMWtJZU5xWUZDNTg3VnFoMVA5bU1iVXVHa3ppbXZXaXBxejBEZUgrRE1TMkFEeXU0eHROdVFSRGg1NldLVnFkZkx4OGNHTmdKaXFBb2RpNDNCRzRlRHdEQTBON2VyaDRmRTkvcXhkdTdiSU02akUzSm5BRkJxdTRnQW5jS3RidDI0bjV1b05zQWgzMC9uV3ExZFA1QmxVWXU1TVlBb3RVaE5pY0FzUEQrL01YSDNBTnlJaUlwRy91NERmdW5idDZoWTVKVXhYNmFNNjhLMWZ2MzR6eEFML2paandDZzRPN3FsejlxemxJZklNS2pGM0pqQ0Y1aG5xb1lvSkg0NlZYanBmLzlxK0lzK2dFbk5uQWxOb2ZxRStTcjV5VEZRZVhKTzhOeldrbHZ1VHFNc0I1K2VVZ0lTMEpQTGQySkFxRDZ5aGpBa1RCV0tOL0FoeUlEenlMdk5kdFdyVnFXNWtOTVUwaWhjM0VtS0tDU01IVERjbHRPNG9rTHZsRHVKcXJrWnhMU2tLaWZIcTFhbDh4Y28zU3BVdWZSRnRNcERqQUlkaTQzQkc0ZUFvelFkZWN6NWpuc1REYU55SlNYeldTUWtKQ2RTL2YzOUtTa3B5S3ZyMjdTdmE1ak1KRWNUTTZYTGx5cFhIOGNFV3gxeTlBRDRJRTJTK2ZCWW5oQkNtTjJYS0ZLZGkvUGp4b20zMG1ZSnZHUng4OGZIeGRaanZGUDd0Q3VvZzZHR1F1RnBNZmxPZ000RDhFTnF1VkttU2dXL3IxcTFERUF2OG5Sd1RWczRlZmlYSnUzbHA4dS9yUldVSE9oZitmYnhFMnlWOUxDTU9tejZXWThMS3Q3UmZLYXJZdkJ3Rjk2dEtJVW5WbllyZ3ZsVkYyNlY4U2puazI2cFZxekNacjI4ZFA2cStOSklxcklxbGNwODRGeFZYeG9xMnkxUzNYb2hnRnhNbUMvSUxtT2JDMVhydmxTaFI4bytBd01CZmdrTnFDeE5CUXJ0UjArWVV6eU1IVEdjMWI5bU9XclRwS0Q2elcyN2VxcjI0K1E4dmQ4S1RmSU5EYTFQRlNsWDAwUWFlV2NWdGlUYlJkbkdPdzFtRmc4T0RoYUlXQzFybkdqVnFKSGw2ZXU3QTErNkFVcVZLWlZTcFVtVVV1TEU0MUdTdXBZQ2l3RGM2T2pvWUJ4NndmdjM2TW53bTN3WUhKTmM1cFZyWEZkRDVob1NFdEU1TFMvTkVMUEQzaUlsU1VWRlJvby9kbGJOTlRKUXVhbnlMV2t6a291REtKb3hXQWhnWUNXeGhNL3JOUHlEZzUrbzFRMjdoOGVnUlViRlVqNDNFY21NaEhtdlNncHF3T2VBK0RYeml1eWJOV212djQyZ3EzcE5lcTA0NFZhc1J6S1pSOVphM2o4OWwzaVl1OHRtaXRZRzIwR2J4VlZYT0xCd2NKZDk0NHczUDh1WEx0K0NnNmNRQjNZV1hwL09aOURJdkw2OVVCTFl6d1cybWNOdHZnZ080Z0JPNHBhU2tRSWc5Z0NMR3R5U2pWR0ppWWhELzFvRjlyMnU1Y3VWbXV3dmZxbFdySm5idjNoMVhzVUhVeE1HSFQvUXg4MnlGL1hFM3pvNWlvaWp4WlJTcG1NaERnZWtnWDRMSGdtQXFLNWx4eGRQVDZ5Y2VqVnl2VXEzbVRWeFd5NmJLeGhCQmRlcldvOURRVU1MOUlyWHJSaEtmR0ZLTjROckU5WWg1a2E5ZjJkOUxXNmFuY0JVZ3RvVnRZdHRvbzNpMDRZcUM0QUFpSXlQTEJnVUZ0YTFRb1VJbkJEdk9sQkJJQ0d3WmZQWlVvTERkUHRwRTIrQUFMdURFWi9GSVBBdWVSWXl2Ymg1aUdRY2sxMnZ1TG54WkpPSUhEaHdJcmxhZWNrencrZ0c4UDRsRkpTWjQzU0xGbDFGa1lpS1BCZXZxSm9JbjJqWmhQTWs0d01qeThQRDRyVlRwMHVmTGVIdi96OXZIOTZLdnIvLy9HTCtWOGZiNTFhdE1tVi80dDE4eGhjWjFiMmpyWUYxc0E5dlNUU00vL0lwTGZnb0hoMVVzT0pCeDVWVURmMy8vRG9HQmdSMFIrRG9RV0lVSnVTMjBEUTYrdnI1TnVmanEvRFN1UlpZdlE1eHhSa1ZGVmVDenJObzFhOVpzd051Q2NEVG5NNjJFd29UZURyY1ppN1pqWTJQTGFYeGtnN09MQ1loZVFFQkFmRkhwNDZMR2wxRWtZcUlBQ2tRZStSTWt0Q0grZUIzc1FBYXVqbnFYOFRIakt3MVl4bmY0RFhWUUYrdGdYV3lqMkREY29TQTRKSWlBNFNGMElKOHRoWEx3eDNEd3grTmdkQWJRRnJjWmpiYkJRZWVqY1ZPaHFQRjFlemlLQ1JiRGNrVXBKb29hWHcyNmNBdERjUkxrTm1VdVZvNkZVUFFSQ2ZJVVNITERGSEI1clF4OGg5OVFwM2lFNFhhbFJJbi9BelRGVHVNU1FjMzJBQUFBQUVsRlRrU3VRbUND"},{ name : "__ASSET__:file_flixel_system_VirtualInputData", data : "YmFzZSA9IDI2NiA0NiA4NCA4NA0KdGh1bWIgPSAyNjYgMTMxIDUyIDUyDQphID0gMCAwIDEzMiA0NQ0KYiA9IDAgNDYgMTMyIDQ1DQpjID0gMCA5MiAxMzIgNDUNCmRvd24gPSAwIDEzOCAxMzIgNDUNCmxlZnQgPSAxMzMgMCAxMzIgNDUNCnJpZ2h0ID0gMTMzIDQ2IDEzMiA0NQ0KdXAgPSAxMzMgOTIgMTMyIDQ1DQp4ID0gMjY2IDAgMTMyIDQ1DQp5ID0gMTMzIDEzOCAxMzIgNDUNCg"},{ name : "__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorScaleY", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFvQUFBQUtDQVlBQUFDTk1zKzlBQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUFUZ0FBQUU0QnNjMGZNd0FBQUJ4MFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1JtbHlaWGR2Y210eklFTlROdWk4c293QUFBQkdTVVJCVkJpVmZaQkpEZ0F3Q0FLbDZmKy9iRTl0RVlPY3pFaHdRV2FHNkFJd1hNYWtkVEcyYUdhYklLUTVqcllhamNBUEhZMzhFZDVSanltN2NpS2k2ekVkRFZQSEFlQm5EaFZYand5eEFBQUFBRWxGVGtTdVFtQ0M"},{ name : "__ASSET__:bitmap_flixel_system_debug_interaction_tools_GraphicCursorCross", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUxFZ0FBQ3hJQjB0MSsvQUFBQUJaMFJWaDBRM0psWVhScGIyNGdWR2x0WlFBd05TOHlPUzh4TnJ0VlFGa0FBQUFjZEVWWWRGTnZablIzWVhKbEFFRmtiMkpsSUVacGNtVjNiM0pyY3lCRFV6Ym92TEtNQUFBQUxrbEVRVlFZbFdQOC8vOC9BeGJ3bjRHQmdSRmRrQW1iU2x4Z2tDaG1ZWUI0Qmh2QUVHZGh3T0pyaG1FVUdnQjN1Z2NXZXB2bWtRQUFBQUJKUlU1RXJrSmdnZz09"},{ name : "__ASSET__:bitmap_flixel_system_debug_GraphicArrowLeft", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQm1KTFIwUUFBQUFBQUFENVE3dC9BQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUIzUkpUVVVIM2dRWkVqQTAzU0hjY2dBQUFFQkpSRUZVR05Oai9QLy9Qd01SSUpLQmdjR1g0Zi8vLy9odzVQLy8vNWY5aHdLaUZPRlNqRlVSdW1LOGlwQVZFMVJFdHNra3U1bXMwTUNyaVpHVUdBUUFzOU5wbXo4SWloRUFBQUFBU1VWT1JLNUNZSUk9"},{ name : "__ASSET__:bitmap_flixel_system_debug_GraphicBitmapLog", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQm1KTFIwUUFBQUFBQUFENVE3dC9BQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUIzUkpUVVVIM2dRWkV4c2Fka1ZHNHdBQUFFRkpSRUZVR05PVnpjc0pBREFJQk5FdDFUSnl0UFBKS2VSbnhBd3NlSGlnOUJOUW1mRURBU3REUUdXWTRRdStjQWhQN013cytqaU94cDR5dk9ZWkxrRkFIVzZYWUMwODhkcWRBQUFBQUVsRlRrU3VRbUND"},{ name : "__ASSET__:bitmap_flixel_system_debug_GraphicCloseButton", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFnQUFBQUlDQVlBQUFERUQ3NkxBQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUFkZ0FBQUhZQlRuc21DQUFBQUJsMFJWaDBVMjltZEhkaGNtVUFkM2QzTG1sdWEzTmpZWEJsTG05eVo1dnVQQm9BQUFCL1NVUkJWQmlWVFkweENzSlFFQVhIYnlTZXdNdWxUV2R2YTZPbGxXSnBDQ0syaWsxT1krY3RRc1lpcS9rREM4dnM3bHZVU3UzVXBVcFdPN1ZDM1RqU3FXVU1EK0dldisxdGlKZDZ5dm95ajl3NzhWQVhLb21SR2JCaW9nY0dBTlNrTm5GNVY0L1IzOVNFMm9hNHF2TjRkdzUzS1lBMzBBRDFQeGJXUUFGOHZwYVlyTldBYU5WMEFBQUFBRWxGVGtTdVFtQ0M"},{ name : "__ASSET__:bitmap_flixel_system_debug_GraphicStats", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUlHTklVazBBQUhvbEFBQ0Fnd0FBK2Y4QUFJRHBBQUIxTUFBQTZtQUFBRHFZQUFBWGI1SmZ4VVlBQUFBeFNVUkJWSGphWXZ6Ly96OERzWUNKZ1FSQWpPTC9VRXdkaytHbTBkVE5XQlZqdFpvK3ptQWtKUVlCQUFBQS8vOERBTDhIREFscWRHWVJBQUFBQUVsRlRrU3VRbUND"},{ name : "__ASSET__:bitmap_flixel_system_debug_GraphicLog", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUlHTklVazBBQUhvbEFBQ0Fnd0FBK2Y4QUFJRHBBQUIxTUFBQTZtQUFBRHFZQUFBWGI1SmZ4VVlBQUFBa1NVUkJWSGphWXZ6Ly96OERzWUFGaVkxUEZ5TzZZc1pSa3dlSHlRQUFBQUQvL3dNQStmWUlMQWhqbnhZQUFBQUFTVVZPUks1Q1lJST0"},{ name : "__ASSET__:bitmap_flixel_system_debug__Window_GraphicWindowHandle", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFvQUFBQUtDQVlBQUFDTk1zKzlBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUZCSlJFRlVlTnFNandFS0FDQUlBeFgyeWg3b055MmpRa3lwUWJUMGRFU3FTblllRXZoWE5zRE1ZblhlelZHNHdBME5OVlJaSGpLUEgyaDYvNWwxVzBPaXgzTlRFbDFDSjdxS0MvNExraTdBQUQ1WWZydllMZlJQQUFBQUFFbEZUa1N1UW1DQw"},{ name : "__ASSET__:bitmap_flixel_system__FlxPreloader_GraphicLogoCorners", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVBQUFBQkFDQVlBQUFDcWFYSGVBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQlkxSlJFRlVlTnJrV3d1eW16Z1FsR1Q4d1g1Sk52ZS9UUTYwdFhrdi9tRkFDNjRaMG01TEFwejFPaENxcHJEQnh1NmVuaGtKUnRZWTg2MnhkV1A3eG40MDloM3NIem4yMGRpeHNaTlkwZGlsc2JLeENxd0c4MkQ4M3NDZVg3ZWJoWDFyRHZacVdXTUwyUzhiV3dtT1RXTnZZbDhhKzlyWVg3TC9MTWZiejJ3Yk8yZHljQ2tBQ3JtZ0FTQkZ3QzZ5Ui9BZVNJZ0Jad0lZT0pPQVJDandSZUQ2K1BrTS9sc054OVlDZWlmN055VmdMeGQ5QjYrMzlyZnN2NHNLV2dXY3lmczFlVDRGT3VUOVBnSVFXRWdKQzFCQklZNjhpT20xVVNVWlhIZWhCSnprd0VHQUtoSHZRc0M3a0hRU0FpNEF1b29BcjhuTEtlQkRWR0FEUkRnaTRnSktacy9uNHZWYzNxL1VrVXFBRjVBZllrakNoNUNqM2k4SFNOMzBBQjlDZ0Uwb0FVbXdRa0JKdVVpUHJ5RG1jM205RkNJNkFpcngvZzhnUU1Hci9BdncvcEQ0N2dPYzh2eFFFcFNJQ3ZhbFhKc1Y4Q2J4bndNcFZTYmVMWUVBQkw2WDh5ZUsrMGRCRHdYK0tCRTFPQWdKVUd4YklzQm5VTmEwREI3azlSRkszeGtraGpFK3hMc2h3SDRrZUQrQUNFM0VXc1cwVkI0QW0xWUFMWmMyZzlwK0lQQUhxdmxWSk5iTlNFOC9vZ0QrYm93SXZMWVR4eDBCMTE0STJJZ3RNZ0NxSHp4Q3lWUFpsMVRxbmdteTcxcVdsR1poYjZqOEZZUnRUOGt3eXdUb2lZQVhFZkQxTDRKOGxCZzdrSFF2d0d2NDc1Y0F4b09RMEJHQTRNODB6T1doN2JNOVBsUUZzWE0xNUlRU0JrWWhFbFlaZ01haGJxeld2d0o4MzIvYWdBbzhPSzZDb1R1VFVDTUJPTkJoNzc4YThKakU2R2wwV29FS0NzQjYwaktJRTV3TGxic3hZL2ZmZ1FoV0ErYXVNa0NDeVFMU0x3Zkd2Zm5OeVdBVmxLU0VRc2NCUlVUNmZpS2VUeW1ocGx6QUpGd0pLQlAxZnFvSzRMQ3RZYUtFSkRoSDRLc1pTRDgwTnFnREpGd3R3emNrbWFtSGdROGt3NHBJV0RqeS90UVZFQ01pUmtMbElqYzFwK2oxUGdKOElDRldMbkZuMTgvTSsxWGdIdWFOQXVvQk56dW1Gdis5WWVBQ1NXL29sSGVxT2VER2hpcGc2dU9BS0JFdVVmYm1zREVKRlpQZ1RQcWh4bHhJQ0QybTZ3Z1krOGhxVHZuQXU1bDZQVFl6dkZPRCt3T2tINW9YZE9kY1l2dzg1ZEdnSHhvT3pveDdiaitYSE5BZGMyYittMDlNazQyYmFlSWJzbGtsd1A0cFlFUHZYZVFEcVMvUGFsTUZoR3lPS3Jqck8zSXpCODBLdm51czdoTGVueklwc2NmbmQ2cDNpVENZaStkakpEZ2t3TTI4SW9SYTdib2NNR2NWaE1CamE1M3JYZ1NJbUVNSkRMWGNJdVlGZGxzdUlpVE1EZnhObDZrTGdIZG1Yb21RUTBCYlp6c0N0SWRXRDA1OVlHUURCSEJ2c2JiUVpZN0FZM3hNT1JuYW52aS9VVUJHS3BoVFNXVHBZM2Q1aTNuWm5sanBtNTU4WUNlWStFS0xMQlRyQ2dsWXc0bU13c0JNWkdnY0d2bTVsUGVOdE1sZDI4YUZpQlVSNEdES1hKdGhEWXV2bnV2SEZJREFPd1VnQVdzS0IrNFB0aWJjbWhxN0RXVk11TkY1N08yc01mY2wrbGFWNE5xaXE3VUhOd0owQXlmTzhnVnNqMC9kWDdPSlAydi9ZKzhPbWVveStDVTRkdzFxdjRaQUxuOCtGK05HNlJBQi9oYzkrOHg1UG51ZFBhOXJCWElOQVNWZ0srQnpjN3MyQ0lIR1dtZTVXenNXTGo0U0Zxd2VQd0kwMzlwRHI3UGtOMkJyVkVDN3RZc0plRjBncnI3Z0xqSm53azlmWGxYdWVLaTdCTkNxN3EzNTJTNi9WUVZzNVlzS0h0dmxhMkFZMXduZVBXSXkvOCtUSkp1WTZOaEF0a2ZRT3lLZ2E1ZlBoVFgwUGk0OHhEc29xV2JLWnl1aER6eU84VlgyQ253WEljRXBBVXZ5UEpaQWpDdGRXZnFLbmlMYjQza3VkUnNCck10b1B4RUpMVzZMWlhCbjd0Y0xlQ0lnSXhYRXdpRkZRbXdNMFZmelkwdHBPZXVyOTNQQjlFbE1sYUR5YnovVExTc3pKdDR5YitCSGxrUlFUQWtwRXZ6STBoa2I0ckxzMmZ0YklPQU5iQXRWNExwZVlHZCtManIwZ2RLSGlhVnZQZEV6OGtIb2xyYUwxSHYydmtxL1hVWGVyaUQvVEdxb2NQSDB5ZHl2dXViWXFzejlpbTFWZ251Z01neXArVFl5ekkxTmNIQm1pM01aWFIxL3hLVCtyd0FEQUFKQmFpQW1tNXh3QUFBQUFFbEZUa1N1UW1DQw"},{ name : "__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformTool", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUxFZ0FBQ3hJQjB0MSsvQUFBQUJ4MFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1JtbHlaWGR2Y210eklFTlROdWk4c293QUFBQThTVVJCVkJpVlkvei8vejhEQVFCWHdJSXVnQSt3SUxFWkNabk1SSVNCTUVNWWlWRU1CNE5JTWN5M3VJSVBMcytDUXdJclFGZU1MYXpoQmdBQTR2NE1GcEVTdzlBQUFBQUFTVVZPUks1Q1lJST0"},{ name : "__ASSET__:bitmap_flixel_system_debug_interaction_tools__Mover_GraphicMoverTool", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUxFZ0FBQ3hJQjB0MSsvQUFBQUJ4MFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1JtbHlaWGR2Y210eklFTlROWEcxNHpZQUFBSnZjSEpXVjNpYzdackxqdE13RklZanNiUDZFRlpZc0NGeG5LYTNxTWtJdFJyTnBtakVWQXhpbHladUoyb1RSMGxHU2ZzMnZBTUxKQ1RZSXg2QXQ1Z1ZXOERwalU0MVlzR2lxZVR6OVdyWHgxLytFeS83N2RlWEJ5VlJrdDhWM3llTkhFL1lMSXdkOWVIelZ4V0hnYVBldGtiR0tCbXd1L0JxbGJLYjFldXh2NXI3dlVDOWNGRy90TXNvaVZqdTRUSmF4SmxkT3FvWDhBbXp4ZmRxbXFoNHZTU2ZPK3FyNmdmOGJuU05CenhsdUtVYm1tKzBEZHltT20xYW5VN25KVFlOYWhEREpOVFVhTWR1bXJaaDRDMnFpOFI3UHcybTlwdmg1VlluUm81NmwrZUpUVWhSRkhyUjFIazZJN1RYNjFYYm1LWW1WbWpaTXM2OVVvdXo1NXROZHZzTVdlYW5ZWktIUE1iVjJKdncrOXhSVllRUDJPYUtrcjBvenZSMVJ0M25FU205aEZEZElQdWRxODNGYW51UU1pL242Wmp6aGJ0SmZobW1yT0RwUE1PRG14YW1va284cks2RmI4TTQ0RVhXSjhkMVQyM0podUxsaWtaWm10SFZER3RNdTdiVnRXbnovVUg5WnRGUitZZ0g0WFQ1UkhtcmFWdnRiZm5Cb2wycnlGR3YvcmVIZ2I5dllYS2ZMdFozS3ZBSlc3Q0l4WGttMmtnZnR6SHc3U2xQSXk5M3c4aWJNWkxFc3o3NU8vblA2OXZNaXBNaURpblpuMUwzMFdVZG9wd1k4TzlCa3VlWDFvOGt6dzkrOElNZi9QWDZrZVQ1cGZVanlmT0RIL3pnQjMrOWZpUjVmbW45U1BMODRBZi8yZmhSelg0TS9ucjhTUEw4MHZxUjVQbkJELzZ6OGFPYS9YWG5sOWFQSk04dnJmLzRqeGluOXRlZEgvemdQeHMva2p5L3RINGtlWDd3Z3gvODRLL1hqeVRQTDYwZjFaNGY5Uy9LeFBQbjdOUitBQUFBQUFBQUFBQUFvQjQraU9lem4wdmwwOXVQalI4di9FYmQxd01BcCtSYThaU1p3aFNzVURIYWZRS3k4QWVWbzZ2ekVKZzhjUUFBQUVodGEwSkcrdDdLL2dBQUFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFLYVF6b1FBQU9TaHRhMVJUZUp6dGZkdHoyOGFTUGpZbmppUDVubXhsSC9aRlZidS8rajNGaDdpUUJCOUZVcFFVVXhJUFFkbHlYbHdnU01UYTJGYU9KQ3ZIeThML3Z0UGRnOXRnY0NVcFVRN0NXRU5pY0JsODNmTk5kMDhQY1BTcWU3TjRQYmJPRjdiM2VueDB2bEM5d2JnWEtjYi9PRDVmTkJ0NlIydWJEZTlzMkhNWERlOHRGVzhPKys1Q1ZiMkR3d21XNHozTFhiUTFiMnlkbnJQcTdqNDdnNHYvZWFQaDhHYlJIYkUvdmQzSjFVTDVYcGtxanZKTzZTcTJjcVdjSzQ1M2VIekV0ajltMnoreDdRZHMrNlV5VTNhVUlhdjlwTXk5Y2Y5a0NpZmRQY1p6NzdJbTYzUFQ2L1lQenhlRzF6MWliWit6QXUra2ErM2hUdFlBYnFGckhlQ3Y3cENLVjFqMGp2a0o5Z2I0ZXp6QmZRZGQvRFVZWTNGTUc2MFIyOWZ4dWhPcW5ORFpKeFpkNUlqT1I4WGhMclR5R0ZyVjhQb25LalNuZjZMQmFmb25PaFlEdGxGamhVYUZEb1ZYQUp0bkNXekd5b1h5bVcyYktYTmx0aXhDNnYxSHlOY2VpK0hpS3RmTGFJL3FHcFgxUjEwU0hYVzkraE9pczZUK2lCaVYwYUE3eHVneHgyaVg0WFBKa09peXY1OFpXdTg1VnQ5enJFSU1zOUNCZGtmZ2FSbUVEOWJuNG1NYU1Yd2FNWHgwTFk3UWJNaytwaEZDR2lGa0VFSUdJV1I0MXVoWGtxcGxzUy9PbEcwNG9kdXdyQlBjVUFiRFJ4ekRDZE91ZnpGOSs4enE4L1JNMTJTS2xnMmsydUZRYWxPbkJKU09TVkRpOXJXQnFYV0tnZm1VZzlsakN2ZUJmYzZWM3hoY3R2S0g4bDc1d2dIZGlpamxSL2I5UXJuSUJGUGx2VmJWQzlPKzJqRGszYmFSMFcyYkRVSVMrUUNRZE8zQ1BWY3pDMk9wbXhwaHFhdXowdGhsZCtqMmpLQXpIVUp1dmlLRG9wRTFYR29WeWE0WVpGVUIrZ2ZycCtld1Z3d2dvMGtBcVZOQnQxd09VWU13Y3JJNktxaEZ2bTRoSVVad0FqWUZuRkNwMWdCVVVyZUNqbHExZzQ1WjdSUTc2S2RNTlZNN3E5V3oxUTZxNjlHejd6aEdiOWhZY0MxRnB5Mm9tR0IwWk5sbGNHZ01IKzNPOGJGR1hXSi9xNXNnL1VjQlh1L1JwbmVZeGpEa0JHM3E0YmdKbFArbEVOMXp2RlROa1NJbUVIN2JLYTlTUm9zZ3N6bG0rc3dvUEhaVzc1VHNnbHJUSmlCaHFDbVA1QWpKLzVxaCthRVVrcTVSWU9SMC9aRVQ3SW1DUUFiY3hvRkVtMlQxT0FKOGxtK05BTG1SV2VKL0FXVEpMdkcvakV0RC9ERHVYSlNCRjhlTVhIY0MxYmswdm5OdW1jREJBSENudFdxQXh3eFhiVDRuek1SQkl4dXpLZ2F5bkJTMVpxYUI3R2psKzNoZ0hqYzFnbzR3TElhZE9pOU1qWUhpYVc0TXVxMEFPaGhCdnVCWVdzVTNpN3RtNkNKVWpIMFU2Y2lheWEwVWRFb0tvcVZyTXJSYWhGYUwwR3BSVnlZQ2hDOVRWK2pLTU1hTUQwcmcrREN3Vm16bDk1d1lpVWtvZGdoRk5ORWlLRGFXUmRFZ0ZFbkZwREEyYmNKUnk4Q3gyZUJoZ0E2UEEzUTRrbHp4V2x6eldrWWFtTFFsQWlZek9zc3A1WVQxZEthU3l1OWxlbkVoclN4bVBjdlZFanN6RE5UVGxmTWZEakRZaDMwZ3g5R1Joc2FlZlBYc1kyZCtqL3dYRDFkRmFncDNlbWtVWVFQQ1ZXckZjRlU2U3MrbEtQVXhzRGRsSm5oMnQ5NVVuTFJid21uQyt2RTVjMC91SzA3NnluSGFDbkM2WUJiSjlTMEdock40ck9NWUZaMDBQaVEwQ0pvR1FkTWdhQm9FVGFNZ05FK2xLc1JuWThxclQ1enJHN2MvKzVKRlJrMUNxRWtJTlplaTdBUDBYbTl5dk5kTm5XSGdLTEVSRzJGcUVreE5nc2ttbUd5Q3laYmEvZ053TjNHNlpRSmNJMUdtUzJaKzdTaEgvTnRjdVN4aWlwVXhIZFRtdk1oa1EwUHE1SmZ1Y25MRGdadXpKa0Zsa3ZGUGN3M3BnWkZzN0E0d3dQU2VCNXJlSTF2RnNRT3JFY09XNEFHaE5Cc3hRNWI4cG9RaEsrMk1xSXRGSStMMldyRXJEcFhmSTRjQlJPbUtKc2JmSEZtUGhLaDFLbTJGUG5xRllOTGE5Q3hxMTRlUkpMQlVNWkpremt2ZytUQm01bjlhN1p4N3dZa3NZV2k4aFc0YWdBVTRSc0g2am9OMUFsTUdIS0x0d0QwSDJ3ckNiWG5XbFYwMU9RRzhtVHlZZE1HMTlGMGhQOVNHQ3Axd0xOVUM0UXpZaWhZV0Iwc3p5ZmRCVDJjWEhUWlV2bGFMUEI4RFNnd241bUw0SW9JaFJJd2cyY05DTzlYbVZsbjJHR0ZMQTJ3RklJVklWc2JVakdNVHFCb0gxZEdFK05xTXg0aG80TTd4TUpucUVxd214OVVrWUIyVGdIVTRzSTRwK3V2d1pleC9pWFZ3cWdxKytBR20wWmo3cE9PeEgrSzBrdUU2bVNqOElOMnR3Sy9QQ3NFdmhPZ0M5RFBuWFZOaUpRYTMrd3pDbmhsSWlEMldPcGFJTktFb1JSb0hjUUFZRlgxTWlsOFUzdTBBM211TXFVQXl5bFVSKzhlZjFQYVRMVlI3WGdEZkl2WlBVMkNNT0xNQzMxcVlLSmNPYnNzb0I2NFBuT29HTVJJRVVNdG5paC9sTVdTZWpsR01mOXNWK2JmUU1NVkRlNjR0NUFod09JMXBqSDROR2YzNmNJbzgwZVIrWEpNN2NxeU1KMTFRRkdwTWdGcGpUczM4TndDdHVsSks5ajJjRVlQeUUvdVdWRmRWK1puVm5qUEljK2VTNHZQa2xhUFBXYjVmQ1JzZ3JxaG0xY0JCRXBuL2tDSEQxSENYYmIxbXYzOW0zOEJRQjg4d2Q1Smp0Wml0MW01YUlXYitNTjlqZy93SDlzL3Z1dEU5WmU0TXVpMnBKcVpkUHJCUXdzQXNQc1FVQWdyN0tmQmZjbXdCeXhOcUxDcUxRZW9QMS90QjRzRTVETmpyU1I5MmlwdnBwYkxOQk91VDA1OU5RTm9FcEprdzFMbnBHYzAyaXdFYUJmQUpCL0FOV2pSelBqV0pPaWhNYUJTTDNnaDVlNEZmWFN5QUExT01KYlV4c0huUVpGcHFXbEtLWkRCbkhrNjBZYXpDL3pJK2lRemJEUnBOQkNVdGpuR3hTU1BObE9rcEJZQldpTEEvWjZUNzg3N040Z0RMZlVwZE5tZUVQVHV0NzVlRHNZeFQ3bkxyMFkxYmo2NWRBTVFpN3VheUFTQzVpbW95Qk1rcmozcEJ3V1NibUNIcDgrV1lXOWdYeWtlQkwyRUkrcVM0a0pRRnc3VU1RN1ZwRUlhdE9JWjJDUWhiVWoyVUdqVTA5VnZGcXZHMU1FNllHbGRETEhVc3FmZTJlUGN0RHBxdmNEUkprdTJ1NkxKT0s2Ukp5a2VYUm5Ickd2azJpZFhVeUo4MEQzd1ZZZEljQ0JieG9pODZmU0g3MnB4eit4cStqSHdNTGQvMUcvc2NTVUdQWXBqNmVZRURjR0ZraUU2Tm1IUHRhMThaN3pwenZFWU1aY2tJY3YrUFk2ckxNSFZNdWNQUzRkRzFEay9xNkxRb1VvUnVpVDlIM2czZEZIL09YSWlPcDRNWWV0UC9aRERhYUZCbXEyZXpxdTFUWWtRaG55OFNleXVSaGNYOFE2bDZ3dllCM3o2ZzdRR1VPRnEzK1dEZEpnMzFJVVVGUFNEWHNGeG5mNHQ0Wm84dThSRzZVTjVnR1Z1U2ErWlVPaGtxZU5MUzBTVXRNSkdXSVJQUHdPU3FpQjV6eWxxUVV3YlZKeHlvUDZNQjdwdmxEemlJdXRLdmtON1dMcktPcG9oTG84ZE5uRGlBVEZVa29ZaGlZVFBObE1TQ0QyaU1Mb1BUZG9nVDh3UDMwY3o1TXhzeDZRQlRiT21SRDVtYXIzT09kSUJSNXpJeVZHOFZzc2VCQmZNZWs2UWg3REJQcE42THNMV3F6am1veFdjQkExOUZiNVZQQ3ZRTndUeXY3OEEzblErU3BuTWVkQytDTWZjRHJ2b29PODBnbnlGY1h2VXduend5ejJCTHJXbGYrWXBFWXNXUldLcDh2a1V6RGlZTGtnWk0wUTU4d3JaZlk4QXJiL25wS2pwd3MzZ0FWc0N3a3o5bytPbXBnam05b3U3cjZ5RGs1cDlqckhEdE9waklwTlNsU3RneDQ1TmRyblRVa004ZkNnbStqcHdDWmZhZ0dNWUpwN200RlJPTlk1TzZzaHRzTjJsWWJwWFQxaWVCNTN5QnJzeDdCanhmSXBHdHM2dExpTXNhcDAzcEVqbUlnMFFRMThyTXdLUnBMZGszVnRJSnpFUHdhUVRCZjJFUVp3Y2pGYVV4eE1CZ2ljV3VBWTVHdml0ZGVYNEFmT1VDZ3hBR0laeTJKQ0VkazN4d2cvL0ZuMzRaY1dNU2JwRW1aQ1BXcFRoem1DZUZuN2dVWHVPTWw0UFpyMWM0K1FBTURESGluWkJneXRNSkxhVXFxdGhTTm9rcnRtQk5ZYWd0eVNXbExGQ2R4NGgwSGxwbkpYSUpGMDkwZkJ0eDRjU0NtU2l0eUZTWkdaOHBBM3ZmR3d6N040dEI5RWtETG9yRndvRGNlU1NKMUVWeEhPT2N4a2NVMUdscURSZkhnQUFaRURjTUNJZkJIbXJ4WU56SFhjWmpxanVnNGd3S2J4RDE0cWhCL0xFUDRMRUpUWXJXbktiV1ZHdVNSazFpeFg3UW9oZXNQVTR3SHpIajJuZ2RtZks1Q3JqWTRUa2ZNUFE1eXUrTVIvelppOEgrYXdiOGNZOU9mc2krNzQvZ0NTd0Rlc1JLQS8veklsV3FYOFdmdndKMWI2R3VzZng1MUlxbjhLdlliNFRPaTRudUVSZGRENThtNExBTy9FRWl2akVITWFsUjBacHE0dE5KZkhvdHZncmllOHJGTjJZQU9leW1JWXJ5bXlERXA0R29aUHVjRnRpbm1tQnRFcXhkQzdhQ1lMZURmZ2tUQkdEZ1JKMGROeko1NE5lZFp0UlZFNkJCQWpScUFTN1JNMGtRMTJnYlhmcXdDVDFUdnM5cGdYMldvbHhWclNWYlFiS2grV1ZqaWsyNEZ0SGxzd0QrOXRPVTdkV2sxaVNwTld1aExTRzBFWnFiVHVTSlV5NlBnL2piVDFPMlZ4TmFtNFRXcm9XMmhOQUdDTXdzZ01VWFRyajlOR1Y3TmFHWkpEU3pGbG9Gb1QzaFF0dmp6Nkw1QTBrdmFyODg0V0tTN1hHYXUwYzFrWFpJcEoxYXBCVkUrcENMdEl0enNWZkJESzBiUEJEaU11aUQ0dFpxNG5KSVhFNHRyZ3JpMmdxY1F1ZzV0TXhhOU9mREd0R2ZEMnVxaVc1R29wdlZvbHRpeEh1RHlaL3p4SWdYYmo5TjJWNU5hSE1TMnJ3VzJoSysraWljT3d1Y2d1M0Fqb3pXbldiVVZST2dTd0owWXcxN0hHalRYSmtxZlpUSWU1emE4K2Z3ZmUwUjYwOXo2cXMxVXVYUll5ajdhZ1RZUVYrTC9kSmp2NHpZcndrSllCK0Q0bFcwOVNuWFZxaVpna21CazU5ZG5JeVA2bXRMcmlTNkNjb1VxWHFwbVdHdDFySGI4VnFqR2RaT1crS3hyYXhEMnhtSHFtS0x4RzV5LzVxL3V0NVpzOWdhY1hyR2NScmpzcGw5ekhhRWZaTTlTSmMxa05vUjE1U0lvc0MvMU5iTGdGelhSVFlFWlpoYnZjRGNxbXZsaEsvVi9DMWZJN1ZPdzI1MlVqU3A3ZkFHNW10a3NmTnNTTThOK212WWgvTnc4cnRWZHVQeWNTcDJuanZHNlhtRTRWaFA1VDM0TGVidVVjcGpUdDl0ZEJpVGF5bmRLdG5ub3VRbFZibDFYZVNPY1g0aDRCeEJPSThsWDRadG1UWTAyMDZEWWVheTZuaGxSend5RSswVlgyaEROSHNQTTFFeFJ3WFRLb1BSeWN1eDY3U0c3b2dEUm1nWXFkTk9XNTJtR1VicTNIRFpyMWh0WUJpMTdMblRVTk1NbytTSlZiRkZvaFR2WC9QdldEY2VjZDJBOUVhYTNZWVhKbnpNMHdpWkNhRkZLMFZiMkFqYnJka1pockpvZkRSZW11RnBVeTBUdnptRjFHRnoyMzdIdXJETmRTSHlTR3BXbDZzSnJSWmtlTW83bDlrd2szQUdQYVRWRXUyQ0NKNXdZTnRONjF4MDRUVFRpLzFmV0JrMnVQbDNyQTlia1ZqQUg4Z1BseEZ0TUdTTjZyU05saW9NbDNwd1o5T1o2UWhjYWdhMUxVZWJxM0pJNXU1czZzeVNFcjJiSm15SVZDeDhKY2FOSUJXcGtuZjBEck1iMDVUYzBPQ1RwdVRUNWxTZnFpbEszbW9sZTArbzVMTTVmS1JZUU1jeWl4TDJSamQvUXppYnZKV2svWnppajZVM2kvc1hvbUNXT004SzQ4cDdnLzdOWW04UW1VNmRJMDZIbUlNTnRtMlgvYjNCQitENDgzRHpZRG1SclZ4N2V5UHJadEh2N2NHZlY0aWZ4ZnhpOEQxT2xLbnlQMlFEZWYzZWExd2c2S0t0Zk1VUTlTTEhiUG1MNEpoUERRdVVycFgzL0loL1V4cXhQYmZEOWlUMi9VWlJoYjIzV0ZzK0lOZk9sWW55QmNxVTh6N0NWdHU0SnZUUFVDdjQzZytWLzFJYTRVYzRjby9kbGN0dHZTTjhrdHVoMHVkSC9qOWxvYlN4dHNWYXg5cW5hTXJQN0x2RHRzQTMyRGJEeCttWWJGdWIxZEExbXJobm0vMVZXUTM4OGdRY3dvYzk3bUtNNWtOd2IzOWp4K2hLVTJqbEFiSWJ4U3RrOStlR0grSElMcTV5dXNhTU1BdXpOYTlUY2R5S3lDY2I4U2VSUGYxc3MwdXlrd0o1dG9XN2VNS3dua0U4Q3A4Q2dldWVVZGVZOTVWNmxSQ25QbjlTbG8wcE5sRzBSSmsraStqTkVlYWxYdk1uU0ovajZPQmZTeFd1RlVnaWVQM2VKMnpqVlhDRUhqdmlNVDZtODByNVBYVi9zVjIwNGl6V0w2WFNuTEd6eWJUMUtUN080RThlUDRXZVBFc2N2eFhYZHFaTHJ0Q0txTVlmc3ZiU2lveHovaXh5T3N1MzNQT1pDeGdkb0E1bVh6MmlpOUtyMDN2UkdFNk1oV3pzUzNuM0lPTHdJbUFjMHVqTFZQMFFaZkQvMmRWL1o5Y2ZZSCthWXh6d2t2ZXJFM2JrQjZiMTlLUzJqMHhqTGxDbkw5bTJLR2FuYlA5aldzZktyL0lvd3JnN0VjNUZpcTdBem1OTUpQdnQzckt6eUY0MU85ZnNYTE56emM3M201MS80T3hzc1hQN2EzRnBmL1E2RlhvVHczM2xiSzNtN0pxemE4NnVPZnVyNHV5dEpHZmZXNFpXYTRhdUdicG02SnFodnlxRzN1WU0vU3RxL2Evc0dyOHhXL1MrY3JSUmMzVE4wVFZIMXh6OVZYRzBiMFZIT1ByZU1yUmVNM1ROMERWRDF3ejlWVEwwbUNFUDF3TjUzRmVHYnRVTVhUTjB6ZEExUTk5RGhwWm9RWjE1VjdQelV1d3NjbG5OempVNzErenNzM01vMlZXd2M1MTVWN056emM0MU85ZnN2RW5zWEdmZTFaeGRjM2JOMlRWbjN4L09yalB2YW9hdUdicG02SnFoTjVXaDY4eTdtcU5yanE0NXV1Ym96ZVhvT3ZPdVp1aWFvV3VHcmhsNjB4bTZ6cnlyR2JwbTZKcWhhNGErRzRidXM3MUFPeU9jSmVSMmNIMUtzSE0yejRtb3RSSXNtY2QxTnV1ekhjVmdueG5EeUZ3SjF5MmpiMDlqOXl1WE1Jd2Jtc0N1MGFPeXN3TGorOUpUR0VPR01ETkdtU1J2NjZ3bHpWdlJObCtEZG1JNlZGYmJubkZ0Qzk4TThpNjIxM0xhWnlkbWk3OUc3ZnMzcGIwbTNjdUtFbTY2N2ozbHVoZmxldEVhL1o1ckgrUkdNSXR5by9LTXhVeUhPc3Q0a3l4UlhiQkpha3MwM3hMVmhIYlZsbWcxUzFRVjJyRnBsdWpqa0U4WlEwZnVjQW1HSHJNcm5DUFQxZ3hkTTNRUmh0WnFocTRadW80VlNCbjZTY2lueWl5VG81L0ZtR29IVzB0dmYvb1E4ZUlleDFiOXJkSi9FM2tsai8yYW5OTmNaRFBndkRiN0dHeC9uLzEwOWczZVRRcHQ4SzlqSWwrNjZQVUJCOWIrMi9ydEE1bTJWTkc5WjhobUgzQnNqcDFOZVFrZmlRYm02ZEJVNlRBdGNOaGZHQW5uT0lJYXlIRytEa0ZjQURUSVpScm1heXJzYmJMZm9Ia3p0bjljaC82VFhhbkxzSElSU2VMVWR3eXpTK1JWNFBrLzJlL3JBR2ZRcnY4TkVIdUFWOTZCdjdHemZxL01Dc2FqMWlQSlBPeWpMWGlnMklMR2ZjTlFhZ3I3T0RuOGpNeGFRVXUyWXpybjE0bTZrV1VYaW4wcFQ0czBaQm1UYVFPVEJiSU9hQWZvUzNVbUttTEZ0QVJNODBkOW8rS29uemJhTGNPWG16WlN5dlVtcm9HUEdaZk9tT2Z4R1Z1NUU4SEtmMHZlTGlKNndlcUdBYUpYRlpnSmRNSmc5UzdhN3lxT2JpcTdaeU5oMjV1Y21Xd2NCV0g4bTdGL1lGMTFib1dabnJMOUxtQXNRbnZwSFpmcE8vYjdOMldhSXNGbndqSHZ1UzBkUCtwdjdINmFnbzV2czNxUTJrZjI5eDFxMmVmVVdjT3QyTDV3bDdPVVBSL0Y5dnhOOGQ5M1dleTgwZnVNNy9rODlUN2pMWmZkNll2VVk4WDJ5WTRXcit4TEpYbHZ0ek5qSmU4WGNjYWJJVnRkQy9vUVNrMTJuOCtrUnhWQktFc0g4NjRweDFiVVJ0RkRTdXNuOHd3dlU0NUpkaDk1SERtcVNHOThJdGsvNzE2U1IrUnBscnhWNmZmK1ZIcnZLZjJtRkV0dnNTMGdoeHM4ZjFYYlVXZGNDeHc3eGJGOGp1elk0ZU4vT09wRFBkeEhBKzFMWU9nT3hnVm1hRU9LMFpmMU1QVGpVRFo0dGd2bEhPMkpLMjkveEVEYkgwMXVGbWZESHJ4dDdTMFZYcmhOYXpacEszenhCTmJrMGxqcFdiZEpWMWQrVHZCL1Yzbk85VENsVERmTGFuZUVZU3RyZDl6KzBBTDdvMW5iSDdYOWNlL3NEMW1mcUcyUDJ2YTRmZHZqdStqVEdTcnhNbHpWd0VoRGgvdUZZRTIwSkx6Y3VGTmVYazlQanVOWER2c1h5Z0ZhSzM5WExKeHIrb3pYaFB1QytNcHE3TUJaWUFkcUcyZ0h2a2YrZXhmRzNvVGo1SE9vMit3NHN2SnNYTFArR2V5bmxKNERvMFlTMnlKSFBzZm9JczJvOGJoVm9lUFdvMmRGZEtXYzl2M0VKSHFadU1PL2k5RzlGZW1oRStpaHVuRjYrQXoxTDNyUHhUUnJLc0h2N2pTa25Eekw2Y3AydUlYVlVycy9TR0xZNFd3bllEREx5RUxJSDFkbU9LN1lmSlNBV1E4Tk15VGpNV3pRS0R1V1M0QXpxWmhET1YvaGJOcERKcGsvY0E0VzVQUWxHSE9UYytvUFVyTU9aQkhyZGNXT1pmS0t5L3dCT3o4OG4ya2VrZklBZlZHYWw2WDhneXF4WWhjelBCcE1OaUFKNk84dXpsR0ZNNkVOdEFsQVFuZnJxNjBMZlJtT2VlZy81ejNWZjFMV0RvOVA3ckpXL0FIelRCVWtvYUVNTk94TE5sb0FEaXNObkVXTVdtZE5uUHNwbHBGem55U1JqMmxjS3Q4Rzg5Z2trL0IzbFY2Z3Nqb1hQUndqbURIeEkzT2JGTEZZRC9ZaGR0a1liL20vV2N1TzhPekpUTHV5YUd0L09iUmxLR2JqL2hRemNXQVdIMnpzbmVENDZoRTZrSUNPdVJ3a0FRM1BEMXhqb04zWHhGRWNjQVk1TlZsZEI2MUVrSW1MTW5CdVJRSS9JS2IrbmZ0KzlLWFVkdnVHdFRBK1l2K1lldlEvV1drckgySVd3amVnYmJjZy8yeHBabXZDYzJXZkhmVVo3Y1Z6bk92TzA0Wi94NGhmOUlnb0RqNCtuNE9aL2grWWxGK2lSWkQrS2J0YUt4NFJiZ1FSWWYwdjB1UHpwWll0OWNmS3J3bzg3KzNqQ3ZwK2g2OWFncmhQSy9Eck5HUmZXTkUweFF3bThPZGFhTk5QV1RsSEszMkcxb21PRnNkdHlPSTUyNGZ1dW15L2Z5RTk4aTc3ZkxvRTg1Z2ZaT2pIRHZMNytzZkkzdEY3VDg4QUsrdnROUm5hSmxxY0xkU05uM0YvaWlJYU9JNjdPSGFvT0VZME1VdHVqam8wWjNXd2g1M3c5dGFqUHk5UzBVam1tSFZ1aWZtenBCblhoSWM4WSswU003NC9CZXR1NDF2TDkzOEhHUlo4UE1nOUk0K1BzdnlUSGwvN0srUmlFY0VpcUQ5ajUvbUVlZjFVc3hOa3k4bjc0VS9JVCtIKzczQys3UXJYclY0WFhDVlExbzQyTnRpTy9qRURqMVZZSUZubmw0MFh6VnZwN1hsYVUwVHpIc2UzTHVWM1FjYW9odithZlA2bmc1WkFPNkV2ZnE3cDE5WHowN0VVNHozSG1Pa0JjeG0rRkhiUi90a0pheXJiWDNQRXM0SFp1MU9Nc3ptSXRJN2pwOE90WXZqYnhEVlRmajR3V0YxenROM0FKN3NkKzh2R3UzN0hzUEx2dWxoLytsRjY1R2RlaXRuYmFYTkg2OUtDTkZtSy9aSFdIY1l6eFAzblhoeGdpeS9XdnM0d25uVmR2M0hLeCtIK3JUU01TN0pZanI2WTc1Qy8wbEJjL2JkSkt3M0IxeXE3NmtETVlLblhHdDcrV2tQekZsajUyNVJWRTNJVzlwOFBkNHpuQjFzdk9jTzVhaVlXYy9scUp2NHJNWEg1TmQ5ZkZ4TW4xd3JXWFB5MXJ2dE80K0x2MkoxOVFOdC94dlRDejBtTWJxc3lGK2hpVkpEOFRZZkhvRHVSdFdxMGlyYkJPT2h1VjlHdUt5Y3hpbCtjd2FBM2ZwSDRTOUNuT3VnRlFxNUdSMkJKSnpoZitwRWRuTTNUQzhqM0JXb2kzY0VsOWhMUThKMGxwVDdEK1lZMmpqTWRsSG9MWnhjN01hbFBNWExjaVVrZC9ybTQ3KzNFa05lVklaaVA2dDNxd2crWUQvT0Z0NHBXUzM5aDN3MHVEVmlMdDhkMUpEcUNRa3liMkxENjNMU0pJK0VjZXpqRnAwMmNhNGpHcDF1WUI2UGpmQUw4cGQ4RzZ0UDkxbzBzTkt2TDZKa3c4ekRCMWtDNzcwcE9sRE40ZitXVWgyaDFXVzJoTFhaSkZzd2R5Z2UyM1YvNXlGQ015K1JIekMwN1Z5Z1diTEUyblBOdllHR0RkeEdWeXZkaGZ1Q2FaZEpta21oalprNGJNM1RnYnd2SHlpWmFSL2RYSmtrTTR4SjVoTmpQTVhNWC9ITS9HOWJQZ2graGwzV05uUGhlb1dkN2dsOTFnLzBxZXUwcVZnbk1uTTNSOTNiUjA0WDVrVGtlNFV2SFJsdTBqZjJqd1ZmSmFOeHk3YkFheUtpb2tzZWNGby80RnUwRUorS0ppcEdGZGVXbmwwRWEvanV5bUJDOVgvSHZhSGR5cytqMmh1Y0wxM1VOK0hnRCt0WEEvN3p1S0pENDl6Z0hBay8ydFJFVko1aHhtUVp4OWt1TTFnK3hkODY5Y2Y5a3VtRG4yRDAreDhJNlgraHowK3YyRDg4WHF0YzlPanBmekZuQk50dGUxOXJEbmF3QjFsa0grS3M3cE9JVkZyMWpmb0s5QWY0ZVQzRGZRUmQvRGNaWUhOTkdhOFQyZGJ6dWhDb25kUGFKUlJjNW92TlJjYmdMclR5R1ZqVzgvb2tLemVtZmFIQ2Evb21PeFlCdDFGaWhVYUZENFEyaTJMaUlUZkQwbkdCOGNCUFJyOVBVR283WGdObzhvTHNjUUdNMTlndnZhekR1NHk3ak1kVWRVSEVHaFRjNTY5NHM2TUlQbUdOSWc5d25KdkJYTjRzM0k3YVAyZkFPZURteGZtWG5ZeEtlSExLN21CejJ6eGR0ZDJhNCtEU2V5ZGxnTlNmeTlzNUdONHZCMFFSdW9UY2NRekVhNHAyTWRsRUJoNmdiSTZpQ2s0d20vRGREUXZWMlIwTXFMTGpwM2QwZS90cnRZMkZOUUgxR3d6NGNzQThuYlhpL2pQNXh2bWhDYWRIUEV5cEdjUHorNEJDS1h5ell4MmJsSHYyY3dPbCtzYm9JN0hDRWlCNUQ0L2F0SVd3YldxZFE5S2tZV2lpQm5uVUVoKzMxTExpWjQ3Y1cvQnBhK090Z2dvcDFNQ0dpN0NQQlE2ZjlFMHRNbS9iT0JyanYyUkcyZnpMRzA3RWpvVGpyNytMSkIyZnNCSXAzZkdUY0xOaWY4MFhMdzhLbFFxV2lJUlNzSE1EK1RIMmFIaFpzd0RpMkduUXVTK1dseGtzZHk3M2pIdXczMmNVZU54bTlnZUlNYmtUMWV0MVQzS2ZYUmEzcmRYZHhhMzhYZi9XUGJoYkR3Y1JkTkY0MnZjbkppTDZNRC9tVzdnbi80dlhPRUdMdjZKZzE3K2k0aitmMFJ2dkg2TkNPRkJ1SG14MDJ2QjBlb2NCR2gwTXFZTmYvNWxQZEhUUjNpT3BibVA1cTgrbFkyRXFwc0JxZktJZGdCRXlIcXpoMWJ1T3lsaG1URW11eGR6Z2s0YjVsa2g3dXZtVTArR29mTnB5T1VlZUd2SmUrWVJlYUlxZlphQk5lZXNNaFFuUms0WDVIUFR4Ti94QVZvRGNFU3RpRFUvWmV3ZmE5SVZ6TDgxNGZzbnQrVFR0NVh1SjZEWDY5YldSWGVHbzZySFdsdWR0WjdJcU5RbGM4UE5vUE5weWREUENwQjFURW40R0FuWGxLZlhsS1hkbU05K1NwYWtNUWRyS0x0MUg0Umg2R2dLRkVKYmVnbGdUTjJ4LzNieGI3SjJmUThQMlR0MWhZN0pmZVl1VmJLdjNCaXcxbkxqdWl6d3lML1Q1ZWM3Ly9LbEsxM3orQUR0NS9EUmM2c1pCd1R5eFVhRy9VNzdITGpuRlllajArSXRydFJZcnhQNDZCWmZTTzFqWVRpQjcyM1lYS2VqTG9QeXZIZTVhN2FHdmUyRHJGd1dhL2gyTXR0R0VFOTcyMkFkYTQvd05zQVd5ZUpiQVorOTFHZ1lYZlN5S2szbitFZk8zeEp3dVcwQjZWbVlkVjlVZGRFaDExdmZvVG9yT2svb2dZbGRHZ084Ym9NY2RvbCtGRHI1eTV4RVNnOTRGYlRWaUZHR2FoQSsyT3dOTXlDQitzejhYSE5HTDROR0w0NkZvY29kbVNmVXdqaERSQ3lDQ0VERUxJOEt6UnJ5UlZDMFpIWjhvMm5OQnRXTllKYmlpRDRTT09JYmg1LzFKb3dYbWVudW1hVE5HeWdWUTdIRXB0NnBTQTBqRUpTdHkrTmpDMVRqRXduM0l3ZStoeDAzTUR3QmVCTllaZkFnOHJWRXFhMzd2STlqdDVyMVgxd3JTdk5neDV0MjFrZE50bWc1QkVQZ0FrWGJ0d3o5WE13bGpxcGtaWTZ1cXNOSGJaSGJvOUkraE1oNUNicjhpZ2FHUU5sMXBGc2lzR1dWV0Evc0g2S1lXM29nQVpUUUpJblFxNjVYS0lHb1NSazlWUlFTM3lkUXNKTVlJVHNDbmdoRXExQnFDU3VoVjAxS29kZEl5Qk5PaWduekxWVE8yc1ZzOVdPNml1UjgrKzR4aUJzM2t0UmFjdHFKaGdkR1RaWlhCb0RCL3R6dkd4UmwxaWY2dWJJUDFIQVY2VUFPNWcrUGVEb0UyOUlLYnlwUkRkYzd4VXpaRWlKaEIrMnltdlVrYUxJTE01WnZyTUtEeDJWdStVN0lKYTB5WWdZYWdwaitTSUVxaGdFck1Va3E1UllPUjAvWkVUN0ltQ1FBYmN4b0ZFbTJUMU9BSjhsbStOQUxtUldlSi9BV1RKTHZHL2pFdEQvRER1WEpTQkY4ZU1YSGNDMWJrMHZuTnVtY0RCQUhDbnRXcUF4d3hYYlQ0bnpNUkJJeHV6S2dheW5CUzFacWFCN0dqbCszaGdIamMxZ280d0xJYWRPaTlNallIaWFXNE11cTBBdWt1TXJsMEVpNC9LK1daeDF3eGRoSXF4anlJZFdUTzVsWUpPU1VHMGRFMkdWb3ZRYWhGYUxlcktSSUR3WmVvS1hSbkdtUEZCQ1J3ZkJ0YUtyZnllRXlNeENjVU9vWWdtV2dURnhySW9Hb1FpcVpnVXhxWk5PR29aT0RZYlBBelE0WEdBRGtlU0sxNkxhMTdMU0FPVHRrVEFaRVpuT2FXYzROTVZIZVgzTXIyNGtGWVdzNTdsYW9tZEdRYnE2Y3I1RHdjWTdNTStrT1BvU0VOalQ3NTY5ckV6djBmK2k0ZXJJaldGTzcwMGlyQUI0U3ExWXJncUhhWG5VcFQ2R05panVmejdpSk4yU3poTk1DdmhqM3VMazc1eW5MWUNuQzV3VmNQdEJZYXplS3pqR0JXZE5ENGtOQWlhQmtIVElHZ2FCRTJqSURSUHBTckVaMlBLcTArYzZ4dTNQL3VTUlVaTlFxaEpDRFdYb3V3RG5nbVE3YjF1Nmd3RFI0bU4yQWhUazJCcUVrdzJ3V1FUVExiVTloOWd6dXcxNW1JeXJwRW8weVV6djNaNFh1RHZPTzlld0JRcll6cW96WG1SeVlhRzFNa3YzZVhraGdNM1owMkN5aVRqbitZYTBnTWoyZGdkOExWTDRWTjJSZXpBYXNTd0pYaEFLTTFHekpBbHZ5bGh5RW83SStwaTBZaTR2VmJzaWtQbDk4aHdtVmU2b29ueE4wZldJeUZxblVwYm9ZOWVJWmkwTmoyTDJ2VmhKQWtzVll3a21mTVNlRDZNbWZtZlZqdm5YbkFpU3hnYWI2R2JCbUFCamxHd3Z1TmduY0NVUWZBTVdOODl2K1NyeGZLc0s3dHFjZ0o0TTNrdzZZSnI2YnRDZnFnTkZUcmhXS29Gd2htd0ZTMHNEcFpta3UrRG5zNHVPbXlvZkswV2VUNEdsQmhPek1Yd1JRVERDMHdHaStaL0oza3VHMUhITEF3cFJMSXlwbVljbTBEVk9LaU9Kc1RYWmp4R1JBTjNqb2ZKVkpkZ05UbXVKZ0hybUFTc3c0RjFUTkZmaHk5ai8wdXNnMU5WOE1VUE1JM0czQ2VGWkZJS2NWckpjSjFNRkg2UTdsYmcxMmVGNEJkQ2RBSDZtZk91S2JFU2c5dDlCbUhQRENURUhrc2RTMFNhVUpRaWpZTTRBSXlLUGliRkx3cnZkZ0F2clcvK2hLdk1DdGcvL3FTMm4yeWgydk1DK0JheGY1b0NZOFNaRmZqV3drUzVkSEJiUmpsd2ZlQlVONGlSSUlCYVBsUDhLSThoODNTTVl2emJyc2kvaFlZcEh0cHpiU0ZIZ01OcFRHUDBhOGpvMTRkVDVJa205K09hM0pGalpUenBncUpRWXdMVUduTnE1cjhCYU5XVlVyTHY0WXo0SXNpa3VzSWltUkhiL3EvOHVhVDRQSG5sNkhPVzcxZkNCb2dycWxrMWNKQkU1ajlreU9DRHNqL2hNcCtmK2JJbUd4OXRsRFBKc1ZyTVZtczNyUkF6ZjVnUEg3VlBYVGU2cDh5ZFFiY2wxY1MweXdjV1NoaVl4WWVZUWtCaFB3WCtTNDR0WUhsQ2pVVmxNVWo5NFhvL1NEekFWVWZyU1I5MmlwdnBwYkxOQk91VDA1OU5RTm9FcEprdzFMbnBHYzAyaXdFYUJmQUpCL0FOUGE2RVQwMUdYOWp4ZmVCa0Y0bmVDSGw3Z1Y5ZExJQURVNHdsdFRHd2VkQmtXbXBhVW9wa01HY2VUclJock1ML01qNkpETnNOR2swRUpTMk9jYkZKSTgyVTZTa0ZnRmFJc0Q5bnBQdnp2czNpQU10OVNsMDJaNFE5TzYzdmw0T3hqRlB1Y3V2UmpWdVBybDBBeENMdTVySUJJTG1LYWpJRXlTdVBla0hCWkp1WUllbno1WmhiMkJmS1I0RXY2UmxEc05RSUhKeHpHWVpxMHlBTVczRU03UklRdHFSNktEVnFhT3EzaWxYamEyR2NNRFd1aGxqcVdGTHZiZkh1V3h3MFgrRm9raVRiWGRGbG5WWklrNVNQTG8zaTFqWHliUktycVpFL2FSNzRLc0trT1JBczRrVmZkUHBDOXJVNTUvWTFmQm41R0ZxKzZ6ZjJPWktDSHNVdzlmTUNCL2lZY1FtaVV5UG1YUHZhVjhhN3poeXZFVU5aTW9MYy8rT1k2akpNSFZQdXNIUjRkSzNEa3pvNkxZb1VvVnZpejVGM1F6ZkZuek1Yb3VQcElJYmVORDFWSHA4QmxxbWV6YXEyVDRrUmhYeStTT3l0UkJZVzh3K2w2Z25iQjN6N2dMWUhVT0pvM2VhRGRaczAxSWNVRmZTQVhNTnluZjB0NHBrOXVzUkg2RUo1ZzJWc1NhNlpVK2xrcU9CSlMwZVh0TUJFV29aTVBBT1RxeUo2ekNsclFlRFIwcCtVOFBXQ3ZsbitnSU9vSy8wSzZXM3RJdXRvaXJnMGV0ekVpUVBJVkVVU2lpZ1dOdE5NU1N6NGdNYm9Namh0aHpneFA5Qi80RmttWXRJQnB0alNJeDh5TlYvbkhPa0FvODVsWktqZUttU1BBd3ZtUFQwdEFwODRJYWJlaTdDMXFzNDVxTVZuQVFOZlJXK1ZUd3IwRGNFOHIrL0FONTBQa3FaekhuUXZnakgzQTY3NktEdk5JSjhoWEY3MU1KODhNczlnUzYxcFgvbUtSR0xGa1ZpcWZMNUZNdzRtQzVJR1RORU9URStoL0ZEazZTQXI2TURONGdGWUFjTk8vcURocDZjSzV2U0t1cSt2Z3lONjhBYk91SzVaQnhPWmxMcFVDVHRtZkxMTGxZNGE4dmxESWNIWGtWT2d6QjRVd3pqaE5CZTNZcUp4YkZKWGRvUHRKZzNMclhMYStpVHduQy9RbFhtUGJ5aTl5bzJZcWF0TGlNc2FwMDNwRWptSWcwUVExOHJNd0tScExkazNWdElKekVQd2FRVEJmMkVRWndjakZhVXh4TUJnaWNXdUFZNUd2aXRkZVg0QWZPVUNneEFHSVp5MkpDRWRrM3h3Zy8vRm4zNFpjV01TYnBFbVpDUFdwVGh6bUNlRm43Z1U2Q2xXRG1hL1h2RzNkUHBQVWdzSXBqeWQwRktxb29vdFpaTzRZZ3ZXRkliYWtseFN5Z0xWZVl4STU2RjFWaUtYY1BGRXg3Y1JGMDRzbUluU2lreVZtZkdaTXJEM3ZjR3dmN1BZdUVkQkRhSmVIRFdJUC9ZQlBEYWhTZEdhMDlTYWFrM1NxRW1zMkE5YTlJSzF4d25tSTJaY0c2OGpVejVYQVJjN1BPZmpBMzh1enB0ZzltS3cvNW9CRDQ4dGdwTWZzdS83OE93aDlyMFhlWUJacEVyMXEvanpWNkR1TGRRMWxqK1BXdkVVZmhYN2pkQjVNZEU5NHFMcjRkTUVISHlzZUZKOGtWZFVDdUtMMWxRVG4wN2kwMnZ4VlJEZlV5NitNWC8rSHIzTExpN0VwNEdvWlB1Y0Z0aW5tbUJ0RXF4ZEM3YUNZTGVEZmdrVEJHRGdSSjBkTnpKNTROZWRadFJWRTZCQkFqUnFBUzdSTS8yM1NGeWc3Y1JoRTNxbWZKL1RBdnNzUmJtcVdrdTJnbVJEODh2R0ZKdHdMYUxMWndIODdhY3AyNnRKclVsU2E5WkNXMEpvSXpRM25jZ1RwMXdlQi9HM242WnNyeWEwTmdtdFhRdHRDYUVONkcwNkFTeStjTUx0cHluYnF3bk5KS0dadGRBcUNPMEpGOW9lZnhiTkgwaDZVZnZsQ1JlVGJJL1QzRDJxaWJSREl1M1VJcTBnMG9kY3BGMmNpNzBLWm1qZDRJRVFsMEVmRkxkV0U1ZEQ0bkpxY1ZVUTExYmdGRUxQb1dYV29qOGYxb2orZkZoVFRYUXpFdDJzRnQwU0k5NGJoUjdpTFk1NDRmYlRsTzNWaERZbm9jMXJvUzNocTQvQ3ViUEFLZGdPN01obzNXbEdYVFVCdWlSQU45YXd4NEUyd1JQRyt5aVI5emkxNTgvaCs5b2oxcC9tMUZkcnBNcWp4MUQyMVFpd2c3NFcrNlhIZmhteFh4TVN3RDRHeGF0bzYxT3VyVkF6QlpNQ0p6KzdPQmtmMWRlV1hFbDBFNVFwVXZWU004TmFyV08zNDdWR002eWR0c1JqVzFtSHRqTU9WY1VXaWQzay9qVi9kYjJ6WnJFMTR2U000elRHWlRQN21PMEkreVo3a0M1cklMVWpyaWtSUllGL3FhMlhBYm11aTJ3SXlqQzNlb0c1VmRmS0NWK3IrVnUrUm1xZGh0M3NwR2hTMitFTnpOZklZdWZaa0o0YjlOZXdEK2ZoNUhlcjdNYmw0MVRzUEhlTTAvTUl3N0dleW52d1c4emRvNVRIbkw3YjZEQW0xMUs2VmJMUFJjbExxbkxydXNnZDQveEN3RG1DY0I1THZnemJNbTFvdHAwR3c4eGwxZkhLam5oa0p0b3J2dENHYVBZZVpxSmlqZ3FtVlFhams1ZGoxMmtOM1JFSGpOQXdVcWVkdGpwTk00elV1ZUd5WDdIYXdEQnEyWE9ub2FZWlJza1RxMktMUkNuZXYrYmZzVzQ4NHJyaHYwMlEzdjc5TVU4alpDYUVGcTBVYldFamJMZG1aeGpLb3ZIUmVHbUdwMDIxVFB6bUZGS0h6VzM3SGV2Q050ZUZ5Q09wV1YydUpyUmFrT0VwNzF4bXcwekNHZlNRVmt1MEN5SjR3b0Z0TjYxejBZWFRUQy8yZjJGbDJPRG0zN0UrYkVWaUFYOGdQMXhHdE1HUU5hclRObHFxTUZ6cXdaMU5aNllqY0trWjFMWWNiYTdLSVptN3M2a3pTMHIwYnBxd0lWS3g4SlVZTjRKVXBFcmUwVHZNYmt4VGNrT0RUNXFTVDV0VGZhcW1LSG1ybGV3OW9aTFA1dkNSWWdFZHl5eEsyQnZkL0EzaGJQSldrdlp6aWorVzNpenVYNGlDV2VJOEs0d3I3dzM2TjR2SVc1Q2ZvTTN5VGpuRUhHeXdiWU0zd2dmemNQTmdPWkd0WENmZWRiek4rdEY3OUQxT2xLbnlQMlFENWJ4cmVNdGZCTWQ4YWxpZ2RLMjg1MGY4bS9ETzRlM0lHK3JGZlpOdktONWliZm1BWER0WEpzb1hLRlBPK3doYmJlT2EwRDlEcmVCN1AxVCtpNzhySFQvQ2tYbnZkbTVqYlF2ZjR3enZiSWJYZkRwc2l4YTgyeGtlcDJPeWJXMTh0ek44bXJobm0vMVZXUTM4OGdRY3dvYzk3bUtNSm55ajg5L3dmZXBOb1pVSHlHNFVyNURkbnh0K2hDTzd1TXJwR2pQQ0xNeld2RTdGY1NzaW4yekVuMFQyOUxQTkxzbE9DdVRaRnU3aVNmQU9iM2dLQks1N1JsMWozbGZxVlVLYyt2eEpXVGFtMkVUUkVtWDZMS0kzUjVpWGVzMmZJSDJPbzROL0xWVzRWaUNKNFBWN243Q05WOEVSZXV5SXgvaVl6aXZsOTlUOXhYYlJpck5ZdjVSS0U5NGpMdFBXcC9nNGd6OTUvQlI2OGl4eC9GWmMyNWt1dVJYZUsvNHQ5M3ptQWtZSHFJUFpWNC9vb3ZUcTlGNDBoaE5qSVJ2N1V0NDlpRGk4Q0JpSE5Qb3lWVDlFR2F6bnJlZVBJb3k3RStGY0wvYU8rbngyM3VMcy9DdHEvYS9zR3IvZFc0YldhNGF1R2JwbTZKcWh2eXFHM2s0eXRLTGRXNDQyYW82dU9icm02SnFqdnlxTzltTWNZMXlPY1g4dGFKRzlhbmF1MmJsbTU1cWQ3emM3K3pHT01VTWVyZ2Z5dUs4TTNhb1p1bWJvbXFGcmh2NnFHUG9IenRBV083Zi96REhhSDJmWEZYcmo1SDNsYkszbTdKcXphODZ1T2Z1cjRtemZxbzV3OXIxbGFMVm02SnFoYTRhdUdmb2VNclJFQytyTXU1cWRsMkpua2N0cWRxN1p1V1pubjUxRHlTN0R6blhtWGMzUU5VUFhERjB6OUtZeWRKMTVWM04wemRFMVI5Y2N2YmtjWFdmZTFleGNzM1BOempVN2J5STcxNWwzTlVQWERGMHpkTTNRbThyUWRlWmR6ZGsxWjllY1hYUDIvZUhzT3ZPdVp1aWFvV3VHcmhuNmJobTZ6L1lDN1l4d1Z2QjBmR0xvOEYwTjcySjdpV3lkelhzaWluYkNyczNqUHB2MTRZNWlzTStNWVdhdWhQdVcwYituc2Z0TmszaGI0TnJvTWRrNWd2Rjk2Wm1NSVY5a3pZUW1XVnhuOTkrOEZkM3o5V2tucGl0bGRjK2ZFZUZjdHFTdXRSSnhyNjlSMThCbTBkYWtiZVk5MXJhblhOdWlYQzlhbzk5emZZT1lBYk1vTnlyUFdJd0ExRm5HbTJTSjZvSk5VbHVpK1phb0pyU3J0a1NyV2FLcTBJNU5zMFFmaDN6S0dEcHloMHN3OUpoZDRSeVp0bWJvbXFHTE1MUldNM1ROMEhXc1FNclFUMEkrVldhWkhQMHN4bFE3MkZwNis5T0hpTisySFZ2MTU5ZUpUSjNGdXFKZm04ZHlHcjVmMUdSOWxuay9UR3JBYUJyN05BS1dnMjJ3RDdUZGw0cUp2T2lpZndkYzU1WG1pSmJBRWZsOXlxallwOUowYVpuK3NHbDZLTmViS2hyNE9IYW1WY2FyeEpFdFR6T2JmRlIxY1R5RlViZk5QZ2JidjdwbTF2R3FkVmlvTW0ycG9udlBzTzkvUUU2TG5VMTVDUitKQnVicDBGVHBNQzF3MkYrd3hlWm93eGs0eXZvNkJMRXAwQ0FYT1k4MEZmWUdGZ1RObTdIOTR6cjBuK3hLWFlhVmkwZ1NBNzFqbUYwaUM0R2w4U2Y3ZlIzZ0ROcjF2d0ZpRC9ES08vQTNkdGJ2bFZuQnFOUjZKSm1IZmJRRkR4UmIwTGh2R0VwTllSOG54MEpBUG81cHlXT215VFBtZVh4R0hIWWluT0svSlc4WE9mK0MxUTBEenIrcW9CZkFEUWFyZDlGK1Y1RmJWSWFwa2JEdFRhNFhObklRc00rTS9RUHJxbk1yZXZHVTdYY0JUSUQyMGpzKzZyeGp2MzlUcGlsTThrdzQ1ajIzcGVOSC9ZM2RUMU9RMmphckI2MzR5UDYrUTA3OG5EcHJ1QlhiRis1eWxyTG5vOWlldnluKyt5NkxuVGQ2bi9FOW42ZmVaN3psc2p0OWtYcXMyRDdaMGVLVmZha2s3KzEyWnF6ay9TSnVrODNRbnJvVzlDR1VtdXcrbjBtUEtvSlFsZzdtWFZPT3JhaU5vb2VVMWsvbUdWNm1ISlBzUHZJNGNsU1IzdmhFc24vZXZTU1B5Tk1zZWF2UzcvMnA5TjVUK2swcGx2NkpzZUJsNEwxeksxNzV1K2dKVkI3VGRjYkN3TDVUdFBiSUd1eXdscW94dXhEcTRRNGJPTzREZDNjd1lqRERzVjJNeTZ5SHU1L2hHQmk5NTNmWWIwRlBQd1cra0NpWkY2emxTZnlLSExrZWRpa256M0s2c2gxNWw5NE9iL2NIaWI4YnhoMEFnMWxHUERCLzVBY05NTkM2Y2RETHRURmkxeEc4Q3RBb094YlZ3NWdHem1mT1YraFZQR1NTK1FPaklTQ25MeG5SclFlcDhUK1pkN3N1UDFNbXIzSXkzMkpiZ0tkdlVKTld3d0x6Z0FYMGpXT0J4eUYzNDlrdWxIUHNOMWZlL29pQnRqK2EzQ3pPaGoxNEcrTmJLcnh3bTlaczBsYjQ0Z202enRsNnBXZmRwckZzNWVlRStOZ3F6N2tlL1picFpqbnRmcUVjb0V6K3pud29pTGgveGl1RHpnQmJya2JiWjRHMmF4dW83ZTl4bnVoZDZQOEp4OGxua3JiWmNhVExSVWJJS3dtMlJZNThqaDd1cG95c1JYU2xuUFo5RjEyMVVja3YxbkIwVkxudS9JeXh0NW5Ta3ZqRmZyVGtidnppOVVna2psL1pjUzNpZTFYdTZmSEloQlpFSnBwMVpLS09UTnk3eUlTc1Q5UlJpVG9xc2Zxb3hBT21wYkJ1Y1I3dzhYUHVvZnByR0hkNGhHeVhuZTBQaUc5WFlHY1lGWFgyRnl3cUc5blpZYVdCc3doUmRtN2lMRlN4bkpEN05EN21ZNW9ubFcxczBTYytXMDVaSVZVaStDN20zVFJRSGk2aTd1SzhUVGc3MkVCSmdMZCt0K1BrdWp4eEdZNXg5TDhOWmhFSisvQjNGYnhWVnVjaWp4bkJqSW52ZVcrU1hiSWV2RVBzc2pIZThuK3psaDNoMlpPWmRtWFIxdjV5YU10UXpNYjl1YkxQenZBWlBicHpuSi9jQ2M0aHQ4WC9IYTI1NkJIK1NIT0pvNVNOTTdLZmd3eVVIeGk2TDVGeDBqOWwxMG5FcmYxR1lPM3JmeEU1NTBzdFcrcFBFVlhmWTg2WCtNZkkzbEZwcDgrOWw0MHZONWxFVEJ6clcrejhMUnlYWE81Qkc5aUhYWXc1cTVpWDBNVDhCTWd5QlN2S3hEMXNSWXd2cjBlaUwxTFJTTTd1ZDI3Rlc4aVdacDRtakhtUGhlaFNuaVlVNlpuQXdEcG0waEFEYTNoK0UrVUlzMDFObENQMFB4Y2xPVU5ieE1DKzZtTGZkRzVGamo4RVhBVjNIcGVqR05mNmhyVXdMc2tmVTQvK0p5dHQ1VU5zWHVJYllLRmIwWVFzYVdacndtUGxWd1ZXeEg5Y2dSWjArQW8yNkwrdElNYXE0VGdNcTl1bTJKdWh2N2R3VG1tS1BkbkZXU1lObzdKZytkK0dGanhuKzlCZGw5V0FGOUlqNzFMNjZSS01TLzRoejFPNnhJenZUOEhheC9qVzhsSjNjS3dGYndLeVk4bTNvQ3ovcEcvUi9ncEhaUkhCSXFnL2ptOWR5dnBWTVJ2UFJUK2ZvdEFkN0lYdGhGWGtaMzUrWGZpblkxbEVFcy9ZR1QvaENndXEyUWt5cStVcytCUHlRN2ovTzR4dlh1RjY5ZXVDNnpYS2VqVEdCbnMwUDJiZ3NRcXZJT3Y4TXI1dTNncm41bW1OR05jNXhwbGNtTVh6Ky84dWpubzdZVTNsVVhlT1VvZk1ieGhoSFl5eU5kRFcraGxycGp4SFEyZllxR2h2MDRvRkdHdm5PR0tEVFhZN282Nk5kLzJPWWVmZmRURXAvaWc5OGpNdnhkelp0Rm5UZGZGUG1pempXdkNkMHNOV2ZtYjdYZ1V6a05GdFZTSWZMdnBCeE9zT3Q3TTZrY3hjeXRodU1GbmZiY2IydW1ZZ28vakZaNStnTjM2UmFBZmtBWFZRNXlFRzJoR1kyUW5PbDM1a0IzMFh2WUI4WCtES0I3cURTeHlkZ05GM2xwVDZERzNxTnRwWUhaUjZDMzJwVGt6cVUvU1ZPekdwd3o4WDk3MGRyM2xkbVFENXFONnRMdnlBY2VZdnZGVzBmdU1MKzI1d2FVRG04UjdYa2VqNkw3RGdhYzFmZFUvY3hHakpISHM0V2VNbVJsZWkxbmdMNTF4MGpLREFYL3B0b0Q3ZGI5M0lRck82akxad2ZMK2tETVU3azgwTXQ5MWYyY2hRckM2VFowTDhhNEt0Z1BiZW5YeWE5M28welVNMExxc2ZjUjd6blB0Y0ZtdlBPZjhHYThodG5POE1wZlY5T08rMlp2bTBtVlRhR0lkc1l6d1Mvclp3ckd5aWRYUi81WlBFTUM2UlI0ajlITE9qd2Y3MU00NzlsUVlqOUV1dmtSUGgyeDhvb1hOa3k1M1l0YXRZSmVDZHp0Rk9kM0hlSHVJUWN6ekNsNDZOdG1nYiswcUQ1OFJwM0hMdHNCcUlHbGJKRlUrejk3OUZPOEdKK0JYaURNVzYxZ0NVUVZxTVV0RFRTZUpyUGYzbmx4NWpHOEFEVHViOXIvcUpKR0pHV2YxdVdzTGgvajJUSkw0YXVzcnpCb284azBSOFRzZ21QWk1FWXZIbG5xQ1FYRWxjUDVma2EzMHV5YmNwejRDUWM3SC90TWdEWk5TTHRmT3dVZlB3WDVpSHhUelV2eG9QaTNaSXpjSjN3Y0xtYmJPd045cWQzQ3k2dmVINXduVmRBejdlZ0g0MThEK3ZPd3A0K251Yzk0Qm5SOXNvQXllWVpaa0dUSDJKRWZvaCtxaHpiOXcvbVM3WU9YYVB6N0d3emhmNjNQUzYvY1B6aGVwMWo0N09GM05Xc00yMjE3WDJjQ2RyZ0hYV0FmN3FEcWw0aFVYdm1KOWdiNEMveHhQY2Q5REZYNE14RnNlMDBScXhmUjJ2TzZIS0NaMTlZdEZGanVoOFZCenVRaXVQb1ZVTnIzK2lRblA2SnhxY3BuK2lZekZnR3pWV2FGVG9VSGlES0RZdVloTThyeVR3S055RVIzR2FXc1B4R2xDYkIzU1hBMmlzeG43aGZRM0dmZHhsUEthNkF5ck9vUEFtWjkyYkJWMzRBUk16aFJVK2VVZldxNXZGbXhIYngyeDRCN3ljV0wreTh6RUpUdzdaWFV3TysrZUx0anN6WEh6K3llUnNzSm9UZVh0bm81dkY0R2dDdDlBYmpxRVlEZkZPUnJ0c2QvWURkV01FVlhDUzBZVC9aa2lvM3U1b1NJVUZONzI3MjhOZnUzMHNyQW1vejJqWWh3UDI0YVFONzVmUlA4NFhUU2d0K25sQ3hRaU8zeDhjUXZHTEJmdllyTnlqbnhNNDNTOVdGNEVkamhEUlkyamN2aldFYlVQckZJbytGVU1MSmRDemp1Q3d2WjRGTjNQODFvSmZRd3QvSFV4UXNRNG1GQzdvNHhBQ25mQlBMREZSM1RzYjRMNW5SOWoreVJoUHg0NkU0cXkvaXljZm5MRVRLTjd4a1hHellIL09GeTBQQzVjS2xZcUdVTEJ5QVBzejlXbDZXTEFCNU5ocTBMa3NsWmNhTDNVczk0NTdzTjlrRjN2Y1pQUUdpak80RWRYcmRVOXhuMTRYdGE3WDNjV3QvVjM4MVQrNldRd0hFM2ZSZU5uMEppY2orakkrNUZ1NkoveUwxenREaUwyalk5YThvK00rbnRNYjdSOWZ3YlRPU0xGeHlOMWh3OTNoRVFwc2REaWtBbmI5YjBiUU5vWUVHeGh3Z2pCSEU0MmVCazdJelRFSUJhRVBNUDQwckhYWWRoZU5IUXFHUU9nUXBNUmE3QTNmTWhFUGQ5OHkvbnUxRDVjNUhaTzArWktBcmtJUHlJZmxKRFJ4T3ZPR1EwVG5pUFRpcUlkRi94QmwzeHNDRyt6QlNYdXZZUHZla0YzbThHZy8ySEIyTXNBbHhWVEVGeGhqcjVwU3A1cFNuekxqWFdxcTJtRFpUSFpaMitHLzE0Y014ZGQwYmM5THZaR0hqSTF0alBWZUlyU1NXMUN6YnlIL1dpcS8xaFlib2Vac05OZ0pyeG03bmxvSXNzVDF2UDArcy8zMyt3ZlFKZnV2WVk4VEN5bnl4RUlWOVA0UG41dUJOVm8vYlQ0QUFBQytiV3RDVTNpY1hVN0xEb0l3RU96TjMvQVRBSVBnRWNyRGhxMGFxQkc4Z2JFSlYwMmFtTTMrdXkwZ0IrY3lrNW1kemNncU5WalVmRVNmV3VBYVBlcG11b2xNWXhEdTZTaVVSajhLcU00YmpZNmI2MmdQMHRLMjlBS0NEZ3hDMGhsTXEzS3c4YlVHUjNDU2IyUWJCcXhuSC9aa0w3WmxQc2xtQ2puWUVzOWRrMWZPeUVFYUZMSmNqZlpjVEp0bStsdDRhZTFzejZPakUvMkRWSE1mTWZaSUNmdFJpV3pFU0IrQzJLZEZoOUhRLzNRZjdQYXJEdU9RS0ZPSlFWcndCYWVtWDFrZzdRUllBQUFLdFcxclFsVDZ6c3IrQUg5WHVnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZUp6dG5ZMlIyemdNUmxOSUdra2hLU1NOcEpBVWtrWlNTRzZRbTNmejdndEl5Vm12SGR0NE01N1Y2b2VrQ0JLaUFKRDYrWE1ZaG1FWWhtRVlobUVZaG1GNFNiNS8vLzdiNzhlUEgvOGR1eWRWam51WDRkbjU4T0hEYjcrdlg3LytxdmZhdm1mOVZ6bXFETVA3Z2J6UDR2YndsdjY1dTdhTzFXOG5mNjVIVncxN1BuNzgyTmJWU3Y3dS8yeC8rdlRwMTk5djM3NzkvUExseTMvNm92WVh0YS95S1Nvdnp1VVk1NUZPL1Z5dTJzK3gybS81azNhZFcybGFYOVd4WWM5S3pwMytMenI1Zi83OCtkYzI5VS8vTGJtVURKQTVNbUkvNTFUK3lCU1oxLzVzRi9ScnppVS90eFBhQXVVYjl1emtYekx5K0svbzVNOHg1RUovdFF5UmM3VVY5MW5reHpYZ1ByNDZoajRBeW1NOU1lelp5ZitzL2svNWQrOE02SG5rWG4rckxTRFgycllzL2N4WXlkOTZBT2o3bFo1MXc5QnpUZmtqMTVKVlhlcytTRi8zbU1CNStGbVN4M2E2SWR1SjlZemxYMjNFYVF6L1VuWGkvbk8wSDEzTldKeHRINmRmWi9zcFdWbmVLUS82YmVaZDEza3NsN0tzYmRvZ2VvWXh5ZXFhWVJpR1lSaUdZWGhGR01mZmswZXcxNmYvODI4djcxbnkzZm9lWE9wcnVqYjFybmlFeStqdGFnZlA1bWRJbmZDVzlyNjdsdmZ6bmZ6UDJQR1BmSVo1bnZkMXZzUXV2Wlg4LzRiKzh4WmMvdlN6WWMvRHBvNU5KdjEzNmR2REYrUnI2U09kejVENkpEL09YZmtEVGVkdnBJeGNqLzNJdml6YkwrM2YycVdYOHJjZjRsSGJRTXJmZmpZZmN6OHBmWW5PTExrZ0cyeSs3T2VjOUF2WVoxZ2dJK3gyQmVkUjU3UVBrL1pudHgzYURQZENucGtXOHU3czJabGV5dDkxOUtqamdhNy9BM1ZvdmVDK2JUK09mWHRkak5BdWZzaDkwSFpmOS85S08rdDQ1Mi9NWjByMjYvUlpYWkxlcyt0L1FMYnBBeTdzcXltWjRXOXhmME9XL0wrVFAzM2ZQa0RIKzFpZndNN2ZtUEluTGZ3QTVOUEoveWk5VjVFL3ovYjZtN0t4dkl2MHhkc1g1L3JlNlFiMGlkc0p1c1c2R0hiK3hwUy96K3ZrVDV6S21mUlMvcHpYK2NQK2R1eGJTejliUVgybFB5MzlkL2J0NWJYVWJkSFZrZjE5UEVmSVkrVkxoSlcvTVgySXZLZDE1ZkY0NWt4NjNxWWVIbFgrd3pBTXd6QU13MUJqVyt5Yi9Edyt2MmRjUGZhQUdXTy9IN1o5OGJOTnZvc0x2UlYvdy96RFoyZG4wK3I4NE5ZSjZBN0hoT2Zjd1BRdFFsN3I4MnRmWnovTThxQ3ZSaitjbzdPcklQK1YzZGQyTUh4ODJJN1FHOWgvUGNlblNMOVF4dTdiWitkejdMZmpMOGRvSDlpUjhVa054M1Q5M0g0WDEzdVI4dWY2Ymw2bmZZRzI3MXJtK0ErNmVVU2U2NWZ6eit5Mzh6WG9pT24vNTFqSmY2WC9WM2J3OUtXblR4MGJLZTBpKzdGak1NNGN5M1paNEpQWXhRc00vK2RhOHU5OGZ1QzVYeVV2endVc3p2Ui9jRnlBeThtNWVjNnc1MXJ5TDlESjZUc3ZlSVlYMXVIT2MvWDhYK2tHdHprLy94MnJVTXpjcnpYZHUxenRXNzNqZVh6ZTJRSVl3K2YxeEkwNG5kVFAzZmlmWndEays3L0x5ckZNZStRL0RNTXdETU13RE9jWVgrQnJNNzdBNTRZK3RKTGorQUtmRzl2Y3hoZjRldVFhcThuNEFsK0RuZnpIRi9qOFhGUCs0d3Q4UEs0cC8ySjhnWS9GeXVjM3ZzQmhHSVpoR0laaGVHNHV0WlYwNjRZY1lYOFNQMnpFOTE1RDQ1WGZFWFpycmF6WXZTT3U0UDNjZm1YN2tPNHAvN1F6UEROZTF3ZmJHN2E1d212d3JHUnMrV04vd1NhM2Frc3JtNXpsYjM4aVpmTDZQQzdqeXA1Z204SHFYaWd6ZXN6eXovYm9kUXFmd2FaczJ5czJ1L3JmZHJUdW16eVpodGNRdzYrSERiNXJOMTMvTDJ6VFl4dGJZUDFQMnZiNTBHNTl2ZGZuOHBxRXErOExrVWZLMyt1T3NRYWExOFI2ZEpBUnVGNTIzK1F5S1g4L08xZHR4bkwxTlozOEhXL2tZL1lmczUvK1NYcnNQL3ErbUkrUlQrNzNlbmozakh1NUp0akhJZnVGWmJsNkx2NnAvTHY5bmZ6VEY5VEZJdEd2MGUya2YvUU51ZDB4L0JUVzgrVEI4VWRuMS8vdGV5dlNqd08za24vWEhtejdkendCL1QxOVI5Mjk3TnBHeHFpUVh2b3BIL1dkZ2Jic2Vra2RjT1JIdjVYOEM2L2pTK3dBck5hY3pudk5lOW5KMzJYSTd3djdta2VWZjVFeE11bkgyNjJ2ejNHdnA1bHBkVzFtRjVlVFByOHV2OVgrM1gyc3JzM3I4cHl1ZnA1aDdEOE13ekFNd3pBTXNKcGJkYlMvbXl2d04vaFRkbkdzdysvczV0YXQ5bm5PaGVjS0hiMC8zb0tSZjQ5OUdMYWg1WndhV1BubmQrM0Z0cEhhZHN3LzMrV3czNm53OTBUdy80R1ArVnJiay9BdGNTK1dQOSt6OFQyLzZqd1J5OHgrdG95Ymh5UDkzOW5tcmYvWjVycyt0dFBaUm12L2pOc2ljZjc0ZXJBQmNxMi9VZWh2Q1RuR3hIS21MUGlJN3EybmJzMVpXenNjN2FkdjVqb0JLWDlBRDdndFlOZW5MZGczaS93b2U4NGJzZCt2bTFQUzdhZmQrcnRBcjhLMTVkLzFuMHZrN3prZjZPNzgxcUMveWJpVGZ6NFBPcDl1d1RQcEZlY0tYMXYvWHlwLzYyMTBzR050N01ORFB1UnhwUDlUL3JTTlRKUDRFTWNJUExJLzV4SThicUtQMGE5dUlmL0NQajMzNTkwODhydzJ4Mzg3K2VQSHEvUnovUGZvL3R4aEdJWmhHSVpoR0laNzRIakxqSmxjeFgvZWl0Mzc2bkFkZU9lMlB6RFhpN3dYSS84MW50L2crSHJteDlHUG1ZTmp2MTJtczdLaGVBNWUrdXBzaC9LOG9KVVAwTWNvRTlkbStiSC9PbjRmbjZiTDA5bWpYZ0Zzb0drUHhXN25OUm81cjdPcEY1NVh4ODkrdDF3N0ZOcy9kdjV1anBmdHUvYm5ralpsekhLbDM5SDl2L05WWWxOK2R2bW4vcU5ldWZkVkRFODNUeWpwZkRzcitWUFA2VWYwL0RSOFA5aG03UiswLzlEM3Rpby94M0tPbC9kWGZzOHl6Mi9GVHY2VzJaL0tmNlgvVS80NS85ZCtaSTVocStlWTUvTHUxb2ZjeWQ5dEZFaUxOdmJzYmNCWS8xdi8zVXIraGYyUWZzNXpMdU1TMmdONW5OSC9rRzJETk5tMlQ5enQ3eFY4UWg3L3JXVDhudkwzK0MvbitOa0htUDdCWWpYKzI4bS95SG4rM2ZqdlZlUS9ETU13RE1Nd0RNTXdETU13RE1Nd0RNTXdETU13dkM3RVVCYVhmZzhFSC80cTFzNHhRRWRjNHArLzVOeEx5dkRlRU45eVMxai9tTFZ6TW4vaXNTamZwZkxudW81SzYreTNGcm80bEk2TUp6N2lrbGhBNHBhOERzNVJyUHRSL1JwaW8rRGFjZlNPbmZKM2VJa0w3R0wzS1pPLzYrNjRYOHBMZkpXUGtYYk9GeURlM0RIbmp0Vk52RFlRYXdobG4yVXRNc2ViNy9vMStaODVsL01kUDB0ZWprVzZwSDZKT2ZMUHNWSHZzYTVacnRkR3VUaVc2MzhSRDA0LzVYNDdPajFLUEpmdjI5LytvUzNzZEFEeHVzU1NlVTVCM2h2SDZXZTcva1AramdsYzRmdE8vZUpZeWt2cWwzTXBKK2xlUy85blhIN2k1eko5bXpidGZkU3p2N2ZoN3ltNUh0eHVYVSs3KzNMZUhWNGJ6UGV6YW9kK2hpSzM3bnNmY09hNTR2a3lPWGVBTnBRYzFTL1FMaHlmZWkxMjdUcjdLLzNILzZQenNrMTczbGVYSHYyUCswcFp1YTlhOTYzSzZyV2lZQ1czakEzdDBxUnNPWStGdkJMbmxlMmV0cGtjMWEvUEkwL1BWWG9yNk1GVi96ODc3djBUK1hPTzU5eGttbjRlZHZIZ1RyZWJoMFNkNXpjcUxsbm5xeHNyZGpyVGVXVTc5UGc0eTMybWZ1bi8zWHlGdDdJcnc1SGVoVTcrT1grajROM0FmWlY3UXNhZUkzUUdyK21ZMTNqdWtPUFZyWE9QV01tL2E2K01VNndmVnUyYi9DL1Y1N3QxU2oxdjZneEgvYi93UEl2VnUwd24vNk95ODB5czhqb1A1RVJkc2piY2FxeG1uWm55WjB5WTZ3UjZuUyt2SzlpOVczdU9tZDhkdW5MdzNVUDBUYTVaMTNHbWZ1SG9XN3NjZTQ5NWk3eWpydkxOZVJvSll3WElla0cvcDk3MHUvU1IzanZUN25mdmhLdXhnTWM1bDZ3VGVzbHplbGUvbFB0SXJweno3UE5XaDJGNE0vOEFvSUw2SU9DL0phTUFBQTdYYld0Q1ZQck95djRBZjVLQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUI0bk8yZGpaRWNLUXlGSFlnVGNTQU94SWs0RUFmaVJCeklYdW5xUHRlN1owbEF6OC8rV0s5cWFtZTdhUkFTQ05DRG5wZVh3V0F3R0F3R2c4RmdNQmdNQm9QQjRELzgrdlhyNWVmUG4zOTg0anIzcXVmaWM2V3NBR1g0OThIL1VlbjVpdjR6ZlAvKy9lWFRwMDkvZk9JNjl6SjgrZkxsMzg4dXZuMzc5anZ2c0RkbEJQVDdSMGJVKzdTZWxaNVA5YjhDTnRIK3J2WmY5Vkg2ZHBXbWs5ZnQzL21kWFZUeXJPUUVYUnE5WHFYTHJtZnR2SHMrY0dybnEzcnI3Qi9sYTk5MXViUnZleDZhRDNrRnF2NnZlV1gxanZ1ZlAzLys5M3ZvTGRMOStQSGo5NzE0aHJxb0x3dEVPcjBlNlRORS9wNG04b2k4dVJkbHExNUlGOWYxZWVxZ2FTTXZUMGNkOUhyOGpjK3EvOGZmcjErLy9uN3VDanI3YzAxbDBmSWpUWlRQTTFtZkl6MzNNdnU3REZHZTJ3aWJ4OS9RbWFhSjc0eGJYSE05UlJxZDh6aTBmVVUrcEVjWHlLbnBWTzc0b0F2YXNzb2QxMVFmcW1jdG4vRjkxLzc2ekJXcy9IOVdadGIvNlgrZHZJSE0vdXB2cUZOV2Qrd2NlbFo5MFM3aWd5L1FQcWgrZ1R4V2NuYTZRRDdLSVQvM0ZWV2QvZm1Rejh2ZkdmL3ZNUmU0eGY3b1BQb2o5ZTdrcGY2Vi9YMGQ0c0MyMkQzK1Jsc2dmLzczZm9hczlGSGFpMEx6b1U2Wkx2QzNMaXZ0a2JsZVpYOWsxT2U5L0V4dksxdGN4UzMycHgxcnUrL2tEV1QyVjMrSDc4MzZLSDNkL1kvcU51NXgzZjBrdmlPelAzclFOcGJwUXRPcHpXa1h5Ty8yeHoveVRQemxHYzAzcmlIak0reFBYMUY5MEo4QmRmWHY2bThaM3h5YUhwbnBXL285bnFVUGRHdWx5SXY3K0UzQS81SEc3eUVuZlM4RDljYUhaTHJRY2pMNXlWL0hRL3FILysreXFQdzZsNm4wNmJvZERBYUR3V0F3R0F3Nk9QZVgzWC9OOG0vQlBiaUVLemd0OHpSOXhkdWV3bVBseEtWWXoyUnhnWHRpVmY3cTJSV2YxbkdZajhLcHpxN291T0p0N3lHcnhyYXJaeXJPcXZJZlZWeDZ0L3hiK2JSSFFlWFdQUk5lcHl0eWRmSDhlN1hyVEZibDFmeitDZWRWcFQ4cC8xWStyZEtUODRiT0tmb2VCZWQ0a0lWOG5BTlo2YXpTZ2NZVnUyY2VhWC8wNDV4Y3hYbHAzRjVqNWxYNjAvSnY0ZE1xUFJHakM4Q3p3dk1oODhyK3hPMVVGcFd6MDFtbEE3VS9jbWJ5Wi83L3loNmFFL3RYbkpkejFzcTlWaHpaYnZuVTlTcWZWdGtmN2xqNUkrVVVQZi9NUnNqYy9YK3FBOCtya24rWEsxdWhHcXZnUnZSK3hYa0ZTS3RjVEpkK3QveGIrYlRPVDlLSG80eG9EL1ExbnQyMXY0NFpudlpVQjZmMnZ4WHFiK0FhbEhldmZGTm1GNjc3M01IVG41Ui9LNS9XNlNtenQ4NDdHUmUwN014R0FlVVdzN1E3T25nTisrdll5Y2YzNGlrdmlFOVR6Z3Q1c3V0VitwUHliK0hUTXQ3T1pRUEtLVlpsTXlkM3JwVG5rV2RIWjVtT1BlOUsvcTVlZzhGZ01CZ01Cb1BCQ3NTK2lQbWNnblVnYTVoVkxLcExFM1BiSGY3bkh0aVJOWUJ1SGxubXJpejNCdWRpV0hkN0RIOEY0aCtzdjNmV0p0MzY5Wm43R1RPdVVkZVVnZmhPclBCUlpYYlhId21QWFFlb3I4YTN1dmF2WjJOSXIvckxudWNaN21tOW5mZUtlKzZYOU14QnBqT2U2ZlJKZi9NNGhzZG9zL0ozOHNwa3pOSjExM2ZMeVBTNGcxVWNTZmZrVitkeGxJUHdPSzN1MWRmblNhTStCNTBybDZQeFFPWHNsQTl3bWZRY1VjV2Y0ZlBJUjJQK1dwZXEvSjN5WE1hcXpPcjZqcnpFRzFYR0U2enMzNTIzQkYzTTB2a3YrRHJ0LytqS3p6Tms1enZKcXpwblFqbklVcDJOeVBUdmZFZFhmcFdYN3RkM0dhc3lxK3M3OG1aNlBFSEhqNUhmaW1mczdGL3BmK2RzRWZuNnA4c1hlZEQ5anMvUy9wN0Y0clB5UGErZHM0UlZtZFgxSFhrelBaNGdHLytWVy9RMlgrMzd1ZHIvTTExVi9WL0w3dXp2SFBTcS8ydmVYZit2NW45ZC85ZXlxektyNnp2eTNtci9nSTR0UG9iaG4zUjg2ZmdybDJrMS9xdmNiditBbnVHcnpwOW51bHJOV1h3ODlURk9lY1dzZkVVMy9tdjZxc3pxK282ODk3QS85YTdXLzNvdmE1dmMxejdrUEpyUC96Mk56cEY5VHAvTjVic1lnYzZGK1o0Qkdmdys1WFhsVjNtdFpLektySzZ2MG1SNkhBd0dnOEZnTUJnTUt1amNYRDlYT01CSG81TEwxeDhmQWMvaUFsbTcreDdNMVRxQy9kTFBSQlZucS9aanZtYzhpd3ZNOWpJcnNyaUE3dG5WL2Y4bjYxZTFGYkUydlo1eGJ0aWZlNTRIY3VoMTV5SjN1RHpTVkd2MHppNlpIdlJjb0hLa2xiNXU1UnRQNFB2djFUNVY3SStZRTM1amh5TlVQNlB4SzY3cm5ubjI3M3U4VWZuQ0xJOHNYcDF4UmgwdldNWDdkamk2THRhcFp4UGgxek45N2NpNDRnSlBVUGwvN0k4TWZtNGw0MmhWQjk1SE5BNm41L2dvWC91RmMyNThWMzFVWnlaNFhtUHI5Sk1zUnUzOWhiYkgrUld3dzlHdHVBN3lxL1MxSytPS0N6ekJ5djhqSzMwdjQxVjNPRUxPVW1oZno4cnY1TkY4dXpNeklROXRsbkpjTjFVNWpHM3EzeWg3eGRHZGNKMlp2blpsM09VQ2Q5RHBXL3VzK25pdjZ3NUhxTysxelBxL2p0OWQvOSt4UDJjNzlTem5idC9TdlFQYWIzYzR1bDJ1czlMWGxmNnZ6OTlpZi9mL3lPN2pQL3JIVDFicHZEMzV1RnJaWC9QT3h2OGQrNk1qdjNabC9EL2g2SGE1ems1ZlY4Yi9uYk9PRmFyMXYzTGVXVXlBNjlwdk80NFErYkNmempHelo3STVjRlplbFVlMWZqNlpXMS9oNkhhNFRrKzNVL2NkR1o4Vk14Z01Cb1BCWURBWXZIL0E1K2phNzFHNGtyZStXK01lNzc3WDJNQUpkbVYvVDF3VWExNDRBTmFVajZnRGRqd0I2MXBpZXJxdnN0c0hYQUdPNFJRYVQreHdwWTZ2QldJV3ZtNGtmaGJ3ZmF5K0RzZHY2SHFWTXhqeDBaZ05iVXZqQytpcjQzWlZ4czcrWFY2N2FiUk91Zy9lNWJoWEhVSDJ1eU8wOTNpTzY1U3I2UUtSNW1yZnluVEU5ZXdjQzNFTGpiTTZCNk8vejBVOTBBMTZKZGFGMzNINUtVTmo4ZFZaQWJWRnhkSHRwSEdadEs3S2VWSkgvUzJoSzNVTUtBOUxYQS83YUt4UTB4RW5wZHdxWHRpaHNyOWVyK3l2OFhIYVBXMFNQWGw4Uy9QeStIYkZxMlg4aWR0Yy9aaHl5SXFkTkFHMW44Y2ZQWTZiOFh0WDZyajYzVEhTKy9zRW5UczkzYmZsOG5nYzJ1c1RjUHM3YjBBKytwdVV5SmpwQmxSYzFJNzlLeDVEc1pNR1BTcnZtY21yZkppL1IvQktIVSs0UThybEExZGQrWllWZUk0eExyT1o3N1dnRHpsZlJaL1FzYW5pRGIzOVZ2MXh4LzRCOVgvSzR5bDIwaWpucU9PZ3lwRjl6K3kvVzBmbEJQSDVIWGVvbkovdXg3b0NIZHYwNDNzdDRvTnY5TDBjM0ZNZFpOZVZYOHVlNzg3WGc4cisrRExsMUIwN2FWUW1uM2NxMzg1MytvZTNtWk02QnRRR3VxZkh4MmZYcmJhVFUvNVBvZU1IYzh6czNtcVAzZXE2N3lWYWpWdCtYOHV2Wk9uV3JyZWs4Yklyblp6VzhmUzV6SGRkMmY4M0dBd0dnOEZnTVBpN29Pc1lYYy9jYXg3WjdVbU1kWkMrSzJXblRGMnJFdS9PMW9MdkFXOUJYby9uc080N1BVZFNvYk0vbkFEcGR1eXZzUmJXT3p6M0Z2UjVncmNnYnhhUEpFN3VNUnZudElnOU90K2xVTzVXNHhVQm5uV2ZvenkweHlBOEpxdjh2K296UzZ0NUUwT3B1Qmd2Ri9rMGxxTWNjc2NwYVQyMS9pb3ZmTTZPWHBCZHkxRzVUdENkTVhHT1I3a0lqYVYzUHNPNWUrV1Y0UXM4UnFyMTgvT056c0ZXL3A5eXNqSzlidG5lYkcvLzJJM1lwOGQ4c1cyMmI1dTJBaWZpY1dMc3JlMmkwNHZMN25LZFlHVi83T3BsWnJIL0ZZL29OZ293QjZoc2VwS2ZjMEhlWDdLOHF4aXc3Zy9TZURleDF1eTNveXJ1VlgyTjdxMVNyaVh6R1N1OXVMOURyaE9zL0wvYlgrY0p0OXFmZmtsYy9WSDIxMzZ4YTMvOEJubXB6eU5mdC85cWJ3ZCtSSGxWNVEvQXJsNnErcDVnTmYram5uQ011Z2ZsRnZ0cnVlNkhiN1UvT3FRYzFjdXUvY2xEeHc2MXVlNTMyY2tIZjY3OG44dnJQai9UUzNiUDVUcEJ0djd6ZlVVNnQ4ak9YNnR1SEN0NzBmNTEvOE05N0svenYrcmNjcUN6bS9keHpaTyt6TE5kUGo3L3kyVFJmUmdydmZqOHorVWFmRXk4aGZYaTRQVXc5dis3TWZ6K1lEQVlETzZGYlAyM2ltV0F0L1N1K1k1bk9vV3UxN3J4dG9xZG5tQlgxL2NzTTh0UDR6K3J2WkVCWFplK0JWdzUrMUNCK05mdWZzMWJzS05yVC84SSsxZjVhZXhIWXhWK3hpbmpDQjNFTFR5ZURuZW12Qzc5anpOeHpIMlZEK09lZnlkMnFuWHdkeVJXc1pLc2JocVQwWGJoOGlpeWNySzZ3dis0cmpXTzd6S3B2WWhUTzFlNGk4ci9hNHhmejB2Uno1VHpyVGhDTHdmZHdaMW8rZWhGejlXZ0g1Y25pem5xZHo5L1N6dlNlRHJ5ZUJ2d3VnVThsdXg4UUxZUDIyT3p4TSs5cmhXSHAvbFcrdUI1NHNZVkI3dGpmL2YvUU51V2psTWVkODA0UWdjY2xmSnhyc1B1LzEzN294YzlqK2t5Qi9Sc2owTFRaVFpXZldYMjk3bUlucTJyOGxMOUtMZlk2Y1BMNGQ0SlZ2N2ZaY3IyV2xRY29ldUVOTjM3SCs5aGYyU2lyV1V5Qjk2Uy9TdHU4Vm4yeitaLytFTDFsN3FQQXA5VWNZU3VVL3gvMS84RHUvNE8zNVRwUEp2RDcvaC9yVnNtenozOGYyYi9qbHQ4aHYvM0QvWDNjN0I2N2xEbktSbEg2T1hvMmNHcWZYdGExNFhPTTZ1em1XNDN4V3IrRjNEN1YvTy96bmRtNVhUMjc3aEZ2M2ZQK2Q5Yng3M1hPNFAzaGJIL1lHdy9HQXdHZzhGZ01CZ01Cb1BCWURBWURBYUR3V0R3OStFUmU5SForL1NSd1g0VC82ejJ2YlBIMHQ5cEVXQnZUUFo1aEQ1MWI2bkQzMmxjY1luc1MvTjhmZjhJN3dEU0QvczNuc2xUZG5VNXpVZjM3ZkdwN0srL1k4SytJL2JaNlQ2M0xNOXFiL0N0OG5kNzlkV0craDRRaDlZYjNiS0hUUHNFK1QycmJWZm82dkxJTW5WZnBQYU5yUDg0MksrVzVlbWZhbStlUDd2YUc3SnJmOTdMUlByNDM5K3hvZlovYmJ5Ry9mMTNCOVErOU1NTzdDT3VvSDJwMjhzVzEvVzNSVHFzN0UvYm9VODdQUCtzLzNPZC9IbVhtKzZoMUgyYkFkcWJ2bXVKZlg3NmpPNngxWHkxVFpLRzd5YzRHVU5VRi82dW9heHZLNmhiVjU3NmdzejJqTDM0aGxXWjVLbnY3MUdaOWYxeUovYjN2ZTVjNTMrdEorZVNkSnhVV2JqUGQvU0t6SG91UlBPbFBhamNWM3pUeVg1eFBWK2h2Z0I1cXI1TnU5eng1OW5aQWMzSDk1YXY1TWVQYS80QmRLZnZZbE05TXViN2ZLWFNzYzk1dEU3YVgzMVByKzVsMS9tVTVwRzkyNC8yNFAzd2RFemduRk0ybjNGZ1EvL3R6R29jWnYyME01WWp5K25jc0xNL2V0VXhDLy9wN1VqdHIvNWQ5NXFUNTRuOTlWd2k3VmZMek41ZDVmT3N5djc4VHp1K01pZEF2dXpqUUg1MFJ4dk8vRHE2cS95cTUzdmwzWFdCeXY3cU53RnRNWXNWNkpsUlhkOVFWNTBmVnVjYk12dFRybzdsZWwzUHBYcWYwbk1mbmYyUnlkdlhNOURGWFhibkZwSHVxdHpkZUhmU252VGRPdHFYUHRwNWlzRmc4S0h4RDRna2FxTHJkNzBXQUFBRWVXMXJRbFQ2enNyK0FIK2lOZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWVKenRtb2x0NnpBUUJWMUlHa2toS1NTTnBKQVVra1pTaUQ4MitHTThiRWpac1dUNG1nY01kSkRpc2N0RElyWGZLNldVVWtvcHBaUlNTdjNYOS9mMy91dnJhMHFGMzRPeUhwZE0reExwWDFOVm45MXVOK1h6ODNQLyt2cjZjMzdMZGFjZVZkWXRWYjUvZVhrNTJHUHI5Syt0OVAvNysvc3ZTbldzZWorai8ybjd6K0QvbVQ0K1BuN2FBSE1CYmFPdUs0eDJ3WFdGMVpINEZjNjlXWnAxekRpenRQcXpkVTRaMGora1YxQSt5akZLYzZTS1YybFcvK2Y4a2YxZmRVdndSUi8vaWMrNGlDOXluTXo1bzhLSVgrS2FaMHVWVjEzWHNaNlp6VVZaSHZKamJNcnpMRnVtbjFTY1dSdEl1MVMreitEL0RyYWIrZi90N2Uzd2pvaDllS2IzeDB3amZVR2JJTHpTNHB6MlIveWVWaDNMTjd5WGtWNzNmVDZUYWRLZXVySXQ1eHo0NlA2ZmFlYi83RHQ5bmt4SytMRHNXTzBteDFUS1VQY3ovVlRlSTYvMDM2Z2RaLyt1OEVvZkg5YjViQTRnSG1Yay9TZnZQWXJXK0QrRnpaaHY2ZWY1Ym9EdHNXSDI2K3liOUwxOE54aU5GZmsrbXYwL3g1RDBWWllseXp1cjd4S1BvcTM4ankveGJmYTFuazUvTCtqalNZNjEyZmRtODFIV2cveDZlOGp4UE5Oa3pPazI2V1NaYnZrNzZLL2F5ditsc2xHK0E1WnQrM3Q3OXpYdEpQM0Erd1JwMGFaNDVoVC9aenpHSlBJaXpWNitKVDNxL0srVVVrb3BwWjVUbDlybnpYVHZaUy81MXBUcklKZXdZWDBiemI1cit2ZlVYN1gyZWJVL3JEblVtc2xzelhxTjB2OTliU08vODBmZi9FdHJJYXliOVBOcktNczU2a2Y4NHpHN3Y1VGU2SHFXMXl5dFViOG03bXpOYVZibXY0cjlzdHo3STEvV1BQS2M5c0l6dWM2ZWJTVDNYamxuRFpkN09TYXdkN01tdk5zNnk1bnJpWFdQOVdiV212cTZVb1gzT3RhOVRDdHRWOGYwR1pCWFhxTWVwOFI2SmZkSmw3M3VwVEtmbys2WGJHK2ovczlhRzdabVA3NXJOUFpYdk56SExlZ2pyUE90Q1Q5V0wreVhZMTcvdHlIM0lSQjdHWFhNdGNxMFZhYlo4eHJadC84VFFaelIvWkgvUjJVK1IzMytQOFgvR1gvMi9wQjI0cHk5R1k3NE0vL0pXQk4rYXIzNm5KZDdBdmg2VktmMFFiZFBYcy95eXJEUlBoUDNzejl6blhtUHlueXV0dkIvMzBjcG4xQ21QQzh4MWpGK01wYlJudGVHbjFJdndoZzMrSThBRzlPK0VITnQ5MzhmYzNLUDhwai8rWDhpOHlqMSs5My9zektmcTJQK3o3a2RPL1Ira25VdDlmRXBmWU8vaU1zOHRsWDRNYnRuR0xiay9Ucm5ZY1p3NG1MbnREVjduZmd6OXlpUGxZTi9hL0VoYlNkdHlwN1p5UCtqTXAvekxzaCtXOVlwZlVmZnpycGlqOUZZUmR4TXIrZlgvZG43d1pwd3dwYnFsV0hVZzdtayt6Zm44dEUzR00vMzUwWjU5VERhUU4rTFRCc1RQL09lbGJuM3RVdG9hYjFBUGI3MHYxSktLYVdVVWtvcHBaUlNTbDFOT3hFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJHUk8rUWZoNWVPYXRrN2pwd0FBQUZUYld0Q1ZQck95djRBZjZXRkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUI0bk8zVzRXbURZQlNHVVFkeEVRZHhFQmR4RUFkeEVRZXh2SUVMdDZZaC80b0o1NEZEbTAvNzYwMXN6bE9TSkVtU0pFbVNKRW1TSkVtU0pFbVNKRWtmMFhFYzU3N3ZUK2M1eTdWMzk3KzZUL2R2WGRkekhNZHptcWJIeit3WS9TejMxTDExRnN1eVBGN0hNQXgvdm9kMDc3SmpsWDJ6WVhhdHpmczl0WC9WTjcvK2plNWZ0dXQ3Vmpucm4rVjZuWDM3eHRtL3VsN1QvY3R6dnU5Zi85Zm5lWDdhUDlmcy8zMWwyM3J1MSsvYnR2MzZ6UGZudi8yL3Ivb2UxL2VyOTBDdTFYZjduRVhWbngzWGE1SWtTWklrU1pJa1NmcjNCZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQStFQS9Ddm1zdUZMYUttWUFBQUVGYld0Q1ZQck95djRBZjdHa0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUI0bk8zWDBRcUNRQkFGVU11Uy92OXZJMkpxUVVrR1g0SnNsam9YRGpqcnk0V2RCeDBpWWtoaTQ0ei9zRTUxRitwMm9Mb0QzM05JYzh4bll3ZmQyTjh0elMzcm5iaDIwSkY5dkpQcXJuemVtTzcyUE0vVDB5VmVPM0xxb0N2N09LYm41YjZuamZmOHZ1aWdBelhhdDJETHZZTXUxR2pKLzRRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEwRHdBbldob051d1pVQm9BQUNvWGJXdENWUHJPeXY0QWY5VHdBQUFBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCNG5PMTlLN2pzS05iMmtrZ3NFb25FSXBGSUpCWVppY1FpSTVGWUpCSVppWTJNakl5TkxKbC9VZnVjN3A2ZTZmblUvOVNJV25QcFBsVjcxd213THUrN0xsVG01MzAybmdEYXM1RXR4dGRHWUlland3SndYY1VGYXdEZmhYN0Q4MklkNElFS0VBRzJDaHZRbmlUQmQ5MlQyYkdFd2ZITmZIUDg4VU52QUpXYjNVRXIxWEV6dHI1c1R4VVU0SGlkUU9FbzZURHdZYm12S3ovM0NSS2czRlFzcEYrTkE2ODNnYmh6WEozYjNzK1lYa0pzTVNuOFF4SHpsZElQRHl2VWE5c283a1o1VGlJNDlaWmtVRVBNWHprV3lOSStUd1l3Sm15ck5MaVBTVzByL3U3cmJwQjM3dHRIRjQ5eXhiRDRqWm5nQVR4UnFvTnhDUS9SRkFrcnI1ZXloVWlUZlF6Nm9hN0JaYUczSFg5eGo3bXVmbjZDV3lrdW96VmpnNGsyTE5iNnVNWEF3WUp0RHA0ZEJIVlBvUGp2cURsd1hQalQvVHd2R3c4dlA3ejh0N2hPeERvU25wTk53cHNGY0NtMkZTQVY5c1NjTFJ6VkhqSnd3Q2NQaDNWTGNXQUN2clROWDdmZzJ1YkFIOVV2dUpuN052dzBIVHgrQUlVTHRCNDNOMVBxRzRISDRVN2QxVUpSMStIVzdmUHJwNmlVZFUzZzkzdVBqdnMxeUNVdVFxWk95WW9MR0dzNkdBbHJtMDdBdkcyQk9kZ1AvT2NDS3FkMWdWWEZmREtvaHRrbE85SHZFWUdicXgyNFhVYmhZZGVTS2M4THFsSkZKVWhYWXpCTlp3UEdQcnY0S1M5MGFXaVRacGoxMVFuUnVGaUdQc3JLSEtnU3kwWEx4ZkxqS1JXVzFEd1BMT2syOW5NMHhlSEFmOVkxbTNyZ1l2QS9wS0pLSC9EZzlsd2JQQmxQSEUwbFR5TW9OK1EyNERxbkZqMEpuYXJxL2RPTEIxbEJvL2ZDZzBnTnRxc0lrRXlnY3phYnpnTk5nMWpxeVBsQ1kxaWRKc2VZU3IwVGRBUmx1eTdLOWhMOHFNOEpNeTRZYW1Vb2xNOC8xRHcvblMweDZTUnduVThCUFFEOWYzZ1VHaEtNQy8vYS9Ra2ZYVHhLZE1LaHQxWm5tNXBnZkVrc1BPUzRsWDNnUnZNT1VXcGQwRzhsVzFCaDBmMEJpRGI5R0ZnU1diL05QT0VYcWo4UXFGbHZhQUNBUnA0WC9EQTJOK0dCclI4MlNrYnhsMGRiOElVRmQzWXBtczgzUHl3YzVFQjNqZ3FOQm01TjRNZW0zUk50ekFYS2F6NC85ZWpKVE5wcTd3K3pGVDJBM1EvYUpYZURXb2hwZWtaVWVBYUJFUFNFSkJHQnIydFE5amliUmJlUWJmTDRDV3BCVDVueDFOZjYzb0Nybmh3K2Z2NlNodVhjNE5pR2tib0c2VUk1K3JYaUNZWUwxcVFDT0ZXdHEwc2NEa1BEZHJScVl1c1BUQXZvNWVkRHZBTHZnSG12QmFFTDV4Nk5PNlJ0RjJvTFVDN1VCU0NYK09QdlJHdnhGY0xxZC82aFZmOUZ3c0tBTS9UY3FNR1VrWldTT0hqclZjQ0ZTc3I4dVhNU2o2TVNpWjVjaExNSUR1akpuNDRyT3daOUJ3UnpyUmhHRU9NZFVTZ2VTMG10N3ZlbVdOMmJoTWFvQ3JreEM4djYvaXRMai9xbzZHUllqQjlkTzByRW80N3ZZd2lJZUNTZHAwVFIxN2ZlRHhDZW9oTllZR25YSGlEc3FPdlJFRUJzekkvN2NtNndiU1NCcU1aZTF6bk9oTzk2UWtmUG5xQlJQUlhHYm1ZUTVHdUVST3IyckdVN0NqeW8vZmdXWWRQOFBpeTE0cUtlbTJyRzcydUhNRUtmVzNBbzllSWt2eDBBdW9mSG9KSGI5c3h3L1RRTWJzc1p5M0ZnbEZqR2sva0orbmJQdGZib0dOa3VlUFZJYm96N2pXOXluMHErZ004MXJQSEI0UDlJNEJ4MXFZbng2dXVIbDQ4TFp1Q25GZ3p0MTlkaDdCaVZob2xiV2hjWk9qNDh4MDFBU3FNNTh3TDlBcXppSk5OeFhSVUJvUUI5UFVpRkZneHJCTkQrTThiS0dMcmpyL25wc3JwMHYxR1RQWCtDQVN3Sk44YkhCclhmdS8zczZ1ZHpEY1Era09PaU0vaTI3OTdjTmx1bTBXZVZxSmNNVWt5TjJJMnFxUGtSclQ4WHR5Z01qU1ozM1M0M1F5TitRbnNJZ2wydjB3clg0cGRWMUZjQ3NndzNtZEl4ZjJwcmZvSmxsR05IdTc5eUZzdkgrUi9RNDBUWUxoc1NQZlRMUzdUYzd1c0l4VURkVjkzSHNVMFNBL3N3NVlDUUErUDc3ZWprdkRET1hBYmE4bmgva1BPdWRzOXgzMDVhb2dzK0l3VEdEWU9Fak9CQ1JaY0ptYVVwbFlLNkpubllRWDEwNVQ5Qysrb0xXZXh0S01KWFNYRGhnY214OG9EeEM3aDh2VEtYSytqOTRGd3l0L1lnN2Q0cGtHemNPTGZXZEd3WUJSekJRRm91UXIyQW8rOFlCSlZsOFlXTGpZTlNVOS8wZ2NhRGJUNWttRW1CNmY1cy92VHlKMDROWVlaa3hLSkhNN2tsallhOEk2c3BQK2k4enlRRkFYTWZITjhKQTE4MVBST3k3VmtjeDBKU0l5MXJJbkZIVUMzUVpSTCtJdWRtcmNFSXd1RWwxcWt0ejVNekhqZnEwT1RNeURqVVRUbVpHWUhQaWhtS0xCdXM2T1JmS200N1NJTEIrc1pGRmtMR3NZWWQxbU5zdjM3NHp1Nng1dzNMblZ1RGppOXpZWjludUVrVkYwVUlNdVVzZWdQU01kb1hkSUViT3BKclRNYlQ1ODdCQnFITjdSekltUWdQNWFPTFJ5bm1ITlI3RWpmS2IvREx4VzVrcVBpazZMZnc0WlY3UUhMMVVKZytFTVpyd25lTWE5ZTl2cUVMSTdnUGExZ1habm1SRXRaRngvZWF5RUdwelVMQ09jSjFUUkN3Mjk0MFVEMjVYd1RUYkpLUXhtZFhqNjdZaDkxT2xSVFZJNVpmYnBtSFIrK2tjQU53Q3l4YWhSNFMvMVYxbXpiSWsvZkRWcWFiMDdDNDVUQkZTNUUzS255My9SaGRyM3VkL0RjMVJsenAxTGE3K25wUjJCV2dlaUhoZ3NjSENYVVZTSUErN3YvenBuVndtckxhOXZWVTJhTzdiek5RS1lqNHRGdmdYdFUyNDliYTgrTmdJQzJhWkNZUzRTbzl0aVhFd01wbVdaSTh2MTZTZzlpM1lGODJuYWpmeUh4b0hiak02d1V6MktFK2dJUXlJQmxRdWhENmNmL1hOd2NWejQ2ekMvM1ZEdndzVG5PK2FydEdtVDFDdFlyOFlBdW83WUd6bFVPbjh2WUVhWTVWa2lrQlV1bVFqMEJNeGQ4RzBxNkVpLytKSFFLM3g2ZHRZand5RTBaSWsxSnhzTEljdzdsR3ZSN2w0L2ozV0J5NmFZM2tqckwxVDIyc1IwSDkzUkMzOU5KOU9yWXFHcjdMRTNVTXhHWUYyRG9kUU1xclVraVpMZ1B5MmUrS3NEYkM4Ynl4d3phT2FwRGxBYWRqNWtkUGNFOHREUkQ2clRZZFNCZlMvZnJjeW45TG5jbEs1dHRWd003c0ZqcTZTc2VEdnAySy9jbDJQR2Q2anVPTTZBVHhJUEgvQ0RGR0tuRnRtUzA3a3cxSjhvMFVBRGNOUHdQZUh1SlA3Q2haY2czWlpHWEhDcy9KUmdiS0Z3M2xtUW5TK3RHbC81Wnl4ZGhJbGhBZnk4Rmg3TWZIMjZIb3BUNFl4aEFBTEtHVnVLOHovNHNiUk94YUNJdTVSZkhLeHE0QjBuRng4T3pZTjNBYmdUKzRnOGlNM2t1c0JwRDN4U1VPeUtja2dUc1A0cncvSHYxUnJISVlqVGF6Y0ZBRE4yQzhZWm1HdU9sZVBZUUhoUDNKVXVlMlh4ZUc5Wm16S1cyamhNYyt3RVF6SXg3Q293eThYeWNONTBuK3doM0pyWFVQell0RHdjb3RVbzF1RUdYanI0U3pzcy96SDNOemxjRHVUTS9NUE1pdEx4TzE0QnRTS1h4TWRGOHh1K255d1R4MTlYMUZDa1RJZW16QzhTUVVTTk1SRGl2dlRnZ2RYeFV5N0w5ekIyTUIyNjh0OG5KSWtWWXVvQm16cFlqMEd2L08xTmFQSjRDUjc0eVpoU2g5QytCdkNiTHRPbDNvcktmYk5xZEdhR3gzc1lhOFFJelNlc1o3TnJwUVg1ay9EQUcyRFVYckc5TGRHTkJvczZMMjM3bWpnOE4yb3VaTHF3d3YrMExwSWszUy9ySm9POERYOGZINkYrY0UwTEdoYjcvcktXZFNBbTBnd3lTc05iOHNJSlJGZzNqOEtEK3FPaE8yWjhCVjY3V0ZGMGE4Tko2WjZzQWdDZWpnRmdqenRkKzV3MFUwaklFR0laYXpjVDhRYk9TWUI1RDFRYTcxRG9pZkZsbDJ0TzV6T20xU0hxb29Sd2Yvc0ZyZmVkcEhjWVFyZHpBUktVNTYrL2JuNFhXSVdmUXR4U2FWcDQvb3dDS2lXUkFKUFNkSmh2M09IWU00OExmb0dIdTdtVzJJRzB3dmZvUzVqeG1Ed2lIK2o4ZjcveTdqUXUrdTROalJ6RUU5cUo3NDU3eXhXWm5MREh4NkJQVHdPbWFKR3lQQ3JIOXZhTGt5V0dxQitNZThTWHd4MXRocE14TkJLSHo1cDNZUVpqSEZBeE9sMWcxT1M0Q0lta3pBemFzYTJpNmY2OVByUDlKeTJWM0RjVUpUb0Y0amJ4YnkvaTVzZ0NVRWVnTGk0b0dMRGEvRTkxblM0MzVwaU9TVWcxQ3VBSWh4RUI3cmRTWTNLSVFGSFBsVk8wSUNvWkpzSUhwRzYzalhqZ2F6Z2FLTFRadjN5L0lMTEh4UVpneFc5ZGFnOW11Q2tTZWJUcnIwWXN5VUw2RWtSVTZWdWFvS1NBTkIxMm5lKzFFTFBZSjFMUjh2Vk9aUlFVUTVrNk9vMG1mVjdGZnQ4T0FsV1ZydnJseUFuOXBoMUtXazR6V1FUNjFxY3FnUHk5SHhxZmgxSWpuajFrTFllbkNEekt6V2RteWxyV3c5QzRNUWp4NFZ5YmhaN09qSGVaOFYzTDQxZEFQOWhhYlNFUXZYYlVXRGdYcWVLL3lxSGU5Tkc3RytpejZvVEw5cnh6MkxjbklNTkkwRCtlenFwL3dVTDJmOUQ1cEZ3SElTL3NCK1VJWVlwbTVDMzF1Z3JseG5XeFY3b2F1SGttY2FvK05aMndOMlVwOVhKeHVHaHdwN1JtV3diVEh2M2dHTWV3c0MzWGUrQndOTS85VTdrQjAzcUNZa2tlZitlUHBqMnZqRDBEQ2ZDNEdPbm03ZDlvbno3U1lSK3RwMXhVQTFjMFBvRkVQVnNXMmM4Ujg0U0JpRDQyVm04ZSs1eG5RTWtzNDhVRXBhLy9TT3NFQ0RqKytRK2NqYy8rZ2RvYnNXTkoxTGZLNlBJMkFPRjMwWFlaOXJFVkpPNHYrZ0o1ZCtTVlVod212eVZ3R0FnVXlNbTFyWDlVU1lCRTVMbGNHbEJmZk1vVlhqQmd5am5NL0U5LzNkTzdTYVo4d1M3MHgrWVNoZDVhL2VJVUpxZHVnbzBXYnl4L1VmbzcrNTlGeTM4MExsQlgyU1FYVkk5MUtocEtBUkJzNENBTlZuNi9lWTdocE5IKzRMcUR3M2h3eFBpN2M2eU8zS1cvZHROblh0ZHZhTzNjYzdNNDdtdFQzSS9PNTNIZW1uZDR4dUh1ajdyLy80K28rWEJLU2tNM0JML3M1Tm9xUzJwWU9vcTN2ekxnQjBDNjRpb1FQemJuU2FHajhUNE91TlpHbnhzR0xNUXphejh6Mnd5a1VKc3htZ0hxMGUxUTZGTElDbEc5R3VUOGdLc3B6MU1MbG8vbmFIeTBjWGo1STdIajI2Ny9WTlZpV2xFL2IzbThxcWlITDhwd0RBNU1JMG5VZ1lEUjA0Y3VUWjFBWkw3STJBeVhpNjdVRWM5RHJLTWczYUVXWEFMcW1zQWRmZG56Qk9QR2VkNitTRCtKa25pS2JLN3MwMm8rbUhKY0hEUjh3eDF0YTNiWDN1b1Y1cXJtN3QwcjNUVS8wd0RFTjZBWXZIN1V4WWhqUDluTWhWZy9hRVRUdGVCZUwrWGhWK1dHT3d2WTZBQVdFQkd1aDJBMGRJQlhVaTRlY05NWXJ6YTA3WFMvMVVnajhzaU5ubmNvTTk3dHlPaGxoOU5rTkNFRmMyMjdzQWtFYmZGNmhjN2pPV2JYczBJVjA1LytHN3JkZmNTalJ1NlJUWUV6VkswM09FZDRMY1hneXFSSi8zYUtnUGdvMzBqSHIyZ3J1Mm85LzlPUCtWNEJ4UTY1UmRsM3FkRi9EenVqRzJHM2lsNG40WEFQeTFTamdqWTc0bGdjKytFNjYzWTBaN1pQT1hHOTNmQXgyNnZXOGQ5NGhBZDhVd2lWRnpVSy9qdVJLYVh4WE1nYzRnUHdnemVVSXl4SkI3Zkw3L0JUV3pwN2lIZmNzK2VIdHhLR0cvc3R2UmdtR2hQd1dBanREK1VaTWw4cWZNYk1HczlqVDBncVRQZ25odFYwblhob0JIN2ErbVErZ2EwdlRzTVJMcUVwSUkyeEpyMTFIVy9Zd3phVXBvRzl3c3gvK0ErdVA2aVJwTHVwcFNpUGZGeFBDaUZjVEN5UGJJVHdGZytzam5oY3F5dTRhUFBDSHpqVnNRbnJoT2Q5bjB0bUhFM1BpMm9scUFqc0I0aVZ4U2RIYWFBZEplV2tydDNXRmNLQUhLSHNoYW1WQkZsby9yLys0Z01ZcWEzcU1Gb1dpTzRQZWQ3SGtHTVBkVEFKQk1JY2g1RHMxUkExQVB6SjRRN1NOU1FOT3hKalN2WVo4NUVBSW5Nc2tCbnNTTDRMWkpGYXhGeHpoWXlmaEpjdFhFQ2pTb0U1WXFlWjc5WWgvUGY0dkx2Tk1hTHlPSkRYaXczZEhjTzhZeVVuNFhBS3FMQWZYaUdkYmhUemZQN2FKbzc1UFZtRldPODE0SXAyc0U5QTI3bXFYanB5amt2cUFzcFlpZk1oaUgvTmNwejBNSDl6b28yWkE3bHh4Uk16NjkvalRoS2ZvbGlQblVZamJ1RjBJNEFmMWNvQlFmc3dCd3RmV2F5ZXlyWlR6cXV1MVQ2YmtRa0lMWTdOb3IwMnB6OE1Sd2pJUzRDTjhsUENZWmRIc3pQNHlqQ0t4OFRnWXBjRGNSWXBuVUFuL3U0K2svMUdHa2FlUkVFN1ZYYkFoL2toWUJvYjN3aUZpWG53TEFXdG8rTzNYNG5TbWthMjhES1NOWDRjak5VNXB1cm1OU3ZYajBsSHRid0hOWWRqR2tyRGsxaVJGZnJCcXNNRXZwR1BYQkdJb1J0dFdaTjlvK25nQlVjS0UxaDR1NDJiU2tiQm96cFZQOEl0aWQ2a3p1dlloWWtPcUY1NTJyVytFMWJmYWgrQTRNdXI5UkFEMGlkWDMya2Nad3o1Z3FlSTFpOXRXSnV1N2psK01qYVUwcnMvbEF1MW9oa0FuK3Q4K3VmbXJnMGxtVTNhd1ZHSkdodE5Ja0hqODFpcFdnYlFaMDZuV0lYU0NISlk1QWp2ZmRoVG9PTkdnNDI0TzRtS0c3ZEhYc0Z6UEFPL29LenBGUHBERkJMM0tMdndTK21RVUtHOFlSejFJcU5jREgrLy9MN0duY0ptb2pCRmtlTWpxNkpGb0lLR0d0Wk9aQTN6NG5lZ3FlRkFhRTEwd1FySyt6ck5zQ0YrdUh0cW05TmxxUTBjQTRmR0FieGpiZElnTGxqRmdCTWQ5ZmdBOTZCU2NRRGU1R0xhbjN1OUdQK3ordytsaGVBdklMUVRvL01RaWlCenZZekdndlN4aWVWa0luOVFjTS9IWlBiaElmR2M4RVJsUHlncnpKRFBVR3hxVHFzTy9NM2xGN1BXdG9ONW5BRjAzbHI4QjNXRkg1Y1B4Y2R1L05rODVQTC8rMkxzWDIydkc1Q3ZTTlRqTzN6VWhMVXZESmJJcExsaUtiY1IwUDhwUWVpVjVYM0FTemFJRzhNWGQwK1I3am9BdG9RQWNDcDZ6Uk0vQmxFaDgyL2s1OGxwSVh0c0dwaTBrN2VlNlA4ejhmQXpoMFd3YURXK2toa1F2NnBiVWtMQi9Pcmt5dHQyV1dJbzhGZXFibEpVbmVoa0hxYTl6TUZ4RlM1R3doTTNYNk9PRGFnWGtUMytzL0UxK2VWOFhwdlNtRFFXSkQwdlhwOVUvNUlYSjZ2NFJob3FRMVU3SE5idGFYbzdPSUVTUENGRHo5TkRONWo5dzJJcW9Wb05KUy9lclI5TitEUTRHQ1VRVGx2eVkrdUZ1UHZDTUtRZ0JJemNlOTMzdDJvV1hnQmRkclQ4UFhWTWxzY1NpUFZVZ0Q4TTIxYUk4UERMdmRsRGdRdWl4QWRMQzE5c2pEMVlKTTIzdHdDTFFabGZ3ZmlTL1lLc3RNSW8wVVpGOTVEQi92ZjU5ckxEVHVDMGZNbHYzUllrUStMTUhQTG05ckVpTDlSRHVHZkRlV1d5NFZITFZFMWtQdEYwR2NueEhrSTRscHgrYnBiUC84cjRuUG42RkoxcXpRRnZJSTR2UGVIMFMvY2IxZEs5NFlaVVVKbGZLV1g2c3RMYUNaZzZZTDJyQmpxUnlicytqbmdGNzR2NlZNOUJLWWNiRXhmaEhyRUVPUTMwT1QvNVQ0bmtPVE9hR09DR2RPalJIazgvMy8reHFUOVVqSUJEaENGbXRvNnVlclNzR09JMXFrTFdENlZvRnZwNWxOeTJFZ09YSVlFUmNrQUJQdTFib1VBMW90dkdqemEyanlId29mUDBPVEpMY0orMTZXOFhURWovZS9PV1Fva1RnV1VOMkZYZHEybXFQWGQxc1NvZ0YzYkJqcHp6dTFqR1NWMUc2WDE0YjBiODVMcStpTlpQa01TQnFtM29Rb1JQcXZoYStmb1VsdS9Fbk1JRTN2NC94ZktBRDVnYndPR2ZBYW5KSVk3dkExS1RZU1NDLzI5Y3haelRHSHVDQ3hVVkxtakdzZkxHN0wxdnRZU0wydEJzcUo4QTZSZzhyTFB4USsveGlhWkdhVEJBSG5KamF6Zi96OHZWNUZmeFZLbG0yTEVoU3E2WFRleUh1bFE1ZTFtNzNNUTZ3Q1kyQzk3dGt3eW9WMkhqVWR3OEo0UE9TRDgxdzVXUUszM2Y5ajRmdlgwT1I5TWRvd05pTFh0Q0hXai9PZjZ6bnFaR3c2SjVZTSt6RklJc0U4U0U2MkFpWmRDOFExei9hUE5yWTV4eUVXU2UweE95S1F5Ujc0N2xsNFFjL1hTeTJYZWZWL2JYeG9meCthREdRY0RhSWlYZkRQMS8vYjY3a0lWYmt1WVd1cloySmlkekkwckkybS9aaUR3R290dVNCUkRxck13Z0JQWkpZdDFnVFd3VHBPaWhRSlpFZW5sOHVsVGRuK3BmSGwrUGVoU1FsVytFYzlzMWY0ZnlFQmNqYnBtM2ZSU0RQenNSaTdGdnZTY0NMeEhkZmJpeGNNQWJtaGdxTWpaellxZUtVNUgvQ3VoTzlyZTBpUXJqeFhrS2oyQ08zY1FoWlIzNDFQNTc4UFRWWUVFZm1GZTB0bzlaOWVQTXhHZnhXSlZ3MGRQT1MxVE1DR3gvMDZkeVI4c0c5WmdKd3RVVjA4RThxcnpkb2g0U0hsbnJuNzhFYlBIbkZBRUgwelpxRlMrQ1VkdTVpTmJ4WEV2dzlOanFQUUJuS3ZSUFh5OGY0UEs4dE9mT3haelZuOG1ZNDIvV29ibDNJRE1kRXhGV3MwK1BwcEoxakpHZnhtZzF3NjNHV3UzcnozSU54K3VWQTVtdVhTTWUzZmpZK3pDdllmaGlZM2pqaFJvV0Z3WmZYSDhlK0c2UGFJTlNBNWIzT21UZHA1bHduMVN3UXQwZHQxaXFSMUZqbm0zQWRDWkhnM1NJZFdtYjdXMkNhbVh3K29yNTBoUS9LamJBRVlaMHdPSVA4d05JbXhmN2Q1VS9jQ3BYMTgvbkhaczk1cjBQRHNBZG42ekdLdWN6b0Jacm9uTDlEOGdzQU9IZU84czBBaC9sMGx1WVBjZWlQWFBjUktwSFBIWURPWGYxY2daWG84alZCSlIvSVBRNU9DcnZzd3FFRG9OTzNIKzc4TEE5WGVIdnMxdUFJMVo3V1ZlUDlqanUxVXYwZjAzUHRWR2ZRanIxTFVHME5EeGo5MFpIakhIUFNHK0V4Z2pNYUJPS2YxNitsa1ozTlU0ajhQVFRaOUxBd0NYNTJha3lBZmxseUNhOW1zQk43NG5teDB6b1JzcjNPZ2l6cHRJakxYNHpXM1lnRmxYRjBJWFBJTXk1dmM1SHQ0WWQ5TWI3bUxVZE4vYkZCM1N6ZU43T2svRDAzdXBZa0FYbUVzMVI5Zi9teGlLTlRBTVljLzhiL3Jnd2J0OHc3UE01TWRoTjJNWGplaTIvWTY4QkNGeTk2RHc4TmV1blZ6ck0rYWNVSzVPQ3JCamVob2dFZDRqQit3V2Y0UFE1TnROUUtEVFg3dGUxTWZaOEE1YnVpUlVsaVdIVU45Vy9tcml4ZWZhQWRQem5SRG01Y3hJMWN6NkFjcW12czZPNzBtWHhpSFJ4VGIyNEswSnB4SWZJbmQwT0RCNkRXQ1RKR0ovencweVlQdjhseGlCYWI3eC91L2hoR1hSRDlkWmsxN1ZqWXFnbFBrUEllYjJkdGxtWTB3TEtBaHE5Z05RYlRMMkw2ODUvYUY1S0gyakV1NENKOXRwSnh0bmNIRzM0M0Rjb3VkdlUvM2IwT1RyYVNhL0x3eWlRb0lIL2QvMXVFamc4TndKeVMwUnBETHYwQWgwbnN3bmhkV2hCR21XVmVwMk1KdlphMHNxWW9ucW90SUo3cS85MkRuY3YweHp1TGE2QldESTVyTnZ3OU5VbE9XR3QwUUUxbTZqOTkva2xwQ0hkQm94SHlXZUxLM1NQTkFEVGJiV1hwcFZ4OXNoSGRSRThFTUVSemhmWUo1Y1E4WGMrQ3Q3TE1oWUt1ekgzNTVJNkl0VHhqZEM5V1JxdmEzb1VtaVdKWDNrRzNXeXhFVWY3eitCL0dvekhuUDhZSFI5Wjk4Ny93cU1HOUFvb0ViWGR1VGlWNG9ZRkFQRWNweDdhdkNnM2EycldWbXR3SHB6M2J1SjVwUFFUMUNnUHNlaklQZGduRGs3ME9UU2lNS3ZLZ1FETmFlbm8rbi8zR1Y1ald4RFZMUncrNFh1b0RyZ1hkV0p1MkZLUXpVcVlQWmJrQndiKytONTdKZDNjeDdNNngydGpvTCtnNFl4L3ExaHQ3RFdaSG96V1lxWVZmdjBsK0hKaWNLU21zd2JxV0pvcTlFdUhqb2ovdC9DNVJjTDBpVDNNekpSQXpoZFFQT2NROWFsbHphakVjcjVaVzFXQXQvN0ZxbFZENTZKeEUzK1ZHSGdYRVJtNFM1anI2NXlZenRBaU5MNGxJdThpOURrN3NIVnRiY1o4ZFIxOGlzcU9YcDQvTWZYQXZpRU94Z3VMYy9aTnpiRnpGNXM1VGxkVTNiTnNhMU9GcFlYVGpEK0Y1d2hhcDNVZXNXUmI3bkRTWUk3NHlIclRFV1puSVRVcG9Ed1V0cCsvSG4wQ1FRUjZRV3poUFQ4TlRkbkoyUDI4Y0IwSlVZSG95djhHZ3pKNEhBcnNMNGxMZVRCc2Q3dkJ3VUFiR2FIaDQ3TzlaK1JxRDJTKzR6TjlCcm1oU1d6SFU4Q0hEMnRXVEtqdVhvaUN0RHFIOFptcVFJbVF5TlV1RVBrZmROZXJuR2orZS9OeHNwYmdEU2dBaXA1Z1QyMUNCc1JRTU9SeDBiZWMxc3ZZYzZFc3lSLzBtTjN1MlNieCt4UXV3OFFWeU9qSnBjTm85azhPajlScWJnY1IvZ3o2SEpoVkdKVytLMU1UeHJxTzdkVHNNKzN2K1hVeVY4NjRMTzBKWHZjd0ZVZGNac1pjSDFrbUthUVgxQnVPdm03UmFlemJUK01lUDlHekRBUVhzZnlVdjVrOHFZR3hUVHVyeDBhdEVIOHNmUVpCWk1TVDF5bmdrUkQ2SlFVbWZ6KzhmelgweGl1Rkt6bytrTnhaN3JFR3cvcStLUWxKNHBJYkRXVzZ1SlJzTG1DRy9XNXd0M2FTWUNhMTZVUTFZb2RFQncvRmN5MC9leUR2TjdhTko0Z1VpWFIxSnVzZ1ROaVl4bEVRUkRZdnA0QmRTSnNJR3E2VFpId2JPcDl4MlJySTFSaGRaa01qZGN6TmlyWkp4VGtSdkpQVnk3UmdLblppcThNT21SSFFQYm93RGNEazlRQTVENnh6VW9jb1JhMzVrVGVGR1JFRm9XUGdpbGZrZWdRV1VlVGkzMTQvbi9hbG4wM0RlWDByNXVPL3B1UDlPNUlsQzNyM2pTZlJhSHQ1VWFGaEFkTCtCTzVQWVlBTjVYT3QyS0pyU1gxNzZHMlRwNElnenFyYVhSZ3hBN2hzUlM1eFR0anBTNUZ3eUJybVBrbTRYUm1mV3g4ZHdWL2Z6OUYwVnNiVWZDcDJFOWp3c1hhQWp5RnNLb1FrZGY1bldGczlkWmJscnNxNjFHV1hNZzlGWHB0U0lWZWswYkpzczZ5OTFIYnJnQnozWHRMdlZFV0lrYWc4azFXRzRVSEpyQm9mWUNtenZlZmJiVXF5VllUeis5ZmpJbStkM1lITzY0QjBaeWFtcWlFUmlpSFlVNGlKc0xlVUhLeHVRWEtyRlhFQWtSb2JNVGlZQ3AwaEJKa05JUm1QY0Vremt2dWFkMWdtSXA5WUZhczJ3WU91c01jK0c4RHJrZ09MSUlOY0RBU3ZXYVBuNy9hYlNCbklHUTBQT1lTVHlRYTUzdERzSzJEWWpacE9OZW9sUFhlSnBiaStnSHN0WnpEb0N0UjBRWHVPRVd3T01vaGdBcmlaY2lSYU81czBodTFvWkJYNXZoWEVhd0MxcjV2ZGtaSmRMTUc0dVN4TkkvM3Y4MFlMVUVyS3gzbmRjZVgzdlpONkVjSEJLNUVDTDAzVENyV2UwRzhhNUFrMlo5bUtXMnlmL254VkJGYXE5dHlOcDJPdTlSeUI0ZGlMOEU3OUxlY2s2K3IxdDN6UFNkZXVBcTlyR0tOUndJaTJNL29tb2ZuLy9sR0pTc2xHYWRON1cxbHo5TFg5RWFVSjNSSnl3Z2Mxb29iMVFOZkpIcXc1TmNMU1hxNkpTUysyaUVrdXg1ZzhINHhmUEtYQWxqU3k4WENjdW5XVWZVdTlxUS9vYU5FdEY2Sm1NaURDckhLQ3pmMFgvYy83ZDU3VVdmY1NpYWVRZVlXL1c4c2h4eFlPVmhvRGRZeEx6ZDRINFEvOEgrcEw1U3JxWFFMK2JKZTJpU2FJWHh6Q0ttWi9qREdoRTlkd2lZanZmZG9QdlZsNGlLaEQvNjArbi96TGFSZFJKT0hXaDczR2NYRC9QNlAzUnhxcDZJYmUwczVhSjFvbHYzV2NMejJtOTAvd2FoSy9TQUZDR3JhR2JhNXk0eVhlemR1VCtISnBXY2QwSGhVb2kwdmtiRHhMN3J0cjRSVldXdGdxc0hKZjJkWk0vTGJBSWJzMm40Z1l2YS9uSCtsMDF6SnVjMm1WaWJkeFl0SnM0ZUZsbnR2b1V6S0tXdG1VYzVrYXg3WTllQnpOYXN4NzhQVGViZE82T2lyZWtjZHQ3dytvQnVnU0tYemdnQjdXSzFIYmtwQkwwOGc5ZSt6ZHp4aDJWZjhERzJGUjM4bkhEbzZQZm5mZmVyTVRIMDNVWWprZDlaV0lPQmNCV2tjUlFhWFpmY2M0NS9INW9zVzhJbEtpWWNvUWF4UUlNZFJMeG04OFBTdVVHSDJabG1jNVFNdmNzc3FJUGVQci8rTTFuUEhOU1ZGd2c3NXpvamFFVk1yTmVkV3dGU1QyU0x5aEZlUittYVFZM0xxV2JmZmxraC9jdlE1RVhsNmhqeENHNFh0dzcwL0RDdmZzWGdMNnRCRHQzeWdRcVdTK1Z0OTRJQnNSQStYdi9kVjFtaWNZWWl0UUVTRTZYaVBCZ0kwWVpHaXJMTzZ5cGpCN205T2hwNDIzZUVmS1RObm5ldGx5WDlaV2hTWjdEbDJQb0I1dHptWkw4NTU3VDh6SldxeThOMm5qUEFkZzFFWjVtTmFPYytQai8vOGpQcGlXaWZXVVJya0dkRDR5Z0R5cmtRd29PcTFKV045TmRUeVFHM2hxelVuSHpvRFJFeVVjSDhPVFNwS1BHOVAwOUhGSlZSTXpTRkRXYnJZMk96dGxCdmNBTlVnRmxoZzVaWEtLTStIOGYvUUsxMDQxZzBpR0R3VEVlbTJaNXdsUWlMeVlUalllL2ptc1d3YkI1Y3BGczVnbVA3TWpiejRsVU9md3hOTm1Zc3Vvcnl2TXNBSjVzWHBCR0ZCcDVEME5ieE5QaHBQRVQzYmdTeTc2RWorSGo4bDlDekRVaDZOZWUrRDF1cUNySmZxYy9CdCtnYnRGRjBuTUZ0aVhaT3kwTmZ6UEZnb0lkNDZOSDg0bjROVFdJSURYTUFGdGNVVUVWNHU0YkgySWM3NHNEM1kxZkJGNHdxYmx3Q21OWS9tZitQMTc5Mmd6cFBDUFd4TTBCbXZoK0R3dEpTenliR1pkdnk5Zk1kRmUvSGJRV1dXMjNabkVNSGhJZnFOV1lYS1B3TVRkYmsxdGxPYVFPL2psbFkwSGpRcUJPbDV0VTlwelFLZWNSSUdFK1JQT1NlTUh5YWorZC9IQk16OUtYTUVBak1XLy8yUWdrNmYyUXhrU0phMlU4a0swdDQ5Mm5Na2ozdmM1amxTcmorZ05SbnBvaklEQVYrMzJsYlVub25oaGk4bWdmR1J4V2VJNjkya1pkOTJqNmxQMWQrY0IrdmM4K2dQNTcvYTdQZVFmZlhTOE55eGJYRXhjNXJRSlpKOEh3K1huandjN2cvL1Z6VjhHQXNSQnZvNVBYTWtnR3BqTENPK3pXdkIrbWRWd01Yajl2OHlWNmpFK2o0NTNjTGdFVFRHYlZOQjRqaEZ2aFlabDg0UENWOEhnQVRPRi9zbVlsd0VsRHpNWWFGNCs2RVYvN0FiRzNmZzVpVGltWS9OSjc5dkxzNnZmTE1nUStUWDZQVWxIWWcrNDhkKzAzZ08ydWVPbkROMW4reUh3N2lISTFmMXZuaGMycllqbkYzWFNSR2g2TjlIUCtpRmJ0NXF3M1gxL3NzWWhnbjFlaXdUb2ZPL2ozVWI3bjIxdlRVTUN3SzlhakgvN3E3NG42V3hrMkxIb1BFK3dwWmxWSzBpYVUwNGpZcklZK1VmVUIrZFlkcXNHTjBuVVBVK3VEMVVDN0ZXU2o5ZVAvWGpvK2d2ZGQ2dFQ4M0VqREdWMWhHM0tPK2J4c0RqQnU5dDYrTE0zb09pNEdLZ0RBSWY3QVdyaERCWXppb1VxUHFSN0dpWngrYk1PRDJFd3dDcGxTWFZlc2ErUEtFdmJzRWk1MTNyU0l2TkxQZTFvK1A5NysrN2tPK1VXQmJCWHRQczVNRXVtUElicTlkbFFPMks1VjcyM3V0NTd6ZTFjNExUaEVoZ1RPVmdUeXUzc2RXN1lMc2VYanBMQ0ZEQ3VhWllySXVvT29JYkdiVzErWEIrQ2NPaE5MQlhDRFhuODdQN2VQclozVXNFTTY4dDdpYWR5MHZGdlRmTTl1bCticng3VTZ3N2VKWUtKdGpEWU9PMCtKdjlVMFJSUENSYzhvWm9tRzNJL3dqTUh0akRjSEl3UEFsdFhWRVYwTkNBUk9sV29CQjZjMWFOcnNzMkkvbiszajlDeWhhSllleHRkam5kNERSd09HS1NHSUdhRlJpTXZuK1BDVDN4aXBqd0x6bUNHNXI5N09VWC9mWGtKWHdxOUQzdnlON1JDdENFRHlaSWVMSC9GTXZ2R2YvQThPUFlQZzVsSzB1WGdkZG40L0RuNW5HUSszTUt6Nlo3RFB2Z3l1VkJmMDF4dXRkcEFaeG5ZZUV4SENtYWljS2NxODV0YnhHUk1pc0tYNDZET1BvRTdxZmx6bEhiZHpzazNneWtxWDVMVDl6QnBaeVlVY2llWFpWczRGd1lUdFNEdzhDcStmaitQZkVnNXdYSU14Qm4xd21GL3E1a3dyL1A0MGp4QWZzYmduYjdURGFaV1dOdmJTVFpINXZrbkhsdHEydklRQWh4N0pRWGtncFByNXZ0ZXZJa1M2dXhMd0lrZFMyUFVoNXV4azN0Rk8wTFUwQ3ZRcmhQOTcvOURoNW8yTzJ6aEdaMzZkeEU0UjgzQ01JM2pVaStUTFFrUXVIYkxWdEk1ZjlWWW5SeWc2NzdQMWwvTTZremxhR3pzaGlGMDJRRklPa3paZ0Y5MnBCekdNM0JyNWFId3JrWFQ0TE5MMW5ZdllLeEJYOThmVnpDVEpYVW5NVlMyY0Q3VGJlQ09ibkRTZHpPSEVmRzNyeFZGUmJsRktiVzNmRUFNMHBTWXVYT2ZnMWVLV08zRmRxL2RvTkk1UWhiazRyZWxDU3hOcVVFK0lKd1VzUVorS3l3ZDVVUll3c0I4SUJ3Zm5INnorenBYdnBYbEovcUVUZHBUMjBCRktsZFY1Nnc2NWpyNUtuczh3SHBTWkVEcndFaVNkcE56VDRVeFhMU3IwYzM1U1A3U1pJcGVaVnFSdEg0THNjV3hIN2d1RmpjZ2pEemFhQmlqejZrb3VoSHRlL2ZoNytpVFI5Mm9VWW51MW9vckRPTzYvODhteHdRVnJ3dENXU1dOUmFGanQwcmxFL2hCT3g5L2NkRHA3emVabnZhekVyeHJOMU5zSWRXNnVwek5ib2hnemhSUFdaWXpTL3hwemE4OURkS21TRWxVSWpJWDNlLzJVK3gzTmhiV2lodWYvcVJ6TmpYdWNlNXBjNGRUbnp2TFdWRytLNGlOK0N6MVhwZVllSFFqdG1DeUpaa0drOTFrU25DejNLNGh5Q3dUU1I3WW9tb1k2UzN0ZDh2a1A5azlJenU4VDNtbWRkMkg3OC9wdFhaMm9HYUZOSldGVU9rNUVpTVVFMVJoNS9jalFHMXhKNy9PSGM2MEhrbCtsc2FwOTN1RlR3enVHVzNYUTJQQjN2TDA3Qm9DQ05YUHVrOWZPclVxVjB4L3NPbUdGOERNWnBxTXpOUG9sVUxwcFhiejQrLzNpTWxjK3Z2Rm04NXNoNzU3ZTNBRzBzQjBxeWUyZG5mY2wyZmlucVhROFgwZVp6SVQ5MytPajNXSnVKZ2Vib21CNUhsMGF3cFd3aE40NkdWWnpXZkVOdTRSWm03N09GT2k1QWJYRWxyc0hvaDVTeGY5ei8wMUlHRjNVL0J5NldqenF2NkdGQzY3eld1c3pNRDBValJ4eURaeWQ1V0t0RTVmOTFoMU5YdXVTWng0cEVLWXlZTWpIWDBiVVppVmExaUdGblY2emdVSTZ6c25HTnZlZXJ6OGlTendzRHpSWnpsQjgvZjhLMmxVRGxaeUlwcXUycTU2bHpYTlpVOHVMMGU5NEI2cXRtTTJmM2lXOEMwZjdQSFY0UWR6cGU2N3dpQUpYZGU3a1lxbVFqc3hVWUljK0dkT0I5cVN4dXhubFhSa3QyQ0kvQ2hGaVVFalNXZzN3OCs0MUNLd1NnNks3Q09JaHBQWTh0TzdRSXMxZ0pOUnhzUFM5NGJPcnpqbmVWbHVYM0hXNnpYZXdnQ2huZ0sxUGIwN3dzZTlXZUFLOHYwSlRpVmdDaCs3c3JQRHdOMk13SXBLN0FieUFlbitMZTUralVoMlZPY1BsZVQvLytGcnpaK1k1UGRndHhVcllnb3hOM1NBRkdNL3ZkZ2Q4OWIvMlBPL3hnZm11U1VzOERkMFBmeisyeWxIWENwdU1aYTZGcVJaZ1RmUHVKY2MrcGp0UVVCSUpMVml6UEMrRFBLai9lLy81NGErSGNmVkdRZU1GVnVla1RCcHd2VGR2ODNnUEV3dUdCUFowTHBOV3djUDIreXVZOTU0cVFDQjdPWG5qNlFoYkxqL2NYM3RwTGVLdW4wMER3VzVEeXprbVp2dFJaUWwwV1ZLcW00cDZRQjVtUDUvLzYwVXR4QmNrdUF1RzlnRkRXMjNjYi83ekQwMEZIWFBTYVY4TFBpNEhZNGpuNTR3N1BNbE1lczVmbFFWem9rMWxjbk45NVBjZW84RWRxOTc3TTZjZjExYUxDVGU1QUd1S01kTlNDdG9SMkEwUi92dnlERG5yT0s3TFp6RUlPeExwY3Q1K3MvTHpEMWF5Rjk5bnJOc3ZiYTVrMlRQNjR5cWJhVXQ5ZmN2MXVuV3g4VlVIUHJ4QThFUXFpdWN0OHBySWhncmc3dWhMQk9KbGZNZHhuNlhQZWpmbkdRNStILzcva0lBcys2bFpDaVg3bUxMYTVyaG1neTVoZi95Wm1tZVRWYW5EeEwxZloxSTNLZDJFQStVOGd2SnF3U0F3U004bmIrLzYrQVVsZ21NanlkZGo1RmJ2MXVESHF6YVRKKzdjSXlNLzMvMy9sSzEvNXlsZSs4cFd2Zk9VclgvbktWNzd5bGE5ODVTdGYrY3BYdnZLVnIzemxLMS81eWxlKzhwV3ZmT1VyWC9uS1Y3N3lsYTk4NVN0ZitjcFh2dktWcjN6bEsxLzV5bGUrOHBXdmZPVXJYL25LVjc3eWxhOTg1U3RmK2NwWHZ2S1ZyM3psSzEvNXlsZSs4cFd2Zk9VclgvbktWNzd5bGE5ODVTdGYrY3BYdnZLVnIzemxLMS81eWxlKzhwV3ZmT1VyWC9uS1Y3N3lsYTk4NVN0ZitjcFh2dktWcjN6bEsxLzV5bGUrOGhXQS93ZmRtaG1aZHltbTl3QUFNaUZwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHcvZUhCaFkydGxkQ0JpWldkcGJqMGk3N3UvSWlCcFpEMGlWelZOTUUxd1EyVm9hVWg2Y21WVGVrNVVZM3ByWXpsa0lqOCtDang0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpWVdSdlltVTZibk02YldWMFlTOGlJSGc2ZUcxd2RHczlJa0ZrYjJKbElGaE5VQ0JEYjNKbElEVXVNQzFqTURZd0lEWXhMakV6TkRjM055d2dNakF4TUM4d01pOHhNaTB4Tnpvek1qb3dNQ0FnSUNBZ0lDQWdJajRLSUNBZ1BISmtaanBTUkVZZ2VHMXNibk02Y21SbVBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1THpBeUx6SXlMWEprWmkxemVXNTBZWGd0Ym5NaklqNEtJQ0FnSUNBZ1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROUlpSUtJQ0FnSUNBZ0lDQWdJQ0FnZUcxc2JuTTZlRzF3UFNKb2RIUndPaTh2Ym5NdVlXUnZZbVV1WTI5dEwzaGhjQzh4TGpBdklqNEtJQ0FnSUNBZ0lDQWdQSGh0Y0RwRGNtVmhkRzl5Vkc5dmJENUJaRzlpWlNCR2FYSmxkMjl5YTNNZ1ExTTFJREV4TGpBdU1DNDBPRFFnVjJsdVpHOTNjend2ZUcxd09rTnlaV0YwYjNKVWIyOXNQZ29nSUNBZ0lDQWdJQ0E4ZUcxd09rTnlaV0YwWlVSaGRHVStNakF4TkMwd09DMHdORlF4T0RvME9Eb3hNMW84TDNodGNEcERjbVZoZEdWRVlYUmxQZ29nSUNBZ0lDQWdJQ0E4ZUcxd09rMXZaR2xtZVVSaGRHVStNakF4TkMwd09DMHdORlF4T0RvMU16bzFNMW84TDNodGNEcE5iMlJwWm5sRVlYUmxQZ29nSUNBZ0lDQThMM0prWmpwRVpYTmpjbWx3ZEdsdmJqNEtJQ0FnSUNBZ1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROUlpSUtJQ0FnSUNBZ0lDQWdJQ0FnZUcxc2JuTTZaR005SW1oMGRIQTZMeTl3ZFhKc0xtOXlaeTlrWXk5bGJHVnRaVzUwY3k4eExqRXZJajRLSUNBZ0lDQWdJQ0FnUEdSak9tWnZjbTFoZEQ1cGJXRm5aUzl3Ym1jOEwyUmpPbVp2Y20xaGRENEtJQ0FnSUNBZ1BDOXlaR1k2UkdWelkzSnBjSFJwYjI0K0NpQWdJRHd2Y21SbU9sSkVSajRLUEM5NE9uaHRjRzFsZEdFK0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2p3L2VIQmhZMnRsZENCbGJtUTlJbmNpUHo1Nm1pbURBQUFBWTBsRVFWUVlsYVdSUVE2QUlBd0VwNEFhLy85YU5WSXZhSnBTdUxpWERjdUVMU0NxU2lBRnhJZHBBRnFmd3VLOGc3dU5sdVVJUGdNWTRHNStBSWdPYmhncEFjWFVDckMyOVFic1pzU2x0Q283MjF0ZFRaYUJLbi9mK1hJTm4yWW5KOXpIUEN3UkhCUDc5aUh6QUFBQUFFbEZUa1N1UW1DQw"},{ name : "__ASSET__:bitmap_flixel_system_debug_stats__Stats_GraphicMinimizeButton", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFvQUFBQUtDQVlBQUFDTk1zKzlBQUFBQm1KTFIwUUEvd0QvQVArZ3ZhZVRBQUFBQ1hCSVdYTUFBQUIyQUFBQWRnRk9leVlJQUFBQUIzUkpUVVVIM2dNSkNSMDFlRVp4RlFBQUFEOUpSRUZVR05OaitQLy8vMzhHQWdDdUJzWkExb1JOREM2QnJoQ1p6L1QvLzM4bWZOWVQ0elR5QUNPNjhZeU1qRmpGbUpBbHNacUVMRWRVOEJBYjRBQzRjRkxGc3d1SW53QUFBQUJKUlU1RXJrSmdnZz09"},{ name : "__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorRotate", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFvQUFBQUtDQVlBQUFDTk1zKzlBQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUFUZ0FBQUU0QnNjMGZNd0FBQUJ4MFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1JtbHlaWGR2Y210eklFTlROdWk4c293QUFBQkVTVVJCVkJpVmRjNUpEZ0F3Q0FMQVl2ei9sK25KQkJjOFZaMFNRZkpKYVFOZDVFQndmUmhVaVZSNG9WVnA1cHp2TUhDZDRhQmlWR0k3MmlXSERCeHVVUEg1NFFNNWNROFhwbTRKVmdBQUFBQkpSVTVFcmtKZ2dnPT0"},{ name : "__ASSET__:bitmap_flixel_input_mouse__FlxMouse_GraphicCursor", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJnQUFBQWdDQVlBQUFBSVhyZzRBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQW1SSlJFRlVlTnEwbHM5ckUwRVV4Nzg3MllTZ0psVFNTaVdwVnZyRElxaEZVSUtnK0NlSUlncWVGRS9pVFJDOHBMUVhqeUwwNGc5Q29tWFRKSVcwT1ZVRU1UZEJSSWs1VzZXdGtLSlNiR25EcHNuNlprMlczVFFicytua3dkdVpuVm0rbjMwenczc2pCVUxCQ0lBcGRNbGMrL3orZDlScTVMbHVBT1JhTzhrZkR5ZW5XMGJ5YU9LZVl3RGpEMDNUZEFnSlJFUkhJTkVlYUpWS0ZZeEprQ1NKajAzWVJYTC85bVZib2Q2QmtIMEV1bWxTdlNjMEVnTnc1ZXAxakE2UENJY1lnQU0rUDU0OG5zYXh3VUdoRUdaKzJTaFZNSjlLNCtqQUVXRVFDMkM3cEVKakhpeWswd2dGZzBJZ3JIRmdhYm1vaTJkbWt6amMzNzlueUM3QW44MHQvRjdmMFBlQ1F3NzE5UmtRT29xUlBRTzRmVjBwNnUzdzBCQXl5U1FDZ1VESGtLYUE0czkxYkc2VjlQN3hrVkU5a29NOVBSMUJtTjNFVWkwS2JpZkd4akNuS1BEN2ZJNGh0b0RWNGkrbzVSM2ovZlRKVXdSSk9JYllBbmgrK3I2NlpoazdNejRPSlI2SDErdHRHOEphVFg3N3NZWkt0V29aQzU4OWg5U3JtYlloTFFHcXVxTXZWYU9kRDRjeEU0M0M0M2JEVkU4aWpnR05tMjIyU3hjdUl2Nzh4WDhoY2l2eFdTV0dmUDRUYmV4K0VtcitLVjhxdFZ3MlEyQ3U4YmFBVk9JbEZ1YlQvejZTWFdBdTF1N1J0MENhQXJJa25Na2t3UXVjTE11UW1PUTBReGlRWFlEWGkxa2thR2tZWTVEZExqNzBsdnhCaDhuVVl3SGtjbThRaXo0MUw4a2lMM1pVbzdjN3Jja0c0T09IOXlnVThuQVRzMWI4cytUWFNGd1ZVbkMrRkQ3VFh4czNpemtSNGtZRUx1c0o0ZUkzbTRuYkxZT1RWS0dRM3hEeDU1YUxWNjBmSTcvRDg1ekltMTA5Z21ma3QwU0wxMi9YdmRUZTdkYjEvYThBQXdDWlVNUU16UW9keXdBQUFBQkpSVTVFcmtKZ2dnPT0"},{ name : "__ASSET__:bitmap_flixel_system__FlxPreloader_GraphicLogoLight", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVBQUFBQkFDQVlBQUFDcWFYSGVBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQnE1SlJFRlVlTnJVVzR0dTR6WVE1TktVYzNmcHQvYWYrcE01MjVLNFJRQ3gySnZiRi8xSTJ3Q0VaRWQyTk1QWnQwTGx6Ny9LQzMvb1NkL0RyN3JCOXNXZzZVN0E5Q295MmhjQXB3ZStpNFB2NC84Q0FSUzhSM2VBbE5ld3VBNC9RNCtTMEw0SU9EMWdDcFM0RC81cUFpeEFsSHd2SW9PVHBQQ0VtcDVHQUUwQ0orTzZqQk5rQjlSVFRLSTlDTndDR0wwWDdUd0xnS3lBWlllSUtUVTg2Z1ExSXNaN1ZRRS9TNEE4NzQ0S1h1b0RNdktPVm5XVWdJQ3NSUWNKRkpBeFJVeDdFSHlGY3dSY0EySTg4QU5rRjY5SlVRWTdEalEwaDVZQWI1RkFEdUFxRnNGNWhvQU93UHZ4K1E0cTZBYjR0Qis0eHdscTREWGdKK1cxWmc3c0VERFdMc0NpQ1hqK0ljd1ZXbkwzU1pFK0FwWkFjVlZGRmFSNGRqN0FzZ0MrSDUvWndROGcwRzRvd1EyUjdRNnZYNVhkSHlBYkFHOEtHZmdkMnU0UDRKczR4OWZqZm5ieG5YMDJTclNKM2RkMi9pU09UUnkxZFlMcjBRZDBBRDhBeTRYa2FVUjRvZkkzTWxvaXhkWGlPMG9ld1M2d21xSUdWSUFrUUlKZWp6WCszbVlrUldnS2x2Ui9lZDBtS2poTi9pY0Q5RmtjeitMMzQ5b0t6cENGbzBQZ0RmeUk1ZUZaMmUzeWlBL3draHEwOHdVQXY4SDVJb2lRU2tCUExuZitKcFpHZ0JWQ2krSVV6YWpRa3BWZURhUXZ3WDg3UUkvMVRmeE9tb1NtQUFSL0ZZUlI0RGhMMER0SU9VRnliSitVVUllN1AwQi9QNERMOVNaSWtHYkFRSUFFdjRqZEw0cGlNR21xQWp3Wi9RVFZDVklpSDdETW9BRUJBL0FuQ1QrTzQzZEJ6aG5zZWhBZzdmNFQvRThnQ3NIdlNzSlVJVzBtbzcvSVVSZ2tKd3lpL1dzRWZBSitQd2dZUzVyRzRoRHdDZjRDU2lsR2xyZ2JaS0FTckVZclo0b2hMZDNGMEhkV0NQaHhrUEN1S0dFUkpFb0h1QjdnaDBwSUFhOGxSaWVSTVZZbFd6VHJnMHd4cEJFaGZjRWlTSkFFSUFudmdvQXpSQUpwLzJkbDUyVitzRUtJYk1mN0o1RU00YkljSWJWRTFXZWx2bG9PZ0k0UUNaQ21nQXBZaGRldjRzWXQ4R05wOVlaSHdpOUtpRExCNGhSQUo4TVJuc0VSRG4vd0J4Q3dnTk5hUWZvTXdHVmtXSlQwR2plcVo3ckhUUWtSTldoalJabmdHWlNBSmpITW9JRUNic0lrQnZnQi9BMXlDU3Uxcm80RDU0d1BvQ0FaaWtwZ0xTcThLZUZ4Z0tuQ0I4aW9JTUZmSUwxdWlWTGJhNzJGWVRBVEZTaHdqTTFSeGpDUlJlejRKbXI5TTZUTkMrUU5sdXk5QnF4cEJqTzFnQlVleVZBRGtxRVJVK0hHUmlSb3prNlRrNm5TN0N5eUpZWVRzeDNpQW0xeEN0cG94ZWtZUlUzVnUwQVh1TW1aMlI4N0ZSZzcvVDJyMVYyVWZvRDNXYTk5bmhtcjNhMEE3WTk3N1d4TVQzZFk2MEV3SmtJYnRMMnNuUDllOEdZWUpLZU5aTzF3VDdTeE1HbTVpci9KSWd6dVVQL2Z4R2MyY2R3VVFsQTkzc3pBRElQUkdKcVYzbDBQMmxpeXJKV2xMWW5QVk1nRHJzcTZBUUdhU3Rnd3lSSjFoVnBDTWw3ZkhuY2VnVjlFL0Vid0MrUUJzZ3orT0k2WFl3MHlWa1VORmhIZUlOWE5BNnkrR2twdGQzYitDbVZ0aGZSMmhZS25ReW44QVNSY3dUUlFBWmFQaUtLYW1ncVQ0Z09zY1pVbCtjWG81bGdWWDRmTTd3T1dSOFNtQUk4YzVUOEthY2FPRjRNRWRxUXZuVnd6cXJvVkNDQWdZQld5bCtDUmdCV1VnSW9vR1FjWW1ZQVg0anFFdEhiY21CeVdrTkx4dllGUGtBckFqdEJGVVlFa3dsSUFubk1tQ2hSbnlvbzl0azNKNkc3S0VGVHVyblJ5NkJUeEd1bEFmOExTRklBT2taMlErRnRWT0JNR05UVnNrUGRYQXp6dVBqWkZPNWpCVGV5MGpBWVhKVS9ZamR6QWNvUnVGR0NuZHU0d2t4dm5ZMngxVlZTek83dGZ3UVIyVUFIbUJSZHh0SnhnRDU0eWNVM0E2NkdqS2V4S3I2REF6ck1DQ25jZkJ5TmFQbkZUdlArcWhNTTlDSU4zT1VFckJTYVIxR3lKTWZkTk5FS3QyV0EzU0pESHEyUDdtZDNIOUQ1VkRHbFBjZlNnNVl4Z21taDV6VXlIVjZXbXNNQjNweVpJSzhDZHBSdkFOeU5ibEFTY2xLNU9FVTdRZXo1Z0Qyb0JiL2VuTTBFdkg3Q2V5Y0dFYVFCcHg4MWxtcGRlaldFOUtUSlRLdk1qaVZCSlBKT3p3WmdMbldBTituajRqSkJHUkUvbS96elRGR21KM2ZjYURkM0lGYW80N2tyTHF6Z0U0UENUamVaSWxQV0Z1NS90Q211NUFRNGdHRVpaVlF3cHZhZkROQ2ZibmVKTEE1d3BnKzl1aVZId1hsZUlRSDlnTlRpTEUyVllxZTZpZmlGUE5IZW5HaUxraEVRQ1U4RHFyMExPRUQwMm55R2lPS0dPWnh1aldSTW9Tbmkwd2lRcFQyaVEwNGttQnp3N3RRZ0hOcDhpWW1ZeTVEMTBxRDJwVGNiTWdCTmtsNENFakpON3lmOExjS0tEck8yOE5ZTG53QXk4bHJ5MzAwODFnZG5Ka1VXSU5YVGxoQkl5NzAwUFJlNGx3RXFPTEFkcDNTQWxBSEJ5V0hNWCtHY29nQnhpSWpJeWl1STdydmt5QWlJMXpONGtUeWpqS2VDZlFVQlcyc1dwS1NJbitCTGd6eVlnVXNXak4vNi8rdS94NkticDN3QnEvZnd0d0FDRGVkRE1KazlyRWdBQUFBQkpSVTVFcmtKZ2dnPT0"},{ name : "__ASSET__:bitmap_flixel_system_debug__FlxDebugger_GraphicFlixel", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUF3QUFBQU1DQVlBQUFCV2RWem5BQUFBQkdkQlRVRUFBTEdPZlB0Umt3QUFBQ0JqU0ZKTkFBQ0hEd0FBakE4QUFQMVNBQUNCUUFBQWZYa0FBT21MQUFBODVRQUFHY3h6UElWM0FBQUtPV2xEUTFCUWFHOTBiM05vYjNBZ1NVTkRJSEJ5YjJacGJHVUFBRWpIblpaM1ZGVFhGb2ZQdlhkNm9jMHdBbEtHM3J2QUFOSjdrMTVGWVpnWllDZ0REak0wc1NHaUFoRkZSSm9pU0ZERWdORlFKRlpFc1JBVVZMQUhKQWdvTVJoRlZDeHZSdGFMcnF5ODkvTHkrK09zYisyejk3bjc3TDNQV2hjQWtxY3ZsNWNHU3dHUXloUHdnenljNlJHUlVYVHNBSUFCSG1DQUtRQk1Wa2E2WDdCN0NCREp5ODJGbmlGeUFsOEVBZkI2V0x3Q2NOUFFNNEJPQi8rZnBGbnBmSUhvbUFBUm03TTVHU3dSRjRnNEpVdVFMcmJQaXBnYWx5eG1HQ1ZtdmloQkVjdUpPV0dSRFQ3N0xMS2ptTm1wUExhSXhUbW5zMVBaWXU0VjhiWk1JVWZFaUsrSUN6TzVuQ3dSM3hLeFJvb3dsU3ZpTitMWVZBNHpBd0FVU1d3WGNGaUpJallSTVlrZkV1UWk0dVVBNEVnSlgzSGNWeXpnWkF2RWwzSkpTOC9oY3hNU0JYUWRsaTdkMU5xYVFmZmtaS1Z3QkFMREFDWXJtY2xuMDEzU1V0T1p2QndBRnUvOFdUTGkydEpGUmJZMHRiYTBORFF6TXYycVVQOTE4MjlLM050RmVobjR1V2NRcmYrTDdhLzgwaG9BWU15SmFyUHppeTJ1Q29ET0xRREkzZnRpMHpnQWdLU29ieDNYdjdvUFRUd3ZpUUpCdW8yeGNWWldsaEdYd3pJU0YvUVAvVStIdjZHdnZtY2tQdTZQOHRCZE9mRk1ZWXFBTHE0Ykt5MGxUY2luWjZReldSeTY0WitIK0I4SC9uVWVCa0djZUE2Znd4TkZoSW1tak10TEVMV2J4K1lLdUdrOE9wZjNuNXI0RDhQK3BNVzVGb25TK0JGUVk0eUExSFVxUUg3dEJ5Z0tFU0RSKzhWZC82TnZ2dmd3SUg1NTRTcVRpM1AvN3pmOVo4R2w0aVdEbS9BNXppVW9oTTRTOGpNWDk4VFBFcUFCQVVnQ0twQUh5a0FkNkFCRFlBYXNnQzF3Qkc3QUcvaURFQkFKVmdNV1NBU3BnQSt5UUI3WUJBcEJNZGdKOW9CcVVBY2FRVE5vQmNkQkp6Z0Z6b05MNEJxNEFXNkQrMkFVVElCbllCYThCZ3NRQkdFaE1rU0I1Q0VWU0JQU2g4d2dCbVFQdVVHK1VCQVVDY1ZDQ1JBUEVrSjUwR2FvR0NxRHFxRjZxQm42SGpvSm5ZZXVRSVBRWFdnTW1vWitoOTdCQ0V5Q3FiQVNyQVVid3d6WUNmYUJRK0JWY0FLOEJzNkZDK0FkY0NYY0FCK0ZPK0R6OERYNE5qd0tQNFBuRUlBUUVScWlpaGdpRE1RRjhVZWlrSGlFajZ4SGlwQUtwQUZwUmJxUlB1UW1Nb3JNSUc5UkdCUUZSVWNab214Um5xaFFGQXUxQnJVZVZZS3FSaDFHZGFCNlVUZFJZNmhaMUVjMEdhMkkxa2Zib0wzUUVlZ0VkQmE2RUYyQmJrSzNveStpYjZNbjBLOHhHQXdObzQyeHduaGlJakZKbUxXWUVzdytUQnZtSEdZUU00Nlp3Mkt4OGxoOXJCM1dIOHZFQ3JDRjJDcnNVZXhaN0JCMkF2c0dSOFNwNE14dzdyZ29IQStYajZ2QUhjR2R3UTNoSm5FTGVDbThKdDRHNzQ5bjQzUHdwZmhHZkRmK09uNEN2MENRSm1nVDdBZ2hoQ1RDSmtJbG9aVndrZkNBOEpKSUpLb1JyWW1CUkM1eEk3R1NlSXg0bVRoR2ZFdVNJZW1SWEVqUkpDRnBCK2tRNlJ6cEx1a2xtVXpXSWp1U284Z0M4ZzV5TS9rQytSSDVqUVJGd2tqQ1M0SXRzVUdpUnFKRFlraml1U1JlVWxQU1NYSzFaSzVraGVRSnlldVNNMUo0S1MwcEZ5bW0xSHFwR3FtVFVpTlNjOUlVYVZOcGYrbFU2UkxwSTlKWHBLZGtzREphTW00eWJKa0NtWU15RjJUR0tRaEZuZUpDWVZFMlV4b3BGeWtUVkF4Vm0rcEZUYUlXVTcrakRsQm5aV1ZrbDhtR3lXYkwxc2llbGgybElUUXRtaGN0aFZaS08wNGJwcjFib3JURWFRbG55ZllsclV1R2xzekxMWlZ6bE9QSUZjbTF5ZDJXZXlkUGwzZVRUNWJmSmQ4cC8xQUJwYUNuRUtpUXBiQmY0YUxDekZMcVV0dWxyS1ZGUzQ4dnZhY0lLK29wQmltdVZUeW8ySzg0cDZTczVLR1VybFNsZEVGcFJwbW03S2ljcEZ5dWZFWjVXb1dpWXEvQ1ZTbFhPYXZ5bEM1TGQ2S24wQ3ZwdmZSWlZVVlZUMVdoYXIzcWdPcUNtclphcUZxK1dwdmFRM1dDT2tNOVhyMWN2VWQ5VmtORncwOGpUNk5GNDU0bVhwT2htYWk1VjdOUGMxNUxXeXRjYTZ0V3A5YVV0cHkybDNhdWRvdjJBeDJ5am9QT0dwMEduVnU2R0YyR2JyTHVQdDBiZXJDZWhWNmlYbzNlZFgxWTMxS2ZxNzlQZjlBQWJXQnR3RE5vTUJneEpCazZHV1lhdGhpT0dkR01mSTN5alRxTm5odHJHRWNaN3pMdU0vNW9ZbUdTWXRKb2N0OVV4dFRiTk4rMDIvUjNNejB6bGxtTjJTMXpzcm03K1Fiekx2TVh5L1NYY1pidFgzYkhnbUxoWjdIVm9zZmlnNldWSmQreTFYTGFTc01xMXFyV2FvUkJaUVF3U2hpWHJkSFd6dFlickU5WnY3V3h0QkhZSExmNXpkYlFOdG4yaU8zVWN1M2xuT1dOeThmdDFPeVlkdlYyby9aMCsxajdBL2FqRHFvT1RJY0doOGVPNm81c3h5YkhTU2RkcHlTbm8wN1BuVTJjK2M3dHp2TXVOaTdyWE02NUlxNGVya1d1QTI0eWJxRnUxVzZQM05YY0U5eGIzR2M5TER6V2VwenpSSHY2ZU83eUhQRlM4bUo1Tlh2TmVsdDVyL1B1OVNINUJQdFUrenoyMWZQbCszYjd3WDdlZnJ2OUhxelFYTUZiMGVrUC9MMzhkL3MvRE5BT1dCUHdZeUFtTUNDd0p2QkprR2xRWGxCZk1DVTRKdmhJOE9zUTU1RFNrUHVoT3FIQzBKNHd5YkRvc09hdytYRFg4TEx3MFFqamlIVVIxeUlWSXJtUlhWSFlxTENvcHFpNWxXNHI5NnljaUxhSUxvd2VYcVc5S252VmxkVUtxMU5XbjQ2UmpHSEduSWhGeDRiSEhvbDl6L1JuTmpEbjRyemlhdU5tV1M2c3ZheG5iRWQyT1h1YVk4Y3A0MHpHMjhXWHhVOGwyQ1hzVHBoT2RFaXNTSnpodW5DcnVTK1NQSlBxa3VhVC9aTVBKWDlLQ1U5cFM4V2x4cWFlNU1ud2tubTlhY3BwMldtRDZmcnBoZW1qYTJ6VzdGa3p5L2ZoTjJWQUdhc3l1Z1JVMGM5VXYxQkh1RVU0bG1tZldaUDVKaXNzNjBTMmREWXZ1ejlITDJkN3ptU3VlKzYzYTFGcldXdDc4bFR6TnVXTnJYTmFWNzhlV2grM3ZtZUQrb2FDRFJNYlBUWWUza1RZbEx6cHAzeVQvTEw4VjV2RE4zY1hLQlZzTEJqZjRyR2xwVkNpa0Y4NHN0VjJhOTAyMURidXRvSHQ1dHVydG44c1loZGRMVFlwcmloK1g4SXF1ZnFONlRlVjMzemFFYjlqb05TeWRQOU96RTdlenVGZERyc09sMG1YNVphTjcvYmIzVkZPTHk4cWY3VW5acytWaW1VVmRYc0plNFY3Unl0OUs3dXFOS3AyVnIydlRxeStYZU5jMDFhcldMdTlkbjRmZTkvUWZzZjlyWFZLZGNWMTd3NXdEOXlwOTZqdmFOQnFxRGlJT1poNThFbGpXR1BmdDR4dm01c1Vtb3FiUGh6aUhSbzlISFM0dDltcXVmbUk0cEhTRnJoRjJESjlOUHJvamU5Y3YrdHFOV3l0YjZPMUZSOER4NFRIbm40ZisvM3djWi9qUFNjWUoxcC8wUHlodHAzU1h0UUJkZVIwekhZbWRvNTJSWFlObnZRKzJkTnQyOTMrbzlHUGgwNnBucW81TFh1NjlBemhUTUdaVDJkeno4NmRTejgzY3o3aC9IaFBUTS85Q3hFWGJ2VUc5ZzVjOUxsNCtaTDdwUXQ5VG4xbkw5dGRQblhGNXNySnE0eXJuZGNzcjNYMFcvUzMvMlR4VS91QTVVREhkYXZyWFRlc2IzUVBMaDg4TStRd2RQNm02ODFMdDd4dVhidTk0dmJnY09qd25aSG9rZEU3N0R0VGQxUHV2cmlYZVcvaC9zWUg2QWRGRDZVZVZqeFNmTlR3cys3UGJhT1dvNmZIWE1mNkh3Yy92ai9PR24vMlM4WXY3eWNLbnBDZlZFeXFURFpQbVUyZG1uYWZ2dkYwNWRPSlorblBGbVlLZjVYK3RmYTV6dk1mZm5QOHJYODJZbmJpQmYvRnA5OUxYc3EvUFBScTJhdWV1WUM1UjY5VFh5L01GNzJSZjNQNExlTnQzN3Z3ZDVNTFdlK3g3eXMvNkg3by91ano4Y0duMUUrZi9nVURtUFA4dXNUbzB3QUFBQWx3U0ZsekFBQUxFZ0FBQ3hJQjB0MSsvQUFBQUJwMFJWaDBVMjltZEhkaGNtVUFVR0ZwYm5RdVRrVlVJSFl6TGpVdU1UQXc5SEtoQUFBQkxFbEVRVlFvVTJQNGY5RG9QeEkrRG1RNy9qOWt4QUFDWDlYOVZJRjRHUkQvQStML0lNeUFwZ0drK2QvSEE0WTdqcnE1emdJcStBbFRpRlBENTRPRy94MTNxLzJYWHFuKy80S3RPOWhVWkF5eTRTck1sbzlBeFhaQXhRdzdsY0JZY3BYYS96TU9LSnErZ1RTNGdaenhBYWpZRWtreFRKUFlHclgvSjV6Y1lMYjBNL3cvWXNUdzdJREJPclBkcW5DVFlZcGh0TWhhdGYrSFhGMi9BSjBtQVE0TjQ0REhDN21XZXVEVXdMQlQ5VC9yNGFYUFdNNys1bVN3ZHZ5dkJzUy9USDFlLytkYzdveEZrOXAvNW1NYi93TVZnM0FPU01NQ0lQNFB3aVorei85enJIUkEwZ1JTdkFtbUdFUS9BbW40RGRNQTFoVHcrRC83S3R2L0RMczBnSXEzSUNzR3MwRWF3S1lqWTZPUXUyK1lqMnk0QlhVR2lpWjBEVitBR3R1QVdCQ29tQldJazRINEFiSkdBSlFUU2ZzMmF1VnlBQUFBQUVsRlRrU3VRbUND"},{ name : "__ASSET__:bitmap_flixel_system_debug_GraphicConsole", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUlHTklVazBBQUhvbEFBQ0Fnd0FBK2Y4QUFJRHBBQUIxTUFBQTZtQUFBRHFZQUFBWGI1SmZ4VVlBQUFCVVNVUkJWSGphdEpIUkNVQWhEQVBqRzhVVjNNbmhuTVZaWE9IOFVTaFBoSW9ZeUUrNXRJRUdRRjU5T3BDRm82UXFLVzFwd0RvRERTaS91WUFGbmk0amxEM3d2SUlOWEcxMmQ0NUFCZEt1V25qMmxENEFLVWJYUXNkOGx3a0FBQUFBU1VWT1JLNUNZSUk9"},{ name : "__ASSET__:bitmap_flixel_system_debug_interaction_tools__Eraser_GraphicEraserTool", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUxFZ0FBQ3hJQjB0MSsvQUFBQUJ4MFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1JtbHlaWGR2Y210eklFTlROWEcxNHpZQUFBUW5jSEpXVjNpYzdWZGJiNkpBR0lWWGZzV0VmVjBGckZZbGFyT3hhZmJGVGJOdDBzMitVYUNXS0pjQWpiWi9iWlBkOTAzL1MvL0J1bmlqaUZ6bUJ0cVcwMkFyenN5WmM4NDNIL1h2djk4dmpNTTRpOFhpK2ZsNWJqck1FcjJ6dWFPb0U5MEh0L3JZc1ByOHk2OC9QREMwUG4vVEdva2paNmpmRzErZlhQM3E2ZHUxK2pSUnV4cC9OdUI2Y3psWXdOUjlCY3pOcWVYSjh6NnZhUGF0TGdkL0wyOExQRmdOOFNkOS9zdnlBL0JqZEFtR3RxdURWbDJzcWVLcENFNmx1blRTYkxmYm4wRkRsRVJCYkFoU295YTE1Wk9HTElwZ0EzN0FCYTg5Vjd1VHY1OWZiT2lDZDMzKzN2Y2RXUkJtczFsOWRsSzMzYkVnZGJ2ZDVUS05SaTBZVWZNZUxWK1oxeXp2MDNxUjdUcm51cWU2aHVNYnRnV1c3NVZiKzhIdjh6d0hJdGpvTXAyUXlQTHFLNDExMVRhRnVlSUlVbDBVd3BXWGl3ZWo1YUdySzc3dFh0djJkTEJXZm1HNCtzeDJKeDRZWHJXQUZNd0tmcHFkSnJneExNMmVlVDBoUGk5cFNmMDh1QWFCVWMyYTJLbUp6V3VwSTdlYWNsUDZHWm0vSGhTYlBySTE0KzR4YWZxcDNPcHNwa2NHYmEwU1lsN2hlcWlwb1lYT2d6dGRKYVdwZ2o3VlRkM3l2Y0JHYWRkR1RaWHZiTmRVL0lGaEttTmRjS3h4VDNpOW1ibS85ZDJnVW9JaUZjSXFqYXdPbUpJQllxajRTY0J1cmtQeG8rL2dmZm9QNzhENzBuL2cvTkZLbno3L2FnZlkrWE52UG45azlkVDQ5MmhoOTBHSG44MjQ4dms1Y3YwNHBSL3lFK3RuWDMraE9rQ3QvakFOb0pkL3RQclI4aWZseDgyZUZ2OTJEd2ZMbjhBQVN2cFRzaTg2ZnhpTzdERWsvRm1ad3pxQnowOVM5VW44SElILytBNFErRS9GQUtMNnk2ajY0dk9QYlFRVFlQZnhpOElmKzIrbjlQeGplOEVEcmZNUFV3dTArTm53WmVjUDZQMlM4Y2NWUisraG53UlUvZ1MxUkgwQTEzL1U3Tk1jUU9ablU5OWdBVU0veHJtbmwvLytYc2lBNHo5cDlvbjVjNmo2eWJQZjRjZnpQN0tYb3ZOUDc2TG9Ucnl1QmN1ZjFjT2puNk5lc2NkdkNuK09Rb0pTb09FL1EzQUtJUG5wRkhzQ29QV3o5Tld6S1B3RkFkNy9yUHh4MVIrZGZvNTBQZXorbjZJL3IrL3NEVVpFTmo4UysyWUN2ZjVmMktGUDRPY1M5YU03UURWL1ZBT281NS9aOVZKMlFDLy9NaEI3L083eTUzUzlKTkErLzBVamdSOURkUkt5YzgvZ0QyY1Rra01oaVo5SzMwazRDYkQ4Mi9sbElEMS9HaEdnNXM4Qk1zNGRjaWlrNVU5c1AybitKZUZJemo5SFdUOVIvdEZWc0oyQW5KdWZmN0dOSUp1ZmhCdk9PUzVYUDlZbXFPYVB1d002K1JlTC9QeHhhd0J1YmtINjM5SDVMeFk3NUZ3cVA2U2F2S2RkRG4rT2ZwaFZVYk9DNVVmOURrQ2JIMnBoakdJTmc4L21oKzJFYkdRc0F2K1IxSDlPL3JEMVYxaitNT1NJZ09TSDdZVElIZk90NUI4aVNTSEJjd0pQZnhJVDNuTWFuWjhlTndGS0o0d3k3M1ZDU3QrWXlGQVdlNUxTd3lvdkZaVFAveHZHVWFnK0pQdFI1SDFjbmZCRDRmRFZYNkZDaFFvVktueHNMQ3BVb0lCTFJtSEdqTTRBUnFxcTZnUGlQMUhNM1VabjEzZmJBQUFBU0cxclFrYjYzc3IrQUFBQUJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQXBwRE9oQUFBNWNHMXJWRk40bk8xOTJYZmJ4cEkrYm02Y1JQSWlPNW1UZVpnWG5UUHpPNytuNUJJTHQwZFJGQ1hGbE1RUWxDM254UWNFaVZnVGVSbFpWdUxod2Y4K1hWWGRXQnFOVmFSRU9iaStVWk5ZRzE5VmY3VjBOWGowdkhlOWVERzJ6eGVPLzJKOGRMN1EvY0Y0TjlLTWZ6MCtYN1NzZWNPejVqUC9iTGpyTFJyK0sycGVIdmE5aGE3N0I0Y1RiTWQ3dHJkb0cvN1lQajFudTN2NzdBb2UvczhmRFlmWGk5NkkvZG5kbVh4Y2FCdmFWSE8xMTlwSW0ydnYyS2R6N2NJL1BENWllemJabm5kc2o2Nzl4UGFlYTMreEl5NzhjZjlrQ3BmY09jWXI3N0FPbS9PTzMrc2ZRaWQ3UjZ6bkhtdndPWHIySGg1a0QzQ2ZmWUJOYjRnYmU4K3gyVDNtRjlnYjRQZnhCQThhOVBEYllJek5NVzIwUitlTGJzdnZUV2puaEs0K3Nla21SM1E5YWc1M29KZkgwS3VHM3ovUnp4Y2QxaGh3bWY2SmljMkFiVFJZWTFCalF1TVhRdWJmVmNobzI5b08yM3JGdnYvRVBsMncxdEUrc2oyejI4Uk12eUZtK3Fvd2U4Z3gyOWN1R1M0ZnREZHMzNVUyejhUR0ltem1HZGcwbE5pNGJneWJSZ1kyYm9ld01ZM1M2T2dXd2VNUVBBN0IweUY0T2dSUHg3ZEh2N0c3VEgzYjV1M29oS0hXZE5nRy9xRVlnTTg0Z0x2YWU2WmM3eG1NVExXWTBrV1BqSUxKTG94b0dzMHNOSjBDYUVxYWxvV21wR25PY2tjblF0aHFLU0MwUnozYVkxTWJoZlE3RG1rUHgrTzU1bkpBdHppZ05nUFRZN3E0clkzWnAwOXMyeXgzMUNxeDFEMXJ1ZVBXZEN1T1c2ZnN1RTNENkZFQ295SGIrNjdLdUpYUkthUnI2NDJPMEtBRHR2MFNCK01OTldqSnRySUVRbzNWNmsrSVVHWDlLY0w3YTRtTm9QUStZdk1HTllQUTJlRG85Sm5XWElFMXZEWFd5ZVJ3MTZvNHNCb0VUWU9nYVJBMERZS21RZEEwQ2tLekZVQVQ3RUUxbXJQdjE5cm5lMG5PZXR4dGFCSk1UWUxKSVpnY2drbnRGQlNGS1J5RldUQVo2dzNURXNmWmt4UmxRazRxajlHZE0xRVdRazFDcUVrSU5Rc2k5RlNKMElUaGM4NTg5WXNjdmw1WFRUS1hya2xxblBwbzlhZjNGaWVqSWs2UE9FNDdURXN1bVczdnNiK2ZBQmVPMW5jY3JXSjhCUDJPd05PeUNCL2NuNHRQeDhxd2J4amJSUkNhM2REMkc0U1FRUWhaaEpCRkNGa1U4SUZVWXhFZlBBYUdLMnhER1F4RjNEeGh1dllYOHhFK1VlQ1hqYVJTMGJLQjFMc2NTbU9hRlR6TFVKWUtueXVEYVhTTGdmbUVnN25MRk80Q1V6Qy9CK21Henh6UWJ6aWdMeG1NVnpFWTJ6UENzUzFTTTJwSElpdU1nVk5qNDlYSTk3Y3F4ekZHcHhpQ1BaNS82RlhDYXlNeWlOK3l6KysxOTlrSkxZNmFiaFlPYmZTR1ZkNU5iVFlJTnVSUEFNN0x5alpVUSs0M1lCYWVkekQxV1duc3NnbFE2RnZISmVUbVMzSTJHbG5PaHJGU1phc0swSytNMTg3aHFCaEFWcE1BMHFlU2JvbHNhWU13Y3JPSURkUWlYN2ZRZ0VSd2F2RVlDSlZxSmFOUzFxMkEyS29PMERIYk84VUIraTVUemZUdWN2WHNMa2d0aXRIREFLTTM2Tkc3REFFblNKdCtHODlnRmFJdWpneXFWYTZIcGhzdWh3ZE1ZRUY0V25OT1huQXlBSVNKMDJKMnM2Q0NqWmxlR2ZNNSs5Qkw2bFUyWmtLamR0SFhBTnJQRHJnbDNQQ2hGS1pTd3EzdGxsY3JpK2VYSGE1WDVzeGFObTZLZ2RrVDJXWnVib29qV2NWN1U3c2RtTVpQQjlNMXlvTVorRzVOZzlBa2JTeUdwajR2N0h5UXR3WWdlaFdVY0lTMjh5cC84bEZTUXM4cTRIaDRWb1d4SzB3RDEwR0VjZmtxQ0pwbkMrY1hiQU41d2VKRERGajhNRlpvNTBZQU1WaU56MmdiNHJ3NFp0di95SWxiTzRSc2w1QkZVeGxCdG5IVHZLTkZ1SkwyZ1pwMHVOSEZtQVNnaGJrc3dOYkl3TGJKczQvTXZGSDgyaVYwV3h6ZUZzZTN4UUdtRVEwZnBwNDBvd1RlOHZnQWpYOHhNTXNGdXZFNEYrT3Rpc24vSW1xYVJMT0FvcHFHU2xGYkhFa09aQnFPZ2FJS0hLVnhuNC9qQktlSFhlMlBNaU8rRUpERnZFRTFrampRd2VoTWwyNnNjY1RqYUJaQWpxTkRuOGdnSFZIQnBBTXNSSUJwdWdrazdxU2hUcWkrVys2MFZNRzhRV001QlFscU9GdUpLZmNlUjlIdUphZllzOEVTdWVJRDlMWGZjSi83RFJxZ1MrVUVPOXBlMU1kR2pDZkpZaWQ0VXVsYW95RXFHdmc2S3dXdlBGUjl0TjUvc0wxSC9KTU1WWXBCS1ROdzllYThTS3BQN1M2dVVzOG8wNWZNcldSakp5WnVob0Y2cGFNbjU2VmNaWGJQeUFqZ3doaWxncSs5TXZDaUpqZDB0TVd3MVR2ekdKN2ZjRHhQRkRVeGtEUUYzeEVtbUcyY3NIRDRoR3EySGpyS2VLK0FJWWJBS2lPWjREcUVwTUU5RzllUXdyMFpkN1RKUzgyeElZd3RDYzhPQjdSRGlMcTgxTWpsbUxvZDJTTERoN0g0a0N5YUdRY2ZoQTg1R25Pck14NExyOUpPUm84cVVXeEdSSEdPRG52ZWJJaFQxdFFJSndqTWI1NE9tNUpQS1d5M2NOWnh1Q1E4U3IxQWlBTmJCMXdhQTVJR1lveW1lUWM5RElRYXFwSEFWRnN0QWxIM2NqSDhRUjB0OGxtQllxaTJLNkpheUh4elQ5MXpwTlFyNXdackdnUFZVb0hhc3RUSzNPUjFBazFlS01EYWVPNmZuS0V4K2o2MlBlYUE4KzhBdE80VkJub3pTQXBkb1E4S0JUc2ZpMWdza2RRV2sxTzZNNy9wNUJTSHRpa3BiSngxd1dHeXNTZzRuU1lFc2xoZllGSUx5Sm91SVl1dGlTMHFMQ3JvbU9OMndIRzBFNzZsQ3IrSEFYNjN3TFhtckJEWFNrbU5nR296cHdWU1FzaUNDQkpsS21rVnZRTFFWb0V5MElLS1N4OXplRjhpakhPZUJzRUN6d3J1dThmVjFJdXJxZWNzaVZadjZvS3FLZFZRaFVQa0NFU05WeEFGeVZNeCtSaVdDeXlOampJRGgyNXFIb3FRU3lzWlY1b2kvUVl1N28zaVNsTUZKSmJGcGhYT1ZvT3hXQjJXTkEwZHhFUEZLaDVLQUNuQ3lXRE1JMlhjS0pHcHJPSU9jbkpocWdPZGYvRmhmQkpoMVFheHFsU01MSElmWTI1MTNtdHZwV0grQ3FPQTdHSGVLWi9xRkxBV0tZM25abjZxckFPVWpMeHltS2Vab3JSY1hEemZEckNoY2JjVFFWVStmRlJMbVczTVRkWHdsaVlSbFdHNjJTaU9IcXA3RXI2cGxaL0tET0NUVXBtZzM0Z2ZmVERwQTdsSkxGb2lOd2srb0J2ZmFwQ2ZoSlpuTEZTVVBOSmltSXBTaVFGNG9pcEU0V0VpdGwyWW5UTEdQVk1mRVVOVmlsanRIWEZNVFJXbWJrZnRkM1o1WE5ybFdjMXVpOXg0VkVDUmNldUYzcWJJd0JWV1RPRXJ3YnFOZDVvSFZTZXdTRWdGcDk3a2VMYmllRG9sckhoTFNac05GVzFTUXJoS0haU3dQdkdWTHdZM1A5aWEySkxpdFRnWHluWTdIYlRRUWY4ZnBuc094a0haWTdwWmRWSzdoSjJoZUNjU1RaYVl0V1cwcVJ6VHNIM0F0dzlvZTZCL2FHSGEzTUMwYVZnTFBjUlJmVUJoa2FxZTdKVGg5dzROK1NjTWNZVHIvaWhReHpjNHN3dkpxWG1pWmtCR3QxVTFWdGVMSitzQ0syNjJ5azlZQ0N1ZXR4YnJRUGcvQjBuL0p3KzZCeHc2VSt0WG1NQnRGeWxqTEpLZU0rUGVZM3p3TWpWUmhPREZ3aHlqbzhoc0hKQzNVd2FuelJBbmJWdmJSdy95ejJ6RWxCYTVXT1duZ0V6UE44bXUwaUxyYzVYMTBHOFZzaDg1WkM4d3krTmlQZkZIWEZFSzh3K3d3RzhiSjhKaDdVeDJEWXN5T1V3VkdVV1JOUE9WVDBJU0k1aGtWcTJVOXBrOENqUjVxVEZyMGJQaGsySTh5MGJ1RGJmTE1jY2JDVE9TSHVyRXMwTXBaYmRwQW5rY0JJenYwYUY4bzMwUWRRalptcnk4R3U4cy9EdktNajZJV3lQd0cyV3lSR21hVEI2NW5UVGVlUWcraVNENEZ3YmQyeGhabHNZUWF6TktGREFIT0ZyNUxsRGwxZVRnNHhTd054Z3N1bTNGdkRoT0hlRUc4VUZvNjRpSFAvQ0lsSUtQeEVOeStpaFBDbUtHSkNDUGtqTWs2cm1tVEVFa3B0aVZmR0oyTy9FNUVrOXB6OVI1ZXFsWXdWV3J0TXExbHhkamg3TWozTGVLWnBhUmJBRDlkcFBRbDRMNW91QVBHTnhRMzFwMmVxb0MrSVdzSWxiTlJiQjNsT2s4WVJlTDVKemxxRXJKSm9LK3g4RWtVeklZTGVwYm5MRHRWMmdjOHhhVExzTzNhQmFmRTVFdzdPWW5TMFN0alJSTVpYa1cvbURZdjE0TW91dHZQWVROeG9UZGVXU0ZxWWR3SGVNTEE5NGlrS2VwZXppTUEzcU9BZG1pQWZWL3NJZXNPUmozOFpEeG1QWWRVSE1HalQrSWhuYlVJYjdjRjBJNHFVdlJQYWVwZTZwMXlhQXVzV1kvNk5FejFoODNlQUhGakx0VlY1SDNLWHdNYkwvTHB6SmhvTHJhSDh4dWlkZFZEUFpmTU9DUGQrbmloK3p6L2dqZXdES2dWNncwOEg5K1pKY3VkdkgzcjhDK1Y3Q3ZjZlByNkJVdklYYXg3d2lkSHhQZFF5NjZYVnlSNUxLQmRxRVEzNWlEbU5TbzZKNXE0ak5KZkdZdHZncmllOExGTjJZQXVleWhJYlh5dXlURUo0R29WTWVjRmppbW1tQWRFcXhUQzdhQ1lEZURjUW1KUkhDb28yYlJpeVFaeGI3VGpIM1ZCR2lSQUsxYWdEY1ltU1NJS3d6eUx3VnMwc2hVSDNOYTRKZ2JVYTZ1MTVLdElOblEvWEx3QldCaFBiUEgwOWhpKzJuSzltcFNhNUxVbXJYUWJpQzBFYnFiYm1UVnVzZERackg5TkdWN05hRzFTV2p0V21nM0VOb0FnWmtGc0FqaGhOdFBVN1pYRTFxSGhOYXBoVlpCYUkrNTBQYjRHdFlQU0hwUi8rVXhGNVBxaU5QY0k2cUp0RXNpN2RZaXJTRFNiN2xJZXpnNSt6RW93dkNDZFZDWHdSaVV0MVlUbDB2aWNtdHhWUkRYUmhBVXdzaWhOL3JJOFh5NFI0N253ejNWUkRjajBjMXEwZDNBNHIzRWlydDV3dUtGMjA5VHRsY1QycHlFTnErRmRvTllmUlJtK29PZ1lEUHdJNlA3VGpQMlZST2dSd0wwWWgxN0ZHalRYSnRxZlpUSUc1eUlFT1VoUW52ay9hYzUrNnQxVXVmWlkyajdlZ1RZUWQrSWZUTmozNnpZdHdrSllCK1Q0bFcwOVFuWFZ0Z3p4VmR0WE9HaUM1aTJpZXByUzYwa1pnZVVLYkxyWjZNVDdqVzZUanUrMTJxR2U2Y3QrZHhXMXFudGpGTjF1VWZ5TUxsLzNWL2U2S3haYklVNGJYR2N4cmhjYVIvTDllRFk1QWd5VlIya2ZzUTFKYUlvOEY5cTcxVkFydW9tYTRJeUZBbTl4N0s5SysyRXIxLzZQVjhqalc3RGFYWlROS250OGc3bWEyU3g2NnpKeUEzR2F6aUc4M0FTd3lxN2MvazRGYnZPSGVQME5NSndiS1R5RWZ3S3kwS3BiaTluN0RhNmpNbU5sR0dWSEhOUjhsS3EzS3B1Y3NjNFA1TndqaUNjeDVJL2gzMlpOZ3pIU1lOaDVySGQ4WjFkK2N4TXRKZDhvelhSN0Qwc2NzWWFFaXpBQ2F5VG4rUFhHUTNUbFExRzZCanAwMjVibjZZNVJ2cmM4dGkzMk43QU1XbzVjN2VocHpsR3lRdnJjbzlrS2Q2Lzd0K3hianprdWdIRldEUzdEUzlkZlp1bkVTb1h3b2p1bEgxaEsreTM0V1E0eXJMejBmaTVFMTQyMVRNUjNTbWtEdXZiOXp2V2hVMnVDNUgzakxGOXVaclFha0V4b0hwd2RScWRKSnpCQ0dtMVpMOGdnaWVjMlBiU0JoZmRPTTMxWXY4dnJBeHIzUDA3MW9lTlNDN2dBL0xEWlVRYkxGV251bTJycFV2bTBneWViRHJydUJLWGRvSzlMZGVZNjJwSTV0NXM2czZTRXIyYkxxeUpWR3g4VGV5MUpCV2xrbmZOTHZNYjA1VGNNdUJmbXBKUG0xTnpxcWNvZWF1VkhEMmhrcy9tOEUrSkJReXNUbEhDWHV2dXJ3bG5VN1NTOUo5VDRySDBidkg0UWhiTURhNnp4THp5M3FCL3ZkZ2JSS1pUNTRqVElkWklnMi9iWTMrdjhRMlpZaDV1SGhTZU85cVZ2emV5cnhmOTNUMzQ4eHp4czFsY0RMSEhpVGJWL3B0OElMKy8rd0pYdVhub0szOWtpUHFSY3piRVNpNFdVME1wKzVYMmhwL3hENjBSTzNJejdFL2kySzgwWFRwNmcvWGxBcmwycmsyMHo5Q21YUGNoOXRyQmhhSi9obHJCai81VyswK3RFZjZUenR4alQrVnhYKzhJM3hWMXFQWDVtZjlQVzJodDNOdGl2V1A5MHd6dEovYlpaVnZnRTJ5YjRZLzlkZGkyTnR0RDkyamlrVzMyVjJkNzRKc3Y0UkMrM1dzSGN6UVh3YlA5azUxamFrMnBsd2ZJYnBTdlVEMmZGLzZUenV4aFBmd1ZWb1RaV0sxNWxZcmpSa1ErMllnL2pod3BxczB1eVU4SzVObVdudUl4dzNvRytTaDgyUVl1M0VWZFk5Rlg2bDFDblByOE5VY09sdGhFMFpKbHVoWFJteU9zUzczaVAxWnlqdFpCM0V1WDdoVklJdmhSczNmWXg0L0JHV2JzakVmNFhyYVAyaCtweDh2OW9yVUpzWEdwbE9hTVhVMmxyVS93SlFaLzh2d3BqT1JaNHZ5TnVMWXpYZktrWGtRMS9wRDFsNVlXbnZPZkthR3JmTTBqbjdtRTBRSHFZUGJkSTdxb3ZEdjlWZ0REaWJHUWcyTXA3eGxrSEo0RmpFTWFmWm1xSDdJTS9qKzcreC9zL2dNY1QzUE1BMTd5Y1hYQ3pyeGdXayt2MlhyTE5PWTk2dlFsMnhiRjdKUWRmMHhMcFBsZEhrWVlkenZDdVVqUkZkaDVqSVZrdjk5YmRwYlpxMmJubXAxcmRxN1orWDZ6OC9lY25XMTJiYkgybTQ3SHFGT2puMm04cjV4dDFKeGRjM2JOMlRWbmYxR2N2WkhrN0h2TDBIck4wRFZEMXd4ZE0vUVh4ZENibktGL1E2My9qZDNqZCthTDNsZU90bXFPcmptNjV1aWFvNzhvamhaZWRJU2o3eTFEbXpWRDF3eGRNM1ROMEY4a1E0OFo4bkEva01kOVplaFd6ZEExUTljTVhUUDBQV1JvaFJiVWxYYzFPOStJbldVdXE5bTVadWVhblFVN2g1SmRCanZYbFhjMU85ZnNYTE56emM3cnhNNTE1VjNOMlRWbjE1eGRjL2I5NGV5NjhxNW02SnFoYTRhdUdYcGRHYnF1dktzNXV1Ym9tcU5yamw1ZmpxNHI3MnFHcmhtNlp1aWFvZGVkb2V2S3U1cWhhNGF1R2JwbTZMdGg2RDQ3Q3JRendsbFNiUWZYcHdRN1ovT2NqRm9yd1pKNVhPZXdNZHZWTFBadnhqRHFMSVhyYnFKdlQyTFBxNVl3MkExRFl0Zm9XZGxWZ2ZGajZTMk1JVU4wTXF4TWtyZE4xcFBtcldpYjBLRHRtQTZWMWJZdHJtM2hMNE84amgxMU0rMXpFclBGWDZMMi9VTnJyMGozc3JLRTY2NTdUN2p1UmJsZTlrYS80OW9IdFJITW8xeXJPbU81MHFHdU1sNG5UOVNVZkpMYUU4MzNSQTJwWDdVbldzMFQxYVYrckpzbitpamtVOGJRa1NlOEFVT1AyUjNPa1dscmhxNFp1Z2hER3pWRDF3eGQ1d3FVRFAwNDVGTnRsc25SV3pHbTJzYmUwcTgvWFVTaXVFZXhWWC9Mak45a1hzbGp2eWJuTkEvWkREaXZ6ZjVaN0hqQmZpYjdCTDlOQ24wUTkra2dYM29ZOVFFSDF2SGI2djBEbGJaVTBiMHRaTE1MdE0yeHEyay93eitGQnVicDBGVHJNaTF3MlYrd2hITzBvQlp5bk5BaHlBdUFCbmxNdzRTbXd0RWQ5aDAwYjhhT2ordlFmN0E3OVJoV0hpSkpuUHFhWVhhSnZBbzgveWY3ZmhYZ0ROcjF2d0ZpRC9ETzIvQTNkdFh2dEZuQmZOUnFKSm1IZmJRSER6Ukgwcml2R0VwTjZSZzNoNStSV1N0b3lXWk01OFErV1RleS9FSjVMT1Zwa1lFczAySGF3R1NCckFQYUFmcFNuWW1LZURFdENkTjhxMjlWdFBwcDF1NG1mTGx1bGxLdE4zRU5mTVM0ZE1ZaWowL1l5KzBJVnVKWDhuWVEwZmRzM3pCQTlHTUZaZ0tkc05oK0QvMTNIYTJienA3WlN2ajJIYzVNRGxwQnNIOHo5aDk0VjkxYllhWW43TGozWUl2UVgzck5aZnFhZmY5ZG02WkljRXM2NXczM3BlTm4vWk05VDFQUzhVMjJINlQybHYxOWpWcjJLWFhXY0NOMkxEemxMT1hJaDdFamY5ZkU3MTBXdTI3ME9lTkhQazE5em5qUFZVLzZMUFZjdVgrcXMrVTdDNmtrbisxMlpxelU0eUxPZUROa3F5dEpIMEtwcVo1elMzbFdFWVN5ZEREdm5tcHNaVzJVSTZTMGNUTFBpRExWbUdTUGtVZVJzNHFNeHNlSzQvT2VKWGxHbm1hcGU1WCs3RStVejU0eWJrcXg5QWJiQW5LNHh1dFg5UjFOeHJYQXNWTzA1WE5reHk2My82SFZoLzN3SEEzMEw0R2h1NWdYbUtFUEtXZGZWc1BRajBMWjROWGVhK2ZvVDN6MDkwY010UDNSNUhweE50eUZYMXQ3UlkwZmJqT2FUZG9LSDN5Sk5iazBsbnJWVGRMVnBWOFQ0dDlsWG5NMVRLblN6YkxhSFdIWXl0b2Q5eitNd1A5bzF2NUg3WC9jTy85RE5TWnEzNlAyUFc3ZjkvZ20rbmFHU3J3TWQ3VXcwOURsY1NGNEV5MEZMemZ1bEpkWE01TGorSlhEL3BsMmdON0t2elFiNTVvKzRUM2h1U0Mvc2h3L2NCYjRnY1lhK29GdmtQOWVoN2szNlR6MUhPb21PNCs4UEFmWHJIOEMveWxsNUlEVlNHSmI1TXlubUYya0dUV2V0eXAwM21yMHJJaXVsTk8rSDVsRUx4TlArQzg1dTdja1BYUURQZFRYVGcrM1VQK2l6MXhNczZZSy9PNU9ROHJKczV5dWJJWmIyRjdxOTRVaWh4M09kZ0lHczR3cWhIeTdNa083NG5BckFiTWVCbFpJeG5QWW9GRk9ySllBWjFLeGhuSyt4Tm0wYjVsa1B1QWNMTWpwYzJCemszUHFEMUtyRGxRWjYxWGxqbFh5aXN2OEFicyt2SjlwSHBIeUFHTlJtcGVsK29NcXVXSVBLendhVERZZ0NSanZIczVSaFRPaERmUUpRRUozRzZ1dENuMFZqbm5vUCtValZid3BhNXZuSjNkWUx6N0FQRk1GU1Jnb0F3UEhrb01lZ010YUMyY1JvOTVaRStkK2lsWGszQ2RKNUdNYWw4clh3VHcyeVNUOFhtVVU2R3lmaHhHT0ZjeVlpTXpjT21Vc1ZvTjlpRjAyeGh2aU8rdlpFVjQ5V1dsWEZtM2piNGUyQ3NWczNKOWdKUTdNNG9PUHZSMmNYejFEQnhJd3NaYURKR0RnOVlGckxQVDdtbWpGQVdlUVU1UHQ2NktYQ0RMeFVBYnVyVWpnZThSVVBMbUlveStWdnR0WHJJZHhpLzFENnRuL3cxcEh1NGg1Q0YrQnR0MkMvTE9sbWEwSlQ3VjlkdFluOUJmUGNhNDdUeHYrRFROKzBUT2lPQWg4UGdVei9kOHpLZitNSGtINnY3S3J0ZUlaNFVhUUVUYi9KaU0rWDJyWlVuK2svYWJCKzk3ZUxtSHNkL21xSmNqN3RJSzR6a0QyaFJWTlU2eGdnbml1aFQ3OWxMVno5TkpuNkoyWTZISGNoaXllc21Qb3FjdU8rMmZLTSs5eXpLZExNSS81UVlZaWQ1QS8xdDlHam80K2Uzb0ZXTmxvcjhuUTdxREgyVUxkK0FtUHB5eWloWGJjUTl1aG80MW9ZcFhjSEhWb3p2YkJFVTRpMmx1Ti9qeExSU05aWTlhOUplYlBrbVpjRTc3bEZXdVhXUEg5TGxoM0c5OWFmdnk3eUxBUTQwSHRHVVY4Vk9XZmpQamFYeUFYeXdnV1FYMkxYZWNkMXZYVG51MmdXazQ5RG45RWZncVBmNDN6YlI5eDNlcFZ3VlVDWmYxb2E0Mzk2Qjh5OEZpR0I1SjFmWlc5YU43S2FNL1RtaUthOXlpKzlVWnhGMVNNR3ZoZms4Ly9kTkVUYUNmMFJkU2FmbGtqUHgxTE9kOXpqSlVlTUpjaHBMQ0QvczkydUtleS96VkhQQnRZdlR2RlBKdUxTSnRvUDEzdUZjUGZKcTZaRXZYQTRIWE4wWGVEbU94Mi9DOEhuL28xdzBvOGRiSHg5SVB5ekUrOGxhdTMwK2FPVnFVRmFiS1V4eU90TzR4WGlJdjNYaHhnajkrdmZKMWh2T3E2L3NVcGdjUDlXMmtZbDJTeEduMjUzaUYvcGFHOCttK2RWaHBDckZWMjFZRmN3Vkt2TmJ6OXRZYWRXMkRscjFOV1RhaFpXTHdmN2hpdkQ3NWVjb1p6MlV3czEvTFZUUHgzWXVMeWE3Ni9MQ1pPcmhXc3VmaExYZmVkeHNYZnNDZTdRTjkveHZSQzFDUkd0MVdaQy9Rd0swanhwc3R6ME4zSVdqVmFSZHRnSEhTM3EyaFhWWk1ZeFMvT1lEQWFQeXZpSlJoVFhZd0NvVmFqSzdHa0cxd3YvY3d1enVhWkJlVDdERFdSbnVBU1J3bG8rUFlOcFQ3RCtZWTIycGt1U3IyRnM0dmRtTlNubURudXhxUU8vM2w0N08za2tGZFZJWmlQNnQzcXd2ZFlEL09aOTRwV1MzOW1ueTB1RFZpTHQ4ZDFKR3BCSWFkTmJGaDlicnFEbG5DT0k1enkweDJjYTRqbXAxdFlCMlBpZkFMOHBlOFc2dFA5MW8wc05LdkxhRXVhZVpoZ2I2RGZkeVVucWhtOHYzTEtRN1M2ckRiUUY3c2tEK1lPNVFQYjdxOThWQ2pHWmZJRDFwYWRhNVFMdGxrZnp2a244TEFodW9oSzVidXdQbkRGTW1relNiU3hNcWVORlRyd3Q0VzJzb25lMGYyVlNSTER1RVFlSXZaenJOeUYrRnhVdzRvcStCRkdXVmZJaVc4MGVyY254RlhYT0s2aTk2N2lsY0RNMlJ4amJ3OGpYWmdmbWVNWlFqb08rcUp0SEI4TnZrckc0SjVybCsyQmlvb3FkY3hwK1lpdjBVOXdJNUdvbkZsWVZYMTZHYVRoZjBjMkU2TC9HLzRkN1V5dUY3M2Q0Zm5DOHp3TC92a0QrdGJBLy9tOVVTRHg3M0FPQk43czZ5QXFiakRqTWczeTdKZVlyUi9pNkp6NzQvN0pkTUd1c1hOOGpvMTl2akRuSGIvWFB6eGY2SDd2Nk9oOE1XY04yK3o0UFhzUEQ3SUh1TTgrd0crOUlUWFBzZGs5NWhmWUcrRDM4UVNQSGZUdzIyQ016VEZ0dEVmc1dOZnZUV2puaEs0K3Nla21SM1E5YWc1M29KZkgwS3VHM3ovUm9UdjlFd011MHo4eHNSbXdqUVpyREdwTWFQeEJGQnNQc1FuZW5oUFlCeStSL1RwTjNjUHhHbENmQi9TVUEraXN3YjdoY3czR2ZUeGtQS1o5QjlTY1FlTlB6bnJYQzdyeEF4WVlrcEY3eHdUKy9Icnhjc1NPNlRUOEE5NU83Ti9ZOVppRUo0ZnNLU2FIL2ZORjI1dFpIcjZOWjNJMldNNkYvTDJ6MGZWaWNEU0JSOWdkanFFWkRmRkpSanVvZ0VQVWpSSHNnb3VNSnZ3N1EwTDNkMFpEYW14NDZKMmRYZnkyMDhmR25vRDZqSVo5T0dFZkx0cndmeG45ZXI1b1FtdlQxeE5xUm5EKy91QVFtbDlzT01aaDdSNTluY0RsZnJGN0NPeHdoSWdlUStmMjdTRnNHOXFuMFBTcEdkb29nVjM3Q0U3YjI3WGhZWTVmMmZCdGFPTzNnd2txMXNHRWlMS1BCQStEOWs5c3NXemFQeHZnc1dkSDJQL0pHQy9Iem9UbXJMK0RGeCtjc1F0by92R1JkYjFnZjg0WExSOGJqeHFkbW9iVXNIWUF4elAxYWZyWU1JTnhiRGZvV3JiT1c0TzNKclo3eDd0dzNHUUhSOXhrOUJLYU0zZ1EzZC90bmVJeHV6M1V1dDNlRG03dDcrQzMvdEgxWWppWWVJdkd6MDEvY2pLaUQrTkR2cVYzd2ovNHUyY0lzWDkwekxwM2ROekhhL3FqL1dNTWFFZWFnK1ptbTVtM3d5TVUyT2h3U0EwYytsODR4QXdNUllIc2RUNzFhaUxWVXlwaWpxUS93MUtMbnpCc05iQXdybzFsc2xNMDVWTW1KZFpqLzNCSXduM0ZKRDNjZWNWbzhQaytiRGdkbzg0TitTaDl5UzR6UlU1ejBDZTg5SWREaE9qSXh1T09kdkV5L1VOVWdOMGhVTUllWEhMM09XemZHOEs5ZlAvRklYdm1GM1NRN3lmdTErRDMyMFIyaGJlbXcxcFhtcnVkeGU3WUtIVEh3NlA5WU1QWnlRRGZla0JOL0IwSU9KaW5OSmFuTkpRNzhaSGNuYnVRVEp6czRHTVVmcEJ2UThCUW9vcEgwRXVDNXUrUCs5ZUwvWk16NlBqK3lTdHNiUGJOYkxIMkZiWENlREZ6NXJFeitzeXgyTy9qUGZmN3p5Tzc5dnNITU1EN0wrQkdKellTN29tTkN1MlArcnZzdG1NMFN5L0dSMFM3dTVGbS9Dc2pxWlkxYjNqV2ZDWWpldGozRmpvYnlhRC9yQjN2MmQ2aWJmaGoreFNOemY0dTJscm93d2llTzJKZ043aUJIZkUwdzNua3B5ckp4SUxPajlqMnZ5RGtMR0pldlF6enF0L1V2SFpiRmMxcnA1QjVMWVRNdjZ1UXdhVW83OUNSL29rSERnNFdEOHh1RXpQOWhwanBxOExzSWNlTURQc0hYUHArbGVPdVdWWGROZGVOWWRQSXdNYnRFRGFtVVJvZDNTSjRISUxISVhnNkJFK0g0T240OW9qeG16djFiWnUzNEI0WXpCV3diZjZoR0lEUE9JRGhha0I2NjJyMHlDaVk3TUtJcHRITVF0TXA3L3htb1NscG1yUGMwWWtRdGxvS0NPMVJqL2JZMUJZSkliWTRvR0pDYTFzYkMrT1hPMnFWV09vc2tGbnF1QzBSU3VnVlFva1NZVmFJVVpFd3F4QTZaUUt0TlVWbkt4R0UzbENEbG13clZ4eUtyaXhNcjh6N2E0bU5vUFErWXZNR05VTUU2b1JPSDFNcFY3ZklPcGtjN2xvVkIxYURvR2tRTkEyQ3BrSFFOQWlhUmtGb3RnSm9najJvUmhUS2ZyNlg1S3pIM1lZbXdkUWttQnlDeVNHWTFFNUJVWmpDVVpnRms3SGVNQzF4bkQxSlVTYmtwUElZM1RrVFpTSFVKSVNhaEZDeklFSlBsUWhOTUZYOEFSUFI5MUdUektWcmtocW5QbHI5NmIzRnlhaUkweU9PMHc3VEV2cTV5RXNzNG44VFRJa1JXc1g0Q1BvZGdhZGxFVDY0UHhlZmpwVmgzekMyaXlBMHU2SHROd2doZ3hDeUNDR0xFTElvNEFPcHhpSStlQXdNVjlpR01oaUt1Qm1tYVA3UzZHVlJlWDZDcVZTMGJDRDFMb2ZTbUdZRnp6S1VwY0xueW1BYTNXSmdQdUZnN3VKc0diM3pTNlFiUGdjVmFRUW81Rml2WWpDMlo0UmpXNlJtMUk1RVZoZ0RwOGJHcTVIdmIxV09ZNHhPTVFSN1BQL1FxNFRYUm1RUVV5M2orK3lFRmtkTk53dUhObnJES3UrbU5oc0VHL0luQU9kbFpSdXFJZmNiTUF2UE81ajZyRFIyMlFRbzlLM2pFbkx6SlRrYmpTeG53MWlwc2xVRjZGZkdhelNWSHdYSWFoSkErbFRTTFpFdGJSQkdiaGF4Z1ZyazZ4WWFrQWhPTFI0RG9WS3RaRlRLdWhVUVc5VUJPc2FpQVJpZzd6TFZUTzh1VjgvdWd0U2lHRDBNTUtMRm15NldibHdFQy9KaUdheEMxTVdSUWJYSzlkQjB3K1h3Z0Frc0NFOXJ6c2tMVGdhQU1IRmF6RzRXVkxBeDB5dGpQbWNmZWttOXlzWk1hTlJ1TUllY0hYQkx1T0ZES1V5bGhGdmJMYTlXRnM4dk8xeXZ6Sm0xYk53VUE3TW5zczNjM0JSSHNvcjNwblk3TUkyZkRxWnJsQWN6OE4yYUJxRkoybGdNVFgxZTJQa2didzFBOUNvbzRZalcydVJQUGtwSzZGa0ZIQS9QcWpCMmhXbmdPb2d3TGw4RlFmTnM0ZnlDYlNBdldIeUlBWXNmeGdydDNBZ2d2c1NaOGZlUkY0VUlxK0ZvZitURXJSMUN0a3ZJb3FtTUlOdTRhZDdSSWx4SiswQk5PdHpvWWt3QzBNSmNGbFVrcFdQYjVObEhadDRvZnUwU3VpME9iNHZqMitJQTA0aUdEMU5QbWxFQ2IzbDhnTWEvR0pqbEF0MTRuSXZ4VnNYa2Z4RTFUYUpaUUZGTlE2V29MWTRrQnpJTngwQlJCWTdTdU0vSGNZTFR3NjcyUjVrUlh3aklZdDZnR2trYzZHQjBwa3MzMWpqaWNUUUxJTWZSb1U5a2tJNm9ZTklCRmlKY1liWDV1ZlpCR3VxRTZydmxUa3NWekJzMGxsT1FvSWF6bFpoeTczRVU3VjV5aWowYkxKRXJQdURMTWNNWGgwTVpsbXFDSFcwdjZtTWp4cE5rc1JNOHFYU3QwUkFWRFh5ZGxZSlhIcW8rV3U4LytQdHI0Sk1NVllwQktUTnc5ZWE4U0twUDdTNnVVczhvMDVmTXJXUmpKeVp1d2xXLzZlakplU2xYbWQwek1nSzRNRWFwNEd1dkRMeW95UTBkYlRGczljNDhodWMzSE04VFJVMU1EK3NXSFcwV1c1MlJITEt5SGpyS2VLK0FJWWJBS2lPWjREcUVwTUU5RzllUXdyMFpkN1RKUzgyeElZd3RDYzhPQjdSRGlMcTgxTWpsbUxvZDJTTERoN0g0a0N5YUdRY2ZoQTg1R25PckE2WGU1RlhheWVoUkpZck5pQ2hvYVhMZWJJaFQxdFFJSndqTWI1NE9tNUpQS1d5M2NOWnh1Q1E4U3IxQWlBTmJCMXdhQTVJR1lveW1lUWM5RElRYXFwSEFWRnN0QWxIM2NqSDhRUjB0OGxtQllxaTJLNkpheUh4elQ5MXpwTlFyNXdackdnUFZVb0hhc3RUSzNPUjFBazFlS01EYWVPNmZuS0V4K2o2MlBlYUE4KzhBdE80VkJub3pTQXJSdXh6ZTRZcmFBaFpMSkxYRjVKVHV6Rzg2T2NXaGJVb0tHMmRkY0poc0xBcE9wd21CTE5ZWG1OUUNzcVpMeUdKcllvc0tpd282NXJnZGNCenRoRytwd3U5aGdOOHRjSzA1SzhTMVVsSWpvTnJNYVlHVUVMSWdna1NaU2xwRnJ3QzBWYUFNdEtEaTBzY2MzcGYwdWhLZUJvbitZRWNaOTkzamF1ckYxZFJ6bGtTck4zVkIxWlJxcU1JaGNnU2l4aXVJZ3VTcG1Id015d1dXUmtlWmdVTTNOUTlGeUtXVmpDdE5rWDRERi9kR2NhV3BBaExMWXRNS1o2dkJXS3dPUzVxR0R1S2hZaFVQSllBVTRXUXc1cEV5YnBUSVZGWnhCem01TU5XQnpyLzRNRDZKc0dxRFdGVXFSaGE1anpHM091KzF0OUl3ZjRWUlFQWXc3NVJQZFFwWWk1VEdjek0vVmRZQlNrWmVPY3pUVEZGYUxpNmVid2ZZMExqYmlhQXFIejZxcGN3MjVxWnFlRXVUaU1vdzNXd1VSdy9WUFFuZjFNcFBaUWJ3U2FsTTBHL0VqejZZOUlIY0pCWXRrWnNFSDlDTmJ6WElUMExMTXhZcVNoNXBNVXhGcWNRQVh6aXVRQlFlSm1MYmhka3BZOXd6OVJFeFZLV0kxZDRSeDlSVVllcDIxSDVubDhlbFhaN1Y3TGJJalVjRkZCbTNYdWh0aWd4Y1ljVVV2aEs5T3d4V1JZTzNkSzZDVTI5eVBGdHhQSjBTVnJ5bHBNMkdpallwSVZ5bERrcFluL2pLRjRPYkgyeE5iRW54V3B3TFpidWREbHJvb05OTCtmRVZhcGxqdWxsMVVydUVuYUY0SnhKTmxwaTFaYlNwSE5Pd2ZjQzNEMmg3b0g5b1lkcmN3TFJwV0FzOXhGRjlRR0dScXA0TVhpMzlUZ3QvWGxDNDdvOENkWHhEUy9yeHRRQnl6WUNNYnF0cXJLNFhUOVlGVnR4c2xaK3dFRlk4YnkzV2dmQi9EcEwrVHg1MER6aDBwdGF2TUlIYkxsTEdXQ1E5WjhhOXgvamdaV3FpQ01HTGhUbEdSNUhaT0NCdnB3eE9teUZPMm5id3JyaE14SlFXdVZqbHA0Qk16emZKcnRJaTYzT1Y5ZEJ2RmJJZk9XVDA4ZzhYNjRrLzhoODNFeStnR2RFTEVYSnFXSlRKWWFySUtJcWttYTk4RXBJWXdTU3phcVcweitSUm9NbExqVm1MbmcyZkZPTlpObkp2dUYyT09kNUltSkgwVUNlZUhVb3B1MDBUeU9NZ1lIeVBEdVViL01YSWo3bExWdlhsMVhobjRkOVJsdkZCM0JxQjN5aVRKVXJUWlBMSTdhVHh6a1B3U1FUQnZ6RG8zc2JJc2pTR1dKdFJvb0E1d05IS2Q0RXFyeVlISDZlQXZjRmcwVzByNXNWeDZnZzNpQTlDVzBjOC9JRkhwQlI4SkI2UzAwZDVVaEF6SkFGNWxKd2hVYzgxWlFvaU1jV3U1Qk96MjRuUGtYaEtlNmJPMDB2RkNxNWFwVld1dmJ3WU81d2Q0YjVWTkxPTVpBUG90NXVFdmhUTUZ3Vi9vRjFnZld2WjZha0s0QmV5aWxnMUY4SGVVYWJ6aEYwc2tuT1dveW9sbXdqNkhnZVRUTWxndEtodlFlOFd2aWp5enFjbCtCYk40bk1pRW9iZC9HU0pxTFdSZ3Frc3o4SWZEUHZYaTdWN0ZkUWdHdHBSaC9oeVh3amhwQzVGOTV5bTdxbldKWU82eEpyOW9FZlBXSC9jNEFVVU0rNVdYVVhlcC9BeHNQMHVuOHE4NE8vRmVSbThybUt3LzRJQkQ2OHRnb3Nmc3MvNzhPNGg5bmszOGdLenlDNWQ3T0x2WDRGOXIyQmY0K2JYMFN0ZVF1eGkzeEU2UHlhNmgxeDB1N2dpeWNYWGlpZkZGL21KU2tsODBUM1Z4R2VTK014YWZCWEU5NFNMYjh6ZnYwZS9aUmNYNHBOQVZLcGpUZ3NjVTAyd0RnbldxUVZiUWJDYndiaUVSQ0k0MUZHejZFV1NqR0xmYWNhK2FnSzBTSUJXTGNBYmpFenhLeEx2MGJmaHNFa2pVMzNNYVlGamJrUzV1bDVMdG9Ka1EvZkx3UmVBaGZYTUhrOWppKzJuS2R1clNhMUpVbXZXUXJ1QjBFYm9icnFSVmVzZUQ1bkY5dE9VN2RXRTFpYWh0V3VoM1VCb0EvbzFuUUFXSVp4dysybks5bXBDNjVEUU9yWFFLZ2p0TVJmYUhsL0QrZ0ZKTCtxL1BPWmlVaDF4bW50RU5aRjJTYVRkV3FRVlJQb3RGMmtQSjJjL0JrVVlYckFPNmpJWWcvTFdhdUp5U1Z4dUxhNEs0dG9JZ2tJWU9mUkdIem1lRC9mSThYeTRwNXJvWmlTNldTMjZHMWk4bHhxOXhGdTJlT0gyMDVUdDFZUTJKNkhOYTZIZElGWWZoWm4rSUNqWURQekk2TDdUakgzVkJPaVJBTDFZeHg0RjJnUnZHTytqUk43Z1JJUW9EeEhhSSs4L3pkbGZyWk02eng1RDI5Y2p3QTc2UnV5YkdmdG14YjVOU0FEN21CU3ZvcTFQdUxiQ25pbSthdU1LRjExYzRHOENodnJhVWl1SjJRRmxpdXo2MmVpRWU0MnUwNDd2dFpyaDNtbExQcmVWZFdvNzQxUmQ3cEU4VE81Zjk1YzNPbXNXV3lGT1d4eW5NUzVYMnNkeVBUZzJPWUpNVlFlcEgzRk5pU2dLL0pmYWV4V1FxN3JKbXFBTVJVTHZzV3p2U2p2aDY1ZCt6OWRJbzl0d210MFVUV3E3dklQNUdsbnNPbXN5Y29QeEdvN2hQSnpFc01ydVhENU94YTV6eHpnOWpUQWNHNmw4QkwvQ3NsQ3EyOHNadTQwdVkzSWpaVmdseDF5VXZKUXF0NnFiM0RIT3p5U2NJd2puc2VUUFlWK21EY054MG1DWWVXeDNmR2RYUGpNVDdTWGZhRTAwZXcrTG5MR0dCQXR3QXV2azUvaDFSc04wWllNUk9rYjZ0TnZXcDJtT2tUNjNQUFl0dGpkd2pGck8zRzNvYVk1UjhzSzYzQ05aaXZldiszZXNHdys1Ym9oZkU2UmYvMzZicHhFcUY4S0k3cFI5WVN2c3QrRmtPTXF5ODlINHVSTmVOdFV6RWQwcHBBN3IyL2M3MW9WTnJndVI5NHl4ZmJtYTBHcEJNYUI2Y0hVYW5TU2N3UWhwdFdTL0lJSW5uTmoyMGdZWDNUak45V0wvTDZ3TWE5ejlPOWFIalVndTRBUHl3MlZFR3l4VnA3cHRxNlZMNXRJTW5tdzY2N2dTbDNhQ3ZTM1htT3RxU09iZWJPck9raEs5bXk2c2lWUnNmRTNzdFNRVnBaSjN6Uzd6RzlPVTNETGdYNXFTVDV0VGM2cW5LSG1ybFJ3OW9aTFA1dkJQaVFVTXJFNVJ3bDdyN3E4SloxTzBrdlNmVStLeDlHN3grRUlXekEydXM4Uzg4dDZnZjcySS9BcnlZL1JaWG11SFdDTU52bTN3aS9EQlBOdzhLRHgzdEt2RWJ4MXZzbkgwQm1PUEUyMnEvVGY1UURtL05id2hWbkt4bUJwSzJhKzBOL3lNZjBpL09id1orWVY2K2Rqa0x4UnZzTDVjSU5mT3RZbjJHZHFVNno3RVhqdTRVUFRQVUN2NDBkOXEvOGwvS3gzL1NXZm0vYlp6Ry9lMjhIZWM0VGViNFpmUFhiYkZDSDdiR1g3c3I4TzJ0ZkczbmVGZkU0OXNzNzg2MndQZmZBbUg4TzFlTzVpakNYL1IrWi80ZStwTnFaY0h5RzZVcjFBOW54ZitrODdzWVQzOEZWYUUyVml0ZVpXSzQwWkVQdG1JUDQ0Y0thck5Mc2xQQ3VUWmxwN2ljZkFiM3ZDeURWeTRpN3JHb3EvVXU0UTQ5Zmxyamh3c3NZbWlKY3QwSzZJM1IxaVhlc1Yvck9RY3JZTzRseTdkSzVCRThLTm03N0NQSDRNenpOZ1pqL0M5YkIrMVAxS1BsL3RGYXhOaTQxSXBUZmdkY1pXMlBzR1hHUHpKODZjd2ttZUo4emZpMnM1MHlhdnd1K0pmODhobkxtRjBnRHFZZmZlSUxpcnZUcjhWd0hCaUxPVGdXTXA3QmhtSFp3SGprRVpmcHVxSExJUFYvT3I1d3dqamJrYzQxNC85Um4xeGRoNWpJZG52OTVhZFpmYXEyYmxtNTVxZGEzYSszK3o4UFdkbm0xMWJyUDJtNHpIcTFPaG5HdThyWnhzMVo5ZWNYWE4yemRsZkZHZHZKRG43M2pLMFhqTjB6ZEExUTljTS9VVXg5Q1puNk45UTYzOWo5L2lkK2FMM2xhT3RtcU5yanE0NXV1Ym9MNHFqaFJjZDRlaDd5OUJtemRBMVE5Y01YVFAwRjhuUVk0WTgzQS9rY1Y4WnVsVXpkTTNRTlVQWERIMFBHVnFoQlhYbFhjM09OMkpubWN0cWRxN1p1V1pud2M2aFpKZkJ6blhsWGMzT05Udlg3Rnl6OHpxeGMxMTVWM04yemRrMVo5ZWNmWDg0dTY2OHF4bTZadWlhb1d1R1hsZUdyaXZ2YW82dU9icm02SnFqMTVlajY4cTdtcUZyaHE0WnVtYm9kV2ZvdXZLdVp1aWFvV3VHcmhuNmJoaTZ6NDRDN1l4d2xsVGJ3ZlVwd2M3WlBDZWoxa3F3WkI3WE9Xek1kaldML1pzeGpEcEw0YnFiNk51VDJQT3FKUXgydzVEWU5YcFdkbFZnL0ZoNkMyUElFSjBNSzVQa2JaUDFwSGtyMmlZMGFEdW1RMlcxYll0clcvakxJSzlqUjkxTSs1ekViUEdYcUgzLzBOb3IwcjJzTE9HNjY5NFRybnRScnBlOTBlKzQ5a0Z0QlBNbzE2ck9XSzUwcUt1TTE4a1ROU1dmcFBaRTh6MVJRK3BYN1lsVzgwUjFxUi9yNW9rK0N2bVVNWFRrQ1cvQTBHTjJoM05rMnBxaGE0WXV3dEJHemRBMVE5ZTVBaVZEUHc3NVZKdGxjdlJXakttMnNiZjA2MDhYa1NqdVVXelYzekxqTjVsWDh0aXZ5VG5OUXpZRHptdXpmeFk3WHJDZnlUN0JiNU5DSDhSOU9zaVhIa1o5d0lGMS9MWjYvMENsTFZWMGJ3dlo3QUp0Yyt4cTJzL3dUNkdCZVRvMDFicE1DMXoyRnl6aEhDMm9oUnduZEFqeUFxQkJIdE13b2Fsd2RJZDlCODJic2VQak92UWY3RTQ5aHBXSFNCS252bWFZWFNLdkFzLy95YjVmQlRpRGR2MXZnTmdEdlBNMi9JMWQ5VHR0VmpBZnRScEo1bUVmN2NFRHpaRTA3aXVHVWxNNnhzM2haMlRXQ2xxeUdkTTVzVS9XalN5L1VCNUxlVnBrSU10MG1EWXdXU0RyZ0hhQXZsUm5vaUplVEV2Q05OL3FXeFd0ZnBxMXV3bGZycHVsVk90TlhBTWZNUzZkc2NqakUvWnlPNEtWK0pXOEhVVDBQZHMzREJEOVdJR1pRQ2NzdHQ5RC8xMUg2NmF6WjdZU3ZuMkhNNU9EVmhEczM0ejlCOTVWOTFhWTZRazc3ajNZSXZTWFhuT1p2bWJmZjllbUtSTGNrczU1dzMzcCtGbi9aTS9UbEhSOGsrMEhxYjFsZjEramxuMUtuVFhjaUIwTFR6bExPZkpoN01qZk5mRjdsOFd1RzMzTytKRlBVNTh6M25QVmt6NUxQVmZ1bitwcytjNUNLc2xudTUwWksvVzRpRFBlRE5ucVN0S0hVR3FxNTl4U25sVUVvU3dkekx1bkdsdFpHK1VJS1cyY3pET2lURFVtMldQa1VlU3NJcVB4c2VMNHZHZEpucEduV2VwZXBULzdFK1d6cDR5YlVpeTl3YmFBSEs3eCtsVjlSNU54TFhEc0ZHMzVITm14eSsxL2FQVmhQenhIQS8xTFlPZ3U1Z1ZtNkVQSzJaZlZNUFNqVURaNHRmZmFPZm9USC8zOUVRTnRmelM1WHB3TmQrSFgxbDVSNDRmYmpHYVR0c0lIWDJKTkxvMmxYbldUZEhYcDE0VDRkNW5YWEExVHFuU3pySFpIR0xheWRzZjlEeVB3UDVxMS8xSDdIL2ZPLzFDTmlkcjNxSDJQMi9jOXZvbStuYUVTTDhOZExjdzBkSGxjQ041RVM4SExqVHZsNWRXTTVEaCs1YkIvcGgyZ3QvSXZ6Y2E1cGs5NFQzZ3V5SzhzeHcrY0JYNmdzWVorNEJ2a3Y5ZGg3azA2VHoySHVzbk9JeS9Qd1RYcm44Qi9TaGs1WURXUzJCWTU4eWxtRjJsR2plZXRDcDIzR2owcm9pdmx0TzlISnRITHhCUCtTODd1TFVrUDNVQVA5YlhUd3kzVXYrZ3pGOU9zcVFLL3U5T1FjdklzcHl1YjRSYTJsL3A5b2NoaGg3T2RnTUVzb3dvaDM2N00wSzQ0M0VyQXJJZUJGWkx4SERab2xCT3JKY0NaVkt5aG5DOXhOdTFiSnBrUE9BY0xjdm9jMk56a25QcUQxS29EVmNaNlZibGpsYnppTW4vQXJnL3ZaNXBIcER6QVdKVG1aYW4rb0VxdTJNTUtqd2FURFVnQ3hydUhjMVRoVEdnRGZRS1EwTjNHYXF0Q1g0VmpIdnBQK1VnVmI4cmE1dm5KSGRhTER6RFBWRUVTQnNyQXdMSGtvQWZnc3RiQ1djU29kOWJFdVo5aUZUbjNTUkw1bU1hbDhuVXdqMDB5Q2I5WEdRVTYyK2RoaEdNRk15WWlNN2RPR1l2VllCOWlsNDN4aHZqT2VuYUVWMDlXMnBWRjIvamJvYTFDTVJ2M0oxaUpBN1A0NEdOdkIrZFh6OUNCQkV5czVTQUpHSGg5NEJvTC9iNG1XbkhBR2VUVVpQdTY2Q1dDVER5VWdYc3JFdmdlTVJWUEx1TG9TNlh2OWhYcllkeGkvNUI2OXYrdzF0RXVZaDdDVjZCdHR5RC9iR2xtYThKVGJaK2Q5UW45eFhPYzY4N1Robi9EakYvMGpDZ09BcDlQd1V6LzkwektQNk5Ia1A2djdHcXRlRWE0RVdTRXpiL0ppTStYV3JiVUgybS9hZkMrdDdkTEdQdGR2bW9KOGo2dElLNHprSDFoUmRNVUs1Z2dubXVoVHo5bDdSeTk5Qmw2SnlaNkhMY2hpNmZzR0hycXN1UCttZkxNdXh6ejZSTE1ZMzZRb2NnZDVJLzF0NUdqbzgrZVhnRldOdHByTXJRNzZIRzJVRGQrd3VNcGkyaWhIZmZRZHVob0k1cFlKVGRISFpxemZYQ0VrNGoyVnFNL3oxTFJTTmFZZFcrSitiT2tHZGVFYjNuRjJpVldmTDhMMXQzR3Q1WWYveTR5TE1SNFVIdEdFUjlWK1NjanZ2WVh5TVV5Z2tWUTMyTFhlWWQxL2JSbk82aVdVNC9ESDVHZnd1TmY0M3piUjF5M2VsVndsVUJaUDlwYVl6LzZod3c4bHVHQlpGMWZaUythdHpMYTg3U21pT1k5aW0rOVVkd0ZGYU1HL3Rmazh6OWQ5QVRhQ1gwUnRhWmYxc2hQeDFMTzl4eGpwUWZNWlFncDdLRC9zeDN1cWV4L3pSSFBCbGJ2VGpIUDVpTFNKdHBQbDN2RjhMZUphNlpFUFRCNFhYUDAzU0FtdXgzL3k4R25mczJ3RWs5ZGJEejlvRHp6RTIvbDZ1MjB1YU5WYVVHYUxPWHhTT3NPNHhYaTRyMFhCOWpqOXl0Zlp4aXZ1cTUvY1VyZ2NQOVdHc1lsV2F4R1g2NTN5RjlwS0svK1c2ZVZoaEJybFYxMUlGZXcxR3NOYjMrdFllY1dXUG5ybEZVVGFoWVc3NGM3eHV1RHI1ZWM0VncyRTh1MWZEVVQvNTJZdVB5YTd5K0xpWk5yQldzdS9sTFhmYWR4OFRmc3lTN1E5NTh4dlJBMWlkRnRWZVlDUGN3S1VyenA4aHgwTjdKV2pWYlJOaGdIM2UwcTJsWFZKRWJ4aXpNWWpNYlBpbmdKeGxRWG8wQ28xZWhLTE9rRzEwcy9zNHV6ZVdZQitUNURUYVFudU1SUkFocStmVU9wejNDK29ZMTJwb3RTYitIc1lqY205U2xtanJzeHFjTi9IaDU3T3pua1ZWVUk1cU42dDdyd1BkYkRmT2E5b3RYU245bG5pMHNEMXVMdGNSMkpXbERJYVJNYlZwK2I3cUFsbk9NSXAveDBCK2Nhb3ZucEZ0YkJtRGlmQUgvcHU0WDZkTDkxSXd2TjZqTGFrbVllSnRnYjZQZGR5WWxxQnUrdm5QSVFyUzZyRGZURkxzbUR1VVA1d0xiN0t4OFZpbkdaL0lDMVplY2E1WUp0MW9kei9nazhiSWd1b2xMNUxxd1BYTEZNMmt3U2Jhek1hV09GRHZ4dG9hMXNvbmQwZjJXU3hEQXVrWWVJL1J3cmR5RStGOVd3b2dwK2hGSFdGWExpRzQzZTdRbHgxVFdPcStpOXEzZ2xNSE0yeDlqYncwZ1g1a2ZtZUlhUWpvTythQnZIUjRPdmtqRzQ1OXBsZTZDaW9rb2RjMW8rNG12MEU5eElKQ3BuRmxaVm4xNEdhZmpmYUdkeXZlanREczhYbnVkWjhNOGYwTGNHL3MvdmpRSXBmNGZ6SHZBMlh3ZVJjSU5abG1tUVc3L0VEUDBRUitUY0gvZFBwZ3QyalozamMyenM4NFU1Ny9pOS91SDVRdmQ3UjBmbml6bHIyR2JINzlsN2VKQTl3SDMyQVg3ckRhbDVqczN1TWIvQTNnQy9qeWQ0N0tDSDN3WmpiSTVwb3oxaXg3cCtiMEk3SjNUMWlVMDNPYUxyVVhPNEE3MDhobDQxL1A2SkR0M3BueGh3bWY2SmljMkFiVFJZWTFCalF1TVBvdGg0aUUzd3hwekFKbmlKak5kcDZoNk8xNEQ2UEtDbkhFQm5EZllObjJzdzd1TWg0ekh0TzZEbURCcC9jdGE3WHRDTkg3QmdrQXpiTy8vSWZuNjllRGxpeDNRYS9nRnZKL1p2N0hwTXdwTkQ5aFNUdy83NW91M05MQS9md0RNNUd5em5RdjdlMmVoNk1UaWF3Q1BzRHNmUWpJYjRKS01kZGpqN2dyb3hnbDF3a2RHRWYyZEk2UDdPYUVpTkRRKzlzN09MMzNiNjJOZ1RVSi9Sc0E4bjdNTkZHLzR2bzEvUEYwMW9iZnA2UXMwSXp0OGZIRUx6aXczSE9LemRvNjhUdU53dmRnK0JIWTRRMFdQbzNMNDloRzFEK3hTYVBqVkRHeVd3YXgvQmFYdTdOanpNOFNzYnZnMXQvSFl3UWNVNm1CQTU5cEhVWWFEK2lTMldTdnRuQXp6MjdBajdQeG5qNWRpWjBKejFkL0RpZ3pOMkFjMC9Qckt1Rit6UCthTGxZK05SbzFQVGtCcldEdUI0cGo1Tkh4dG1KSTd0QmwzTDFubHI4TmJFZHU5NEY0NmI3T0NJbTR4ZVFuTUdENkw3dTcxVFBHYTNoMXEzMjl2QnJmMGQvTlkvdWw0TUJ4TnYwZmk1NlU5T1J2UmhmTWkzOUU3NEIzLzNEQ0gyajQ1Wjk0Nk8rM2hOZjdSL2pFSHNTSFBReEd3emszWjRoQUliSFE2cGdVUC9Dd3ZlWUltRGk0dnVwbGorMnNTWE1GSDVhMHZ6a1B3YmZDRUVUTGwyK09UNUZLZk9ZWnEyeWFURWV1d1BYekVSRDNkZU1mNTd2ZyszT1IyVHRQbENqWjVHcnl5SGhhWTBjVHJ6aDBORTU0ajA0bWdYbS80aHluNTNDR3l3QnhmZGZRN2I5NGJzTm9kSCs4R0dzNU1Cdm5LQW12Z0xDSEJVVFdsUVRXbE1kZUpEcWp0M0laTTMyV0Y5aC8rOU9HUW92cUI3KzM3cWczekwyTmhCRC9ZU29WVThncDc5Q1BuMzB2bTlOcGdWbXpPSXQ4Tjd4dTZuRjRJc2NUOS92ODk4Z3YzK0FRekovZ3M0NHNSR2lqeXhVUVg5L3dNQmZZTnFGQXJlelFBQUFMNXRhMEpUZUp4ZFRzc09nakFRN00zZjhCTUFnK0FSeXNPR3JScW9FYnlCc1FsWFRacVl6ZjY3TFNBSDV6S1RtWjNOeUNvMVdOUjhSSjlhNEJvOTZtYTZpVXhqRU83cEtKUkdQd3Fvemh1TmpwdnJhQS9TMHJiMEFvSU9ERUxTR1V5cmNyRHh0UVpIY0pKdlpCc0dyR2NmOW1RdnRtVSt5V1lLT2RnU3oxMlRWODdJUVJvVXNseU45bHhNbTJiNlczaHA3V3pQbzZNVC9ZTlVjeDh4OWtnSisxR0piTVJJSDRMWXAwV0gwZEQvZEIvczlxc080NUFvVTRsQld2QUZwNlpmV1NEdEJGZ0FBQXExYld0Q1ZQck95djRBZjFlNkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUI0bk8yZGpaSGJPQXhHVTBnYVNTRXBKSTJra0JTU1JsSklicENiZC9QdUMwakpXYThkMjNnem50WHFoNlFJRXFJQWtQcjVjeGlHWVJpR1lSaUdZUmlHWVhoSnZuLy8vdHZ2eDQ4Zi94MjdKMVdPZTVmaDJmbnc0Y052djY5ZnYvNnE5OXErWi8xWE9hb013L3VCdk0vaTl2Q1cvcm03dG83VmJ5ZC9ya2RYRFhzK2Z2elkxdFZLL3U3L2JILzY5T25YMzIvZnZ2Mzg4dVhMZi9xaTloZTFyL0lwS2kvTzVSam5rVTc5WEs3YXo3SGFiL21UZHAxYmFWcGYxYkZoejByT25mNHZPdmwvL3Z6NTF6YjFULzh0dVpRTWtEa3lZai9uVlA3SUZKblgvbXdYOUd2T0pUKzNFOW9DNVJ2MjdPUmZNdkw0citqa3p6SGtRbisxREpGenRSWDNXZVRITmVBK3ZqcUdQZ0RLWXoweDdObkovNnorVC9sMzd3em9lZVJlZjZzdElOZmF0aXo5ekZqSjMzb0E2UHVWbm5YRDBITk4rU1BYa2xWZDZ6NUlYL2VZd0huNFdaTEhkcm9oMjRuMWpPVmZiY1JwRFA5U2RlTCtjN1FmWGMxWW5HMGZwMTluK3lsWldkNHBEL3B0NWwzWGVTeVhzcXh0MmlCNmhqSEo2cHBoR0laaEdJWmhlRVVZeDkrVFI3RFhwLy96YnkvdldmTGQraDVjNm11Nk52V3VlSVRMNk8xcUI4L21aMGlkOEpiMnZydVc5L09kL00vWThZOThobm1lOTNXK3hDNjlsZnovaHY3ekZseis5TE5oejhPbWprMG0vWGZwMjhNWDVHdnBJNTNQa1Bva1A4NWQrUU5ONTIra2pGeVAvY2krTE5zdjdkL2FwWmZ5dHgvaVVkdEF5dDkrTmg5elB5bDlpYzRzdVNBYmJMN3M1NXowQzlobldDQWo3SFlGNTFIbnRBK1Q5bWUzSGRvTTkwS2VtUmJ5N3V6Wm1WN0szM1gwcU9PQnJ2OERkV2k5NEw1dFA0NTllMTJNMEM1K3lIM1FkbC8zLzBvNzYzam5iOHhuU3ZicjlGbGRrdDZ6NjM5QXR1a0RMdXlyS1puaGIzRi9RNWI4djVNL2ZkOCtRTWY3V0ovQXp0K1k4aWN0L0FEazA4bi9LTDFYa1QvUDl2cWJzckc4aS9URjJ4Zm4rdDdwQnZTSjJ3bTZ4Ym9ZZHY3R2xML1A2K1JQbk1xWjlGTCtuTmY1dy81MjdGdExQMXRCZmFVL0xmMTM5dTNsdGRSdDBkV1IvWDA4UjhoajVVdUVsYjh4ZllpOHAzWGw4WGptVEhyZXBoNGVWZjdETUF6RE1BekRVR05iN0p2OFBENi9aMXc5OW9BWlk3OGZ0bjN4czAyK2l3dTlGWC9EL01ObloyZlQ2dnpnMWdub0RzZUU1OXpBOUMxQ1h1dnphMTluUDh6eW9LOUdQNXlqczZzZy81WGQxM1l3Zkh6WWp0QWIySDg5eDZkSXYxREc3dHRuNTNQc3QrTXZ4MmdmMkpIeFNRM0hkUDNjZmhmWGU1SHk1L3B1WHFkOWdiYnZXdWI0RDdwNVJKN3JsL1BQN0xmek5laUk2Zi9uV01sL3BmOVhkdkQwcGFkUEhSc3A3U0w3c1dNd3poekxkbG5nazlqRkN3ei81MXJ5NzN4KzRMbGZKUy9QQlN6TzlIOXdYSURMeWJsNXpyRG5Xdkl2ME1ucE95OTRoaGZXNGM1ejlmeGY2UWEzT1QvL0hhdFF6Tnl2TmQyN1hPMWJ2ZU41Zk43WkFoakQ1L1hFalRpZDFNL2QrSjluQU9UN3Y4dktzVXg3NUQ4TXd6QU13ekFNNXhoZjRHc3p2c0RuaGo2MGt1UDRBcDhiMjl6R0YvaDY1QnFyeWZnQ1g0T2QvTWNYK1B4Y1UvN2pDM3c4cmluL1lueUJqOFhLNXplK3dHRVlobUVZaG1GNGJpNjFsWFRyaGh4aGZ4SS9iTVQzWGtQamxkOFJkbXV0ck5pOUk2N2cvZHgrWmZ1UTdpbi90RE04TTE3WEI5c2J0cm5DYS9Dc1pHejVZMy9CSnJkcVN5dWJuT1Z2ZnlKbDh2bzhMdVBLbm1DYndlcGVLRE42elBMUDl1aDFDcC9CcG16Ykt6YTcrdDkydE82YlBKbUcxeEREcjRjTnZtczNYZjh2Yk5OakcxdGcvVS9hOXZuUWJuMjkxK2Z5bW9Tcjd3dVJSOHJmNjQ2eEJwclh4SHAwa0JHNFhuYmY1RElwZno4N1YyM0djdlUxbmZ3ZGIrUmo5aCt6bi81SmV1dy8rcjZZajVGUDd2ZDZlUGVNZTdrbTJNY2grNFZsdVhvdS9xbjh1LzJkL05NWDFNVWkwYS9SN2FSLzlBMjUzVEg4Rk5iejVNSHhSMmZYLysxN0s5S1BBN2VTZjljZWJQdDNQQUg5UFgxSDNiM3Mya2JHcUpCZStpa2Y5WjJCdHV4NlNSMXc1RWUvbGZ3THIrTkw3QUNzMXB6T2U4MTcyY25mWmNqdkMvdWFSNVYva1RFeTZjZmJyYS9QY2Erbm1XbDFiV1lYbDVNK3Z5Ni8xZjdkZmF5dXpldnluSzUrbm1Ic1B3ekRNQXpETUF5d21sdDF0TCtiSy9BMytGTjJjYXpENyt6bTFxMzJlYzZGNXdvZHZUL2VncEYvajMwWXRxSGxuQnBZK2VkMzdjVzJrZHAyekQvZjViRGZxZkQzUlBEL2dZLzVXdHVUOEMxeEw1WS8zN1B4UGIvcVBCSEx6SDYyakp1SEkvM2YyZWF0LzlubXV6NjIwOWxHYS8rTTJ5Sngvdmg2c0FGeXJiOVI2RzhKT2NiRWNxWXMrSWp1cmFkdXpWbGJPeHp0cDIvbU9nRXBmMEFQdUMxZzE2Y3QyRGVML0NoN3podXgzNitiVTlMdHA5MzZ1MEN2d3JYbDMvV2ZTK1R2T1Ivbzd2eldvTC9KdUpOL1BnODZuMjdCTStrVjV3cGZXLzlmS24vcmJYU3dZMjNzdzBNKzVIR2svMVArdEkxTWsvZ1F4d2c4c2ovbkVqeHVvby9ScjI0aC84SStQZmZuM1R6eXZEYkhmenY1NDhlcjlIUDg5K2orM0dFWWhtRVlobUVZaG52Z2VNdU1tVnpGZjk2SzNmdnFjQjE0NTdZL01OZUx2QmNqL3pXZTMrRDRldWJIMFkrWmcyTy9YYWF6c3FGNERsNzY2bXlIOHJ5Z2xRL1F4eWdUMTJiNXNmODZmaCtmcHN2VDJhTmVBV3lnYVEvRmJ1YzFHam12czZrWG5sZkh6MzYzWERzVTJ6OTIvbTZPbCsyNzl1ZVNObVhNY3FYZjBmMi84MVZpVTM1MithZitvMTY1OTFVTVR6ZFBLT2w4T3l2NVU4L3BSL1Q4Tkh3LzJHYnRIN1QvMFBlMktqL0hjbzZYOTFkK3p6TFBiOFZPL3BiWm44cC9wZjlUL2puLzEzNWtqbUdyNTVqbjh1N1doOXpKMzIwVVNJczI5dXh0d0ZqL1cvL2RTdjZGL1pCK3puTXU0eExhQTNtYzBmK1FiWU0wMmJaUDNPM3ZGWHhDSHYrdFpQeWU4dmY0TCtmNDJRZVkvc0ZpTmY3YnliL0llZjdkK085VjVEOE13ekFNd3pBTXd6QU13ekFNd3pBTXd6QU13ekM4THNSUUZwZCtEd1FmL2lyV3pqRkFSMXppbjcvazNFdks4TjRRMzNKTFdQK1l0WE15ZitLeEtOK2w4dWU2amtycjdMY1d1amlVam93blB1S1NXRURpbHJ3T3psR3MrMUg5R21LajROcHg5STZkOG5kNGlRdnNZdmNwazcvcjdyaGZ5a3Q4bFkrUmRzNFhJTjdjTWVlTzFVMjhOaEJyQ0dXZlpTMHl4NXZ2K2pYNW56bVg4eDAvUzE2T1JicWtmb2s1OHMreFVlK3hybG11MTBhNU9KYnJmeEVQVGovbGZqczZQVW84bCsvYjMvNmhMZXgwQVBHNnhKSjVUa0hlRzhmcFo3ditRLzZPQ1Z6aCswNzk0bGpLUytxWGN5a242VjVMLzJkY2Z1TG5NbjJiTnUxOTFMTy90K0h2S2JrZTNHNWRUN3Y3Y3Q0ZFhodk05N05xaDM2R0lyZnVleDl3NXJuaStUSTVkNEEybEJ6Vkw5QXVISjk2TFhidE92c3IvY2Yvby9PeVRYdmVWNWNlL1kvN1NsbTVyMXIzcmNycXRhSmdKYmVNRGUzU3BHdzVqNFc4RXVlVjdaNjJtUnpWcjg4alQ4OVZlaXZvd1ZYL1B6dnUvUlA1YzQ3bjNHU2FmaDUyOGVCT3Q1dUhSSjNuTnlvdVdlZXJHeXQyT3RONVpUdjArRGpMZmFaKzZmL2RmSVczc2l2RGtkNkZUdjQ1ZjZQZzNjQjlsWHRDeHA0amRBYXY2WmpYZU82UTQ5V3RjNDlZeWI5cnI0eFRyQjlXN1p2OEw5WG51M1ZLUFcvcURFZjl2L0E4aTlXN1RDZi9vN0x6VEt6eU9nL2tSRjJ5TnR4cXJHYWRtZkpuVEpqckJIcWRMNjhyMkwxYmU0NlozeDI2Y3ZEZFEvUk5ybG5YY2FaKzRlaGJ1eHg3ajNtTHZLT3U4czE1R2dsakJjaDZRYituM3ZTNzlKSGVPOVB1ZCsrRXE3R0F4em1YckJONnlYTjZWNytVKzBpdW5QUHM4MWFIWVhnei93Q2dndm9nNEw4bG93QUFEdGR0YTBKVStzN0svZ0Iva29FQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBSGljN1oyTmtSd3BESVVkaUJOeElBN0VpVGdRQitKRUhNaGU2ZW8rMTd0blNVRFB6LzVZcjJwcVo3dHBFQklJMElPZWw1ZkJZREFZREFhRHdXQXdHQXdHZzhIZ1AvejY5ZXZsNTgrZmYzemlPdmVxNStKenBhd0FaZmozd2Y5UjZmbUsvak44Ly83OTVkT25UMzk4NGpyM01uejU4dVhmenk2K2ZmdjJPKyt3TjJVRTlQdEhSdFQ3dEo2Vm5rLzF2d0kyMGY2dTlsLzFVZnAybGFhVDErM2YrWjFkVlBLczVBUmRHcjFlcGN1dVorMjhlejV3YXVlcmV1dnNIK1ZyMzNXNXRHOTdIcG9QZVFXcS9xOTVaZldPKzU4L2YvNzNlK2d0MHYzNDhlUDN2WGlHdXFndkMwUTZ2UjdwTTBUK25pYnlpTHk1RjJXclhrZ1gxL1Y1NnFCcEl5OVBSeDMwZXZ5Tno2ci94OSt2WDcvK2Z1NEtPdnR6VFdYUjhpTk5sTTh6V1o4alBmY3krN3NNVVo3YkNKdkgzOUNacG9udmpGdGNjejFGR3Azek9MUjlSVDZrUnhmSXFlbFU3dmlnQzlxeXloM1hWQitxWnkyZjhYM1gvdnJNRmF6OGYxWm0xdi9wZjUyOGdjeis2bStvVTFaMzdCeDZWbjNSTHVLREw5QStxSDZCUEZaeWRycEFQc29oUC9jVlZaMzkrWkRQeTk4Wi8rOHhGN2pGL3VnOCtpUDE3dVNsL3BYOWZSM2l3TGJZUGY1R1d5Qi8vdmQraHF6MFVkcUxRdk9oVHBrdThMY3VLKzJSdVY1bGYyVFU1NzM4VEc4clcxekZMZmFuSFd1NzcrUU5aUFpYZjRmdnpmb29mZDM5aitvMjduSGQvU1MrSTdNL2V0QTJsdWxDMDZuTmFSZkk3L2JIUC9KTS9PVVp6VGV1SWVNejdFOWZVWDNRbndGMTllL3FieG5mSEpvZW1lbGIrajJlcFE5MGE2WElpL3Y0VGNEL2tjYnZJU2Q5THdQMXhvZGt1dEJ5TXZuSlg4ZEQrb2YvNzdLby9EcVhxZlRwdWgwTUJvUEJZREFZRERvNDk1ZmRmODN5YjhFOXVJUXJPQzN6TkgzRjI1N0NZK1hFcFZqUFpIR0JlMkpWL3VyWkZaL1djWmlQd3FuT3J1aTQ0bTN2SWF2R3RxdG5LczZxOGg5VlhIcTMvRnY1dEVkQjVkWTlFMTZuSzNKMThmeDd0ZXRNVnVYVi9QNEo1MVdsUHluL1ZqNnQwcFB6aHM0cCtoNEY1M2lRaFh5Y0ExbnByTktCeGhXN1p4NXBmL1RqbkZ6RmVXbmNYbVBtVmZyVDhtL2gweW85RWFNTHdMUEM4eUh6eXY3RTdWUVdsYlBUV2FVRHRUOXladkpuL3YvS0hwb1QrMWVjbDNQV3lyMVdITmx1K2RUMUtwOVcyUi91V1BrajVSUTkvOHhHeU56OWY2b0R6NnVTZjVjclc2RWFxK0JHOUg3RmVRVklxMXhNbDM2My9GdjV0TTVQMG9lampHZ1A5RFdlM2JXL2pobWU5bFFIcC9hL0ZlcHY0QnFVZDY5OFUyWVhydnZjd2RPZmxIOHJuOWJwS2JPM3pqc1pGN1RzekVZQjVSYXp0RHM2ZUEzNzY5akp4L2ZpS1MrSVQxUE9DM215NjFYNmsvSnY0ZE15M3M1bEE4b3BWbVV6SjNldWxPZVJaMGRubVk0OTcwcitybDZEd1dBd0dBd0dnOEVLeEw2SStaeUNkU0JybUZVc3Frc1RjOXNkL3VjZTJKRTFnRzRlV2VhdUxQY0c1MkpZZDNzTWZ3WGlINnkvZDlZbTNmcjFtZnNaTTY1UjE1U0IrRTZzOEZGbGR0Y2ZDWTlkQjZpdnhyZTY5cTluWTBpditzdWU1eG51YWIyZDk0cDc3cGYwekVHbU01N3A5RWwvOHppR3gyaXo4bmZ5eW1UTTBuWFhkOHZJOUxpRFZSeEo5K1JYNTNHVWcvQTRyZTdWMStkSm96NEhuU3VYby9GQTVleVVEM0NaOUJ4UnhaL2g4OGhIWS81YWw2cjhuZkpjeHFyTTZ2cU92TVFiVmNZVHJPemZuYmNFWGN6UytTLzRPdTMvNk1yUE0yVG5POG1yT21kQ09jaFNuWTNJOU85OFIxZCtsWmZ1MTNjWnF6S3I2enZ5Wm5vOFFjZVBrZCtLWit6c1grbC81MndSK2Zxbnl4ZDUwUDJPejlMK25zWGlzL0k5cjUyemhGV1oxZlVkZVRNOW5pQWIvNVZiOURaZjdmdTUydjh6WFZYOVg4dnU3TzhjOUtyL2E5NWQvNi9tZjEzLzE3S3JNcXZyTy9MZWF2K0FqaTAraHVHZmRIenArQ3VYYVRYK3E5eHUvNENlNGF2T24yZTZXczFaZkR6MU1VNTV4YXg4UlRmK2EvcXF6T3I2anJ6M3NELzFydGIvZWk5cm05elhQdVE4bXMvL1BZM09rWDFPbjgzbHV4aUJ6b1g1bmdFWi9EN2xkZVZYZWExa3JNcXNycS9TWkhvY0RBYUR3V0F3R0F3cTZOeGNQMWM0d0VlamtzdlhIeDhCeitJQ1didjdIc3pWT29MOTBzOUVGV2VyOW1PK1p6eUxDOHoyTWl1eXVJRHUyZFg5L3lmclY3VVZzVGE5bm5GdTJKOTduZ2R5NkhYbkluZTRQTkpVYS9UT0xwa2U5RnlnY3FTVnZtN2xHMC9nKysvVlBsWHNqNWdUZm1PSEkxUS9vL0VycnV1ZWVmYnZlN3hSK2NJc2p5eGVuWEZHSFM5WXhmdDJPTG91MXFsbkUrSFhNMzN0eUxqaUFrOVErWC9zand4K2JpWGphRlVIM2tjMERxZm4rQ2hmKzRWemJueFhmVlJuSm5oZVkrdjBreXhHN2YyRnRzZjVGYkREMGEyNER2S3I5TFVyNDRvTFBNSEsveU1yZlMvalZYYzRRczVTYUYvUHl1L2swWHk3TXpNaEQyMldjbHczVlRtTWJlcmZLSHZGMFoxd25abStkbVhjNVFKMzBPbGIrNno2ZUsvckRrZW83N1hNK3IrTzMxMy8zN0UvWnp2MUxPZHUzOUs5QTlwdmR6aTZYYTZ6MHRlVi9xL1AzMkovOS8vSTd1TS8rc2RQVnVtOFBmbTRXdGxmODg3Ry94MzdveU8vZG1YOFArSG9kcm5PVGw5WHh2K2RzNDRWcXZXL2N0NVpUSURyMm04N2poRDVzSi9PTWJObnNqbHdWbDZWUjdWK1BwbGJYK0hvZHJoT1Q3ZFQ5eDBabnhVekdBd0dnOEZnTUJpOGY4RG42TnJ2VWJpU3Q3NWI0eDd2dnRmWXdBbDJaWDlQWEJSclhqZ0ExcFNQcUFOMlBBSHJXbUo2dXEreTJ3ZGNBWTdoRkJwUDdIQ2xqcThGWWhhK2JpUitGdkI5ckw0T3gyL29lcFV6R1BIUm1BMXRTK01MNkt2amRsWEd6djVkWHJ0cHRFNjZEOTdsdUZjZFFmYTdJN1QzZUk3cmxLdnBBcEhtYXQvS2RNVDE3QndMY1F1TnN6b0hvNy9QUlQzUURYb2wxb1hmY2ZrcFEyUHgxVmtCdFVYRjBlMmtjWm0wcnNwNVVrZjlMYUVyZFF3b0QwdGNEL3RvckZEVEVTZWwzQ3BlMktHeXYxNnY3Sy94Y2RvOWJSSTllWHhMOC9MNGRzV3JaZnlKMjF6OW1ITElpcDAwQWJXZnh4ODlqcHZ4ZTFmcXVQcmRNZEw3K3dTZE96M2R0K1h5ZUJ6YTZ4TncrenR2UUQ3Nm01VEltT2tHVkZ6VWp2MHJIa094a3dZOUt1K1p5YXQ4bUw5SDhFb2RUN2hEeXVVRFYxMzVsaFY0ampFdXM1bnZ0YUFQT1Y5Rm45Q3hxZUlOdmYxVy9YSEgvZ0gxZjhyaktYYlNLT2VvNDZES2tYM1A3TDliUitVRThma2RkNmljbis3SHVnSWQyL1RqZXkzaWcyLzB2UnpjVXgxazE1VmZ5NTd2enRlRHl2NzRNdVhVSFR0cFZDYWZkeXJmem5mNmg3ZVprem9HMUFhNnA4ZkhaOWV0dHBOVC9rK2g0d2R6ek96ZWFvL2Q2cnJ2SlZxTlczNWZ5NjlrNmRhdXQ2VHhzaXVkbk5ieDlMbk1kMTNaL3pjWURBYUR3V0F3K0x1ZzZ4aGR6OXhySHRudFNZeDFrTDRyWmFkTVhhc1M3ODdXZ3U4QmIwRmVqK2V3N2pzOVIxS2hzeitjQU9sMjdLK3hGdFk3UFBjVzlIbUN0eUJ2Rm84a1R1NHhHK2UwaUQwNjM2VlE3bGJqRlFHZWRaK2pQTFRISUR3bXEveS82ak5McTNrVFE2bTRHQzhYK1RTV294eHl4eWxwUGJYK0tpOTh6bzVla0YzTFVibE8wSjB4Y1k1SHVRaU5wWGMrdzdsNzVaWGhDenhHcXZYejg0M093VmIrbjNLeU1yMXUyZDVzYi8vWWpkaW54M3l4YmJadm03WUNKK0p4WXV5dDdhTFRpOHZ1Y3AxZ1pYL3M2bVZtc2Y4VmorZzJDakFIcUd4NmtwOXpRZDVmc3J5ckdMRHVEOUo0TjdIVzdMZWpLdTVWZlkzdXJWS3VKZk1aSzcyNHYwT3VFNno4djl0ZjV3bTMycDkrU1Z6OVVmYlhmckZyZi93R2VhblBJMSszLzJwdkIzNUVlVlhsRDhDdVhxcjZubUExLzZPZWNJeTZCK1VXKzJ1NTdvZHZ0VDg2cEJ6Vnk2Nzl5VVBIRHJXNTduZlp5UWQvcnZ5ZnkrcytQOU5MZHMvbE9rRzIvdk45UlRxM3lNNWZxMjRjSzN2Ui9uWC93ejNzci9PLzZ0eHlvTE9iOTNITms3N01zMTArUHYvTFpORjlHQ3U5K1B6UDVScDhUTHlGOWVMZzlURDIvN3N4L1A1Z01CZ003b1ZzL2JlS1pZQzM5Szc1am1jNmhhN1h1dkcyaXAyZVlGZlg5eXd6eTAvalA2dTlrUUZkbDc0RlhEbjdVSUg0MSs1K3pWdXdvMnRQL3dqN1YvbHA3RWRqRlg3R0tlTUlIY1F0UEo0T2Q2YThMdjJQTTNITWZaVVA0NTUvSjNhcWRmQjNKRmF4a3F4dUdwUFJkdUh5S0xKeXNyckMvN2l1Tlk3dk1xbTlpRk03VjdpTHl2OXJqRi9QUzlIUGxQT3RPRUl2QjkzQm5XajU2RVhQMWFBZmx5ZUxPZXAzUDM5TE85SjRPdko0Ry9DNkJUeVc3SHhBdGcvYlk3UEV6NzJ1RlllbitWYjY0SG5peGhVSHUyTi85LzlBMjVhT1V4NTN6VGhDQnh5VjhuR3V3KzcvWGZ1akZ6MlA2VElIOUd5UFF0TmxObFo5WmZiM3VZaWVyYXZ5VXYwb3Q5anB3OHZoM2dsVy90OWx5dlphVkJ5aDY0UTAzZnNmNzJGL1pLS3RaVElIM3BMOUsyN3hXZmJQNW4vNFF2V1h1bzhDbjFSeGhLNVQvSC9YL3dPNy9nN2ZsT2s4bThQditIK3RXeWJQUGZ4L1p2K09XM3lHLy9jUDlmZHpzSHJ1VU9jcEdVZm81ZWpad2FwOWUxclhoYzR6cTdPWmJqZkZhdjRYY1B0WDg3L09kMmJsZFBidnVFVy9kOC81MzF2SHZkYzdnL2VGc2Y5Z2JEOFlEQWFEd1dBd0dBd0dnOEZnTUJnTUJvUEJZUEQzNFJGNzBkbjc5SkhCZmhQL3JQYTlzOGZTMzJrUllHOU05bm1FUG5WdnFjUGZhVnh4aWV4TDgzeDkvd2p2QU5JUCt6ZWV5Vk4yZFRuTlIvZnQ4YW5zcjc5andyNGo5dG5wUHJjc3oycHY4SzN5ZDN2MTFZYjZIaENIMWh2ZHNvZE0rd1Q1UGF0dFYranE4c2d5ZFYrazlvMnMvempZcjVibDZaOXFiNTQvdTlvYnNtdC8zc3RFK3ZqZjM3R2g5bjl0dkliOS9YY0gxRDcwd3c3c0k2NmdmYW5ieXhiWDliZEZPcXpzVDl1aFR6czgvNnovYzUzOGVaZWI3cUhVZlpzQjJwdSthNGw5ZnZxTTdySFZmTFZOa29idkp6Z1pRMVFYL3E2aHJHOHJxRnRYbnZxQ3pQYU12ZmlHVlpua3FlL3ZVWm4xL1hJbjl2ZTk3bHpuZjYwbjU1SjBuRlJadU05MzlJck1laTVFODZVOXFOeFhmTlBKZm5FOVg2RytBSG1xdmsyNzNQSG4yZGtCemNmM2xxL2t4NDlyL2dGMHArOWlVejB5NXZ0OHBkS3h6M20wVHRwZmZVK3Y3bVhYK1pUbWtiM2JqL2JnL2ZCMFRPQ2NVemFmY1dCRC8rM01haHhtL2JRemxpUEw2ZHl3c3o5NjFURUwvK250U08ydi9sMzNtcFBuaWYzMVhDTHRWOHZNM2wzbDg2eksvdnhQTzc0eUowQys3T05BZm5SSEc4NzhPcnFyL0tybmUrWGRkWUhLL3VvM0FXMHhpeFhvbVZGZDMxQlhuUjlXNXhzeSsxT3VqdVY2WGMrbGVwL1NjeCtkL1pISjI5Y3owTVZkZHVjV2tlNnEzTjE0ZDlLZTlOMDYycGMrMm5tS3dXRHdvZkVQaUNScW91dDN2UllBQUFEY2JXdENWUHJPeXY0QWY1N0NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCNG5PM1NNUXJBTUF3RVFmLy92ZTRWVWhoQ1VOd2FjbE5NbzBxd042cHFOR3JPMmQzNXY3djljdm9YenJXM2dTeGRleHZJOEd4c0ExbTZ0dHBuMkxYVlBzTlhZKzF6dkZ0cm4yYzExejZYOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRHNYUGJSYkNhRENScE5BQUFFZVcxclFsVDZ6c3IrQUgraU5nQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZUp6dG1vbHQ2ekFRQlYxSUdra2hLU1NOcEpBVWtrWlNpRDgyK0dNOGJFalpzV1Q0bWdjTWRKRGlzY3RESXJYZks2V1VVa29wcFpSU1N2M1g5L2YzL3V2cmEwcUYzNE95SHBkTSt4THBYMU5WbjkxdU4rWHo4M1AvK3ZyNmMzN0xkYWNlVmRZdFZiNS9lWGs1MkdQcjlLK3Q5UC83Ky9zdlNuV3NlaitqLzJuN3orRC9tVDQrUG43YUFITUJiYU91SzR4MndYV0YxWkg0RmM2OVdacDF6RGl6dFBxemRVNFowaitrVjFBK3lqRktjNlNLVjJsVy8rZjhrZjFmZFV2d1JSLy9pYys0aUM5eW5NejVvOEtJWCtLYVowdVZWMTNYc1o2WnpVVlpIdkpqYk1yekxGdW1uMVNjV1J0SXUxUyt6K0QvRHJhYitmL3Q3ZTN3am9oOWVLYjN4MHdqZlVHYklMelM0cHoyUi95ZVZoM0xON3lYa1Y3M2ZUNlRhZEtldXJJdDV4ejQ2UDZmYWViLzdEdDlua3hLK0xEc1dPMG14MVRLVVBjei9WVGVJNi8wMzZnZFovK3U4RW9mSDliNWJBNGdIbVhrL1NmdlBZclcrRCtGelpodjZlZjVib0R0c1dIMjYreWI5TDE4TnhpTkZmayttdjAveDVEMFZaWWx5enVyN3hLUG9xMzhqeS94YmZhMW5rNS9MK2pqU1k2MTJmZG04MUhXZy94NmU4anhQTk5rek9rMjZXU1pidms3NksvYXl2K2xzbEcrQTVadCszdDc5elh0SlAzQSt3UnAwYVo0NWhUL1p6ekdKUElpelY2K0pUM3EvSytVVWtvcHBaNVRsOXJuelhUdlpTLzUxcFRySUpld1lYMGJ6YjVyK3ZmVVg3WDJlYlUvckRuVW1zbHN6WHFOMHY5OWJTTy84MGZmL0V0cklheWI5UE5yS01zNTZrZjg0ekc3djVUZTZIcVcxeXl0VWI4bTdtek5hVmJtdjRyOXN0ejdJMS9XUFBLYzlzSXp1YzZlYlNUM1hqbG5EWmQ3T1Nhd2Q3TW12TnM2eTVucmlYV1A5V2JXbXZxNlVvWDNPdGE5VEN0dFY4ZjBHWkJYWHFNZXA4UjZKZmRKbDczdXBUS2ZvKzZYYkcrai9zOWFHN1ptUDc1ck5QWlh2TnpITGVnanJQT3RDVDlXTCt5WFkxNy90eUgzSVJCN0dYWE10Y3EwVmFiWjh4clp0LzhUUVp6Ui9aSC9SMlUrUjMzK1A4WC9HWC8yL3BCMjRweTlHWTc0TS8vSldCTithcjM2bkpkN0F2aDZWS2YwUWJkUFhzL3l5ckRSUGhQM3N6OXpuWG1QeW55dXR2Qi8zMGNwbjFDbVBDOHgxakYrTXBiUm50ZUduMUl2d2hnMytJOEFHOU8rRUhOdDkzOGZjM0tQOHBqLytYOGk4eWoxKzkzL3N6S2ZxMlArejdrZE8vUitrblV0OWZFcGZZTy9pTXM4dGxYNE1idG5HTGJrL1RyblljWnc0bUxudERWN25mZ3o5eWlQbFlOL2EvRWhiU2R0eXA3WnlQK2pNcC96THNoK1c5WXBmVWZmenJwaWo5RllSZHhNcitmWC9kbjd3WnB3d3BicWxXSFVnN21rK3pmbjh0RTNHTS8zNTBaNTlURGFRTitMVEJzVFAvT2VsYm4zdFV0b2FiMUFQYjcwdjFKS0thV1VVa29wcFpSU1NsMU5PeEVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkdSTytRZmg1ZU9hdGs3anB3QUFBRlRiV3RDVlByT3l2NEFmNldGQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQjRuTzNXNFdtRFlCU0dVUWR4RVFkeEVCZHhFQWR4RVFleHZJRUx0NlloLzRvSjU0RkRtMC83NjAxc3psT1NKRW1TSkVtU0pFbVNKRW1TSkVtU0pFa2YwWEVjNTc3dlQrYzV5N1YzOTcrNlQvZHZYZGR6SE1kem1xYkh6K3dZL1N6MzFMMTFGc3V5UEY3SE1BeC92b2QwNzdKamxYMnpZWGF0emZzOXRYL1ZONy8ramU1ZnR1dDdWam5ybitWNm5YMzd4dG0vdWw3VC9jdHp2dTlmLzlmbmVYN2FQOWZzLzMxbDIzcnUxKy9idHYzNnpQZm52LzIvci9vZTEvZXI5MEN1MVhmN25FWFZueDNYYTVJa1NaSWtTWklrU2ZyM0JnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBK0VBL0N2bXN1RkxhS21ZQUFDb1hiV3RDVlByT3l2NEFmOVR3QUFBQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQjRuTzE5Szdqc0tOYjJra2dzRW9uRUlwRklKQllaaWNRaUk1RllKQklaaVkyTWpJeU5MSmwvVWZ1YzdwNmU2Zm5VLzlTSVduUHBQbFY3MXdtd0x1KzdMbFRtNTMwMm5nRGFzNUV0eHRkR1lJZWp3d0p3WGNVRmF3RGZoWDdEODJJZDRJRUtFQUcyQ2h2UW5pVEJkOTJUMmJHRXdmSE5mSFA4OFVOdkFKV2IzVUVyMVhFenRyNXNUeFVVNEhpZFFPRW82VER3WWJtdkt6LzNDUktnM0ZRc3BGK05BNjgzZ2JoelhKM2IzcytZWGtKc01TbjhReEh6bGRJUER5dlVhOXNvN2taNVRpSTQ5WlprVUVQTVh6a1d5TkkrVHdZd0pteXJOTGlQU1cwci91N3JicEIzN3R0SEY0OXl4YkQ0alpuZ0FUeFJxb054Q1EvUkZBa3JyNWV5aFVpVGZRejZvYTdCWmFHM0hYOXhqN211Zm42Q1d5a3VvelZqZzRrMkxOYjZ1TVhBd1lKdERwNGRCSFZQb1BqdnFEbHdYUGpUL1R3dkd3OHZQN3o4dDdoT3hEb1NucE5Od3BzRmNDbTJGU0FWOXNTY0xSelZIakp3d0NjUGgzVkxjV0FDdnJUTlg3ZmcydWJBSDlVdnVKbjdOdncwSFR4K0FJVUx0QjQzTjFQcUc0SEg0VTdkMVVKUjErSFc3ZlBycDZpVWRVM2c5M3VQanZzMXlDVXVRcVpPeVlvTEdHczZHQWxybTA3QXZHMkJPZGdQL09jQ0txZDFnVlhGZkRLb2h0a2xPOUh2RVlHYnF4MjRYVWJoWWRlU0tjOExxbEpGSlVoWFl6Qk5ad1BHUHJ2NEtTOTBhV2lUWnBqMTFRblJ1RmlHUHNyS0hLZ1N5MFhMeGZMaktSV1cxRHdQTE9rMjluTTB4ZUhBZjlZMW0zcmdZdkEvcEtKS0gvRGc5bHdiUEJsUEhFMGxUeU1vTitRMjREcW5GajBKbmFycS9kT0xCMWxCby9mQ2cwZ050cXNJa0V5Z2N6YWJ6Z05OZzFqcXlQbENZMWlkSnNlWVNyMFRkQVJsdXk3SzloTDhxTThKTXk0WWFtVW9sTTgvMUR3L25TMHg2U1J3blU4QlBRRDlmM2dVR2hLTUMvL2EvUWtmWFR4S2RNS2h0MVpubTVwZ2ZFa3NQT1M0bFgzZ1J2TU9VV3BkMEc4bFcxQmgwZjBCaURiOUdGZ1NXYi9OUE9FWHFqOFFxRmx2YUFDQVJwNFgvREEyTitHQnJSODJTa2J4bDBkYjhJVUZkM1lwbXM4M1B5d2M1RUIzamdxTkJtNU40TWVtM1JOdHpBWEthejQvOWVqSlROcHE3dyt6RlQyQTNRL2FKWGVEV29ocGVrWlVlQWFCRVBTRUpCR0JyMnRROWppYlJiZVFiZkw0Q1dwQlQ1bngxTmY2M29Dcm5odytmdjZTaHVYYzROaUdrYm9HNlVJNStyWGlDWVlMMXFRQ09GV3RxMHNjRGtQRGRyUnFZdXNQVEF2bzVlZER2QUx2Z0htdkJhRUw1eDZOTzZSdEYyb0xVQzdVQlNDWCtPUHZSR3Z4RmNMcWQvNmhWZjlGd3NLQU0vVGNxTUdVa1pXU09IanJWY0NGU3NyOHVYTVNqNk1TaVo1Y2hMTUlEdWpKbjQ0ck93WjlCd1J6clJoR0VPTWRVU2dlUzBtdDd2ZW1XTjJiaE1hb0Nya3hDOHY2L2l0TGovcW82R1JZakI5ZE8wckVvNDd2WXdpSWVDU2RwMFRSMTdmZUR4Q2VvaE5ZWUduWEhpRHNxT3ZSRUVCc3pJLzdjbTZ3YlNTQnFNWmUxem5PaE85NlFrZlBucUJSUFJYR2JtWVE1R3VFUk9yMnJHVTdDanlvL2ZnV1lkUDhQaXkxNHFLZW0yckc3MnVITUVLZlczQW85ZUlrdngwQXVvZkhvSkhiOXN4dy9UUU1ic3NaeTNGZ2xGakdrL2tKK25iUHRmYm9HTmt1ZVBWSWJvejdqVzl5bjBxK2dNODFyUEhCNFA5STRCeDFxWW54NnV1SGw0OExadUNuRmd6dDE5ZGg3QmlWaG9sYldoY1pPajQ4eDAxQVNxTTU4d0w5QXF6aUpOTnhYUlVCb1FCOVBVaUZGZ3hyQk5EK004YktHTHJqci9ucHNycDB2MUdUUFgrQ0FTd0pOOGJIQnJYZnUvM3M2dWR6RGNRK2tPT2lNL2kyNzk3Y05sdW0wV2VWcUpjTVVreU4ySTJxcVBrUnJUOFh0eWdNalNaMzNTNDNReU4rUW5zSWdsMnYwd3JYNHBkVjFGY0NzZ3czbWRJeGYycHJmb0psbEdOSHU3OXlGc3ZIK1IvUTQwVFlMaHNTUGZUTFM3VGM3dXNJeFVEZFY5M0hzVTBTQS9zdzVZQ1FBK1A3N2Vqa3ZERE9YQWJhOG5oL2tQT3Vkczl4MzA1YW9ncytJd1RHRFlPRWpPQkNSWmNKbWFVcGxZSzZKbm5ZUVgxMDVUOUMrK29MV2V4dEtNSlhTWERoZ2NteDhvRHhDN2g4dlRLWEsrajk0Rnd5dC9ZZzdkNHBrR3pjT0xmV2RHd1lCUnpCUUZvdVFyMkFvKzhZQkpWbDhZV0xqWU5TVTkvMGdjYURiVDVrbUVtQjZmNXMvdlR5SjA0TllZWmt4S0pITTdrbGpZYThJNnNwUCtpOHp5UUZBWE1mSE44SkExODFQUk95N1ZrY3gwSlNJeTFySW5GSFVDM1FaUkwrSXVkbXJjRUl3dUVsMXFrdHo1TXpIamZxME9UTXlEalVUVG1aR1lIUGlobUtMQnVzNk9SZkttNDdTSUxCK3NaRkZrTEdzWVlkMW1Oc3YzNzR6dTZ4NXczTG5WdURqaTl6WVo5bnVFa1ZGMFVJTXVVc2VnUFNNZG9YZElFYk9wSnJUTWJUNTg3QkJxSE43UnpJbVFnUDVhT0xSeW5tSE5SN0VqZktiL0RMeFc1a3FQaWs2TGZ3NFpWN1FITDFVSmcrRU1acnduZU1hOWU5dnFFTEk3Z1BhMWdYWm5tUkV0WkZ4L2VheUVHcHpVTENPY0oxVFJDdzI5NDBVRDI1WHdUVGJKS1F4bWRYajY3WWg5MU9sUlRWSTVaZmJwbUhSKytrY0FOd0N5eGFoUjRTLzFWMW16YklrL2ZEVnFhYjA3QzQ1VEJGUzVFM0tueTMvUmhkcjN1ZC9EYzFSbHpwMUxhNytucFIyQldnZWlIaGdzY0hDWFVWU0lBKzd2L3pwblZ3bXJMYTl2VlUyYU83YnpOUUtZajR0RnZnWHRVMjQ5YmE4K05nSUMyYVpDWVM0U285dGlYRXdNcG1XWkk4djE2U2c5aTNZRjgybmFqZnlIeG9IYmpNNndVejJLRStnSVF5SUJsUXVoRDZjZi9YTndjVno0NnpDLzNWRHZ3c1RuTythcnRHbVQxQ3RZcjhZQXVvN1lHemxVT244dllFYVk1Vmtpa0JVdW1RajBCTXhkOEcwcTZFaS8rSkhRSzN4NmR0WWp3eUUwWklrMUp4c0xJY3c3bEd2UjdsNC9qM1dCeTZhWTNranJMMVQyMnNSMEg5M1JDMzlOSjlPcllxR3I3TEUzVU14R1lGMkRvZFFNcXJVa2laTGdQeTJlK0tzRGJDOGJ5eHd6YU9hcERsQWFkajVrZFBjRTh0RFJENnJUWWRTQmZTL2ZyY3luOUxuY2xLNXR0VndNN3NGanE2U3NlRHZwMksvY2wyUEdkNmp1T002QVR4SVBIL0NERkdLbkZ0bVMwN2t3MUo4bzBVQURjTlB3UGVIdUpQN0NoWmNnM1paR1hIQ3MvSlJnYktGdzNsbVFuUyt0R2wvNVp5eGRoSWxoQWZ5OEZoN01mSDI2SG9wVDRZeGhBQUxLR1Z1Szh6LzRzYlJPeGFDSXU1UmZIS3hxNEIwbkZ4OE96WU4zQWJnVCs0ZzhpTTNrdXNCcEQzeFNVT3lLY2tnVHNQNHJ3L0h2MVJySElZalRhemNGQUROMkM4WVptR3VPbGVQWVFIaFAzSlV1ZTJYeGVHOVptektXMmpoTWMrd0VRekl4N0Nvd3k4WHljTjUwbit3aDNKclhVUHpZdER3Y290VW8xdUVHWGpyNFN6c3MvekgzTnpsY0R1VE0vTVBNaXRMeE8xNEJ0U0tYeE1kRjh4dStueXdUeDE5WDFGQ2tUSWVtekM4U1FVU05NUkRpdnZUZ2dkWHhVeTdMOXpCMk1CMjY4dDhuSklrVll1b0JtenBZajBHdi9PMU5hUEo0Q1I3NHlaaFNoOUMrQnZDYkx0T2wzb3JLZmJOcWRHYUd4M3NZYThRSXpTZXNaN05ycFFYNWsvREFHMkRVWHJHOUxkR05Cb3M2TDIzN21qZzhOMm91Wkxxd3d2KzBMcElrM1MvckpvTzhEWDhmSDZGK2NFMExHaGI3L3JLV2RTQW0wZ3d5U3NOYjhzSUpSRmczajhLRCtxT2hPMlo4QlY2N1dGRjBhOE5KNlo2c0FnQ2VqZ0Znanp0ZCs1dzBVMGpJRUdJWmF6Y1Q4UWJPU1lCNUQxUWE3MURvaWZGbGwydE81ek9tMVNIcW9vUndmL3NGcmZlZHBIY1lRcmR6QVJLVTU2Ky9ibjRYV0lXZlF0eFNhVnA0L293Q0tpV1JBSlBTZEpodjNPSFlNNDhMZm9HSHU3bVcySUcwd3Zmb1M1anhtRHdpSCtqOGY3L3k3alF1K3U0TmpSekVFOXFKNzQ1N3l4V1puTERIeDZCUFR3T21hSkd5UENySDl2YUxreVdHcUIrTWU4U1h3eDF0aHBNeE5CS0h6NXAzWVFaakhGQXhPbDFnMU9TNENJbWt6QXphc2EyaTZmNjlQclA5SnkyVjNEY1VKVG9GNGpieGJ5L2k1c2dDVUVlZ0xpNG9HTERhL0U5MW5TNDM1cGlPU1VnMUN1QUloeEVCN3JkU1kzS0lRRkhQbFZPMElDb1pKc0lIcEc2M2pYamdhemdhS0xUWnYzeS9JTExIeFFaZ3hXOWRhZzltdUNrU2ViVHJyMFlzeVVMNkVrUlU2VnVhb0tTQU5CMTJuZSsxRUxQWUoxTFI4dlZPWlJRVVE1azZPbzBtZlY3RmZ0OE9BbFdWcnZybHlBbjlwaDFLV2s0eldRVDYxcWNxZ1B5OUh4cWZoMUlqbmoxa0xZZW5DRHpLeldkbXlscld3OUM0TVFqeDRWeWJoWjdPakhlWjhWM0w0MWRBUDloYWJTRVF2WGJVV0RnWHFlSy95cUhlOU5HN0craXo2b1RMOXJ4ejJMY25JTU5JMEQrZXpxcC93VUwyZjlENXBGd0hJUy9zQitVSVlZcG01QzMxdWdybHhuV3hWN29hdUhrbWNhbytOWjJ3TjJVcDlYSnh1R2h3cDdSbVd3YlRIdjNnR01ld3NDM1hlK0J3Tk0vOVU3a0IwM3FDWWtrZWYrZVBwajJ2akQwRENmQzRHT25tN2Q5b256N1NZUit0cDF4VUExYzBQb0ZFUFZzVzJjOFI4NFNCaUQ0MlZtOGUrNXhuUU1rczQ4VUVwYS8vU09zRUNEaisrUStjamMvK2dkb2JzV05KMUxmSzZQSTJBT0YzMFhZWjlyRVZKTzR2K2dKNWQrU1ZVaHdtdnlWd0dBZ1V5TW0xclg5VVNZQkU1TGxjR2xCZmZNb1ZYakJneWpuTS9FOS8zZE83U2FaOHdTNzB4K1lTaGQ1YS9lSVVKcWR1Z28wV2J5eC9VZm83KzU5RnkzODBMbEJYMlNRWFZJOTFLaHBLQVJCczRDQU5WbjYvZVk3aHBOSCs0THFEdzNod3hQaTdjNnlPM0tXL2R0Tm5YdGR2YU8zY2M3TTQ3bXRUM0kvTzUzSGVtbmQ0eHVIdWo3ci8vNCtvK1hCS1NrTTNCTC9zNU5vcVMycFlPb3EzdnpMZ0IwQzY0aW9RUHpiblNhR2o4VDRPdU5aR254c0dMTVF6YXo4ejJ3eWtVSnN4bWdIcTBlMVE2RkxJQ2xHOUd1VDhnS3NwejFNTGxvL25hSHkwY1hqNUk3SGoyNjcvVk5WaVdsRS9iM204cXFpSEw4cHdEQTVNSTBuVWdZRFIwNGN1VFoxQVpMN0kyQXlYaTY3VUVjOURyS01nM2FFV1hBTHFtc0FkZmRuekJPUEdlZDYrU0QrSmtuaUtiSzdzMDJvK21ISmNIRFI4d3gxdGEzYlgzdW9WNXFybTd0MHIzVFUvMHdERU42QVl2SDdVeFloalA5bk1oVmcvYUVUVHRlQmVMK1hoVitXR093dlk2QUFXRUJHdWgyQTBkSUJYVWk0ZWNOTVlyemEwN1hTLzFVZ2o4c2lObm5jb005N3R5T2hsaDlOa05DRUZjMjI3c0FrRWJmRjZoYzdqT1diWHMwSVYwNS8rRzdyZGZjU2pSdTZSVFlFelZLMDNPRWQ0TGNYZ3lxUkovM2FLZ1BnbzMwakhyMmdydTJvOS85T1ArVjRCeFE2NVJkbDNxZEYvRHp1akcyRzNpbDRuNFhBUHkxU2pnalk3NGxnYysrRTY2M1kwWjdaUE9YRzkzZkF4MjZ2VzhkOTRoQWQ4VXdpVkZ6VUsvanVSS2FYeFhNZ2M0Z1B3Z3plVUl5eEpCN2ZMNy9CVFd6cDdpSGZjcytlSHR4S0dHL3N0dlJnbUdoUHdXQWp0RCtVWk1sOHFmTWJNR3M5alQwZ3FUUGduaHRWMG5YaG9CSDdhK21RK2dhMHZUc01STHFFcElJMnhKcjExSFcvWXd6YVVwb0c5d3N4LytBK3VQNmlScEx1cHBTaVBmRnhQQ2lGY1RDeVBiSVR3Rmcrc2puaGNxeXU0YVBQQ0h6alZzUW5yaE9kOW4wdG1IRTNQaTJvbHFBanNCNGlWeFNkSGFhQWRKZVdrcnQzV0ZjS0FIS0hzaGFtVkJGbG8vci8rNGdNWXFhM3FNRm9XaU80UGVkN0hrR01QZFRBSkJNSWNoNURzMVJBMUFQeko0UTdTTlNRTk94SmpTdllaODVFQUluTXNrQm5zU0w0TFpKRmF4Rnh6aFl5ZmhKY3RYRUNqU29FNVlxZVo3OVloL1BmNHZMdk5NYUx5T0pEWGl3M2RIY084WXlVbjRYQUtxTEFmWGlHZGJoVHpmUDdhSm83NVBWbUZXTzgxNElwMnNFOUEyN21xWGpweWprdnFBc3BZaWZNaGlIL05jcHowTUg5em9vMlpBN2x4eFJNejY5L2pUaEtmb2xpUG5VWWpidUYwSTRBZjFjb0JRZnN3Qnd0ZldheWV5clpUenF1dTFUNmJrUWtJTFk3Tm9yMDJwejhNUndqSVM0Q044bFBDWVpkSHN6UDR5akNLeDhUZ1lwY0RjUllwblVBbi91NCtrLzFHR2thZVJFRTdWWGJBaC9raFlCb2Izd2lGaVhud0xBV3RvK08zWDRuU21rYTI4REtTTlg0Y2pOVTVwdXJtTlN2WGowbEh0YndITllkakdrckRrMWlSRmZyQnFzTUV2cEdQWEJHSW9SdHRXWk45bytuZ0JVY0tFMWg0dTQyYlNrYkJvenBWUDhJdGlkNmt6dXZZaFlrT3FGNTUyclcrRTFiZmFoK0E0TXVyOVJBRDBpZFgzMmtjWnd6NWdxZUkxaTl0V0p1dTdqbCtNamFVMHJzL2xBdTFvaGtBbit0OCt1Zm1yZzBsbVUzYXdWR0pHaHROSWtIajgxaXBXZ2JRWjA2bldJWFNDSEpZNUFqdmZkaFRvT05HZzQyNE80bUtHN2RIWHNGelBBTy9vS3pwRlBwREZCTDNLTHZ3UyttUVVLRzhZUnoxSXFOY0RIKy8vTDdHbmNKbW9qQkZrZU1qcTZKRm9JS0dHdFpPWkEzejRuZWdxZUZBYUUxMHdRcksrenJOc0NGK3VIdHFtOU5scVEwY0E0ZkdBYnhqYmRJZ0xsakZnQk1kOWZnQTk2QlNjUURlNUdMYW4zdTlHUCt6K3crbGhlQXZJTFFUby9NUWlpQnp2WXpHZ3ZTeGllVmtJbjlRY00vSFpQYmhJZkdjOEVSbFB5Z3J6SkRQVUd4cVRxc08vTTNsRjdQV3RvTjVuQUYwM2xyOEIzV0ZINWNQeGNkdS9Oazg1UEwvKzJMc1gyMnZHNUN2U05Uak8zelVoTFV2REpiSXBMbGlLYmNSMFA4cFFlaVY1WDNBU3phSUc4TVhkMCtSN2pvQXRvUUFjQ3A2elJNL0JsRWg4Mi9rNThscElYdHNHcGkwazdlZTZQOHo4ZkF6aDBXd2FEVytraGtRdjZwYlVrTEIvT3JreXR0MldXSW84RmVxYmxKVW5laGtIcWE5ek1GeEZTNUd3aE0zWDZPT0RhZ1hrVDMrcy9FMStlVjhYcHZTbURRV0pEMHZYcDlVLzVJWEo2djRSaG9xUTFVN0hOYnRhWG83T0lFU1BDRkR6OU5ETjVqOXcySXFvVm9OSlMvZXJSOU4rRFE0R0NVUVRsdnlZK3VGdVB2Q01LUWdCSXpjZTkzM3Qyb1dYZ0JkZHJUOFBYVk1sc2NTaVBWVWdEOE0yMWFJOFBETHZkbERnUXVpeEFkTEMxOXNqRDFZSk0yM3R3Q0xRWmxmd2ZpUy9ZS3N0TUlvMFVaRjk1REIvdmY1OXJMRFR1QzBmTWx2M1JZa1ErTE1IUExtOXJFaUw5UkR1R2ZEZVdXeTRWSExWRTFrUHRGMEdjbnhIa0k0bHB4K2JwYlAvOHI0blBuNkZKMXF6UUZ2SUk0dlBlSDBTL2NiMWRLOTRZWlVVSmxmS1dYNnN0TGFDWmc2WUwyckJqcVJ5YnMram5nRjc0djZWTTlCS1ljYkV4ZmhIckVFT1EzME9ULzVUNG5rT1RPYUdPQ0dkT2pSSGs4LzMvK3hxVDlVaklCRGhDRm10bzZ1ZXJTc0dPSTFxa0xXRDZWb0Z2cDVsTnkyRWdPWElZRVJja0FCUHUxYm9VQTFvdHZHanphMmp5SHdvZlAwT1RKTGNKKzE2VzhYVEVqL2UvT1dRb2tUZ1dVTjJGWGRxMm1xUFhkMXNTb2dGM2JCanB6enUxakdTVjFHNlgxNGIwYjg1THEraU5aUGtNU0JxbTNvUW9SUHF2aGErZm9VbHUvRW5NSUUzdjQveGZLQUQ1Z2J3T0dmQWFuSklZN3ZBMUtUWVNTQy8yOWN4WnpUR0h1Q0N4VVZMbWpHc2ZMRzdMMXZ0WVNMMnRCc3FKOEE2Umc4ckxQeFErL3hpYVpHYVRCQUhuSmphemYvejh2VjVGZnhWS2xtMkxFaFNxNlhUZXlIdWxRNWUxbTczTVE2d0NZMkM5N3Rrd3lvVjJIalVkdzhKNFBPU0Q4MXc1V1FLMzNmOWo0ZnZYME9SOU1kb3dOaUxYdENIV2ovT2Y2em5xWkd3Nko1WU0rekZJSXNFOFNFNjJBaVpkQzhRMXovYVBOclk1eHlFV1NlMHhPeUtReVI3NDdsbDRRYy9YU3kyWGVmVi9iWHhvZngrYURHUWNEYUlpWGZEUDEvL2I2N2tJVmJrdVlXdXJaMkppZHpJMHJJMm0vWmlEd0dvdHVTQlJEcXJNd2dCUFpKWXQxZ1RXd1RwT2loUUpaRWVubDh1bFRkbitwZkhsK1BlaFNRbFcrRWM5czFmNGZ5RUJjamJwbTNmUlNEUHpzUmk3RnZ2U2NDTHhIZGZiaXhjTUFibWhncU1qWnpZcWVLVTVIL0N1aE85cmUwaVFyanhYa0tqMkNPM2NRaFpSMzQxUDU3OFBUVllFRWZtRmUwdG85WjllUE14R2Z4V0pWdzBkUE9TMVRNQ0d4LzA2ZHlSOHNHOVpnSnd0VVYwOEU4cXJ6ZG9oNFNIbG5ybjc4RWJQSG5GQUVIMHpacUZTK0NVZHU1aU5ieFhFdnc5TmpxUFFCbkt2UlBYeThmNFBLOHRPZk94WnpWbjhtWTQyL1dvYmwzSURNZEV4RldzMCtQcHBKMWpKR2Z4bWcxdzYzR1d1M3J6M0lOeCt1VkE1bXVYU01lM2ZqWSt6Q3ZZZmhpWTNqamhSb1dGd1pmWEg4ZStHNlBhSU5TQTViM09tVGRwNWx3bjFTd1F0MGR0MWlxUjFGam5tM0FkQ1pIZzNTSWRXbWI3VzJDYW1YdytvcjUwaFEvS2piQUVZWjB3T0lQOHdOSW14ZjdkNVUvY0NwWDE4L25IWnM5NXIwUERzQWRuNnpHS3Vjem9CWnJvbkw5RDhnc0FPSGVPOHMwQWgvbDBsdVlQY2VpUFhQY1JLcEhQSFlET1hmMWNnWlhvOGpWQkpSL0lQUTVPQ3J2c3dxRURvTk8zSCs3OExBOVhlSHZzMXVBSTFaN1dWZVA5amp1MVV2MGYwM1B0VkdmUWpyMUxVRzBORHhqOTBaSGpISFBTRytFeGdqTWFCT0tmMTYrbGtaM05VNGo4UFRUWjlMQXdDWDUyYWt5QWZsbHlDYTltc0JONzRubXgwem9Sc3IzT2dpenB0SWpMWDR6VzNZZ0ZsWEYwSVhQSU15NXZjNUh0NFlkOU1iN21MVWROL2JGQjNTemVON09rL0QwM3VwWWtBWG1FczFSOWYvbXhpS05UQU1ZYy84Yi9yZ3didDh3N1BNNU1kaE4yTVhqZWkyL1k2OEJDRnk5NkR3OE5ldW5WenJNK2FjVUs1T0NyQmplaG9nRWQ0akIrd1dmNFBRNU50TlFLRFRYN3RlMU1mWjhBNWJ1aVJVbGlXSFVOOVcvbXJpeGVmYUFkUHpuUkRtNWN4STFjejZBY3FtdnM2TzcwbVh4aUhSeFRiMjRLMEpweElmSW5kME9EQjZEV0NUSkdKL3p3MHlZUHY4bHhpQmFiN3gvdS9oaEdYUkQ5ZFprMTdWallxZ2xQa1BJZWIyZHRsbVkwd0xLQWhxOWdOUWJUTDJMNjg1L2FGNUtIMmpFdTRDSjl0cEp4dG5jSEczNDNEY291ZHZVLzNiME9UcmFTYS9Md3lpUW9JSC9kLzF1RWpnOE53SnlTMFJwREx2MEFoMG5zd25oZFdoQkdtV1ZlcDJNSnZaYTBzcVlvbnFvdElKN3EvOTJEbmN2MHh6dUxhNkJXREk1ck52dzlOVWxPV0d0MFFFMW02ajk5L2tscENIZEJveEh5V2VMSzNTUE5BRFRiYldYcHBWeDlzaEhkUkU4RU1FUnpoZllKNWNROFhjK0N0N0xNaFlLdXpIMzU1STZJdFR4amRDOVdScXZhM29VbWlXSlgza0czV3l4RVVmN3orQi9Hb3pIblA4WUhSOVo5ODcvd3FNRzlBb29FYlhkdVRpVjRvWUZBUEVjcHg3YXZDZzNhMnJXVm10d0hwejNidUo1cFBRVDFDZ1BzZWpJUGRnbkRrNzBPVFNpTUt2S2dRRE5hZW5vK24vM0dWNWpXeERWTFJ3KzRYdW9EcmdYZFdKdTJGS1F6VXFZUFpia0J3YisrTjU3SmQzY3g3TTZ4MnRqb0wrZzRZeC9xMWh0N0RXWkhveldZcVlWZnYwbCtISmljS1Ntc3dicVdKb3E5RXVIam9qL3QvQzVSY0wwaVQzTXpKUkF6aGRRUE9jUTlhbGx6YWpFY3I1WlcxV0F0LzdGcWxWRDU2SnhFMytWR0hnWEVSbTRTNWpyNjV5WXp0QWlOTDRsSXU4aTlEazdzSFZ0YmNaOGRSMThpc3FPWHA0L01mWEF2aUVPeGd1TGMvWk56YkZ6RjVzNVRsZFUzYk5zYTFPRnBZWFRqRCtGNXdoYXAzVWVzV1JiN25EU1lJNzR5SHJURVdabklUVXBvRHdVdHArL0huMENRUVI2UVd6aFBUOE5UZG5KMlAyOGNCMEpVWUhveXY4R2d6SjRIQXJzTDRsTGVUQnNkN3ZCd1VBYkdhSGg0N085WitScUQyUys0ek45QnJtaFNXekhVOENIRDJ0V1RLanVYb2lDdERxSDhabXFRSW1ReU5VdUVQa2ZkTmVybkdqK2UvTnhzcGJnRFNnQWlwNWdUMjFDQnNSUU1PUngwYmVjMXN2WWM2RXN5Ui8wbU4zdTJTYngreFF1dzhRVnlPakpwY05vOWs4T2o5UnFiZ2NSL2d6NkhKaFZHSlcrSzFNVHhycU83ZFRzTSszditYVXlWODY0TE8wSlh2Y3dGVWRjWnNaY0gxa21LYVFYMUJ1T3ZtN1JhZXpiVCtNZVA5R3pEQVFYc2Z5VXY1azhxWUd4VFR1cngwYXRFSDhzZlFaQlpNU1QxeW5na1JENkpRVW1meis4ZnpYMHhpdUZLem8ra054WjdyRUd3L3ErS1FsSjRwSWJEV1c2dUpSc0xtQ0cvVzV3dDNhU1lDYTE2VVExWW9kRUJ3L0ZjeTAvZXlEdk43YU5KNGdVaVhSMUp1c2dUTmlZeGxFUVJEWXZwNEJkU0pzSUdxNlRaSHdiT3A5eDJSckkxUmhkWmtNamRjek5pclpKeFRrUnZKUFZ5N1JnS25aaXE4TU9tUkhRUGJvd0RjRGs5UUE1RDZ4elVvY29SYTM1a1RlRkdSRUZvV1BnaWxma2VnUVdVZVRpMzE0L24vYWxuMDNEZVgwcjV1Ty9wdVA5TzVJbEMzcjNqU2ZSYUh0NVVhRmhBZEwrQk81UFlZQU41WE90MktKclNYMTc2RzJUcDRJZ3pxcmFYUmd4QTdoc1JTNXhUdGpwUzVGd3lCcm1Qa200WFJtZld4OGR3Vi9mejlGMFZzYlVmQ3AyRTlqd3NYYUFqeUZzS29Ra2RmNW5XRnM5ZFpibHJzcTYxR1dYTWc5RlhwdFNJVmVrMGJKc3M2eTkxSGJyZ0J6M1h0THZWRVdJa2FnOGsxV0c0VUhKckJvZllDbXp2ZWZiYlVxeVZZVHorOWZqSW0rZDNZSE82NEIwWnlhbXFpRVJpaUhZVTRpSnNMZVVIS3h1UVhLckZYRUFrUm9iTVRpWUNwMGhCSmtOSVJtUGNFa3prdnVhZDFnbUlwOVlGYXMyd1lPdXNNYytHOERya2dPTElJTmNEQVN2V2FQbjcvYWJTQm5JR1EwUE9ZU1R5UWE1M3REc0syRFlqWnBPTmVvbFBYZUpwYmkrZ0hzdFp6RG9DdFIwUVh1T0VXd09Nb2hnQXJpWmNpUmFPNXMwaHUxb1pCWDV2aFhFYXdDMXI1dmRrWkpkTE1HNHVTeE5JLzN2ODBZTFVFckt4M25kY2VYM3ZaTjZFY0hCSzVFQ0wwM1RDcldlMEc4YTVBazJaOW1LVzJ5Zi9ueFZCRmFxOXR5TnAyT3U5UnlCNGRpTDhFNzlMZWNrNityMXQzelBTZGV1QXE5ckdLTlJ3SWkyTS9vbW9mbi8vbEdKU3NsR2FkTjdXMWx6OUxYOUVhVUozUkp5d2djMW9vYjFRTmZKSHF3NU5jTFNYcTZKU1MrMmlFa3V4NWc4SDR4ZlBLWEFsalN5OFhDY3VuV1VmVXU5cVEvb2FORXRGNkptTWlEQ3JIS0N6ZjBYL2MvN2Q1N1VXZmNTaWFlUWVZVy9XOHNoeHhZT1Zob0RkWXhMemQ0SDRRLzhIK3BMNVNycVhRTCtiSmUyaVNhSVh4ekNLbVovakRHaEU5ZHdpWWp2ZmRvUHZWbDRpS2hELzYwK24vekxhUmRSSk9IV2g3M0djWEQvUDZQM1J4cXA2SWJlMHM1YUoxb2x2M1djTHoybTkwL3dhaEsvU0FGQ0dyYUdiYTV5NHlYZXpkdVQrSEpwV2NkMEhoVW9pMHZrYkR4TDdydHI0UlZXV3RncXNISmYyZFpNL0xiQUliczJuNGdZdmEvbkgrbDAxekp1YzJtVmliZHhZdEpzNGVGbG50dm9VektLV3RtVWM1a2F4N1k5ZUJ6TmFzeDc4UFRlYmRPNk9pcmVrY2R0N3crb0J1Z1NLWHpnZ0I3V0sxSGJrcEJMMDhnOWUremR6eGgyVmY4REcyRlIzOG5IRG82UGZuZmZlck1USDAzVVlqa2Q5WldJT0JjQldrY1JRYVhaZmNjNDUvSDVvc1c4SWxLaVljb1FheFFJTWRSTHhtODhQU3VVR0gyWmxtYzVRTXZjc3NxSVBlUHIvK00xblBITlNWRndnNzV6b2phRVZNck5lZFd3RlNUMlNMeWhGZVIrbWFRWTNMcVdiZmZsa2gvY3ZRNUVYbDZoanhDRzRYdHc3MC9EQ3Zmc1hnTDZ0QkR0M3lnUXFXUytWdDk0SUJzUkErWHYvZFYxbWljWVlpdFFFU0U2WGlQQmdJMFlaR2lyTE82eXBqQjdtOU9ocDQyM2VFZktUTm5uZXRseVg5WldoU1o3RGwyUG9CNXR6bVpMODU1N1Q4ekpXcXk4TjJualBBZGcxRVo1bU5hT2MrUGovLzhqUHBpV2lmV1VScmtHZEQ0eWdEeXJrUXdvT3ExSldOOU5kVHlRRzNocXpVbkh6b0RSRXlVY0g4T1RTcEtQRzlQMDlIRkpWUk16U0ZEV2JyWTJPenRsQnZjQU5VZ0ZsaGc1WlhLS00rSDhmL1FLMTA0MWcwaUdEd1RFZW0yWjV3bFFpTHlZVGpZZS9qbXNXd2JCNWNwRnM1Z21QN01qYno0bFVPZnd4Tk5tWXN1b3J5dk1zQUo1c1hwQkdGQnA1RDBOYnhOUGhwUEVUM2JnU3k3NkVqK0hqOGw5Q3pEVWg2TmVlK0QxdXFDckpmcWMvQnQrZ2J0RkYwbk1GdGlYWk95ME5melBGZ29JZDQ2Tkg4NG40TlRXSUlEWE1BRnRjVVVFVjR1NGJIMkljNzRzRDNZMWZCRjR3cWJsd0NtTlkvbWYrUDE3OTJnenBQQ1BXeE0wQm12aCtEd3RKU3p5YkdaZHZ5OWZNZEZlL0hiUVdXVzIzWm5FTUhoSWZxTldZWEtQd01UZGJrMXRsT2FRTy9qbGxZMEhqUXFCT2w1dFU5cHpRS2VjUklHRStSUE9TZU1IeWFqK2QvSEJNejlLWE1FQWpNVy8vMlFnazZmMlF4a1NKYTJVOGtLMHQ0OTJuTWtqM3ZjNWpsU3JqK2dOUm5wb2pJREFWKzMybGJVbm9uaGhpOG1nZkdSeFdlSTY5MmtaZDkyajZsUDFkK2NCK3ZjOCtnUDU3L2E3UGVRZmZYUzhOeXhiWEV4YzVyUUpaSjhIdytYbmp3YzdnLy9WelY4R0FzUkJ2bzVQWE1rZ0dwakxDTyt6V3ZCK21kVndNWGo5djh5VjZqRStqNDUzY0xnRVRUR2JWTkI0amhGdmhZWmw4NFBDVjhIZ0FUT0Yvc21ZbHdFbER6TVlhRjQrNkVWLzdBYkczZmc1aVRpbVkvTko3OXZMczZ2ZkxNZ1ErVFg2UFVsSFlnKzQ4ZCswM2dPMnVlT25ETjFuK3lIdzdpSEkxZjF2bmhjMnJZam5GM1hTUkdoNk45SFAraUZidDVxdzNYMS9zc1loZ24xZWl3VG9mTy9qM1ViN24yMXZUVU1Dd0s5YWpILzdxNzRuNld4azJMSG9QRSt3cFpsVkswaWFVMDRqWXJJWStVZlVCK2RZZHFzR04wblVQVSt1RDFVQzdGV1NqOWVQL1hqbytndmRkNnRUODNFakRHVjFoRzNLTytieHNEakJ1OXQ2K0xNM29PaTRHS2dEQUlmN0FXcmhEQll6aW9VcVBxUjdHaVp4K2JNT0QyRXd3Q3BsU1hWZXNhK1BLRXZic0VpNTEzclNJdk5MUGUxbytQOTcrKzdrTytVV0JiQlh0UHM1TUV1bVBJYnE5ZGxRTzJLNVY3MjN1dDU3emUxYzRMVGhFaGdUT1ZnVHl1M3NkVzdZTHNlWGpwTENGREN1YVpZckl1b09vSWJHYlcxK1hCK0NjT2hOTEJYQ0RYbjg3UDdlUHJaM1VzRU02OHQ3aWFkeTB2RnZUZk05dWwrYnJ4N1U2dzdlSllLSnRqRFlPTzArSnY5VTBSUlBDUmM4b1pvbUczSS93ak1IdGpEY0hJd1BBbHRYVkVWME5DQVJPbFdvQkI2YzFhTnJzczJJL24rM2o5Q3loYUpZZXh0ZGpuZDREUndPR0tTR0lHYUZSaU12bitQQ1QzeGlwandMem1DRzVyOTdPVVgvZlhrSlh3cTlEM3Z5TjdSQ3RDRUR5WkllTEgvRk12dkdmL0E4T1BZUGc1bEswdVhnZGRuNC9EbjVuR1ErM01LejZaN0RQdmd5dVZCZjAxeHV0ZHBBWnhuWWVFeEhDbWFpY0tjcTg1dGJ4R1JNaXNLWDQ2RE9Qb0U3cWZsemxIYmR6c2szZ3lrcVg1TFQ5ekJwWnlZVWNpZVhaVnM0RndZVHRTRHc4Q3ErZmorUGZFZzV3WElNeEJuMXdtRi9xNWt3ci9QNDBqeEFmc2JnbmI3VERhWldXTnZiU1RaSDV2a25IbHRxMnZJUUFoeDdKUVhrZ3BQcjV2dGV2SWtTNnV4THdJa2RTMlBVaDV1eGszdEZPMExVMEN2UXJoUDk3LzlEaDVvMk8yemhHWjM2ZHhFNFI4M0NNSTNqVWkrVExRa1F1SGJMVnRJNWY5VlluUnlnNjc3UDFsL002a3psYUd6c2hpRjAyUUZJT2t6WmdGOTJwQnpHTTNCcjVhSHdya1hUNExOTDFuWXZZS3hCWDk4ZlZ6Q1RKWFVuTVZTMmNEN1RiZUNPYm5EU2R6T0hFZkczcnhWRlJibEZLYlczZkVBTTBwU1l1WE9mZzFlS1dPM0ZkcS9kb05JNVFoYms0cmVsQ1N4TnFVRStJSndVc1FaK0t5d2Q1VVJZd3NCOElCd2ZuSDZ6K3pwWHZwWGxKL3FFVGRwVDIwQkZLbGRWNTZ3NjVqcjVLbnM4d0hwU1pFRHJ3RWlTZHBOelQ0VXhYTFNyMGMzNVNQN1NaSXBlWlZxUnRINExzY1d4SDdndUZqY2dqRHphYUJpano2a291aEh0ZS9maDcraVRSOTJvVVludTFvb3JET082Lzg4bXh3UVZyd3RDV1NXTlJhRmp0MHJsRS9oQk94OS9jZERwN3plWm52YXpFcnhyTjFOc0lkVzZ1cHpOYm9oZ3poUlBXWll6Uy94cHphODlEZEttU0VsVUlqSVgzZS8yVSt4M05oYldpaHVmL3FSek5qWHVjZTVwYzRkVG56dkxXVkcrSzRpTitDejFYcGVZZUhRanRtQ3lKWmtHazkxa1NuQ3ozSzRoeUN3VFNSN1lvbW9ZNlMzdGQ4dmtQOWs5SXp1OFQzbW1kZDJINzgvcHRYWjJvR2FGTkpXRlVPazVFaU1VRTFSaDUvY2pRRzF4SjcvT0hjNjBIa2wrbHNhcDkzdUZUd3p1R1czWFEyUEIzdkwwN0JvQ0NOWFB1azlmT3JVcVYweC9zT21HRjhETVpwcU16TlBvbFVMcHBYYno0Ky8zaU1sYyt2dkZtODVzaDc1N2UzQUcwc0IwcXllMmRuZmNsMmZpbnFYUThYMGVaeklUOTMrT2ozV0p1SmdlYm9tQjVIbDBhd3BXd2hONDZHVlp6V2ZFTnU0UlptNzdPRk9pNUFiWEVscnNIb2g1U3hmOXovMDFJR0YzVS9CeTZXanpxdjZHRkM2N3pXdXN6TUQwVWpSeHlEWnlkNVdLdEU1ZjkxaDFOWHV1U1p4NHBFS1l5WU1qSFgwYlVaaVZhMWlHRm5WNnpnVUk2enNuR052ZWVyejhpU3p3c0R6Ulp6bEI4L2Y4SzJsVURsWnlJcHF1MnE1Nmx6WE5aVTh1TDBlOTRCNnF0bU0yZjNpVzhDMGY3UEhWNFFkenBlNjd3aUFKWGRlN2tZcW1RanN4VVlJYytHZE9COXFTeHV4bmxYUmt0MkNJL0NoRmlVRWpTV2czdzgrNDFDS3dTZzZLN0NPSWhwUFk4dE83UUlzMWdKTlJ4c1BTOTRiT3J6am5lVmx1WDNIVzZ6WGV3Z0NobmdLMVBiMDd3c2U5V2VBSzh2MEpUaVZnQ2grN3NyUER3TjJNd0lwSzdBYnlBZW4rTGU1K2pVaDJWT2NQbGVULy8rRnJ6WitZNVBkZ3R4VXJZZ294TjNTQUZHTS92ZGdkODliLzJQTy94Z2ZtdVNVczhEZDBQZnorMnlsSFhDcHVNWmE2RnFSWmdUZlB1SmNjK3BqdFFVQklKTFZpelBDK0RQS2ovZS8vNTRhK0hjZlZHUWVNRlZ1ZWtUQnB3dlRkdjgzZ1BFd3VHQlBaMExwTld3Y1AyK3l1WTk1NHFRQ0I3T1huajZRaGJMai9jWDN0cExlS3VuMDBEd1c1RHl6a21adnRSWlFsMFdWS3FtNHA2UUI1bVA1Ly82MFV0eEJja3VBdUc5Z0ZEVzIzY2IvN3pEMDBGSFhQU2FWOExQaTRIWTRqbjU0dzdQTWxNZXM1ZmxRVnpvazFsY25OOTVQY2VvOEVkcTk3N002Y2YxMWFMQ1RlNUFHdUtNZE5TQ3RvUjJBMFIvdnZ5RERuck9LN0xaekVJT3hMcGN0NStzL0x6RDFheUY5OW5yTnN2YmE1azJUUDY0eXFiYVV0OWZjdjF1bld4OFZVSFByeEE4RVFxaXVjdDhwckloZ3JnN3VoTEJPSmxmTWR4bjZYUGVqZm5HUTUrSC83L2tJQXMrNmxaQ2lYN21MTGE1cmhtZ3k1aGYveVptbWVUVmFuRHhMMWZaMUkzS2QyRUErVThndkpxd1NBd1NNOG5iKy82K0FVbGdtTWp5ZGRqNUZidjF1REhxemFUSis3Y0l5TS8zLzMvbEsxLzV5bGUrOHBXdmZPVXJYL25LVjc3eWxhOTg1U3RmK2NwWHZ2S1ZyM3psSzEvNXlsZSs4cFd2Zk9VclgvbktWNzd5bGE5ODVTdGYrY3BYdnZLVnIzemxLMS81eWxlKzhwV3ZmT1VyWC9uS1Y3N3lsYTk4NVN0ZitjcFh2dktWcjN6bEsxLzV5bGUrOHBXdmZPVXJYL25LVjc3eWxhOTg1U3RmK2NwWHZ2S1ZyM3psSzEvNXlsZSs4cFd2Zk9VclgvbktWNzd5bGE5ODVTdGYrY3BYdnZLVnIzemxLMS81eWxlKzhoV0Evd2ZkbWhtWmR5bW05d0FBTWlGcFZGaDBXRTFNT21OdmJTNWhaRzlpWlM1NGJYQUFBQUFBQUR3L2VIQmhZMnRsZENCaVpXZHBiajBpNzd1L0lpQnBaRDBpVnpWTk1FMXdRMlZvYVVoNmNtVlRlazVVWTNwcll6bGtJajgrQ2p4NE9uaHRjRzFsZEdFZ2VHMXNibk02ZUQwaVlXUnZZbVU2Ym5NNmJXVjBZUzhpSUhnNmVHMXdkR3M5SWtGa2IySmxJRmhOVUNCRGIzSmxJRFV1TUMxak1EWXdJRFl4TGpFek5EYzNOeXdnTWpBeE1DOHdNaTh4TWkweE56b3pNam93TUNBZ0lDQWdJQ0FnSWo0S0lDQWdQSEprWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKa1ppMXplVzUwWVhndGJuTWpJajRLSUNBZ0lDQWdQSEprWmpwRVpYTmpjbWx3ZEdsdmJpQnlaR1k2WVdKdmRYUTlJaUlLSUNBZ0lDQWdJQ0FnSUNBZ2VHMXNibk02ZUcxd1BTSm9kSFJ3T2k4dmJuTXVZV1J2WW1VdVkyOXRMM2hoY0M4eExqQXZJajRLSUNBZ0lDQWdJQ0FnUEhodGNEcERjbVZoZEc5eVZHOXZiRDVCWkc5aVpTQkdhWEpsZDI5eWEzTWdRMU0xSURFeExqQXVNQzQwT0RRZ1YybHVaRzkzY3p3dmVHMXdPa055WldGMGIzSlViMjlzUGdvZ0lDQWdJQ0FnSUNBOGVHMXdPa055WldGMFpVUmhkR1UrTWpBeE5DMHdPQzB3TkZReE9EbzFORG8wTkZvOEwzaHRjRHBEY21WaGRHVkVZWFJsUGdvZ0lDQWdJQ0FnSUNBOGVHMXdPazF2WkdsbWVVUmhkR1UrTWpBeE5DMHdPQzB3TkZReE9Ub3dNVG93TWxvOEwzaHRjRHBOYjJScFpubEVZWFJsUGdvZ0lDQWdJQ0E4TDNKa1pqcEVaWE5qY21sd2RHbHZiajRLSUNBZ0lDQWdQSEprWmpwRVpYTmpjbWx3ZEdsdmJpQnlaR1k2WVdKdmRYUTlJaUlLSUNBZ0lDQWdJQ0FnSUNBZ2VHMXNibk02WkdNOUltaDBkSEE2THk5d2RYSnNMbTl5Wnk5a1l5OWxiR1Z0Wlc1MGN5OHhMakV2SWo0S0lDQWdJQ0FnSUNBZ1BHUmpPbVp2Y20xaGRENXBiV0ZuWlM5d2JtYzhMMlJqT21admNtMWhkRDRLSUNBZ0lDQWdQQzl5WkdZNlJHVnpZM0pwY0hScGIyNCtDaUFnSUR3dmNtUm1PbEpFUmo0S1BDOTRPbmh0Y0cxbGRHRStDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0Nqdy9lSEJoWTJ0bGRDQmxibVE5SW5jaVB6N0JGZ0ZLQUFBQVZrbEVRVlFZbFkyUndRN0FJQWhESzFmKy8wL2hYRTh1akJVekVxSThDZ1lFU1NpUENIWm1FSmFack9leGo3Z0xhbXczWWVlTDVBUGNmZDJLckFzQm9ONWZURTFkTjFMejQ1b1VIeE9xZ2V3MHZmVHI1NDV2NmNuMUlTSXBCOW9BQUFBQVNVVk9SSzVDWUlJPQ"},{ name : "__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorScaleXY", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFvQUFBQUtDQVlBQUFDTk1zKzlBQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUFUZ0FBQUU0QnNjMGZNd0FBQUJ4MFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1JtbHlaWGR2Y210eklFTlROdWk4c293QUFBQlBTVVJCVkJpVmxZOUJFb0F3Q0FNM0hmLy81WGdRMndyMFlJNndKRUcyelNaSkFraGpSZ2QxR3FkRkN5cjAxc2l4QUNVcVlJWEJBcnRyd0xudlZTS2V2WFpud0FWTXRXYmN2NjhQK3BTL0FmNTJIUmZ1cmtCMkFBQUFBRWxGVGtTdVFtQ0M"},{ name : "__ASSET__:bitmap_flixel_system_debug__FlxDebugger_GraphicDrawDebug", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUU5SlJFRlVlTnEwa01zTkFDQUlRNnRic3FCcjF2Z25haFFQTnVrRlhna3BTS0phZUZhWVFWSGg1WWdWbEFiZjFJN1E1UVRnc0pmZTBlTkJYMkFwajR4V2RxWnV4QUwzUnRJZ0dLdERGR0FBNGg0Vk01NWl5QnNBQUFBQVNVVk9SSzVDWUlJPQ"},{ name : "__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorDefault", data : "aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUxFZ0FBQ3hJQjB0MSsvQUFBQUJaMFJWaDBRM0psWVhScGIyNGdWR2x0WlFBd05TOHlPUzh4TnJ0VlFGa0FBQUFjZEVWWWRGTnZablIzWVhKbEFFRmtiMkpsSUVacGNtVjNiM0pyY3lCRFV6Ym92TEtNQUFBQUxrbEVRVlFZbFdQOC8vOC9BeGJ3bjRHQmdSRmRrQW1iU2x4Z2tDaG1ZWUI0Qmh2QUVHZGh3T0pyaG1FVUdnQjN1Z2NXZXB2bWtRQUFBQUJKUlU1RXJrSmdnZz09"}]; -if(ArrayBuffer.prototype.slice == null) { - ArrayBuffer.prototype.slice = js_lib__$ArrayBuffer_ArrayBufferCompat.sliceImpl; -} -var array = null; -var vector = null; -var view = null; -var buffer = null; -var len = null; -var this1 = new Uint32Array(256); -lime_math__$RGBA_RGBA_$Impl_$.__alpha16 = this1; -var _g = 0; -while(_g < 256) { - var i = _g++; - lime_math__$RGBA_RGBA_$Impl_$.__alpha16[i] = Math.ceil(i * 257.003921568627447); -} -var array1 = null; -var vector1 = null; -var view1 = null; -var buffer1 = null; -var len1 = null; -var this2 = new Uint8Array(511); -lime_math__$RGBA_RGBA_$Impl_$.__clamp = this2; -var _g1 = 0; -while(_g1 < 255) { - var i1 = _g1++; - lime_math__$RGBA_RGBA_$Impl_$.__clamp[i1] = i1; -} -var _g2 = 255; -var _g3 = 511; -while(_g2 < _g3) { - var i2 = _g2++; - lime_math__$RGBA_RGBA_$Impl_$.__clamp[i2] = 255; -} -lime_system_CFFI.available = false; -lime_system_CFFI.enabled = false; -lime_utils_Log.level = 3; -if(typeof console == "undefined") { - console = {} -} -if(console.log == null) { - console.log = function() { - }; -} -openfl__$internal_renderer_canvas_CanvasGraphics.hitTestCanvas = typeof(window) != "undefined" ? window.document.createElement("canvas") : null; -openfl__$internal_renderer_canvas_CanvasGraphics.hitTestContext = typeof(window) != "undefined" ? openfl__$internal_renderer_canvas_CanvasGraphics.hitTestCanvas.getContext("2d") : null; -openfl_ui_Multitouch.maxTouchPoints = 2; -openfl_ui_Multitouch.supportedGestures = null; -openfl_ui_Multitouch.supportsGestureEvents = false; -openfl_ui_Multitouch.inputMode = 2; -openfl__$Vector_Vector_$Impl_$.__meta__ = { statics : { toNullVector : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl__$Vector_IVector.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$Vector_ObjectVector.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, fields : { concat : { SuppressWarnings : ["checkstyle:Dynamic"]}, toJSON : { SuppressWarnings : ["checkstyle:Dynamic"]}, _ : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl_display_DisplayObject.__meta__ = { fields : { __cairo : { SuppressWarnings : ["checkstyle:Dynamic"]}, addEventListener : { SuppressWarnings : ["checkstyle:Dynamic"]}, removeEventListener : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl_display_DisplayObject.__broadcastEvents = new haxe_ds_StringMap(); -openfl_display_DisplayObject.__instanceCount = 0; -openfl_display_DisplayObject.__tempStack = new lime_utils_ObjectPool(function() { - return openfl__$Vector_Vector_$Impl_$.toObjectVector(null); -},function(stack) { - stack.set_length(0); -}); -flixel_math_FlxRect._pool = new flixel_util_FlxPool_$flixel_$math_$FlxRect(flixel_math_FlxRect); -flixel_FlxObject.defaultPixelPerfectPosition = false; -flixel_FlxObject.SEPARATE_BIAS = 4; -flixel_FlxObject.LEFT = 1; -flixel_FlxObject.RIGHT = 16; -flixel_FlxObject.UP = 256; -flixel_FlxObject.DOWN = 4096; -flixel_FlxObject.NONE = 0; -flixel_FlxObject.CEILING = 256; -flixel_FlxObject.FLOOR = 4096; -flixel_FlxObject.WALL = 17; -flixel_FlxObject.ANY = 4369; -flixel_FlxObject._firstSeparateFlxRect = (function($this) { - var $r; - var _this = flixel_math_FlxRect._pool.get(); - var X = 0; - var Y = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - var rect = _this; - rect._inPool = false; - $r = rect; - return $r; -}(this)); -flixel_FlxObject._secondSeparateFlxRect = (function($this) { - var $r; - var _this = flixel_math_FlxRect._pool.get(); - var X = 0; - var Y = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - var rect = _this; - rect._inPool = false; - $r = rect; - return $r; -}(this)); -AssetPaths.til__png = "assets/images/font/til.png"; -AssetPaths.num_8__png = "assets/images/font/num_8.png"; -AssetPaths.a__png = "assets/images/font/a.png"; -AssetPaths.num_4__png = "assets/images/font/num_4.png"; -AssetPaths.u_trema__png = "assets/images/font/u_trema.png"; -AssetPaths.d__png = "assets/images/font/d.png"; -AssetPaths.num_1__png = "assets/images/font/num_1.png"; -AssetPaths.porcentagem__png = "assets/images/font/porcentagem.png"; -AssetPaths.a_agudo__png = "assets/images/font/a_agudo.png"; -AssetPaths.z__png = "assets/images/font/z.png"; -AssetPaths.interrogacao__png = "assets/images/font/interrogacao.png"; -AssetPaths.p__png = "assets/images/font/p.png"; -AssetPaths.u_agudo__png = "assets/images/font/u_agudo.png"; -AssetPaths.x__png = "assets/images/font/x.png"; -AssetPaths.y__png = "assets/images/font/y.png"; -AssetPaths.c__png = "assets/images/font/c.png"; -AssetPaths.i_agudo__png = "assets/images/font/i_agudo.png"; -AssetPaths.barra__png = "assets/images/font/barra.png"; -AssetPaths.e__png = "assets/images/font/e.png"; -AssetPaths.o_agudo__png = "assets/images/font/o_agudo.png"; -AssetPaths.o_til__png = "assets/images/font/o_til.png"; -AssetPaths.agudo__png = "assets/images/font/agudo.png"; -AssetPaths.j__png = "assets/images/font/j.png"; -AssetPaths.num_6__png = "assets/images/font/num_6.png"; -AssetPaths.num_7__png = "assets/images/font/num_7.png"; -AssetPaths.c_cedilha__png = "assets/images/font/c_cedilha.png"; -AssetPaths.e_agudo__png = "assets/images/font/e_agudo.png"; -AssetPaths.o_trema__png = "assets/images/font/o_trema.png"; -AssetPaths.a_circunflexo__png = "assets/images/font/a_circunflexo.png"; -AssetPaths.num_0__png = "assets/images/font/num_0.png"; -AssetPaths.e_trema__png = "assets/images/font/e_trema.png"; -AssetPaths.virgula__png = "assets/images/font/virgula.png"; -AssetPaths.o__png = "assets/images/font/o.png"; -AssetPaths.n__png = "assets/images/font/n.png"; -AssetPaths.i_trema__png = "assets/images/font/i_trema.png"; -AssetPaths.r__png = "assets/images/font/r.png"; -AssetPaths.dois_pontos__png = "assets/images/font/dois_pontos.png"; -AssetPaths.q__png = "assets/images/font/q.png"; -AssetPaths.___png = "assets/images/font/-.png"; -AssetPaths.e_circunflexo__png = "assets/images/font/e_circunflexo.png"; -AssetPaths.asterisco__png = "assets/images/font/asterisco.png"; -AssetPaths.i__png = "assets/images/font/i.png"; -AssetPaths.l__png = "assets/images/font/l.png"; -AssetPaths.t__png = "assets/images/font/t.png"; -AssetPaths.trema__png = "assets/images/font/trema.png"; -AssetPaths.b__png = "assets/images/font/b.png"; -AssetPaths.h__png = "assets/images/font/h.png"; -AssetPaths.num_3__png = "assets/images/font/num_3.png"; -AssetPaths.num_5__png = "assets/images/font/num_5.png"; -AssetPaths.num_9__png = "assets/images/font/num_9.png"; -AssetPaths.mais__png = "assets/images/font/mais.png"; -AssetPaths.a_til__png = "assets/images/font/a_til.png"; -AssetPaths.g__png = "assets/images/font/g.png"; -AssetPaths.a_trema__png = "assets/images/font/a_trema.png"; -AssetPaths.exclamacao__png = "assets/images/font/exclamacao.png"; -AssetPaths.u__png = "assets/images/font/u.png"; -AssetPaths.w__png = "assets/images/font/w.png"; -AssetPaths.num_2__png = "assets/images/font/num_2.png"; -AssetPaths.v__png = "assets/images/font/v.png"; -AssetPaths.o_circunflexo__png = "assets/images/font/o_circunflexo.png"; -AssetPaths.f__png = "assets/images/font/f.png"; -AssetPaths.k__png = "assets/images/font/k.png"; -AssetPaths.s__png = "assets/images/font/s.png"; -AssetPaths.m__png = "assets/images/font/m.png"; -AssetPaths.Lula__png = "assets/images/Lula.png"; -AssetPaths.sky__png = "assets/images/sky.png"; -AssetPaths.botoes4__png = "assets/images/botoes/mascara/botoes4.png"; -AssetPaths.botoes3__png = "assets/images/botoes/mascara/botoes3.png"; -AssetPaths.mascaraBotao__png = "assets/images/botoes/mascara/mascaraBotao.png"; -AssetPaths.coletiva__png = "assets/images/botoes/coletiva/coletiva.png"; -AssetPaths.botoes9__png = "assets/images/botoes/coletiva/botoes9.png"; -AssetPaths.botoes10__png = "assets/images/botoes/coletiva/botoes10.png"; -AssetPaths.botoes1__png = "assets/images/botoes/voltar/botoes1.png"; -AssetPaths.voltar__png = "assets/images/botoes/voltar/voltar.png"; -AssetPaths.botoes2__png = "assets/images/botoes/voltar/botoes2.png"; -AssetPaths.botoes8__png = "assets/images/botoes/reiniciar/botoes8.png"; -AssetPaths.botoes7__png = "assets/images/botoes/reiniciar/botoes7.png"; -AssetPaths.reiniciar__png = "assets/images/botoes/reiniciar/reiniciar.png"; -AssetPaths.botoes11__png = "assets/images/botoes/pausar/botoes11.png"; -AssetPaths.botoes12__png = "assets/images/botoes/pausar/botoes12.png"; -AssetPaths.pausar__png = "assets/images/botoes/pausar/pausar.png"; -AssetPaths.botoes13__png = "assets/images/botoes/pausar/botoes13.png"; -AssetPaths.botoes6__png = "assets/images/botoes/fugir/botoes6.png"; -AssetPaths.fugir__png = "assets/images/botoes/fugir/fugir.png"; -AssetPaths.botoes5__png = "assets/images/botoes/fugir/botoes5.png"; -AssetPaths.bgnovo1__png = "assets/images/backgrounds/bgnovo1.png"; -AssetPaths.bgnovo3__png = "assets/images/backgrounds/bgnovo3.png"; -AssetPaths.senado_bg__png = "assets/images/backgrounds/senado_bg.png"; -AssetPaths.bgnovo2__png = "assets/images/backgrounds/bgnovo2.png"; -AssetPaths.ceu__png = "assets/images/backgrounds/ceu.png"; -AssetPaths.senado_bg_3__png = "assets/images/backgrounds/senado_bg_3.png"; -AssetPaths.bgnovo8__png = "assets/images/backgrounds/bgnovo8.png"; -AssetPaths.bgnovo6__png = "assets/images/backgrounds/bgnovo6.png"; -AssetPaths.bgnovo__png = "assets/images/backgrounds/bgnovo.png"; -AssetPaths.aviao_1__png = "assets/images/backgrounds/aviao_1.png"; -AssetPaths.bgnovo7__png = "assets/images/backgrounds/bgnovo7.png"; -AssetPaths.aviao_2__png = "assets/images/backgrounds/aviao_2.png"; -AssetPaths.patin__png = "assets/images/backgrounds/patin.png"; -AssetPaths.senado_bg_2__png = "assets/images/backgrounds/senado_bg_2.png"; -AssetPaths.aviao__png = "assets/images/backgrounds/aviao.png"; -AssetPaths.pedestal__png = "assets/images/backgrounds/pedestal.png"; -AssetPaths.bgnovo4__png = "assets/images/backgrounds/bgnovo4.png"; -AssetPaths.bgnovo5__png = "assets/images/backgrounds/bgnovo5.png"; -AssetPaths.brasilia__png = "assets/images/backgrounds/brasilia.png"; -AssetPaths.senado_bg_1__png = "assets/images/backgrounds/senado_bg_1.png"; -AssetPaths.foreground__png = "assets/images/backgrounds/foreground.png"; -AssetPaths.screen__png = "assets/images/screen.png"; -AssetPaths.corassaum2__png = "assets/images/corassaum2.png"; -AssetPaths.Jair__png = "assets/images/Jair.png"; -AssetPaths.foregroundbozo__png = "assets/images/coletiva/foregroundbozo.png"; -AssetPaths.backgroundbozo__png = "assets/images/coletiva/backgroundbozo.png"; -AssetPaths.bozotile__png = "assets/images/coletiva/bozotile.png"; -AssetPaths.mascara__png = "assets/images/coletiva/mascara.png"; -AssetPaths.morotile__png = "assets/images/coletiva/morotile.png"; -AssetPaths.microfone__png = "assets/images/coletiva/microfone.png"; -AssetPaths.guedstile__png = "assets/images/coletiva/guedstile.png"; -AssetPaths.taca__png = "assets/images/coletiva/taca.png"; -AssetPaths.livros1__png = "assets/images/obstaculos/livros1.png"; -AssetPaths.livros__png = "assets/images/obstaculos/livros.png"; -AssetPaths.livros6__png = "assets/images/obstaculos/livros6.png"; -AssetPaths.livros4__png = "assets/images/obstaculos/livros4.png"; -AssetPaths.livros2__png = "assets/images/obstaculos/livros2.png"; -AssetPaths.censurado__png = "assets/images/obstaculos/censurado.png"; -AssetPaths.livros3__png = "assets/images/obstaculos/livros3.png"; -AssetPaths.livros5__png = "assets/images/obstaculos/livros5.png"; -AssetPaths.tweet__png = "assets/images/dialogo/tweet.png"; -AssetPaths.tuite__png = "assets/images/dialogo/tuite.png"; -AssetPaths.corassaum1__png = "assets/images/corassaum1.png"; -AssetPaths.vs__png = "assets/images/vs.png"; -AssetPaths.groundtiles__png = "assets/images/groundtiles.png"; -AssetPaths.laranja__png = "assets/images/laranja.png"; -AssetPaths.coracao__png = "assets/images/coracao.png"; -AssetPaths.Lula__aseprite = "assets/data/Lula.aseprite"; -AssetPaths.bozorun__oep = "assets/data/bozorun.oep"; -AssetPaths.brasilia__xcf = "assets/data/brasilia.xcf"; -AssetPaths.Jair__aseprite = "assets/data/Jair.aseprite"; -AssetPaths.bozorun__oel = "assets/data/bozorun.oel"; -AssetPaths.bozosong__mp3 = "assets/music/bozosong.mp3"; -AssetPaths.bozosong__ogg = "assets/music/bozosong.ogg"; -AssetPaths.goblin_1__ogg = "assets/sounds/goblin-1.ogg"; -AssetPaths.goblin_9__ogg = "assets/sounds/goblin-9.ogg"; -AssetPaths.goblin_1__mp3 = "assets/sounds/goblin-1.mp3"; -AssetPaths.goblin_9__mp3 = "assets/sounds/goblin-9.mp3"; -flixel_math_FlxRandom._arrayFloatHelper = null; -flixel_math_FlxRandom.MULTIPLIER = 48271.0; -flixel_math_FlxRandom.MODULUS = 2147483647; -BozoRunGameState.TILE_WIDTH = 16; -BozoRunGameState.TILE_HEIGHT = 16; -BozoRunGameState.random = new flixel_math_FlxRandom(); -BozoRunGameState.BASE_SPEED = 200; -BozoRunGameState.xAcceleration = 120; -BozoRunGameState.xDrag = 100; -BozoRunGameState.yAcceleration = 1400; -BozoRunGameState.yVelocity = 1400; -BozoRunGameState.jumpDuration = .25; -openfl_text_Font.__fontByName = new haxe_ds_StringMap(); -openfl_text_Font.__registeredFonts = []; -Xml.Element = 0; -Xml.PCData = 1; -Xml.CData = 2; -Xml.Comment = 3; -Xml.DocType = 4; -Xml.ProcessingInstruction = 5; -Xml.Document = 6; -extension_eightsines_EsOrientation.ORIENTATION_UNSPECIFIED = 0; -extension_eightsines_EsOrientation.ORIENTATION_PORTRAIT = 1; -extension_eightsines_EsOrientation.ORIENTATION_LANDSCAPE = 2; -openfl__$Vector_FloatVector.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, fields : { toJSON : { SuppressWarnings : ["checkstyle:Dynamic"]}, _ : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -flixel_math_FlxPoint._pool = new flixel_util_FlxPool_$flixel_$math_$FlxPoint(flixel_math_FlxPoint); -lime_math_Matrix3.__identity = new lime_math_Matrix3(); -openfl_geom_Matrix.__meta__ = { fields : { equals : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, to3DString : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, toMozString : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}}; -openfl_geom_Matrix.__identity = new openfl_geom_Matrix(); -openfl_geom_Matrix.__pool = new lime_utils_ObjectPool(function() { - return new openfl_geom_Matrix(); -},function(m) { - m.identity(); -}); -openfl_geom_Matrix.__matrix3 = new lime_math_Matrix3(); -openfl_geom_ColorTransform.__pool = new lime_utils_ObjectPool(function() { - return new openfl_geom_ColorTransform(); -},function(ct) { - ct.__identity(); -}); -flixel_FlxCamera.drawVertices = openfl__$Vector_Vector_$Impl_$.toFloatVector(null); -flixel_FlxCamera.trianglesSprite = new openfl_display_Sprite(); -flixel_FlxCamera.renderPoint = (function($this) { - var $r; - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - $r = point; - return $r; -}(this)); -flixel_FlxCamera.renderRect = (function($this) { - var $r; - var _this = flixel_math_FlxRect._pool.get(); - var X = 0; - var Y = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - var rect = _this; - rect._inPool = false; - $r = rect; - return $r; -}(this)); -flixel_system_FlxVersion.sha = ""; -flixel_FlxG.autoPause = true; -flixel_FlxG.fixedTimestep = true; -flixel_FlxG.timeScale = 1; -flixel_FlxG.worldDivisions = 6; -flixel_FlxG.VERSION = new flixel_system_FlxVersion(4,6,3); -flixel_FlxG.elapsed = 0; -flixel_FlxG.maxElapsed = 0.1; -flixel_FlxG.scaleMode = new flixel_system_scaleModes_RatioScaleMode(); -flixel_FlxG.worldBounds = (function($this) { - var $r; - var _this = flixel_math_FlxRect._pool.get(); - var X = 0; - var Y = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - var rect = _this; - rect._inPool = false; - $r = rect; - return $r; -}(this)); -flixel_FlxG.save = new flixel_util_FlxSave(); -flixel_FlxG.random = new flixel_math_FlxRandom(); -flixel_FlxG.swipes = []; -flixel_FlxG.html5 = new flixel_system_frontEnds_HTML5FrontEnd(); -flixel_FlxG.inputs = new flixel_system_frontEnds_InputFrontEnd(); -flixel_FlxG.console = new flixel_system_frontEnds_ConsoleFrontEnd(); -flixel_FlxG.log = new flixel_system_frontEnds_LogFrontEnd(); -flixel_FlxG.bitmapLog = new flixel_system_frontEnds_BitmapLogFrontEnd(); -flixel_FlxG.watch = new flixel_system_frontEnds_WatchFrontEnd(); -flixel_FlxG.debugger = new flixel_system_frontEnds_DebuggerFrontEnd(); -flixel_FlxG.bitmap = new flixel_system_frontEnds_BitmapFrontEnd(); -flixel_FlxG.cameras = new flixel_system_frontEnds_CameraFrontEnd(); -flixel_FlxG.initialWidth = 0; -flixel_FlxG.initialHeight = 0; -flixel_FlxG.initialZoom = 0; -flixel_FlxG.signals = new flixel_system_frontEnds_SignalFrontEnd(); -flixel_animation_FlxPrerotatedAnimation.PREROTATED = "prerotated_animation"; -flixel_effects_FlxFlicker._pool = new flixel_util_FlxPool_$flixel_$effects_$FlxFlicker(flixel_effects_FlxFlicker); -flixel_effects_FlxFlicker._boundObjects = new haxe_ds_ObjectMap(); -flixel_graphics_FlxGraphic.defaultPersist = false; -openfl_geom_Point.__pool = new lime_utils_ObjectPool(function() { - return new openfl_geom_Point(); -},function(p) { - p.setTo(0,0); -}); -flixel_graphics_atlas_FlxAtlas.point = new openfl_geom_Point(); -flixel_graphics_atlas_FlxAtlas.matrix = new openfl_geom_Matrix(); -flixel_graphics_atlas_FlxAtlas.defaultMinSize = new flixel_math_FlxPoint(128,128); -flixel_graphics_atlas_FlxAtlas.defaultMaxSize = new flixel_math_FlxPoint(1024,1024); -flixel_graphics_tile_FlxDrawBaseItem.drawCalls = 0; -flixel_graphics_tile_FlxDrawQuadsItem.VERTICES_PER_QUAD = 4; -flixel_graphics_tile_FlxDrawTrianglesItem.point = (function($this) { - var $r; - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - $r = point; - return $r; -}(this)); -flixel_graphics_tile_FlxDrawTrianglesItem.rect = (function($this) { - var $r; - var _this = flixel_math_FlxRect._pool.get(); - var X = 0; - var Y = 0; - var Width = 0; - var Height = 0; - if(Height == null) { - Height = 0; - } - if(Width == null) { - Width = 0; - } - if(Y == null) { - Y = 0; - } - if(X == null) { - X = 0; - } - _this.x = X; - _this.y = Y; - _this.width = Width; - _this.height = Height; - var rect = _this; - rect._inPool = false; - $r = rect; - return $r; -}(this)); -openfl_display_Shader.__meta__ = { fields : { glProgram : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -flixel_input_FlxPointer._cachedPoint = new flixel_math_FlxPoint(); -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.fromStringMap = (function($this) { - var $r; - var _g = new haxe_ds_StringMap(); - if(__map_reserved["ANY"] != null) { - _g.setReserved("ANY",-2); - } else { - _g.h["ANY"] = -2; - } - if(__map_reserved["A"] != null) { - _g.setReserved("A",65); - } else { - _g.h["A"] = 65; - } - if(__map_reserved["B"] != null) { - _g.setReserved("B",66); - } else { - _g.h["B"] = 66; - } - if(__map_reserved["C"] != null) { - _g.setReserved("C",67); - } else { - _g.h["C"] = 67; - } - if(__map_reserved["D"] != null) { - _g.setReserved("D",68); - } else { - _g.h["D"] = 68; - } - if(__map_reserved["E"] != null) { - _g.setReserved("E",69); - } else { - _g.h["E"] = 69; - } - if(__map_reserved["F"] != null) { - _g.setReserved("F",70); - } else { - _g.h["F"] = 70; - } - if(__map_reserved["G"] != null) { - _g.setReserved("G",71); - } else { - _g.h["G"] = 71; - } - if(__map_reserved["H"] != null) { - _g.setReserved("H",72); - } else { - _g.h["H"] = 72; - } - if(__map_reserved["I"] != null) { - _g.setReserved("I",73); - } else { - _g.h["I"] = 73; - } - if(__map_reserved["J"] != null) { - _g.setReserved("J",74); - } else { - _g.h["J"] = 74; - } - if(__map_reserved["K"] != null) { - _g.setReserved("K",75); - } else { - _g.h["K"] = 75; - } - if(__map_reserved["L"] != null) { - _g.setReserved("L",76); - } else { - _g.h["L"] = 76; - } - if(__map_reserved["M"] != null) { - _g.setReserved("M",77); - } else { - _g.h["M"] = 77; - } - if(__map_reserved["N"] != null) { - _g.setReserved("N",78); - } else { - _g.h["N"] = 78; - } - if(__map_reserved["O"] != null) { - _g.setReserved("O",79); - } else { - _g.h["O"] = 79; - } - if(__map_reserved["P"] != null) { - _g.setReserved("P",80); - } else { - _g.h["P"] = 80; - } - if(__map_reserved["Q"] != null) { - _g.setReserved("Q",81); - } else { - _g.h["Q"] = 81; - } - if(__map_reserved["R"] != null) { - _g.setReserved("R",82); - } else { - _g.h["R"] = 82; - } - if(__map_reserved["S"] != null) { - _g.setReserved("S",83); - } else { - _g.h["S"] = 83; - } - if(__map_reserved["T"] != null) { - _g.setReserved("T",84); - } else { - _g.h["T"] = 84; - } - if(__map_reserved["U"] != null) { - _g.setReserved("U",85); - } else { - _g.h["U"] = 85; - } - if(__map_reserved["V"] != null) { - _g.setReserved("V",86); - } else { - _g.h["V"] = 86; - } - if(__map_reserved["W"] != null) { - _g.setReserved("W",87); - } else { - _g.h["W"] = 87; - } - if(__map_reserved["X"] != null) { - _g.setReserved("X",88); - } else { - _g.h["X"] = 88; - } - if(__map_reserved["Y"] != null) { - _g.setReserved("Y",89); - } else { - _g.h["Y"] = 89; - } - if(__map_reserved["Z"] != null) { - _g.setReserved("Z",90); - } else { - _g.h["Z"] = 90; - } - if(__map_reserved["ZERO"] != null) { - _g.setReserved("ZERO",48); - } else { - _g.h["ZERO"] = 48; - } - if(__map_reserved["ONE"] != null) { - _g.setReserved("ONE",49); - } else { - _g.h["ONE"] = 49; - } - if(__map_reserved["TWO"] != null) { - _g.setReserved("TWO",50); - } else { - _g.h["TWO"] = 50; - } - if(__map_reserved["THREE"] != null) { - _g.setReserved("THREE",51); - } else { - _g.h["THREE"] = 51; - } - if(__map_reserved["FOUR"] != null) { - _g.setReserved("FOUR",52); - } else { - _g.h["FOUR"] = 52; - } - if(__map_reserved["FIVE"] != null) { - _g.setReserved("FIVE",53); - } else { - _g.h["FIVE"] = 53; - } - if(__map_reserved["SIX"] != null) { - _g.setReserved("SIX",54); - } else { - _g.h["SIX"] = 54; - } - if(__map_reserved["SEVEN"] != null) { - _g.setReserved("SEVEN",55); - } else { - _g.h["SEVEN"] = 55; - } - if(__map_reserved["EIGHT"] != null) { - _g.setReserved("EIGHT",56); - } else { - _g.h["EIGHT"] = 56; - } - if(__map_reserved["NINE"] != null) { - _g.setReserved("NINE",57); - } else { - _g.h["NINE"] = 57; - } - if(__map_reserved["PAGEUP"] != null) { - _g.setReserved("PAGEUP",33); - } else { - _g.h["PAGEUP"] = 33; - } - if(__map_reserved["PAGEDOWN"] != null) { - _g.setReserved("PAGEDOWN",34); - } else { - _g.h["PAGEDOWN"] = 34; - } - if(__map_reserved["HOME"] != null) { - _g.setReserved("HOME",36); - } else { - _g.h["HOME"] = 36; - } - if(__map_reserved["END"] != null) { - _g.setReserved("END",35); - } else { - _g.h["END"] = 35; - } - if(__map_reserved["INSERT"] != null) { - _g.setReserved("INSERT",45); - } else { - _g.h["INSERT"] = 45; - } - if(__map_reserved["ESCAPE"] != null) { - _g.setReserved("ESCAPE",27); - } else { - _g.h["ESCAPE"] = 27; - } - if(__map_reserved["MINUS"] != null) { - _g.setReserved("MINUS",189); - } else { - _g.h["MINUS"] = 189; - } - if(__map_reserved["PLUS"] != null) { - _g.setReserved("PLUS",187); - } else { - _g.h["PLUS"] = 187; - } - if(__map_reserved["DELETE"] != null) { - _g.setReserved("DELETE",46); - } else { - _g.h["DELETE"] = 46; - } - if(__map_reserved["BACKSPACE"] != null) { - _g.setReserved("BACKSPACE",8); - } else { - _g.h["BACKSPACE"] = 8; - } - if(__map_reserved["LBRACKET"] != null) { - _g.setReserved("LBRACKET",219); - } else { - _g.h["LBRACKET"] = 219; - } - if(__map_reserved["RBRACKET"] != null) { - _g.setReserved("RBRACKET",221); - } else { - _g.h["RBRACKET"] = 221; - } - if(__map_reserved["BACKSLASH"] != null) { - _g.setReserved("BACKSLASH",220); - } else { - _g.h["BACKSLASH"] = 220; - } - if(__map_reserved["CAPSLOCK"] != null) { - _g.setReserved("CAPSLOCK",20); - } else { - _g.h["CAPSLOCK"] = 20; - } - if(__map_reserved["SEMICOLON"] != null) { - _g.setReserved("SEMICOLON",186); - } else { - _g.h["SEMICOLON"] = 186; - } - if(__map_reserved["QUOTE"] != null) { - _g.setReserved("QUOTE",222); - } else { - _g.h["QUOTE"] = 222; - } - if(__map_reserved["ENTER"] != null) { - _g.setReserved("ENTER",13); - } else { - _g.h["ENTER"] = 13; - } - if(__map_reserved["SHIFT"] != null) { - _g.setReserved("SHIFT",16); - } else { - _g.h["SHIFT"] = 16; - } - if(__map_reserved["COMMA"] != null) { - _g.setReserved("COMMA",188); - } else { - _g.h["COMMA"] = 188; - } - if(__map_reserved["PERIOD"] != null) { - _g.setReserved("PERIOD",190); - } else { - _g.h["PERIOD"] = 190; - } - if(__map_reserved["SLASH"] != null) { - _g.setReserved("SLASH",191); - } else { - _g.h["SLASH"] = 191; - } - if(__map_reserved["GRAVEACCENT"] != null) { - _g.setReserved("GRAVEACCENT",192); - } else { - _g.h["GRAVEACCENT"] = 192; - } - if(__map_reserved["CONTROL"] != null) { - _g.setReserved("CONTROL",17); - } else { - _g.h["CONTROL"] = 17; - } - if(__map_reserved["ALT"] != null) { - _g.setReserved("ALT",18); - } else { - _g.h["ALT"] = 18; - } - if(__map_reserved["SPACE"] != null) { - _g.setReserved("SPACE",32); - } else { - _g.h["SPACE"] = 32; - } - if(__map_reserved["UP"] != null) { - _g.setReserved("UP",38); - } else { - _g.h["UP"] = 38; - } - if(__map_reserved["DOWN"] != null) { - _g.setReserved("DOWN",40); - } else { - _g.h["DOWN"] = 40; - } - if(__map_reserved["LEFT"] != null) { - _g.setReserved("LEFT",37); - } else { - _g.h["LEFT"] = 37; - } - if(__map_reserved["RIGHT"] != null) { - _g.setReserved("RIGHT",39); - } else { - _g.h["RIGHT"] = 39; - } - if(__map_reserved["TAB"] != null) { - _g.setReserved("TAB",9); - } else { - _g.h["TAB"] = 9; - } - if(__map_reserved["PRINTSCREEN"] != null) { - _g.setReserved("PRINTSCREEN",301); - } else { - _g.h["PRINTSCREEN"] = 301; - } - if(__map_reserved["F1"] != null) { - _g.setReserved("F1",112); - } else { - _g.h["F1"] = 112; - } - if(__map_reserved["F2"] != null) { - _g.setReserved("F2",113); - } else { - _g.h["F2"] = 113; - } - if(__map_reserved["F3"] != null) { - _g.setReserved("F3",114); - } else { - _g.h["F3"] = 114; - } - if(__map_reserved["F4"] != null) { - _g.setReserved("F4",115); - } else { - _g.h["F4"] = 115; - } - if(__map_reserved["F5"] != null) { - _g.setReserved("F5",116); - } else { - _g.h["F5"] = 116; - } - if(__map_reserved["F6"] != null) { - _g.setReserved("F6",117); - } else { - _g.h["F6"] = 117; - } - if(__map_reserved["F7"] != null) { - _g.setReserved("F7",118); - } else { - _g.h["F7"] = 118; - } - if(__map_reserved["F8"] != null) { - _g.setReserved("F8",119); - } else { - _g.h["F8"] = 119; - } - if(__map_reserved["F9"] != null) { - _g.setReserved("F9",120); - } else { - _g.h["F9"] = 120; - } - if(__map_reserved["F10"] != null) { - _g.setReserved("F10",121); - } else { - _g.h["F10"] = 121; - } - if(__map_reserved["F11"] != null) { - _g.setReserved("F11",122); - } else { - _g.h["F11"] = 122; - } - if(__map_reserved["F12"] != null) { - _g.setReserved("F12",123); - } else { - _g.h["F12"] = 123; - } - if(__map_reserved["NUMPADZERO"] != null) { - _g.setReserved("NUMPADZERO",96); - } else { - _g.h["NUMPADZERO"] = 96; - } - if(__map_reserved["NUMPADONE"] != null) { - _g.setReserved("NUMPADONE",97); - } else { - _g.h["NUMPADONE"] = 97; - } - if(__map_reserved["NUMPADTWO"] != null) { - _g.setReserved("NUMPADTWO",98); - } else { - _g.h["NUMPADTWO"] = 98; - } - if(__map_reserved["NUMPADTHREE"] != null) { - _g.setReserved("NUMPADTHREE",99); - } else { - _g.h["NUMPADTHREE"] = 99; - } - if(__map_reserved["NUMPADFOUR"] != null) { - _g.setReserved("NUMPADFOUR",100); - } else { - _g.h["NUMPADFOUR"] = 100; - } - if(__map_reserved["NUMPADFIVE"] != null) { - _g.setReserved("NUMPADFIVE",101); - } else { - _g.h["NUMPADFIVE"] = 101; - } - if(__map_reserved["NUMPADSIX"] != null) { - _g.setReserved("NUMPADSIX",102); - } else { - _g.h["NUMPADSIX"] = 102; - } - if(__map_reserved["NUMPADSEVEN"] != null) { - _g.setReserved("NUMPADSEVEN",103); - } else { - _g.h["NUMPADSEVEN"] = 103; - } - if(__map_reserved["NUMPADEIGHT"] != null) { - _g.setReserved("NUMPADEIGHT",104); - } else { - _g.h["NUMPADEIGHT"] = 104; - } - if(__map_reserved["NUMPADNINE"] != null) { - _g.setReserved("NUMPADNINE",105); - } else { - _g.h["NUMPADNINE"] = 105; - } - if(__map_reserved["NUMPADMINUS"] != null) { - _g.setReserved("NUMPADMINUS",109); - } else { - _g.h["NUMPADMINUS"] = 109; - } - if(__map_reserved["NUMPADPLUS"] != null) { - _g.setReserved("NUMPADPLUS",107); - } else { - _g.h["NUMPADPLUS"] = 107; - } - if(__map_reserved["NUMPADPERIOD"] != null) { - _g.setReserved("NUMPADPERIOD",110); - } else { - _g.h["NUMPADPERIOD"] = 110; - } - if(__map_reserved["NUMPADMULTIPLY"] != null) { - _g.setReserved("NUMPADMULTIPLY",106); - } else { - _g.h["NUMPADMULTIPLY"] = 106; - } - $r = _g; - return $r; -}(this)); -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.toStringMap = (function($this) { - var $r; - var _g = new haxe_ds_IntMap(); - _g.h[-2] = "ANY"; - _g.h[65] = "A"; - _g.h[66] = "B"; - _g.h[67] = "C"; - _g.h[68] = "D"; - _g.h[69] = "E"; - _g.h[70] = "F"; - _g.h[71] = "G"; - _g.h[72] = "H"; - _g.h[73] = "I"; - _g.h[74] = "J"; - _g.h[75] = "K"; - _g.h[76] = "L"; - _g.h[77] = "M"; - _g.h[78] = "N"; - _g.h[79] = "O"; - _g.h[80] = "P"; - _g.h[81] = "Q"; - _g.h[82] = "R"; - _g.h[83] = "S"; - _g.h[84] = "T"; - _g.h[85] = "U"; - _g.h[86] = "V"; - _g.h[87] = "W"; - _g.h[88] = "X"; - _g.h[89] = "Y"; - _g.h[90] = "Z"; - _g.h[48] = "ZERO"; - _g.h[49] = "ONE"; - _g.h[50] = "TWO"; - _g.h[51] = "THREE"; - _g.h[52] = "FOUR"; - _g.h[53] = "FIVE"; - _g.h[54] = "SIX"; - _g.h[55] = "SEVEN"; - _g.h[56] = "EIGHT"; - _g.h[57] = "NINE"; - _g.h[33] = "PAGEUP"; - _g.h[34] = "PAGEDOWN"; - _g.h[36] = "HOME"; - _g.h[35] = "END"; - _g.h[45] = "INSERT"; - _g.h[27] = "ESCAPE"; - _g.h[189] = "MINUS"; - _g.h[187] = "PLUS"; - _g.h[46] = "DELETE"; - _g.h[8] = "BACKSPACE"; - _g.h[219] = "LBRACKET"; - _g.h[221] = "RBRACKET"; - _g.h[220] = "BACKSLASH"; - _g.h[20] = "CAPSLOCK"; - _g.h[186] = "SEMICOLON"; - _g.h[222] = "QUOTE"; - _g.h[13] = "ENTER"; - _g.h[16] = "SHIFT"; - _g.h[188] = "COMMA"; - _g.h[190] = "PERIOD"; - _g.h[191] = "SLASH"; - _g.h[192] = "GRAVEACCENT"; - _g.h[17] = "CONTROL"; - _g.h[18] = "ALT"; - _g.h[32] = "SPACE"; - _g.h[38] = "UP"; - _g.h[40] = "DOWN"; - _g.h[37] = "LEFT"; - _g.h[39] = "RIGHT"; - _g.h[9] = "TAB"; - _g.h[301] = "PRINTSCREEN"; - _g.h[112] = "F1"; - _g.h[113] = "F2"; - _g.h[114] = "F3"; - _g.h[115] = "F4"; - _g.h[116] = "F5"; - _g.h[117] = "F6"; - _g.h[118] = "F7"; - _g.h[119] = "F8"; - _g.h[120] = "F9"; - _g.h[121] = "F10"; - _g.h[122] = "F11"; - _g.h[123] = "F12"; - _g.h[96] = "NUMPADZERO"; - _g.h[97] = "NUMPADONE"; - _g.h[98] = "NUMPADTWO"; - _g.h[99] = "NUMPADTHREE"; - _g.h[100] = "NUMPADFOUR"; - _g.h[101] = "NUMPADFIVE"; - _g.h[102] = "NUMPADSIX"; - _g.h[103] = "NUMPADSEVEN"; - _g.h[104] = "NUMPADEIGHT"; - _g.h[105] = "NUMPADNINE"; - _g.h[109] = "NUMPADMINUS"; - _g.h[107] = "NUMPADPLUS"; - _g.h[110] = "NUMPADPERIOD"; - _g.h[106] = "NUMPADMULTIPLY"; - $r = _g; - return $r; -}(this)); -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.ANY = -2; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.NONE = -1; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.A = 65; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.B = 66; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.C = 67; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.D = 68; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.E = 69; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.F = 70; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.G = 71; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.H = 72; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.I = 73; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.J = 74; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.K = 75; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.L = 76; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.M = 77; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.N = 78; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.O = 79; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.P = 80; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.Q = 81; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.R = 82; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.S = 83; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.T = 84; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.U = 85; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.V = 86; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.W = 87; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.X = 88; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.Y = 89; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.Z = 90; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.ZERO = 48; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.ONE = 49; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.TWO = 50; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.THREE = 51; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.FOUR = 52; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.FIVE = 53; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.SIX = 54; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.SEVEN = 55; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.EIGHT = 56; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.NINE = 57; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.PAGEUP = 33; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.PAGEDOWN = 34; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.HOME = 36; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.END = 35; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.INSERT = 45; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.ESCAPE = 27; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.MINUS = 189; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.PLUS = 187; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.DELETE = 46; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.BACKSPACE = 8; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.LBRACKET = 219; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.RBRACKET = 221; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.BACKSLASH = 220; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.CAPSLOCK = 20; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.SEMICOLON = 186; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.QUOTE = 222; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.ENTER = 13; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.SHIFT = 16; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.COMMA = 188; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.PERIOD = 190; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.SLASH = 191; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.GRAVEACCENT = 192; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.CONTROL = 17; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.ALT = 18; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.SPACE = 32; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.UP = 38; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.DOWN = 40; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.LEFT = 37; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.RIGHT = 39; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.TAB = 9; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.PRINTSCREEN = 301; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.F1 = 112; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.F2 = 113; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.F3 = 114; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.F4 = 115; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.F5 = 116; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.F6 = 117; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.F7 = 118; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.F8 = 119; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.F9 = 120; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.F10 = 121; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.F11 = 122; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.F12 = 123; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.NUMPADZERO = 96; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.NUMPADONE = 97; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.NUMPADTWO = 98; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.NUMPADTHREE = 99; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.NUMPADFOUR = 100; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.NUMPADFIVE = 101; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.NUMPADSIX = 102; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.NUMPADSEVEN = 103; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.NUMPADEIGHT = 104; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.NUMPADNINE = 105; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.NUMPADMINUS = 109; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.NUMPADPLUS = 107; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.NUMPADPERIOD = 110; -flixel_input_keyboard__$FlxKey_FlxKey_$Impl_$.NUMPADMULTIPLY = 106; -openfl_display_BitmapData.__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"]}}}; -openfl_display_BitmapData.VERTEX_BUFFER_STRIDE = 14; -openfl_display_BitmapData.__supportsBGRA = null; -openfl_display_BitmapData.__tempVector = new lime_math_Vector2(); -flixel_input_mouse__$FlxMouse_GraphicCursor.resourceType = "image/png"; -flixel_input_mouse__$FlxMouse_GraphicCursor.resourceName = "__ASSET__:bitmap_flixel_input_mouse__FlxMouse_GraphicCursor"; -flixel_input_touch_FlxTouchManager.maxTouchPoints = 0; -flixel_math_FlxMath.MIN_VALUE_FLOAT = 0.0000000000000001; -flixel_math_FlxMath.MAX_VALUE_FLOAT = 1.79e+308; -flixel_math_FlxMath.MIN_VALUE_INT = -2147483647; -flixel_math_FlxMath.MAX_VALUE_INT = 2147483647; -flixel_math_FlxMath.SQUARE_ROOT_OF_TWO = 1.41421356237; -flixel_math_FlxMath.EPSILON = 0.0000001; -flixel_math__$FlxVector_FlxVector_$Impl_$.EPSILON = 0.0000001; -flixel_math__$FlxVector_FlxVector_$Impl_$.EPSILON_SQUARED = 9.99999999999999841e-15; -flixel_math__$FlxVector_FlxVector_$Impl_$._vector1 = (function($this) { - var $r; - var this1 = new flixel_math_FlxPoint(0,0); - $r = this1; - return $r; -}(this)); -flixel_math__$FlxVector_FlxVector_$Impl_$._vector2 = (function($this) { - var $r; - var this1 = new flixel_math_FlxPoint(0,0); - $r = this1; - return $r; -}(this)); -flixel_math__$FlxVector_FlxVector_$Impl_$._vector3 = (function($this) { - var $r; - var this1 = new flixel_math_FlxPoint(0,0); - $r = this1; - return $r; -}(this)); -flixel_system_GraphicLogo.resourceType = "image/png"; -flixel_system_GraphicLogo.resourceName = "__ASSET__:bitmap_flixel_system_GraphicLogo"; -flixel_system_GraphicVirtualInput.resourceType = "image/png"; -flixel_system_GraphicVirtualInput.resourceName = "__ASSET__:bitmap_flixel_system_GraphicVirtualInput"; -openfl_utils_ByteArrayData.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl_utils_ByteArrayData.defaultObjectEncoding = 10; -openfl_utils_ByteArrayData.__defaultEndian = null; -flixel_system_VirtualInputData.resourceName = "__ASSET__:file_flixel_system_VirtualInputData"; -flixel_system_FlxAssets.FONT_DEFAULT = "Nokia Cellphone FC Small"; -flixel_system_FlxAssets.FONT_DEBUGGER = "Monsterrat"; -flixel_system_FlxBasePreloader.LOCAL = "localhost"; -flixel_system_FlxLinkedList._NUM_CACHED_FLX_LIST = 0; -flixel_system__$FlxPreloader_GraphicLogoLight.resourceType = "image/png"; -flixel_system__$FlxPreloader_GraphicLogoLight.resourceName = "__ASSET__:bitmap_flixel_system__FlxPreloader_GraphicLogoLight"; -flixel_system__$FlxPreloader_GraphicLogoCorners.resourceType = "image/png"; -flixel_system__$FlxPreloader_GraphicLogoCorners.resourceName = "__ASSET__:bitmap_flixel_system__FlxPreloader_GraphicLogoCorners"; -flixel_system_FlxQuadTree.A_LIST = 0; -flixel_system_FlxQuadTree.B_LIST = 1; -flixel_system_FlxQuadTree._NUM_CACHED_QUAD_TREES = 0; -flixel_system_debug__$FlxDebugger_GraphicFlixel.resourceType = "image/png"; -flixel_system_debug__$FlxDebugger_GraphicFlixel.resourceName = "__ASSET__:bitmap_flixel_system_debug__FlxDebugger_GraphicFlixel"; -flixel_system_debug__$FlxDebugger_GraphicDrawDebug.resourceType = "image/png"; -flixel_system_debug__$FlxDebugger_GraphicDrawDebug.resourceName = "__ASSET__:bitmap_flixel_system_debug__FlxDebugger_GraphicDrawDebug"; -flixel_system_debug_GraphicLog.resourceType = "image/png"; -flixel_system_debug_GraphicLog.resourceName = "__ASSET__:bitmap_flixel_system_debug_GraphicLog"; -flixel_system_debug_GraphicStats.resourceType = "image/png"; -flixel_system_debug_GraphicStats.resourceName = "__ASSET__:bitmap_flixel_system_debug_GraphicStats"; -flixel_system_debug_GraphicWatch.resourceType = "image/png"; -flixel_system_debug_GraphicWatch.resourceName = "__ASSET__:bitmap_flixel_system_debug_GraphicWatch"; -flixel_system_debug_GraphicBitmapLog.resourceType = "image/png"; -flixel_system_debug_GraphicBitmapLog.resourceName = "__ASSET__:bitmap_flixel_system_debug_GraphicBitmapLog"; -flixel_system_debug_GraphicConsole.resourceType = "image/png"; -flixel_system_debug_GraphicConsole.resourceName = "__ASSET__:bitmap_flixel_system_debug_GraphicConsole"; -flixel_system_debug_GraphicArrowLeft.resourceType = "image/png"; -flixel_system_debug_GraphicArrowLeft.resourceName = "__ASSET__:bitmap_flixel_system_debug_GraphicArrowLeft"; -flixel_system_debug_GraphicArrowRight.resourceType = "image/png"; -flixel_system_debug_GraphicArrowRight.resourceName = "__ASSET__:bitmap_flixel_system_debug_GraphicArrowRight"; -flixel_system_debug_GraphicCloseButton.resourceType = "image/png"; -flixel_system_debug_GraphicCloseButton.resourceName = "__ASSET__:bitmap_flixel_system_debug_GraphicCloseButton"; -flixel_system_debug_GraphicInteractive.resourceType = "image/png"; -flixel_system_debug_GraphicInteractive.resourceName = "__ASSET__:bitmap_flixel_system_debug_GraphicInteractive"; -flixel_system_debug_Tooltip._tooltips = []; -flixel_system_debug_TooltipOverlay.BG_COLOR = -12961222; -flixel_system_debug_TooltipOverlay.TEXT_ALPHA = 0.8; -flixel_system_debug_TooltipOverlay.MARGIN_X = 10; -flixel_system_debug_TooltipOverlay.MARGIN_Y = 10; -flixel_system_debug__$Window_GraphicWindowHandle.resourceType = "image/png"; -flixel_system_debug__$Window_GraphicWindowHandle.resourceName = "__ASSET__:bitmap_flixel_system_debug__Window_GraphicWindowHandle"; -flixel_system_debug_Window.BG_COLOR = -580952225; -flixel_system_debug_Window.HEADER_COLOR = -1157627904; -flixel_system_debug_Window.HEADER_ALPHA = 0.8; -flixel_system_debug_Window.HEADER_HEIGHT = 15; -flixel_system_debug_Window.WINDOW_AMOUNT = 0; -flixel_system_debug_completion_CompletionListEntry.WIDTH = 150; -flixel_system_debug_completion_CompletionListEntry.HEIGHT = 20; -flixel_system_debug_completion_CompletionListEntry.COLOR_NORMAL = -10526881; -flixel_system_debug_completion_CompletionListEntry.COLOR_HIGHLIGHT = -9605779; -flixel_system_debug_completion_CompletionListEntry.GUTTER = 4; -flixel_system_debug_completion_CompletionListScrollBar.BG_COLOR = -12303292; -flixel_system_debug_completion_CompletionListScrollBar.HANDLE_COLOR = -14540254; -flixel_system_debug_interaction_tools__$Eraser_GraphicEraserTool.resourceType = "image/png"; -flixel_system_debug_interaction_tools__$Eraser_GraphicEraserTool.resourceName = "__ASSET__:bitmap_flixel_system_debug_interaction_tools__Eraser_GraphicEraserTool"; -flixel_system_debug_interaction_tools__$Mover_GraphicMoverTool.resourceType = "image/png"; -flixel_system_debug_interaction_tools__$Mover_GraphicMoverTool.resourceName = "__ASSET__:bitmap_flixel_system_debug_interaction_tools__Mover_GraphicMoverTool"; -flixel_system_debug_interaction_tools_GraphicCursorCross.resourceType = "image/png"; -flixel_system_debug_interaction_tools_GraphicCursorCross.resourceName = "__ASSET__:bitmap_flixel_system_debug_interaction_tools_GraphicCursorCross"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformTool.resourceType = "image/png"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformTool.resourceName = "__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformTool"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorDefault.resourceType = "image/png"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorDefault.resourceName = "__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorDefault"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleY.resourceType = "image/png"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleY.resourceName = "__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorScaleY"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleX.resourceType = "image/png"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleX.resourceName = "__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorScaleX"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleXY.resourceType = "image/png"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorScaleXY.resourceName = "__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorScaleXY"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorRotate.resourceType = "image/png"; -flixel_system_debug_interaction_tools__$Transform_GraphicTransformCursorRotate.resourceName = "__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorRotate"; -flixel_system_debug_interaction_tools_Transform.OUTLINE_PADDING = 5.0; -flixel_system_debug_interaction_tools_Transform.MARKER_SIZE = 3.0; -flixel_system_debug_interaction_tools_Transform.MARKER_INTERACTION_DISTANCE = 5.0; -flixel_system_debug_interaction_tools_Transform.RESIZE_STEP = 10.0; -flixel_system_debug_interaction_tools_Transform.CURSOR_ROTATE = "transformRotate"; -flixel_system_debug_interaction_tools_Transform.CURSOR_SCALE_X = "transformScaleX"; -flixel_system_debug_interaction_tools_Transform.CURSOR_SCALE_Y = "transformScaleY"; -flixel_system_debug_interaction_tools_Transform.CURSOR_SCALE_XY = "transformScaleXY"; -flixel_system_debug_interaction_tools_Transform.MARKER_ROTATE = 0; -flixel_system_debug_interaction_tools_Transform.MARKER_SCALE_X = 1; -flixel_system_debug_interaction_tools_Transform.MARKER_SCALE_XY = 2; -flixel_system_debug_interaction_tools_Transform.MARKER_SCALE_Y = 3; -flixel_system_debug_log_LogStyle.NORMAL = new flixel_system_debug_log_LogStyle(); -flixel_system_debug_log_LogStyle.WARNING = new flixel_system_debug_log_LogStyle("[WARNING] ","D9F85C",12,false,false,false,"flixel/sounds/beep",true); -flixel_system_debug_log_LogStyle.ERROR = new flixel_system_debug_log_LogStyle("[ERROR] ","FF8888",12,false,false,false,"flixel/sounds/beep",true); -flixel_system_debug_log_LogStyle.NOTICE = new flixel_system_debug_log_LogStyle("[NOTICE] ","5CF878",12,false); -flixel_system_debug_log_LogStyle.CONSOLE = new flixel_system_debug_log_LogStyle("> ","5A96FA",12,false); -flixel_system_debug_stats__$Stats_GraphicMinimizeButton.resourceType = "image/png"; -flixel_system_debug_stats__$Stats_GraphicMinimizeButton.resourceName = "__ASSET__:bitmap_flixel_system_debug_stats__Stats_GraphicMinimizeButton"; -flixel_system_debug_stats__$Stats_GraphicMaximizeButton.resourceType = "image/png"; -flixel_system_debug_stats__$Stats_GraphicMaximizeButton.resourceName = "__ASSET__:bitmap_flixel_system_debug_stats__Stats_GraphicMaximizeButton"; -flixel_text_FlxText.VERTICAL_GUTTER = 4; -flixel_text__$FlxText_FlxTextAlign_$Impl_$.LEFT = "left"; -flixel_text__$FlxText_FlxTextAlign_$Impl_$.CENTER = "center"; -flixel_text__$FlxText_FlxTextAlign_$Impl_$.RIGHT = "right"; -flixel_text__$FlxText_FlxTextAlign_$Impl_$.JUSTIFY = "justify"; -flixel_tile_FlxBaseTilemap.offsetAutoTile = [0,0,0,0,2,2,0,3,0,0,0,0,0,0,0,0,11,11,0,0,13,13,0,14,0,0,0,0,18,18,0,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,51,51,0,0,53,53,0,54,0,0,0,0,0,0,0,0,62,62,0,0,64,64,0,65,0,0,0,0,69,69,0,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,86,86,0,0,88,88,0,89,0,0,0,0,93,93,0,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,159,0,0,0,162,0,163,0,0,0,0,0,0,0,0,0,172,0,0,0,175,0,176,0,0,0,0,0,181,0,182,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,199,0,0,0,202,0,203,0,0,0,0,0,208,0,209]; -flixel_tweens_FlxEase.PI2 = Math.PI / 2; -flixel_tweens_FlxEase.EL = 2 * Math.PI / .45; -flixel_tweens_FlxEase.B1 = 0.363636363636363646; -flixel_tweens_FlxEase.B2 = 0.727272727272727293; -flixel_tweens_FlxEase.B3 = 0.545454545454545414; -flixel_tweens_FlxEase.B4 = 0.909090909090909061; -flixel_tweens_FlxEase.B5 = 0.818181818181818232; -flixel_tweens_FlxEase.B6 = 0.954545454545454586; -flixel_tweens_FlxEase.ELASTIC_AMPLITUDE = 1; -flixel_tweens_FlxEase.ELASTIC_PERIOD = 0.4; -flixel_tweens_FlxTween.PERSIST = 1; -flixel_tweens_FlxTween.LOOPING = 2; -flixel_tweens_FlxTween.PINGPONG = 4; -flixel_tweens_FlxTween.ONESHOT = 8; -flixel_tweens_FlxTween.BACKWARD = 16; -flixel_ui_FlxButton.NORMAL = 0; -flixel_ui_FlxButton.HIGHLIGHT = 1; -flixel_ui_FlxButton.PRESSED = 2; -openfl_geom_Rectangle.__pool = new lime_utils_ObjectPool(function() { - return new openfl_geom_Rectangle(); -},function(r) { - r.setTo(0,0,0,0); -}); -flixel_util_FlxBitmapDataPool.maxLength = 8; -flixel_util_FlxBitmapDataPool.$length = 0; -flixel_util_FlxBitmapDataPool._head = null; -flixel_util_FlxBitmapDataPool._tail = null; -flixel_util_FlxBitmapDataPool._rect = new openfl_geom_Rectangle(); -flixel_util_FlxBitmapDataUtil.matrix = new flixel_math_FlxMatrix(); -flixel_util_FlxCollision.pointA = (function($this) { - var $r; - var this1 = new flixel_math_FlxPoint(0,0); - $r = this1; - return $r; -}(this)); -flixel_util_FlxCollision.pointB = (function($this) { - var $r; - var this1 = new flixel_math_FlxPoint(0,0); - $r = this1; - return $r; -}(this)); -flixel_util_FlxCollision.centerA = (function($this) { - var $r; - var this1 = new flixel_math_FlxPoint(0,0); - $r = this1; - return $r; -}(this)); -flixel_util_FlxCollision.centerB = (function($this) { - var $r; - var this1 = new flixel_math_FlxPoint(0,0); - $r = this1; - return $r; -}(this)); -flixel_util_FlxCollision.matrixA = new flixel_math_FlxMatrix(); -flixel_util_FlxCollision.matrixB = new flixel_math_FlxMatrix(); -flixel_util_FlxCollision.testMatrix = new flixel_math_FlxMatrix(); -flixel_util_FlxCollision.boundsA = new flixel_math_FlxRect(); -flixel_util_FlxCollision.boundsB = new flixel_math_FlxRect(); -flixel_util_FlxCollision.intersect = new flixel_math_FlxRect(); -flixel_util_FlxCollision.flashRect = new openfl_geom_Rectangle(); -flixel_util__$FlxColor_FlxColor_$Impl_$.TRANSPARENT = 0; -flixel_util__$FlxColor_FlxColor_$Impl_$.WHITE = -1; -flixel_util__$FlxColor_FlxColor_$Impl_$.GRAY = -8355712; -flixel_util__$FlxColor_FlxColor_$Impl_$.BLACK = -16777216; -flixel_util__$FlxColor_FlxColor_$Impl_$.GREEN = -16744448; -flixel_util__$FlxColor_FlxColor_$Impl_$.LIME = -16711936; -flixel_util__$FlxColor_FlxColor_$Impl_$.YELLOW = -256; -flixel_util__$FlxColor_FlxColor_$Impl_$.ORANGE = -23296; -flixel_util__$FlxColor_FlxColor_$Impl_$.RED = -65536; -flixel_util__$FlxColor_FlxColor_$Impl_$.PURPLE = -8388480; -flixel_util__$FlxColor_FlxColor_$Impl_$.BLUE = -16776961; -flixel_util__$FlxColor_FlxColor_$Impl_$.BROWN = -7650029; -flixel_util__$FlxColor_FlxColor_$Impl_$.PINK = -16181; -flixel_util__$FlxColor_FlxColor_$Impl_$.MAGENTA = -65281; -flixel_util__$FlxColor_FlxColor_$Impl_$.CYAN = -16711681; -flixel_util__$FlxColor_FlxColor_$Impl_$.colorLookup = (function($this) { - var $r; - var _g = new haxe_ds_StringMap(); - if(__map_reserved["TRANSPARENT"] != null) { - _g.setReserved("TRANSPARENT",0); - } else { - _g.h["TRANSPARENT"] = 0; - } - if(__map_reserved["WHITE"] != null) { - _g.setReserved("WHITE",-1); - } else { - _g.h["WHITE"] = -1; - } - if(__map_reserved["GRAY"] != null) { - _g.setReserved("GRAY",-8355712); - } else { - _g.h["GRAY"] = -8355712; - } - if(__map_reserved["BLACK"] != null) { - _g.setReserved("BLACK",-16777216); - } else { - _g.h["BLACK"] = -16777216; - } - if(__map_reserved["GREEN"] != null) { - _g.setReserved("GREEN",-16744448); - } else { - _g.h["GREEN"] = -16744448; - } - if(__map_reserved["LIME"] != null) { - _g.setReserved("LIME",-16711936); - } else { - _g.h["LIME"] = -16711936; - } - if(__map_reserved["YELLOW"] != null) { - _g.setReserved("YELLOW",-256); - } else { - _g.h["YELLOW"] = -256; - } - if(__map_reserved["ORANGE"] != null) { - _g.setReserved("ORANGE",-23296); - } else { - _g.h["ORANGE"] = -23296; - } - if(__map_reserved["RED"] != null) { - _g.setReserved("RED",-65536); - } else { - _g.h["RED"] = -65536; - } - if(__map_reserved["PURPLE"] != null) { - _g.setReserved("PURPLE",-8388480); - } else { - _g.h["PURPLE"] = -8388480; - } - if(__map_reserved["BLUE"] != null) { - _g.setReserved("BLUE",-16776961); - } else { - _g.h["BLUE"] = -16776961; - } - if(__map_reserved["BROWN"] != null) { - _g.setReserved("BROWN",-7650029); - } else { - _g.h["BROWN"] = -7650029; - } - if(__map_reserved["PINK"] != null) { - _g.setReserved("PINK",-16181); - } else { - _g.h["PINK"] = -16181; - } - if(__map_reserved["MAGENTA"] != null) { - _g.setReserved("MAGENTA",-65281); - } else { - _g.h["MAGENTA"] = -65281; - } - if(__map_reserved["CYAN"] != null) { - _g.setReserved("CYAN",-16711681); - } else { - _g.h["CYAN"] = -16711681; - } - $r = _g; - return $r; -}(this)); -flixel_util__$FlxColor_FlxColor_$Impl_$.COLOR_REGEX = new EReg("^(0x|#)(([A-F0-9]{2}){3,4})$","i"); -flixel_util_FlxPath.FORWARD = 0; -flixel_util_FlxPath.BACKWARD = 1; -flixel_util_FlxPath.LOOP_FORWARD = 16; -flixel_util_FlxPath.LOOP_BACKWARD = 256; -flixel_util_FlxPath.YOYO = 4096; -flixel_util_FlxPath.HORIZONTAL_ONLY = 65536; -flixel_util_FlxPath.VERTICAL_ONLY = 1048576; -flixel_util_FlxPath._point = (function($this) { - var $r; - var point = flixel_math_FlxPoint._pool.get().set(0,0); - point._inPool = false; - $r = point; - return $r; -}(this)); -flixel_util_FlxSort.ASCENDING = -1; -flixel_util_FlxSort.DESCENDING = 1; -flixel_util_FlxSpriteUtil.flashGfxSprite = new openfl_display_Sprite(); -flixel_util_FlxSpriteUtil.flashGfx = flixel_util_FlxSpriteUtil.flashGfxSprite.get_graphics(); -flixel_util_LabelValuePair._pool = new flixel_util_FlxPool_$flixel_$util_$LabelValuePair(flixel_util_LabelValuePair); -haxe_Serializer.USE_CACHE = false; -haxe_Serializer.USE_ENUM_INDEX = false; -haxe_Serializer.BASE64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789%:"; -haxe_Serializer.BASE64_CODES = null; -haxe_Unserializer.DEFAULT_RESOLVER = new haxe__$Unserializer_DefaultResolver(); -haxe_Unserializer.BASE64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789%:"; -haxe_Unserializer.CODES = null; -haxe_crypto_Base64.CHARS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; -haxe_crypto_Base64.BYTES = haxe_io_Bytes.ofString(haxe_crypto_Base64.CHARS); -haxe_io_FPHelper.i64tmp = (function($this) { - var $r; - var this1 = new haxe__$Int64__$_$_$Int64(0,0); - $r = this1; - return $r; -}(this)); -haxe_io_FPHelper.helper = new DataView(new ArrayBuffer(8)); -haxe_xml_Parser.escapes = (function($this) { - var $r; - var h = new haxe_ds_StringMap(); - if(__map_reserved["lt"] != null) { - h.setReserved("lt","<"); - } else { - h.h["lt"] = "<"; - } - if(__map_reserved["gt"] != null) { - h.setReserved("gt",">"); - } else { - h.h["gt"] = ">"; - } - if(__map_reserved["amp"] != null) { - h.setReserved("amp","&"); - } else { - h.h["amp"] = "&"; - } - if(__map_reserved["quot"] != null) { - h.setReserved("quot","\""); - } else { - h.h["quot"] = "\""; - } - if(__map_reserved["apos"] != null) { - h.setReserved("apos","'"); - } else { - h.h["apos"] = "'"; - } - $r = h; - return $r; -}(this)); -haxe_zip_InflateImpl.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]; -haxe_zip_InflateImpl.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]; -haxe_zip_InflateImpl.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]; -haxe_zip_InflateImpl.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]; -haxe_zip_InflateImpl.CODE_LENGTHS_POS = [16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]; -haxe_zip_InflateImpl.FIXED_HUFFMAN = null; -hscript_Parser.p1 = 0; -hscript_Parser.readPos = 0; -hscript_Parser.tokenMin = 0; -hscript_Parser.tokenMax = 0; -lime__$internal_backend_html5_HTML5HTTPRequest.OPTION_REVOKE_URL = 1; -lime__$internal_backend_html5_HTML5HTTPRequest.activeRequests = 0; -lime__$internal_backend_html5_HTML5HTTPRequest.requestLimit = 17; -lime__$internal_backend_html5_HTML5HTTPRequest.requestQueue = new haxe_ds_List(); -lime__$internal_backend_html5_HTML5Window.dummyCharacter = ""; -lime__$internal_backend_html5_HTML5Window.windowID = 0; -lime__$internal_format_Base64.DICTIONARY = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""); -lime__$internal_format_Base64.EXTENDED_DICTIONARY = (function($this) { - var $r; - var result = []; - { - var _g = 0; - var _g1 = lime__$internal_format_Base64.DICTIONARY; - while(_g < _g1.length) { - var a = _g1[_g]; - ++_g; - var _g2 = 0; - var _g11 = lime__$internal_format_Base64.DICTIONARY; - while(_g2 < _g11.length) { - var b = _g11[_g2]; - ++_g2; - result.push(a + b); - } - } - } - $r = result; - return $r; -}(this)); -lime__$internal_graphics_StackBlur.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]; -lime__$internal_graphics_StackBlur.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]; -lime_graphics_cairo__$CairoFTFontFace_CairoFTFontFace_$Impl_$.FT_LOAD_FORCE_AUTOHINT = 32; -lime_graphics_opengl_GL.DEPTH_BUFFER_BIT = 256; -lime_graphics_opengl_GL.STENCIL_BUFFER_BIT = 1024; -lime_graphics_opengl_GL.COLOR_BUFFER_BIT = 16384; -lime_graphics_opengl_GL.POINTS = 0; -lime_graphics_opengl_GL.LINES = 1; -lime_graphics_opengl_GL.LINE_LOOP = 2; -lime_graphics_opengl_GL.LINE_STRIP = 3; -lime_graphics_opengl_GL.TRIANGLES = 4; -lime_graphics_opengl_GL.TRIANGLE_STRIP = 5; -lime_graphics_opengl_GL.TRIANGLE_FAN = 6; -lime_graphics_opengl_GL.ZERO = 0; -lime_graphics_opengl_GL.ONE = 1; -lime_graphics_opengl_GL.SRC_COLOR = 768; -lime_graphics_opengl_GL.ONE_MINUS_SRC_COLOR = 769; -lime_graphics_opengl_GL.SRC_ALPHA = 770; -lime_graphics_opengl_GL.ONE_MINUS_SRC_ALPHA = 771; -lime_graphics_opengl_GL.DST_ALPHA = 772; -lime_graphics_opengl_GL.ONE_MINUS_DST_ALPHA = 773; -lime_graphics_opengl_GL.DST_COLOR = 774; -lime_graphics_opengl_GL.ONE_MINUS_DST_COLOR = 775; -lime_graphics_opengl_GL.SRC_ALPHA_SATURATE = 776; -lime_graphics_opengl_GL.FUNC_ADD = 32774; -lime_graphics_opengl_GL.BLEND_EQUATION = 32777; -lime_graphics_opengl_GL.BLEND_EQUATION_RGB = 32777; -lime_graphics_opengl_GL.BLEND_EQUATION_ALPHA = 34877; -lime_graphics_opengl_GL.FUNC_SUBTRACT = 32778; -lime_graphics_opengl_GL.FUNC_REVERSE_SUBTRACT = 32779; -lime_graphics_opengl_GL.BLEND_DST_RGB = 32968; -lime_graphics_opengl_GL.BLEND_SRC_RGB = 32969; -lime_graphics_opengl_GL.BLEND_DST_ALPHA = 32970; -lime_graphics_opengl_GL.BLEND_SRC_ALPHA = 32971; -lime_graphics_opengl_GL.CONSTANT_COLOR = 32769; -lime_graphics_opengl_GL.ONE_MINUS_CONSTANT_COLOR = 32770; -lime_graphics_opengl_GL.CONSTANT_ALPHA = 32771; -lime_graphics_opengl_GL.ONE_MINUS_CONSTANT_ALPHA = 32772; -lime_graphics_opengl_GL.BLEND_COLOR = 32773; -lime_graphics_opengl_GL.ARRAY_BUFFER = 34962; -lime_graphics_opengl_GL.ELEMENT_ARRAY_BUFFER = 34963; -lime_graphics_opengl_GL.ARRAY_BUFFER_BINDING = 34964; -lime_graphics_opengl_GL.ELEMENT_ARRAY_BUFFER_BINDING = 34965; -lime_graphics_opengl_GL.STREAM_DRAW = 35040; -lime_graphics_opengl_GL.STATIC_DRAW = 35044; -lime_graphics_opengl_GL.DYNAMIC_DRAW = 35048; -lime_graphics_opengl_GL.BUFFER_SIZE = 34660; -lime_graphics_opengl_GL.BUFFER_USAGE = 34661; -lime_graphics_opengl_GL.CURRENT_VERTEX_ATTRIB = 34342; -lime_graphics_opengl_GL.FRONT = 1028; -lime_graphics_opengl_GL.BACK = 1029; -lime_graphics_opengl_GL.FRONT_AND_BACK = 1032; -lime_graphics_opengl_GL.CULL_FACE = 2884; -lime_graphics_opengl_GL.BLEND = 3042; -lime_graphics_opengl_GL.DITHER = 3024; -lime_graphics_opengl_GL.STENCIL_TEST = 2960; -lime_graphics_opengl_GL.DEPTH_TEST = 2929; -lime_graphics_opengl_GL.SCISSOR_TEST = 3089; -lime_graphics_opengl_GL.POLYGON_OFFSET_FILL = 32823; -lime_graphics_opengl_GL.SAMPLE_ALPHA_TO_COVERAGE = 32926; -lime_graphics_opengl_GL.SAMPLE_COVERAGE = 32928; -lime_graphics_opengl_GL.NO_ERROR = 0; -lime_graphics_opengl_GL.INVALID_ENUM = 1280; -lime_graphics_opengl_GL.INVALID_VALUE = 1281; -lime_graphics_opengl_GL.INVALID_OPERATION = 1282; -lime_graphics_opengl_GL.OUT_OF_MEMORY = 1285; -lime_graphics_opengl_GL.CW = 2304; -lime_graphics_opengl_GL.CCW = 2305; -lime_graphics_opengl_GL.LINE_WIDTH = 2849; -lime_graphics_opengl_GL.ALIASED_POINT_SIZE_RANGE = 33901; -lime_graphics_opengl_GL.ALIASED_LINE_WIDTH_RANGE = 33902; -lime_graphics_opengl_GL.CULL_FACE_MODE = 2885; -lime_graphics_opengl_GL.FRONT_FACE = 2886; -lime_graphics_opengl_GL.DEPTH_RANGE = 2928; -lime_graphics_opengl_GL.DEPTH_WRITEMASK = 2930; -lime_graphics_opengl_GL.DEPTH_CLEAR_VALUE = 2931; -lime_graphics_opengl_GL.DEPTH_FUNC = 2932; -lime_graphics_opengl_GL.STENCIL_CLEAR_VALUE = 2961; -lime_graphics_opengl_GL.STENCIL_FUNC = 2962; -lime_graphics_opengl_GL.STENCIL_FAIL = 2964; -lime_graphics_opengl_GL.STENCIL_PASS_DEPTH_FAIL = 2965; -lime_graphics_opengl_GL.STENCIL_PASS_DEPTH_PASS = 2966; -lime_graphics_opengl_GL.STENCIL_REF = 2967; -lime_graphics_opengl_GL.STENCIL_VALUE_MASK = 2963; -lime_graphics_opengl_GL.STENCIL_WRITEMASK = 2968; -lime_graphics_opengl_GL.STENCIL_BACK_FUNC = 34816; -lime_graphics_opengl_GL.STENCIL_BACK_FAIL = 34817; -lime_graphics_opengl_GL.STENCIL_BACK_PASS_DEPTH_FAIL = 34818; -lime_graphics_opengl_GL.STENCIL_BACK_PASS_DEPTH_PASS = 34819; -lime_graphics_opengl_GL.STENCIL_BACK_REF = 36003; -lime_graphics_opengl_GL.STENCIL_BACK_VALUE_MASK = 36004; -lime_graphics_opengl_GL.STENCIL_BACK_WRITEMASK = 36005; -lime_graphics_opengl_GL.VIEWPORT = 2978; -lime_graphics_opengl_GL.SCISSOR_BOX = 3088; -lime_graphics_opengl_GL.COLOR_CLEAR_VALUE = 3106; -lime_graphics_opengl_GL.COLOR_WRITEMASK = 3107; -lime_graphics_opengl_GL.UNPACK_ALIGNMENT = 3317; -lime_graphics_opengl_GL.PACK_ALIGNMENT = 3333; -lime_graphics_opengl_GL.MAX_TEXTURE_SIZE = 3379; -lime_graphics_opengl_GL.MAX_VIEWPORT_DIMS = 3386; -lime_graphics_opengl_GL.SUBPIXEL_BITS = 3408; -lime_graphics_opengl_GL.RED_BITS = 3410; -lime_graphics_opengl_GL.GREEN_BITS = 3411; -lime_graphics_opengl_GL.BLUE_BITS = 3412; -lime_graphics_opengl_GL.ALPHA_BITS = 3413; -lime_graphics_opengl_GL.DEPTH_BITS = 3414; -lime_graphics_opengl_GL.STENCIL_BITS = 3415; -lime_graphics_opengl_GL.POLYGON_OFFSET_UNITS = 10752; -lime_graphics_opengl_GL.POLYGON_OFFSET_FACTOR = 32824; -lime_graphics_opengl_GL.TEXTURE_BINDING_2D = 32873; -lime_graphics_opengl_GL.SAMPLE_BUFFERS = 32936; -lime_graphics_opengl_GL.SAMPLES = 32937; -lime_graphics_opengl_GL.SAMPLE_COVERAGE_VALUE = 32938; -lime_graphics_opengl_GL.SAMPLE_COVERAGE_INVERT = 32939; -lime_graphics_opengl_GL.NUM_COMPRESSED_TEXTURE_FORMATS = 34466; -lime_graphics_opengl_GL.COMPRESSED_TEXTURE_FORMATS = 34467; -lime_graphics_opengl_GL.DONT_CARE = 4352; -lime_graphics_opengl_GL.FASTEST = 4353; -lime_graphics_opengl_GL.NICEST = 4354; -lime_graphics_opengl_GL.GENERATE_MIPMAP_HINT = 33170; -lime_graphics_opengl_GL.BYTE = 5120; -lime_graphics_opengl_GL.UNSIGNED_BYTE = 5121; -lime_graphics_opengl_GL.SHORT = 5122; -lime_graphics_opengl_GL.UNSIGNED_SHORT = 5123; -lime_graphics_opengl_GL.INT = 5124; -lime_graphics_opengl_GL.UNSIGNED_INT = 5125; -lime_graphics_opengl_GL.FLOAT = 5126; -lime_graphics_opengl_GL.DEPTH_COMPONENT = 6402; -lime_graphics_opengl_GL.ALPHA = 6406; -lime_graphics_opengl_GL.RGB = 6407; -lime_graphics_opengl_GL.RGBA = 6408; -lime_graphics_opengl_GL.LUMINANCE = 6409; -lime_graphics_opengl_GL.LUMINANCE_ALPHA = 6410; -lime_graphics_opengl_GL.UNSIGNED_SHORT_4_4_4_4 = 32819; -lime_graphics_opengl_GL.UNSIGNED_SHORT_5_5_5_1 = 32820; -lime_graphics_opengl_GL.UNSIGNED_SHORT_5_6_5 = 33635; -lime_graphics_opengl_GL.FRAGMENT_SHADER = 35632; -lime_graphics_opengl_GL.VERTEX_SHADER = 35633; -lime_graphics_opengl_GL.MAX_VERTEX_ATTRIBS = 34921; -lime_graphics_opengl_GL.MAX_VERTEX_UNIFORM_VECTORS = 36347; -lime_graphics_opengl_GL.MAX_VARYING_VECTORS = 36348; -lime_graphics_opengl_GL.MAX_COMBINED_TEXTURE_IMAGE_UNITS = 35661; -lime_graphics_opengl_GL.MAX_VERTEX_TEXTURE_IMAGE_UNITS = 35660; -lime_graphics_opengl_GL.MAX_TEXTURE_IMAGE_UNITS = 34930; -lime_graphics_opengl_GL.MAX_FRAGMENT_UNIFORM_VECTORS = 36349; -lime_graphics_opengl_GL.SHADER_TYPE = 35663; -lime_graphics_opengl_GL.DELETE_STATUS = 35712; -lime_graphics_opengl_GL.LINK_STATUS = 35714; -lime_graphics_opengl_GL.VALIDATE_STATUS = 35715; -lime_graphics_opengl_GL.ATTACHED_SHADERS = 35717; -lime_graphics_opengl_GL.ACTIVE_UNIFORMS = 35718; -lime_graphics_opengl_GL.ACTIVE_ATTRIBUTES = 35721; -lime_graphics_opengl_GL.SHADING_LANGUAGE_VERSION = 35724; -lime_graphics_opengl_GL.CURRENT_PROGRAM = 35725; -lime_graphics_opengl_GL.NEVER = 512; -lime_graphics_opengl_GL.LESS = 513; -lime_graphics_opengl_GL.EQUAL = 514; -lime_graphics_opengl_GL.LEQUAL = 515; -lime_graphics_opengl_GL.GREATER = 516; -lime_graphics_opengl_GL.NOTEQUAL = 517; -lime_graphics_opengl_GL.GEQUAL = 518; -lime_graphics_opengl_GL.ALWAYS = 519; -lime_graphics_opengl_GL.KEEP = 7680; -lime_graphics_opengl_GL.REPLACE = 7681; -lime_graphics_opengl_GL.INCR = 7682; -lime_graphics_opengl_GL.DECR = 7683; -lime_graphics_opengl_GL.INVERT = 5386; -lime_graphics_opengl_GL.INCR_WRAP = 34055; -lime_graphics_opengl_GL.DECR_WRAP = 34056; -lime_graphics_opengl_GL.VENDOR = 7936; -lime_graphics_opengl_GL.RENDERER = 7937; -lime_graphics_opengl_GL.VERSION = 7938; -lime_graphics_opengl_GL.EXTENSIONS = 7939; -lime_graphics_opengl_GL.NEAREST = 9728; -lime_graphics_opengl_GL.LINEAR = 9729; -lime_graphics_opengl_GL.NEAREST_MIPMAP_NEAREST = 9984; -lime_graphics_opengl_GL.LINEAR_MIPMAP_NEAREST = 9985; -lime_graphics_opengl_GL.NEAREST_MIPMAP_LINEAR = 9986; -lime_graphics_opengl_GL.LINEAR_MIPMAP_LINEAR = 9987; -lime_graphics_opengl_GL.TEXTURE_MAG_FILTER = 10240; -lime_graphics_opengl_GL.TEXTURE_MIN_FILTER = 10241; -lime_graphics_opengl_GL.TEXTURE_WRAP_S = 10242; -lime_graphics_opengl_GL.TEXTURE_WRAP_T = 10243; -lime_graphics_opengl_GL.TEXTURE_2D = 3553; -lime_graphics_opengl_GL.TEXTURE = 5890; -lime_graphics_opengl_GL.TEXTURE_CUBE_MAP = 34067; -lime_graphics_opengl_GL.TEXTURE_BINDING_CUBE_MAP = 34068; -lime_graphics_opengl_GL.TEXTURE_CUBE_MAP_POSITIVE_X = 34069; -lime_graphics_opengl_GL.TEXTURE_CUBE_MAP_NEGATIVE_X = 34070; -lime_graphics_opengl_GL.TEXTURE_CUBE_MAP_POSITIVE_Y = 34071; -lime_graphics_opengl_GL.TEXTURE_CUBE_MAP_NEGATIVE_Y = 34072; -lime_graphics_opengl_GL.TEXTURE_CUBE_MAP_POSITIVE_Z = 34073; -lime_graphics_opengl_GL.TEXTURE_CUBE_MAP_NEGATIVE_Z = 34074; -lime_graphics_opengl_GL.MAX_CUBE_MAP_TEXTURE_SIZE = 34076; -lime_graphics_opengl_GL.TEXTURE0 = 33984; -lime_graphics_opengl_GL.TEXTURE1 = 33985; -lime_graphics_opengl_GL.TEXTURE2 = 33986; -lime_graphics_opengl_GL.TEXTURE3 = 33987; -lime_graphics_opengl_GL.TEXTURE4 = 33988; -lime_graphics_opengl_GL.TEXTURE5 = 33989; -lime_graphics_opengl_GL.TEXTURE6 = 33990; -lime_graphics_opengl_GL.TEXTURE7 = 33991; -lime_graphics_opengl_GL.TEXTURE8 = 33992; -lime_graphics_opengl_GL.TEXTURE9 = 33993; -lime_graphics_opengl_GL.TEXTURE10 = 33994; -lime_graphics_opengl_GL.TEXTURE11 = 33995; -lime_graphics_opengl_GL.TEXTURE12 = 33996; -lime_graphics_opengl_GL.TEXTURE13 = 33997; -lime_graphics_opengl_GL.TEXTURE14 = 33998; -lime_graphics_opengl_GL.TEXTURE15 = 33999; -lime_graphics_opengl_GL.TEXTURE16 = 34000; -lime_graphics_opengl_GL.TEXTURE17 = 34001; -lime_graphics_opengl_GL.TEXTURE18 = 34002; -lime_graphics_opengl_GL.TEXTURE19 = 34003; -lime_graphics_opengl_GL.TEXTURE20 = 34004; -lime_graphics_opengl_GL.TEXTURE21 = 34005; -lime_graphics_opengl_GL.TEXTURE22 = 34006; -lime_graphics_opengl_GL.TEXTURE23 = 34007; -lime_graphics_opengl_GL.TEXTURE24 = 34008; -lime_graphics_opengl_GL.TEXTURE25 = 34009; -lime_graphics_opengl_GL.TEXTURE26 = 34010; -lime_graphics_opengl_GL.TEXTURE27 = 34011; -lime_graphics_opengl_GL.TEXTURE28 = 34012; -lime_graphics_opengl_GL.TEXTURE29 = 34013; -lime_graphics_opengl_GL.TEXTURE30 = 34014; -lime_graphics_opengl_GL.TEXTURE31 = 34015; -lime_graphics_opengl_GL.ACTIVE_TEXTURE = 34016; -lime_graphics_opengl_GL.REPEAT = 10497; -lime_graphics_opengl_GL.CLAMP_TO_EDGE = 33071; -lime_graphics_opengl_GL.MIRRORED_REPEAT = 33648; -lime_graphics_opengl_GL.FLOAT_VEC2 = 35664; -lime_graphics_opengl_GL.FLOAT_VEC3 = 35665; -lime_graphics_opengl_GL.FLOAT_VEC4 = 35666; -lime_graphics_opengl_GL.INT_VEC2 = 35667; -lime_graphics_opengl_GL.INT_VEC3 = 35668; -lime_graphics_opengl_GL.INT_VEC4 = 35669; -lime_graphics_opengl_GL.BOOL = 35670; -lime_graphics_opengl_GL.BOOL_VEC2 = 35671; -lime_graphics_opengl_GL.BOOL_VEC3 = 35672; -lime_graphics_opengl_GL.BOOL_VEC4 = 35673; -lime_graphics_opengl_GL.FLOAT_MAT2 = 35674; -lime_graphics_opengl_GL.FLOAT_MAT3 = 35675; -lime_graphics_opengl_GL.FLOAT_MAT4 = 35676; -lime_graphics_opengl_GL.SAMPLER_2D = 35678; -lime_graphics_opengl_GL.SAMPLER_CUBE = 35680; -lime_graphics_opengl_GL.VERTEX_ATTRIB_ARRAY_ENABLED = 34338; -lime_graphics_opengl_GL.VERTEX_ATTRIB_ARRAY_SIZE = 34339; -lime_graphics_opengl_GL.VERTEX_ATTRIB_ARRAY_STRIDE = 34340; -lime_graphics_opengl_GL.VERTEX_ATTRIB_ARRAY_TYPE = 34341; -lime_graphics_opengl_GL.VERTEX_ATTRIB_ARRAY_NORMALIZED = 34922; -lime_graphics_opengl_GL.VERTEX_ATTRIB_ARRAY_POINTER = 34373; -lime_graphics_opengl_GL.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 34975; -lime_graphics_opengl_GL.IMPLEMENTATION_COLOR_READ_TYPE = 35738; -lime_graphics_opengl_GL.IMPLEMENTATION_COLOR_READ_FORMAT = 35739; -lime_graphics_opengl_GL.VERTEX_PROGRAM_POINT_SIZE = 34370; -lime_graphics_opengl_GL.POINT_SPRITE = 34913; -lime_graphics_opengl_GL.COMPILE_STATUS = 35713; -lime_graphics_opengl_GL.LOW_FLOAT = 36336; -lime_graphics_opengl_GL.MEDIUM_FLOAT = 36337; -lime_graphics_opengl_GL.HIGH_FLOAT = 36338; -lime_graphics_opengl_GL.LOW_INT = 36339; -lime_graphics_opengl_GL.MEDIUM_INT = 36340; -lime_graphics_opengl_GL.HIGH_INT = 36341; -lime_graphics_opengl_GL.FRAMEBUFFER = 36160; -lime_graphics_opengl_GL.RENDERBUFFER = 36161; -lime_graphics_opengl_GL.RGBA4 = 32854; -lime_graphics_opengl_GL.RGB5_A1 = 32855; -lime_graphics_opengl_GL.RGB565 = 36194; -lime_graphics_opengl_GL.DEPTH_COMPONENT16 = 33189; -lime_graphics_opengl_GL.STENCIL_INDEX = 6401; -lime_graphics_opengl_GL.STENCIL_INDEX8 = 36168; -lime_graphics_opengl_GL.DEPTH_STENCIL = 34041; -lime_graphics_opengl_GL.RENDERBUFFER_WIDTH = 36162; -lime_graphics_opengl_GL.RENDERBUFFER_HEIGHT = 36163; -lime_graphics_opengl_GL.RENDERBUFFER_INTERNAL_FORMAT = 36164; -lime_graphics_opengl_GL.RENDERBUFFER_RED_SIZE = 36176; -lime_graphics_opengl_GL.RENDERBUFFER_GREEN_SIZE = 36177; -lime_graphics_opengl_GL.RENDERBUFFER_BLUE_SIZE = 36178; -lime_graphics_opengl_GL.RENDERBUFFER_ALPHA_SIZE = 36179; -lime_graphics_opengl_GL.RENDERBUFFER_DEPTH_SIZE = 36180; -lime_graphics_opengl_GL.RENDERBUFFER_STENCIL_SIZE = 36181; -lime_graphics_opengl_GL.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 36048; -lime_graphics_opengl_GL.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 36049; -lime_graphics_opengl_GL.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 36050; -lime_graphics_opengl_GL.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 36051; -lime_graphics_opengl_GL.COLOR_ATTACHMENT0 = 36064; -lime_graphics_opengl_GL.DEPTH_ATTACHMENT = 36096; -lime_graphics_opengl_GL.STENCIL_ATTACHMENT = 36128; -lime_graphics_opengl_GL.DEPTH_STENCIL_ATTACHMENT = 33306; -lime_graphics_opengl_GL.NONE = 0; -lime_graphics_opengl_GL.FRAMEBUFFER_COMPLETE = 36053; -lime_graphics_opengl_GL.FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 36054; -lime_graphics_opengl_GL.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 36055; -lime_graphics_opengl_GL.FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 36057; -lime_graphics_opengl_GL.FRAMEBUFFER_UNSUPPORTED = 36061; -lime_graphics_opengl_GL.FRAMEBUFFER_BINDING = 36006; -lime_graphics_opengl_GL.RENDERBUFFER_BINDING = 36007; -lime_graphics_opengl_GL.MAX_RENDERBUFFER_SIZE = 34024; -lime_graphics_opengl_GL.INVALID_FRAMEBUFFER_OPERATION = 1286; -lime_graphics_opengl_GL.UNPACK_FLIP_Y_WEBGL = 37440; -lime_graphics_opengl_GL.UNPACK_PREMULTIPLY_ALPHA_WEBGL = 37441; -lime_graphics_opengl_GL.CONTEXT_LOST_WEBGL = 37442; -lime_graphics_opengl_GL.UNPACK_COLORSPACE_CONVERSION_WEBGL = 37443; -lime_graphics_opengl_GL.BROWSER_DEFAULT_WEBGL = 37444; -lime_graphics_opengl_GL.READ_BUFFER = 3074; -lime_graphics_opengl_GL.UNPACK_ROW_LENGTH = 3314; -lime_graphics_opengl_GL.UNPACK_SKIP_ROWS = 3315; -lime_graphics_opengl_GL.UNPACK_SKIP_PIXELS = 3316; -lime_graphics_opengl_GL.PACK_ROW_LENGTH = 3330; -lime_graphics_opengl_GL.PACK_SKIP_ROWS = 3331; -lime_graphics_opengl_GL.PACK_SKIP_PIXELS = 3332; -lime_graphics_opengl_GL.TEXTURE_BINDING_3D = 32874; -lime_graphics_opengl_GL.UNPACK_SKIP_IMAGES = 32877; -lime_graphics_opengl_GL.UNPACK_IMAGE_HEIGHT = 32878; -lime_graphics_opengl_GL.MAX_3D_TEXTURE_SIZE = 32883; -lime_graphics_opengl_GL.MAX_ELEMENTS_VERTICES = 33000; -lime_graphics_opengl_GL.MAX_ELEMENTS_INDICES = 33001; -lime_graphics_opengl_GL.MAX_TEXTURE_LOD_BIAS = 34045; -lime_graphics_opengl_GL.MAX_FRAGMENT_UNIFORM_COMPONENTS = 35657; -lime_graphics_opengl_GL.MAX_VERTEX_UNIFORM_COMPONENTS = 35658; -lime_graphics_opengl_GL.MAX_ARRAY_TEXTURE_LAYERS = 35071; -lime_graphics_opengl_GL.MIN_PROGRAM_TEXEL_OFFSET = 35076; -lime_graphics_opengl_GL.MAX_PROGRAM_TEXEL_OFFSET = 35077; -lime_graphics_opengl_GL.MAX_VARYING_COMPONENTS = 35659; -lime_graphics_opengl_GL.FRAGMENT_SHADER_DERIVATIVE_HINT = 35723; -lime_graphics_opengl_GL.RASTERIZER_DISCARD = 35977; -lime_graphics_opengl_GL.VERTEX_ARRAY_BINDING = 34229; -lime_graphics_opengl_GL.MAX_VERTEX_OUTPUT_COMPONENTS = 37154; -lime_graphics_opengl_GL.MAX_FRAGMENT_INPUT_COMPONENTS = 37157; -lime_graphics_opengl_GL.MAX_SERVER_WAIT_TIMEOUT = 37137; -lime_graphics_opengl_GL.MAX_ELEMENT_INDEX = 36203; -lime_graphics_opengl_GL.RED = 6403; -lime_graphics_opengl_GL.RGB8 = 32849; -lime_graphics_opengl_GL.RGBA8 = 32856; -lime_graphics_opengl_GL.RGB10_A2 = 32857; -lime_graphics_opengl_GL.TEXTURE_3D = 32879; -lime_graphics_opengl_GL.TEXTURE_WRAP_R = 32882; -lime_graphics_opengl_GL.TEXTURE_MIN_LOD = 33082; -lime_graphics_opengl_GL.TEXTURE_MAX_LOD = 33083; -lime_graphics_opengl_GL.TEXTURE_BASE_LEVEL = 33084; -lime_graphics_opengl_GL.TEXTURE_MAX_LEVEL = 33085; -lime_graphics_opengl_GL.TEXTURE_COMPARE_MODE = 34892; -lime_graphics_opengl_GL.TEXTURE_COMPARE_FUNC = 34893; -lime_graphics_opengl_GL.SRGB = 35904; -lime_graphics_opengl_GL.SRGB8 = 35905; -lime_graphics_opengl_GL.SRGB8_ALPHA8 = 35907; -lime_graphics_opengl_GL.COMPARE_REF_TO_TEXTURE = 34894; -lime_graphics_opengl_GL.RGBA32F = 34836; -lime_graphics_opengl_GL.RGB32F = 34837; -lime_graphics_opengl_GL.RGBA16F = 34842; -lime_graphics_opengl_GL.RGB16F = 34843; -lime_graphics_opengl_GL.TEXTURE_2D_ARRAY = 35866; -lime_graphics_opengl_GL.TEXTURE_BINDING_2D_ARRAY = 35869; -lime_graphics_opengl_GL.R11F_G11F_B10F = 35898; -lime_graphics_opengl_GL.RGB9_E5 = 35901; -lime_graphics_opengl_GL.RGBA32UI = 36208; -lime_graphics_opengl_GL.RGB32UI = 36209; -lime_graphics_opengl_GL.RGBA16UI = 36214; -lime_graphics_opengl_GL.RGB16UI = 36215; -lime_graphics_opengl_GL.RGBA8UI = 36220; -lime_graphics_opengl_GL.RGB8UI = 36221; -lime_graphics_opengl_GL.RGBA32I = 36226; -lime_graphics_opengl_GL.RGB32I = 36227; -lime_graphics_opengl_GL.RGBA16I = 36232; -lime_graphics_opengl_GL.RGB16I = 36233; -lime_graphics_opengl_GL.RGBA8I = 36238; -lime_graphics_opengl_GL.RGB8I = 36239; -lime_graphics_opengl_GL.RED_INTEGER = 36244; -lime_graphics_opengl_GL.RGB_INTEGER = 36248; -lime_graphics_opengl_GL.RGBA_INTEGER = 36249; -lime_graphics_opengl_GL.R8 = 33321; -lime_graphics_opengl_GL.RG8 = 33323; -lime_graphics_opengl_GL.R16F = 33325; -lime_graphics_opengl_GL.R32F = 33326; -lime_graphics_opengl_GL.RG16F = 33327; -lime_graphics_opengl_GL.RG32F = 33328; -lime_graphics_opengl_GL.R8I = 33329; -lime_graphics_opengl_GL.R8UI = 33330; -lime_graphics_opengl_GL.R16I = 33331; -lime_graphics_opengl_GL.R16UI = 33332; -lime_graphics_opengl_GL.R32I = 33333; -lime_graphics_opengl_GL.R32UI = 33334; -lime_graphics_opengl_GL.RG8I = 33335; -lime_graphics_opengl_GL.RG8UI = 33336; -lime_graphics_opengl_GL.RG16I = 33337; -lime_graphics_opengl_GL.RG16UI = 33338; -lime_graphics_opengl_GL.RG32I = 33339; -lime_graphics_opengl_GL.RG32UI = 33340; -lime_graphics_opengl_GL.R8_SNORM = 36756; -lime_graphics_opengl_GL.RG8_SNORM = 36757; -lime_graphics_opengl_GL.RGB8_SNORM = 36758; -lime_graphics_opengl_GL.RGBA8_SNORM = 36759; -lime_graphics_opengl_GL.RGB10_A2UI = 36975; -lime_graphics_opengl_GL.TEXTURE_IMMUTABLE_FORMAT = 37167; -lime_graphics_opengl_GL.TEXTURE_IMMUTABLE_LEVELS = 33503; -lime_graphics_opengl_GL.UNSIGNED_INT_2_10_10_10_REV = 33640; -lime_graphics_opengl_GL.UNSIGNED_INT_10F_11F_11F_REV = 35899; -lime_graphics_opengl_GL.UNSIGNED_INT_5_9_9_9_REV = 35902; -lime_graphics_opengl_GL.FLOAT_32_UNSIGNED_INT_24_8_REV = 36269; -lime_graphics_opengl_GL.UNSIGNED_INT_24_8 = 34042; -lime_graphics_opengl_GL.HALF_FLOAT = 5131; -lime_graphics_opengl_GL.RG = 33319; -lime_graphics_opengl_GL.RG_INTEGER = 33320; -lime_graphics_opengl_GL.INT_2_10_10_10_REV = 36255; -lime_graphics_opengl_GL.CURRENT_QUERY = 34917; -lime_graphics_opengl_GL.QUERY_RESULT = 34918; -lime_graphics_opengl_GL.QUERY_RESULT_AVAILABLE = 34919; -lime_graphics_opengl_GL.ANY_SAMPLES_PASSED = 35887; -lime_graphics_opengl_GL.ANY_SAMPLES_PASSED_CONSERVATIVE = 36202; -lime_graphics_opengl_GL.MAX_DRAW_BUFFERS = 34852; -lime_graphics_opengl_GL.DRAW_BUFFER0 = 34853; -lime_graphics_opengl_GL.DRAW_BUFFER1 = 34854; -lime_graphics_opengl_GL.DRAW_BUFFER2 = 34855; -lime_graphics_opengl_GL.DRAW_BUFFER3 = 34856; -lime_graphics_opengl_GL.DRAW_BUFFER4 = 34857; -lime_graphics_opengl_GL.DRAW_BUFFER5 = 34858; -lime_graphics_opengl_GL.DRAW_BUFFER6 = 34859; -lime_graphics_opengl_GL.DRAW_BUFFER7 = 34860; -lime_graphics_opengl_GL.DRAW_BUFFER8 = 34861; -lime_graphics_opengl_GL.DRAW_BUFFER9 = 34862; -lime_graphics_opengl_GL.DRAW_BUFFER10 = 34863; -lime_graphics_opengl_GL.DRAW_BUFFER11 = 34864; -lime_graphics_opengl_GL.DRAW_BUFFER12 = 34865; -lime_graphics_opengl_GL.DRAW_BUFFER13 = 34866; -lime_graphics_opengl_GL.DRAW_BUFFER14 = 34867; -lime_graphics_opengl_GL.DRAW_BUFFER15 = 34868; -lime_graphics_opengl_GL.MAX_COLOR_ATTACHMENTS = 36063; -lime_graphics_opengl_GL.COLOR_ATTACHMENT1 = 36065; -lime_graphics_opengl_GL.COLOR_ATTACHMENT2 = 36066; -lime_graphics_opengl_GL.COLOR_ATTACHMENT3 = 36067; -lime_graphics_opengl_GL.COLOR_ATTACHMENT4 = 36068; -lime_graphics_opengl_GL.COLOR_ATTACHMENT5 = 36069; -lime_graphics_opengl_GL.COLOR_ATTACHMENT6 = 36070; -lime_graphics_opengl_GL.COLOR_ATTACHMENT7 = 36071; -lime_graphics_opengl_GL.COLOR_ATTACHMENT8 = 36072; -lime_graphics_opengl_GL.COLOR_ATTACHMENT9 = 36073; -lime_graphics_opengl_GL.COLOR_ATTACHMENT10 = 36074; -lime_graphics_opengl_GL.COLOR_ATTACHMENT11 = 36075; -lime_graphics_opengl_GL.COLOR_ATTACHMENT12 = 36076; -lime_graphics_opengl_GL.COLOR_ATTACHMENT13 = 36077; -lime_graphics_opengl_GL.COLOR_ATTACHMENT14 = 36078; -lime_graphics_opengl_GL.COLOR_ATTACHMENT15 = 36079; -lime_graphics_opengl_GL.SAMPLER_3D = 35679; -lime_graphics_opengl_GL.SAMPLER_2D_SHADOW = 35682; -lime_graphics_opengl_GL.SAMPLER_2D_ARRAY = 36289; -lime_graphics_opengl_GL.SAMPLER_2D_ARRAY_SHADOW = 36292; -lime_graphics_opengl_GL.SAMPLER_CUBE_SHADOW = 36293; -lime_graphics_opengl_GL.INT_SAMPLER_2D = 36298; -lime_graphics_opengl_GL.INT_SAMPLER_3D = 36299; -lime_graphics_opengl_GL.INT_SAMPLER_CUBE = 36300; -lime_graphics_opengl_GL.INT_SAMPLER_2D_ARRAY = 36303; -lime_graphics_opengl_GL.UNSIGNED_INT_SAMPLER_2D = 36306; -lime_graphics_opengl_GL.UNSIGNED_INT_SAMPLER_3D = 36307; -lime_graphics_opengl_GL.UNSIGNED_INT_SAMPLER_CUBE = 36308; -lime_graphics_opengl_GL.UNSIGNED_INT_SAMPLER_2D_ARRAY = 36311; -lime_graphics_opengl_GL.MAX_SAMPLES = 36183; -lime_graphics_opengl_GL.SAMPLER_BINDING = 35097; -lime_graphics_opengl_GL.PIXEL_PACK_BUFFER = 35051; -lime_graphics_opengl_GL.PIXEL_UNPACK_BUFFER = 35052; -lime_graphics_opengl_GL.PIXEL_PACK_BUFFER_BINDING = 35053; -lime_graphics_opengl_GL.PIXEL_UNPACK_BUFFER_BINDING = 35055; -lime_graphics_opengl_GL.COPY_READ_BUFFER = 36662; -lime_graphics_opengl_GL.COPY_WRITE_BUFFER = 36663; -lime_graphics_opengl_GL.COPY_READ_BUFFER_BINDING = 36662; -lime_graphics_opengl_GL.COPY_WRITE_BUFFER_BINDING = 36663; -lime_graphics_opengl_GL.FLOAT_MAT2x3 = 35685; -lime_graphics_opengl_GL.FLOAT_MAT2x4 = 35686; -lime_graphics_opengl_GL.FLOAT_MAT3x2 = 35687; -lime_graphics_opengl_GL.FLOAT_MAT3x4 = 35688; -lime_graphics_opengl_GL.FLOAT_MAT4x2 = 35689; -lime_graphics_opengl_GL.FLOAT_MAT4x3 = 35690; -lime_graphics_opengl_GL.UNSIGNED_INT_VEC2 = 36294; -lime_graphics_opengl_GL.UNSIGNED_INT_VEC3 = 36295; -lime_graphics_opengl_GL.UNSIGNED_INT_VEC4 = 36296; -lime_graphics_opengl_GL.UNSIGNED_NORMALIZED = 35863; -lime_graphics_opengl_GL.SIGNED_NORMALIZED = 36764; -lime_graphics_opengl_GL.VERTEX_ATTRIB_ARRAY_INTEGER = 35069; -lime_graphics_opengl_GL.VERTEX_ATTRIB_ARRAY_DIVISOR = 35070; -lime_graphics_opengl_GL.TRANSFORM_FEEDBACK_BUFFER_MODE = 35967; -lime_graphics_opengl_GL.MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 35968; -lime_graphics_opengl_GL.TRANSFORM_FEEDBACK_VARYINGS = 35971; -lime_graphics_opengl_GL.TRANSFORM_FEEDBACK_BUFFER_START = 35972; -lime_graphics_opengl_GL.TRANSFORM_FEEDBACK_BUFFER_SIZE = 35973; -lime_graphics_opengl_GL.TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 35976; -lime_graphics_opengl_GL.MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 35978; -lime_graphics_opengl_GL.MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 35979; -lime_graphics_opengl_GL.INTERLEAVED_ATTRIBS = 35980; -lime_graphics_opengl_GL.SEPARATE_ATTRIBS = 35981; -lime_graphics_opengl_GL.TRANSFORM_FEEDBACK_BUFFER = 35982; -lime_graphics_opengl_GL.TRANSFORM_FEEDBACK_BUFFER_BINDING = 35983; -lime_graphics_opengl_GL.TRANSFORM_FEEDBACK = 36386; -lime_graphics_opengl_GL.TRANSFORM_FEEDBACK_PAUSED = 36387; -lime_graphics_opengl_GL.TRANSFORM_FEEDBACK_ACTIVE = 36388; -lime_graphics_opengl_GL.TRANSFORM_FEEDBACK_BINDING = 36389; -lime_graphics_opengl_GL.FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = 33296; -lime_graphics_opengl_GL.FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = 33297; -lime_graphics_opengl_GL.FRAMEBUFFER_ATTACHMENT_RED_SIZE = 33298; -lime_graphics_opengl_GL.FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = 33299; -lime_graphics_opengl_GL.FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = 33300; -lime_graphics_opengl_GL.FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = 33301; -lime_graphics_opengl_GL.FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = 33302; -lime_graphics_opengl_GL.FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = 33303; -lime_graphics_opengl_GL.FRAMEBUFFER_DEFAULT = 33304; -lime_graphics_opengl_GL.DEPTH24_STENCIL8 = 35056; -lime_graphics_opengl_GL.DRAW_FRAMEBUFFER_BINDING = 36006; -lime_graphics_opengl_GL.READ_FRAMEBUFFER = 36008; -lime_graphics_opengl_GL.DRAW_FRAMEBUFFER = 36009; -lime_graphics_opengl_GL.READ_FRAMEBUFFER_BINDING = 36010; -lime_graphics_opengl_GL.RENDERBUFFER_SAMPLES = 36011; -lime_graphics_opengl_GL.FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 36052; -lime_graphics_opengl_GL.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 36182; -lime_graphics_opengl_GL.UNIFORM_BUFFER = 35345; -lime_graphics_opengl_GL.UNIFORM_BUFFER_BINDING = 35368; -lime_graphics_opengl_GL.UNIFORM_BUFFER_START = 35369; -lime_graphics_opengl_GL.UNIFORM_BUFFER_SIZE = 35370; -lime_graphics_opengl_GL.MAX_VERTEX_UNIFORM_BLOCKS = 35371; -lime_graphics_opengl_GL.MAX_FRAGMENT_UNIFORM_BLOCKS = 35373; -lime_graphics_opengl_GL.MAX_COMBINED_UNIFORM_BLOCKS = 35374; -lime_graphics_opengl_GL.MAX_UNIFORM_BUFFER_BINDINGS = 35375; -lime_graphics_opengl_GL.MAX_UNIFORM_BLOCK_SIZE = 35376; -lime_graphics_opengl_GL.MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 35377; -lime_graphics_opengl_GL.MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 35379; -lime_graphics_opengl_GL.UNIFORM_BUFFER_OFFSET_ALIGNMENT = 35380; -lime_graphics_opengl_GL.ACTIVE_UNIFORM_BLOCKS = 35382; -lime_graphics_opengl_GL.UNIFORM_TYPE = 35383; -lime_graphics_opengl_GL.UNIFORM_SIZE = 35384; -lime_graphics_opengl_GL.UNIFORM_BLOCK_INDEX = 35386; -lime_graphics_opengl_GL.UNIFORM_OFFSET = 35387; -lime_graphics_opengl_GL.UNIFORM_ARRAY_STRIDE = 35388; -lime_graphics_opengl_GL.UNIFORM_MATRIX_STRIDE = 35389; -lime_graphics_opengl_GL.UNIFORM_IS_ROW_MAJOR = 35390; -lime_graphics_opengl_GL.UNIFORM_BLOCK_BINDING = 35391; -lime_graphics_opengl_GL.UNIFORM_BLOCK_DATA_SIZE = 35392; -lime_graphics_opengl_GL.UNIFORM_BLOCK_ACTIVE_UNIFORMS = 35394; -lime_graphics_opengl_GL.UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 35395; -lime_graphics_opengl_GL.UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 35396; -lime_graphics_opengl_GL.UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 35398; -lime_graphics_opengl_GL.OBJECT_TYPE = 37138; -lime_graphics_opengl_GL.SYNC_CONDITION = 37139; -lime_graphics_opengl_GL.SYNC_STATUS = 37140; -lime_graphics_opengl_GL.SYNC_FLAGS = 37141; -lime_graphics_opengl_GL.SYNC_FENCE = 37142; -lime_graphics_opengl_GL.SYNC_GPU_COMMANDS_COMPLETE = 37143; -lime_graphics_opengl_GL.UNSIGNALED = 37144; -lime_graphics_opengl_GL.SIGNALED = 37145; -lime_graphics_opengl_GL.ALREADY_SIGNALED = 37146; -lime_graphics_opengl_GL.TIMEOUT_EXPIRED = 37147; -lime_graphics_opengl_GL.CONDITION_SATISFIED = 37148; -lime_graphics_opengl_GL.WAIT_FAILED = 37149; -lime_graphics_opengl_GL.SYNC_FLUSH_COMMANDS_BIT = 1; -lime_graphics_opengl_GL.COLOR = 6144; -lime_graphics_opengl_GL.DEPTH = 6145; -lime_graphics_opengl_GL.STENCIL = 6146; -lime_graphics_opengl_GL.MIN = 32775; -lime_graphics_opengl_GL.MAX = 32776; -lime_graphics_opengl_GL.DEPTH_COMPONENT24 = 33190; -lime_graphics_opengl_GL.STREAM_READ = 35041; -lime_graphics_opengl_GL.STREAM_COPY = 35042; -lime_graphics_opengl_GL.STATIC_READ = 35045; -lime_graphics_opengl_GL.STATIC_COPY = 35046; -lime_graphics_opengl_GL.DYNAMIC_READ = 35049; -lime_graphics_opengl_GL.DYNAMIC_COPY = 35050; -lime_graphics_opengl_GL.DEPTH_COMPONENT32F = 36012; -lime_graphics_opengl_GL.DEPTH32F_STENCIL8 = 36013; -lime_graphics_opengl_GL.INVALID_INDEX = -1; -lime_graphics_opengl_GL.TIMEOUT_IGNORED = -1; -lime_graphics_opengl_GL.MAX_CLIENT_WAIT_TIMEOUT_WEBGL = 37447; -lime_math__$ColorMatrix_ColorMatrix_$Impl_$.__identity = [1.0,0.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,0.0,0.0,1.0,0.0]; -lime_math__$Matrix4_Matrix4_$Impl_$.__identity = [1.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,0.0,1.0]; -lime_media_openal_AL.NONE = 0; -lime_media_openal_AL.FALSE = 0; -lime_media_openal_AL.TRUE = 1; -lime_media_openal_AL.SOURCE_RELATIVE = 514; -lime_media_openal_AL.CONE_INNER_ANGLE = 4097; -lime_media_openal_AL.CONE_OUTER_ANGLE = 4098; -lime_media_openal_AL.PITCH = 4099; -lime_media_openal_AL.POSITION = 4100; -lime_media_openal_AL.DIRECTION = 4101; -lime_media_openal_AL.VELOCITY = 4102; -lime_media_openal_AL.LOOPING = 4103; -lime_media_openal_AL.BUFFER = 4105; -lime_media_openal_AL.GAIN = 4106; -lime_media_openal_AL.MIN_GAIN = 4109; -lime_media_openal_AL.MAX_GAIN = 4110; -lime_media_openal_AL.ORIENTATION = 4111; -lime_media_openal_AL.SOURCE_STATE = 4112; -lime_media_openal_AL.INITIAL = 4113; -lime_media_openal_AL.PLAYING = 4114; -lime_media_openal_AL.PAUSED = 4115; -lime_media_openal_AL.STOPPED = 4116; -lime_media_openal_AL.BUFFERS_QUEUED = 4117; -lime_media_openal_AL.BUFFERS_PROCESSED = 4118; -lime_media_openal_AL.REFERENCE_DISTANCE = 4128; -lime_media_openal_AL.ROLLOFF_FACTOR = 4129; -lime_media_openal_AL.CONE_OUTER_GAIN = 4130; -lime_media_openal_AL.MAX_DISTANCE = 4131; -lime_media_openal_AL.SEC_OFFSET = 4132; -lime_media_openal_AL.SAMPLE_OFFSET = 4133; -lime_media_openal_AL.BYTE_OFFSET = 4134; -lime_media_openal_AL.SOURCE_TYPE = 4135; -lime_media_openal_AL.STATIC = 4136; -lime_media_openal_AL.STREAMING = 4137; -lime_media_openal_AL.UNDETERMINED = 4144; -lime_media_openal_AL.FORMAT_MONO8 = 4352; -lime_media_openal_AL.FORMAT_MONO16 = 4353; -lime_media_openal_AL.FORMAT_STEREO8 = 4354; -lime_media_openal_AL.FORMAT_STEREO16 = 4355; -lime_media_openal_AL.FREQUENCY = 8193; -lime_media_openal_AL.BITS = 8194; -lime_media_openal_AL.CHANNELS = 8195; -lime_media_openal_AL.SIZE = 8196; -lime_media_openal_AL.NO_ERROR = 0; -lime_media_openal_AL.INVALID_NAME = 40961; -lime_media_openal_AL.INVALID_ENUM = 40962; -lime_media_openal_AL.INVALID_VALUE = 40963; -lime_media_openal_AL.INVALID_OPERATION = 40964; -lime_media_openal_AL.OUT_OF_MEMORY = 40965; -lime_media_openal_AL.VENDOR = 45057; -lime_media_openal_AL.VERSION = 45058; -lime_media_openal_AL.RENDERER = 45059; -lime_media_openal_AL.EXTENSIONS = 45060; -lime_media_openal_AL.DOPPLER_FACTOR = 49152; -lime_media_openal_AL.SPEED_OF_SOUND = 49155; -lime_media_openal_AL.DOPPLER_VELOCITY = 49153; -lime_media_openal_AL.DISTANCE_MODEL = 53248; -lime_media_openal_AL.INVERSE_DISTANCE = 53249; -lime_media_openal_AL.INVERSE_DISTANCE_CLAMPED = 53250; -lime_media_openal_AL.LINEAR_DISTANCE = 53251; -lime_media_openal_AL.LINEAR_DISTANCE_CLAMPED = 53252; -lime_media_openal_AL.EXPONENT_DISTANCE = 53253; -lime_media_openal_AL.EXPONENT_DISTANCE_CLAMPED = 53254; -lime_media_openal_AL.METERS_PER_UNIT = 131076; -lime_media_openal_AL.DIRECT_FILTER = 131077; -lime_media_openal_AL.AUXILIARY_SEND_FILTER = 131078; -lime_media_openal_AL.AIR_ABSORPTION_FACTOR = 131079; -lime_media_openal_AL.ROOM_ROLLOFF_FACTOR = 131080; -lime_media_openal_AL.CONE_OUTER_GAINHF = 131081; -lime_media_openal_AL.DIRECT_FILTER_GAINHF_AUTO = 131082; -lime_media_openal_AL.AUXILIARY_SEND_FILTER_GAIN_AUTO = 131083; -lime_media_openal_AL.AUXILIARY_SEND_FILTER_GAINHF_AUTO = 131084; -lime_media_openal_AL.REVERB_DENSITY = 1; -lime_media_openal_AL.REVERB_DIFFUSION = 2; -lime_media_openal_AL.REVERB_GAIN = 3; -lime_media_openal_AL.REVERB_GAINHF = 4; -lime_media_openal_AL.REVERB_DECAY_TIME = 5; -lime_media_openal_AL.REVERB_DECAY_HFRATIO = 6; -lime_media_openal_AL.REVERB_REFLECTIONS_GAIN = 7; -lime_media_openal_AL.REVERB_REFLECTIONS_DELAY = 8; -lime_media_openal_AL.REVERB_LATE_REVERB_GAIN = 9; -lime_media_openal_AL.REVERB_LATE_REVERB_DELAY = 10; -lime_media_openal_AL.REVERB_AIR_ABSORPTION_GAINHF = 11; -lime_media_openal_AL.REVERB_ROOM_ROLLOFF_FACTOR = 12; -lime_media_openal_AL.REVERB_DECAY_HFLIMIT = 13; -lime_media_openal_AL.EAXREVERB_DENSITY = 1; -lime_media_openal_AL.EAXREVERB_DIFFUSION = 2; -lime_media_openal_AL.EAXREVERB_GAIN = 3; -lime_media_openal_AL.EAXREVERB_GAINHF = 4; -lime_media_openal_AL.EAXREVERB_GAINLF = 5; -lime_media_openal_AL.EAXREVERB_DECAY_TIME = 6; -lime_media_openal_AL.EAXREVERB_DECAY_HFRATIO = 7; -lime_media_openal_AL.EAXREVERB_DECAY_LFRATIO = 8; -lime_media_openal_AL.EAXREVERB_REFLECTIONS_GAIN = 9; -lime_media_openal_AL.EAXREVERB_REFLECTIONS_DELAY = 10; -lime_media_openal_AL.EAXREVERB_REFLECTIONS_PAN = 11; -lime_media_openal_AL.EAXREVERB_LATE_REVERB_GAIN = 12; -lime_media_openal_AL.EAXREVERB_LATE_REVERB_DELAY = 13; -lime_media_openal_AL.EAXREVERB_LATE_REVERB_PAN = 14; -lime_media_openal_AL.EAXREVERB_ECHO_TIME = 15; -lime_media_openal_AL.EAXREVERB_ECHO_DEPTH = 16; -lime_media_openal_AL.EAXREVERB_MODULATION_TIME = 17; -lime_media_openal_AL.EAXREVERB_MODULATION_DEPTH = 18; -lime_media_openal_AL.EAXREVERB_AIR_ABSORPTION_GAINHF = 19; -lime_media_openal_AL.EAXREVERB_HFREFERENCE = 20; -lime_media_openal_AL.EAXREVERB_LFREFERENCE = 21; -lime_media_openal_AL.EAXREVERB_ROOM_ROLLOFF_FACTOR = 22; -lime_media_openal_AL.EAXREVERB_DECAY_HFLIMIT = 23; -lime_media_openal_AL.CHORUS_WAVEFORM = 1; -lime_media_openal_AL.CHORUS_PHASE = 2; -lime_media_openal_AL.CHORUS_RATE = 3; -lime_media_openal_AL.CHORUS_DEPTH = 4; -lime_media_openal_AL.CHORUS_FEEDBACK = 5; -lime_media_openal_AL.CHORUS_DELAY = 6; -lime_media_openal_AL.DISTORTION_EDGE = 1; -lime_media_openal_AL.DISTORTION_GAIN = 2; -lime_media_openal_AL.DISTORTION_LOWPASS_CUTOFF = 3; -lime_media_openal_AL.DISTORTION_EQCENTER = 4; -lime_media_openal_AL.DISTORTION_EQBANDWIDTH = 5; -lime_media_openal_AL.ECHO_DELAY = 1; -lime_media_openal_AL.ECHO_LRDELAY = 2; -lime_media_openal_AL.ECHO_DAMPING = 3; -lime_media_openal_AL.ECHO_FEEDBACK = 4; -lime_media_openal_AL.ECHO_SPREAD = 5; -lime_media_openal_AL.FLANGER_WAVEFORM = 1; -lime_media_openal_AL.FLANGER_PHASE = 2; -lime_media_openal_AL.FLANGER_RATE = 3; -lime_media_openal_AL.FLANGER_DEPTH = 4; -lime_media_openal_AL.FLANGER_FEEDBACK = 5; -lime_media_openal_AL.FLANGER_DELAY = 6; -lime_media_openal_AL.FREQUENCY_SHIFTER_FREQUENCY = 1; -lime_media_openal_AL.FREQUENCY_SHIFTER_LEFT_DIRECTION = 2; -lime_media_openal_AL.FREQUENCY_SHIFTER_RIGHT_DIRECTION = 3; -lime_media_openal_AL.VOCAL_MORPHER_PHONEMEA = 1; -lime_media_openal_AL.VOCAL_MORPHER_PHONEMEA_COARSE_TUNING = 2; -lime_media_openal_AL.VOCAL_MORPHER_PHONEMEB = 3; -lime_media_openal_AL.VOCAL_MORPHER_PHONEMEB_COARSE_TUNING = 4; -lime_media_openal_AL.VOCAL_MORPHER_WAVEFORM = 5; -lime_media_openal_AL.VOCAL_MORPHER_RATE = 6; -lime_media_openal_AL.PITCH_SHIFTER_COARSE_TUNE = 1; -lime_media_openal_AL.PITCH_SHIFTER_FINE_TUNE = 2; -lime_media_openal_AL.RING_MODULATOR_FREQUENCY = 1; -lime_media_openal_AL.RING_MODULATOR_HIGHPASS_CUTOFF = 2; -lime_media_openal_AL.RING_MODULATOR_WAVEFORM = 3; -lime_media_openal_AL.AUTOWAH_ATTACK_TIME = 1; -lime_media_openal_AL.AUTOWAH_RELEASE_TIME = 2; -lime_media_openal_AL.AUTOWAH_RESONANCE = 3; -lime_media_openal_AL.AUTOWAH_PEAK_GAIN = 4; -lime_media_openal_AL.COMPRESSOR_ONOFF = 1; -lime_media_openal_AL.EQUALIZER_LOW_GAIN = 1; -lime_media_openal_AL.EQUALIZER_LOW_CUTOFF = 2; -lime_media_openal_AL.EQUALIZER_MID1_GAIN = 3; -lime_media_openal_AL.EQUALIZER_MID1_CENTER = 4; -lime_media_openal_AL.EQUALIZER_MID1_WIDTH = 5; -lime_media_openal_AL.EQUALIZER_MID2_GAIN = 6; -lime_media_openal_AL.EQUALIZER_MID2_CENTER = 7; -lime_media_openal_AL.EQUALIZER_MID2_WIDTH = 8; -lime_media_openal_AL.EQUALIZER_HIGH_GAIN = 9; -lime_media_openal_AL.EQUALIZER_HIGH_CUTOFF = 10; -lime_media_openal_AL.EFFECT_FIRST_PARAMETER = 0; -lime_media_openal_AL.EFFECT_LAST_PARAMETER = 32768; -lime_media_openal_AL.EFFECT_TYPE = 32769; -lime_media_openal_AL.EFFECT_NULL = 0; -lime_media_openal_AL.EFFECT_EAXREVERB = 32768; -lime_media_openal_AL.EFFECT_REVERB = 1; -lime_media_openal_AL.EFFECT_CHORUS = 2; -lime_media_openal_AL.EFFECT_DISTORTION = 3; -lime_media_openal_AL.EFFECT_ECHO = 4; -lime_media_openal_AL.EFFECT_FLANGER = 5; -lime_media_openal_AL.EFFECT_FREQUENCY_SHIFTER = 6; -lime_media_openal_AL.EFFECT_VOCAL_MORPHER = 7; -lime_media_openal_AL.EFFECT_PITCH_SHIFTER = 8; -lime_media_openal_AL.EFFECT_RING_MODULATOR = 9; -lime_media_openal_AL.FFECT_AUTOWAH = 10; -lime_media_openal_AL.EFFECT_COMPRESSOR = 11; -lime_media_openal_AL.EFFECT_EQUALIZER = 12; -lime_media_openal_AL.EFFECTSLOT_EFFECT = 1; -lime_media_openal_AL.EFFECTSLOT_GAIN = 2; -lime_media_openal_AL.EFFECTSLOT_AUXILIARY_SEND_AUTO = 3; -lime_media_openal_AL.LOWPASS_GAIN = 1; -lime_media_openal_AL.LOWPASS_GAINHF = 2; -lime_media_openal_AL.HIGHPASS_GAIN = 1; -lime_media_openal_AL.HIGHPASS_GAINLF = 2; -lime_media_openal_AL.BANDPASS_GAIN = 1; -lime_media_openal_AL.BANDPASS_GAINLF = 2; -lime_media_openal_AL.BANDPASS_GAINHF = 3; -lime_media_openal_AL.FILTER_FIRST_PARAMETER = 0; -lime_media_openal_AL.FILTER_LAST_PARAMETER = 32768; -lime_media_openal_AL.FILTER_TYPE = 32769; -lime_media_openal_AL.FILTER_NULL = 0; -lime_media_openal_AL.FILTER_LOWPASS = 1; -lime_media_openal_AL.FILTER_HIGHPASS = 2; -lime_media_openal_AL.FILTER_BANDPASS = 3; -lime_media_openal_ALC.FALSE = 0; -lime_media_openal_ALC.TRUE = 1; -lime_media_openal_ALC.FREQUENCY = 4103; -lime_media_openal_ALC.REFRESH = 4104; -lime_media_openal_ALC.SYNC = 4105; -lime_media_openal_ALC.MONO_SOURCES = 4112; -lime_media_openal_ALC.STEREO_SOURCES = 4113; -lime_media_openal_ALC.NO_ERROR = 0; -lime_media_openal_ALC.INVALID_DEVICE = 40961; -lime_media_openal_ALC.INVALID_CONTEXT = 40962; -lime_media_openal_ALC.INVALID_ENUM = 40963; -lime_media_openal_ALC.INVALID_VALUE = 40964; -lime_media_openal_ALC.OUT_OF_MEMORY = 40965; -lime_media_openal_ALC.ATTRIBUTES_SIZE = 4098; -lime_media_openal_ALC.ALL_ATTRIBUTES = 4099; -lime_media_openal_ALC.DEFAULT_DEVICE_SPECIFIER = 4100; -lime_media_openal_ALC.DEVICE_SPECIFIER = 4101; -lime_media_openal_ALC.EXTENSIONS = 4102; -lime_media_openal_ALC.ENUMERATE_ALL_EXT = 1; -lime_media_openal_ALC.DEFAULT_ALL_DEVICES_SPECIFIER = 4114; -lime_media_openal_ALC.ALL_DEVICES_SPECIFIER = 4115; -lime_system_CFFI.__moduleNames = null; -lime_system_Clipboard.onUpdate = new lime_app__$Event_$Void_$Void(); -lime_system_Sensor.sensorByID = new haxe_ds_IntMap(); -lime_system_Sensor.sensors = []; -lime_system_System.__directories = new haxe_ds_IntMap(); -lime_ui_Gamepad.devices = new haxe_ds_IntMap(); -lime_ui_Gamepad.onConnect = new lime_app__$Event_$lime_$ui_$Gamepad_$Void(); -lime_ui__$GamepadAxis_GamepadAxis_$Impl_$.LEFT_X = 0; -lime_ui__$GamepadAxis_GamepadAxis_$Impl_$.LEFT_Y = 1; -lime_ui__$GamepadAxis_GamepadAxis_$Impl_$.RIGHT_X = 2; -lime_ui__$GamepadAxis_GamepadAxis_$Impl_$.RIGHT_Y = 3; -lime_ui__$GamepadAxis_GamepadAxis_$Impl_$.TRIGGER_LEFT = 4; -lime_ui__$GamepadAxis_GamepadAxis_$Impl_$.TRIGGER_RIGHT = 5; -lime_ui__$GamepadButton_GamepadButton_$Impl_$.A = 0; -lime_ui__$GamepadButton_GamepadButton_$Impl_$.B = 1; -lime_ui__$GamepadButton_GamepadButton_$Impl_$.X = 2; -lime_ui__$GamepadButton_GamepadButton_$Impl_$.Y = 3; -lime_ui__$GamepadButton_GamepadButton_$Impl_$.BACK = 4; -lime_ui__$GamepadButton_GamepadButton_$Impl_$.GUIDE = 5; -lime_ui__$GamepadButton_GamepadButton_$Impl_$.START = 6; -lime_ui__$GamepadButton_GamepadButton_$Impl_$.LEFT_STICK = 7; -lime_ui__$GamepadButton_GamepadButton_$Impl_$.RIGHT_STICK = 8; -lime_ui__$GamepadButton_GamepadButton_$Impl_$.LEFT_SHOULDER = 9; -lime_ui__$GamepadButton_GamepadButton_$Impl_$.RIGHT_SHOULDER = 10; -lime_ui__$GamepadButton_GamepadButton_$Impl_$.DPAD_UP = 11; -lime_ui__$GamepadButton_GamepadButton_$Impl_$.DPAD_DOWN = 12; -lime_ui__$GamepadButton_GamepadButton_$Impl_$.DPAD_LEFT = 13; -lime_ui__$GamepadButton_GamepadButton_$Impl_$.DPAD_RIGHT = 14; -lime_ui_Joystick.devices = new haxe_ds_IntMap(); -lime_ui_Joystick.onConnect = new lime_app__$Event_$lime_$ui_$Joystick_$Void(); -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.CENTER = 0; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.DOWN = 4; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.LEFT = 8; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.RIGHT = 2; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.UP = 1; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.DOWN_LEFT = 12; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.DOWN_RIGHT = 6; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.UP_LEFT = 9; -lime_ui__$JoystickHatPosition_JoystickHatPosition_$Impl_$.UP_RIGHT = 3; -lime_ui__$KeyCode_KeyCode_$Impl_$.UNKNOWN = 0; -lime_ui__$KeyCode_KeyCode_$Impl_$.BACKSPACE = 8; -lime_ui__$KeyCode_KeyCode_$Impl_$.TAB = 9; -lime_ui__$KeyCode_KeyCode_$Impl_$.RETURN = 13; -lime_ui__$KeyCode_KeyCode_$Impl_$.ESCAPE = 27; -lime_ui__$KeyCode_KeyCode_$Impl_$.SPACE = 32; -lime_ui__$KeyCode_KeyCode_$Impl_$.EXCLAMATION = 33; -lime_ui__$KeyCode_KeyCode_$Impl_$.QUOTE = 34; -lime_ui__$KeyCode_KeyCode_$Impl_$.HASH = 35; -lime_ui__$KeyCode_KeyCode_$Impl_$.DOLLAR = 36; -lime_ui__$KeyCode_KeyCode_$Impl_$.PERCENT = 37; -lime_ui__$KeyCode_KeyCode_$Impl_$.AMPERSAND = 38; -lime_ui__$KeyCode_KeyCode_$Impl_$.SINGLE_QUOTE = 39; -lime_ui__$KeyCode_KeyCode_$Impl_$.LEFT_PARENTHESIS = 40; -lime_ui__$KeyCode_KeyCode_$Impl_$.RIGHT_PARENTHESIS = 41; -lime_ui__$KeyCode_KeyCode_$Impl_$.ASTERISK = 42; -lime_ui__$KeyCode_KeyCode_$Impl_$.PLUS = 43; -lime_ui__$KeyCode_KeyCode_$Impl_$.COMMA = 44; -lime_ui__$KeyCode_KeyCode_$Impl_$.MINUS = 45; -lime_ui__$KeyCode_KeyCode_$Impl_$.PERIOD = 46; -lime_ui__$KeyCode_KeyCode_$Impl_$.SLASH = 47; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMBER_0 = 48; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMBER_1 = 49; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMBER_2 = 50; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMBER_3 = 51; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMBER_4 = 52; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMBER_5 = 53; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMBER_6 = 54; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMBER_7 = 55; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMBER_8 = 56; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMBER_9 = 57; -lime_ui__$KeyCode_KeyCode_$Impl_$.COLON = 58; -lime_ui__$KeyCode_KeyCode_$Impl_$.SEMICOLON = 59; -lime_ui__$KeyCode_KeyCode_$Impl_$.LESS_THAN = 60; -lime_ui__$KeyCode_KeyCode_$Impl_$.EQUALS = 61; -lime_ui__$KeyCode_KeyCode_$Impl_$.GREATER_THAN = 62; -lime_ui__$KeyCode_KeyCode_$Impl_$.QUESTION = 63; -lime_ui__$KeyCode_KeyCode_$Impl_$.AT = 64; -lime_ui__$KeyCode_KeyCode_$Impl_$.LEFT_BRACKET = 91; -lime_ui__$KeyCode_KeyCode_$Impl_$.BACKSLASH = 92; -lime_ui__$KeyCode_KeyCode_$Impl_$.RIGHT_BRACKET = 93; -lime_ui__$KeyCode_KeyCode_$Impl_$.CARET = 94; -lime_ui__$KeyCode_KeyCode_$Impl_$.UNDERSCORE = 95; -lime_ui__$KeyCode_KeyCode_$Impl_$.GRAVE = 96; -lime_ui__$KeyCode_KeyCode_$Impl_$.A = 97; -lime_ui__$KeyCode_KeyCode_$Impl_$.B = 98; -lime_ui__$KeyCode_KeyCode_$Impl_$.C = 99; -lime_ui__$KeyCode_KeyCode_$Impl_$.D = 100; -lime_ui__$KeyCode_KeyCode_$Impl_$.E = 101; -lime_ui__$KeyCode_KeyCode_$Impl_$.F = 102; -lime_ui__$KeyCode_KeyCode_$Impl_$.G = 103; -lime_ui__$KeyCode_KeyCode_$Impl_$.H = 104; -lime_ui__$KeyCode_KeyCode_$Impl_$.I = 105; -lime_ui__$KeyCode_KeyCode_$Impl_$.J = 106; -lime_ui__$KeyCode_KeyCode_$Impl_$.K = 107; -lime_ui__$KeyCode_KeyCode_$Impl_$.L = 108; -lime_ui__$KeyCode_KeyCode_$Impl_$.M = 109; -lime_ui__$KeyCode_KeyCode_$Impl_$.N = 110; -lime_ui__$KeyCode_KeyCode_$Impl_$.O = 111; -lime_ui__$KeyCode_KeyCode_$Impl_$.P = 112; -lime_ui__$KeyCode_KeyCode_$Impl_$.Q = 113; -lime_ui__$KeyCode_KeyCode_$Impl_$.R = 114; -lime_ui__$KeyCode_KeyCode_$Impl_$.S = 115; -lime_ui__$KeyCode_KeyCode_$Impl_$.T = 116; -lime_ui__$KeyCode_KeyCode_$Impl_$.U = 117; -lime_ui__$KeyCode_KeyCode_$Impl_$.V = 118; -lime_ui__$KeyCode_KeyCode_$Impl_$.W = 119; -lime_ui__$KeyCode_KeyCode_$Impl_$.X = 120; -lime_ui__$KeyCode_KeyCode_$Impl_$.Y = 121; -lime_ui__$KeyCode_KeyCode_$Impl_$.Z = 122; -lime_ui__$KeyCode_KeyCode_$Impl_$.DELETE = 127; -lime_ui__$KeyCode_KeyCode_$Impl_$.CAPS_LOCK = 1073741881; -lime_ui__$KeyCode_KeyCode_$Impl_$.F1 = 1073741882; -lime_ui__$KeyCode_KeyCode_$Impl_$.F2 = 1073741883; -lime_ui__$KeyCode_KeyCode_$Impl_$.F3 = 1073741884; -lime_ui__$KeyCode_KeyCode_$Impl_$.F4 = 1073741885; -lime_ui__$KeyCode_KeyCode_$Impl_$.F5 = 1073741886; -lime_ui__$KeyCode_KeyCode_$Impl_$.F6 = 1073741887; -lime_ui__$KeyCode_KeyCode_$Impl_$.F7 = 1073741888; -lime_ui__$KeyCode_KeyCode_$Impl_$.F8 = 1073741889; -lime_ui__$KeyCode_KeyCode_$Impl_$.F9 = 1073741890; -lime_ui__$KeyCode_KeyCode_$Impl_$.F10 = 1073741891; -lime_ui__$KeyCode_KeyCode_$Impl_$.F11 = 1073741892; -lime_ui__$KeyCode_KeyCode_$Impl_$.F12 = 1073741893; -lime_ui__$KeyCode_KeyCode_$Impl_$.PRINT_SCREEN = 1073741894; -lime_ui__$KeyCode_KeyCode_$Impl_$.SCROLL_LOCK = 1073741895; -lime_ui__$KeyCode_KeyCode_$Impl_$.PAUSE = 1073741896; -lime_ui__$KeyCode_KeyCode_$Impl_$.INSERT = 1073741897; -lime_ui__$KeyCode_KeyCode_$Impl_$.HOME = 1073741898; -lime_ui__$KeyCode_KeyCode_$Impl_$.PAGE_UP = 1073741899; -lime_ui__$KeyCode_KeyCode_$Impl_$.END = 1073741901; -lime_ui__$KeyCode_KeyCode_$Impl_$.PAGE_DOWN = 1073741902; -lime_ui__$KeyCode_KeyCode_$Impl_$.RIGHT = 1073741903; -lime_ui__$KeyCode_KeyCode_$Impl_$.LEFT = 1073741904; -lime_ui__$KeyCode_KeyCode_$Impl_$.DOWN = 1073741905; -lime_ui__$KeyCode_KeyCode_$Impl_$.UP = 1073741906; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUM_LOCK = 1073741907; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_DIVIDE = 1073741908; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_MULTIPLY = 1073741909; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_MINUS = 1073741910; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_PLUS = 1073741911; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_ENTER = 1073741912; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_1 = 1073741913; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_2 = 1073741914; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_3 = 1073741915; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_4 = 1073741916; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_5 = 1073741917; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_6 = 1073741918; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_7 = 1073741919; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_8 = 1073741920; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_9 = 1073741921; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_0 = 1073741922; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_PERIOD = 1073741923; -lime_ui__$KeyCode_KeyCode_$Impl_$.APPLICATION = 1073741925; -lime_ui__$KeyCode_KeyCode_$Impl_$.POWER = 1073741926; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_EQUALS = 1073741927; -lime_ui__$KeyCode_KeyCode_$Impl_$.F13 = 1073741928; -lime_ui__$KeyCode_KeyCode_$Impl_$.F14 = 1073741929; -lime_ui__$KeyCode_KeyCode_$Impl_$.F15 = 1073741930; -lime_ui__$KeyCode_KeyCode_$Impl_$.F16 = 1073741931; -lime_ui__$KeyCode_KeyCode_$Impl_$.F17 = 1073741932; -lime_ui__$KeyCode_KeyCode_$Impl_$.F18 = 1073741933; -lime_ui__$KeyCode_KeyCode_$Impl_$.F19 = 1073741934; -lime_ui__$KeyCode_KeyCode_$Impl_$.F20 = 1073741935; -lime_ui__$KeyCode_KeyCode_$Impl_$.F21 = 1073741936; -lime_ui__$KeyCode_KeyCode_$Impl_$.F22 = 1073741937; -lime_ui__$KeyCode_KeyCode_$Impl_$.F23 = 1073741938; -lime_ui__$KeyCode_KeyCode_$Impl_$.F24 = 1073741939; -lime_ui__$KeyCode_KeyCode_$Impl_$.EXECUTE = 1073741940; -lime_ui__$KeyCode_KeyCode_$Impl_$.HELP = 1073741941; -lime_ui__$KeyCode_KeyCode_$Impl_$.MENU = 1073741942; -lime_ui__$KeyCode_KeyCode_$Impl_$.SELECT = 1073741943; -lime_ui__$KeyCode_KeyCode_$Impl_$.STOP = 1073741944; -lime_ui__$KeyCode_KeyCode_$Impl_$.AGAIN = 1073741945; -lime_ui__$KeyCode_KeyCode_$Impl_$.UNDO = 1073741946; -lime_ui__$KeyCode_KeyCode_$Impl_$.CUT = 1073741947; -lime_ui__$KeyCode_KeyCode_$Impl_$.COPY = 1073741948; -lime_ui__$KeyCode_KeyCode_$Impl_$.PASTE = 1073741949; -lime_ui__$KeyCode_KeyCode_$Impl_$.FIND = 1073741950; -lime_ui__$KeyCode_KeyCode_$Impl_$.MUTE = 1073741951; -lime_ui__$KeyCode_KeyCode_$Impl_$.VOLUME_UP = 1073741952; -lime_ui__$KeyCode_KeyCode_$Impl_$.VOLUME_DOWN = 1073741953; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_COMMA = 1073741957; -lime_ui__$KeyCode_KeyCode_$Impl_$.ALT_ERASE = 1073741977; -lime_ui__$KeyCode_KeyCode_$Impl_$.SYSTEM_REQUEST = 1073741978; -lime_ui__$KeyCode_KeyCode_$Impl_$.CANCEL = 1073741979; -lime_ui__$KeyCode_KeyCode_$Impl_$.CLEAR = 1073741980; -lime_ui__$KeyCode_KeyCode_$Impl_$.PRIOR = 1073741981; -lime_ui__$KeyCode_KeyCode_$Impl_$.RETURN2 = 1073741982; -lime_ui__$KeyCode_KeyCode_$Impl_$.SEPARATOR = 1073741983; -lime_ui__$KeyCode_KeyCode_$Impl_$.OUT = 1073741984; -lime_ui__$KeyCode_KeyCode_$Impl_$.OPER = 1073741985; -lime_ui__$KeyCode_KeyCode_$Impl_$.CLEAR_AGAIN = 1073741986; -lime_ui__$KeyCode_KeyCode_$Impl_$.CRSEL = 1073741987; -lime_ui__$KeyCode_KeyCode_$Impl_$.EXSEL = 1073741988; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_00 = 1073742000; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_000 = 1073742001; -lime_ui__$KeyCode_KeyCode_$Impl_$.THOUSAND_SEPARATOR = 1073742002; -lime_ui__$KeyCode_KeyCode_$Impl_$.DECIMAL_SEPARATOR = 1073742003; -lime_ui__$KeyCode_KeyCode_$Impl_$.CURRENCY_UNIT = 1073742004; -lime_ui__$KeyCode_KeyCode_$Impl_$.CURRENCY_SUBUNIT = 1073742005; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_LEFT_PARENTHESIS = 1073742006; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_RIGHT_PARENTHESIS = 1073742007; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_LEFT_BRACE = 1073742008; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_RIGHT_BRACE = 1073742009; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_TAB = 1073742010; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_BACKSPACE = 1073742011; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_A = 1073742012; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_B = 1073742013; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_C = 1073742014; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_D = 1073742015; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_E = 1073742016; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_F = 1073742017; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_XOR = 1073742018; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_POWER = 1073742019; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_PERCENT = 1073742020; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_LESS_THAN = 1073742021; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_GREATER_THAN = 1073742022; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_AMPERSAND = 1073742023; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_DOUBLE_AMPERSAND = 1073742024; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_VERTICAL_BAR = 1073742025; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_DOUBLE_VERTICAL_BAR = 1073742026; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_COLON = 1073742027; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_HASH = 1073742028; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_SPACE = 1073742029; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_AT = 1073742030; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_EXCLAMATION = 1073742031; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_MEM_STORE = 1073742032; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_MEM_RECALL = 1073742033; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_MEM_CLEAR = 1073742034; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_MEM_ADD = 1073742035; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_MEM_SUBTRACT = 1073742036; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_MEM_MULTIPLY = 1073742037; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_MEM_DIVIDE = 1073742038; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_PLUS_MINUS = 1073742039; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_CLEAR = 1073742040; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_CLEAR_ENTRY = 1073742041; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_BINARY = 1073742042; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_OCTAL = 1073742043; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_DECIMAL = 1073742044; -lime_ui__$KeyCode_KeyCode_$Impl_$.NUMPAD_HEXADECIMAL = 1073742045; -lime_ui__$KeyCode_KeyCode_$Impl_$.LEFT_CTRL = 1073742048; -lime_ui__$KeyCode_KeyCode_$Impl_$.LEFT_SHIFT = 1073742049; -lime_ui__$KeyCode_KeyCode_$Impl_$.LEFT_ALT = 1073742050; -lime_ui__$KeyCode_KeyCode_$Impl_$.LEFT_META = 1073742051; -lime_ui__$KeyCode_KeyCode_$Impl_$.RIGHT_CTRL = 1073742052; -lime_ui__$KeyCode_KeyCode_$Impl_$.RIGHT_SHIFT = 1073742053; -lime_ui__$KeyCode_KeyCode_$Impl_$.RIGHT_ALT = 1073742054; -lime_ui__$KeyCode_KeyCode_$Impl_$.RIGHT_META = 1073742055; -lime_ui__$KeyCode_KeyCode_$Impl_$.MODE = 1073742081; -lime_ui__$KeyCode_KeyCode_$Impl_$.AUDIO_NEXT = 1073742082; -lime_ui__$KeyCode_KeyCode_$Impl_$.AUDIO_PREVIOUS = 1073742083; -lime_ui__$KeyCode_KeyCode_$Impl_$.AUDIO_STOP = 1073742084; -lime_ui__$KeyCode_KeyCode_$Impl_$.AUDIO_PLAY = 1073742085; -lime_ui__$KeyCode_KeyCode_$Impl_$.AUDIO_MUTE = 1073742086; -lime_ui__$KeyCode_KeyCode_$Impl_$.MEDIA_SELECT = 1073742087; -lime_ui__$KeyCode_KeyCode_$Impl_$.WWW = 1073742088; -lime_ui__$KeyCode_KeyCode_$Impl_$.MAIL = 1073742089; -lime_ui__$KeyCode_KeyCode_$Impl_$.CALCULATOR = 1073742090; -lime_ui__$KeyCode_KeyCode_$Impl_$.COMPUTER = 1073742091; -lime_ui__$KeyCode_KeyCode_$Impl_$.APP_CONTROL_SEARCH = 1073742092; -lime_ui__$KeyCode_KeyCode_$Impl_$.APP_CONTROL_HOME = 1073742093; -lime_ui__$KeyCode_KeyCode_$Impl_$.APP_CONTROL_BACK = 1073742094; -lime_ui__$KeyCode_KeyCode_$Impl_$.APP_CONTROL_FORWARD = 1073742095; -lime_ui__$KeyCode_KeyCode_$Impl_$.APP_CONTROL_STOP = 1073742096; -lime_ui__$KeyCode_KeyCode_$Impl_$.APP_CONTROL_REFRESH = 1073742097; -lime_ui__$KeyCode_KeyCode_$Impl_$.APP_CONTROL_BOOKMARKS = 1073742098; -lime_ui__$KeyCode_KeyCode_$Impl_$.BRIGHTNESS_DOWN = 1073742099; -lime_ui__$KeyCode_KeyCode_$Impl_$.BRIGHTNESS_UP = 1073742100; -lime_ui__$KeyCode_KeyCode_$Impl_$.DISPLAY_SWITCH = 1073742101; -lime_ui__$KeyCode_KeyCode_$Impl_$.BACKLIGHT_TOGGLE = 1073742102; -lime_ui__$KeyCode_KeyCode_$Impl_$.BACKLIGHT_DOWN = 1073742103; -lime_ui__$KeyCode_KeyCode_$Impl_$.BACKLIGHT_UP = 1073742104; -lime_ui__$KeyCode_KeyCode_$Impl_$.EJECT = 1073742105; -lime_ui__$KeyCode_KeyCode_$Impl_$.SLEEP = 1073742106; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.NONE = 0; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.LEFT_SHIFT = 1; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.RIGHT_SHIFT = 2; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.LEFT_CTRL = 64; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.RIGHT_CTRL = 128; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.LEFT_ALT = 256; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.RIGHT_ALT = 512; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.LEFT_META = 1024; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.RIGHT_META = 2048; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.NUM_LOCK = 4096; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.CAPS_LOCK = 8192; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.MODE = 16384; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.CTRL = 192; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.SHIFT = 3; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.ALT = 768; -lime_ui__$KeyModifier_KeyModifier_$Impl_$.META = 3072; -lime_ui__$ScanCode_ScanCode_$Impl_$.UNKNOWN = 0; -lime_ui__$ScanCode_ScanCode_$Impl_$.BACKSPACE = 42; -lime_ui__$ScanCode_ScanCode_$Impl_$.TAB = 43; -lime_ui__$ScanCode_ScanCode_$Impl_$.RETURN = 40; -lime_ui__$ScanCode_ScanCode_$Impl_$.ESCAPE = 41; -lime_ui__$ScanCode_ScanCode_$Impl_$.SPACE = 44; -lime_ui__$ScanCode_ScanCode_$Impl_$.SINGLE_QUOTE = 52; -lime_ui__$ScanCode_ScanCode_$Impl_$.COMMA = 54; -lime_ui__$ScanCode_ScanCode_$Impl_$.MINUS = 45; -lime_ui__$ScanCode_ScanCode_$Impl_$.PERIOD = 55; -lime_ui__$ScanCode_ScanCode_$Impl_$.SLASH = 56; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMBER_0 = 39; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMBER_1 = 30; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMBER_2 = 31; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMBER_3 = 32; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMBER_4 = 33; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMBER_5 = 34; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMBER_6 = 35; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMBER_7 = 36; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMBER_8 = 37; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMBER_9 = 38; -lime_ui__$ScanCode_ScanCode_$Impl_$.SEMICOLON = 51; -lime_ui__$ScanCode_ScanCode_$Impl_$.EQUALS = 46; -lime_ui__$ScanCode_ScanCode_$Impl_$.LEFT_BRACKET = 47; -lime_ui__$ScanCode_ScanCode_$Impl_$.BACKSLASH = 49; -lime_ui__$ScanCode_ScanCode_$Impl_$.RIGHT_BRACKET = 48; -lime_ui__$ScanCode_ScanCode_$Impl_$.GRAVE = 53; -lime_ui__$ScanCode_ScanCode_$Impl_$.A = 4; -lime_ui__$ScanCode_ScanCode_$Impl_$.B = 5; -lime_ui__$ScanCode_ScanCode_$Impl_$.C = 6; -lime_ui__$ScanCode_ScanCode_$Impl_$.D = 7; -lime_ui__$ScanCode_ScanCode_$Impl_$.E = 8; -lime_ui__$ScanCode_ScanCode_$Impl_$.F = 9; -lime_ui__$ScanCode_ScanCode_$Impl_$.G = 10; -lime_ui__$ScanCode_ScanCode_$Impl_$.H = 11; -lime_ui__$ScanCode_ScanCode_$Impl_$.I = 12; -lime_ui__$ScanCode_ScanCode_$Impl_$.J = 13; -lime_ui__$ScanCode_ScanCode_$Impl_$.K = 14; -lime_ui__$ScanCode_ScanCode_$Impl_$.L = 15; -lime_ui__$ScanCode_ScanCode_$Impl_$.M = 16; -lime_ui__$ScanCode_ScanCode_$Impl_$.N = 17; -lime_ui__$ScanCode_ScanCode_$Impl_$.O = 18; -lime_ui__$ScanCode_ScanCode_$Impl_$.P = 19; -lime_ui__$ScanCode_ScanCode_$Impl_$.Q = 20; -lime_ui__$ScanCode_ScanCode_$Impl_$.R = 21; -lime_ui__$ScanCode_ScanCode_$Impl_$.S = 22; -lime_ui__$ScanCode_ScanCode_$Impl_$.T = 23; -lime_ui__$ScanCode_ScanCode_$Impl_$.U = 24; -lime_ui__$ScanCode_ScanCode_$Impl_$.V = 25; -lime_ui__$ScanCode_ScanCode_$Impl_$.W = 26; -lime_ui__$ScanCode_ScanCode_$Impl_$.X = 27; -lime_ui__$ScanCode_ScanCode_$Impl_$.Y = 28; -lime_ui__$ScanCode_ScanCode_$Impl_$.Z = 29; -lime_ui__$ScanCode_ScanCode_$Impl_$.DELETE = 76; -lime_ui__$ScanCode_ScanCode_$Impl_$.CAPS_LOCK = 57; -lime_ui__$ScanCode_ScanCode_$Impl_$.F1 = 58; -lime_ui__$ScanCode_ScanCode_$Impl_$.F2 = 59; -lime_ui__$ScanCode_ScanCode_$Impl_$.F3 = 60; -lime_ui__$ScanCode_ScanCode_$Impl_$.F4 = 61; -lime_ui__$ScanCode_ScanCode_$Impl_$.F5 = 62; -lime_ui__$ScanCode_ScanCode_$Impl_$.F6 = 63; -lime_ui__$ScanCode_ScanCode_$Impl_$.F7 = 64; -lime_ui__$ScanCode_ScanCode_$Impl_$.F8 = 65; -lime_ui__$ScanCode_ScanCode_$Impl_$.F9 = 66; -lime_ui__$ScanCode_ScanCode_$Impl_$.F10 = 67; -lime_ui__$ScanCode_ScanCode_$Impl_$.F11 = 68; -lime_ui__$ScanCode_ScanCode_$Impl_$.F12 = 69; -lime_ui__$ScanCode_ScanCode_$Impl_$.PRINT_SCREEN = 70; -lime_ui__$ScanCode_ScanCode_$Impl_$.SCROLL_LOCK = 71; -lime_ui__$ScanCode_ScanCode_$Impl_$.PAUSE = 72; -lime_ui__$ScanCode_ScanCode_$Impl_$.INSERT = 73; -lime_ui__$ScanCode_ScanCode_$Impl_$.HOME = 74; -lime_ui__$ScanCode_ScanCode_$Impl_$.PAGE_UP = 75; -lime_ui__$ScanCode_ScanCode_$Impl_$.END = 77; -lime_ui__$ScanCode_ScanCode_$Impl_$.PAGE_DOWN = 78; -lime_ui__$ScanCode_ScanCode_$Impl_$.RIGHT = 79; -lime_ui__$ScanCode_ScanCode_$Impl_$.LEFT = 80; -lime_ui__$ScanCode_ScanCode_$Impl_$.DOWN = 81; -lime_ui__$ScanCode_ScanCode_$Impl_$.UP = 82; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUM_LOCK = 83; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_DIVIDE = 84; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_MULTIPLY = 85; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_MINUS = 86; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_PLUS = 87; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_ENTER = 88; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_1 = 89; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_2 = 90; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_3 = 91; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_4 = 92; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_5 = 93; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_6 = 94; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_7 = 95; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_8 = 96; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_9 = 97; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_0 = 98; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_PERIOD = 99; -lime_ui__$ScanCode_ScanCode_$Impl_$.APPLICATION = 101; -lime_ui__$ScanCode_ScanCode_$Impl_$.POWER = 102; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_EQUALS = 103; -lime_ui__$ScanCode_ScanCode_$Impl_$.F13 = 104; -lime_ui__$ScanCode_ScanCode_$Impl_$.F14 = 105; -lime_ui__$ScanCode_ScanCode_$Impl_$.F15 = 106; -lime_ui__$ScanCode_ScanCode_$Impl_$.F16 = 107; -lime_ui__$ScanCode_ScanCode_$Impl_$.F17 = 108; -lime_ui__$ScanCode_ScanCode_$Impl_$.F18 = 109; -lime_ui__$ScanCode_ScanCode_$Impl_$.F19 = 110; -lime_ui__$ScanCode_ScanCode_$Impl_$.F20 = 111; -lime_ui__$ScanCode_ScanCode_$Impl_$.F21 = 112; -lime_ui__$ScanCode_ScanCode_$Impl_$.F22 = 113; -lime_ui__$ScanCode_ScanCode_$Impl_$.F23 = 114; -lime_ui__$ScanCode_ScanCode_$Impl_$.F24 = 115; -lime_ui__$ScanCode_ScanCode_$Impl_$.EXECUTE = 116; -lime_ui__$ScanCode_ScanCode_$Impl_$.HELP = 117; -lime_ui__$ScanCode_ScanCode_$Impl_$.MENU = 118; -lime_ui__$ScanCode_ScanCode_$Impl_$.SELECT = 119; -lime_ui__$ScanCode_ScanCode_$Impl_$.STOP = 120; -lime_ui__$ScanCode_ScanCode_$Impl_$.AGAIN = 121; -lime_ui__$ScanCode_ScanCode_$Impl_$.UNDO = 122; -lime_ui__$ScanCode_ScanCode_$Impl_$.CUT = 123; -lime_ui__$ScanCode_ScanCode_$Impl_$.COPY = 124; -lime_ui__$ScanCode_ScanCode_$Impl_$.PASTE = 125; -lime_ui__$ScanCode_ScanCode_$Impl_$.FIND = 126; -lime_ui__$ScanCode_ScanCode_$Impl_$.MUTE = 127; -lime_ui__$ScanCode_ScanCode_$Impl_$.VOLUME_UP = 128; -lime_ui__$ScanCode_ScanCode_$Impl_$.VOLUME_DOWN = 129; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_COMMA = 133; -lime_ui__$ScanCode_ScanCode_$Impl_$.ALT_ERASE = 153; -lime_ui__$ScanCode_ScanCode_$Impl_$.SYSTEM_REQUEST = 154; -lime_ui__$ScanCode_ScanCode_$Impl_$.CANCEL = 155; -lime_ui__$ScanCode_ScanCode_$Impl_$.CLEAR = 156; -lime_ui__$ScanCode_ScanCode_$Impl_$.PRIOR = 157; -lime_ui__$ScanCode_ScanCode_$Impl_$.RETURN2 = 158; -lime_ui__$ScanCode_ScanCode_$Impl_$.SEPARATOR = 159; -lime_ui__$ScanCode_ScanCode_$Impl_$.OUT = 160; -lime_ui__$ScanCode_ScanCode_$Impl_$.OPER = 161; -lime_ui__$ScanCode_ScanCode_$Impl_$.CLEAR_AGAIN = 162; -lime_ui__$ScanCode_ScanCode_$Impl_$.CRSEL = 163; -lime_ui__$ScanCode_ScanCode_$Impl_$.EXSEL = 164; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_00 = 176; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_000 = 177; -lime_ui__$ScanCode_ScanCode_$Impl_$.THOUSAND_SEPARATOR = 178; -lime_ui__$ScanCode_ScanCode_$Impl_$.DECIMAL_SEPARATOR = 179; -lime_ui__$ScanCode_ScanCode_$Impl_$.CURRENCY_UNIT = 180; -lime_ui__$ScanCode_ScanCode_$Impl_$.CURRENCY_SUBUNIT = 181; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_LEFT_PARENTHESIS = 182; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_RIGHT_PARENTHESIS = 183; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_LEFT_BRACE = 184; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_RIGHT_BRACE = 185; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_TAB = 186; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_BACKSPACE = 187; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_A = 188; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_B = 189; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_C = 190; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_D = 191; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_E = 192; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_F = 193; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_XOR = 194; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_POWER = 195; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_PERCENT = 196; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_LESS_THAN = 197; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_GREATER_THAN = 198; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_AMPERSAND = 199; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_DOUBLE_AMPERSAND = 200; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_VERTICAL_BAR = 201; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_DOUBLE_VERTICAL_BAR = 202; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_COLON = 203; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_HASH = 204; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_SPACE = 205; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_AT = 206; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_EXCLAMATION = 207; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_MEM_STORE = 208; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_MEM_RECALL = 209; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_MEM_CLEAR = 210; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_MEM_ADD = 211; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_MEM_SUBTRACT = 212; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_MEM_MULTIPLY = 213; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_MEM_DIVIDE = 214; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_PLUS_MINUS = 215; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_CLEAR = 216; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_CLEAR_ENTRY = 217; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_BINARY = 218; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_OCTAL = 219; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_DECIMAL = 220; -lime_ui__$ScanCode_ScanCode_$Impl_$.NUMPAD_HEXADECIMAL = 221; -lime_ui__$ScanCode_ScanCode_$Impl_$.LEFT_CTRL = 224; -lime_ui__$ScanCode_ScanCode_$Impl_$.LEFT_SHIFT = 225; -lime_ui__$ScanCode_ScanCode_$Impl_$.LEFT_ALT = 226; -lime_ui__$ScanCode_ScanCode_$Impl_$.LEFT_META = 227; -lime_ui__$ScanCode_ScanCode_$Impl_$.RIGHT_CTRL = 228; -lime_ui__$ScanCode_ScanCode_$Impl_$.RIGHT_SHIFT = 229; -lime_ui__$ScanCode_ScanCode_$Impl_$.RIGHT_ALT = 230; -lime_ui__$ScanCode_ScanCode_$Impl_$.RIGHT_META = 231; -lime_ui__$ScanCode_ScanCode_$Impl_$.MODE = 257; -lime_ui__$ScanCode_ScanCode_$Impl_$.AUDIO_NEXT = 258; -lime_ui__$ScanCode_ScanCode_$Impl_$.AUDIO_PREVIOUS = 259; -lime_ui__$ScanCode_ScanCode_$Impl_$.AUDIO_STOP = 260; -lime_ui__$ScanCode_ScanCode_$Impl_$.AUDIO_PLAY = 261; -lime_ui__$ScanCode_ScanCode_$Impl_$.AUDIO_MUTE = 262; -lime_ui__$ScanCode_ScanCode_$Impl_$.MEDIA_SELECT = 263; -lime_ui__$ScanCode_ScanCode_$Impl_$.WWW = 264; -lime_ui__$ScanCode_ScanCode_$Impl_$.MAIL = 265; -lime_ui__$ScanCode_ScanCode_$Impl_$.CALCULATOR = 266; -lime_ui__$ScanCode_ScanCode_$Impl_$.COMPUTER = 267; -lime_ui__$ScanCode_ScanCode_$Impl_$.APP_CONTROL_SEARCH = 268; -lime_ui__$ScanCode_ScanCode_$Impl_$.APP_CONTROL_HOME = 269; -lime_ui__$ScanCode_ScanCode_$Impl_$.APP_CONTROL_BACK = 270; -lime_ui__$ScanCode_ScanCode_$Impl_$.APP_CONTROL_FORWARD = 271; -lime_ui__$ScanCode_ScanCode_$Impl_$.APP_CONTROL_STOP = 272; -lime_ui__$ScanCode_ScanCode_$Impl_$.APP_CONTROL_REFRESH = 273; -lime_ui__$ScanCode_ScanCode_$Impl_$.APP_CONTROL_BOOKMARKS = 274; -lime_ui__$ScanCode_ScanCode_$Impl_$.BRIGHTNESS_DOWN = 275; -lime_ui__$ScanCode_ScanCode_$Impl_$.BRIGHTNESS_UP = 276; -lime_ui__$ScanCode_ScanCode_$Impl_$.DISPLAY_SWITCH = 277; -lime_ui__$ScanCode_ScanCode_$Impl_$.BACKLIGHT_TOGGLE = 278; -lime_ui__$ScanCode_ScanCode_$Impl_$.BACKLIGHT_DOWN = 279; -lime_ui__$ScanCode_ScanCode_$Impl_$.BACKLIGHT_UP = 280; -lime_ui__$ScanCode_ScanCode_$Impl_$.EJECT = 281; -lime_ui__$ScanCode_ScanCode_$Impl_$.SLEEP = 282; -lime_ui_Touch.onCancel = new lime_app__$Event_$lime_$ui_$Touch_$Void(); -lime_ui_Touch.onEnd = new lime_app__$Event_$lime_$ui_$Touch_$Void(); -lime_ui_Touch.onMove = new lime_app__$Event_$lime_$ui_$Touch_$Void(); -lime_ui_Touch.onStart = new lime_app__$Event_$lime_$ui_$Touch_$Void(); -lime_utils_Assets.cache = new lime_utils_AssetCache(); -lime_utils_Assets.onChange = new lime_app__$Event_$Void_$Void(); -lime_utils_Assets.bundlePaths = new haxe_ds_StringMap(); -lime_utils_Assets.libraries = new haxe_ds_StringMap(); -lime_utils_Assets.libraryPaths = new haxe_ds_StringMap(); -lime_utils__$Float32Array_Float32Array_$Impl_$.BYTES_PER_ELEMENT = 4; -lime_utils__$Float64Array_Float64Array_$Impl_$.BYTES_PER_ELEMENT = 8; -lime_utils__$Int16Array_Int16Array_$Impl_$.BYTES_PER_ELEMENT = 2; -lime_utils__$Int32Array_Int32Array_$Impl_$.BYTES_PER_ELEMENT = 4; -lime_utils__$Int8Array_Int8Array_$Impl_$.BYTES_PER_ELEMENT = 1; -lime_utils_Log.throwErrors = true; -lime_utils__$LogLevel_LogLevel_$Impl_$.NONE = 0; -lime_utils__$LogLevel_LogLevel_$Impl_$.ERROR = 1; -lime_utils__$LogLevel_LogLevel_$Impl_$.WARN = 2; -lime_utils__$LogLevel_LogLevel_$Impl_$.INFO = 3; -lime_utils__$LogLevel_LogLevel_$Impl_$.DEBUG = 4; -lime_utils__$LogLevel_LogLevel_$Impl_$.VERBOSE = 5; -lime_utils__$UInt16Array_UInt16Array_$Impl_$.BYTES_PER_ELEMENT = 2; -lime_utils__$UInt32Array_UInt32Array_$Impl_$.BYTES_PER_ELEMENT = 4; -lime_utils__$UInt8Array_UInt8Array_$Impl_$.BYTES_PER_ELEMENT = 1; -lime_utils__$UInt8ClampedArray_UInt8ClampedArray_$Impl_$.BYTES_PER_ELEMENT = 1; -openfl_Lib.__lastTimerID = 0; -openfl_Lib.__sentWarnings = new haxe_ds_StringMap(); -openfl_Lib.__timers = new haxe_ds_IntMap(); -openfl__$Vector_BoolVector.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, fields : { toJSON : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl__$Vector_FunctionVector.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, fields : { toJSON : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl__$Vector_IntVector.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, fields : { toJSON : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl__$internal_Lib.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, statics : { notImplemented : { SuppressWarnings : ["checkstyle:NullableParameter"]}}}; -openfl__$internal_Lib.__sentWarnings = new haxe_ds_StringMap(); -openfl__$internal_formats_agal_AGALConverter.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_formats_agal_AGALConverter.limitedProfile = true; -openfl__$internal_formats_agal__$AGALConverter_DestRegister.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_formats_agal_RegisterMap.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_formats_agal__$AGALConverter_SamplerRegister.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_formats_agal__$AGALConverter_SourceRegister.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_formats_atf_ATFReader.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_formats_html_HTMLParser.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_formats_html_HTMLParser.__regexAlign = new EReg("align\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i"); -openfl__$internal_formats_html_HTMLParser.__regexBreakTag = new EReg("","gi"); -openfl__$internal_formats_html_HTMLParser.__regexBlockIndent = new EReg("blockindent\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i"); -openfl__$internal_formats_html_HTMLParser.__regexColor = new EReg("color\\s?=\\s?(\"#([^\"]+)\"|'#([^']+)')","i"); -openfl__$internal_formats_html_HTMLParser.__regexEntities = [new EReg(""","g"),new EReg("'","g"),new EReg("&","g"),new EReg("<","g"),new EReg(">","g"),new EReg(" ","g")]; -openfl__$internal_formats_html_HTMLParser.__regexFace = new EReg("face\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i"); -openfl__$internal_formats_html_HTMLParser.__regexHTMLTag = new EReg("<.*?>","g"); -openfl__$internal_formats_html_HTMLParser.__regexHref = new EReg("href\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i"); -openfl__$internal_formats_html_HTMLParser.__regexIndent = new EReg(" indent\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i"); -openfl__$internal_formats_html_HTMLParser.__regexLeading = new EReg("leading\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i"); -openfl__$internal_formats_html_HTMLParser.__regexLeftMargin = new EReg("leftmargin\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i"); -openfl__$internal_formats_html_HTMLParser.__regexRightMargin = new EReg("rightmargin\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i"); -openfl__$internal_formats_html_HTMLParser.__regexSize = new EReg("size\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i"); -openfl__$internal_formats_html_HTMLParser.__regexTabStops = new EReg("tabstops\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i"); -openfl__$internal_formats_swf_SWFLite.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, statics : { resolveClass : { SuppressWarnings : ["checkstyle:Dynamic"]}, resolveEnum : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl__$internal_formats_swf_SWFLite.instances = new haxe_ds_StringMap(); -openfl__$internal_formats_swf_SWFLiteLibrary.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_DrawCommandBuffer.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, fields : { o : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl__$internal_renderer_DrawCommandBuffer.empty = new openfl__$internal_renderer_DrawCommandBuffer(); -openfl__$internal_renderer_DrawCommandReader.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, fields : { obj : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl__$internal_renderer_SamplerState.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_ShaderBuffer.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, fields : { overrideIntValues : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl__$internal_renderer_cairo_CairoBitmap.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_cairo_CairoDisplayObject.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_cairo_CairoGraphics.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_cairo_CairoTextField.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_canvas_CanvasBitmap.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_canvas_CanvasDisplayObject.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_canvas_CanvasGraphics.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, statics : { windingRule : { SuppressWarnings : ["checkstyle:Dynamic"]}, createBitmapFill : { SuppressWarnings : ["checkstyle:Dynamic"]}, createGradientPattern : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl__$internal_renderer_canvas_CanvasGraphics.SIN45 = 0.70710678118654752440084436210485; -openfl__$internal_renderer_canvas_CanvasGraphics.TAN22 = 0.4142135623730950488016887242097; -openfl__$internal_renderer_canvas_CanvasGraphics.fillCommands = new openfl__$internal_renderer_DrawCommandBuffer(); -openfl__$internal_renderer_canvas_CanvasGraphics.strokeCommands = new openfl__$internal_renderer_DrawCommandBuffer(); -openfl__$internal_renderer_canvas_CanvasShape.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_canvas_CanvasTextField.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_context3D_Context3DBitmap.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_context3D_Context3DBuffer.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_context3D_Context3DBuffer.MAX_INDEX_BUFFER_LENGTH = 65535; -openfl__$internal_renderer_context3D_Context3DBuffer.MAX_QUADS_PER_INDEX_BUFFER = 10922; -openfl__$internal_renderer_context3D_Context3DBuffer.MAX_QUAD_INDEX_BUFFER_LENGTH = 65532; -openfl__$internal_renderer_context3D_Context3DDisplayObject.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_context3D_Context3DGraphics.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_context3D_Context3DGraphics.blankBitmapData = new openfl_display_BitmapData(1,1,false,0); -openfl__$internal_renderer_context3D_Context3DGraphics.tempColorTransform = new openfl_geom_ColorTransform(1,1,1,1,0,0,0,0); -openfl__$internal_renderer_context3D_Context3DMaskShader.opaqueBitmapData = new openfl_display_BitmapData(1,1,false,0); -openfl__$internal_renderer_context3D_Context3DShape.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_context3D_Context3DState.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_context3D_Context3DTextField.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_dom_DOMBitmap.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_dom_DOMDisplayObject.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_dom_DOMShape.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_dom_DOMTextField.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_renderer_dom_DOMTextField.__regexColor = new EReg("color=(\"#([^\"]+)\"|'#([^']+)')","i"); -openfl__$internal_renderer_dom_DOMTextField.__regexFace = new EReg("face=(\"([^\"]+)\"|'([^']+)')","i"); -openfl__$internal_renderer_dom_DOMTextField.__regexFont = new EReg("]+)>","gi"); -openfl__$internal_renderer_dom_DOMTextField.__regexCloseFont = new EReg("","gi"); -openfl__$internal_renderer_dom_DOMTextField.__regexSize = new EReg("size=(\"([^\"]+)\"|'([^']+)')","i"); -openfl__$internal_text_GlyphPosition.__meta__ = { obj : { SuppressWarnings : [["checkstyle:FieldDocComment","checkstyle:Dynamic"]]}}; -openfl__$internal_text_TextEngine.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, fields : { __cairoFont : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl__$internal_text_TextEngine.GUTTER = 2; -openfl__$internal_text_TextEngine.UTF8_TAB = 9; -openfl__$internal_text_TextEngine.UTF8_ENDLINE = 10; -openfl__$internal_text_TextEngine.UTF8_SPACE = 32; -openfl__$internal_text_TextEngine.UTF8_HYPHEN = 45; -openfl__$internal_text_TextEngine.__defaultFonts = new haxe_ds_StringMap(); -openfl__$internal_text_TextLayout.__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"]}}}; -openfl__$internal_text_TextLayout.FT_LOAD_DEFAULT = 0; -openfl__$internal_text_TextLayout.FT_LOAD_NO_SCALE = 1; -openfl__$internal_text_TextLayout.FT_LOAD_NO_HINTING = 2; -openfl__$internal_text_TextLayout.FT_LOAD_RENDER = 4; -openfl__$internal_text_TextLayout.FT_LOAD_NO_BITMAP = 8; -openfl__$internal_text_TextLayout.FT_LOAD_VERTICAL_LAYOUT = 16; -openfl__$internal_text_TextLayout.FT_LOAD_FORCE_AUTOHINT = 32; -openfl__$internal_text_TextLayout.FT_LOAD_CROP_BITMAP = 64; -openfl__$internal_text_TextLayout.FT_LOAD_PEDANTIC = 128; -openfl__$internal_text_TextLayout.FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH = 256; -openfl__$internal_text_TextLayout.FT_LOAD_NO_RECURSE = 512; -openfl__$internal_text_TextLayout.FT_LOAD_IGNORE_TRANSFORM = 1024; -openfl__$internal_text_TextLayout.FT_LOAD_MONOCHROME = 2048; -openfl__$internal_text_TextLayout.FT_LOAD_LINEAR_DESIGN = 4096; -openfl__$internal_text_TextLayout.FT_LOAD_NO_AUTOHINT = 8192; -openfl__$internal_text_TextLayout.FT_LOAD_COLOR = 16384; -openfl__$internal_text_TextLayout.FT_LOAD_COMPUTE_METRICS = 32768; -openfl__$internal_text_TextLayout.FT_LOAD_BITMAP_METRICS_ONLY = 65536; -openfl__$internal_text_TextLayout.FT_LOAD_TARGET_NORMAL = 0; -openfl__$internal_text_TextLayout.FT_LOAD_TARGET_LIGHT = 0; -openfl__$internal_text__$TextLayout_TextDirection_$Impl_$.INVALID = 0; -openfl__$internal_text__$TextLayout_TextDirection_$Impl_$.LEFT_TO_RIGHT = 4; -openfl__$internal_text__$TextLayout_TextDirection_$Impl_$.RIGHT_TO_LEFT = 5; -openfl__$internal_text__$TextLayout_TextDirection_$Impl_$.TOP_TO_BOTTOM = 6; -openfl__$internal_text__$TextLayout_TextDirection_$Impl_$.BOTTOM_TO_TOP = 7; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.COMMON = "Zyyy"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.INHERITED = "Zinh"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.UNKNOWN = "Zzzz"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.ARABIC = "Arab"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.ARMENIAN = "Armn"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.BENGALI = "Beng"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.CYRILLIC = "Cyrl"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.DEVANAGARI = "Deva"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.GEORGIAN = "Geor"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.GREEK = "Grek"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.GUJARATI = "Gujr"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.GURMUKHI = "Guru"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.HANGUL = "Hang"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.HAN = "Hani"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.HEBREW = "Hebr"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.HIRAGANA = "Hira"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.KANNADA = "Knda"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.KATAKANA = "Kana"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.LAO = "Laoo"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.LATIN = "Latn"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.MALAYALAM = "Mlym"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.ORIYA = "Orya"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.TAMIL = "Taml"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.TELUGA = "Telu"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.THAI = "Thai"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.TIBETAN = "Tibt"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.BOPOMOFO = "Bopo"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.BRAILLE = "Brai"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.CANADIAN_SYLLABICS = "Cans"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.CHEROKEE = "Cher"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.ETHIOPIC = "Ethi"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.KHMER = "Khmr"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.MONGOLIAN = "Mong"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.MYANMAR = "Mymr"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.OGHAM = "Ogam"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.RUNIC = "Runr"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.SINHALA = "Sinh"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.SYRIAC = "Syrc"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.THAANA = "Thaa"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.YI = "Yiii"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.DESERET = "Dsrt"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.GOTHIC = "Goth"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.OLD_ITALIC = "Ital"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.BUHID = "Buhd"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.HANUNOO = "Hano"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.TAGALOG = "Tglg"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.TAGBANWA = "Tagb"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.CYPRIOT = "Cprt"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.LIMBU = "Limb"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.LINEAR_B = "Linb"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.OSMANYA = "Osma"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.SHAVIAN = "Shaw"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.TAI_LE = "Tale"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.UGARITIC = "Ugar"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.BUGINESE = "Bugi"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.COPTIC = "Copt"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.GLAGOLITIC = "Glag"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.KHAROSHTHI = "Khar"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.NEW_TAI_LUE = "Talu"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.OLD_PERSIAN = "Xpeo"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.SYLOTI_NAGRI = "Sylo"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.TIFINAGH = "Tfng"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.BALINESE = "Bali"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.CUNEIFORM = "Xsux"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.NKO = "Nkoo"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.PHAGS_PA = "Phag"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.PHOENICIAN = "Phnx"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.CARIAN = "Cari"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.CHAM = "Cham"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.KAYAH_LI = "Kali"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.LEPCHA = "Lepc"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.LYCIAN = "Lyci"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.LYDIAN = "Lydi"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.OL_CHIKI = "Olck"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.REJANG = "Rjng"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.SAURASHTRA = "Saur"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.SUNDANESE = "Sund"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.VAI = "Vaii"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.AVESTAN = "Avst"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.BAMUM = "Bamu"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.EGYPTIAN_HIEROGLYPHS = "Egyp"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.IMPERIAL_ARAMAIC = "Armi"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.INSCRIPTIONAL_PAHLAVI = "Phli"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.INSCRIPTIONAL_PARTHIAN = "Prti"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.JAVANESE = "Java"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.KAITHI = "Kthi"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.LISU = "Lisu"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.MEETEI_MAYEK = "Mtei"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.OLD_SOUTH_ARABIAN = "Sarb"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.OLD_TURKIC = "Orkh"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.SAMARITAN = "Samr"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.TAI_THAM = "Lana"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.TAI_VIET = "Tavt"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.BATAK = "Batk"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.BRAHMI = "Brah"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.MANDAIC = "Mand"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.CHAKMA = "Cakm"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.MEROITIC_CURSIVE = "Merc"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.MEROITIC_HIEROGLYPHS = "Mero"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.MIAO = "Plrd"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.SHARADA = "Shrd"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.SORA_SOMPENG = "Sora"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.TAKRI = "Takr"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.BASSA_VAH = "Bass"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.CAUCASIAN_ALBANIAN = "Aghb"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.DUPLOYAN = "Dupl"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.ELBASAN = "Elba"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.GRANTHA = "Gran"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.KHOJKI = "Khoj"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.KHUDAWADI = "Sind"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.LINEAR_A = "Lina"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.MAHAJANI = "Mahj"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.MANICHAEAN = "Mani"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.MENDE_KIKAKUI = "Mend"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.MODI = "Modi"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.MRO = "Mroo"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.NABATAEAN = "Nbat"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.OLD_NORTH_ARABIAN = "Narb"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.OLD_PERMIC = "Perm"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.PAHAWH_HMONG = "Hmng"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.PALMYRENE = "Palm"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.PAU_CIN_HAU = "Pauc"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.PSALTER_PAHLAVI = "Phlp"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.SIDDHAM = "Sidd"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.TIRHUTA = "Tirh"; -openfl__$internal_text__$TextLayout_TextScript_$Impl_$.WARANG_CITI = "Wara"; -openfl__$internal_text_TextLayoutGroup.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_utils_AbstractNoise.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl__$internal_utils_PerlinNoise.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, statics : { P : { SuppressWarnings : ["checkstyle:ConstantName"]}}}; -openfl__$internal_utils_PerlinNoise.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]; -openfl__$internal_utils_TouchData.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, fields : { touch : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl__$internal_utils_TouchData.__pool = new lime_utils_ObjectPool(function() { - return new openfl__$internal_utils_TouchData(); -},function(data) { - data.reset(); -}); -openfl_display_Application.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl_display__$BlendMode_BlendMode_$Impl_$.ADD = 0; -openfl_display__$BlendMode_BlendMode_$Impl_$.ALPHA = 1; -openfl_display__$BlendMode_BlendMode_$Impl_$.DARKEN = 2; -openfl_display__$BlendMode_BlendMode_$Impl_$.DIFFERENCE = 3; -openfl_display__$BlendMode_BlendMode_$Impl_$.ERASE = 4; -openfl_display__$BlendMode_BlendMode_$Impl_$.HARDLIGHT = 5; -openfl_display__$BlendMode_BlendMode_$Impl_$.INVERT = 6; -openfl_display__$BlendMode_BlendMode_$Impl_$.LAYER = 7; -openfl_display__$BlendMode_BlendMode_$Impl_$.LIGHTEN = 8; -openfl_display__$BlendMode_BlendMode_$Impl_$.MULTIPLY = 9; -openfl_display__$BlendMode_BlendMode_$Impl_$.NORMAL = 10; -openfl_display__$BlendMode_BlendMode_$Impl_$.OVERLAY = 11; -openfl_display__$BlendMode_BlendMode_$Impl_$.SCREEN = 12; -openfl_display__$BlendMode_BlendMode_$Impl_$.SHADER = 13; -openfl_display__$BlendMode_BlendMode_$Impl_$.SUBTRACT = 14; -openfl_display_DisplayObjectRenderer.__meta__ = { fields : { __context : { SuppressWarnings : ["checkstyle:Dynamic"]}, __type : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl_display_CairoRenderer.__meta__ = { fields : { cairo : { SuppressWarnings : ["checkstyle:Dynamic"]}, __matrix3 : { SuppressWarnings : ["checkstyle:Dynamic"]}, applyMatrix : { SuppressWarnings : ["checkstyle:Dynamic"]}, __setBlendModeCairo : { SuppressWarnings : ["checkstyle:Dynamic"]}, _ : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl_display_CanvasRenderer.__meta__ = { fields : { context : { SuppressWarnings : ["checkstyle:Dynamic"]}, applySmoothing : { SuppressWarnings : ["checkstyle:Dynamic"]}, setTransform : { SuppressWarnings : ["checkstyle:Dynamic"]}, __setBlendModeContext : { SuppressWarnings : ["checkstyle:Dynamic"]}, _ : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl_display__$CapsStyle_CapsStyle_$Impl_$.NONE = 0; -openfl_display__$CapsStyle_CapsStyle_$Impl_$.ROUND = 1; -openfl_display__$CapsStyle_CapsStyle_$Impl_$.SQUARE = 2; -openfl_display_DOMRenderer.__meta__ = { fields : { element : { SuppressWarnings : ["checkstyle:Dynamic"]}, applyStyle : { SuppressWarnings : ["checkstyle:Dynamic"]}, clearStyle : { SuppressWarnings : ["checkstyle:Dynamic"]}, _ : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl_display__$GradientType_GradientType_$Impl_$.LINEAR = 0; -openfl_display__$GradientType_GradientType_$Impl_$.RADIAL = 1; -openfl_display_Graphics.__meta__ = { fields : { overrideBlendMode : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}}; -openfl_display_Graphics.maxTextureHeight = null; -openfl_display_Graphics.maxTextureWidth = null; -openfl_display_GraphicsPath.SIN45 = 0.70710678118654752440084436210485; -openfl_display_GraphicsPath.TAN22 = 0.4142135623730950488016887242097; -openfl_display__$GraphicsPathWinding_GraphicsPathWinding_$Impl_$.EVEN_ODD = 0; -openfl_display__$GraphicsPathWinding_GraphicsPathWinding_$Impl_$.NON_ZERO = 1; -openfl_display__$InterpolationMethod_InterpolationMethod_$Impl_$.LINEAR_RGB = 0; -openfl_display__$InterpolationMethod_InterpolationMethod_$Impl_$.RGB = 1; -openfl_display__$JointStyle_JointStyle_$Impl_$.BEVEL = 0; -openfl_display__$JointStyle_JointStyle_$Impl_$.MITER = 1; -openfl_display__$JointStyle_JointStyle_$Impl_$.ROUND = 2; -openfl_display__$LineScaleMode_LineScaleMode_$Impl_$.HORIZONTAL = 0; -openfl_display__$LineScaleMode_LineScaleMode_$Impl_$.NONE = 1; -openfl_display__$LineScaleMode_LineScaleMode_$Impl_$.NORMAL = 2; -openfl_display__$LineScaleMode_LineScaleMode_$Impl_$.VERTICAL = 3; -openfl_display_Loader.__meta__ = { fields : { BitmapData_onError : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl_display_LoaderInfo.__meta__ = { statics : { create : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}, fields : { parameters : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl_display_LoaderInfo.__rootURL = typeof(window) != "undefined" ? window.document.URL : ""; -openfl_display_MovieClip.__useParentFPS = false; -openfl_display_OpenGLRenderer.__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"]}}}; -openfl_display_OpenGLRenderer.__alphaValue = [1]; -openfl_display_OpenGLRenderer.__colorMultipliersValue = [0,0,0,0]; -openfl_display_OpenGLRenderer.__colorOffsetsValue = [0,0,0,0]; -openfl_display_OpenGLRenderer.__defaultColorMultipliersValue = [1,1,1,1]; -openfl_display_OpenGLRenderer.__emptyColorValue = [0,0,0,0]; -openfl_display_OpenGLRenderer.__emptyAlphaValue = [1]; -openfl_display_OpenGLRenderer.__hasColorTransformValue = [false]; -openfl_display_OpenGLRenderer.__scissorRectangle = new openfl_geom_Rectangle(); -openfl_display_OpenGLRenderer.__textureSizeValue = [0,0]; -openfl_display__$PixelSnapping_PixelSnapping_$Impl_$.ALWAYS = 0; -openfl_display__$PixelSnapping_PixelSnapping_$Impl_$.AUTO = 1; -openfl_display__$PixelSnapping_PixelSnapping_$Impl_$.NEVER = 2; -openfl_display_Preloader.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, fields : { onComplete : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl_display_DefaultPreloader.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl_display_ShaderInput.__meta__ = { fields : { index : { SuppressWarnings : ["checkstyle:Dynamic"]}, name : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}}; -openfl_display_ShaderParameter.__meta__ = { fields : { index : { SuppressWarnings : ["checkstyle:Dynamic"]}, name : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}}; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.BOOL = 0; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.BOOL2 = 1; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.BOOL3 = 2; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.BOOL4 = 3; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.FLOAT = 4; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.FLOAT2 = 5; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.FLOAT3 = 6; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.FLOAT4 = 7; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.INT = 8; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.INT2 = 9; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.INT3 = 10; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.INT4 = 11; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.MATRIX2X2 = 12; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.MATRIX2X3 = 13; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.MATRIX2X4 = 14; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.MATRIX3X2 = 15; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.MATRIX3X3 = 16; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.MATRIX3X4 = 17; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.MATRIX4X2 = 18; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.MATRIX4X3 = 19; -openfl_display__$ShaderParameterType_ShaderParameterType_$Impl_$.MATRIX4X4 = 20; -openfl_display__$ShaderPrecision_ShaderPrecision_$Impl_$.FAST = 0; -openfl_display__$ShaderPrecision_ShaderPrecision_$Impl_$.FULL = 1; -openfl_display__$SpreadMethod_SpreadMethod_$Impl_$.PAD = 0; -openfl_display__$SpreadMethod_SpreadMethod_$Impl_$.REFLECT = 1; -openfl_display__$SpreadMethod_SpreadMethod_$Impl_$.REPEAT = 2; -openfl_display_Stage.__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"]}}}; -openfl_display__$StageAlign_StageAlign_$Impl_$.BOTTOM = 0; -openfl_display__$StageAlign_StageAlign_$Impl_$.BOTTOM_LEFT = 1; -openfl_display__$StageAlign_StageAlign_$Impl_$.BOTTOM_RIGHT = 2; -openfl_display__$StageAlign_StageAlign_$Impl_$.LEFT = 3; -openfl_display__$StageAlign_StageAlign_$Impl_$.RIGHT = 4; -openfl_display__$StageAlign_StageAlign_$Impl_$.TOP = 5; -openfl_display__$StageAlign_StageAlign_$Impl_$.TOP_LEFT = 6; -openfl_display__$StageAlign_StageAlign_$Impl_$.TOP_RIGHT = 7; -openfl_display__$StageDisplayState_StageDisplayState_$Impl_$.FULL_SCREEN = 0; -openfl_display__$StageDisplayState_StageDisplayState_$Impl_$.FULL_SCREEN_INTERACTIVE = 1; -openfl_display__$StageDisplayState_StageDisplayState_$Impl_$.NORMAL = 2; -openfl_display__$StageQuality_StageQuality_$Impl_$.BEST = 0; -openfl_display__$StageQuality_StageQuality_$Impl_$.HIGH = 1; -openfl_display__$StageQuality_StageQuality_$Impl_$.LOW = 2; -openfl_display__$StageQuality_StageQuality_$Impl_$.MEDIUM = 3; -openfl_display__$StageScaleMode_StageScaleMode_$Impl_$.EXACT_FIT = 0; -openfl_display__$StageScaleMode_StageScaleMode_$Impl_$.NO_BORDER = 1; -openfl_display__$StageScaleMode_StageScaleMode_$Impl_$.NO_SCALE = 2; -openfl_display__$StageScaleMode_StageScaleMode_$Impl_$.SHOW_ALL = 3; -openfl_display__$TriangleCulling_TriangleCulling_$Impl_$.NEGATIVE = 0; -openfl_display__$TriangleCulling_TriangleCulling_$Impl_$.NONE = 1; -openfl_display__$TriangleCulling_TriangleCulling_$Impl_$.POSITIVE = 2; -openfl_display_Window.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, fields : { _ : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl_display3D_Context3D.supportsVideoTexture = true; -openfl_display3D_Context3D.__glDepthStencil = -1; -openfl_display3D_Context3D.__glMaxTextureMaxAnisotropy = -1; -openfl_display3D_Context3D.__glMaxViewportDims = -1; -openfl_display3D_Context3D.__glMemoryCurrentAvailable = -1; -openfl_display3D_Context3D.__glMemoryTotalAvailable = -1; -openfl_display3D_Context3D.__glTextureMaxAnisotropy = -1; -openfl_display3D__$Context3DBlendFactor_Context3DBlendFactor_$Impl_$.DESTINATION_ALPHA = 0; -openfl_display3D__$Context3DBlendFactor_Context3DBlendFactor_$Impl_$.DESTINATION_COLOR = 1; -openfl_display3D__$Context3DBlendFactor_Context3DBlendFactor_$Impl_$.ONE = 2; -openfl_display3D__$Context3DBlendFactor_Context3DBlendFactor_$Impl_$.ONE_MINUS_DESTINATION_ALPHA = 3; -openfl_display3D__$Context3DBlendFactor_Context3DBlendFactor_$Impl_$.ONE_MINUS_DESTINATION_COLOR = 4; -openfl_display3D__$Context3DBlendFactor_Context3DBlendFactor_$Impl_$.ONE_MINUS_SOURCE_ALPHA = 5; -openfl_display3D__$Context3DBlendFactor_Context3DBlendFactor_$Impl_$.ONE_MINUS_SOURCE_COLOR = 6; -openfl_display3D__$Context3DBlendFactor_Context3DBlendFactor_$Impl_$.SOURCE_ALPHA = 7; -openfl_display3D__$Context3DBlendFactor_Context3DBlendFactor_$Impl_$.SOURCE_COLOR = 8; -openfl_display3D__$Context3DBlendFactor_Context3DBlendFactor_$Impl_$.ZERO = 9; -openfl_display3D__$Context3DBufferUsage_Context3DBufferUsage_$Impl_$.DYNAMIC_DRAW = 0; -openfl_display3D__$Context3DBufferUsage_Context3DBufferUsage_$Impl_$.STATIC_DRAW = 1; -openfl_display3D__$Context3DCompareMode_Context3DCompareMode_$Impl_$.ALWAYS = 0; -openfl_display3D__$Context3DCompareMode_Context3DCompareMode_$Impl_$.EQUAL = 1; -openfl_display3D__$Context3DCompareMode_Context3DCompareMode_$Impl_$.GREATER = 2; -openfl_display3D__$Context3DCompareMode_Context3DCompareMode_$Impl_$.GREATER_EQUAL = 3; -openfl_display3D__$Context3DCompareMode_Context3DCompareMode_$Impl_$.LESS = 4; -openfl_display3D__$Context3DCompareMode_Context3DCompareMode_$Impl_$.LESS_EQUAL = 5; -openfl_display3D__$Context3DCompareMode_Context3DCompareMode_$Impl_$.NEVER = 6; -openfl_display3D__$Context3DCompareMode_Context3DCompareMode_$Impl_$.NOT_EQUAL = 7; -openfl_display3D__$Context3DMipFilter_Context3DMipFilter_$Impl_$.MIPLINEAR = 0; -openfl_display3D__$Context3DMipFilter_Context3DMipFilter_$Impl_$.MIPNEAREST = 1; -openfl_display3D__$Context3DMipFilter_Context3DMipFilter_$Impl_$.MIPNONE = 2; -openfl_display3D__$Context3DProfile_Context3DProfile_$Impl_$.BASELINE = 0; -openfl_display3D__$Context3DProfile_Context3DProfile_$Impl_$.BASELINE_CONSTRAINED = 1; -openfl_display3D__$Context3DProfile_Context3DProfile_$Impl_$.BASELINE_EXTENDED = 2; -openfl_display3D__$Context3DProfile_Context3DProfile_$Impl_$.STANDARD = 3; -openfl_display3D__$Context3DProfile_Context3DProfile_$Impl_$.STANDARD_CONSTRAINED = 4; -openfl_display3D__$Context3DProfile_Context3DProfile_$Impl_$.STANDARD_EXTENDED = 5; -openfl_display3D__$Context3DProgramFormat_Context3DProgramFormat_$Impl_$.AGAL = 0; -openfl_display3D__$Context3DProgramFormat_Context3DProgramFormat_$Impl_$.GLSL = 1; -openfl_display3D__$Context3DProgramType_Context3DProgramType_$Impl_$.FRAGMENT = 0; -openfl_display3D__$Context3DProgramType_Context3DProgramType_$Impl_$.VERTEX = 1; -openfl_display3D__$Context3DRenderMode_Context3DRenderMode_$Impl_$.AUTO = 0; -openfl_display3D__$Context3DRenderMode_Context3DRenderMode_$Impl_$.SOFTWARE = 1; -openfl_display3D__$Context3DStencilAction_Context3DStencilAction_$Impl_$.DECREMENT_SATURATE = 0; -openfl_display3D__$Context3DStencilAction_Context3DStencilAction_$Impl_$.DECREMENT_WRAP = 1; -openfl_display3D__$Context3DStencilAction_Context3DStencilAction_$Impl_$.INCREMENT_SATURATE = 2; -openfl_display3D__$Context3DStencilAction_Context3DStencilAction_$Impl_$.INCREMENT_WRAP = 3; -openfl_display3D__$Context3DStencilAction_Context3DStencilAction_$Impl_$.INVERT = 4; -openfl_display3D__$Context3DStencilAction_Context3DStencilAction_$Impl_$.KEEP = 5; -openfl_display3D__$Context3DStencilAction_Context3DStencilAction_$Impl_$.SET = 6; -openfl_display3D__$Context3DStencilAction_Context3DStencilAction_$Impl_$.ZERO = 7; -openfl_display3D__$Context3DTextureFilter_Context3DTextureFilter_$Impl_$.ANISOTROPIC16X = 0; -openfl_display3D__$Context3DTextureFilter_Context3DTextureFilter_$Impl_$.ANISOTROPIC2X = 1; -openfl_display3D__$Context3DTextureFilter_Context3DTextureFilter_$Impl_$.ANISOTROPIC4X = 2; -openfl_display3D__$Context3DTextureFilter_Context3DTextureFilter_$Impl_$.ANISOTROPIC8X = 3; -openfl_display3D__$Context3DTextureFilter_Context3DTextureFilter_$Impl_$.LINEAR = 4; -openfl_display3D__$Context3DTextureFilter_Context3DTextureFilter_$Impl_$.NEAREST = 5; -openfl_display3D__$Context3DTextureFormat_Context3DTextureFormat_$Impl_$.BGR_PACKED = 0; -openfl_display3D__$Context3DTextureFormat_Context3DTextureFormat_$Impl_$.BGRA = 1; -openfl_display3D__$Context3DTextureFormat_Context3DTextureFormat_$Impl_$.BGRA_PACKED = 2; -openfl_display3D__$Context3DTextureFormat_Context3DTextureFormat_$Impl_$.COMPRESSED = 3; -openfl_display3D__$Context3DTextureFormat_Context3DTextureFormat_$Impl_$.COMPRESSED_ALPHA = 4; -openfl_display3D__$Context3DTextureFormat_Context3DTextureFormat_$Impl_$.RGBA_HALF_FLOAT = 5; -openfl_display3D__$Context3DTriangleFace_Context3DTriangleFace_$Impl_$.BACK = 0; -openfl_display3D__$Context3DTriangleFace_Context3DTriangleFace_$Impl_$.FRONT = 1; -openfl_display3D__$Context3DTriangleFace_Context3DTriangleFace_$Impl_$.FRONT_AND_BACK = 2; -openfl_display3D__$Context3DTriangleFace_Context3DTriangleFace_$Impl_$.NONE = 3; -openfl_display3D__$Context3DVertexBufferFormat_Context3DVertexBufferFormat_$Impl_$.BYTES_4 = 0; -openfl_display3D__$Context3DVertexBufferFormat_Context3DVertexBufferFormat_$Impl_$.FLOAT_1 = 1; -openfl_display3D__$Context3DVertexBufferFormat_Context3DVertexBufferFormat_$Impl_$.FLOAT_2 = 2; -openfl_display3D__$Context3DVertexBufferFormat_Context3DVertexBufferFormat_$Impl_$.FLOAT_3 = 3; -openfl_display3D__$Context3DVertexBufferFormat_Context3DVertexBufferFormat_$Impl_$.FLOAT_4 = 4; -openfl_display3D__$Context3DWrapMode_Context3DWrapMode_$Impl_$.CLAMP = 0; -openfl_display3D__$Context3DWrapMode_Context3DWrapMode_$Impl_$.CLAMP_U_REPEAT_V = 1; -openfl_display3D__$Context3DWrapMode_Context3DWrapMode_$Impl_$.REPEAT = 2; -openfl_display3D__$Context3DWrapMode_Context3DWrapMode_$Impl_$.REPEAT_U_CLAMP_V = 3; -openfl_display3D_Uniform.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl_display3D_UniformMap.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl_display3D_textures_TextureBase.__meta__ = { fields : { __textureContext : { SuppressWarnings : ["checkstyle:Dynamic"]}, __getGLFramebuffer : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl_display3D_textures_TextureBase.__supportsBGRA = null; -openfl_display3D_textures_Texture.__lowMemoryMode = false; -openfl_errors_Error.DEFAULT_TO_STRING = "Error"; -openfl_events_Event.ACTIVATE = "activate"; -openfl_events_Event.ADDED = "added"; -openfl_events_Event.ADDED_TO_STAGE = "addedToStage"; -openfl_events_Event.CANCEL = "cancel"; -openfl_events_Event.CHANGE = "change"; -openfl_events_Event.CLEAR = "clear"; -openfl_events_Event.CLOSE = "close"; -openfl_events_Event.COMPLETE = "complete"; -openfl_events_Event.CONNECT = "connect"; -openfl_events_Event.CONTEXT3D_CREATE = "context3DCreate"; -openfl_events_Event.COPY = "copy"; -openfl_events_Event.CUT = "cut"; -openfl_events_Event.DEACTIVATE = "deactivate"; -openfl_events_Event.ENTER_FRAME = "enterFrame"; -openfl_events_Event.EXIT_FRAME = "exitFrame"; -openfl_events_Event.FRAME_CONSTRUCTED = "frameConstructed"; -openfl_events_Event.FRAME_LABEL = "frameLabel"; -openfl_events_Event.FULLSCREEN = "fullScreen"; -openfl_events_Event.ID3 = "id3"; -openfl_events_Event.INIT = "init"; -openfl_events_Event.MOUSE_LEAVE = "mouseLeave"; -openfl_events_Event.OPEN = "open"; -openfl_events_Event.PASTE = "paste"; -openfl_events_Event.REMOVED = "removed"; -openfl_events_Event.REMOVED_FROM_STAGE = "removedFromStage"; -openfl_events_Event.RENDER = "render"; -openfl_events_Event.RESIZE = "resize"; -openfl_events_Event.SCROLL = "scroll"; -openfl_events_Event.SELECT = "select"; -openfl_events_Event.SELECT_ALL = "selectAll"; -openfl_events_Event.SOUND_COMPLETE = "soundComplete"; -openfl_events_Event.TAB_CHILDREN_CHANGE = "tabChildrenChange"; -openfl_events_Event.TAB_ENABLED_CHANGE = "tabEnabledChange"; -openfl_events_Event.TAB_INDEX_CHANGE = "tabIndexChange"; -openfl_events_Event.TEXTURE_READY = "textureReady"; -openfl_events_Event.UNLOAD = "unload"; -openfl_events_Event.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_Event(null); -},function(event) { - event.__init(); -}); -openfl_events_AccelerometerEvent.UPDATE = "update"; -openfl_events_AccelerometerEvent.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_AccelerometerEvent(null); -},function(event) { - event.__init(); -}); -openfl_events_ActivityEvent.ACTIVITY = "activity"; -openfl_events_ActivityEvent.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_ActivityEvent(null); -},function(event) { - event.__init(); -}); -openfl_events_TextEvent.LINK = "link"; -openfl_events_TextEvent.TEXT_INPUT = "textInput"; -openfl_events_TextEvent.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_TextEvent(null); -},function(event) { - event.__init(); -}); -openfl_events_ErrorEvent.ERROR = "error"; -openfl_events_ErrorEvent.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_ErrorEvent(null); -},function(event) { - event.__init(); -}); -openfl_events__$EventDispatcher_DispatchIterator.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl_events__$EventDispatcher_Listener.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl_events_FocusEvent.FOCUS_IN = "focusIn"; -openfl_events_FocusEvent.FOCUS_OUT = "focusOut"; -openfl_events_FocusEvent.KEY_FOCUS_CHANGE = "keyFocusChange"; -openfl_events_FocusEvent.MOUSE_FOCUS_CHANGE = "mouseFocusChange"; -openfl_events_FocusEvent.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_FocusEvent(null); -},function(event) { - event.__init(); -}); -openfl_events_FullScreenEvent.FULL_SCREEN = "fullScreen"; -openfl_events_FullScreenEvent.FULL_SCREEN_INTERACTIVE_ACCEPTED = "fullScreenInteractiveAccepted"; -openfl_events_FullScreenEvent.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_FullScreenEvent(null); -},function(event) { - event.__init(); -}); -openfl_events_GameInputEvent.DEVICE_ADDED = "deviceAdded"; -openfl_events_GameInputEvent.DEVICE_REMOVED = "deviceRemoved"; -openfl_events_GameInputEvent.DEVICE_UNUSABLE = "deviceUnusable"; -openfl_events_GameInputEvent.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_GameInputEvent(null); -},function(event) { - event.__init(); -}); -openfl_events_HTTPStatusEvent.HTTP_RESPONSE_STATUS = "httpResponseStatus"; -openfl_events_HTTPStatusEvent.HTTP_STATUS = "httpStatus"; -openfl_events_HTTPStatusEvent.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_HTTPStatusEvent(null); -},function(event) { - event.__init(); -}); -openfl_events_IOErrorEvent.IO_ERROR = "ioError"; -openfl_events_IOErrorEvent.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_IOErrorEvent(null); -},function(event) { - event.__init(); -}); -openfl_events_KeyboardEvent.KEY_DOWN = "keyDown"; -openfl_events_KeyboardEvent.KEY_UP = "keyUp"; -openfl_events_KeyboardEvent.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_KeyboardEvent(null); -},function(event) { - event.__init(); -}); -openfl_events_MouseEvent.CLICK = "click"; -openfl_events_MouseEvent.DOUBLE_CLICK = "doubleClick"; -openfl_events_MouseEvent.MIDDLE_CLICK = "middleClick"; -openfl_events_MouseEvent.MIDDLE_MOUSE_DOWN = "middleMouseDown"; -openfl_events_MouseEvent.MIDDLE_MOUSE_UP = "middleMouseUp"; -openfl_events_MouseEvent.MOUSE_DOWN = "mouseDown"; -openfl_events_MouseEvent.MOUSE_MOVE = "mouseMove"; -openfl_events_MouseEvent.MOUSE_OUT = "mouseOut"; -openfl_events_MouseEvent.MOUSE_OVER = "mouseOver"; -openfl_events_MouseEvent.MOUSE_UP = "mouseUp"; -openfl_events_MouseEvent.MOUSE_WHEEL = "mouseWheel"; -openfl_events_MouseEvent.RELEASE_OUTSIDE = "releaseOutside"; -openfl_events_MouseEvent.RIGHT_CLICK = "rightClick"; -openfl_events_MouseEvent.RIGHT_MOUSE_DOWN = "rightMouseDown"; -openfl_events_MouseEvent.RIGHT_MOUSE_UP = "rightMouseUp"; -openfl_events_MouseEvent.ROLL_OUT = "rollOut"; -openfl_events_MouseEvent.ROLL_OVER = "rollOver"; -openfl_events_MouseEvent.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_MouseEvent(null); -},function(event) { - event.__init(); -}); -openfl_events_NetStatusEvent.NET_STATUS = "netStatus"; -openfl_events_NetStatusEvent.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_NetStatusEvent(null); -},function(event) { - event.__init(); -}); -openfl_events_ProgressEvent.PROGRESS = "progress"; -openfl_events_ProgressEvent.SOCKET_DATA = "socketData"; -openfl_events_ProgressEvent.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_ProgressEvent(null); -},function(event) { - event.__init(); -}); -openfl_events_RenderEvent.CLEAR_DOM = "clearDOM"; -openfl_events_RenderEvent.RENDER_CAIRO = "renderCairo"; -openfl_events_RenderEvent.RENDER_CANVAS = "renderCanvas"; -openfl_events_RenderEvent.RENDER_DOM = "renderDOM"; -openfl_events_RenderEvent.RENDER_OPENGL = "renderOpenGL"; -openfl_events_RenderEvent.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_RenderEvent(null); -},function(event) { - event.__init(); -}); -openfl_events_SecurityErrorEvent.SECURITY_ERROR = "securityError"; -openfl_events_SecurityErrorEvent.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_SecurityErrorEvent(null); -},function(event) { - event.__init(); -}); -openfl_events_TouchEvent.__meta__ = { fields : { delta : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}}; -openfl_events_TouchEvent.TOUCH_BEGIN = "touchBegin"; -openfl_events_TouchEvent.TOUCH_END = "touchEnd"; -openfl_events_TouchEvent.TOUCH_MOVE = "touchMove"; -openfl_events_TouchEvent.TOUCH_OUT = "touchOut"; -openfl_events_TouchEvent.TOUCH_OVER = "touchOver"; -openfl_events_TouchEvent.TOUCH_ROLL_OUT = "touchRollOut"; -openfl_events_TouchEvent.TOUCH_ROLL_OVER = "touchRollOver"; -openfl_events_TouchEvent.TOUCH_TAP = "touchTap"; -openfl_events_TouchEvent.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_TouchEvent(null); -},function(event) { - event.__init(); -}); -openfl_events_UncaughtErrorEvent.UNCAUGHT_ERROR = "uncaughtError"; -openfl_events_UncaughtErrorEvent.__pool = new lime_utils_ObjectPool(function() { - return new openfl_events_UncaughtErrorEvent(null); -},function(event) { - event.__init(); -}); -openfl_filters_BlurFilter.__blurShader = new openfl_filters__$BlurFilter_BlurShader(); -openfl_filters__$ColorMatrixFilter_ColorMatrixShader.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl_filters_ColorMatrixFilter.__colorMatrixShader = new openfl_filters__$ColorMatrixFilter_ColorMatrixShader(); -openfl_filters_ConvolutionFilter.__convolutionShader = new openfl_filters__$ConvolutionFilter_ConvolutionShader(); -openfl_filters_DisplacementMapFilter.__displacementMapShader = new openfl_filters__$DisplacementMapFilter_DisplacementMapShader(); -openfl_filters_DisplacementMapFilter.__matrixData = [0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]; -openfl_filters_DisplacementMapFilter.__offset = [0.5,0.5,0.0,0.0]; -openfl_filters_GlowFilter.__glowShader = new openfl_filters__$GlowFilter_GlowShader(); -openfl_geom_Matrix3D.__meta__ = { statics : { create2D : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, createABCD : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, createOrtho : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}}; -openfl_geom__$Orientation3D_Orientation3D_$Impl_$.AXIS_ANGLE = 0; -openfl_geom__$Orientation3D_Orientation3D_$Impl_$.EULER_ANGLES = 1; -openfl_geom__$Orientation3D_Orientation3D_$Impl_$.QUATERNION = 2; -openfl_media_SoundTransform.__meta__ = { fields : { clone : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}}; -openfl_media_SoundMixer.MAX_ACTIVE_CHANNELS = 32; -openfl_media_SoundMixer.__soundChannels = []; -openfl_media_SoundMixer.__soundTransform = new openfl_media_SoundTransform(); -openfl_net_NetConnection.__meta__ = { statics : { CONNECT_SUCCESS : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}}; -openfl_net_NetConnection.CONNECT_SUCCESS = "NetConnection.Connect.Success"; -openfl_net_NetStream.__meta__ = { fields : { audioCodec : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, decodedFrames : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, speed : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, requestVideoStatus : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}}; -openfl_net_SharedObject.defaultObjectEncoding = 10; -openfl_net__$SharedObjectFlushStatus_SharedObjectFlushStatus_$Impl_$.FLUSHED = 0; -openfl_net__$SharedObjectFlushStatus_SharedObjectFlushStatus_$Impl_$.PENDING = 1; -openfl_net__$URLLoaderDataFormat_URLLoaderDataFormat_$Impl_$.BINARY = 0; -openfl_net__$URLLoaderDataFormat_URLLoaderDataFormat_$Impl_$.TEXT = 1; -openfl_net__$URLLoaderDataFormat_URLLoaderDataFormat_$Impl_$.VARIABLES = 2; -openfl_net_URLRequestDefaults.followRedirects = true; -openfl_net_URLRequestDefaults.idleTimeout = 0; -openfl_net_URLRequestDefaults.manageCookies = false; -openfl_sensors_Accelerometer.currentX = 0.0; -openfl_sensors_Accelerometer.currentY = 1.0; -openfl_sensors_Accelerometer.currentZ = 0.0; -openfl_sensors_Accelerometer.defaultInterval = 34; -openfl_sensors_Accelerometer.initialized = false; -openfl_sensors_Accelerometer.supported = false; -openfl_system_ApplicationDomain.currentDomain = new openfl_system_ApplicationDomain(null); -openfl_system_SecurityDomain.__meta__ = { obj : { SuppressWarnings : ["checkstyle:UnnecessaryConstructor"]}}; -openfl_system_SecurityDomain.currentDomain = new openfl_system_SecurityDomain(); -openfl_system_System.useCodePage = false; -openfl_text__$AntiAliasType_AntiAliasType_$Impl_$.ADVANCED = 0; -openfl_text__$AntiAliasType_AntiAliasType_$Impl_$.NORMAL = 1; -openfl_text__$FontStyle_FontStyle_$Impl_$.BOLD = 0; -openfl_text__$FontStyle_FontStyle_$Impl_$.BOLD_ITALIC = 1; -openfl_text__$FontStyle_FontStyle_$Impl_$.ITALIC = 2; -openfl_text__$FontStyle_FontStyle_$Impl_$.REGULAR = 3; -openfl_text__$FontType_FontType_$Impl_$.DEVICE = 0; -openfl_text__$FontType_FontType_$Impl_$.EMBEDDED = 1; -openfl_text__$FontType_FontType_$Impl_$.EMBEDDED_CFF = 2; -openfl_text__$GridFitType_GridFitType_$Impl_$.NONE = 0; -openfl_text__$GridFitType_GridFitType_$Impl_$.PIXEL = 1; -openfl_text__$GridFitType_GridFitType_$Impl_$.SUBPIXEL = 2; -openfl_text_TextField.__missingFontWarning = new haxe_ds_StringMap(); -openfl_text__$TextFieldAutoSize_TextFieldAutoSize_$Impl_$.CENTER = 0; -openfl_text__$TextFieldAutoSize_TextFieldAutoSize_$Impl_$.LEFT = 1; -openfl_text__$TextFieldAutoSize_TextFieldAutoSize_$Impl_$.NONE = 2; -openfl_text__$TextFieldAutoSize_TextFieldAutoSize_$Impl_$.RIGHT = 3; -openfl_text__$TextFieldType_TextFieldType_$Impl_$.DYNAMIC = 0; -openfl_text__$TextFieldType_TextFieldType_$Impl_$.INPUT = 1; -openfl_text_TextFormat.__meta__ = { fields : { clone : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}}; -openfl_text__$TextFormatAlign_TextFormatAlign_$Impl_$.CENTER = 0; -openfl_text__$TextFormatAlign_TextFormatAlign_$Impl_$.END = 1; -openfl_text__$TextFormatAlign_TextFormatAlign_$Impl_$.JUSTIFY = 2; -openfl_text__$TextFormatAlign_TextFormatAlign_$Impl_$.LEFT = 3; -openfl_text__$TextFormatAlign_TextFormatAlign_$Impl_$.RIGHT = 4; -openfl_text__$TextFormatAlign_TextFormatAlign_$Impl_$.START = 5; -openfl_ui_GameInput.__meta__ = { fields : { addEventListener : { SuppressWarnings : ["checkstyle:Dynamic"]}}}; -openfl_ui_GameInput.isSupported = true; -openfl_ui_GameInput.numDevices = 0; -openfl_ui_GameInput.__deviceList = []; -openfl_ui_GameInput.__instances = []; -openfl_ui_GameInput.__devices = new haxe_ds_ObjectMap(); -openfl_ui_GameInputDevice.MAX_BUFFER_SIZE = 32000; -openfl_ui_Keyboard.__meta__ = { statics : { BREAK : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, NUMLOCK : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}}; -openfl_ui_Keyboard.NUMBER_0 = 48; -openfl_ui_Keyboard.NUMBER_1 = 49; -openfl_ui_Keyboard.NUMBER_2 = 50; -openfl_ui_Keyboard.NUMBER_3 = 51; -openfl_ui_Keyboard.NUMBER_4 = 52; -openfl_ui_Keyboard.NUMBER_5 = 53; -openfl_ui_Keyboard.NUMBER_6 = 54; -openfl_ui_Keyboard.NUMBER_7 = 55; -openfl_ui_Keyboard.NUMBER_8 = 56; -openfl_ui_Keyboard.NUMBER_9 = 57; -openfl_ui_Keyboard.A = 65; -openfl_ui_Keyboard.B = 66; -openfl_ui_Keyboard.C = 67; -openfl_ui_Keyboard.D = 68; -openfl_ui_Keyboard.E = 69; -openfl_ui_Keyboard.F = 70; -openfl_ui_Keyboard.G = 71; -openfl_ui_Keyboard.H = 72; -openfl_ui_Keyboard.I = 73; -openfl_ui_Keyboard.J = 74; -openfl_ui_Keyboard.K = 75; -openfl_ui_Keyboard.L = 76; -openfl_ui_Keyboard.M = 77; -openfl_ui_Keyboard.N = 78; -openfl_ui_Keyboard.O = 79; -openfl_ui_Keyboard.P = 80; -openfl_ui_Keyboard.Q = 81; -openfl_ui_Keyboard.R = 82; -openfl_ui_Keyboard.S = 83; -openfl_ui_Keyboard.T = 84; -openfl_ui_Keyboard.U = 85; -openfl_ui_Keyboard.V = 86; -openfl_ui_Keyboard.W = 87; -openfl_ui_Keyboard.X = 88; -openfl_ui_Keyboard.Y = 89; -openfl_ui_Keyboard.Z = 90; -openfl_ui_Keyboard.NUMPAD_0 = 96; -openfl_ui_Keyboard.NUMPAD_1 = 97; -openfl_ui_Keyboard.NUMPAD_2 = 98; -openfl_ui_Keyboard.NUMPAD_3 = 99; -openfl_ui_Keyboard.NUMPAD_4 = 100; -openfl_ui_Keyboard.NUMPAD_5 = 101; -openfl_ui_Keyboard.NUMPAD_6 = 102; -openfl_ui_Keyboard.NUMPAD_7 = 103; -openfl_ui_Keyboard.NUMPAD_8 = 104; -openfl_ui_Keyboard.NUMPAD_9 = 105; -openfl_ui_Keyboard.NUMPAD_MULTIPLY = 106; -openfl_ui_Keyboard.NUMPAD_ADD = 107; -openfl_ui_Keyboard.NUMPAD_ENTER = 108; -openfl_ui_Keyboard.NUMPAD_SUBTRACT = 109; -openfl_ui_Keyboard.NUMPAD_DECIMAL = 110; -openfl_ui_Keyboard.NUMPAD_DIVIDE = 111; -openfl_ui_Keyboard.F1 = 112; -openfl_ui_Keyboard.F2 = 113; -openfl_ui_Keyboard.F3 = 114; -openfl_ui_Keyboard.F4 = 115; -openfl_ui_Keyboard.F5 = 116; -openfl_ui_Keyboard.F6 = 117; -openfl_ui_Keyboard.F7 = 118; -openfl_ui_Keyboard.F8 = 119; -openfl_ui_Keyboard.F9 = 120; -openfl_ui_Keyboard.F10 = 121; -openfl_ui_Keyboard.F11 = 122; -openfl_ui_Keyboard.F12 = 123; -openfl_ui_Keyboard.F13 = 124; -openfl_ui_Keyboard.F14 = 125; -openfl_ui_Keyboard.F15 = 126; -openfl_ui_Keyboard.BACKSPACE = 8; -openfl_ui_Keyboard.TAB = 9; -openfl_ui_Keyboard.ALTERNATE = 18; -openfl_ui_Keyboard.ENTER = 13; -openfl_ui_Keyboard.COMMAND = 15; -openfl_ui_Keyboard.SHIFT = 16; -openfl_ui_Keyboard.CONTROL = 17; -openfl_ui_Keyboard.BREAK = 19; -openfl_ui_Keyboard.CAPS_LOCK = 20; -openfl_ui_Keyboard.NUMPAD = 21; -openfl_ui_Keyboard.ESCAPE = 27; -openfl_ui_Keyboard.SPACE = 32; -openfl_ui_Keyboard.PAGE_UP = 33; -openfl_ui_Keyboard.PAGE_DOWN = 34; -openfl_ui_Keyboard.END = 35; -openfl_ui_Keyboard.HOME = 36; -openfl_ui_Keyboard.LEFT = 37; -openfl_ui_Keyboard.RIGHT = 39; -openfl_ui_Keyboard.UP = 38; -openfl_ui_Keyboard.DOWN = 40; -openfl_ui_Keyboard.INSERT = 45; -openfl_ui_Keyboard.DELETE = 46; -openfl_ui_Keyboard.NUMLOCK = 144; -openfl_ui_Keyboard.SEMICOLON = 186; -openfl_ui_Keyboard.EQUAL = 187; -openfl_ui_Keyboard.COMMA = 188; -openfl_ui_Keyboard.MINUS = 189; -openfl_ui_Keyboard.PERIOD = 190; -openfl_ui_Keyboard.SLASH = 191; -openfl_ui_Keyboard.BACKQUOTE = 192; -openfl_ui_Keyboard.LEFTBRACKET = 219; -openfl_ui_Keyboard.BACKSLASH = 220; -openfl_ui_Keyboard.RIGHTBRACKET = 221; -openfl_ui_Keyboard.QUOTE = 222; -openfl_ui_Mouse.supportsCursor = true; -openfl_ui_Mouse.supportsNativeCursor = true; -openfl_ui_Mouse.__cursor = "auto"; -openfl_ui__$MouseCursor_MouseCursor_$Impl_$.ARROW = "arrow"; -openfl_ui__$MouseCursor_MouseCursor_$Impl_$.AUTO = "auto"; -openfl_ui__$MouseCursor_MouseCursor_$Impl_$.BUTTON = "button"; -openfl_ui__$MouseCursor_MouseCursor_$Impl_$.HAND = "hand"; -openfl_ui__$MouseCursor_MouseCursor_$Impl_$.IBEAM = "ibeam"; -openfl_ui__$MouseCursor_MouseCursor_$Impl_$.__CROSSHAIR = "crosshair"; -openfl_ui__$MouseCursor_MouseCursor_$Impl_$.__CUSTOM = "custom"; -openfl_ui__$MouseCursor_MouseCursor_$Impl_$.__MOVE = "move"; -openfl_ui__$MouseCursor_MouseCursor_$Impl_$.__RESIZE_NESW = "resize_nesw"; -openfl_ui__$MouseCursor_MouseCursor_$Impl_$.__RESIZE_NS = "resize_ns"; -openfl_ui__$MouseCursor_MouseCursor_$Impl_$.__RESIZE_NWSE = "resize_nwse"; -openfl_ui__$MouseCursor_MouseCursor_$Impl_$.__RESIZE_WE = "resize_we"; -openfl_ui__$MouseCursor_MouseCursor_$Impl_$.__WAIT = "wait"; -openfl_ui__$MouseCursor_MouseCursor_$Impl_$.__WAIT_ARROW = "waitarrow"; -openfl_ui__$MultitouchInputMode_MultitouchInputMode_$Impl_$.GESTURE = 0; -openfl_ui__$MultitouchInputMode_MultitouchInputMode_$Impl_$.NONE = 1; -openfl_ui__$MultitouchInputMode_MultitouchInputMode_$Impl_$.TOUCH_POINT = 2; -openfl_utils_AGALMiniAssembler.__meta__ = { obj : { SuppressWarnings : [["checkstyle:ConstantName","checkstyle:FieldDocComment"]]}}; -openfl_utils_AGALMiniAssembler.OPMAP = new haxe_ds_StringMap(); -openfl_utils_AGALMiniAssembler.REGMAP = new haxe_ds_StringMap(); -openfl_utils_AGALMiniAssembler.SAMPLEMAP = new haxe_ds_StringMap(); -openfl_utils_AGALMiniAssembler.MAX_NESTING = 4; -openfl_utils_AGALMiniAssembler.MAX_OPCODES = 4096; -openfl_utils_AGALMiniAssembler.FRAGMENT = "fragment"; -openfl_utils_AGALMiniAssembler.VERTEX = "vertex"; -openfl_utils_AGALMiniAssembler.SAMPLER_TYPE_SHIFT = 8; -openfl_utils_AGALMiniAssembler.SAMPLER_DIM_SHIFT = 12; -openfl_utils_AGALMiniAssembler.SAMPLER_SPECIAL_SHIFT = 16; -openfl_utils_AGALMiniAssembler.SAMPLER_REPEAT_SHIFT = 20; -openfl_utils_AGALMiniAssembler.SAMPLER_MIPMAP_SHIFT = 24; -openfl_utils_AGALMiniAssembler.SAMPLER_FILTER_SHIFT = 28; -openfl_utils_AGALMiniAssembler.REG_WRITE = 1; -openfl_utils_AGALMiniAssembler.REG_READ = 2; -openfl_utils_AGALMiniAssembler.REG_FRAG = 32; -openfl_utils_AGALMiniAssembler.REG_VERT = 64; -openfl_utils_AGALMiniAssembler.OP_SCALAR = 1; -openfl_utils_AGALMiniAssembler.OP_SPECIAL_TEX = 8; -openfl_utils_AGALMiniAssembler.OP_SPECIAL_MATRIX = 16; -openfl_utils_AGALMiniAssembler.OP_FRAG_ONLY = 32; -openfl_utils_AGALMiniAssembler.OP_VERT_ONLY = 64; -openfl_utils_AGALMiniAssembler.OP_NO_DEST = 128; -openfl_utils_AGALMiniAssembler.OP_VERSION2 = 256; -openfl_utils_AGALMiniAssembler.OP_INCNEST = 512; -openfl_utils_AGALMiniAssembler.OP_DECNEST = 1024; -openfl_utils_AGALMiniAssembler.MOV = "mov"; -openfl_utils_AGALMiniAssembler.ADD = "add"; -openfl_utils_AGALMiniAssembler.SUB = "sub"; -openfl_utils_AGALMiniAssembler.MUL = "mul"; -openfl_utils_AGALMiniAssembler.DIV = "div"; -openfl_utils_AGALMiniAssembler.RCP = "rcp"; -openfl_utils_AGALMiniAssembler.MIN = "min"; -openfl_utils_AGALMiniAssembler.MAX = "max"; -openfl_utils_AGALMiniAssembler.FRC = "frc"; -openfl_utils_AGALMiniAssembler.SQT = "sqt"; -openfl_utils_AGALMiniAssembler.RSQ = "rsq"; -openfl_utils_AGALMiniAssembler.POW = "pow"; -openfl_utils_AGALMiniAssembler.LOG = "log"; -openfl_utils_AGALMiniAssembler.EXP = "exp"; -openfl_utils_AGALMiniAssembler.NRM = "nrm"; -openfl_utils_AGALMiniAssembler.SIN = "sin"; -openfl_utils_AGALMiniAssembler.COS = "cos"; -openfl_utils_AGALMiniAssembler.CRS = "crs"; -openfl_utils_AGALMiniAssembler.DP3 = "dp3"; -openfl_utils_AGALMiniAssembler.DP4 = "dp4"; -openfl_utils_AGALMiniAssembler.ABS = "abs"; -openfl_utils_AGALMiniAssembler.NEG = "neg"; -openfl_utils_AGALMiniAssembler.SAT = "sat"; -openfl_utils_AGALMiniAssembler.M33 = "m33"; -openfl_utils_AGALMiniAssembler.M44 = "m44"; -openfl_utils_AGALMiniAssembler.M34 = "m34"; -openfl_utils_AGALMiniAssembler.DDX = "ddx"; -openfl_utils_AGALMiniAssembler.DDY = "ddy"; -openfl_utils_AGALMiniAssembler.IFE = "ife"; -openfl_utils_AGALMiniAssembler.INE = "ine"; -openfl_utils_AGALMiniAssembler.IFG = "ifg"; -openfl_utils_AGALMiniAssembler.IFL = "ifl"; -openfl_utils_AGALMiniAssembler.IEG = "ieg"; -openfl_utils_AGALMiniAssembler.IEL = "iel"; -openfl_utils_AGALMiniAssembler.ELS = "els"; -openfl_utils_AGALMiniAssembler.EIF = "eif"; -openfl_utils_AGALMiniAssembler.TED = "ted"; -openfl_utils_AGALMiniAssembler.KIL = "kil"; -openfl_utils_AGALMiniAssembler.TEX = "tex"; -openfl_utils_AGALMiniAssembler.SGE = "sge"; -openfl_utils_AGALMiniAssembler.SLT = "slt"; -openfl_utils_AGALMiniAssembler.SGN = "sgn"; -openfl_utils_AGALMiniAssembler.SEQ = "seq"; -openfl_utils_AGALMiniAssembler.SNE = "sne"; -openfl_utils_AGALMiniAssembler.VA = "va"; -openfl_utils_AGALMiniAssembler.VC = "vc"; -openfl_utils_AGALMiniAssembler.VT = "vt"; -openfl_utils_AGALMiniAssembler.VO = "vo"; -openfl_utils_AGALMiniAssembler.VI = "vi"; -openfl_utils_AGALMiniAssembler.FC = "fc"; -openfl_utils_AGALMiniAssembler.FT = "ft"; -openfl_utils_AGALMiniAssembler.FS = "fs"; -openfl_utils_AGALMiniAssembler.FO = "fo"; -openfl_utils_AGALMiniAssembler.FD = "fd"; -openfl_utils_AGALMiniAssembler.IID = "iid"; -openfl_utils_AGALMiniAssembler.D2 = "2d"; -openfl_utils_AGALMiniAssembler.D3 = "3d"; -openfl_utils_AGALMiniAssembler.CUBE = "cube"; -openfl_utils_AGALMiniAssembler.MIPNEAREST = "mipnearest"; -openfl_utils_AGALMiniAssembler.MIPLINEAR = "miplinear"; -openfl_utils_AGALMiniAssembler.MIPNONE = "mipnone"; -openfl_utils_AGALMiniAssembler.NOMIP = "nomip"; -openfl_utils_AGALMiniAssembler.NEAREST = "nearest"; -openfl_utils_AGALMiniAssembler.LINEAR = "linear"; -openfl_utils_AGALMiniAssembler.ANISOTROPIC2X = "anisotropic2x"; -openfl_utils_AGALMiniAssembler.ANISOTROPIC4X = "anisotropic4x"; -openfl_utils_AGALMiniAssembler.ANISOTROPIC8X = "anisotropic8x"; -openfl_utils_AGALMiniAssembler.ANISOTROPIC16X = "anisotropic16x"; -openfl_utils_AGALMiniAssembler.CENTROID = "centroid"; -openfl_utils_AGALMiniAssembler.SINGLE = "single"; -openfl_utils_AGALMiniAssembler.IGNORESAMPLER = "ignoresampler"; -openfl_utils_AGALMiniAssembler.REPEAT = "repeat"; -openfl_utils_AGALMiniAssembler.WRAP = "wrap"; -openfl_utils_AGALMiniAssembler.CLAMP = "clamp"; -openfl_utils_AGALMiniAssembler.REPEAT_U_CLAMP_V = "repeat_u_clamp_v"; -openfl_utils_AGALMiniAssembler.CLAMP_U_REPEAT_V = "clamp_u_repeat_v"; -openfl_utils_AGALMiniAssembler.RGBA = "rgba"; -openfl_utils_AGALMiniAssembler.COMPRESSED = "compressed"; -openfl_utils_AGALMiniAssembler.COMPRESSEDALPHA = "compressedalpha"; -openfl_utils_AGALMiniAssembler.DXT1 = "dxt1"; -openfl_utils_AGALMiniAssembler.DXT5 = "dxt5"; -openfl_utils_AGALMiniAssembler.VIDEO = "video"; -openfl_utils_AGALMiniAssembler.initialized = false; -openfl_utils__$AGALMiniAssembler_OpCode.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl_utils__$AGALMiniAssembler_Register.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl_utils__$AGALMiniAssembler_Sampler.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -openfl_utils_Assets.cache = new openfl_utils_AssetCache(); -openfl_utils_Assets.dispatcher = new openfl_events_EventDispatcher(); -openfl_utils__$ByteArray_ByteArray_$Impl_$.__bytePointer = (function($this) { - var $r; - var this1 = new lime_utils_BytePointerData(null,0); - $r = this1; - return $r; -}(this)); -openfl_utils__$CompressionAlgorithm_CompressionAlgorithm_$Impl_$.DEFLATE = 0; -openfl_utils__$CompressionAlgorithm_CompressionAlgorithm_$Impl_$.LZMA = 1; -openfl_utils__$CompressionAlgorithm_CompressionAlgorithm_$Impl_$.ZLIB = 2; -openfl_utils__$Endian_Endian_$Impl_$.BIG_ENDIAN = 0; -openfl_utils__$Endian_Endian_$Impl_$.LITTLE_ENDIAN = 1; -openfl_utils__$Object_Object_$Impl_$.__meta__ = { statics : { iterator : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, __get : { SuppressWarnings : ["checkstyle:FieldDocComment"]}, __set : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}}; -haxe_lang_Iterator.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -haxe_lang_Iterable.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}}; -ApplicationMain.main(); -})(typeof exports != "undefined" ? exports : typeof window != "undefined" ? window : typeof self != "undefined" ? self : this, typeof window != "undefined" ? window : typeof global != "undefined" ? global : typeof self != "undefined" ? self : this); - -}); -$hx_exports.lime = $hx_exports.lime || {}; -$hx_exports.lime.$scripts = $hx_exports.lime.$scripts || {}; -$hx_exports.lime.$scripts["Bozorun"] = $hx_script; -$hx_exports.lime.embed = function(projectName) { var exports = {}; - var script = $hx_exports.lime.$scripts[projectName]; - if (!script) throw Error("Cannot find project name \"" + projectName + "\""); - script(exports, $global); - for (var key in exports) $hx_exports[key] = $hx_exports[key] || exports[key]; - var lime = exports.lime || window.lime; - if (lime && lime.embed && this != lime.embed) lime.embed.apply(lime, arguments); - return exports; -}; -if(typeof define == "function" && define.amd) { - define([], function() { return $hx_exports.lime; }); - define.__amd = define.amd; - define.amd = null; -} -})(typeof exports != "undefined" ? exports : typeof define == "function" && define.amd ? {} : typeof window != "undefined" ? window : typeof self != "undefined" ? self : this, typeof window != "undefined" ? window : typeof global != "undefined" ? global : typeof self != "undefined" ? self : this); - -/*! howler.js v2.1.1 | (c) 2013-2018, James Simpson of GoldFire Studios | MIT License | howlerjs.com */ -!function(){"use strict";var e=function(){this.init()};e.prototype={init:function(){var e=this||n;return e._counter=1e3,e._html5AudioPool=[],e.html5PoolSize=10,e._codecs={},e._howls=[],e._muted=!1,e._volume=1,e._canPlayEvent="canplaythrough",e._navigator="undefined"!=typeof window&&window.navigator?window.navigator:null,e.masterGain=null,e.noAudio=!1,e.usingWebAudio=!0,e.autoSuspend=!0,e.ctx=null,e.autoUnlock=!0,e._setup(),e},volume:function(e){var o=this||n;if(e=parseFloat(e),o.ctx||_(),void 0!==e&&e>=0&&e<=1){if(o._volume=e,o._muted)return o;o.usingWebAudio&&o.masterGain.gain.setValueAtTime(e,n.ctx.currentTime);for(var t=0;t=0;o--)e._howls[o].unload();return e.usingWebAudio&&e.ctx&&void 0!==e.ctx.close&&(e.ctx.close(),e.ctx=null,_()),e},codecs:function(e){return(this||n)._codecs[e.replace(/^x-/,"")]},_setup:function(){var e=this||n;if(e.state=e.ctx?e.ctx.state||"suspended":"suspended",e._autoSuspend(),!e.usingWebAudio)if("undefined"!=typeof Audio)try{var o=new Audio;void 0===o.oncanplaythrough&&(e._canPlayEvent="canplay")}catch(n){e.noAudio=!0}else e.noAudio=!0;try{var o=new Audio;o.muted&&(e.noAudio=!0)}catch(e){}return e.noAudio||e._setupCodecs(),e},_setupCodecs:function(){var e=this||n,o=null;try{o="undefined"!=typeof Audio?new Audio:null}catch(n){return e}if(!o||"function"!=typeof o.canPlayType)return e;var t=o.canPlayType("audio/mpeg;").replace(/^no$/,""),r=e._navigator&&e._navigator.userAgent.match(/OPR\/([0-6].)/g),a=r&&parseInt(r[0].split("/")[1],10)<33;return e._codecs={mp3:!(a||!t&&!o.canPlayType("audio/mp3;").replace(/^no$/,"")),mpeg:!!t,opus:!!o.canPlayType('audio/ogg; codecs="opus"').replace(/^no$/,""),ogg:!!o.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),oga:!!o.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),wav:!!o.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),aac:!!o.canPlayType("audio/aac;").replace(/^no$/,""),caf:!!o.canPlayType("audio/x-caf;").replace(/^no$/,""),m4a:!!(o.canPlayType("audio/x-m4a;")||o.canPlayType("audio/m4a;")||o.canPlayType("audio/aac;")).replace(/^no$/,""),mp4:!!(o.canPlayType("audio/x-mp4;")||o.canPlayType("audio/mp4;")||o.canPlayType("audio/aac;")).replace(/^no$/,""),weba:!!o.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/,""),webm:!!o.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/,""),dolby:!!o.canPlayType('audio/mp4; codecs="ec-3"').replace(/^no$/,""),flac:!!(o.canPlayType("audio/x-flac;")||o.canPlayType("audio/flac;")).replace(/^no$/,"")},e},_unlockAudio:function(){var e=this||n,o=/iPhone|iPad|iPod|Android|BlackBerry|BB10|Silk|Mobi|Chrome|Safari/i.test(e._navigator&&e._navigator.userAgent);if(!e._audioUnlocked&&e.ctx&&o){e._audioUnlocked=!1,e.autoUnlock=!1,e._mobileUnloaded||44100===e.ctx.sampleRate||(e._mobileUnloaded=!0,e.unload()),e._scratchBuffer=e.ctx.createBuffer(1,1,22050);var t=function(n){for(var o=0;o0?i._seek:t._sprite[e][0]/1e3),s=Math.max(0,(t._sprite[e][0]+t._sprite[e][1])/1e3-_),l=1e3*s/Math.abs(i._rate),c=t._sprite[e][0]/1e3,f=(t._sprite[e][0]+t._sprite[e][1])/1e3,p=!(!i._loop&&!t._sprite[e][2]);i._sprite=e,i._ended=!1;var m=function(){i._paused=!1,i._seek=_,i._start=c,i._stop=f,i._loop=p};if(_>=f)return void t._ended(i);var v=i._node;if(t._webAudio){var h=function(){t._playLock=!1,m(),t._refreshBuffer(i);var e=i._muted||t._muted?0:i._volume;v.gain.setValueAtTime(e,n.ctx.currentTime),i._playStart=n.ctx.currentTime,void 0===v.bufferSource.start?i._loop?v.bufferSource.noteGrainOn(0,_,86400):v.bufferSource.noteGrainOn(0,_,s):i._loop?v.bufferSource.start(0,_,86400):v.bufferSource.start(0,_,s),l!==1/0&&(t._endTimers[i._id]=setTimeout(t._ended.bind(t,i),l)),o||setTimeout(function(){t._emit("play",i._id),t._loadQueue()},0)};"running"===n.state?h():(t._playLock=!0,t.once("resume",h),t._clearTimer(i._id))}else{var y=function(){v.currentTime=_,v.muted=i._muted||t._muted||n._muted||v.muted,v.volume=i._volume*n.volume(),v.playbackRate=i._rate;try{var r=v.play();if(r&&"undefined"!=typeof Promise&&(r instanceof Promise||"function"==typeof r.then)?(t._playLock=!0,m(),r.then(function(){t._playLock=!1,v._unlocked=!0,o||(t._emit("play",i._id),t._loadQueue())}).catch(function(){t._playLock=!1,t._emit("playerror",i._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."),i._ended=!0,i._paused=!0})):o||(t._playLock=!1,m(),t._emit("play",i._id),t._loadQueue()),v.playbackRate=i._rate,v.paused)return void t._emit("playerror",i._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"!==e||i._loop?t._endTimers[i._id]=setTimeout(t._ended.bind(t,i),l):(t._endTimers[i._id]=function(){t._ended(i),v.removeEventListener("ended",t._endTimers[i._id],!1)},v.addEventListener("ended",t._endTimers[i._id],!1))}catch(e){t._emit("playerror",i._id,e)}},g=window&&window.ejecta||!v.readyState&&n._navigator.isCocoonJS;if(v.readyState>=3||g)y();else{t._playLock=!0;var b=function(){y(),v.removeEventListener(n._canPlayEvent,b,!1)};v.addEventListener(n._canPlayEvent,b,!1),t._clearTimer(i._id)}}return i._id},pause:function(e){var n=this;if("loaded"!==n._state||n._playLock)return n._queue.push({event:"pause",action:function(){n.pause(e)}}),n;for(var o=n._getSoundIds(e),t=0;t=0?o=parseInt(r[0],10):e=parseFloat(r[0])}else r.length>=2&&(e=parseFloat(r[0]),o=parseInt(r[1],10));var a;if(!(void 0!==e&&e>=0&&e<=1))return a=o?t._soundById(o):t._sounds[0],a?a._volume:0;if("loaded"!==t._state||t._playLock)return t._queue.push({event:"volume",action:function(){t.volume.apply(t,r)}}),t;void 0===o&&(t._volume=e),o=t._getSoundIds(o);for(var u=0;u0?t/_:t),l=Date.now();e._fadeTo=o,e._interval=setInterval(function(){var r=(Date.now()-l)/t;l=Date.now(),i+=d*r,i=Math.max(0,i),i=Math.min(1,i),i=Math.round(100*i)/100,u._webAudio?e._volume=i:u.volume(i,e._id,!0),a&&(u._volume=i),(on&&i>=o)&&(clearInterval(e._interval),e._interval=null,e._fadeTo=null,u.volume(o,e._id),u._emit("fade",e._id))},s)},_stopFade:function(e){var o=this,t=o._soundById(e);return t&&t._interval&&(o._webAudio&&t._node.gain.cancelScheduledValues(n.ctx.currentTime),clearInterval(t._interval),t._interval=null,o.volume(t._fadeTo,e),t._fadeTo=null,o._emit("fade",e)),o},loop:function(){var e,n,o,t=this,r=arguments;if(0===r.length)return t._loop;if(1===r.length){if("boolean"!=typeof r[0])return!!(o=t._soundById(parseInt(r[0],10)))&&o._loop;e=r[0],t._loop=e}else 2===r.length&&(e=r[0],n=parseInt(r[1],10));for(var a=t._getSoundIds(n),u=0;u=0?o=parseInt(r[0],10):e=parseFloat(r[0])}else 2===r.length&&(e=parseFloat(r[0]),o=parseInt(r[1],10));var i;if("number"!=typeof e)return i=t._soundById(o),i?i._rate:t._rate;if("loaded"!==t._state||t._playLock)return t._queue.push({event:"rate",action:function(){t.rate.apply(t,r)}}),t;void 0===o&&(t._rate=e),o=t._getSoundIds(o);for(var d=0;d=0?o=parseInt(r[0],10):t._sounds.length&&(o=t._sounds[0]._id,e=parseFloat(r[0]))}else 2===r.length&&(e=parseFloat(r[0]),o=parseInt(r[1],10));if(void 0===o)return t;if("loaded"!==t._state||t._playLock)return t._queue.push({event:"seek",action:function(){t.seek.apply(t,r)}}),t;var i=t._soundById(o);if(i){if(!("number"==typeof e&&e>=0)){if(t._webAudio){var d=t.playing(o)?n.ctx.currentTime-i._playStart:0,_=i._rateSeek?i._rateSeek-i._seek:0;return i._seek+(_+d*Math.abs(i._rate))}return i._node.currentTime}var s=t.playing(o);s&&t.pause(o,!0),i._seek=e,i._ended=!1,t._clearTimer(o),t._webAudio||!i._node||isNaN(i._node.duration)||(i._node.currentTime=e);var l=function(){t._emit("seek",o),s&&t.play(o,!0)};if(s&&!t._webAudio){var c=function(){t._playLock?setTimeout(c,0):l()};setTimeout(c,0)}else l()}return t},playing:function(e){var n=this;if("number"==typeof e){var o=n._soundById(e);return!!o&&!o._paused}for(var t=0;t=0&&n._howls.splice(a,1);var u=!0;for(t=0;t=0){u=!1;break}return r&&u&&delete r[e._src],n.noAudio=!1,e._state="unloaded",e._sounds=[],e=null,null},on:function(e,n,o,t){var r=this,a=r["_on"+e];return"function"==typeof n&&a.push(t?{id:o,fn:n,once:t}:{id:o,fn:n}),r},off:function(e,n,o){var t=this,r=t["_on"+e],a=0;if("number"==typeof n&&(o=n,n=null),n||o)for(a=0;a=0;a--)r[a].id&&r[a].id!==n&&"load"!==e||(setTimeout(function(e){e.call(this,n,o)}.bind(t,r[a].fn),0),r[a].once&&t.off(e,r[a].fn,r[a].id));return t._loadQueue(e),t},_loadQueue:function(e){var n=this;if(n._queue.length>0){var o=n._queue[0];o.event===e&&(n._queue.shift(),n._loadQueue()),e||o.action()}return n},_ended:function(e){var o=this,t=e._sprite;if(!o._webAudio&&e._node&&!e._node.paused&&!e._node.ended&&e._node.currentTime=0;t--){if(o<=n)return;e._sounds[t]._ended&&(e._webAudio&&e._sounds[t]._node&&e._sounds[t]._node.disconnect(0),e._sounds.splice(t,1),o--)}}},_getSoundIds:function(e){var n=this;if(void 0===e){for(var o=[],t=0;t=0;if(n._scratchBuffer&&e.bufferSource&&(e.bufferSource.onended=null,e.bufferSource.disconnect(0),t))try{e.bufferSource.buffer=n._scratchBuffer}catch(e){}return e.bufferSource=null,o}};var t=function(e){this._parent=e,this.init()};t.prototype={init:function(){var e=this,o=e._parent;return e._muted=o._muted,e._loop=o._loop,e._volume=o._volume,e._rate=o._rate,e._seek=0,e._paused=!0,e._ended=!0,e._sprite="__default",e._id=++n._counter,o._sounds.push(e),e.create(),e},create:function(){var e=this,o=e._parent,t=n._muted||e._muted||e._parent._muted?0:e._volume;return o._webAudio?(e._node=void 0===n.ctx.createGain?n.ctx.createGainNode():n.ctx.createGain(),e._node.gain.setValueAtTime(t,n.ctx.currentTime),e._node.paused=!0,e._node.connect(n.masterGain)):(e._node=n._obtainHtml5Audio(),e._errorFn=e._errorListener.bind(e),e._node.addEventListener("error",e._errorFn,!1),e._loadFn=e._loadListener.bind(e),e._node.addEventListener(n._canPlayEvent,e._loadFn,!1),e._node.src=o._src,e._node.preload="auto",e._node.volume=t*n.volume(),e._node.load()),e},reset:function(){var e=this,o=e._parent;return e._muted=o._muted,e._loop=o._loop,e._volume=o._volume,e._rate=o._rate,e._seek=0,e._rateSeek=0,e._paused=!0,e._ended=!0,e._sprite="__default",e._id=++n._counter,e},_errorListener:function(){var e=this;e._parent._emit("loaderror",e._id,e._node.error?e._node.error.code:0),e._node.removeEventListener("error",e._errorFn,!1)},_loadListener:function(){var e=this,o=e._parent;o._duration=Math.ceil(10*e._node.duration)/10,0===Object.keys(o._sprite).length&&(o._sprite={__default:[0,1e3*o._duration]}),"loaded"!==o._state&&(o._state="loaded",o._emit("load"),o._loadQueue()),e._node.removeEventListener(n._canPlayEvent,e._loadFn,!1)}};var r={},a=function(e){var n=e._src;if(r[n])return e._duration=r[n].duration,void d(e);if(/^data:[^;]+;base64,/.test(n)){for(var o=atob(n.split(",")[1]),t=new Uint8Array(o.length),a=0;a0?(r[o._src]=e,d(o,e)):t()};"undefined"!=typeof Promise&&1===n.ctx.decodeAudioData.length?n.ctx.decodeAudioData(e).then(a).catch(t):n.ctx.decodeAudioData(e,a,t)},d=function(e,n){n&&!e._duration&&(e._duration=n.duration),0===Object.keys(e._sprite).length&&(e._sprite={__default:[0,1e3*e._duration]}),"loaded"!==e._state&&(e._state="loaded",e._emit("load"),e._loadQueue())},_=function(){if(n.usingWebAudio){try{"undefined"!=typeof AudioContext?n.ctx=new AudioContext:"undefined"!=typeof webkitAudioContext?n.ctx=new webkitAudioContext:n.usingWebAudio=!1}catch(e){n.usingWebAudio=!1}n.ctx||(n.usingWebAudio=!1);var e=/iP(hone|od|ad)/.test(n._navigator&&n._navigator.platform),o=n._navigator&&n._navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/),t=o?parseInt(o[1],10):null;if(e&&t&&t<9){var r=/safari/.test(n._navigator&&n._navigator.userAgent.toLowerCase());(n._navigator&&n._navigator.standalone&&!r||n._navigator&&!n._navigator.standalone&&!r)&&(n.usingWebAudio=!1)}n.usingWebAudio&&(n.masterGain=void 0===n.ctx.createGain?n.ctx.createGainNode():n.ctx.createGain(),n.masterGain.gain.setValueAtTime(n._muted?0:1,n.ctx.currentTime),n.masterGain.connect(n.ctx.destination)),n._setup()}};"function"==typeof define&&define.amd&&define([],function(){return{Howler:n,Howl:o}}),"undefined"!=typeof exports&&(exports.Howler=n,exports.Howl=o),"undefined"!=typeof window?(window.HowlerGlobal=e,window.Howler=n,window.Howl=o,window.Sound=t):"undefined"!=typeof global&&(global.HowlerGlobal=e,global.Howler=n,global.Howl=o,global.Sound=t)}(); -/*! Spatial Plugin */ -!function(){"use strict";HowlerGlobal.prototype._pos=[0,0,0],HowlerGlobal.prototype._orientation=[0,0,-1,0,1,0],HowlerGlobal.prototype.stereo=function(e){var n=this;if(!n.ctx||!n.ctx.listener)return n;for(var t=n._howls.length-1;t>=0;t--)n._howls[t].stereo(e);return n},HowlerGlobal.prototype.pos=function(e,n,t){var r=this;return r.ctx&&r.ctx.listener?(n="number"!=typeof n?r._pos[1]:n,t="number"!=typeof t?r._pos[2]:t,"number"!=typeof e?r._pos:(r._pos=[e,n,t],void 0!==r.ctx.listener.positionX?(r.ctx.listener.positionX.setTargetAtTime(r._pos[0],Howler.ctx.currentTime,.1),r.ctx.listener.positionY.setTargetAtTime(r._pos[1],Howler.ctx.currentTime,.1),r.ctx.listener.positionZ.setTargetAtTime(r._pos[2],Howler.ctx.currentTime,.1)):r.ctx.listener.setPosition(r._pos[0],r._pos[1],r._pos[2]),r)):r},HowlerGlobal.prototype.orientation=function(e,n,t,r,o,i){var a=this;if(!a.ctx||!a.ctx.listener)return a;var s=a._orientation;return n="number"!=typeof n?s[1]:n,t="number"!=typeof t?s[2]:t,r="number"!=typeof r?s[3]:r,o="number"!=typeof o?s[4]:o,i="number"!=typeof i?s[5]:i,"number"!=typeof e?s:(a._orientation=[e,n,t,r,o,i],void 0!==a.ctx.listener.forwardX?(a.ctx.listener.forwardX.setTargetAtTime(e,Howler.ctx.currentTime,.1),a.ctx.listener.forwardY.setTargetAtTime(n,Howler.ctx.currentTime,.1),a.ctx.listener.forwardZ.setTargetAtTime(t,Howler.ctx.currentTime,.1),a.ctx.listener.upX.setTargetAtTime(e,Howler.ctx.currentTime,.1),a.ctx.listener.upY.setTargetAtTime(n,Howler.ctx.currentTime,.1),a.ctx.listener.upZ.setTargetAtTime(t,Howler.ctx.currentTime,.1)):a.ctx.listener.setOrientation(e,n,t,r,o,i),a)},Howl.prototype.init=function(e){return function(n){var t=this;return t._orientation=n.orientation||[1,0,0],t._stereo=n.stereo||null,t._pos=n.pos||null,t._pannerAttr={coneInnerAngle:void 0!==n.coneInnerAngle?n.coneInnerAngle:360,coneOuterAngle:void 0!==n.coneOuterAngle?n.coneOuterAngle:360,coneOuterGain:void 0!==n.coneOuterGain?n.coneOuterGain:0,distanceModel:void 0!==n.distanceModel?n.distanceModel:"inverse",maxDistance:void 0!==n.maxDistance?n.maxDistance:1e4,panningModel:void 0!==n.panningModel?n.panningModel:"HRTF",refDistance:void 0!==n.refDistance?n.refDistance:1,rolloffFactor:void 0!==n.rolloffFactor?n.rolloffFactor:1},t._onstereo=n.onstereo?[{fn:n.onstereo}]:[],t._onpos=n.onpos?[{fn:n.onpos}]:[],t._onorientation=n.onorientation?[{fn:n.onorientation}]:[],e.call(this,n)}}(Howl.prototype.init),Howl.prototype.stereo=function(n,t){var r=this;if(!r._webAudio)return r;if("loaded"!==r._state)return r._queue.push({event:"stereo",action:function(){r.stereo(n,t)}}),r;var o=void 0===Howler.ctx.createStereoPanner?"spatial":"stereo";if(void 0===t){if("number"!=typeof n)return r._stereo;r._stereo=n,r._pos=[n,0,0]}for(var i=r._getSoundIds(t),a=0;a0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new f,this.strm.avail_out=0;var a=o.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(a!==b)throw new Error(d[a]);if(e.header&&o.deflateSetHeader(this.strm,e.header),e.dictionary){var n;if(n="string"==typeof e.dictionary?h.string2buf(e.dictionary):"[object ArrayBuffer]"===_.call(e.dictionary)?new Uint8Array(e.dictionary):e.dictionary,a=o.deflateSetDictionary(this.strm,n),a!==b)throw new Error(d[a]);this._dict_set=!0}}function n(t,e){var a=new i(e);if(a.push(t,!0),a.err)throw a.msg;return a.result}function r(t,e){return e=e||{},e.raw=!0,n(t,e)}function s(t,e){return e=e||{},e.gzip=!0,n(t,e)}var o=t("./zlib/deflate"),l=t("./utils/common"),h=t("./utils/strings"),d=t("./zlib/messages"),f=t("./zlib/zstream"),_=Object.prototype.toString,u=0,c=4,b=0,g=1,m=2,w=-1,p=0,v=8;i.prototype.push=function(t,e){var a,i,n=this.strm,r=this.options.chunkSize;if(this.ended)return!1;i=e===~~e?e:e===!0?c:u,"string"==typeof t?n.input=h.string2buf(t):"[object ArrayBuffer]"===_.call(t)?n.input=new Uint8Array(t):n.input=t,n.next_in=0,n.avail_in=n.input.length;do{if(0===n.avail_out&&(n.output=new l.Buf8(r),n.next_out=0,n.avail_out=r),a=o.deflate(n,i),a!==g&&a!==b)return this.onEnd(a),this.ended=!0,!1;0!==n.avail_out&&(0!==n.avail_in||i!==c&&i!==m)||("string"===this.options.to?this.onData(h.buf2binstring(l.shrinkBuf(n.output,n.next_out))):this.onData(l.shrinkBuf(n.output,n.next_out)))}while((n.avail_in>0||0===n.avail_out)&&a!==g);return i===c?(a=o.deflateEnd(this.strm),this.onEnd(a),this.ended=!0,a===b):i!==m||(this.onEnd(b),n.avail_out=0,!0)},i.prototype.onData=function(t){this.chunks.push(t)},i.prototype.onEnd=function(t){t===b&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=l.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg},a.Deflate=i,a.deflate=n,a.deflateRaw=r,a.gzip=s},{"./utils/common":3,"./utils/strings":4,"./zlib/deflate":8,"./zlib/messages":13,"./zlib/zstream":15}],2:[function(t,e,a){"use strict";function i(t){if(!(this instanceof i))return new i(t);this.options=o.assign({chunkSize:16384,windowBits:0,to:""},t||{});var e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,0===e.windowBits&&(e.windowBits=-15)),!(e.windowBits>=0&&e.windowBits<16)||t&&t.windowBits||(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&0===(15&e.windowBits)&&(e.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new f,this.strm.avail_out=0;var a=s.inflateInit2(this.strm,e.windowBits);if(a!==h.Z_OK)throw new Error(d[a]);this.header=new _,s.inflateGetHeader(this.strm,this.header)}function n(t,e){var a=new i(e);if(a.push(t,!0),a.err)throw a.msg;return a.result}function r(t,e){return e=e||{},e.raw=!0,n(t,e)}var s=t("./zlib/inflate"),o=t("./utils/common"),l=t("./utils/strings"),h=t("./zlib/constants"),d=t("./zlib/messages"),f=t("./zlib/zstream"),_=t("./zlib/gzheader"),u=Object.prototype.toString;i.prototype.push=function(t,e){var a,i,n,r,d,f,_=this.strm,c=this.options.chunkSize,b=this.options.dictionary,g=!1;if(this.ended)return!1;i=e===~~e?e:e===!0?h.Z_FINISH:h.Z_NO_FLUSH,"string"==typeof t?_.input=l.binstring2buf(t):"[object ArrayBuffer]"===u.call(t)?_.input=new Uint8Array(t):_.input=t,_.next_in=0,_.avail_in=_.input.length;do{if(0===_.avail_out&&(_.output=new o.Buf8(c),_.next_out=0,_.avail_out=c),a=s.inflate(_,h.Z_NO_FLUSH),a===h.Z_NEED_DICT&&b&&(f="string"==typeof b?l.string2buf(b):"[object ArrayBuffer]"===u.call(b)?new Uint8Array(b):b,a=s.inflateSetDictionary(this.strm,f)),a===h.Z_BUF_ERROR&&g===!0&&(a=h.Z_OK,g=!1),a!==h.Z_STREAM_END&&a!==h.Z_OK)return this.onEnd(a),this.ended=!0,!1;_.next_out&&(0!==_.avail_out&&a!==h.Z_STREAM_END&&(0!==_.avail_in||i!==h.Z_FINISH&&i!==h.Z_SYNC_FLUSH)||("string"===this.options.to?(n=l.utf8border(_.output,_.next_out),r=_.next_out-n,d=l.buf2string(_.output,n),_.next_out=r,_.avail_out=c-r,r&&o.arraySet(_.output,_.output,n,r,0),this.onData(d)):this.onData(o.shrinkBuf(_.output,_.next_out)))),0===_.avail_in&&0===_.avail_out&&(g=!0)}while((_.avail_in>0||0===_.avail_out)&&a!==h.Z_STREAM_END);return a===h.Z_STREAM_END&&(i=h.Z_FINISH),i===h.Z_FINISH?(a=s.inflateEnd(this.strm),this.onEnd(a),this.ended=!0,a===h.Z_OK):i!==h.Z_SYNC_FLUSH||(this.onEnd(h.Z_OK),_.avail_out=0,!0)},i.prototype.onData=function(t){this.chunks.push(t)},i.prototype.onEnd=function(t){t===h.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=o.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg},a.Inflate=i,a.inflate=n,a.inflateRaw=r,a.ungzip=n},{"./utils/common":3,"./utils/strings":4,"./zlib/constants":6,"./zlib/gzheader":9,"./zlib/inflate":11,"./zlib/messages":13,"./zlib/zstream":15}],3:[function(t,e,a){"use strict";var i="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;a.assign=function(t){for(var e=Array.prototype.slice.call(arguments,1);e.length;){var a=e.shift();if(a){if("object"!=typeof a)throw new TypeError(a+"must be non-object");for(var i in a)a.hasOwnProperty(i)&&(t[i]=a[i])}}return t},a.shrinkBuf=function(t,e){return t.length===e?t:t.subarray?t.subarray(0,e):(t.length=e,t)};var n={arraySet:function(t,e,a,i,n){if(e.subarray&&t.subarray)return void t.set(e.subarray(a,a+i),n);for(var r=0;r=252?6:l>=248?5:l>=240?4:l>=224?3:l>=192?2:1;o[254]=o[254]=1,a.string2buf=function(t){var e,a,i,r,s,o=t.length,l=0;for(r=0;r>>6,e[s++]=128|63&a):a<65536?(e[s++]=224|a>>>12,e[s++]=128|a>>>6&63,e[s++]=128|63&a):(e[s++]=240|a>>>18,e[s++]=128|a>>>12&63,e[s++]=128|a>>>6&63,e[s++]=128|63&a);return e},a.buf2binstring=function(t){return i(t,t.length)},a.binstring2buf=function(t){for(var e=new n.Buf8(t.length),a=0,i=e.length;a4)h[n++]=65533,a+=s-1;else{for(r&=2===s?31:3===s?15:7;s>1&&a1?h[n++]=65533:r<65536?h[n++]=r:(r-=65536,h[n++]=55296|r>>10&1023,h[n++]=56320|1023&r)}return i(h,n)},a.utf8border=function(t,e){var a;for(e=e||t.length,e>t.length&&(e=t.length),a=e-1;a>=0&&128===(192&t[a]);)a--;return a<0?e:0===a?e:a+o[t[a]]>e?a:e}},{"./common":3}],5:[function(t,e,a){"use strict";function i(t,e,a,i){for(var n=65535&t|0,r=t>>>16&65535|0,s=0;0!==a;){s=a>2e3?2e3:a,a-=s;do n=n+e[i++]|0,r=r+n|0;while(--s);n%=65521,r%=65521}return n|r<<16|0}e.exports=i},{}],6:[function(t,e,a){"use strict";e.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(t,e,a){"use strict";function i(){for(var t,e=[],a=0;a<256;a++){t=a;for(var i=0;i<8;i++)t=1&t?3988292384^t>>>1:t>>>1;e[a]=t}return e}function n(t,e,a,i){var n=r,s=i+a;t^=-1;for(var o=i;o>>8^n[255&(t^e[o])];return t^-1}var r=i();e.exports=n},{}],8:[function(t,e,a){"use strict";function i(t,e){return t.msg=D[e],e}function n(t){return(t<<1)-(t>4?9:0)}function r(t){for(var e=t.length;--e>=0;)t[e]=0}function s(t){var e=t.state,a=e.pending;a>t.avail_out&&(a=t.avail_out),0!==a&&(R.arraySet(t.output,e.pending_buf,e.pending_out,a,t.next_out),t.next_out+=a,e.pending_out+=a,t.total_out+=a,t.avail_out-=a,e.pending-=a,0===e.pending&&(e.pending_out=0))}function o(t,e){C._tr_flush_block(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,s(t.strm)}function l(t,e){t.pending_buf[t.pending++]=e}function h(t,e){t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e}function d(t,e,a,i){var n=t.avail_in;return n>i&&(n=i),0===n?0:(t.avail_in-=n,R.arraySet(e,t.input,t.next_in,n,a),1===t.state.wrap?t.adler=N(t.adler,e,n,a):2===t.state.wrap&&(t.adler=O(t.adler,e,n,a)),t.next_in+=n,t.total_in+=n,n)}function f(t,e){var a,i,n=t.max_chain_length,r=t.strstart,s=t.prev_length,o=t.nice_match,l=t.strstart>t.w_size-ft?t.strstart-(t.w_size-ft):0,h=t.window,d=t.w_mask,f=t.prev,_=t.strstart+dt,u=h[r+s-1],c=h[r+s];t.prev_length>=t.good_match&&(n>>=2),o>t.lookahead&&(o=t.lookahead);do if(a=e,h[a+s]===c&&h[a+s-1]===u&&h[a]===h[r]&&h[++a]===h[r+1]){r+=2,a++;do;while(h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&h[++r]===h[++a]&&r<_);if(i=dt-(_-r),r=_-dt,i>s){if(t.match_start=e,s=i,i>=o)break;u=h[r+s-1],c=h[r+s]}}while((e=f[e&d])>l&&0!==--n);return s<=t.lookahead?s:t.lookahead}function _(t){var e,a,i,n,r,s=t.w_size;do{if(n=t.window_size-t.lookahead-t.strstart,t.strstart>=s+(s-ft)){R.arraySet(t.window,t.window,s,s,0),t.match_start-=s,t.strstart-=s,t.block_start-=s,a=t.hash_size,e=a;do i=t.head[--e],t.head[e]=i>=s?i-s:0;while(--a);a=s,e=a;do i=t.prev[--e],t.prev[e]=i>=s?i-s:0;while(--a);n+=s}if(0===t.strm.avail_in)break;if(a=d(t.strm,t.window,t.strstart+t.lookahead,n),t.lookahead+=a,t.lookahead+t.insert>=ht)for(r=t.strstart-t.insert,t.ins_h=t.window[r],t.ins_h=(t.ins_h<t.pending_buf_size-5&&(a=t.pending_buf_size-5);;){if(t.lookahead<=1){if(_(t),0===t.lookahead&&e===I)return vt;if(0===t.lookahead)break}t.strstart+=t.lookahead,t.lookahead=0;var i=t.block_start+a;if((0===t.strstart||t.strstart>=i)&&(t.lookahead=t.strstart-i,t.strstart=i,o(t,!1),0===t.strm.avail_out))return vt;if(t.strstart-t.block_start>=t.w_size-ft&&(o(t,!1),0===t.strm.avail_out))return vt}return t.insert=0,e===F?(o(t,!0),0===t.strm.avail_out?yt:xt):t.strstart>t.block_start&&(o(t,!1),0===t.strm.avail_out)?vt:vt}function c(t,e){for(var a,i;;){if(t.lookahead=ht&&(t.ins_h=(t.ins_h<=ht)if(i=C._tr_tally(t,t.strstart-t.match_start,t.match_length-ht),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=ht){t.match_length--;do t.strstart++,t.ins_h=(t.ins_h<=ht&&(t.ins_h=(t.ins_h<4096)&&(t.match_length=ht-1)),t.prev_length>=ht&&t.match_length<=t.prev_length){n=t.strstart+t.lookahead-ht,i=C._tr_tally(t,t.strstart-1-t.prev_match,t.prev_length-ht),t.lookahead-=t.prev_length-1,t.prev_length-=2;do++t.strstart<=n&&(t.ins_h=(t.ins_h<=ht&&t.strstart>0&&(n=t.strstart-1,i=s[n],i===s[++n]&&i===s[++n]&&i===s[++n])){r=t.strstart+dt;do;while(i===s[++n]&&i===s[++n]&&i===s[++n]&&i===s[++n]&&i===s[++n]&&i===s[++n]&&i===s[++n]&&i===s[++n]&&nt.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=ht?(a=C._tr_tally(t,1,t.match_length-ht),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(a=C._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),a&&(o(t,!1),0===t.strm.avail_out))return vt}return t.insert=0,e===F?(o(t,!0),0===t.strm.avail_out?yt:xt):t.last_lit&&(o(t,!1),0===t.strm.avail_out)?vt:kt}function m(t,e){for(var a;;){if(0===t.lookahead&&(_(t),0===t.lookahead)){if(e===I)return vt;break}if(t.match_length=0,a=C._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,a&&(o(t,!1),0===t.strm.avail_out))return vt}return t.insert=0,e===F?(o(t,!0),0===t.strm.avail_out?yt:xt):t.last_lit&&(o(t,!1),0===t.strm.avail_out)?vt:kt}function w(t,e,a,i,n){this.good_length=t,this.max_lazy=e,this.nice_length=a,this.max_chain=i,this.func=n}function p(t){t.window_size=2*t.w_size,r(t.head),t.max_lazy_match=Z[t.level].max_lazy,t.good_match=Z[t.level].good_length,t.nice_match=Z[t.level].nice_length,t.max_chain_length=Z[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=ht-1,t.match_available=0,t.ins_h=0}function v(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=V,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new R.Buf16(2*ot),this.dyn_dtree=new R.Buf16(2*(2*rt+1)),this.bl_tree=new R.Buf16(2*(2*st+1)),r(this.dyn_ltree),r(this.dyn_dtree),r(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new R.Buf16(lt+1),this.heap=new R.Buf16(2*nt+1),r(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new R.Buf16(2*nt+1),r(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function k(t){var e;return t&&t.state?(t.total_in=t.total_out=0,t.data_type=Q,e=t.state,e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=e.wrap?ut:wt,t.adler=2===e.wrap?0:1,e.last_flush=I,C._tr_init(e),H):i(t,K)}function y(t){var e=k(t);return e===H&&p(t.state),e}function x(t,e){return t&&t.state?2!==t.state.wrap?K:(t.state.gzhead=e,H):K}function z(t,e,a,n,r,s){if(!t)return K;var o=1;if(e===Y&&(e=6),n<0?(o=0,n=-n):n>15&&(o=2,n-=16),r<1||r>$||a!==V||n<8||n>15||e<0||e>9||s<0||s>W)return i(t,K);8===n&&(n=9);var l=new v;return t.state=l,l.strm=t,l.wrap=o,l.gzhead=null,l.w_bits=n,l.w_size=1<L||e<0)return t?i(t,K):K;if(o=t.state,!t.output||!t.input&&0!==t.avail_in||o.status===pt&&e!==F)return i(t,0===t.avail_out?P:K);if(o.strm=t,a=o.last_flush,o.last_flush=e,o.status===ut)if(2===o.wrap)t.adler=0,l(o,31),l(o,139),l(o,8),o.gzhead?(l(o,(o.gzhead.text?1:0)+(o.gzhead.hcrc?2:0)+(o.gzhead.extra?4:0)+(o.gzhead.name?8:0)+(o.gzhead.comment?16:0)),l(o,255&o.gzhead.time),l(o,o.gzhead.time>>8&255),l(o,o.gzhead.time>>16&255),l(o,o.gzhead.time>>24&255),l(o,9===o.level?2:o.strategy>=G||o.level<2?4:0),l(o,255&o.gzhead.os),o.gzhead.extra&&o.gzhead.extra.length&&(l(o,255&o.gzhead.extra.length),l(o,o.gzhead.extra.length>>8&255)),o.gzhead.hcrc&&(t.adler=O(t.adler,o.pending_buf,o.pending,0)),o.gzindex=0,o.status=ct):(l(o,0),l(o,0),l(o,0),l(o,0),l(o,0),l(o,9===o.level?2:o.strategy>=G||o.level<2?4:0),l(o,zt),o.status=wt);else{var _=V+(o.w_bits-8<<4)<<8,u=-1;u=o.strategy>=G||o.level<2?0:o.level<6?1:6===o.level?2:3,_|=u<<6,0!==o.strstart&&(_|=_t),_+=31-_%31,o.status=wt,h(o,_),0!==o.strstart&&(h(o,t.adler>>>16),h(o,65535&t.adler)),t.adler=1}if(o.status===ct)if(o.gzhead.extra){for(d=o.pending;o.gzindex<(65535&o.gzhead.extra.length)&&(o.pending!==o.pending_buf_size||(o.gzhead.hcrc&&o.pending>d&&(t.adler=O(t.adler,o.pending_buf,o.pending-d,d)),s(t),d=o.pending,o.pending!==o.pending_buf_size));)l(o,255&o.gzhead.extra[o.gzindex]),o.gzindex++;o.gzhead.hcrc&&o.pending>d&&(t.adler=O(t.adler,o.pending_buf,o.pending-d,d)),o.gzindex===o.gzhead.extra.length&&(o.gzindex=0,o.status=bt)}else o.status=bt;if(o.status===bt)if(o.gzhead.name){d=o.pending;do{if(o.pending===o.pending_buf_size&&(o.gzhead.hcrc&&o.pending>d&&(t.adler=O(t.adler,o.pending_buf,o.pending-d,d)),s(t),d=o.pending,o.pending===o.pending_buf_size)){f=1;break}f=o.gzindexd&&(t.adler=O(t.adler,o.pending_buf,o.pending-d,d)),0===f&&(o.gzindex=0,o.status=gt)}else o.status=gt;if(o.status===gt)if(o.gzhead.comment){d=o.pending;do{if(o.pending===o.pending_buf_size&&(o.gzhead.hcrc&&o.pending>d&&(t.adler=O(t.adler,o.pending_buf,o.pending-d,d)),s(t),d=o.pending,o.pending===o.pending_buf_size)){f=1;break}f=o.gzindexd&&(t.adler=O(t.adler,o.pending_buf,o.pending-d,d)),0===f&&(o.status=mt)}else o.status=mt;if(o.status===mt&&(o.gzhead.hcrc?(o.pending+2>o.pending_buf_size&&s(t),o.pending+2<=o.pending_buf_size&&(l(o,255&t.adler),l(o,t.adler>>8&255),t.adler=0,o.status=wt)):o.status=wt),0!==o.pending){if(s(t),0===t.avail_out)return o.last_flush=-1,H}else if(0===t.avail_in&&n(e)<=n(a)&&e!==F)return i(t,P);if(o.status===pt&&0!==t.avail_in)return i(t,P);if(0!==t.avail_in||0!==o.lookahead||e!==I&&o.status!==pt){var c=o.strategy===G?m(o,e):o.strategy===X?g(o,e):Z[o.level].func(o,e);if(c!==yt&&c!==xt||(o.status=pt),c===vt||c===yt)return 0===t.avail_out&&(o.last_flush=-1),H;if(c===kt&&(e===U?C._tr_align(o):e!==L&&(C._tr_stored_block(o,0,0,!1),e===T&&(r(o.head),0===o.lookahead&&(o.strstart=0,o.block_start=0,o.insert=0))),s(t),0===t.avail_out))return o.last_flush=-1,H}return e!==F?H:o.wrap<=0?j:(2===o.wrap?(l(o,255&t.adler),l(o,t.adler>>8&255),l(o,t.adler>>16&255),l(o,t.adler>>24&255),l(o,255&t.total_in),l(o,t.total_in>>8&255),l(o,t.total_in>>16&255),l(o,t.total_in>>24&255)):(h(o,t.adler>>>16),h(o,65535&t.adler)),s(t),o.wrap>0&&(o.wrap=-o.wrap),0!==o.pending?H:j)}function E(t){var e;return t&&t.state?(e=t.state.status,e!==ut&&e!==ct&&e!==bt&&e!==gt&&e!==mt&&e!==wt&&e!==pt?i(t,K):(t.state=null,e===wt?i(t,M):H)):K}function A(t,e){var a,i,n,s,o,l,h,d,f=e.length;if(!t||!t.state)return K;if(a=t.state,s=a.wrap,2===s||1===s&&a.status!==ut||a.lookahead)return K;for(1===s&&(t.adler=N(t.adler,e,f,0)),a.wrap=0,f>=a.w_size&&(0===s&&(r(a.head),a.strstart=0,a.block_start=0,a.insert=0),d=new R.Buf8(a.w_size),R.arraySet(d,e,f-a.w_size,a.w_size,0),e=d,f=a.w_size),o=t.avail_in,l=t.next_in,h=t.input,t.avail_in=f,t.next_in=0,t.input=e,_(a);a.lookahead>=ht;){i=a.strstart,n=a.lookahead-(ht-1);do a.ins_h=(a.ins_h<>>24,b>>>=y,g-=y,y=k>>>16&255,0===y)A[o++]=65535&k;else{if(!(16&y)){if(0===(64&y)){k=m[(65535&k)+(b&(1<>>=y,g-=y),g<15&&(b+=E[r++]<>>24,b>>>=y,g-=y,y=k>>>16&255,!(16&y)){if(0===(64&y)){k=w[(65535&k)+(b&(1<d){t.msg="invalid distance too far back",a.mode=i;break t}if(b>>>=y,g-=y,y=o-l,z>y){if(y=z-y,y>_&&a.sane){t.msg="invalid distance too far back",a.mode=i;break t}if(B=0,S=c,0===u){if(B+=f-y,y2;)A[o++]=S[B++],A[o++]=S[B++],A[o++]=S[B++],x-=3;x&&(A[o++]=S[B++],x>1&&(A[o++]=S[B++]))}else{B=o-z;do A[o++]=A[B++],A[o++]=A[B++],A[o++]=A[B++],x-=3;while(x>2);x&&(A[o++]=A[B++],x>1&&(A[o++]=A[B++]))}break}}break}}while(r>3,r-=x,g-=x<<3,b&=(1<>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24)}function n(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new w.Buf16(320),this.work=new w.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function r(t){var e;return t&&t.state?(e=t.state,t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=1&e.wrap),e.mode=T,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new w.Buf32(bt),e.distcode=e.distdyn=new w.Buf32(gt),e.sane=1,e.back=-1,Z):N}function s(t){var e;return t&&t.state?(e=t.state,e.wsize=0,e.whave=0,e.wnext=0,r(t)):N}function o(t,e){var a,i;return t&&t.state?(i=t.state,e<0?(a=0,e=-e):(a=(e>>4)+1,e<48&&(e&=15)),e&&(e<8||e>15)?N:(null!==i.window&&i.wbits!==e&&(i.window=null),i.wrap=a,i.wbits=e,s(t))):N}function l(t,e){var a,i;return t?(i=new n,t.state=i,i.window=null,a=o(t,e),a!==Z&&(t.state=null),a):N}function h(t){return l(t,wt)}function d(t){if(pt){var e;for(g=new w.Buf32(512),m=new w.Buf32(32),e=0;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(y(z,t.lens,0,288,g,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;y(B,t.lens,0,32,m,0,t.work,{bits:5}),pt=!1}t.lencode=g,t.lenbits=9,t.distcode=m,t.distbits=5}function f(t,e,a,i){var n,r=t.state;return null===r.window&&(r.wsize=1<=r.wsize?(w.arraySet(r.window,e,a-r.wsize,r.wsize,0),r.wnext=0,r.whave=r.wsize):(n=r.wsize-r.wnext,n>i&&(n=i),w.arraySet(r.window,e,a-i,n,r.wnext),i-=n,i?(w.arraySet(r.window,e,a-i,i,0),r.wnext=i,r.whave=r.wsize):(r.wnext+=n,r.wnext===r.wsize&&(r.wnext=0),r.whave>>8&255,a.check=v(a.check,Et,2,0),_=0,u=0,a.mode=F;break}if(a.flags=0,a.head&&(a.head.done=!1),!(1&a.wrap)||(((255&_)<<8)+(_>>8))%31){t.msg="incorrect header check",a.mode=_t;break}if((15&_)!==U){t.msg="unknown compression method",a.mode=_t;break}if(_>>>=4,u-=4,yt=(15&_)+8,0===a.wbits)a.wbits=yt;else if(yt>a.wbits){t.msg="invalid window size",a.mode=_t;break}a.dmax=1<>8&1),512&a.flags&&(Et[0]=255&_,Et[1]=_>>>8&255,a.check=v(a.check,Et,2,0)),_=0,u=0,a.mode=L;case L:for(;u<32;){if(0===l)break t;l--,_+=n[s++]<>>8&255,Et[2]=_>>>16&255,Et[3]=_>>>24&255,a.check=v(a.check,Et,4,0)),_=0,u=0,a.mode=H;case H:for(;u<16;){if(0===l)break t;l--,_+=n[s++]<>8),512&a.flags&&(Et[0]=255&_,Et[1]=_>>>8&255,a.check=v(a.check,Et,2,0)),_=0,u=0,a.mode=j;case j:if(1024&a.flags){for(;u<16;){if(0===l)break t;l--,_+=n[s++]<>>8&255,a.check=v(a.check,Et,2,0)),_=0,u=0}else a.head&&(a.head.extra=null);a.mode=K;case K:if(1024&a.flags&&(g=a.length,g>l&&(g=l),g&&(a.head&&(yt=a.head.extra_len-a.length,a.head.extra||(a.head.extra=new Array(a.head.extra_len)),w.arraySet(a.head.extra,n,s,g,yt)),512&a.flags&&(a.check=v(a.check,n,g,s)),l-=g,s+=g,a.length-=g),a.length))break t;a.length=0,a.mode=M;case M:if(2048&a.flags){if(0===l)break t;g=0;do yt=n[s+g++],a.head&&yt&&a.length<65536&&(a.head.name+=String.fromCharCode(yt));while(yt&&g>9&1,a.head.done=!0),t.adler=a.check=0,a.mode=X;break;case q:for(;u<32;){if(0===l)break t;l--,_+=n[s++]<>>=7&u,u-=7&u,a.mode=ht;break}for(;u<3;){if(0===l)break t;l--,_+=n[s++]<>>=1,u-=1,3&_){case 0:a.mode=J;break;case 1:if(d(a),a.mode=at,e===A){_>>>=2,u-=2;break t}break;case 2:a.mode=$;break;case 3:t.msg="invalid block type",a.mode=_t}_>>>=2,u-=2;break;case J:for(_>>>=7&u,u-=7&u;u<32;){if(0===l)break t;l--,_+=n[s++]<>>16^65535)){t.msg="invalid stored block lengths",a.mode=_t;break}if(a.length=65535&_,_=0,u=0,a.mode=Q,e===A)break t;case Q:a.mode=V;case V:if(g=a.length){if(g>l&&(g=l),g>h&&(g=h),0===g)break t;w.arraySet(r,n,s,g,o),l-=g,s+=g,h-=g,o+=g,a.length-=g;break}a.mode=X;break;case $:for(;u<14;){if(0===l)break t; -l--,_+=n[s++]<>>=5,u-=5,a.ndist=(31&_)+1,_>>>=5,u-=5,a.ncode=(15&_)+4,_>>>=4,u-=4,a.nlen>286||a.ndist>30){t.msg="too many length or distance symbols",a.mode=_t;break}a.have=0,a.mode=tt;case tt:for(;a.have>>=3,u-=3}for(;a.have<19;)a.lens[At[a.have++]]=0;if(a.lencode=a.lendyn,a.lenbits=7,zt={bits:a.lenbits},xt=y(x,a.lens,0,19,a.lencode,0,a.work,zt),a.lenbits=zt.bits,xt){t.msg="invalid code lengths set",a.mode=_t;break}a.have=0,a.mode=et;case et:for(;a.have>>24,mt=St>>>16&255,wt=65535&St,!(gt<=u);){if(0===l)break t;l--,_+=n[s++]<>>=gt,u-=gt,a.lens[a.have++]=wt;else{if(16===wt){for(Bt=gt+2;u>>=gt,u-=gt,0===a.have){t.msg="invalid bit length repeat",a.mode=_t;break}yt=a.lens[a.have-1],g=3+(3&_),_>>>=2,u-=2}else if(17===wt){for(Bt=gt+3;u>>=gt,u-=gt,yt=0,g=3+(7&_),_>>>=3,u-=3}else{for(Bt=gt+7;u>>=gt,u-=gt,yt=0,g=11+(127&_),_>>>=7,u-=7}if(a.have+g>a.nlen+a.ndist){t.msg="invalid bit length repeat",a.mode=_t;break}for(;g--;)a.lens[a.have++]=yt}}if(a.mode===_t)break;if(0===a.lens[256]){t.msg="invalid code -- missing end-of-block",a.mode=_t;break}if(a.lenbits=9,zt={bits:a.lenbits},xt=y(z,a.lens,0,a.nlen,a.lencode,0,a.work,zt),a.lenbits=zt.bits,xt){t.msg="invalid literal/lengths set",a.mode=_t;break}if(a.distbits=6,a.distcode=a.distdyn,zt={bits:a.distbits},xt=y(B,a.lens,a.nlen,a.ndist,a.distcode,0,a.work,zt),a.distbits=zt.bits,xt){t.msg="invalid distances set",a.mode=_t;break}if(a.mode=at,e===A)break t;case at:a.mode=it;case it:if(l>=6&&h>=258){t.next_out=o,t.avail_out=h,t.next_in=s,t.avail_in=l,a.hold=_,a.bits=u,k(t,b),o=t.next_out,r=t.output,h=t.avail_out,s=t.next_in,n=t.input,l=t.avail_in,_=a.hold,u=a.bits,a.mode===X&&(a.back=-1);break}for(a.back=0;St=a.lencode[_&(1<>>24,mt=St>>>16&255,wt=65535&St,!(gt<=u);){if(0===l)break t;l--,_+=n[s++]<>pt)],gt=St>>>24,mt=St>>>16&255,wt=65535&St,!(pt+gt<=u);){if(0===l)break t;l--,_+=n[s++]<>>=pt,u-=pt,a.back+=pt}if(_>>>=gt,u-=gt,a.back+=gt,a.length=wt,0===mt){a.mode=lt;break}if(32&mt){a.back=-1,a.mode=X;break}if(64&mt){t.msg="invalid literal/length code",a.mode=_t;break}a.extra=15&mt,a.mode=nt;case nt:if(a.extra){for(Bt=a.extra;u>>=a.extra,u-=a.extra,a.back+=a.extra}a.was=a.length,a.mode=rt;case rt:for(;St=a.distcode[_&(1<>>24,mt=St>>>16&255,wt=65535&St,!(gt<=u);){if(0===l)break t;l--,_+=n[s++]<>pt)],gt=St>>>24,mt=St>>>16&255,wt=65535&St,!(pt+gt<=u);){if(0===l)break t;l--,_+=n[s++]<>>=pt,u-=pt,a.back+=pt}if(_>>>=gt,u-=gt,a.back+=gt,64&mt){t.msg="invalid distance code",a.mode=_t;break}a.offset=wt,a.extra=15&mt,a.mode=st;case st:if(a.extra){for(Bt=a.extra;u>>=a.extra,u-=a.extra,a.back+=a.extra}if(a.offset>a.dmax){t.msg="invalid distance too far back",a.mode=_t;break}a.mode=ot;case ot:if(0===h)break t;if(g=b-h,a.offset>g){if(g=a.offset-g,g>a.whave&&a.sane){t.msg="invalid distance too far back",a.mode=_t;break}g>a.wnext?(g-=a.wnext,m=a.wsize-g):m=a.wnext-g,g>a.length&&(g=a.length),bt=a.window}else bt=r,m=o-a.offset,g=a.length;g>h&&(g=h),h-=g,a.length-=g;do r[o++]=bt[m++];while(--g);0===a.length&&(a.mode=it);break;case lt:if(0===h)break t;r[o++]=a.length,h--,a.mode=it;break;case ht:if(a.wrap){for(;u<32;){if(0===l)break t;l--,_|=n[s++]<=1&&0===j[N];N--);if(O>N&&(O=N),0===N)return b[g++]=20971520,b[g++]=20971520,w.bits=1,0;for(C=1;C0&&(t===o||1!==N))return-1;for(K[1]=0,Z=1;Zr||t===h&&T>s)return 1;for(var Y=0;;){Y++,B=Z-I,m[R]z?(S=M[P+m[R]],E=L[H+m[R]]):(S=96,E=0),p=1<>I)+v]=B<<24|S<<16|E|0;while(0!==v);for(p=1<>=1;if(0!==p?(F&=p-1,F+=p):F=0,R++,0===--j[Z]){if(Z===N)break;Z=e[a+m[R]]}if(Z>O&&(F&y)!==k){for(0===I&&(I=O),x+=C,D=Z-I,U=1<r||t===h&&T>s)return 1;k=F&y,b[k]=O<<24|D<<16|x-g|0}}return 0!==F&&(b[x+F]=Z-I<<24|64<<16|0),w.bits=O,0}},{"../utils/common":3}],13:[function(t,e,a){"use strict";e.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(t,e,a){"use strict";function i(t){for(var e=t.length;--e>=0;)t[e]=0}function n(t,e,a,i,n){this.static_tree=t,this.extra_bits=e,this.extra_base=a,this.elems=i,this.max_length=n,this.has_stree=t&&t.length}function r(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}function s(t){return t<256?lt[t]:lt[256+(t>>>7)]}function o(t,e){t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255}function l(t,e,a){t.bi_valid>W-a?(t.bi_buf|=e<>W-t.bi_valid,t.bi_valid+=a-W):(t.bi_buf|=e<>>=1,a<<=1;while(--e>0);return a>>>1}function f(t){16===t.bi_valid?(o(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)}function _(t,e){var a,i,n,r,s,o,l=e.dyn_tree,h=e.max_code,d=e.stat_desc.static_tree,f=e.stat_desc.has_stree,_=e.stat_desc.extra_bits,u=e.stat_desc.extra_base,c=e.stat_desc.max_length,b=0;for(r=0;r<=X;r++)t.bl_count[r]=0;for(l[2*t.heap[t.heap_max]+1]=0,a=t.heap_max+1;ac&&(r=c,b++),l[2*i+1]=r,i>h||(t.bl_count[r]++,s=0,i>=u&&(s=_[i-u]),o=l[2*i],t.opt_len+=o*(r+s),f&&(t.static_len+=o*(d[2*i+1]+s)));if(0!==b){do{for(r=c-1;0===t.bl_count[r];)r--;t.bl_count[r]--,t.bl_count[r+1]+=2,t.bl_count[c]--,b-=2}while(b>0);for(r=c;0!==r;r--)for(i=t.bl_count[r];0!==i;)n=t.heap[--a],n>h||(l[2*n+1]!==r&&(t.opt_len+=(r-l[2*n+1])*l[2*n],l[2*n+1]=r),i--)}}function u(t,e,a){var i,n,r=new Array(X+1),s=0;for(i=1;i<=X;i++)r[i]=s=s+a[i-1]<<1;for(n=0;n<=e;n++){var o=t[2*n+1];0!==o&&(t[2*n]=d(r[o]++,o))}}function c(){var t,e,a,i,r,s=new Array(X+1);for(a=0,i=0;i>=7;i8?o(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0}function m(t,e,a,i){g(t),i&&(o(t,a),o(t,~a)),N.arraySet(t.pending_buf,t.window,e,a,t.pending),t.pending+=a}function w(t,e,a,i){var n=2*e,r=2*a;return t[n]>1;a>=1;a--)p(t,r,a);n=l;do a=t.heap[1],t.heap[1]=t.heap[t.heap_len--],p(t,r,1),i=t.heap[1],t.heap[--t.heap_max]=a,t.heap[--t.heap_max]=i,r[2*n]=r[2*a]+r[2*i],t.depth[n]=(t.depth[a]>=t.depth[i]?t.depth[a]:t.depth[i])+1,r[2*a+1]=r[2*i+1]=n,t.heap[1]=n++,p(t,r,1);while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],_(t,e),u(r,h,t.bl_count)}function y(t,e,a){var i,n,r=-1,s=e[1],o=0,l=7,h=4;for(0===s&&(l=138,h=3),e[2*(a+1)+1]=65535,i=0;i<=a;i++)n=s,s=e[2*(i+1)+1],++o=3&&0===t.bl_tree[2*nt[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e}function B(t,e,a,i){var n;for(l(t,e-257,5),l(t,a-1,5),l(t,i-4,4),n=0;n>>=1)if(1&a&&0!==t.dyn_ltree[2*e])return D;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return I;for(e=32;e0?(t.strm.data_type===U&&(t.strm.data_type=S(t)),k(t,t.l_desc),k(t,t.d_desc),s=z(t),n=t.opt_len+3+7>>>3,r=t.static_len+3+7>>>3,r<=n&&(n=r)):n=r=a+5,a+4<=n&&e!==-1?A(t,e,a,i):t.strategy===O||r===n?(l(t,(F<<1)+(i?1:0),3),v(t,st,ot)):(l(t,(L<<1)+(i?1:0),3),B(t,t.l_desc.max_code+1,t.d_desc.max_code+1,s+1),v(t,t.dyn_ltree,t.dyn_dtree)),b(t),i&&g(t)}function C(t,e,a){return t.pending_buf[t.d_buf+2*t.last_lit]=e>>>8&255,t.pending_buf[t.d_buf+2*t.last_lit+1]=255&e,t.pending_buf[t.l_buf+t.last_lit]=255&a,t.last_lit++,0===e?t.dyn_ltree[2*a]++:(t.matches++,e--,t.dyn_ltree[2*(ht[a]+M+1)]++,t.dyn_dtree[2*s(e)]++),t.last_lit===t.lit_bufsize-1}var N=t("../utils/common"),O=4,D=0,I=1,U=2,T=0,F=1,L=2,H=3,j=258,K=29,M=256,P=M+1+K,Y=30,q=19,G=2*P+1,X=15,W=16,J=7,Q=256,V=16,$=17,tt=18,et=[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],at=[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],it=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],nt=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],rt=512,st=new Array(2*(P+2));i(st);var ot=new Array(2*Y);i(ot);var lt=new Array(rt);i(lt);var ht=new Array(j-H+1);i(ht);var dt=new Array(K);i(dt);var ft=new Array(Y);i(ft);var _t,ut,ct,bt=!1;a._tr_init=E,a._tr_stored_block=A,a._tr_flush_block=R,a._tr_tally=C,a._tr_align=Z},{"../utils/common":3}],15:[function(t,e,a){"use strict";function i(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}e.exports=i},{}],"/":[function(t,e,a){"use strict";var i=t("./lib/utils/common").assign,n=t("./lib/deflate"),r=t("./lib/inflate"),s=t("./lib/zlib/constants"),o={};i(o,n,r,s),e.exports=o},{"./lib/deflate":1,"./lib/inflate":2,"./lib/utils/common":3,"./lib/zlib/constants":6}]},{},[])("/")}); - -/*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */ -var saveAs=saveAs||function(e){"use strict";if(typeof e==="undefined"||typeof navigator!=="undefined"&&/MSIE [1-9]\./.test(navigator.userAgent)){return}var t=e.document,n=function(){return e.URL||e.webkitURL||e},r=t.createElementNS("http://www.w3.org/1999/xhtml","a"),o="download"in r,a=function(e){var t=new MouseEvent("click");e.dispatchEvent(t)},i=/constructor/i.test(e.HTMLElement)||e.safari,f=/CriOS\/[\d]+/.test(navigator.userAgent),u=function(t){(e.setImmediate||e.setTimeout)(function(){throw t},0)},s="application/octet-stream",d=1e3*40,c=function(e){var t=function(){if(typeof e==="string"){n().revokeObjectURL(e)}else{e.remove()}};setTimeout(t,d)},l=function(e,t,n){t=[].concat(t);var r=t.length;while(r--){var o=e["on"+t[r]];if(typeof o==="function"){try{o.call(e,n||e)}catch(a){u(a)}}}},p=function(e){if(/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)){return new Blob([String.fromCharCode(65279),e],{type:e.type})}return e},v=function(t,u,d){if(!d){t=p(t)}var v=this,w=t.type,m=w===s,y,h=function(){l(v,"writestart progress write writeend".split(" "))},S=function(){if((f||m&&i)&&e.FileReader){var r=new FileReader;r.onloadend=function(){var t=f?r.result:r.result.replace(/^data:[^;]*;/,"data:attachment/file;");var n=e.open(t,"_blank");if(!n)e.location.href=t;t=undefined;v.readyState=v.DONE;h()};r.readAsDataURL(t);v.readyState=v.INIT;return}if(!y){y=n().createObjectURL(t)}if(m){e.location.href=y}else{var o=e.open(y,"_blank");if(!o){e.location.href=y}}v.readyState=v.DONE;h();c(y)};v.readyState=v.INIT;if(o){y=n().createObjectURL(t);setTimeout(function(){r.href=y;r.download=u;a(r);h();c(y);v.readyState=v.DONE});return}S()},w=v.prototype,m=function(e,t,n){return new v(e,t||e.name||"download",n)};if(typeof navigator!=="undefined"&&navigator.msSaveOrOpenBlob){return function(e,t,n){t=t||e.name||"download";if(!n){e=p(e)}return navigator.msSaveOrOpenBlob(e,t)}}w.abort=function(){};w.readyState=w.INIT=0;w.WRITING=1;w.DONE=2;w.error=w.onwritestart=w.onprogress=w.onwrite=w.onabort=w.onerror=w.onwriteend=null;return m}(typeof self!=="undefined"&&self||typeof window!=="undefined"&&window||this.content);if(typeof module!=="undefined"&&module.exports){module.exports.saveAs=saveAs}else if(typeof define!=="undefined"&&define!==null&&define.amd!==null){define("FileSaver.js",function(){return saveAs})} - -if(typeof define == "function" && define.__amd) { - define.amd = define.__amd; - delete define.__amd; -} \ No newline at end of file +/* + howler.js v2.1.1 | (c) 2013-2018, James Simpson of GoldFire Studios | MIT License | howlerjs.com Spatial Plugin @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */ +var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.defineProperty=$jscomp.ASSUME_ES5||"function"==typeof Object.defineProperties?Object.defineProperty:function(M,t,w){M!=Array.prototype&&M!=Object.prototype&&(M[t]=w.value)};$jscomp.getGlobal=function(M){return"undefined"!=typeof window&&window===M?M:"undefined"!=typeof global&&null!=global?global:M};$jscomp.global=$jscomp.getGlobal(this);$jscomp.SYMBOL_PREFIX="jscomp_symbol_"; +$jscomp.initSymbol=function(){$jscomp.initSymbol=function(){};$jscomp.global.Symbol||($jscomp.global.Symbol=$jscomp.Symbol)};$jscomp.Symbol=function(){var M=0;return function(t){return $jscomp.SYMBOL_PREFIX+(t||"")+M++}}(); +$jscomp.initSymbolIterator=function(){$jscomp.initSymbol();var M=$jscomp.global.Symbol.iterator;M||(M=$jscomp.global.Symbol.iterator=$jscomp.global.Symbol("iterator"));"function"!=typeof Array.prototype[M]&&$jscomp.defineProperty(Array.prototype,M,{configurable:!0,writable:!0,value:function(){return $jscomp.arrayIterator(this)}});$jscomp.initSymbolIterator=function(){}};$jscomp.arrayIterator=function(M){var t=0;return $jscomp.iteratorPrototype(function(){return tw&&(w=Math.max(0,D+w));if(null==C||C>D)C=D;C=Number(C);0>C&&(C=Math.max(0,D+C));for(w=Number(w||0);wD||1114111=D?w+=String.fromCharCode(D):(D-=65536,w+=String.fromCharCode(D>>>10&1023|55296),w+=String.fromCharCode(D&1023|56320))}return w}},"es6","es3"); +$jscomp.checkStringArgs=function(M,t,w){if(null==M)throw new TypeError("The 'this' value for String.prototype."+w+" must not be null or undefined");if(t instanceof RegExp)throw new TypeError("First argument to String.prototype."+w+" must not be a regular expression");return M+""}; +$jscomp.polyfill("String.prototype.startsWith",function(M){return M?M:function(t,w){var C=$jscomp.checkStringArgs(this,t,"startsWith");t+="";var D=C.length,P=t.length;w=Math.max(0,Math.min(w|0,C.length));for(var p=0;p=P}},"es6","es3");$jscomp.polyfill("Array.prototype.entries",function(M){return M?M:function(){return $jscomp.iteratorFromArray(this,function(t,w){return[t,w]})}},"es6","es3"); +$jscomp.polyfill("Array.prototype.values",function(M){return M?M:function(){return $jscomp.iteratorFromArray(this,function(t,w){return w})}},"es6","es3");$jscomp.polyfill("String.prototype.endsWith",function(M){return M?M:function(t,w){var C=$jscomp.checkStringArgs(this,t,"endsWith");t+="";void 0===w&&(w=C.length);w=Math.max(0,Math.min(w|0,C.length));for(var D=t.length;0=D}},"es6","es3"); +$jscomp.polyfill("String.prototype.repeat",function(M){return M?M:function(t){var w=$jscomp.checkStringArgs(this,null,"repeat");if(0>t||1342177279>>=1)w+=w;return C}},"es6","es3"); +(function(M,t){M.lime=M.lime||{};M.lime.$scripts=M.lime.$scripts||{};M.lime.$scripts.Bozorun=function(t,C){(function(t,C){function p(a,b){a=Object.create(a);for(var c in b)a[c]=b[c];b.toString!==Object.prototype.toString&&(a.toString=b.toString);return a}function D(a){return a instanceof Array?z.iter(a):a.iterator()}function q(a,b){if(null==b)return null;null==b.__id__&&(b.__id__=C.$haxeUID++);var c;null==a.hx__closures__?a.hx__closures__={}:c=a.hx__closures__[b.__id__];null==c&&(c=b.bind(a),a.hx__closures__[b.__id__]= +c);return c}t.lime=t.lime||{};var h={},g=function(){return xa.__string_rec(this,"")},B=B||{},n,N=function(){};h["lime.app.IModule"]=N;N.__name__="lime.app.IModule";N.__isInterface__=!0;N.prototype={__registerLimeModule:null,__class__:N};var ta=function(){this.onExit=new te};h["lime.app.Module"]=ta;ta.__name__="lime.app.Module";ta.__interfaces__=[N];ta.prototype={onExit:null,__registerLimeModule:function(a){},__class__:ta};var K=function(a){this.gameDeviceCache=new ab;this.parent=a;this.nextUpdate= +this.lastUpdate=this.currentUpdate=0;this.framePeriod=-1;Pe.init();this.accelerometer=Ic.registerSensor(Mj.ACCELEROMETER,0)};h["lime._internal.backend.html5.HTML5Application"]=K;K.__name__="lime._internal.backend.html5.HTML5Application";K.prototype={gameDeviceCache:null,accelerometer:null,currentUpdate:null,deltaTime:null,framePeriod:null,lastUpdate:null,nextUpdate:null,parent:null,convertKeyCode:function(a){if(65<=a&&90>=a)return a+32;switch(a){case 12:return 1073741980;case 16:return 1073742049; +case 17:return 1073742048;case 18:return 1073742050;case 19:return 1073741896;case 20:return 1073741881;case 33:return 1073741899;case 34:return 1073741902;case 35:return 1073741901;case 36:return 1073741898;case 37:return 1073741904;case 38:return 1073741906;case 39:return 1073741903;case 40:return 1073741905;case 41:return 1073741943;case 43:return 1073741940;case 44:return 1073741894;case 45:return 1073741897;case 46:return 127;case 91:return 1073742051;case 92:return 1073742055;case 93:return 1073742055; +case 95:return 1073742106;case 96:return 1073741922;case 97:return 1073741913;case 98:return 1073741914;case 99:return 1073741915;case 100:return 1073741916;case 101:return 1073741917;case 102:return 1073741918;case 103:return 1073741919;case 104:return 1073741920;case 105:return 1073741921;case 106:return 1073741909;case 107:return 1073741911;case 108:return 1073741923;case 109:return 1073741910;case 110:return 1073741923;case 111:return 1073741908;case 112:return 1073741882;case 113:return 1073741883; +case 114:return 1073741884;case 115:return 1073741885;case 116:return 1073741886;case 117:return 1073741887;case 118:return 1073741888;case 119:return 1073741889;case 120:return 1073741890;case 121:return 1073741891;case 122:return 1073741892;case 123:return 1073741893;case 124:return 1073741928;case 125:return 1073741929;case 126:return 1073741930;case 127:return 1073741931;case 128:return 1073741932;case 129:return 1073741933;case 130:return 1073741934;case 131:return 1073741935;case 132:return 1073741936; +case 133:return 1073741937;case 134:return 1073741938;case 135:return 1073741939;case 144:return 1073741907;case 145:return 1073741895;case 160:return 94;case 161:return 33;case 163:return 35;case 164:return 36;case 166:return 1073742094;case 167:return 1073742095;case 168:return 1073742097;case 169:return 41;case 170:return 42;case 171:return 96;case 172:return 1073741898;case 173:return 45;case 174:return 1073741953;case 175:return 1073741952;case 176:return 1073742082;case 177:return 1073742083; +case 178:return 1073742084;case 179:return 1073742085;case 180:return 1073742089;case 181:return 1073742086;case 182:return 1073741953;case 183:return 1073741952;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 193:return 63;case 194:return 1073741923;case 219:return 91;case 220:return 92;case 221:return 93;case 222:return 39;case 223:return 96;case 224:return 1073742051;case 226:return 92}return a},exec:function(){window.addEventListener("keydown", +q(this,this.handleKeyEvent),!1);window.addEventListener("keyup",q(this,this.handleKeyEvent),!1);window.addEventListener("focus",q(this,this.handleWindowEvent),!1);window.addEventListener("blur",q(this,this.handleWindowEvent),!1);window.addEventListener("resize",q(this,this.handleWindowEvent),!1);window.addEventListener("beforeunload",q(this,this.handleWindowEvent),!1);window.addEventListener("devicemotion",q(this,this.handleSensorEvent),!1);CanvasRenderingContext2D.prototype.isPointInStroke||(CanvasRenderingContext2D.prototype.isPointInStroke= +function(a,b,c){return!1});CanvasRenderingContext2D.prototype.isPointInPath||(CanvasRenderingContext2D.prototype.isPointInPath=function(a,b,c){return!1});0=="performance"in window&&(window.performance={});if(0=="now"in window.performance){var a=Date.now();performance.timing&&performance.timing.navigationStart&&(a=performance.timing.navigationStart);window.performance.now=function(){return Date.now()-a}}for(var b=0,c=["ms","moz","webkit","o"],d=0;d=this.nextUpdate){this.deltaTime=this.currentUpdate-this.lastUpdate;a=0;for(b=this.parent.__windows;athis.framePeriod?this.currentUpdate:this.currentUpdate-this.currentUpdate%this.framePeriod+this.framePeriod;this.lastUpdate=this.currentUpdate}window.requestAnimationFrame(q(this,this.handleApplicationEvent))},handleKeyEvent:function(a){if(null!=this.parent.__window){var b=this.convertKeyCode(null!=a.keyCode?a.keyCode:a.which),c=(a.shiftKey?3:0)|(a.ctrlKey?192:0)|(a.altKey?768:0)|(a.metaKey?3072:0);"keydown"==a.type?(this.parent.__window.onKeyDown.dispatch(b,c),this.parent.__window.onKeyDown.canceled&& +a.cancelable&&a.preventDefault()):(this.parent.__window.onKeyUp.dispatch(b,c),this.parent.__window.onKeyUp.canceled&&a.cancelable&&a.preventDefault())}},handleSensorEvent:function(a){this.accelerometer.onUpdate.dispatch(a.accelerationIncludingGravity.x,a.accelerationIncludingGravity.y,a.accelerationIncludingGravity.z)},handleWindowEvent:function(a){if(null!=this.parent.__window)switch(a.type){case "blur":this.parent.__window.onFocusOut.dispatch();this.parent.__window.onDeactivate.dispatch();break; +case "focus":this.parent.__window.onFocusIn.dispatch();this.parent.__window.onActivate.dispatch();break;case "resize":this.parent.__window.__backend.handleResizeEvent(a)}},updateGameDevices:function(){var a=zb.__getDeviceData();if(null!=a)for(var b,c,d,e,f,l=0,v=a.length;l= +a||0==this.inactiveObjects)&&(null!=this.__inactiveObject0&&(this.__pool.remove(this.__inactiveObject0),this.__inactiveObject0=null,this.inactiveObjects--,--a),0!=a&&0!=this.inactiveObjects&&(null!=this.__inactiveObject1&&(this.__pool.remove(this.__inactiveObject1),this.__inactiveObject1=null,this.inactiveObjects--,--a),0!=a&&0!=this.inactiveObjects)))for(var b=this.__inactiveObjectList.h;null!=b;){var c=b.item;b=b.next;this.__pool.remove(c);this.__inactiveObjectList.remove(c);this.inactiveObjects--; +--a;if(0==a||0==this.inactiveObjects)break}},set_size:function(a){if(null==a)this.__size=null;else{var b=this.inactiveObjects+this.activeObjects;this.__size=a;if(b>a)this.__removeInactive(b-a);else if(a>b)for(var c=0,d=a-b;c=a.__getAlpha(this.__worldAlpha))&&(null!=this.opaqueBackground&&!this.__isCacheBitmapRender&& +0>>16&255)+","+(d>>>8&255)+","+(d&255)+")",b.fillRect(0,0,this.get_width(),this.get_height()),a.__popMaskObject(this)),null!=this.__graphics&&this.__renderable)){var e=a.__getAlpha(this.__worldAlpha);if(!(0>=e)){var f=this.__graphics;if(null!=f){y.render(f,a);c=f.__width;var l=f.__height;b=f.__canvas; +if(null!=b&&f.__visible&&1<=c&&1<=l){var v=f.__worldTransform;d=a.context;var m=this.__scrollRect,g=this.__worldScale9Grid;if(null==m||0=this.__worldAlpha)){if(null!=this.opaqueBackground&&!this.__isCacheBitmapRender&&0>>16&255)/255,(d>>>8&255)/255,(d&255)/255,1,0,0,1);a.__popMaskRect();a.__popMaskObject(this);qa.__pool.release(c)}null!=this.__graphics&& +de.render(this,a)}this.__renderEvent(a)},__renderGLMask:function(a){null!=this.__graphics&&de.renderMask(this,a)},__setParentRenderDirty:function(){var a=null!=this.__renderParent?this.__renderParent:this.parent;null==a||a.__renderDirty||(a.__renderDirty=!0,a.__setParentRenderDirty())},__setStageReference:function(a){this.stage=a},__setTransformDirty:function(){this.__transformDirty||(this.__transformDirty=!0,this.__setWorldTransformInvalid(),this.__setParentRenderDirty())},__setWorldTransformInvalid:function(){this.__worldTransformInvalid= +!0},__shouldCacheHardware:function(a){return 1==a||null!=this.__filters?!0:0==a||null!=this.__graphics&&!ib.isCompatible(this.__graphics)?!1:null},__update:function(a,b){var c=null!=this.__renderParent?this.__renderParent:this.parent;this.__isMask&&null==c&&(c=this.__maskTarget);this.__renderable=this.__visible&&0!=this.__scaleX&&0!=this.__scaleY&&!this.__isMask&&(null==c||!c.__isMask);this.__updateTransforms();this.__worldTransformInvalid=this.__transformDirty=!1;if(!a)if(W.__supportDOM&&(this.__renderTransformChanged= +!this.__renderTransform.equals(this.__renderTransformCache),null==this.__renderTransformCache?this.__renderTransformCache=this.__renderTransform.clone():this.__renderTransformCache.copyFrom(this.__renderTransform)),null!=c){if(W.__supportDOM){var d=c.__worldVisible&&this.__visible;this.__worldVisibleChanged=this.__worldVisible!=d;this.__worldVisible=d;d=this.get_alpha()*c.__worldAlpha;this.__worldAlphaChanged=this.__worldAlpha!=d;this.__worldAlpha=d}else this.__worldAlpha=this.get_alpha()*c.__worldAlpha; +null!=this.__objectTransform?(this.__worldColorTransform.__copyFrom(this.__objectTransform.get_colorTransform()),this.__worldColorTransform.__combine(c.__worldColorTransform)):this.__worldColorTransform.__copyFrom(c.__worldColorTransform);this.__worldBlendMode=null==this.__blendMode||10==this.__blendMode?c.__worldBlendMode:this.__blendMode;this.__worldShader=null==this.__shader?c.__shader:this.__shader;this.__worldScale9Grid=null==this.__scale9Grid?c.__scale9Grid:this.__scale9Grid}else this.__worldAlpha= +this.get_alpha(),W.__supportDOM&&(this.__worldVisibleChanged=this.__worldVisible!=this.__visible,this.__worldVisible=this.__visible,this.__worldAlphaChanged=this.__worldAlpha!=this.get_alpha()),null!=this.__objectTransform?this.__worldColorTransform.__copyFrom(this.__objectTransform.get_colorTransform()):this.__worldColorTransform.__identity(),this.__worldBlendMode=this.__blendMode,this.__worldShader=this.__shader,this.__worldScale9Grid=this.__scale9Grid;b&&null!=this.get_mask()&&this.get_mask().__update(a, +!0)},__updateCacheBitmap:function(a,b){if(this.__isCacheBitmapRender)return!1;var c=Xa.__pool.get();c.__copyFrom(this.__worldColorTransform);null!=a.__worldColorTransform&&c.__combine(a.__worldColorTransform);var d=!1;if(this.get_cacheAsBitmap()||"opengl"!=a.__type&&!c.__isDefault(!0)){d=null;var e=(b=null==this.__cacheBitmap||this.__renderDirty&&(b||null!=this.__children&&0this.__cacheBitmapData.width||k>this.__cacheBitmapData.height?(f=Math.ceil(Math.max(1.25*g,this.__cacheBitmapData.width)),m=Math.ceil(Math.max(1.25*k,this.__cacheBitmapData.height)),b=!0):(f=this.__cacheBitmapData.width,m=this.__cacheBitmapData.height):(f=g,m=k); +if(b)if(e=!0,this.__cacheBitmapBackground=this.opaqueBackground,.5<=g&&.5<=k){var q=null!=this.opaqueBackground&&(f!=g||m!=k),r=null!=this.opaqueBackground?-16777216|this.opaqueBackground:0,u=q?0:r,B="opengl"==a.__type;null==this.__cacheBitmapData||f>this.__cacheBitmapData.width||m>this.__cacheBitmapData.height?(this.__cacheBitmapData=new L(f,m,!0,u),null==this.__cacheBitmap&&(this.__cacheBitmap=new rb),this.__cacheBitmap.__bitmapData=this.__cacheBitmapData,this.__cacheBitmapRenderer=null):this.__cacheBitmapData.__fillRect(this.__cacheBitmapData.rect, +u,B);q&&(d.setTo(0,0,g,k),this.__cacheBitmapData.__fillRect(d,r,B))}else return Xa.__pool.release(c),this.__cacheBitmapRenderer=this.__cacheBitmapData3=this.__cacheBitmapData2=this.__cacheBitmapData=this.__cacheBitmap=null,!0;else this.__cacheBitmapData=this.__cacheBitmap.get_bitmapData(),this.__cacheBitmapData3=this.__cacheBitmapData2=null;if(e||b)this.__cacheBitmap.__worldTransform.copyFrom(this.__worldTransform),h==this.__renderTransform?(this.__cacheBitmap.__renderTransform.identity(),this.__cacheBitmap.__renderTransform.tx= +this.__renderTransform.tx+n,this.__cacheBitmap.__renderTransform.ty=this.__renderTransform.ty+z):(this.__cacheBitmap.__renderTransform.copyFrom(this.__cacheBitmapMatrix),this.__cacheBitmap.__renderTransform.invert(),this.__cacheBitmap.__renderTransform.concat(this.__renderTransform),this.__cacheBitmap.__renderTransform.tx+=n,this.__cacheBitmap.__renderTransform.ty+=z);this.__cacheBitmap.smoothing=a.__allowSmoothing;this.__cacheBitmap.__renderable=this.__renderable;this.__cacheBitmap.__worldAlpha= +this.__worldAlpha;this.__cacheBitmap.__worldBlendMode=this.__worldBlendMode;this.__cacheBitmap.__worldShader=this.__worldShader;this.__cacheBitmap.set_mask(this.__mask);if(b){if(null==this.__cacheBitmapRenderer||l!=this.__cacheBitmapRenderer.__type)"opengl"==l?this.__cacheBitmapRenderer=new Pa(xa.__cast(a,Pa).__context3D,this.__cacheBitmapData):(null==this.__cacheBitmapData.image&&(this.__cacheBitmapData=new L(f,m,!0,null!=this.opaqueBackground?-16777216|this.opaqueBackground:0),this.__cacheBitmap.__bitmapData= +this.__cacheBitmapData),ya.convertToCanvas(this.__cacheBitmapData.image),this.__cacheBitmapRenderer=new Hd(this.__cacheBitmapData.image.buffer.__srcContext)),this.__cacheBitmapRenderer.__worldTransform=new Aa,this.__cacheBitmapRenderer.__worldColorTransform=new Xa;null==this.__cacheBitmapColorTransform&&(this.__cacheBitmapColorTransform=new Xa);this.__cacheBitmapRenderer.__stage=this.stage;this.__cacheBitmapRenderer.__allowSmoothing=a.__allowSmoothing;this.__cacheBitmapRenderer.__setBlendMode(10); +this.__cacheBitmapRenderer.__worldAlpha=1/this.__worldAlpha;this.__cacheBitmapRenderer.__worldTransform.copyFrom(this.__renderTransform);this.__cacheBitmapRenderer.__worldTransform.invert();this.__cacheBitmapRenderer.__worldTransform.concat(this.__cacheBitmapMatrix);this.__cacheBitmapRenderer.__worldTransform.tx-=n;this.__cacheBitmapRenderer.__worldTransform.ty-=z;this.__cacheBitmapRenderer.__worldColorTransform.__copyFrom(c);this.__cacheBitmapRenderer.__worldColorTransform.__invert();this.__isCacheBitmapRender= +!0;if("opengl"==this.__cacheBitmapRenderer.__type){l=this.__cacheBitmapRenderer;h=l.__context3D;n=h.__state.renderToTexture;z=h.__state.renderToTextureDepthStencil;q=h.__state.renderToTextureAntiAlias;r=h.__state.renderToTextureSurfaceSelector;u=a.__blendMode;a.__suspendClipAndMask();l.__copyShader(a);this.__cacheBitmapData.__setUVRect(h,0,0,g,k);l.__setRenderTarget(this.__cacheBitmapData);null!=this.__cacheBitmapData.image&&(this.__cacheBitmapData.__textureVersion=this.__cacheBitmapData.image.version+ +1);this.__cacheBitmapData.__drawGL(this,l);if(v){var A=!1;v=0;for(B=this.__filters;vthis.__cacheBitmapData2.width||m>this.__cacheBitmapData2.height?this.__cacheBitmapData2=new L(f,m,!0,0):(this.__cacheBitmapData2.fillRect(this.__cacheBitmapData2.rect,0),null!=this.__cacheBitmapData2.image&&(this.__cacheBitmapData2.__textureVersion=this.__cacheBitmapData2.image.version+1));this.__cacheBitmapData2.__setUVRect(h, +0,0,g,k);B=this.__cacheBitmapData2;A&&(null==this.__cacheBitmapData3||f>this.__cacheBitmapData3.width||m>this.__cacheBitmapData3.height?this.__cacheBitmapData3=new L(f,m,!0,0):(this.__cacheBitmapData3.fillRect(this.__cacheBitmapData3.rect,0),null!=this.__cacheBitmapData3.image&&(this.__cacheBitmapData3.__textureVersion=this.__cacheBitmapData3.image.version+1)),this.__cacheBitmapData3.__setUVRect(h,0,0,g,k),y=this.__cacheBitmapData3);l.__setBlendMode(10);l.__worldAlpha=1;l.__worldTransform.identity(); +l.__worldColorTransform.__identity();f=0;for(m=this.__filters;fthis.__cacheBitmapData2.width||m>this.__cacheBitmapData2.height?this.__cacheBitmapData2=new L(f,m,!0,0):this.__cacheBitmapData2.fillRect(this.__cacheBitmapData2.rect,0),k=this.__cacheBitmapData2):k=g;h&&(null==this.__cacheBitmapData3||null==this.__cacheBitmapData3.image||f>this.__cacheBitmapData3.width||m>this.__cacheBitmapData3.height?this.__cacheBitmapData3=new L(f,m,!0,0):this.__cacheBitmapData3.fillRect(this.__cacheBitmapData3.rect,0),l=this.__cacheBitmapData3); +null==this.__tempPoint&&(this.__tempPoint=new Sa);f=this.__tempPoint;m=0;for(h=this.__filters;ma&&(a=0);a==this.__alpha||this.get_cacheAsBitmap()||this.__renderDirty||(this.__renderDirty=!0,this.__setParentRenderDirty());return this.__alpha=a},set_blendMode:function(a){null==a&&(a=10);a==this.__blendMode||this.__renderDirty||(this.__renderDirty=!0,this.__setParentRenderDirty());return this.__blendMode=a},get_cacheAsBitmap:function(){return null== +this.__filters?this.__cacheAsBitmap:!0},set_cacheAsBitmap:function(a){a==this.__cacheAsBitmap||this.__renderDirty||(this.__renderDirty=!0,this.__setParentRenderDirty());return this.__cacheAsBitmap=a},set_filters:function(a){null!=a&&0this.__children.length||0>b)throw new F("Invalid index position "+ +b);if(a.parent==this)this.__children[b]!=a&&(z.remove(this.__children,a),this.__children.splice(b,0,a),this.__renderDirty||(this.__renderDirty=!0,this.__setParentRenderDirty()));else{null!=a.parent&&a.parent.removeChild(a);this.__children.splice(b,0,a);a.parent=this;(b=null!=this.stage&&null==a.stage)&&this.__setStageReference(this.stage);a.__setTransformDirty();a.__renderDirty||(a.__renderDirty=!0,a.__setParentRenderDirty());this.__renderDirty||(this.__renderDirty=!0,this.__setParentRenderDirty()); +var c=S.__pool.get();c.type="added";c.bubbles=!0;c.target=a;a.__dispatchWithCapture(c);S.__pool.release(c);b&&(c=new S("addedToStage",!1,!1),a.__dispatchWithCapture(c),a.__dispatchChildren(c))}return a},contains:function(a){for(;a!=this&&null!=a;)a=a.parent;return a==this},getChildAt:function(a){return 0<=a&&ab))return;if(!(a>this.__children.length-1)){if(ba||b>this.__children.length)throw new F(new fg("The supplied index is out of bounds."));for(b-=a;0<=b;)this.removeChildAt(a),--b}},__cleanup:function(){U.prototype.__cleanup.call(this);for(var a= +0,b=this.__children;ae)););if(m)return d.splice(e,0,f),!0}}else{for(f=!1;0<=--l&&(!this.__children[l].__hitTest(a,b,c,d,!1,this.__children[l])||(f=!0,null!=d)););return f}return!1},__hitTestMask:function(a,b){for(var c=this.__children.length;0<=--c;)if(this.__children[c].__hitTestMask(a,b))return!0;return!1},__renderCairo:function(a){}, +__renderCairoMask:function(a){},__renderCanvas:function(a){for(var b=this.__removedChildren.iterator();b.hasNext();){var c=b.next();null==c.stage&&c.__cleanup()}this.__removedChildren.set_length(0);if(!(!this.__renderable||0>=this.__worldAlpha||null!=this.get_mask()&&(0>=this.get_mask().get_width()||0>=this.get_mask().get_height()))&&(U.prototype.__renderCanvas.call(this,a),null==this.__cacheBitmap||this.__isCacheBitmapRender)){a.__pushMaskObject(this);if(null!=a.__stage){b=0;for(c=this.__children;b< +c.length;){var d=c[b];++b;d.__renderCanvas(a);d.__renderDirty=!1}this.__renderDirty=!1}else for(b=0,c=this.__children;b=this.__worldAlpha)&&(U.prototype.__renderGL.call(this,a),null==this.__cacheBitmap||this.__isCacheBitmapRender)){if(0a.x+a.width?a.x+a.width:this.x+ +this.width;if(l<=f)return a._weak&&!a._inPool&&(a._inPool=!0,a._weak=!1,va._pool.putUnsafe(a)),b;c=this.ya.y+a.height?a.y+a.height:this.y+this.height;if(d<=c)return a._weak&&!a._inPool&&(a._inPool=!0,a._weak=!1,va._pool.putUnsafe(a)),b;a._weak&&!a._inPool&&(a._inPool=!0,a._weak=!1,va._pool.putUnsafe(a));a=f;e=c;f=l-f;c=d-c;null==c&&(c=0);null==f&&(f=0);null==e&&(e=0);null==a&&(a=0);b.x=a;b.y=e;b.width=f;b.height=c;return b},__class__:va};var Ha=function(a,b,c, +d){null==d&&(d=0);null==c&&(c=0);null==b&&(b=0);null==a&&(a=0);var e=va._pool.get();e.x=0;e.y=0;e.width=0;e.height=0;e._inPool=!1;this._rect=e;e=ra._pool.get().set(0,0);e._inPool=!1;this._point=e;this.path=null;this.collisonXDrag=!0;this.allowCollisions=4369;this.touching=this.wasTouching=0;this.maxAngular=1E4;this.elasticity=this.angularVelocity=this.angularAcceleration=this.angularDrag=0;this.mass=1;this.immovable=!1;this.moves=!0;this.angle=0;this.pixelPerfectPosition=!0;this.x=this.y=0;Ga.call(this); +this.set_x(a);this.set_y(b);this.set_width(c);this.set_height(d);this.initVars()};h["flixel.FlxObject"]=Ha;Ha.__name__="flixel.FlxObject";Ha.separate=function(a,b){var c=Ha.separateX(a,b);a=Ha.separateY(a,b);return c?!0:a};Ha.computeOverlapX=function(a,b,c){null==c&&(c=!0);var d=0,e=a.x-a.last.x,f=b.x-b.last.x;if(e!=f){var l=0g.x&&m.xg.y&&m.yf?(d=a.x+a.get_width()-b.x,c&&d>l||0==(a.allowCollisions&16)||0==(b.allowCollisions&1)?d=0:(a.touching|=16,b.touching|=1)):el||0==(a.allowCollisions&1)|| +0==(b.allowCollisions&16)?d=0:(a.touching|=1,b.touching|=16)))}return d};Ha.separateX=function(a,b){var c=a.immovable,d=b.immovable;if(c&&d)return!1;if(3==a.flixelType)return a.overlapsWithCallback(b,Ha.separateX);if(3==b.flixelType)return b.overlapsWithCallback(a,Ha.separateX,!0);var e=Ha.computeOverlapX(a,b);if(0!=e){var f=a.velocity.x,l=b.velocity.x;c||d?c?d||(b.set_x(b.x+e),b.velocity.set_x(f-l*b.elasticity)):(a.set_x(a.x-e),a.velocity.set_x(l-f*a.elasticity)):(e*=.5,a.set_x(a.x-e),b.set_x(b.x+ +e),c=Math.sqrt(l*l*b.mass/a.mass)*(0g.x&&m.xg.y&&m.yf?(d=a.y+a.get_height()-b.y,c&&d>l||0==(a.allowCollisions&4096)||0==(b.allowCollisions&256)?d=0:(a.touching|=4096,b.touching|=256)):el||0==(a.allowCollisions&256)||0==(b.allowCollisions&4096)?d=0:(a.touching|=256, +b.touching|=4096)))}return d};Ha.separateY=function(a,b){var c=a.immovable,d=b.immovable;if(c&&d)return!1;if(3==a.flixelType)return a.overlapsWithCallback(b,Ha.separateY);if(3==b.flixelType)return b.overlapsWithCallback(a,Ha.separateY,!0);var e=Ha.computeOverlapY(a,b);if(0!=e){var f=a.y-a.last.y,l=b.y-b.last.y,v=a.velocity.y,m=b.velocity.y;c||d?c?d||(b.set_y(b.y+e),b.velocity.set_y(v-m*b.elasticity),b.collisonXDrag&&a.active&&a.moves&&fl&&a.set_x(a.x+(b.x-b.last.x))):(e*=.5,a.set_y(a.y-e),b.set_y(b.y+e),c=Math.sqrt(m*m*b.mass/a.mass)*(0=this.x&&a.x=this.y?a.y=this._point.x&&b=this._point.y?da.viewOffsetX&&b.xa.viewOffsetY?b.ya.width?a.width:c);0==d&&(d=b?c:a.height,d=d>a.height?a.height:d);b?(b=c,null==d&&(d=0),null==b&&(b=0),d=ra._pool.get().set(b,d),d._inPool=!1,this.set_frames(ee.fromGraphic(a,d))):this.set_frames(a.get_imageFrame());return this},makeGraphic:function(a,b,c,d,e){null==d&&(d=!1);null==c&&(c=-1);a=u.bitmap.create(a,b,c,d,e);this.set_frames(a.get_imageFrame());return this},graphicLoaded:function(){},setGraphicSize:function(a,b){null==b&&(b=0); +null==a&&(a=0);if(!(0>=a&&0>=b)){var c=a/this.frameWidth,d=b/this.frameHeight;this.scale.set(c,d);0>=a?this.scale.set_x(d):0>=b&&this.scale.set_y(c)}},updateHitbox:function(){this.set_width(Math.abs(this.scale.x)*this.frameWidth);this.set_height(Math.abs(this.scale.y)*this.frameHeight);this.offset.set(-.5*(this.get_width()-this.frameWidth),-.5*(this.get_height()-this.frameHeight));this.origin.set(.5*this.frameWidth,.5*this.frameHeight)},resetHelpers:function(){null!=this.frame&&(this.frameWidth=this.frame.sourceSize.x| +0,this.frameHeight=this.frame.sourceSize.y|0);this._halfSize.set(.5*this.frameWidth,.5*this.frameHeight);this._flashRect.x=0;this._flashRect.y=0;this._flashRect.width=this.frameWidth;this._flashRect.height=this.frameHeight;this.set_width(this.frameWidth);this.set_height(this.frameHeight);this._flashRect2.x=0;this._flashRect2.y=0;null!=this.graphic&&(this._flashRect2.width=this.graphic.width,this._flashRect2.height=this.graphic.height);this.origin.set(.5*this.frameWidth,.5*this.frameHeight);u.renderBlit&& +(this.dirty=!0,this.updateFramePixels())},update:function(a){Ha.prototype.update.call(this,a);this.updateAnimation(a)},updateAnimation:function(a){this.animation.update(a)},checkEmptyFrame:function(){null==this._frame&&this.loadGraphic("flixel/images/logo/default.png")},draw:function(){this.checkEmptyFrame();if(0!=this.alpha&&2!=this._frame.type){this.dirty&&this.calcFrame(this.useFramePixels);for(var a=0,b=this.get_cameras();a=this.bakedRotationAngle&&(this._angleChanged&&(b=Math.PI/180*this.angle,this._sinAngle=Math.sin(b),this._cosAngle=Math.cos(b),this._angleChanged=!1),0!=this.angle)){b=this._matrix;c=this._cosAngle;var d=this._sinAngle,e=b.a* +c-b.b*d;b.b=b.a*d+b.b*c;b.a=e;e=b.c*c-b.d*d;b.d=b.c*d+b.d*c;b.c=e;e=b.tx*c-b.ty*d;b.ty=b.tx*d+b.ty*c;b.tx=e}b=this._point;c=this.origin.x;d=this.origin.y;null==d&&(d=0);null==c&&(c=0);b.set_x(b.x+c);b.set_y(b.y+d);this._matrix.translate(this._point.x,this._point.y);this.isPixelPerfectRender(a)&&(this._matrix.tx=Math.floor(this._matrix.tx),this._matrix.ty=Math.floor(this._matrix.ty));a.drawPixels(this._frame,this.framePixels,this._matrix,this.colorTransform,this.blend,this.antialiasing,this.shader)}, +drawFrame:function(a){null==a&&(a=!1);if(u.renderBlit){if(a||this.dirty)this.dirty=!0,this.calcFrame()}else this.dirty=!0,this.calcFrame(!0)},updateColorTransform:function(){null==this.colorTransform&&(this.colorTransform=new Xa);(this.useColorTransform=1!=this.alpha||16777215!=this.color)?Qc.setMultipliers(this.colorTransform,(this.color>>16&255)/255,(this.color>>8&255)/255,(this.color&255)/255,this.alpha):Qc.setMultipliers(this.colorTransform,1,1,1,1);this.dirty=!0},calcFrame:function(a){null== +a&&(a=!1);this.checkEmptyFrame();u.renderTile&&!a||this.updateFramePixels()},updateFramePixels:function(){if(null==this._frame||!this.dirty)return this.framePixels;if(u.renderTile&&null!=this._frameGraphic)return this.dirty=!1,this.framePixels;var a=this.flipX!=this._frame.flipX;a=null!=this.animation._curAnim?a!=this.animation._curAnim.flipX:a;var b=this.flipY!=this._frame.flipY;b=null!=this.animation._curAnim?b!=this.animation._curAnim.flipY:b;this.framePixels=a||b||0!=this._frame.type?this._frame.paintRotatedAndFlipped(this.framePixels, +this._flashPointZero,0,a,b,!1,!0):this._frame.paint(this.framePixels,this._flashPointZero,!1,!0);this.useColorTransform&&this.framePixels.colorTransform(this._flashRect,this.colorTransform);u.renderTile&&this.useFramePixels&&(this._frameGraphic=Z.destroy(this._frameGraphic),this._frameGraphic=wb.fromBitmapData(this.framePixels,!1,null,!1),this._frame=this._frameGraphic.get_imageFrame().get_frame().copyTo(this._frame));this.dirty=!1;return this.framePixels},isOnScreen:function(a){null==a&&(a=u.camera); +var b=this.x-this.offset.x-a.scroll.x*this.scrollFactor.x,c=this.y-this.offset.y-a.scroll.y*this.scrollFactor.y;if((0==this.angle||0a.viewOffsetX&&b.xa.viewOffsetY?b.ya.viewOffsetX&&b.xa.viewOffsetY?b.ya?0:a;this.alpha=1=this.length&&(this.length=b+1),null!=this._memberAdded&&this._memberAdded.dispatch(a),a;if(0=this.maxSize)return a;this.members.push(a);this.length++;null!=this._memberAdded&&this._memberAdded.dispatch(a);return a},recycle:function(a,b,c,d){null==d&&(d=!0);null==c&&(c=!1);if(0=this.maxSize&&(this._marker=0);d&&c.revive();return c}c=this.getFirstAvailable(a,c);if(null!=c)return d&&c.revive(),c;d=null; +null!=b?(d=b(),this.add(d)):null!=a&&(d=La.createInstance(a,[]),this.add(d));return d},remove:function(a,b){null==b&&(b=!1);if(null==this.members)return null;var c=this.members.indexOf(a);if(0>c)return null;b?(this.members.splice(c,1),this.length--):this.members[c]=null;null!=this._memberRemoved&&this._memberRemoved.dispatch(a);return a},getFirstAvailable:function(a,b){null==b&&(b=!1);for(var c=0,d;c=this.maxSize&&(this._marker=0);if(0==this.maxSize||null==this.members||this.maxSize>=this.length)return this.maxSize;a=this.maxSize;for(var b=this.length,c;aa?1:a,a=(2147483646a?1:a;a=(2147483646a?1:a;this.initialSeed=(this.internalSeed=(2147483646b&&(a+=b,b=a-b,a-=b);if(null==c)return Math.floor(a+(this.internalSeed=48271*this.internalSeed%2147483647)/2147483647*(b-a+1));for(var d;d=Math.floor(a+(this.internalSeed=48271*this.internalSeed%2147483647)/2147483647*(b-a+1)),0<=c.indexOf(d););return d},float:function(a,b,c){null==b&&(b=1);null==a&&(a=0);if(0==a&&1==b&&null==c)return(this.internalSeed=48271*this.internalSeed%2147483647)/2147483647;if(a==b)var d=a;else if(a>b&&(a+=b,b=a-b,a-=b),null== +c)d=a+(this.internalSeed=48271*this.internalSeed%2147483647)/2147483647*(b-a);else for(;d=a+(this.internalSeed=48271*this.internalSeed%2147483647)/2147483647*(b-a),0<=c.indexOf(d););return d},internalSeed:null,__class__:O};Math.__name__="Math";var E=function(a){this._piscando=!0;this._arrayLivros="assets/images/obstaculos/livros1.png assets/images/obstaculos/livros2.png assets/images/obstaculos/livros3.png assets/images/obstaculos/livros4.png assets/images/obstaculos/livros5.png assets/images/obstaculos/livros6.png".split(" "); +this._amountOranges=0;this._permiteSpawn=!1;this._posicaoOcupadaX=0;this._livesTotal=3;this._auxX=0;this._tooglePausar=!1;ba.call(this,a)};h.BozoRunGameState=E;E.__name__="BozoRunGameState";E.__super__=ba;E.prototype=p(ba.prototype,{_bozo:null,_jump:null,_playJump:null,_jumpPressed:null,_sfxDie:null,_tooglePausar:null,_auxX:null,_livesTotal:null,_live0:null,_live1:null,_live2:null,_laranja1:null,_laranja2:null,_laranja3:null,_ghost:null,_pontaDireitaCenario:null,_posicaoOcupadaX:null,_permiteSpawn:null, +_fundosGrupo:null,_fundoCeu:null,_fundoCenario:null,_floor:null,_collisions:null,_books:null,_amountOranges:null,_oranges:null,_change:null,_score:null,_record:null,_pausarButton:null,_voltarButton:null,_scoreText:null,_arrayLivros:null,_piscando:null,create:function(){u.mouse.set_visible(!1);Hh.setScreenOrientation(2);u.camera.fade(-16777216,.33,!0);u.camera.set_antialiasing(!0);var a=u.worldBounds;a.width=16E5;a.height=300;this._fundoCeu=new Td("assets/images/sky.png",.1,0,!0,!1,0,0);this._fundoCenario= +new Td("assets/images/backgrounds/bgnovo.png",.4,0,!0,!1,0,0);this._fundoCenario.scale.set(1.5,1.5);this._fundosGrupo=new Id;this._fundosGrupo.add(this._fundoCeu);this._fundosGrupo.add(this._fundoCenario);this.add(this._fundosGrupo);this._bozo=(new I).loadGraphic("assets/images/Jair.png",!0,104,122);this._bozo.scale.set(.4,1);this._bozo.updateHitbox();this._bozo.setGraphicSize(104,122);this._record=this._bozo.x|0;this._record=this._bozo.x|0;this._bozo.animation.add("fugindo",[3,4,5,6,7,8,9,10,11, +12,13],30,!0);this._bozo.animation.add("pulando",[15,14],7,!1);this._bozo.animation.add("caindo",[16,17],7,!1);this._bozo.animation.add("morrendo",[22,23],15,!1);this._bozo.set_facing(16);this.add(this._bozo);this._ghost=new I(this._bozo.x+u.width-16,u.height/2);u.camera.follow(this._ghost);var b=this;this._jump=-1;this._playJump=!0;this._jumpPressed=!1;this._sfxDie=!0;this._bozo.setPosition(16*this._record,0);this._bozo.drag.set_x(100);this._bozo.velocity.set(0,0);this._bozo.maxVelocity.set(400, +1400);this._bozo.acceleration.set(120,1400);this._bozo.animation.add("fugindo",[3,4,5,6,7,8,9,10,11,12,13],30,!0);this._bozo.animation.add("pulando",[15,14],7,!1);this._bozo.animation.add("caindo",[16,17],7,!1);this._bozo.animation.add("morrendo",[22,23],15,!1);this._ghost.set_x(this._bozo.x-3.2+.5*u.width);this._piscando=!0;var c=new xb(3E3);c.run=function(){b._piscando=!1;b._bozo.set_visible(!0);c.stop()};(new xb(300)).run=function(){b._permiteSpawn=!0;var a=new xb(10);return a.run=function(){b._permiteSpawn= +!1;a.stop()}};var d=this;this._pausarButton=new Rc(0,0,"",function(){var a=Ih._new(-1719631744);d.openSubState(new Df(a))});this._pausarButton.loadGraphic("assets/images/botoes/pausar/pausar.png",!0,60,36);this._pausarButton.setPosition(124,4);this._pausarButton.scrollFactor.set(0,0);this.add(this._pausarButton);this._voltarButton=new Rc(0,0,"",function(){u.camera.fade(-16777216,.33,!1,function(){var a=new Qb;u.game._state.switchTo(a)&&(u.game._requestedState=a)})});this._voltarButton.loadGraphic("assets/images/botoes/voltar/voltar.png", +!0,60,36);this._voltarButton.setPosition(189,4);this._voltarButton.scrollFactor.set(0,0);this.add(this._voltarButton);this._scoreText=new Ue(78,8,45,"");this._scoreText.scrollFactor.set(0,0);this._scoreText.set_borderStyle(Ef.OUTLINE);this._scoreText.set_color(16711680);this.add(this._scoreText);this._live0=(new I(0,0)).loadGraphic("assets/images/coracao.png",!0,28,23);this._live0.scrollFactor.set(0,0);this._live0.animation.add("vivo",[0],1,!1);this._live0.animation.add("morto",[1],1,!1);this.add(this._live0); +this._live1=(new I(23,0)).loadGraphic("assets/images/coracao.png",!0,28,23);this._live1.scrollFactor.set(0,0);this._live1.animation.add("vivo",[0],1,!1);this._live1.animation.add("morto",[1],1,!1);this.add(this._live1);this._live2=(new I(46,0)).loadGraphic("assets/images/coracao.png",!0,28,23);this._live2.scrollFactor.set(0,0);this._live2.animation.add("vivo",[0],1,!1);this._live2.animation.add("morto",[1],1,!1);this.add(this._live2);this._laranja1=new I(0,24,"assets/images/laranja.png");this._laranja1.scrollFactor.set(0, +0);this._laranja1.set_visible(!1);this.add(this._laranja1);this._laranja2=new I(24,24,"assets/images/laranja.png");this._laranja2.scrollFactor.set(0,0);this._laranja2.set_visible(!1);this.add(this._laranja2);this._laranja3=new I(48,24,"assets/images/laranja.png");this._laranja3.scrollFactor.set(0,0);this._laranja3.set_visible(!1);this.add(this._laranja3);a=this._fundoCenario;a.set_y(a.y+90);a=this._fundoCeu;a.set_y(a.y-40);this._score=this._record;this._floor=new Td("assets/images/groundtiles.png", +1,0,!0,!1,0,0);this._floor.set_y(280);this._floor.set_allowCollisions(4369);this._floor.collisonXDrag=!1;this._floor.set_immovable(!0);this._floor.set_width(1E6);this.add(this._floor);this._collisions=new na;this._collisions.add(this._floor);this.add(this._collisions);this._books=new Id;this.add(this._books);this._oranges=new Id;this.add(this._oranges);this._change=!1;this._pontaDireitaCenario=16*(this._record-1)},configurarFundo:function(){this._fundoCeu=new Td("assets/images/sky.png",.1,0,!0,!1, +0,0);this._fundoCenario=new Td("assets/images/backgrounds/bgnovo.png",.4,0,!0,!1,0,0);this._fundoCenario.scale.set(1.5,1.5);this._fundosGrupo=new Id;this._fundosGrupo.add(this._fundoCeu);this._fundosGrupo.add(this._fundoCenario);this.add(this._fundosGrupo)},configurarBozo:function(){this._bozo=(new I).loadGraphic("assets/images/Jair.png",!0,104,122);this._bozo.scale.set(.4,1);this._bozo.updateHitbox();this._bozo.setGraphicSize(104,122);this._record=this._bozo.x|0;this._record=this._bozo.x|0;this._bozo.animation.add("fugindo", +[3,4,5,6,7,8,9,10,11,12,13],30,!0);this._bozo.animation.add("pulando",[15,14],7,!1);this._bozo.animation.add("caindo",[16,17],7,!1);this._bozo.animation.add("morrendo",[22,23],15,!1);this._bozo.set_facing(16);this.add(this._bozo);this._ghost=new I(this._bozo.x+u.width-16,u.height/2);u.camera.follow(this._ghost)},configurarInterface:function(){var a=this;this._pausarButton=new Rc(0,0,"",function(){var b=Ih._new(-1719631744);a.openSubState(new Df(b))});this._pausarButton.loadGraphic("assets/images/botoes/pausar/pausar.png", +!0,60,36);this._pausarButton.setPosition(124,4);this._pausarButton.scrollFactor.set(0,0);this.add(this._pausarButton);this._voltarButton=new Rc(0,0,"",function(){u.camera.fade(-16777216,.33,!1,function(){var a=new Qb;u.game._state.switchTo(a)&&(u.game._requestedState=a)})});this._voltarButton.loadGraphic("assets/images/botoes/voltar/voltar.png",!0,60,36);this._voltarButton.setPosition(189,4);this._voltarButton.scrollFactor.set(0,0);this.add(this._voltarButton);this._scoreText=new Ue(78,8,45,"");this._scoreText.scrollFactor.set(0, +0);this._scoreText.set_borderStyle(Ef.OUTLINE);this._scoreText.set_color(16711680);this.add(this._scoreText);this._live0=(new I(0,0)).loadGraphic("assets/images/coracao.png",!0,28,23);this._live0.scrollFactor.set(0,0);this._live0.animation.add("vivo",[0],1,!1);this._live0.animation.add("morto",[1],1,!1);this.add(this._live0);this._live1=(new I(23,0)).loadGraphic("assets/images/coracao.png",!0,28,23);this._live1.scrollFactor.set(0,0);this._live1.animation.add("vivo",[0],1,!1);this._live1.animation.add("morto", +[1],1,!1);this.add(this._live1);this._live2=(new I(46,0)).loadGraphic("assets/images/coracao.png",!0,28,23);this._live2.scrollFactor.set(0,0);this._live2.animation.add("vivo",[0],1,!1);this._live2.animation.add("morto",[1],1,!1);this.add(this._live2);this._laranja1=new I(0,24,"assets/images/laranja.png");this._laranja1.scrollFactor.set(0,0);this._laranja1.set_visible(!1);this.add(this._laranja1);this._laranja2=new I(24,24,"assets/images/laranja.png");this._laranja2.scrollFactor.set(0,0);this._laranja2.set_visible(!1); +this.add(this._laranja2);this._laranja3=new I(48,24,"assets/images/laranja.png");this._laranja3.scrollFactor.set(0,0);this._laranja3.set_visible(!1);this.add(this._laranja3);var b=this._fundoCenario;b.set_y(b.y+90);b=this._fundoCeu;b.set_y(b.y-40);this._score=this._record},setupPlatforms:function(){this._floor=new Td("assets/images/groundtiles.png",1,0,!0,!1,0,0);this._floor.set_y(280);this._floor.set_allowCollisions(4369);this._floor.collisonXDrag=!1;this._floor.set_immovable(!0);this._floor.set_width(1E6); +this.add(this._floor);this._collisions=new na;this._collisions.add(this._floor);this.add(this._collisions);this._books=new Id;this.add(this._books);this._oranges=new Id;this.add(this._oranges)},iniciarBozo:function(){var a=this;this._jump=-1;this._playJump=!0;this._jumpPressed=!1;this._sfxDie=!0;this._bozo.setPosition(16*this._record,0);this._bozo.drag.set_x(100);this._bozo.velocity.set(0,0);this._bozo.maxVelocity.set(400,1400);this._bozo.acceleration.set(120,1400);this._bozo.animation.add("fugindo", +[3,4,5,6,7,8,9,10,11,12,13],30,!0);this._bozo.animation.add("pulando",[15,14],7,!1);this._bozo.animation.add("caindo",[16,17],7,!1);this._bozo.animation.add("morrendo",[22,23],15,!1);this._ghost.set_x(this._bozo.x-3.2+.5*u.width);this._piscando=!0;var b=new xb(3E3);b.run=function(){a._piscando=!1;a._bozo.set_visible(!0);b.stop()};(new xb(300)).run=function(){a._permiteSpawn=!0;var b=new xb(10);return b.run=function(){a._permiteSpawn=!1;b.stop()}}},initPlatforms:function(){this._change=!1;this._pontaDireitaCenario= +16*(this._record-1)},onReiniciar:function(){if(0this._pontaDireitaCenario;){this._pontaDireitaCenario+=32;if(this._permiteSpawn){if(0==E.random.int(0,2)/2){var d=this._arrayLivros[E.random.int(0,5)]; +a=this._books;var e=!0,f=!0;null==f&&(f=!0);null==e&&(e=!0);d=new sa(null,null,d,45,55);var l=this._posicaoOcupadaX,v=this._bozo.x+u.width+E.random.int(300,350);l-30>v||l+30v||l+30v||l+30v||l+30this._bozo.velocity.y&&(this._bozo.acceleration.set_y(1400),this._bozo.velocity.set_y(350),this._jump=-1);this._change&&(this._collisions.update(u.elapsed),this._oranges.update(u.elapsed),this._books.update(u.elapsed),this._change=!1);if(u.overlap(this._bozo,this._oranges,function(a,b){b.destroy()})&&(this._playJump=!1,3>this._amountOranges&& +++this._amountOranges==this._amountOranges))switch(this._amountOranges){case 1:this._laranja1.set_visible(!0);break;case 2:this._laranja2.set_visible(!0);break;case 3:this._laranja3.set_visible(!0)}u.overlap(this._bozo,this._collisions,null,Ha.separate)&&(this._playJump=!1,0=this._bozo.velocity.x&&0>=this._amountOranges){this._jump=-1;this._playJump=!1;if(this._sfxDie)switch(--this._livesTotal,this._livesTotal){case 0:this._live0.animation.play("morto");break;case 1:this._live1.animation.play("morto"); +break;case 2:this._live2.animation.play("morto")}var m=this;if(this._sfxDie){u.sound.play("assets/sounds/goblin-9.ogg");this._sfxDie=!1;var g=new xb(500);g.run=function(){if(016*this._record&&(this._record=this._score);this._scoreText.set_text(R.string("Recorde"+this._record+"m"));this._ghost.set_x(this._bozo.x-3.2+.5*u.width)},updateUI:function(){this._score=this._bozo.x/16|0;this._bozo.x>16*this._record&&(this._record=this._score);this._scoreText.set_text(R.string("Recorde"+ +this._record+"m"));this._ghost.set_x(this._bozo.x-3.2+.5*u.width)},atualizaBozo:function(){this._bozo.maxVelocity.set_x(400+(.03*this._bozo.x|0));var a=u.keys;var b=zc.fromStringMap;(null!=r.UP?b.existsReserved("UP"):b.h.hasOwnProperty("UP"))?(b=zc.fromStringMap,b=null!=r.UP?b.getReserved("UP"):b.h.UP):b=-1;var c=zc.fromStringMap;(null!=r.W?c.existsReserved("W"):c.h.hasOwnProperty("W"))?(c=zc.fromStringMap,c=null!=r.W?c.getReserved("W"):c.h.W):c=-1;var d=zc.fromStringMap;(null!=r.SPACE?d.existsReserved("SPACE"): +d.h.hasOwnProperty("SPACE"))?(d=zc.fromStringMap,d=null!=r.SPACE?d.getReserved("SPACE"):d.h.SPACE):d=-1;this._jumpPressed=a.checkKeyArrayState([b,c,d],1);10this._bozo.velocity.y&&(this._bozo.acceleration.set_y(1400),this._bozo.velocity.set_y(350),this._jump=-1)},updatePlatforms:function(){for(var a=this;1.3*(this._bozo.x+u.width)>this._pontaDireitaCenario;){this._pontaDireitaCenario+=32;if(this._permiteSpawn){if(0== +E.random.int(0,2)/2){var b=this._arrayLivros[E.random.int(0,5)],c=this._books,d=!0,e=!0;null==e&&(e=!0);null==d&&(d=!0);b=new sa(null,null,b,45,55);var f=this._posicaoOcupadaX,l=this._bozo.x+u.width+E.random.int(300,350);f-30>l||f+30l||f+30l||f+30l||f+30c||a+bc||b+30c||b+30f||e+30f||e+30f||e+30f||e+30c?a:z.substr(a,0,b+c));if(b=null!=this.r.m)this.r.s=a;return b}if(c=this.match(0>c?z.substr(a,b,null):z.substr(a,b,c)))this.r.s=a,this.r.m.index+=b;return c},split:function(a){return a.replace(this.r,"#__delim__#").split("#__delim__#")},__class__:ja};var pb=function(a,b,c,d,e,f,l,v){null==l&&(l=!1);null==f&&(f=60);null==e&&(e=60);null==d&&(d=1);null==b&&(b=0);null==a&&(a=0);this._skipSplash=this._resetGame= +!1;this._customFocusLostScreen=ig;this._customSoundTray=jg;this._lostFocus=!1;this._total=this._startTime=0;this._gameJustStarted=!1;this.filtersEnabled=!0;this.ticks=0;this.focusLostFramerate=10;ka.call(this);this._inputContainer=new ka;0==a&&(a=ma.get_current().stage.stageWidth);0==b&&(b=ma.get_current().stage.stageHeight);u.init(this,a,b,d);u.set_updateFramerate(e);u.set_drawFramerate(f);this._accumulator=this._stepMS;this._skipSplash=l;this._initialState=null==c?ba:c;this.addEventListener("addedToStage", +q(this,this.create))};h["flixel.FlxGame"]=pb;pb.__name__="flixel.FlxGame";pb.__super__=ka;pb.prototype=p(ka.prototype,{focusLostFramerate:null,soundTray:null,ticks:null,filtersEnabled:null,_gameJustStarted:null,_initialState:null,_state:null,_total:null,_startTime:null,_accumulator:null,_elapsedMS:null,_stepMS:null,_stepSeconds:null,_maxAccumulation:null,_lostFocus:null,_filters:null,_focusLostScreen:null,_inputContainer:null,_customSoundTray:null,_customFocusLostScreen:null,_skipSplash:null,_requestedState:null, +_resetGame:null,create:function(a){null!=this.stage&&(this.removeEventListener("addedToStage",q(this,this.create)),this._startTime=this.getTimer(),this._total=this.getTimer()-this._startTime,this.stage.set_scaleMode(2),this.stage.align=6,this.stage.set_frameRate(u.drawFramerate),this.addChild(this._inputContainer),this.soundTray=La.createInstance(this._customSoundTray,[]),this.addChild(this.soundTray),this._focusLostScreen=La.createInstance(this._customFocusLostScreen,[]),this.addChild(this._focusLostScreen), +this.stage.addEventListener("deactivate",q(this,this.onFocusLost)),this.stage.addEventListener("activate",q(this,this.onFocus)),u.signals.preGameReset.dispatch(),this._skipSplash||null!=Sc.nextState?(this._requestedState=La.createInstance(this._initialState,[]),null==Sc.nextState&&(this._gameJustStarted=!0)):(Sc.nextState=this._initialState,this._requestedState=new Sc,this._skipSplash=!0),u.reset(),u.signals.postGameReset.dispatch(),this.switchState(),this.stage.addEventListener("enterFrame",q(this, +this.onEnterFrame)),this.stage.addEventListener("resize",q(this,this.onResize)),this.resizeGame(ma.get_current().stage.stageWidth,ma.get_current().stage.stageHeight),Ka.addEventListener("change",(n=u.bitmap,q(n,n.onAssetsReload))))},onFocus:function(a){this._lostFocus=!1;u.signals.focusGained.dispatch();this._state.onFocus();if(u.autoPause){null!=this._focusLostScreen&&this._focusLostScreen.set_visible(!1);this.stage.set_frameRate(u.drawFramerate);u.sound.onFocus();a=0;for(var b=u.inputs.list;athis._maxAccumulation?this._maxAccumulation:this._accumulator;this._accumulator>=this._stepMS;)this.step(),this._accumulator-=this._stepMS;else this.step();this.draw()}},switchState:function(){u.cameras.reset();u.inputs.onStateSwitch();u.sound.destroy();u.signals.preStateSwitch.dispatch();null!=this._state&&this._state.destroy();u.bitmap.clearCache();this._state= +this._requestedState;this._gameJustStarted&&u.signals.preGameStart.dispatch();u.signals.preStateCreate.dispatch(this._state);this._state.create();this._gameJustStarted&&this.gameStart();u.signals.postStateSwitch.dispatch()},gameStart:function(){u.signals.postGameStart.dispatch();this._gameJustStarted=!1},step:function(){this._resetGame&&(u.signals.preGameReset.dispatch(),this._skipSplash||null!=Sc.nextState?(this._requestedState=La.createInstance(this._initialState,[]),null==Sc.nextState&&(this._gameJustStarted= +!0)):(Sc.nextState=this._initialState,this._requestedState=new Sc,this._skipSplash=!0),u.reset(),u.signals.postGameReset.dispatch(),this._resetGame=!1);this.handleReplayRequests();this.update()},handleReplayRequests:function(){},update:function(){if(this._state.active&&this._state.exists){this._state!=this._requestedState&&this.switchState();this.updateElapsed();u.signals.preUpdate.dispatch();this.updateInput();u.sound.update(u.elapsed);for(var a=u.elapsed,b=0,c=u.plugins.list;ba&&(u.elapsed=a)}},updateInput:function(){for(var a= +0,b=u.inputs.list;a>24&255)/255))}a=0;for(b=u.plugins.list;ac)if(0==b)c=a.length+c;else return"";return a.substr(b,c)};z.remove=function(a,b){b=a.indexOf(b);if(-1==b)return!1;a.splice(b,1);return!0}; +z.iter=function(a){return{cur:0,arr:a,hasNext:function(){return this.curg?z.get_height():g;h+=z.get_width()*l;h+z.get_width()*l>d?(this._x=b,this._y=c+g+f+k,h=0,k+=g*v,g=0):this._x+= +z.get_width()*l+e;this._chars.add(z)}Ga.call(this)};h.InaraString=Q;Q.__name__="InaraString";Q.__super__=Ga;Q.prototype=p(Ga.prototype,{_x:null,_y:null,_chars:null,__class__:Q});var A=function(a,b){this.min=a;this.max=b};h.IntIterator=A;A.__name__="IntIterator";A.prototype={min:null,max:null,hasNext:function(){return this.min=305+this.paddingSide&&this.aviao.set_x(this.paddingSide);a=this.pato;a.set_x(a.x+.4*this.multiplier);this.pato.x>=270+this.paddingSide&&(this.multiplier*=-1,this.pato.set_facing(16));this.pato.x<=180+this.paddingSide&&(this.pato.set_facing(1), +this.multiplier*=-1);ba.prototype.update.call(this,u.elapsed)},destroy:function(){this.background.destroy();this.BtnRun.destroy();this.bozoEspirra.destroy();this.bozoRun.destroy();this.BtnRun.destroy();this.BtnColetiva.destroy();this.ceu.destroy();this.pato.destroy();this.aviao.destroy();this.pedestal.destroy();this.stringTitulo.destroy();this.BtnRun=this.background=null;ba.prototype.destroy.call(this)},__class__:Qb});var Ib=function(){};h.ManifestResources=Ib;Ib.__name__="ManifestResources";Ib.init= +function(a){Ib.preloadLibraries=[];Ib.preloadLibraryNames=[];Ib.rootPath=null;null!=a&&Object.prototype.hasOwnProperty.call(a,"rootPath")&&(Ib.rootPath=aa.field(a,"rootPath"));null==Ib.rootPath&&(Ib.rootPath="./");eb.registerFont(Jd);eb.registerFont(kg);a=rc.parse('{"name":null,"assets":"aoy4:pathy32:assets%2Fimages%2Ffont%2Ftil.pngy4:sizei98y4:typey5:IMAGEy2:idR1y7:preloadtgoR0y34:assets%2Fimages%2Ffont%2Fnum_8.pngR2i204R3R4R5R7R6tgoR0y30:assets%2Fimages%2Ffont%2Fa.pngR2i170R3R4R5R8R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_4.pngR2i156R3R4R5R9R6tgoR0y36:assets%2Fimages%2Ffont%2Fu_trema.pngR2i186R3R4R5R10R6tgoR0y30:assets%2Fimages%2Ffont%2Fd.pngR2i162R3R4R5R11R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_1.pngR2i131R3R4R5R12R6tgoR0y40:assets%2Fimages%2Ffont%2Fporcentagem.pngR2i193R3R4R5R13R6tgoR0y36:assets%2Fimages%2Ffont%2Fa_agudo.pngR2i196R3R4R5R14R6tgoR0y30:assets%2Fimages%2Ffont%2Fz.pngR2i159R3R4R5R15R6tgoR0y41:assets%2Fimages%2Ffont%2Finterrogacao.pngR2i175R3R4R5R16R6tgoR0y30:assets%2Fimages%2Ffont%2Fp.pngR2i178R3R4R5R17R6tgoR0y36:assets%2Fimages%2Ffont%2Fu_agudo.pngR2i207R3R4R5R18R6tgoR0y30:assets%2Fimages%2Ffont%2Fx.pngR2i205R3R4R5R19R6tgoR0y30:assets%2Fimages%2Ffont%2Fy.pngR2i192R3R4R5R20R6tgoR0y30:assets%2Fimages%2Ffont%2Fc.pngR2i149R3R4R5R21R6tgoR0y36:assets%2Fimages%2Ffont%2Fi_agudo.pngR2i151R3R4R5R22R6tgoR0y34:assets%2Fimages%2Ffont%2Fbarra.pngR2i176R3R4R5R23R6tgoR0y30:assets%2Fimages%2Ffont%2Fe.pngR2i152R3R4R5R24R6tgoR0y36:assets%2Fimages%2Ffont%2Fo_agudo.pngR2i208R3R4R5R25R6tgoR0y34:assets%2Fimages%2Ffont%2Fo_til.pngR2i182R3R4R5R26R6tgoR0y34:assets%2Fimages%2Ffont%2Fagudo.pngR2i128R3R4R5R27R6tgoR0y30:assets%2Fimages%2Ffont%2Fj.pngR2i157R3R4R5R28R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_6.pngR2i177R3R4R5R29R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_7.pngR2i167R3R4R5R30R6tgoR0y38:assets%2Fimages%2Ffont%2Fc_cedilha.pngR2i166R3R4R5R31R6tgoR0y36:assets%2Fimages%2Ffont%2Fe_agudo.pngR2i190R3R4R5R32R6tgoR0y36:assets%2Fimages%2Ffont%2Fo_trema.pngR2i191R3R4R5R33R6tgoR0y42:assets%2Fimages%2Ffont%2Fa_circunflexo.pngR2i202R3R4R5R34R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_0.pngR2i169R3R4R5R35R6tgoR0y36:assets%2Fimages%2Ffont%2Fe_trema.pngR2i183R3R4R5R36R6tgoR0y36:assets%2Fimages%2Ffont%2Fvirgula.pngR2i110R3R4R5R37R6tgoR0y30:assets%2Fimages%2Ffont%2Fo.pngR2i172R3R4R5R38R6tgoR0y30:assets%2Fimages%2Ffont%2Fn.pngR2i218R3R4R5R39R6tgoR0y36:assets%2Fimages%2Ffont%2Fi_trema.pngR2i142R3R4R5R40R6tgoR0y30:assets%2Fimages%2Ffont%2Fr.pngR2i181R3R4R5R41R6tgoR0y40:assets%2Fimages%2Ffont%2Fdois_pontos.pngR2i100R3R4R5R42R6tgoR0y30:assets%2Fimages%2Ffont%2Fq.pngR2i180R3R4R5R43R6tgoR0y30:assets%2Fimages%2Ffont%2F-.pngR2i112R3R4R5R44R6tgoR0y42:assets%2Fimages%2Ffont%2Fe_circunflexo.pngR2i191R3R4R5R45R6tgoR0y38:assets%2Fimages%2Ffont%2Fasterisco.pngR2i152R3R4R5R46R6tgoR0y30:assets%2Fimages%2Ffont%2Fi.pngR2i119R3R4R5R47R6tgoR0y30:assets%2Fimages%2Ffont%2Fl.pngR2i144R3R4R5R48R6tgoR0y30:assets%2Fimages%2Ffont%2Ft.pngR2i153R3R4R5R49R6tgoR0y34:assets%2Fimages%2Ffont%2Ftrema.pngR2i107R3R4R5R50R6tgoR0y30:assets%2Fimages%2Ffont%2Fb.pngR2i187R3R4R5R51R6tgoR0y30:assets%2Fimages%2Ffont%2Fh.pngR2i165R3R4R5R52R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_3.pngR2i186R3R4R5R53R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_5.pngR2i187R3R4R5R54R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_9.pngR2i197R3R4R5R55R6tgoR0y33:assets%2Fimages%2Ffont%2Fmais.pngR2i153R3R4R5R56R6tgoR0y34:assets%2Fimages%2Ffont%2Fa_til.pngR2i186R3R4R5R57R6tgoR0y30:assets%2Fimages%2Ffont%2Fg.pngR2i176R3R4R5R58R6tgoR0y36:assets%2Fimages%2Ffont%2Fa_trema.pngR2i191R3R4R5R59R6tgoR0y39:assets%2Fimages%2Ffont%2Fexclamacao.pngR2i126R3R4R5R60R6tgoR0y30:assets%2Fimages%2Ffont%2Fu.pngR2i167R3R4R5R61R6tgoR0y30:assets%2Fimages%2Ffont%2Fw.pngR2i206R3R4R5R62R6tgoR0y34:assets%2Fimages%2Ffont%2Fnum_2.pngR2i170R3R4R5R63R6tgoR0y30:assets%2Fimages%2Ffont%2Fv.pngR2i175R3R4R5R64R6tgoR0y42:assets%2Fimages%2Ffont%2Fo_circunflexo.pngR2i203R3R4R5R65R6tgoR0y30:assets%2Fimages%2Ffont%2Ff.pngR2i149R3R4R5R66R6tgoR0y30:assets%2Fimages%2Ffont%2Fk.pngR2i201R3R4R5R67R6tgoR0y30:assets%2Fimages%2Ffont%2Fs.pngR2i189R3R4R5R68R6tgoR0y30:assets%2Fimages%2Ffont%2Fm.pngR2i221R3R4R5R69R6tgoR0y26:assets%2Fimages%2FLula.pngR2i3556R3R4R5R70R6tgoR0y25:assets%2Fimages%2Fsky.pngR2i7286R3R4R5R71R6tgoR0y48:assets%2Fimages%2Fbotoes%2Fmascara%2Fbotoes4.pngR2i340R3R4R5R72R6tgoR0y48:assets%2Fimages%2Fbotoes%2Fmascara%2Fbotoes3.pngR2i951R3R4R5R73R6tgoR0y53:assets%2Fimages%2Fbotoes%2Fmascara%2FmascaraBotao.pngR2i1305R3R4R5R74R6tgoR0y50:assets%2Fimages%2Fbotoes%2Fcoletiva%2Fcoletiva.pngR2i1288R3R4R5R75R6tgoR0y49:assets%2Fimages%2Fbotoes%2Fcoletiva%2Fbotoes9.pngR2i919R3R4R5R76R6tgoR0y50:assets%2Fimages%2Fbotoes%2Fcoletiva%2Fbotoes10.pngR2i308R3R4R5R77R6tgoR0y47:assets%2Fimages%2Fbotoes%2Fvoltar%2Fbotoes1.pngR2i865R3R4R5R78R6tgoR0y46:assets%2Fimages%2Fbotoes%2Fvoltar%2Fvoltar.pngR2i1817R3R4R5R79R6tgoR0y47:assets%2Fimages%2Fbotoes%2Fvoltar%2Fbotoes2.pngR2i751R3R4R5R80R6tgoR0y50:assets%2Fimages%2Fbotoes%2Freiniciar%2Fbotoes8.pngR2i958R3R4R5R81R6tgoR0y50:assets%2Fimages%2Fbotoes%2Freiniciar%2Fbotoes7.pngR2i319R3R4R5R82R6tgoR0y52:assets%2Fimages%2Fbotoes%2Freiniciar%2Freiniciar.pngR2i1298R3R4R5R83R6tgoR0y48:assets%2Fimages%2Fbotoes%2Fpausar%2Fbotoes11.pngR2i906R3R4R5R84R6tgoR0y48:assets%2Fimages%2Fbotoes%2Fpausar%2Fbotoes12.pngR2i906R3R4R5R85R6tgoR0y46:assets%2Fimages%2Fbotoes%2Fpausar%2Fpausar.pngR2i1320R3R4R5R86R6tgoR0y48:assets%2Fimages%2Fbotoes%2Fpausar%2Fbotoes13.pngR2i306R3R4R5R87R6tgoR0y46:assets%2Fimages%2Fbotoes%2Ffugir%2Fbotoes6.pngR2i289R3R4R5R88R6tgoR0y44:assets%2Fimages%2Fbotoes%2Ffugir%2Ffugir.pngR2i1252R3R4R5R89R6tgoR0y46:assets%2Fimages%2Fbotoes%2Ffugir%2Fbotoes5.pngR2i825R3R4R5R90R6tgoR0y44:assets%2Fimages%2Fbackgrounds%2Fbgnovo04.pngR2i6391R3R4R5R91R6tgoR0y45:assets%2Fimages%2Fbackgrounds%2Fsenado_bg.pngR2i25985R3R4R5R92R6tgoR0y39:assets%2Fimages%2Fbackgrounds%2Fceu.pngR2i2739R3R4R5R93R6tgoR0y47:assets%2Fimages%2Fbackgrounds%2Fsenado_bg_3.pngR2i12407R3R4R5R94R6tgoR0y42:assets%2Fimages%2Fbackgrounds%2Fbgnovo.pngR2i65104R3R4R5R95R6tgoR0y43:assets%2Fimages%2Fbackgrounds%2Faviao_1.pngR2i609R3R4R5R96R6tgoR0y44:assets%2Fimages%2Fbackgrounds%2Fbgnovo02.pngR2i5580R3R4R5R97R6tgoR0y43:assets%2Fimages%2Fbackgrounds%2Faviao_2.pngR2i592R3R4R5R98R6tgoR0y41:assets%2Fimages%2Fbackgrounds%2Fpatin.pngR2i279R3R4R5R99R6tgoR0y47:assets%2Fimages%2Fbackgrounds%2Fsenado_bg_2.pngR2i11505R3R4R5R100R6tgoR0y41:assets%2Fimages%2Fbackgrounds%2Faviao.pngR2i632R3R4R5R101R6tgoR0y44:assets%2Fimages%2Fbackgrounds%2Fpedestal.pngR2i136R3R4R5R102R6tgoR0y44:assets%2Fimages%2Fbackgrounds%2Fbrasilia.pngR2i95911R3R4R5R103R6tgoR0y44:assets%2Fimages%2Fbackgrounds%2Fbgnovo10.pngR2i11836R3R4R5R104R6tgoR0y44:assets%2Fimages%2Fbackgrounds%2Fbgnovo08.pngR2i33756R3R4R5R105R6tgoR0y44:assets%2Fimages%2Fbackgrounds%2Fbgnovo06.pngR2i6763R3R4R5R106R6tgoR0y47:assets%2Fimages%2Fbackgrounds%2Fsenado_bg_1.pngR2i15076R3R4R5R107R6tgoR0y46:assets%2Fimages%2Fbackgrounds%2Fforeground.pngR2i48274R3R4R5R108R6tgoR0y28:assets%2Fimages%2Fscreen.pngR2i112563R3R4R5R109R6tgoR0y32:assets%2Fimages%2Fcorassaum2.pngR2i211R3R4R5R110R6tgoR0y26:assets%2Fimages%2FJair.pngR2i21611R3R4R5R111R6tgoR0y47:assets%2Fimages%2Fcoletiva%2Fforegroundbozo.pngR2i879R3R4R5R112R6tgoR0y47:assets%2Fimages%2Fcoletiva%2Fbackgroundbozo.pngR2i79628R3R4R5R113R6tgoR0y41:assets%2Fimages%2Fcoletiva%2Fbozotile.pngR2i11632R3R4R5R114R6tgoR0y40:assets%2Fimages%2Fcoletiva%2Fmascara.pngR2i465R3R4R5R115R6tgoR0y41:assets%2Fimages%2Fcoletiva%2Fmorotile.pngR2i3383R3R4R5R116R6tgoR0y42:assets%2Fimages%2Fcoletiva%2Fmicrofone.pngR2i221R3R4R5R117R6tgoR0y42:assets%2Fimages%2Fcoletiva%2Fguedstile.pngR2i3062R3R4R5R118R6tgoR0y37:assets%2Fimages%2Fcoletiva%2Ftaca.pngR2i277R3R4R5R119R6tgoR0y42:assets%2Fimages%2Fobstaculos%2Flivros1.pngR2i841R3R4R5R120R6tgoR0y41:assets%2Fimages%2Fobstaculos%2Flivros.pngR2i2443R3R4R5R121R6tgoR0y42:assets%2Fimages%2Fobstaculos%2Flivros6.pngR2i836R3R4R5R122R6tgoR0y42:assets%2Fimages%2Fobstaculos%2Flivros4.pngR2i764R3R4R5R123R6tgoR0y42:assets%2Fimages%2Fobstaculos%2Flivros2.pngR2i769R3R4R5R124R6tgoR0y44:assets%2Fimages%2Fobstaculos%2Fcensurado.pngR2i677R3R4R5R125R6tgoR0y42:assets%2Fimages%2Fobstaculos%2Flivros3.pngR2i838R3R4R5R126R6tgoR0y42:assets%2Fimages%2Fobstaculos%2Flivros5.pngR2i846R3R4R5R127R6tgoR0y37:assets%2Fimages%2Fdialogo%2Ftweet.pngR2i171R3R4R5R128R6tgoR0y37:assets%2Fimages%2Fdialogo%2Ftuite.pngR2i325R3R4R5R129R6tgoR0y32:assets%2Fimages%2Fcorassaum1.pngR2i215R3R4R5R130R6tgoR0y24:assets%2Fimages%2Fvs.pngR2i648R3R4R5R131R6tgoR0y33:assets%2Fimages%2Fgroundtiles.pngR2i276R3R4R5R132R6tgoR0y29:assets%2Fimages%2Flaranja.pngR2i212R3R4R5R133R6tgoR0y29:assets%2Fimages%2Fcoracao.pngR2i439R3R4R5R134R6tgoR0y29:assets%2Fdata%2FLula.asepriteR2i4388R3y6:BINARYR5R135R6tgoR0y27:assets%2Fdata%2Fbozorun.oepR2i2979R3y4:TEXTR5R137R6tgoR0y28:assets%2Fdata%2Fbrasilia.xcfR2i184957R3R136R5R139R6tgoR0y29:assets%2Fdata%2FJair.asepriteR2i33676R3R136R5R140R6tgoR0y27:assets%2Fdata%2Fbozorun.oelR2i35904R3R138R5R141R6tgoR2i2501057R3y5:MUSICR5y29:assets%2Fmusic%2Fbozosong.mp3y9:pathGroupaR143y29:assets%2Fmusic%2Fbozosong.ogghR6tgoR2i1306768R3R142R5R145R144aR143R145hgoR2i6619R3y5:SOUNDR5y30:assets%2Fsounds%2Fgoblin-1.oggR144aR147y30:assets%2Fsounds%2Fgoblin-1.mp3hR6tgoR2i9144R3R146R5y30:assets%2Fsounds%2Fgoblin-9.oggR144aR149y30:assets%2Fsounds%2Fgoblin-9.mp3hR6tgoR2i4224R3R142R5R148R144aR147R148hgoR2i7296R3R142R5R150R144aR149R150hgoR2i39706R3R142R5y28:flixel%2Fsounds%2Fflixel.mp3R144aR151y28:flixel%2Fsounds%2Fflixel.ogghR6tgoR2i2114R3R142R5y26:flixel%2Fsounds%2Fbeep.mp3R144aR153y26:flixel%2Fsounds%2Fbeep.ogghR6tgoR2i33629R3R146R5R152R144aR151R152hgoR2i5794R3R146R5R154R144aR153R154hgoR2i15744R3y4:FONTy9:classNamey35:__ASSET__flixel_fonts_nokiafc22_ttfR5y30:flixel%2Ffonts%2Fnokiafc22.ttfR6tgoR2i29724R3R155R156y36:__ASSET__flixel_fonts_monsterrat_ttfR5y31:flixel%2Ffonts%2Fmonsterrat.ttfR6tgoR0y33:flixel%2Fimages%2Fui%2Fbutton.pngR2i519R3R4R5R161R6tgoR0y36:flixel%2Fimages%2Flogo%2Fdefault.pngR2i3280R3R4R5R162R6tgh","rootPath":null,"version":2,"libraryArgs":[],"libraryType":null}', +Ib.rootPath);a=nb.fromManifest(a);oa.registerLibrary("default",a);a=oa.getLibrary("default");null!=a?Ib.preloadLibraries.push(a):Ib.preloadLibraryNames.push("default")};var cb=function(a){null!=a&&(this.name=a);this.__init||(void 0==this.ascender&&(this.ascender=0),void 0==this.descender&&(this.descender=0),void 0==this.height&&(this.height=0),void 0==this.numGlyphs&&(this.numGlyphs=0),void 0==this.underlinePosition&&(this.underlinePosition=0),void 0==this.underlineThickness&&(this.underlineThickness= +0),void 0==this.unitsPerEM&&(this.unitsPerEM=0),null!=this.__fontID?oa.isLocal(this.__fontID)&&this.__fromBytes(oa.getBytes(this.__fontID)):null!=this.__fontPath&&this.__fromFile(this.__fontPath))};h["lime.text.Font"]=cb;cb.__name__="lime.text.Font";cb.fromFile=function(a){if(null==a)return null;var b=new cb;b.__fromFile(a);return b};cb.loadFromName=function(a){return(new cb).__loadFromName(a)};cb.__measureFontNode=function(a){var b=window.document.createElement("span");b.setAttribute("aria-hidden", +"true");var c=window.document.createTextNode("BESbswy");b.appendChild(c);c=b.style;c.display="block";c.position="absolute";c.top="-9999px";c.left="-9999px";c.fontSize="300px";c.width="auto";c.height="auto";c.lineHeight="normal";c.margin="0";c.padding="0";c.fontVariant="normal";c.whiteSpace="nowrap";c.fontFamily=a;window.document.body.appendChild(b);return b};cb.prototype={ascender:null,descender:null,height:null,name:null,numGlyphs:null,src:null,underlinePosition:null,underlineThickness:null,unitsPerEM:null, +__fontID:null,__fontPath:null,__init:null,__copyFrom:function(a){null!=a&&(this.ascender=a.ascender,this.descender=a.descender,this.height=a.height,this.name=a.name,this.numGlyphs=a.numGlyphs,this.src=a.src,this.underlinePosition=a.underlinePosition,this.underlineThickness=a.underlineThickness,this.unitsPerEM=a.unitsPerEM,this.__fontID=a.__fontID,this.__fontPath=a.__fontPath,this.__init=!0)},__fromBytes:function(a){this.__fontPath=null},__fromFile:function(a){this.__fontPath=a},__loadFromName:function(a){var b= +this,c=new dc;this.name=a;var d=window.navigator.userAgent.toLowerCase(),e=0<=d.indexOf(" safari/")&&0>d.indexOf(" chrome/");d=(new ja("(iPhone|iPod|iPad).*AppleWebKit(?!.*Version)","i")).match(d);if(!e&&!d&&window.document.fonts&&(n=window.document.fonts,q(n,n.load)))window.document.fonts.load("1em '"+a+"'").then(function(a){c.complete(b)},function(d){Ca.warn('Could not load web font "'+a+'"',{fileName:"lime/text/Font.hx",lineNumber:513,className:"lime.text.Font",methodName:"__loadFromName"});c.complete(b)}); +else{var f=cb.__measureFontNode("'"+a+"', sans-serif"),l=cb.__measureFontNode("'"+a+"', serif"),v=f.offsetWidth,m=l.offsetWidth,g=-1,h=0,k,z;g=window.setInterval(function(){h+=1;k=f.offsetWidth!=v||l.offsetWidth!=m;z=3E3<=50*h;if(k||z)window.clearInterval(g),f.parentNode.removeChild(f),l.parentNode.removeChild(l),l=f=null,z&&Ca.warn('Could not load web font "'+a+'"',{fileName:"lime/text/Font.hx",lineNumber:548,className:"lime.text.Font",methodName:"__loadFromName"}),c.complete(b)},50)}return c.future}, +__class__:cb};var Ac=t.__ASSET__flixel_fonts_nokiafc22_ttf=function(){this.ascender=2048;this.descender=-512;this.height=2816;this.numGlyphs=172;this.underlinePosition=-640;this.underlineThickness=256;this.unitsPerEM=2048;this.name="Nokia Cellphone FC Small";cb.call(this)};h.__ASSET__flixel_fonts_nokiafc22_ttf=Ac;Ac.__name__="__ASSET__flixel_fonts_nokiafc22_ttf";Ac.__super__=cb;Ac.prototype=p(cb.prototype,{__class__:Ac});var Rb=t.__ASSET__flixel_fonts_monsterrat_ttf=function(){this.ascender=968;this.descender= +-251;this.height=1219;this.numGlyphs=263;this.underlinePosition=-150;this.underlineThickness=50;this.unitsPerEM=1E3;this.name="Monsterrat";cb.call(this)};h.__ASSET__flixel_fonts_monsterrat_ttf=Rb;Rb.__name__="__ASSET__flixel_fonts_monsterrat_ttf";Rb.__super__=cb;Rb.prototype=p(cb.prototype,{__class__:Rb});var eb=function(a){cb.call(this,a)};h["openfl.text.Font"]=eb;eb.__name__="openfl.text.Font";eb.enumerateFonts=function(a){return eb.__registeredFonts};eb.fromFile=function(a){var b=new eb;b.__fromFile(a); +return b};eb.loadFromName=function(a){return cb.loadFromName(a).then(function(a){var b=new eb;b.__fromLimeFont(a);return Ma.withValue(b)})};eb.registerFont=function(a){a=null==xa.getClass(a)?xa.__cast(La.createInstance(a,[]),eb):xa.__cast(a,eb);if(null!=a){eb.__registeredFonts.push(a);var b=a.name,c=eb.__fontByName;null!=r[b]?c.setReserved(b,a):c.h[b]=a}};eb.__super__=cb;eb.prototype=p(cb.prototype,{__fromLimeFont:function(a){this.__copyFrom(a)},__class__:eb});var Jd=t.__ASSET__OPENFL__flixel_fonts_nokiafc22_ttf= +function(){this.__fromLimeFont(new Ac);cb.call(this,void 0)};h.__ASSET__OPENFL__flixel_fonts_nokiafc22_ttf=Jd;Jd.__name__="__ASSET__OPENFL__flixel_fonts_nokiafc22_ttf";Jd.__super__=eb;Jd.prototype=p(eb.prototype,{__class__:Jd});var kg=t.__ASSET__OPENFL__flixel_fonts_monsterrat_ttf=function(){this.__fromLimeFont(new Rb);cb.call(this,void 0)};h.__ASSET__OPENFL__flixel_fonts_monsterrat_ttf=kg;kg.__name__="__ASSET__OPENFL__flixel_fonts_monsterrat_ttf";kg.__super__=eb;kg.prototype=p(eb.prototype,{__class__:kg}); +var xe=function(a){null==a&&(a=0);this._created=!1;ba.call(this);this.openCallback=this.closeCallback=null;u.renderTile&&(this._bgSprite=new lg);this.set_bgColor(a)};h["flixel.FlxSubState"]=xe;xe.__name__="flixel.FlxSubState";xe.__super__=ba;xe.prototype=p(ba.prototype,{openCallback:null,closeCallback:null,_bgSprite:null,_parentState:null,_bgColor:null,_created:null,draw:function(){if(u.renderBlit)for(var a=0,b=this.get_cameras();ab?1:-1};aa.compareMethods=function(a,b){return a==b?!0:aa.isFunction(a)&&aa.isFunction(b)?a.scope==b.scope&&a.method==b.method?null!=a.method:!1:!1};aa.isObject=function(a){if(null==a)return!1;var b=typeof a;return"string"==b||"object"==b&&null==a.__enum__?!0:"function"==b?null!=(a.__name__||a.__ename__):!1};aa.isEnumValue=function(a){return null!=a?null!=a.__enum__:!1};aa.deleteField=function(a,b){if(!Object.prototype.hasOwnProperty.call(a,b))return!1;delete a[b];return!0};aa.makeVarArgs=function(a){return function(){var b= +Array.prototype.slice.call(arguments);return a(b)}};var R=function(){};h.Std=R;R.__name__="Std";R.string=function(a){return xa.__string_rec(a,"")};R.parseInt=function(a){if(null!=a)for(var b=0,c=a.length;b=e||14<=e&&32!=e&&45!=e)if(a=parseInt(a,"x"==a[d+1]||"X"==a[d+1]?16:10),isNaN(a))break;else return a}return null};var cj=function(){};h["_String.String_Impl_"]=cj;cj.__name__="_String.String_Impl_";cj.fromCharCode=function(a){return String.fromCodePoint(a)}; +var mg=function(){this.b=""};h.StringBuf=mg;mg.__name__="StringBuf";mg.prototype={b:null,__class__:mg};var da=function(){};h.StringTools=da;da.__name__="StringTools";da.htmlEscape=function(a,b){for(var c="",d=0;d=l&&(l=l-55232<<10|e.charCodeAt(f+1)&1023);e=l;65536<=e&&++d;switch(e){case 34:c=b?c+""":c+String.fromCodePoint(e);break;case 38:c+="&";break;case 39:c=b?c+"'":c+String.fromCodePoint(e);break;case 60:c+="<";break; +case 62:c+=">";break;default:c+=String.fromCodePoint(e)}}return c};da.startsWith=function(a,b){return a.length>=b.length?0==a.lastIndexOf(b,0):!1};da.endsWith=function(a,b){var c=b.length,d=a.length;return d>=c?a.indexOf(b,d-c)==d-c:!1};da.isSpace=function(a,b){a=z.cca(a,b);return 8a?!0:32==a};da.ltrim=function(a){for(var b=a.length,c=0;c>>=4,0a;return c!=0>b?c:a>b};Kc.toFloat=function(a){return 0>a?4294967296+a:a+0};var Nj=function(){};h.Xml=Nj;Nj.__name__="Xml";var Hh=function(){};h["extension.eightsines.EsOrientation"]=Hh;Hh.__name__="extension.eightsines.EsOrientation";Hh.setScreenOrientation=function(a){};var ng=function(a){this._count=0;this._pool=[];this._class=a};h["flixel.util.FlxPool_flixel_math_FlxPoint"]=ng;ng.__name__="flixel.util.FlxPool_flixel_math_FlxPoint";ng.__interfaces__=[Jc];ng.prototype= +{_pool:null,_class:null,_count:null,get:function(){return 0==this._count?La.createInstance(this._class,[]):this._pool[--this._count]},putUnsafe:function(a){null!=a&&(a.destroy(),this._pool[this._count++]=a)},__class__:ng};var ra=function(a,b){null==b&&(b=0);null==a&&(a=0);this._weak=this._inPool=!1;this.x=this.y=0;this.set(a,b)};h["flixel.math.FlxPoint"]=ra;ra.__name__="flixel.math.FlxPoint";ra.__interfaces__=[ob];ra.prototype={x:null,y:null,_weak:null,_inPool:null,put:function(){this._inPool||(this._inPool= +!0,this._weak=!1,ra._pool.putUnsafe(this))},set:function(a,b){null==b&&(b=0);null==a&&(a=0);this.set_x(a);this.set_y(b);return this},addPoint:function(a){this.set_x(this.x+a.x);this.set_y(this.y+a.y);a._weak&&a.put();return this},subtractPoint:function(a){this.set_x(this.x-a.x);this.set_y(this.y-a.y);a._weak&&a.put();return this},distanceTo:function(a){var b=this.x-a.x,c=this.y-a.y;a._weak&&a.put();return Math.sqrt(b*b+c*c)},rotate:function(a,b){var c=Math.PI/180*b;b=.3183098862*c;1> +1<<1:-1>b&&(b+=Math.ceil(-b)>>1<<1);b=0>1<<1:-1>c&&(c+=Math.ceil(-c)>>1<<1);c=0c?-c:c;d=0<=b?d-(b-e)/(b+e)*d:3*d-(b+e)/(e-b)* +d;d=180/Math.PI*(0>c?-d:d);d=90=c?u.width:c);this.set_height(0>=d?u.height:d);this._flashRect=new qa(0,0,this.width,this.height);this.flashSprite.addChild(this._scrollRect);this._scrollRect.set_scrollRect(new qa);(this.pixelPerfectRender=u.renderBlit)?(this.screen=new I,this.buffer=new L(this.width,this.height,!0,0),this.screen.set_pixels(this.buffer),this.screen.origin.set(),this._flashBitmap=new rb(this.buffer),this._scrollRect.addChild(this._flashBitmap), +this._fill=new L(this.width,this.height,!0,0)):(this.canvas=new ka,this._scrollRect.addChild(this.canvas));this.set_color(-1);this.initialZoom=0==e?Xb.defaultZoom:e;this.set_zoom(e);this.updateScrollRect();this.updateFlashOffset();this.updateFlashSpritePosition();this.updateInternalSpritePositions();this.bgColor=u.cameras.get_bgColor()};h["flixel.FlxCamera"]=Xb;Xb.__name__="flixel.FlxCamera";Xb.__super__=Ga;Xb.prototype=p(Ga.prototype,{x:null,y:null,scaleX:null,scaleY:null,totalScaleX:null,totalScaleY:null, +style:null,target:null,targetOffset:null,followLerp:null,deadzone:null,minScrollX:null,maxScrollX:null,minScrollY:null,maxScrollY:null,scroll:null,buffer:null,bgColor:null,screen:null,useBgAlphaBlending:null,flashSprite:null,pixelPerfectRender:null,width:null,height:null,zoom:null,viewOffsetX:null,viewOffsetY:null,viewOffsetWidth:null,viewOffsetHeight:null,viewWidth:null,viewHeight:null,_blitMatrix:null,_useBlitMatrix:null,color:null,antialiasing:null,followLead:null,filtersEnabled:null,_flashRect:null, +_flashPoint:null,_flashOffset:null,_fxFlashColor:null,_fxFlashDuration:null,_fxFlashComplete:null,_fxFlashAlpha:null,_fxFadeColor:null,_lastTargetPosition:null,_scrollTarget:null,_fxFadeDuration:null,_fxFadeIn:null,_fxFadeComplete:null,_fxFadeCompleted:null,_fxFadeAlpha:null,_fxShakeIntensity:null,_fxShakeDuration:null,_fxShakeComplete:null,_fxShakeAxes:null,_point:null,_filters:null,initialZoom:null,_fill:null,_flashBitmap:null,_scrollRect:null,_bounds:null,canvas:null,_helperMatrix:null,_helperPoint:null, +_currentDrawItem:null,_headOfDrawStack:null,_headTiles:null,_headTriangles:null,startQuadBatch:function(a,b,c,d,e,f){null==e&&(e=!1);null==c&&(c=!1);var l=cc.blendToInt(d);if(null!=this._currentDrawItem&&this._currentDrawItem.type==Jj.TILES&&this._headTiles.graphics==a&&this._headTiles.colored==b&&this._headTiles.hasColorOffsets==c&&this._headTiles.blending==l&&this._headTiles.blend==d&&this._headTiles.antialiasing==e&&this._headTiles.shader==f)return this._headTiles;if(null!=Xb._storageTilesHead){var v= +Xb._storageTilesHead;var m=Xb._storageTilesHead.nextTyped;v.reset();Xb._storageTilesHead=m}else v=new og;v.graphics=a;v.antialiasing=e;v.colored=b;v.hasColorOffsets=c;v.blending=l;v.blend=d;v.shader=f;v.nextTyped=this._headTiles;this._headTiles=v;null==this._headOfDrawStack&&(this._headOfDrawStack=v);null!=this._currentDrawItem&&(this._currentDrawItem.next=v);return this._currentDrawItem=v},clearDrawStack:function(){for(var a=this._headTiles,b;null!=a;)b=a.nextTyped,a.reset(),a.nextTyped=Xb._storageTilesHead, +Xb._storageTilesHead=a,a=b;for(a=this._headTriangles;null!=a;)b=a.nextTyped,a.reset(),a.nextTyped=Xb._storageTrianglesHead,Xb._storageTrianglesHead=a,a=b;this._headTriangles=this._headTiles=this._headOfDrawStack=this._currentDrawItem=null},render:function(){for(var a=this._headOfDrawStack;null!=a;)a.render(this),a=a.next},drawPixels:function(a,b,c,d,e,f,l){null==f&&(f=!1);if(u.renderBlit)this._helperMatrix.copyFrom(c),this._useBlitMatrix?(this._helperMatrix.concat(this._blitMatrix),this.buffer.draw(b, +this._helperMatrix,null,null,null,f||this.antialiasing)):(this._helperMatrix.translate(-this.viewOffsetX,-this.viewOffsetY),this.buffer.draw(b,this._helperMatrix,null,e,null,f||this.antialiasing));else{b=null!=d&&Qc.hasRGBMultipliers(d);var v=null!=d&&Qc.hasRGBAOffsets(d);this.startQuadBatch(a.parent,b,v,e,f,l).addQuad(a,c,d)}},copyPixels:function(a,b,c,d,e,f,l,v){null==l&&(l=!1);u.renderBlit?null!=b?this._useBlitMatrix?(this._helperMatrix.identity(),this._helperMatrix.translate(d.x,d.y),this._helperMatrix.concat(this._blitMatrix), +this.buffer.draw(b,this._helperMatrix,null,null,null,l||this.antialiasing)):(this._helperPoint.x=d.x-(this.viewOffsetX|0),this._helperPoint.y=d.y-(this.viewOffsetY|0),this.buffer.copyPixels(b,c,this._helperPoint,null,null,!0)):null!=a&&a.paint(this.buffer,d,!0):(this._helperMatrix.identity(),this._helperMatrix.translate(d.x+a.offset.x,d.y+a.offset.y),b=null!=e&&Qc.hasRGBMultipliers(e),c=null!=e&&Qc.hasRGBAOffsets(e),this.startQuadBatch(a.parent,b,c,f,l,v).addQuad(a,this._helperMatrix,e))},destroy:function(){Z.removeChild(this.flashSprite, +this._scrollRect);if(u.renderBlit)Z.removeChild(this._scrollRect,this._flashBitmap),this.screen=Z.destroy(this.screen),this._flashBitmap=this.buffer=null,this._fill=Z.dispose(this._fill);else{Z.removeChild(this._scrollRect,this.canvas);if(null!=this.canvas){for(var a=0,b=this.canvas.get_numChildren();ac?c:b);b=this.scroll.y;a=null!=a?a-this.height:null;d=null!=d&&ba?a:d)}, +updateFollow:function(){if(null==this.deadzone){this.target.getMidpoint(this._point);this._point.addPoint(this.targetOffset);var a=this._point;this.scroll.set(a.x-.5*this.width,a.y-.5*this.height);a._weak&&a.put()}else{var b=this.target.x+this.targetOffset.x;a=this.target.y+this.targetOffset.y;if(this.style==Oj.SCREEN_BY_SCREEN){if(b>=this.scroll.x+this.width){var c=this._scrollTarget;c.set_x(c.x+this.width)}else b=this.scroll.y+this.height? +(a=this._scrollTarget,a.set_y(a.y+this.height)):ac&&this._scrollTarget.set_x(c),c=b+this.target.get_width()-this.deadzone.x-this.deadzone.width,this._scrollTarget.xc&&this._scrollTarget.set_y(c),c=a+this.target.get_height()-this.deadzone.y-this.deadzone.height,this._scrollTarget.y=60/u.updateFramerate?(a=this.scroll, +c=this._scrollTarget,a.set_x(c.x),a.set_y(c.y),c._weak&&c.put()):(a=this.scroll,a.set_x(a.x+(this._scrollTarget.x-this.scroll.x)*this.followLerp*u.updateFramerate/60),a=this.scroll,a.set_y(a.y+(this._scrollTarget.y-this.scroll.y)*this.followLerp*u.updateFramerate/60))}},updateFlash:function(a){0=this._fxFlashAlpha&&null!=this._fxFlashComplete&&this._fxFlashComplete())},updateFade:function(a){this._fxFadeCompleted||(this._fxFadeIn? +(this._fxFadeAlpha-=a/this._fxFadeDuration,0>=this._fxFadeAlpha&&(this._fxFadeAlpha=0,this.completeFade())):(this._fxFadeAlpha+=a/this._fxFadeDuration,1<=this._fxFadeAlpha&&(this._fxFadeAlpha=1,this.completeFade())))},completeFade:function(){this._fxFadeCompleted=!0;null!=this._fxFadeComplete&&this._fxFadeComplete()},updateShake:function(a){0=this._fxShakeDuration?null!=this._fxShakeComplete&&this._fxShakeComplete():(this._fxShakeAxes!=ej.Y&&(a= +this.flashSprite,a.set_x(a.get_x()+u.random.float(-this._fxShakeIntensity*this.width,this._fxShakeIntensity*this.width)*this.zoom*u.scaleMode.scale.x)),this._fxShakeAxes!=ej.X&&(a=this.flashSprite,a.set_y(a.get_y()+u.random.float(-this._fxShakeIntensity*this.height,this._fxShakeIntensity*this.height)*this.zoom*u.scaleMode.scale.y))))},updateFlashSpritePosition:function(){null!=this.flashSprite&&(this.flashSprite.set_x(this.x*u.scaleMode.scale.x+this._flashOffset.x),this.flashSprite.set_y(this.y*u.scaleMode.scale.y+ +this._flashOffset.y))},updateFlashOffset:function(){this._flashOffset.set_x(.5*this.width*u.scaleMode.scale.x*this.initialZoom);this._flashOffset.set_y(.5*this.height*u.scaleMode.scale.y*this.initialZoom)},updateScrollRect:function(){var a=null!=this._scrollRect?this._scrollRect.get_scrollRect():null;null!=a&&(a.x=a.y=0,a.width=this.width*this.initialZoom*u.scaleMode.scale.x,a.height=this.height*this.initialZoom*u.scaleMode.scale.y,this._scrollRect.set_scrollRect(a),this._scrollRect.set_x(-.5*a.width), +this._scrollRect.set_y(-.5*a.height))},updateInternalSpritePositions:function(){u.renderBlit?null!=this._flashBitmap&&(this._flashBitmap.set_x(0),this._flashBitmap.set_y(0)):null!=this.canvas&&(this.canvas.set_x(-.5*this.width*(this.scaleX-this.initialZoom)*u.scaleMode.scale.x),this.canvas.set_y(-.5*this.height*(this.scaleY-this.initialZoom)*u.scaleMode.scale.y),this.canvas.set_scaleX(this.totalScaleX),this.canvas.set_scaleY(this.totalScaleY))},follow:function(a,b,c){null==b&&(b=Oj.LOCKON);null== +c&&(c=60/u.updateFramerate);this.style=b;this.target=a;this.set_followLerp(c);a=c=0;this._lastTargetPosition=null;switch(b._hx_index){case 0:null!=this.target&&(c=this.target.get_width(),a=this.target.get_height());var d=(this.width-c)/2;b=(this.height-a)/2-.25*a;var e=a;null==e&&(e=0);null==c&&(c=0);null==b&&(b=0);null==d&&(d=0);a=va._pool.get();null==e&&(e=0);null==c&&(c=0);null==b&&(b=0);null==d&&(d=0);a.x=d;a.y=b;a.width=c;a.height=e;a._inPool=!1;this.deadzone=a;break;case 1:c=this.width/8;a= +this.height/3;d=(this.width-c)/2;b=(this.height-a)/2-.25*a;e=a;null==e&&(e=0);null==c&&(c=0);null==b&&(b=0);null==d&&(d=0);a=va._pool.get();null==e&&(e=0);null==c&&(c=0);null==b&&(b=0);null==d&&(d=0);a.x=d;a.y=b;a.width=c;a.height=e;a._inPool=!1;this.deadzone=a;break;case 2:a=Math.max(this.width,this.height)/4;e=(this.width-a)/2;d=(this.height-a)/2;c=b=a;null==c&&(c=0);null==b&&(b=0);null==d&&(d=0);null==e&&(e=0);a=va._pool.get();null==c&&(c=0);null==b&&(b=0);null==d&&(d=0);null==e&&(e=0);a.x=e;a.y= +d;a.width=b;a.height=c;a._inPool=!1;this.deadzone=a;break;case 3:a=Math.max(this.width,this.height)/8;e=(this.width-a)/2;d=(this.height-a)/2;c=b=a;null==c&&(c=0);null==b&&(b=0);null==d&&(d=0);null==e&&(e=0);a=va._pool.get();null==c&&(c=0);null==b&&(b=0);null==d&&(d=0);null==e&&(e=0);a.x=e;a.y=d;a.width=b;a.height=c;a._inPool=!1;this.deadzone=a;break;case 4:d=c=0;e=this.width;b=this.height;null==b&&(b=0);null==e&&(e=0);null==d&&(d=0);null==c&&(c=0);a=va._pool.get();null==b&&(b=0);null==e&&(e=0);null== +d&&(d=0);null==c&&(c=0);a.x=c;a.y=d;a.width=e;a.height=b;a._inPool=!1;this.deadzone=a;break;case 5:this.deadzone=null}},fade:function(a,b,c,d,e){null==e&&(e=!1);null==c&&(c=!1);null==b&&(b=1);null==a&&(a=-16777216);if(this._fxFadeCompleted||e)this._fxFadeColor=a,0>=b&&(b=1E-6),this._fxFadeIn=c,this._fxFadeDuration=b,this._fxFadeComplete=d,this._fxFadeAlpha=this._fxFadeIn?.999999:1E-6,this._fxFadeCompleted=!1},shake:function(a,b,c,d,e){null==d&&(d=!0);null==b&&(b=.5);null==a&&(a=.05);null==e&&(e=ej.XY); +!d&&0>24&255;u.renderBlit?this.fill((((0>=a?255:a)*this._fxFlashAlpha|0)<<24)+(this._fxFlashColor&16777215)):this.fill(this._fxFlashColor&16777215,!0,(0>=a?255:a)*this._fxFlashAlpha/255,this.canvas.get_graphics())}0>24&255,u.renderBlit?this.fill((((0>=a?255:a)*this._fxFadeAlpha|0)<<24)+(this._fxFadeColor&16777215)):this.fill(this._fxFadeColor&16777215,!0,(0>=a?255:a)*this._fxFadeAlpha/255,this.canvas.get_graphics()))}, +checkResize:function(){if(u.renderBlit){if(this.width!=this.buffer.width||this.height!=this.buffer.height){var a=this.screen.graphic;this.buffer=new L(this.width,this.height,!0,0);this.screen.set_pixels(this.buffer);this.screen.origin.set();this._flashBitmap.set_bitmapData(this.buffer);this._flashRect.width=this.width;this._flashRect.height=this.height;this._fill=Z.dispose(this._fill);this._fill=new L(this.width,this.height,!0,0);u.bitmap.removeIfNoUse(a)}this._blitMatrix.identity();this._blitMatrix.translate(-this.viewOffsetX, +-this.viewOffsetY);this._blitMatrix.scale(this.scaleX,this.scaleY);this._useBlitMatrix=this.scaleXa?0:a;return this.followLerp=null!=b&&a>b?b:a},set_width:function(a){this.width!=a&&0>16&255)/255;b.greenMultiplier=(this.color>>8&255)/255;b.blueMultiplier=(this.color& +255)/255;u.renderBlit?this._flashBitmap.get_transform().set_colorTransform(b):this.canvas.get_transform().set_colorTransform(b);return a},set_antialiasing:function(a){this.antialiasing=a;u.renderBlit&&(this._flashBitmap.smoothing=a);return a},set_x:function(a){this.x=a;this.updateFlashSpritePosition();return a},set_y:function(a){this.y=a;this.updateFlashSpritePosition();return a},set_visible:function(a){null!=this.flashSprite&&this.flashSprite.set_visible(a);return this.visible=a},__class__:Xb,__properties__:p(Ga.prototype.__properties__, +{set_antialiasing:"set_antialiasing",set_color:"set_color",set_zoom:"set_zoom",set_height:"set_height",set_width:"set_width",set_followLerp:"set_followLerp",set_y:"set_y",set_x:"set_x"})});var Oj=B["flixel.FlxCameraFollowStyle"]={__ename__:"flixel.FlxCameraFollowStyle",__constructs__:"LOCKON PLATFORMER TOPDOWN TOPDOWN_TIGHT SCREEN_BY_SCREEN NO_DEAD_ZONE".split(" "),LOCKON:{_hx_index:0,__enum__:"flixel.FlxCameraFollowStyle",toString:g},PLATFORMER:{_hx_index:1,__enum__:"flixel.FlxCameraFollowStyle", +toString:g},TOPDOWN:{_hx_index:2,__enum__:"flixel.FlxCameraFollowStyle",toString:g},TOPDOWN_TIGHT:{_hx_index:3,__enum__:"flixel.FlxCameraFollowStyle",toString:g},SCREEN_BY_SCREEN:{_hx_index:4,__enum__:"flixel.FlxCameraFollowStyle",toString:g},NO_DEAD_ZONE:{_hx_index:5,__enum__:"flixel.FlxCameraFollowStyle",toString:g}},Ff=function(a,b,c){this.major=a;this.minor=b;this.patch=c};h["flixel.system.FlxVersion"]=Ff;Ff.__name__="flixel.system.FlxVersion";Ff.prototype={major:null,minor:null,patch:null,toString:function(){var a= +Ff.sha;""!=a&&(a="@"+a.substring(0,7));return"HaxeFlixel "+this.major+"."+this.minor+"."+this.patch+a},__class__:Ff};var Jh=function(){this._lastUniqueKeyIndex=0;this.reset()};h["flixel.system.frontEnds.BitmapFrontEnd"]=Jh;Jh.__name__="flixel.system.frontEnds.BitmapFrontEnd";Jh.prototype={_cache:null,_lastUniqueKeyIndex:null,onAssetsReload:function(a){for(a=this._cache.keys();a.hasNext();){var b=a.next(),c=this._cache;b=null!=r[b]?c.getReserved(b):c.h[b];if(null!=b&&(null!=b.assetsClass||null!=b.assetsKey))b.onAssetsReload()}}, +onContext:function(){for(var a=this._cache.keys();a.hasNext();){var b=a.next(),c=this._cache;b=null!=r[b]?c.getReserved(b):c.h[b];if(null!=b&&b.isDumped)b.onContext()}},create:function(a,b,c,d,e){null==d&&(d=!1);return wb.fromRectangle(a,b,c,d,e)},add:function(a,b,c){null==b&&(b=!1);return a instanceof wb?wb.fromGraphic(a,b,c):a instanceof L?wb.fromBitmapData(a,b,c):wb.fromAssetKey(R.string(a),b,c)},findKeyForBitmap:function(a){for(var b=this._cache.keys();b.hasNext();){var c=b.next(),d=this._cache; +if((null!=r[c]?d.getReserved(c):d.h[c]).bitmap==a)return c}return null},generateKey:function(a,b,c){null==c&&(c=!1);null==b&&(b=a);if(c||null==b)b=this.getUniqueKey(b);return b},getUniqueKey:function(a){null==a&&(a="pixels");var b=this._cache;if(null==(null!=r[a]?b.getReserved(a):b.h[a]))return a;b=this._lastUniqueKeyIndex;for(var c;;){++b;c=a+b;var d=this._cache;if(null==(null!=r[c]?d.getReserved(c):d.h[c]))break}this._lastUniqueKeyIndex=b;return c},remove:function(a){if(null!=a){var b=a.key;null!= +b&&(Ka.cache.removeBitmapData(b),this._cache.remove(b));a.destroy()}},removeIfNoUse:function(a){null==a||0!=a.get_useCount()||a.persist||this.remove(a)},clearCache:function(){if(null==this._cache)this._cache=new Ea;else for(var a=this._cache.keys();a.hasNext();){var b=a.next(),c=this._cache;c=null!=r[b]?c.getReserved(b):c.h[b];null!=c&&!c.persist&&0>=c.get_useCount()&&(null!=b&&(Ka.cache.removeBitmapData(b),this._cache.remove(b)),c.destroy())}},reset:function(){if(null==this._cache)this._cache=new Ea; +else for(var a=this._cache.keys();a.hasNext();){var b=a.next(),c=this._cache;c=null!=r[b]?c.getReserved(b):c.h[b];null!=b&&(Ka.cache.removeBitmapData(b),this._cache.remove(b));null!=c&&c.destroy()}},__class__:Jh};var Kh=function(){this.useBufferLocking=!1;this.cameraResized=new ye;this.cameraRemoved=new ye;this.cameraAdded=new ye;this.list=[];Xb.defaultCameras=this.list};h["flixel.system.frontEnds.CameraFrontEnd"]=Kh;Kh.__name__="flixel.system.frontEnds.CameraFrontEnd";Kh.prototype={list:null,cameraAdded:null, +cameraRemoved:null,cameraResized:null,useBufferLocking:null,add:function(a){u.game.addChildAt(a.flashSprite,u.game.getChildIndex(u.game._inputContainer));u.cameras.list.push(a);a.ID=u.cameras.list.length-1;this.cameraAdded.dispatch(a);return a},remove:function(a,b){null==b&&(b=!0);var c=this.list.indexOf(a);if(null!=a&&-1!=c){u.game.removeChild(a.flashSprite);this.list.splice(c,1);if(u.renderTile){c=0;for(var d=this.list.length;c";var c=typeof a;"function"==c&&(a.__name__||a.__ename__)&&(c="object");switch(c){case "function":return"";case "object":if(a.__enum__){var d=B[a.__enum__];c=d.__constructs__[a._hx_index];var e=d[c];if(e.__params__){b+="\t";d=[];var f=0;for(e=e.__params__;fb?1:b;b=(2147483646b?1:b;b=(2147483646b?1:b;a.initialSeed=(a.internalSeed=(2147483646c?this.set_curFrame(u.random.int(0,a)):(c>a&&(c=a),this.reversed&&(c=a-c),this.set_curFrame(c)),this.finished&&(c=this.parent,null!=c.finishCallback&& +c.finishCallback(this.name))):this.finished=this.paused=!1},stop:function(){this.paused=this.finished=!0},update:function(a){if(0!=this.delay&&!this.finished&&!this.paused)for(this._frameTimer+=a;this._frameTimer>this.delay&&!this.finished;)this._frameTimer-=this.delay,this.reversed?this.looped&&0==this.curFrame?this.set_curFrame(this.frames.length-1):this.set_curFrame(this.curFrame-1):this.looped&&this.curFrame==this.frames.length-1?this.set_curFrame(0):this.set_curFrame(this.curFrame+1)},set_frameRate:function(a){this.delay= +0;this.frameRate=a;0b?(this.finished=!0,this.curFrame=this.reversed?0:b):this.curFrame=a:this.curFrame=u.random.int(0,b);this.set_curIndex(this.frames[this.curFrame]);this.finished&&null!=this.parent&&(b=this.parent,null!=b.finishCallback&&b.finishCallback(this.name));return a},__class__:ug,__properties__:p(Uc.prototype.__properties__,{set_curFrame:"set_curFrame",set_frameRate:"set_frameRate"})}); +var hg=function(a){this.frameIndex=-1;this._sprite=a;this._animations=new Ea};h["flixel.animation.FlxAnimationController"]=hg;hg.__name__="flixel.animation.FlxAnimationController";hg.__interfaces__=[bb];hg.prototype={frameIndex:null,callback:null,finishCallback:null,_sprite:null,_curAnim:null,_animations:null,_prerotated:null,update:function(a){null!=this._curAnim?this._curAnim.update(a):null!=this._prerotated&&this._prerotated.set_angle(this._sprite.angle)},destroyAnimations:function(){this.clearAnimations(); +this.clearPrerotated()},destroy:function(){this.destroyAnimations();this._sprite=this.callback=this._animations=null},clearPrerotated:function(){null!=this._prerotated&&this._prerotated.destroy();this._prerotated=null},clearAnimations:function(){if(null!=this._animations)for(var a,b=this._animations.keys();b.hasNext();){a=b.next();var c=this._animations;a=null!=r[a]?c.getReserved(a):c.h[a];null!=a&&a.destroy()}this._animations=new Ea;this._curAnim=null},add:function(a,b,c,d,e,f){null==f&&(f=!1);null== +e&&(e=!1);null==d&&(d=!0);null==c&&(c=30);for(var l=b,v=l.length-1;0<=v;)l[v]>=this._sprite.numFrames&&(l==b&&(l=b.slice()),l.splice(v,1)),--v;0c;)c+=360;c=Math.floor(c/this.baked+.5);c=c%this.rotations|0;b!=c&&this.set_curIndex(c);return this.angle=a},set_curIndex:function(a){this.curIndex=a;null!=this.parent&&this.parent.set_frameIndex(a);return a},__class__:Vh,__properties__:p(Uc.prototype.__properties__,{set_angle:"set_angle"})});var Wh=function(){};h["flixel.effects.FlxFlicker"]=Wh;Wh.__name__="flixel.effects.FlxFlicker";Wh.__interfaces__=[bb];Wh.prototype={object:null,timer:null,completionCallback:null, +progressCallback:null,destroy:function(){this.progressCallback=this.completionCallback=this.timer=this.object=null},__class__:Wh};var fj=function(){};h["flixel.effects.postprocess.PostProcess"]=fj;fj.__name__="flixel.effects.postprocess.PostProcess";fj.prototype={__class__:fj};var wb=function(a,b,c){this._destroyOnNoUse=!0;this._useCount=0;this.persist=this.isDumped=this.unique=!1;this.width=this.height=0;this.key=a;this.persist=null!=c?c:wb.defaultPersist;this.frameCollections=new We;this.frameCollectionTypes= +[];this.set_bitmap(b);this.shader=new vg};h["flixel.graphics.FlxGraphic"]=wb;wb.__name__="flixel.graphics.FlxGraphic";wb.__interfaces__=[bb];wb.fromAssetKey=function(a,b,c,d){null==d&&(d=!0);null==b&&(b=!1);if(!d){var e=Ka.exists(a)?Ka.getBitmapData(a,!1):null;return null==e?null:wb.createGraphic(e,c,b,d)}c=u.bitmap.generateKey(a,c,b);e=u.bitmap._cache;e=null!=r[c]?e.getReserved(c):e.h[c];if(null!=e)return e;e=Ka.exists(a)?Ka.getBitmapData(a,!1):null;if(null==e)return null;e=wb.createGraphic(e,c, +b);e.assetsKey=a;return e};wb.fromBitmapData=function(a,b,c,d){null==d&&(d=!0);null==b&&(b=!1);if(!d)return wb.createGraphic(a,c,b,d);d=u.bitmap.findKeyForBitmap(a);var e=null,f=null;if(null!=d){e=u.bitmap._cache;var l=null!=r[d]?e.getReserved(d):e.h[d];e=l.assetsKey;f=l.assetsClass}d=u.bitmap.generateKey(d,c,b);c=u.bitmap._cache;l=null!=r[d]?c.getReserved(d):c.h[d];if(null!=l)return l;l=wb.createGraphic(a,d,b);l.assetsKey=e;l.assetsClass=f;return l};wb.fromGraphic=function(a,b,c){null==b&&(b=!1); +if(!b)return a;c=u.bitmap.generateKey(a.key,c,b);c=wb.createGraphic(a.bitmap,c,b);c.unique=b;c.assetsClass=a.assetsClass;c.assetsKey=a.assetsKey;a=c.key;b=u.bitmap._cache;null!=r[a]?b.setReserved(a,c):b.h[a]=c;return c};wb.fromRectangle=function(a,b,c,d,e){null==d&&(d=!1);d=u.bitmap.generateKey(a+"x"+b+":"+c,e,d);e=u.bitmap._cache;e=null!=r[d]?e.getReserved(d):e.h[d];if(null!=e)return e;a=new L(a,b,!0,c);return wb.createGraphic(a,d)};wb.createGraphic=function(a,b,c,d){null==d&&(d=!0);null==c&&(c= +!1);var e=c;null==e&&(e=!1);a=e?a.clone():a;d?(a=new wb(b,a),a.unique=c,c=a.key,b=u.bitmap._cache,null!=r[c]?b.setReserved(c,a):b.h[c]=a):a=new wb(null,a);return a};wb.prototype={key:null,bitmap:null,width:null,height:null,assetsKey:null,assetsClass:null,persist:null,isDumped:null,shader:null,imageFrame:null,frameCollections:null,frameCollectionTypes:null,unique:null,_imageFrame:null,_useCount:null,_destroyOnNoUse:null,dump:function(){},undump:function(){var a=this.getBitmapFromSystem();null!=a&& +this.set_bitmap(a);this.isDumped=!1},onContext:function(){this.isDumped&&(this.undump(),this.dump())},onAssetsReload:function(){if(null!=this.assetsClass||null!=this.assetsKey){var a=this.isDumped;this.undump();a&&this.dump()}},destroy:function(){this.set_bitmap(Z.dispose(this.bitmap));this._imageFrame=this.assetsClass=this.assetsKey=this.key=this.shader=null;if(null!=this.frameCollections){for(var a,b=0,c=this.frameCollectionTypes;b=a&&this._destroyOnNoUse&&!this.persist&&u.bitmap.remove(this);return this._useCount=a},get_imageFrame:function(){if(null==this._imageFrame){var a=0,b=0,c=this.bitmap.width,d=this.bitmap.height;null==d&&(d=0);null==c&&(c=0);null==b&&(b=0);null==a&&(a=0);var e=va._pool.get();null==d&&(d=0);null==c&&(c=0);null==b&&(b=0);null==a&&(a=0);e.x=a;e.y=b;e.width=c;e.height=d;e._inPool=!1;this._imageFrame=Kd.fromRectangle(this,e)}return this._imageFrame},set_bitmap:function(a){null!= +a&&(this.bitmap=a,this.width=this.bitmap.width,this.height=this.bitmap.height);return a},__class__:wb,__properties__:{get_imageFrame:"get_imageFrame",set_useCount:"set_useCount",get_useCount:"get_useCount",set_bitmap:"set_bitmap"}};var Sa=function(a,b){null==b&&(b=0);null==a&&(a=0);this.x=a;this.y=b};h["openfl.geom.Point"]=Sa;Sa.__name__="openfl.geom.Point";Sa.prototype={x:null,y:null,copyFrom:function(a){this.x=a.x;this.y=a.y},setTo:function(a,b){this.x=a;this.y=b},__toLimeVector2:function(){null== +Sa.__limeVector2&&(Sa.__limeVector2=new ze);var a=Sa.__limeVector2;a.x=this.x;a.y=this.y;return Sa.__limeVector2},__class__:Sa};var kd=function(a,b,c){this.parent=a;this.type=b;null==c?(b=ra._pool.get().set(0,0),b._inPool=!1):b=c;this.border=b;this.frames=[];this.framesHash=new Ea;null!=a&&a.addFrameCollection(this)};h["flixel.graphics.frames.FlxFramesCollection"]=kd;kd.__name__="flixel.graphics.frames.FlxFramesCollection";kd.__interfaces__=[bb];kd.prototype={frames:null,framesHash:null,parent:null, +type:null,border:null,destroy:function(){this.frames=Z.destroyArray(this.frames);this.border=Z.put(this.border);this.type=this.parent=this.framesHash=null},addSpriteSheetFrame:function(a){var b=new Xe(this.parent);b.set_frame(this.checkFrame(a));b.sourceSize.set(a.width,a.height);b.offset.set(0,0);return this.pushFrame(b)},checkFrame:function(a,b){var c=a.x;b=this.parent.width;c=0>c?0:c;b=null!=b&&c>b?b:c;var d=a.y;c=this.parent.height;d=0>d?0:d;c=null!=c&&d>c?c:d;var e=a.x+a.width;d=this.parent.width; +var f=0>e?0:e,l=a.y+a.height;e=this.parent.height;var v=0>l?0:l;l=b;var m=c;b=(null!=d&&f>d?d:f)-b;c=(null!=e&&v>e?e:v)-c;null==c&&(c=0);null==b&&(b=0);null==m&&(m=0);null==l&&(l=0);a.x=l;a.y=m;a.width=b;a.height=c;return a},pushFrame:function(a){var b=a.name;if(null!=b){var c=this.framesHash;c=null!=r[b]?c.existsReserved(b):c.h.hasOwnProperty(b)}else c=!1;if(c)return a=this.framesHash,null!=r[b]?a.getReserved(b):a.h[b];this.frames.push(a);a.cacheFrameMatrix();null!=b&&(c=this.framesHash,null!=r[b]? +c.setReserved(b,a):c.h[b]=a);return a},__class__:kd};var Xe=function(a,b,c,d){null==d&&(d=!1);null==c&&(c=!1);null==b&&(b=0);this.matrix=new we;this.rect=new qa;this.point2=new Sa;this.point1=new Sa;this.parent=a;this.angle=b;this.flipX=c;this.flipY=d;this.type=0;a=ra._pool.get().set(0,0);a._inPool=!1;this.sourceSize=a;a=ra._pool.get().set(0,0);a._inPool=!1;this.offset=a;this.blitMatrix=Array(6);u.renderTile&&(this.tileMatrix=Array(6))};h["flixel.graphics.frames.FlxFrame"]=Xe;Xe.__name__="flixel.graphics.frames.FlxFrame"; +Xe.__interfaces__=[bb];Xe.prototype={point1:null,point2:null,rect:null,matrix:null,name:null,frame:null,uv:null,parent:null,angle:null,flipX:null,flipY:null,sourceSize:null,offset:null,type:null,tileMatrix:null,blitMatrix:null,cacheFrameMatrix:function(){var a=this.matrix,b=!0;null==b&&(b=!0);a.identity();b&&a.translate(-this.frame.x,-this.frame.y);90==this.angle?(a.setTo(-a.b,a.a,-a.d,a.c,-a.ty,a.tx),a.translate(this.frame.height,0)):-90==this.angle&&(a.setTo(a.b,-a.a,a.d,-a.c,a.ty,-a.tx),a.translate(0, +this.frame.width));a.translate(this.offset.x,this.offset.y);this.blitMatrix[0]=this.matrix.a;this.blitMatrix[1]=this.matrix.b;this.blitMatrix[2]=this.matrix.c;this.blitMatrix[3]=this.matrix.d;this.blitMatrix[4]=this.matrix.tx;this.blitMatrix[5]=this.matrix.ty;u.renderTile&&(a=this.matrix,b=!1,null==b&&(b=!0),a.identity(),b&&a.translate(-this.frame.x,-this.frame.y),90==this.angle?(a.setTo(-a.b,a.a,-a.d,a.c,-a.ty,a.tx),a.translate(this.frame.height,0)):-90==this.angle&&(a.setTo(a.b,-a.a,a.d,-a.c,a.ty, +-a.tx),a.translate(0,this.frame.width)),a.translate(this.offset.x,this.offset.y),this.tileMatrix[0]=this.matrix.a,this.tileMatrix[1]=this.matrix.b,this.tileMatrix[2]=this.matrix.c,this.tileMatrix[3]=this.matrix.d,this.tileMatrix[4]=this.matrix.tx,this.tileMatrix[5]=this.matrix.ty)},prepareTransformedBlitMatrix:function(a,b,c,d){null==d&&(d=!1);null==c&&(c=!1);null==b&&(b=0);a.a=this.blitMatrix[0];a.b=this.blitMatrix[1];a.c=this.blitMatrix[2];a.d=this.blitMatrix[3];a.tx=this.blitMatrix[4];a.ty=this.blitMatrix[5]; +null==d&&(d=!1);null==c&&(c=!1);null==b&&(b=0);var e=this.sourceSize.x|0,f=this.sourceSize.y|0;if(0!=b){var l=e;e=f;f=l;if(90==b)a.setTo(-a.b,a.a,-a.d,a.c,-a.ty,a.tx),a.translate(this.sourceSize.y,0);else if(-90==b||-90==b)a.setTo(a.b,-a.a,a.d,-a.c,a.ty,-a.tx),a.translate(0,this.sourceSize.x)}c&&(a.scale(-1,1),a.translate(e,0));d&&(a.scale(1,-1),a.translate(0,f));return a},prepareMatrix:function(a,b,c,d){null==d&&(d=!1);null==c&&(c=!1);null==b&&(b=0);if(u.renderBlit)return a.identity(),a;a.a=this.tileMatrix[0]; +a.b=this.tileMatrix[1];a.c=this.tileMatrix[2];a.d=this.tileMatrix[3];a.tx=this.tileMatrix[4];a.ty=this.tileMatrix[5];c=c!=this.flipX;d=d!=this.flipY;if(0==b&&!c&&!d)return a;null==d&&(d=!1);null==c&&(c=!1);null==b&&(b=0);var e=this.sourceSize.x|0,f=this.sourceSize.y|0;if(0!=b){var l=e;e=f;f=l;if(90==b)a.setTo(-a.b,a.a,-a.d,a.c,-a.ty,a.tx),a.translate(this.sourceSize.y,0);else if(-90==b||-90==b)a.setTo(a.b,-a.a,a.d,-a.c,a.ty,-a.tx),a.translate(0,this.sourceSize.x)}c&&(a.scale(-1,1),a.translate(e,0)); +d&&(a.scale(1,-1),a.translate(0,f));return a},paint:function(a,b,c,d){null==d&&(d=!1);null==c&&(c=!1);null==b&&(b=this.point1,b.setTo(0,0));var e=0,f=c;null==d&&(d=!1);null==f&&(f=!1);null==e&&(e=0);var l=this.sourceSize.x|0,v=this.sourceSize.y|0;0!=e&&(e=l,l=v,v=e);null!=a&&d&&(a=Z.disposeIfNotEqual(a,l,v));null==a||f?null==a&&(a=new L(l,v,!0,0)):(this.rect.setTo(b.x,b.y,l,v),a.fillRect(this.rect,0));if(2==this.type)return a;0==this.angle?(f=this.offset,e=this.point2,null==e&&(e=new Sa),e.x=f.x, +e.y=f.y,this.point2.x+=b.x,this.point2.y+=b.y,b=this.parent.bitmap,f=this.frame,e=this.rect,null==e&&(e=new qa),e.x=f.x,e.y=f.y,e.width=f.width,e.height=f.height,a.copyPixels(b,e,this.point2,null,null,c)):(c=this.matrix,c.a=this.blitMatrix[0],c.b=this.blitMatrix[1],c.c=this.blitMatrix[2],c.d=this.blitMatrix[3],c.tx=this.blitMatrix[4],c.ty=this.blitMatrix[5],this.matrix.translate(b.x,b.y),b=this.matrix,f=this.frame.x,c=this.frame.y,null==c&&(c=0),null==f&&(f=0),null==c&&(c=0),null==f&&(f=0),c=ra._pool.get().set(f, +c),c._inPool=!1,c._weak=!0,f=this.frame,f=f.x+f.width,e=this.frame,e=e.y+e.height,null==e&&(e=0),null==f&&(f=0),null==e&&(e=0),null==f&&(f=0),f=ra._pool.get().set(f,e),f._inPool=!1,f._weak=!0,c.set(c.x*b.a+c.y*b.c+b.tx,c.x*b.b+c.y*b.d+b.ty),f.set(f.x*b.a+f.y*b.c+b.tx,f.x*b.b+f.y*b.d+b.ty),b=va._pool.get(),v=l=d=e=0,null==v&&(v=0),null==l&&(l=0),null==d&&(d=0),null==e&&(e=0),b.x=e,b.y=d,b.width=l,b.height=v,b._inPool=!1,l=Math.min(c.x,f.x),e=Math.min(c.y,f.y),v=Math.max(c.x,f.x),d=Math.max(c.y,f.y), +c._weak&&c.put(),f._weak&&f.put(),c=l,f=e,l=v-l,e=d-e,null==e&&(e=0),null==l&&(l=0),null==f&&(f=0),null==c&&(c=0),b.x=c,b.y=f,b.width=l,b.height=e,c=this.rect,null==c&&(c=new qa),c.x=b.x,c.y=b.y,c.width=b.width,c.height=b.height,b._inPool||(b._inPool=!0,b._weak=!1,va._pool.putUnsafe(b)),a.draw(this.parent.bitmap,this.matrix,null,null,this.rect));return a},paintRotatedAndFlipped:function(a,b,c,d,e,f,l){null==l&&(l=!1);null==f&&(f=!1);null==e&&(e=!1);null==d&&(d=!1);null==c&&(c=0);if(2==this.type&& +0==c)return this.paint(a,b,f,l);null==b&&(b=this.point2,b.setTo(0,0));var v=c;null==l&&(l=!1);null==f&&(f=!1);null==v&&(v=0);var m=this.sourceSize.x|0,g=this.sourceSize.y|0;0!=v&&(v=m,m=g,g=v);null!=a&&l&&(a=Z.disposeIfNotEqual(a,m,g));null==a||f?null==a&&(a=new L(m,g,!0,0)):(this.rect.setTo(b.x,b.y,m,g),a.fillRect(this.rect,0));if(2==this.type)return a;this.prepareTransformedBlitMatrix(this.matrix,c,d!=this.flipX,e!=this.flipY);this.matrix.translate(b.x,b.y);c=this.matrix;d=this.frame.x;b=this.frame.y; +null==b&&(b=0);null==d&&(d=0);null==b&&(b=0);null==d&&(d=0);b=ra._pool.get().set(d,b);b._inPool=!1;b._weak=!0;d=this.frame;d=d.x+d.width;e=this.frame;e=e.y+e.height;null==e&&(e=0);null==d&&(d=0);null==e&&(e=0);null==d&&(d=0);d=ra._pool.get().set(d,e);d._inPool=!1;d._weak=!0;b.set(b.x*c.a+b.y*c.c+c.tx,b.x*c.b+b.y*c.d+c.ty);d.set(d.x*c.a+d.y*c.c+c.tx,d.x*c.b+d.y*c.d+c.ty);c=va._pool.get();l=f=v=e=0;null==l&&(l=0);null==f&&(f=0);null==v&&(v=0);null==e&&(e=0);c.x=e;c.y=v;c.width=f;c.height=l;c._inPool= +!1;f=Math.min(b.x,d.x);e=Math.min(b.y,d.y);l=Math.max(b.x,d.x);v=Math.max(b.y,d.y);b._weak&&b.put();d._weak&&d.put();b=f;d=e;f=l-f;e=v-e;null==e&&(e=0);null==f&&(f=0);null==d&&(d=0);null==b&&(b=0);c.x=b;c.y=d;c.width=f;c.height=e;b=this.rect;null==b&&(b=new qa);b.x=c.x;b.y=c.y;b.width=c.width;b.height=c.height;c._inPool||(c._inPool=!0,c._weak=!1,va._pool.putUnsafe(c));a.draw(this.parent.bitmap,this.matrix,null,null,this.rect);return a},clipTo:function(a,b){null==b?b=new Xe(this.parent,this.angle): +(b.parent=this.parent,b.angle=this.angle,b.set_frame(Z.put(b.frame)));var c=b.sourceSize,d=this.sourceSize;c.set_x(d.x);c.set_y(d.y);d._weak&&d.put();b.name=this.name;if(2==this.type)return b.type=2,b.offset.set(0,0),b;var e=c=0;null==e&&(e=0);null==c&&(c=0);d=va._pool.get();var f=0,l=0;null==l&&(l=0);null==f&&(f=0);null==e&&(e=0);null==c&&(c=0);d.x=c;d.y=e;d.width=f;d.height=l;d._inPool=!1;d.width=this.frame.width;d.height=this.frame.height;0!=this.angle&&(d.width=this.frame.height,d.height=this.frame.width); +a.x+=-this.offset.x;a.y+=-this.offset.y;c=d.intersection(a);Z.put(d);if(0==c.width||0==c.height)b.type=2,l=f=e=d=0,null==l&&(l=0),null==f&&(f=0),null==e&&(e=0),null==d&&(d=0),c.x=d,c.y=e,c.width=f,c.height=l,b.set_frame(c),b.offset.set(0,0);else{b.type=0;b.offset.set(c.x,c.y).addPoint(this.offset);e=c.x;d=c.y;null==d&&(d=0);null==e&&(e=0);null==d&&(d=0);null==e&&(e=0);d=ra._pool.get().set(e,d);d._inPool=!1;d._weak=!0;f=c.x+c.width;e=c.y+c.height;null==e&&(e=0);null==f&&(f=0);null==e&&(e=0);null== +f&&(f=0);e=ra._pool.get().set(f,e);e._inPool=!1;e._weak=!0;this.matrix.identity();-90==this.angle?(f=this.matrix,f.setTo(-f.b,f.a,-f.d,f.c,-f.ty,f.tx),this.matrix.translate(this.frame.width,0)):90==this.angle&&(f=this.matrix,f.setTo(f.b,-f.a,f.d,-f.c,f.ty,-f.tx),this.matrix.translate(0,this.frame.height));0!=this.angle&&(f=this.matrix,d.set(d.x*f.a+d.y*f.c+f.tx,d.x*f.b+d.y*f.d+f.ty),f=this.matrix,e.set(e.x*f.a+e.y*f.c+f.tx,e.x*f.b+e.y*f.d+f.ty));var v=Math.min(d.x,e.x);f=Math.min(d.y,e.y);var m=Math.max(d.x, +e.x);l=Math.max(d.y,e.y);d._weak&&d.put();e._weak&&e.put();d=v;e=f;v=m-v;f=l-f;null==f&&(f=0);null==v&&(v=0);null==e&&(e=0);null==d&&(d=0);c.x=d;c.y=e;c.width=v;c.height=f;c.x+=this.frame.x;c.y+=this.frame.y;b.set_frame(c);b.cacheFrameMatrix()}a.x+=this.offset.x;a.y+=this.offset.y;return b},copyTo:function(a){null==a?a=new Xe(this.parent,this.angle):(a.parent=this.parent,a.angle=this.angle,a.set_frame(Z.put(a.frame)));var b=a.offset,c=this.offset;b.set_x(c.x);b.set_y(c.y);c._weak&&c.put();a.flipX= +this.flipX;a.flipY=this.flipY;b=a.sourceSize;c=this.sourceSize;b.set_x(c.x);b.set_y(c.y);c._weak&&c.put();b=va._pool.get();var d=c=0,e=0,f=0;null==f&&(f=0);null==e&&(e=0);null==d&&(d=0);null==c&&(c=0);b.x=c;b.y=d;b.width=e;b.height=f;b._inPool=!1;c=this.frame;b.x=c.x;b.y=c.y;b.width=c.width;b.height=c.height;c._weak&&!c._inPool&&(c._inPool=!0,c._weak=!1,va._pool.putUnsafe(c));a.set_frame(b);a.type=this.type;a.name=this.name;a.cacheFrameMatrix();return a},destroy:function(){this.parent=this.name=null; +this.sourceSize=Z.put(this.sourceSize);this.offset=Z.put(this.offset);this.set_frame(Z.put(this.frame));this.uv=Z.put(this.uv);this.tileMatrix=this.blitMatrix=null},set_frame:function(a){if(null!=a){if(null==this.uv){var b=va._pool.get(),c=0,d=0,e=0,f=0;null==f&&(f=0);null==e&&(e=0);null==d&&(d=0);null==c&&(c=0);b.x=c;b.y=d;b.width=e;b.height=f;b._inPool=!1;this.uv=b}b=this.uv;c=a.x/this.parent.width;d=a.y/this.parent.height;e=(a.x+a.width)/this.parent.width;f=(a.y+a.height)/this.parent.height;null== +f&&(f=0);null==e&&(e=0);null==d&&(d=0);null==c&&(c=0);b.x=c;b.y=d;b.width=e;b.height=f}return this.frame=a},__class__:Xe,__properties__:{set_frame:"set_frame"}};var gj=B["flixel.graphics.frames.FlxFrameCollectionType"]={__ename__:"flixel.graphics.frames.FlxFrameCollectionType",__constructs__:"IMAGE TILES ATLAS FONT USER FILTER".split(" "),IMAGE:{_hx_index:0,__enum__:"flixel.graphics.frames.FlxFrameCollectionType",toString:g},TILES:{_hx_index:1,__enum__:"flixel.graphics.frames.FlxFrameCollectionType", +toString:g},ATLAS:{_hx_index:2,__enum__:"flixel.graphics.frames.FlxFrameCollectionType",toString:g},FONT:{_hx_index:3,__enum__:"flixel.graphics.frames.FlxFrameCollectionType",toString:g},USER:(n=function(a){return{_hx_index:4,type:a,__enum__:"flixel.graphics.frames.FlxFrameCollectionType",toString:g}},n.__params__=["type"],n),FILTER:{_hx_index:5,__enum__:"flixel.graphics.frames.FlxFrameCollectionType",toString:g}},Kd=function(a,b){kd.call(this,a,gj.IMAGE,b)};h["flixel.graphics.frames.FlxImageFrame"]= +Kd;Kd.__name__="flixel.graphics.frames.FlxImageFrame";Kd.fromGraphic=function(a,b){if(null==a)return null;var c=b;if(null==c){var d=0,e=0,f=a.width;c=a.height;null==c&&(c=0);null==f&&(f=0);null==e&&(e=0);null==d&&(d=0);var l=c;null==l&&(l=0);null==f&&(f=0);null==e&&(e=0);null==d&&(d=0);c=va._pool.get();null==l&&(l=0);null==f&&(f=0);null==e&&(e=0);null==d&&(d=0);c.x=d;c.y=e;c.width=f;c.height=l;c._inPool=!1;c._weak=!0}c=Kd.findFrame(a,c);if(null!=c)return c;c=new Kd(a);null==b?(f=e=0,b=a.width,d=a.height, +null==d&&(d=0),null==b&&(b=0),null==f&&(f=0),null==e&&(e=0),a=va._pool.get(),null==d&&(d=0),null==b&&(b=0),null==f&&(f=0),null==e&&(e=0),a.x=e,a.y=f,a.width=b,a.height=d,a._inPool=!1,b=a):(0==b.width&&(b.width=a.width-b.x),0==b.height&&(b.height=a.height-b.y));c.addSpriteSheetFrame(b);return c};Kd.fromRectangle=function(a,b){a=u.bitmap.add(a,!1);return Kd.fromGraphic(a,b)};Kd.findFrame=function(a,b,c){if(null==c){var d=c=0;null==d&&(d=0);null==c&&(c=0);c=ra._pool.get().set(c,d);c._inPool=!1;c._weak= +!0}d=gj.IMAGE;var e=a.frameCollections.get(d);null==e&&(e=[],a.frameCollections.set(d,e));a=e;for(d=0;d=Math.abs(b.x-f.x)&&1E-7>=Math.abs(b.y-f.y)&&1E-7>=Math.abs(b.width-f.width)&&1E-7>=Math.abs(b.height-f.height);f._weak&&!f._inPool&&(f._inPool=!0,f._weak=!1,va._pool.putUnsafe(f));l?(f=e.border,l=1E-7>=Math.abs(c.x-f.x)&&1E-7>=Math.abs(c.y-f.y),f._weak&&f.put(),f=l):f=!1;if(f&&2!=e.get_frame().type)return e}return null};Kd.__super__=kd; +Kd.prototype=p(kd.prototype,{frame:null,destroy:function(){kd.prototype.destroy.call(this);this.frame=Z.destroy(this.get_frame())},get_frame:function(){return this.frames[0]},__class__:Kd,__properties__:{get_frame:"get_frame"}});var ee=function(a,b){this.numRows=this.numCols=0;kd.call(this,a,gj.TILES,b)};h["flixel.graphics.frames.FlxTileFrames"]=ee;ee.__name__="flixel.graphics.frames.FlxTileFrames";ee.fromGraphic=function(a,b,c,d){var e=ee.findFrame(a,b,c,null,d);if(null!=e)return e;if(null==c){var f= +0,l=0,v=a.width;e=a.height;null==e&&(e=0);null==v&&(v=0);null==l&&(l=0);null==f&&(f=0);c=va._pool.get();null==e&&(e=0);null==v&&(v=0);null==l&&(l=0);null==f&&(f=0);c.x=f;c.y=l;c.width=v;c.height=e;c._inPool=!1}else 0==c.width&&(c.width=a.width-c.x),0==c.height&&(c.height=a.height-c.y);null==d&&(f=e=0,null==f&&(f=0),null==e&&(e=0),e=ra._pool.get().set(e,f),e._inPool=!1,d=e);e=new ee(a);e.region=c;e.atlasFrame=null;e.tileSize=b;e.tileSpacing=d;c.x=Math.floor(c.x);c.y=Math.floor(c.y);c.width=Math.floor(c.width); +c.height=Math.floor(c.height);d.set_x(Math.floor(d.x));d.set_y(Math.floor(d.y));b.set_x(Math.floor(b.x));b.set_y(Math.floor(b.y));a=b.x+d.x;f=b.y+d.y;v=0==b.y?1:(c.height+d.y)/f|0;d=0==b.x?1:(c.width+d.x)/a|0;for(l=0;l=Math.abs(c.x-b.x)&&1E-7>=Math.abs(c.y-b.y)&&1E-7>=Math.abs(c.width-b.width)&&1E-7>=Math.abs(c.height-b.height),b._weak&&!b._inPool&&(b._inPool=!0,b._weak=!1,va._pool.putUnsafe(b))):c=!1;c?(c=this.tileSize,c=1E-7>=Math.abs(c.x-a.x)&&1E-7>=Math.abs(c.y-a.y),a._weak&&a.put(),a=c):a=!1;a?(a=this.tileSpacing,a=1E-7>=Math.abs(a.x-d.x)&&1E-7>=Math.abs(a.y-d.y),d._weak&&d.put()):a=!1;return a?(a=this.border,a=1E-7>=Math.abs(a.x-e.x)&&1E-7>=Math.abs(a.y-e.y),e._weak&&e.put(),a):!1},destroy:function(){kd.prototype.destroy.call(this); +this.atlasFrame=null;this.region=Z.put(this.region);this.tileSize=Z.put(this.tileSize);this.tileSpacing=Z.put(this.tileSpacing)},__class__:ee});var cc=function(){this.blending=0;this.antialiasing=this.colored=this.hasColorOffsets=!1};h["flixel.graphics.tile.FlxDrawBaseItem"]=cc;cc.__name__="flixel.graphics.tile.FlxDrawBaseItem";cc.blendToInt=function(a){return 0};cc.prototype={nextTyped:null,next:null,graphics:null,antialiasing:null,colored:null,hasColorOffsets:null,blending:null,blend:null,type:null, +reset:function(){this.graphics=null;this.antialiasing=!1;this.next=this.nextTyped=null},render:function(a){cc.drawCalls++},__class__:cc};var Jj=B["flixel.graphics.tile.FlxDrawItemType"]={__ename__:"flixel.graphics.tile.FlxDrawItemType",__constructs__:["TILES","TRIANGLES"],TILES:{_hx_index:0,__enum__:"flixel.graphics.tile.FlxDrawItemType",toString:g},TRIANGLES:{_hx_index:1,__enum__:"flixel.graphics.tile.FlxDrawItemType",toString:g}},og=function(){cc.call(this);this.type=Jj.TILES;this.rects=Da.toFloatVector(null); +this.transforms=Da.toFloatVector(null);this.alphas=[]};h["flixel.graphics.tile.FlxDrawQuadsItem"]=og;og.__name__="flixel.graphics.tile.FlxDrawQuadsItem";og.__super__=cc;og.prototype=p(cc.prototype,{shader:null,rects:null,transforms:null,alphas:null,colorMultipliers:null,colorOffsets:null,reset:function(){cc.prototype.reset.call(this);this.rects.set_length(0);this.transforms.set_length(0);this.alphas.splice(0,this.alphas.length);null!=this.colorMultipliers&&this.colorMultipliers.splice(0,this.colorMultipliers.length); +null!=this.colorOffsets&&this.colorOffsets.splice(0,this.colorOffsets.length)},addQuad:function(a,b,c){a=a.frame;this.rects.push(a.x);this.rects.push(a.y);this.rects.push(a.width);this.rects.push(a.height);this.transforms.push(b.a);this.transforms.push(b.b);this.transforms.push(b.c);this.transforms.push(b.d);this.transforms.push(b.tx);this.transforms.push(b.ty);this.alphas.push(null!=c?c.alphaMultiplier:1);this.alphas.push(null!=c?c.alphaMultiplier:1);this.alphas.push(null!=c?c.alphaMultiplier:1); +this.alphas.push(null!=c?c.alphaMultiplier:1);if(this.colored||this.hasColorOffsets)for(null==this.colorMultipliers&&(this.colorMultipliers=[]),null==this.colorOffsets&&(this.colorOffsets=[]),b=0;4>b;)b++,null!=c?(this.colorMultipliers.push(c.redMultiplier),this.colorMultipliers.push(c.greenMultiplier),this.colorMultipliers.push(c.blueMultiplier),this.colorOffsets.push(c.redOffset),this.colorOffsets.push(c.greenOffset),this.colorOffsets.push(c.blueOffset),this.colorOffsets.push(c.alphaOffset)):(this.colorMultipliers.push(1), +this.colorMultipliers.push(1),this.colorMultipliers.push(1),this.colorOffsets.push(0),this.colorOffsets.push(0),this.colorOffsets.push(0),this.colorOffsets.push(0)),this.colorMultipliers.push(1)},render:function(a){if(0!=this.rects.get_length()){var b=null!=this.shader?this.shader:this.graphics.shader;b.bitmap.input=this.graphics.bitmap;b.bitmap.filter=a.antialiasing||this.antialiasing?4:5;b.alpha.value=this.alphas;if(this.colored||this.hasColorOffsets)b.colorMultiplier.value=this.colorMultipliers, +b.colorOffset.value=this.colorOffsets;var c=b.hasTransform;null==c.value&&(c.value=[]);c.value[0]=!0;c=b.hasColorTransform;null==c.value&&(c.value=[]);c.value[0]=this.colored||this.hasColorOffsets;a.canvas.get_graphics().overrideBlendMode(this.blend);a.canvas.get_graphics().beginShaderFill(b);a.canvas.get_graphics().drawQuads(this.rects,null,this.transforms);cc.prototype.render.call(this,a)}},__class__:og});var Xh=function(){this.verticesPosition=this.indicesPosition=this.colorsPosition=0;this.colors= +Da.toIntVector(null);this.uvtData=Da.toFloatVector(null);this.indices=Da.toIntVector(null);this.vertices=Da.toFloatVector(null);cc.call(this);this.type=Jj.TRIANGLES};h["flixel.graphics.tile.FlxDrawTrianglesItem"]=Xh;Xh.__name__="flixel.graphics.tile.FlxDrawTrianglesItem";Xh.__super__=cc;Xh.prototype=p(cc.prototype,{vertices:null,indices:null,uvtData:null,colors:null,verticesPosition:null,indicesPosition:null,colorsPosition:null,render:function(a){if(u.renderTile&&!(0>=this.get_numTriangles())){var b= +a.antialiasing||this.antialiasing;a.canvas.get_graphics().beginBitmapFill(this.graphics.bitmap,null,!0,b);a.canvas.get_graphics().drawTriangles(this.vertices,this.indices,this.uvtData,1);a.canvas.get_graphics().endFill();cc.prototype.render.call(this,a)}},reset:function(){cc.prototype.reset.call(this);this.vertices.splice(0,this.vertices.get_length());this.indices.splice(0,this.indices.get_length());this.uvtData.splice(0,this.uvtData.get_length());this.colors.splice(0,this.colors.get_length());this.colorsPosition= +this.indicesPosition=this.verticesPosition=0},get_numTriangles:function(){return this.indices.get_length()/3|0},__class__:Xh});var sc=function(a){this.byteCode=a;this.precisionHint=1;this.__glSourceDirty=!0;this.__numPasses=1;this.__data=Yh._new(a)};h["openfl.display.Shader"]=sc;sc.__name__="openfl.display.Shader";sc.prototype={byteCode:null,glProgram:null,precisionHint:null,program:null,__alpha:null,__bitmap:null,__colorMultiplier:null,__colorOffset:null,__context:null,__data:null,__glFragmentSource:null, +__glSourceDirty:null,__glVertexSource:null,__hasColorTransform:null,__inputBitmapData:null,__isGenerated:null,__matrix:null,__numPasses:null,__paramBool:null,__paramFloat:null,__paramInt:null,__position:null,__textureCoord:null,__texture:null,__textureSize:null,__clearUseArray:function(){for(var a=0,b=this.__paramBool;a 0.0) {\n\n\t\t\t\tgl_FragColor = vec4 (color.rgb * color.a * openfl_Alphav, color.a * openfl_Alphav);\n\n\t\t\t} else {\n\n\t\t\t\tgl_FragColor = vec4 (0.0, 0.0, 0.0, 0.0);\n\n\t\t\t}\n\n\t\t} else {\n\n\t\t\tgl_FragColor = color * openfl_Alphav;\n\n\t\t}\n\n\t\t}"); +null==this.__glVertexSource&&(this.__glVertexSource="attribute float openfl_Alpha;\n\t\tattribute vec4 openfl_ColorMultiplier;\n\t\tattribute vec4 openfl_ColorOffset;\n\t\tattribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\n\t\tvarying float openfl_Alphav;\n\t\tvarying vec4 openfl_ColorMultiplierv;\n\t\tvarying vec4 openfl_ColorOffsetv;\n\t\tvarying vec2 openfl_TextureCoordv;\n\n\t\tuniform mat4 openfl_Matrix;\n\t\tuniform bool openfl_HasColorTransform;\n\t\tuniform vec2 openfl_TextureSize;\n\n\t\tvoid main(void) {\n\n\t\t\topenfl_Alphav = openfl_Alpha;\n\t\topenfl_TextureCoordv = openfl_TextureCoord;\n\n\t\tif (openfl_HasColorTransform) {\n\n\t\t\topenfl_ColorMultiplierv = openfl_ColorMultiplier;\n\t\t\topenfl_ColorOffsetv = openfl_ColorOffset / 255.0;\n\n\t\t}\n\n\t\tgl_Position = openfl_Matrix * openfl_Position;\n\n\t\t}"); +sc.call(this,a);this.__isGenerated=!0;this.__initGL()};h["openfl.display.GraphicsShader"]=Ae;Ae.__name__="openfl.display.GraphicsShader";Ae.__super__=sc;Ae.prototype=p(sc.prototype,{openfl_Alpha:null,openfl_ColorMultiplier:null,openfl_ColorOffset:null,openfl_Position:null,openfl_TextureCoord:null,openfl_Matrix:null,openfl_HasColorTransform:null,openfl_TextureSize:null,bitmap:null,__class__:Ae});var vg=function(){null==this.__glFragmentSource&&(this.__glFragmentSource="\r\n\t\tvarying float openfl_Alphav;\n\t\tvarying vec4 openfl_ColorMultiplierv;\n\t\tvarying vec4 openfl_ColorOffsetv;\n\t\tvarying vec2 openfl_TextureCoordv;\n\n\t\tuniform bool openfl_HasColorTransform;\n\t\tuniform vec2 openfl_TextureSize;\n\t\tuniform sampler2D bitmap;\n\r\n\t\tuniform bool hasTransform;\r\n\t\tuniform bool hasColorTransform;\r\n\r\n\t\tvec4 flixel_texture2D(sampler2D bitmap, vec2 coord)\r\n\t\t{\r\n\t\t\tvec4 color = texture2D(bitmap, coord);\r\n\t\t\tif (!hasTransform)\r\n\t\t\t{\r\n\t\t\t\treturn color;\r\n\t\t\t}\r\n\r\n\t\t\tif (color.a == 0.0)\r\n\t\t\t{\r\n\t\t\t\treturn vec4(0.0, 0.0, 0.0, 0.0);\r\n\t\t\t}\r\n\r\n\t\t\tif (!hasColorTransform)\r\n\t\t\t{\r\n\t\t\t\treturn color * openfl_Alphav;\r\n\t\t\t}\r\n\r\n\t\t\tcolor = vec4(color.rgb / color.a, color.a);\r\n\r\n\t\t\tmat4 colorMultiplier = mat4(0);\r\n\t\t\tcolorMultiplier[0][0] = openfl_ColorMultiplierv.x;\r\n\t\t\tcolorMultiplier[1][1] = openfl_ColorMultiplierv.y;\r\n\t\t\tcolorMultiplier[2][2] = openfl_ColorMultiplierv.z;\r\n\t\t\tcolorMultiplier[3][3] = openfl_ColorMultiplierv.w;\r\n\r\n\t\t\tcolor = clamp(openfl_ColorOffsetv + (color * colorMultiplier), 0.0, 1.0);\r\n\r\n\t\t\tif (color.a > 0.0)\r\n\t\t\t{\r\n\t\t\t\treturn vec4(color.rgb * color.a * openfl_Alphav, color.a * openfl_Alphav);\r\n\t\t\t}\r\n\t\t\treturn vec4(0.0, 0.0, 0.0, 0.0);\r\n\t\t}\r\n\t\r\n\t\t\r\n\t\tvoid main(void)\r\n\t\t{\r\n\t\t\tgl_FragColor = flixel_texture2D(bitmap, openfl_TextureCoordv);\r\n\t\t}"); +null==this.__glVertexSource&&(this.__glVertexSource="\r\n\t\tattribute float openfl_Alpha;\n\t\tattribute vec4 openfl_ColorMultiplier;\n\t\tattribute vec4 openfl_ColorOffset;\n\t\tattribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\n\t\tvarying float openfl_Alphav;\n\t\tvarying vec4 openfl_ColorMultiplierv;\n\t\tvarying vec4 openfl_ColorOffsetv;\n\t\tvarying vec2 openfl_TextureCoordv;\n\n\t\tuniform mat4 openfl_Matrix;\n\t\tuniform bool openfl_HasColorTransform;\n\t\tuniform vec2 openfl_TextureSize;\n\r\n\t\t\r\n\t\tattribute float alpha;\r\n\t\tattribute vec4 colorMultiplier;\r\n\t\tattribute vec4 colorOffset;\r\n\t\tuniform bool hasColorTransform;\r\n\t\t\r\n\t\tvoid main(void)\r\n\t\t{\r\n\t\t\topenfl_Alphav = openfl_Alpha;\n\t\topenfl_TextureCoordv = openfl_TextureCoord;\n\n\t\tif (openfl_HasColorTransform) {\n\n\t\t\topenfl_ColorMultiplierv = openfl_ColorMultiplier;\n\t\t\topenfl_ColorOffsetv = openfl_ColorOffset / 255.0;\n\n\t\t}\n\n\t\tgl_Position = openfl_Matrix * openfl_Position;\n\r\n\t\t\t\r\n\t\t\topenfl_Alphav = openfl_Alpha * alpha;\r\n\t\t\t\r\n\t\t\tif (hasColorTransform)\r\n\t\t\t{\r\n\t\t\t\topenfl_ColorOffsetv = colorOffset / 255.0;\r\n\t\t\t\topenfl_ColorMultiplierv = colorMultiplier;\r\n\t\t\t}\r\n\t\t}"); +Ae.call(this);this.__isGenerated=!0;this.__initGL()};h["flixel.graphics.tile.FlxGraphicsShader"]=vg;vg.__name__="flixel.graphics.tile.FlxGraphicsShader";vg.__super__=Ae;vg.prototype=p(Ae.prototype,{alpha:null,colorMultiplier:null,colorOffset:null,hasColorTransform:null,hasTransform:null,__class__:vg});var If=function(a,b){this._groupMembers=a;this._filter=b;this._cursor=0;this._length=this._groupMembers.length};h["flixel.group.FlxTypedGroupIterator"]=If;If.__name__="flixel.group.FlxTypedGroupIterator"; +If.prototype={_groupMembers:null,_filter:null,_cursor:null,_length:null,next:function(){return this.hasNext()?this._groupMembers[this._cursor++]:null},hasNext:function(){for(;this._cursorb.length))for(var d,e=0,f=this._sprites;ea?0:a;a=1b&&(b=e);fb&&(b=e);fa?0:a;b=0>b?0:b;this.width=a;this.height=b;this.rect=new qa(0,0,a,b);this.__textureWidth=a;this.__textureHeight=b;0>>24&255),this.image.set_transparent(c),this.readable=this.__isValid=!0);this.__renderTransform=new Aa;this.__worldAlpha=1;this.__worldTransform=new Aa;this.__worldColorTransform= +new Xa;this.__renderable=!0};h["openfl.display.BitmapData"]=L;L.__name__="openfl.display.BitmapData";L.__interfaces__=[M];L.fromCanvas=function(a,b){null==b&&(b=!0);if(null==a)return null;var c=new L(0,0,b,0);c.__fromImage(Ia.fromCanvas(a));c.image.set_transparent(b);return c};L.fromImage=function(a,b){null==b&&(b=!0);if(null==a||null==a.buffer)return null;var c=new L(0,0,b,0);c.__fromImage(a);c.image.set_transparent(b);return null!=c.image?c:null};L.prototype={height:null,image:null,readable:null, +rect:null,transparent:null,width:null,__framebuffer:null,__framebufferContext:null,__indexBuffer:null,__indexBufferContext:null,__indexBufferData:null,__indexBufferGrid:null,__isValid:null,__mask:null,__renderable:null,__renderTransform:null,__scrollRect:null,__surface:null,__texture:null,__textureContext:null,__textureHeight:null,__textureVersion:null,__textureWidth:null,__uvRect:null,__vertexBuffer:null,__vertexBufferContext:null,__vertexBufferData:null,__vertexBufferGrid:null,__vertexBufferHeight:null, +__vertexBufferScaleX:null,__vertexBufferScaleY:null,__vertexBufferWidth:null,__worldAlpha:null,__worldColorTransform:null,__worldTransform:null,clone:function(){if(this.__isValid)if(this.readable||null!=this.image)var a=L.fromImage(this.image.clone(),this.transparent);else a=new L(0,0,this.transparent,0),a.width=this.width,a.height=this.height,a.__textureWidth=this.__textureWidth,a.__textureHeight=this.__textureHeight,a.rect.copyFrom(this.rect),a.__framebuffer=this.__framebuffer,a.__framebufferContext= +this.__framebufferContext,a.__texture=this.__texture,a.__textureContext=this.__textureContext,a.__isValid=!0;else a=new L(this.width,this.height,this.transparent,0);a.__worldTransform.copyFrom(this.__worldTransform);a.__renderTransform.copyFrom(this.__renderTransform);return a},colorTransform:function(a,b){this.readable&&this.image.colorTransform(a.__toLimeRectangle(),b.__toLimeColorMatrix())},copyPixels:function(a,b,c,d,e,f){null==f&&(f=!1);this.readable&&null!=a&&(null!=e&&(L.__tempVector.x=e.x, +L.__tempVector.y=e.y),this.image.copyPixels(a.image,b.__toLimeRectangle(),c.__toLimeVector2(),null!=d?d.image:null,null!=e?L.__tempVector:null,f))},dispose:function(){this.image=null;this.height=this.width=0;this.rect=null;this.readable=this.__isValid=!1;this.__textureContext=this.__texture=this.__framebufferContext=this.__framebuffer=this.__vertexBuffer=this.__surface=null},draw:function(a,b,c,d,e,f){null==f&&(f=!1);if(null!=a){a.__update(!1,!0);var l=Aa.__pool.get();l.copyFrom(a.__renderTransform); +l.invert();null!=b&&l.concat(b);b=null;null!=e&&(b=Aa.__pool.get(),b.copyFrom(l),b.invert());var v=new Xa;v.__copyFrom(a.__worldColorTransform);v.__invert();if(this.readable||null==ma.get_current().stage.context3D){if(null!=c){var m=qa.__pool.get(),g=Aa.__pool.get();a.__getBounds(m,g);var h=Math.ceil(m.width),k=Math.ceil(m.height);g.tx=-m.x;g.ty=-m.y;h=new L(h,k,!0,0);h.draw(a,g);h.colorTransform(h.rect,c);h.__renderTransform.identity();h.__renderTransform.tx=m.x;h.__renderTransform.ty=m.y;h.__renderTransform.concat(a.__renderTransform); +h.__worldAlpha=a.__worldAlpha;h.__worldColorTransform.__copyFrom(a.__worldColorTransform);a=h;qa.__pool.release(m);Aa.__pool.release(g)}ya.convertToCanvas(this.image);c=new Hd(this.image.buffer.__srcContext);c.__allowSmoothing=f;c.__overrideBlendMode=d;c.__worldTransform=l;c.__worldAlpha=1/a.__worldAlpha;c.__worldColorTransform=v;null!=e&&c.__pushMaskRect(e,b);this.__drawCanvas(a,c)}else null==this.__textureContext&&(this.__textureContext=ha.current.__window.context),null!=c&&v.__combine(c),c=new Pa(ma.get_current().stage.context3D, +this),c.__allowSmoothing=f,c.__overrideBlendMode=d,c.__worldTransform=l,c.__worldAlpha=1/a.__worldAlpha,c.__worldColorTransform=v,c.__resize(this.width,this.height),null!=e&&c.__pushMaskRect(e,b),this.__drawGL(a,c);null!=e&&(c.__popMaskRect(),Aa.__pool.release(b));Aa.__pool.release(l)}},fillRect:function(a,b){this.__fillRect(a,b,!0)},getIndexBuffer:function(a,b){if(null==this.__indexBuffer||this.__indexBufferContext!=a.__context||null!=b&&null==this.__indexBufferGrid||null!=this.__indexBufferGrid&& +!this.__indexBufferGrid.equals(b)){this.__indexBufferContext=a.__context;this.__indexBuffer=null;if(null!=b){null==this.__indexBufferGrid&&(this.__indexBufferGrid=new qa);this.__indexBufferGrid.copyFrom(b);var c=b.width;b=b.height;0!=c&&0!=b?(this.__indexBufferData=new Uint16Array(54),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.__indexBufferData[6]=4,this.__indexBufferData[7]= +0,this.__indexBufferData[8]=5,this.__indexBufferData[9]=5,this.__indexBufferData[10]=0,this.__indexBufferData[11]=2,this.__indexBufferData[12]=6,this.__indexBufferData[13]=4,this.__indexBufferData[14]=7,this.__indexBufferData[15]=7,this.__indexBufferData[16]=4,this.__indexBufferData[17]=5,this.__indexBufferData[18]=8,this.__indexBufferData[19]=9,this.__indexBufferData[20]=0,this.__indexBufferData[21]=0,this.__indexBufferData[22]=9,this.__indexBufferData[23]=1,this.__indexBufferData[24]=10,this.__indexBufferData[25]= +8,this.__indexBufferData[26]=4,this.__indexBufferData[27]=4,this.__indexBufferData[28]=8,this.__indexBufferData[29]=0,this.__indexBufferData[30]=11,this.__indexBufferData[31]=10,this.__indexBufferData[32]=6,this.__indexBufferData[33]=6,this.__indexBufferData[34]=10,this.__indexBufferData[35]=4,this.__indexBufferData[36]=12,this.__indexBufferData[37]=13,this.__indexBufferData[38]=8,this.__indexBufferData[39]=8,this.__indexBufferData[40]=13,this.__indexBufferData[41]=9,this.__indexBufferData[42]=14, +this.__indexBufferData[43]=12,this.__indexBufferData[44]=10,this.__indexBufferData[45]=10,this.__indexBufferData[46]=12,this.__indexBufferData[47]=8,this.__indexBufferData[48]=15,this.__indexBufferData[49]=14,this.__indexBufferData[50]=11,this.__indexBufferData[51]=11,this.__indexBufferData[52]=14,this.__indexBufferData[53]=10,this.__indexBuffer=a.createIndexBuffer(54)):0==c&&0!=b?(this.__indexBufferData=new Uint16Array(18),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.__indexBufferData[6]=4,this.__indexBufferData[7]=5,this.__indexBufferData[8]=0,this.__indexBufferData[9]=0,this.__indexBufferData[10]=5,this.__indexBufferData[11]=1,this.__indexBufferData[12]=6,this.__indexBufferData[13]=7,this.__indexBufferData[14]=4,this.__indexBufferData[15]=4,this.__indexBufferData[16]=7,this.__indexBufferData[17]=5,this.__indexBuffer=a.createIndexBuffer(18)):0!=c&&0==b&&(this.__indexBufferData= +new Uint16Array(18),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.__indexBufferData[6]=4,this.__indexBufferData[7]=0,this.__indexBufferData[8]=5,this.__indexBufferData[9]=5,this.__indexBufferData[10]=0,this.__indexBufferData[11]=2,this.__indexBufferData[12]=6,this.__indexBufferData[13]=4,this.__indexBufferData[14]=7,this.__indexBufferData[15]=7,this.__indexBufferData[16]= +4,this.__indexBufferData[17]=5,this.__indexBuffer=a.createIndexBuffer(18))}else this.__indexBufferGrid=null;null==this.__indexBuffer&&(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.__indexBuffer=a.createIndexBuffer(6));this.__indexBuffer.uploadFromTypedArray(this.__indexBufferData)}return this.__indexBuffer},getVertexBuffer:function(a, +b,c){if(null==this.__vertexBuffer||this.__vertexBufferContext!=a.__context||null!=b&&null==this.__vertexBufferGrid||null!=this.__vertexBufferGrid&&!this.__vertexBufferGrid.equals(b)||null!=c&&(this.__vertexBufferWidth!=c.get_width()||this.__vertexBufferHeight!=c.get_height()||this.__vertexBufferScaleX!=c.get_scaleX()||this.__vertexBufferScaleY!=c.get_scaleY())){this.__uvRect=new qa(0,0,this.width,this.height);this.__vertexBufferContext=a.__context;this.__vertexBuffer=null;null!=c&&(this.__vertexBufferWidth= +c.get_width(),this.__vertexBufferHeight=c.get_height(),this.__vertexBufferScaleX=c.get_scaleX(),this.__vertexBufferScaleY=c.get_scaleY());if(null!=b&&null!=c){null==this.__vertexBufferGrid&&(this.__vertexBufferGrid=new qa);this.__vertexBufferGrid.copyFrom(b);this.__vertexBufferWidth=c.get_width();this.__vertexBufferHeight=c.get_height();this.__vertexBufferScaleX=c.get_scaleX();this.__vertexBufferScaleY=c.get_scaleY();var d=b.width,e=b.height;if(0!=d&&0!=e){this.__vertexBufferData=new Float32Array(224); +var f=b.x,l=b.y,v=this.width-d-f,m=this.height-e-l;b=f/this.width;var g=l/this.height;d/=this.width;e/=this.height;f/=c.get_scaleX();l/=c.get_scaleY();v/=c.get_scaleX();m/=c.get_scaleY();v=c.get_width()/c.get_scaleX()-f-v;c=c.get_height()/c.get_scaleY()-l-m;this.__vertexBufferData[0]=f;this.__vertexBufferData[1]=l;this.__vertexBufferData[3]=1*b;this.__vertexBufferData[4]=1*g;this.__vertexBufferData[15]=l;this.__vertexBufferData[18]=1*g;this.__vertexBufferData[28]=f;this.__vertexBufferData[31]=1*b; +this.__vertexBufferData[56]=f+v;this.__vertexBufferData[57]=l;this.__vertexBufferData[59]=1*(b+d);this.__vertexBufferData[60]=1*g;this.__vertexBufferData[70]=f+v;this.__vertexBufferData[73]=1*(b+d);this.__vertexBufferData[84]=this.width;this.__vertexBufferData[85]=l;this.__vertexBufferData[87]=1;this.__vertexBufferData[88]=1*g;this.__vertexBufferData[98]=this.width;this.__vertexBufferData[101]=1;this.__vertexBufferData[112]=f;this.__vertexBufferData[113]=l+c;this.__vertexBufferData[115]=1*b;this.__vertexBufferData[116]= +1*(g+e);this.__vertexBufferData[127]=l+c;this.__vertexBufferData[130]=1*(g+e);this.__vertexBufferData[140]=f+v;this.__vertexBufferData[141]=l+c;this.__vertexBufferData[143]=1*(b+d);this.__vertexBufferData[144]=1*(g+e);this.__vertexBufferData[154]=this.width;this.__vertexBufferData[155]=l+c;this.__vertexBufferData[157]=1;this.__vertexBufferData[158]=1*(g+e);this.__vertexBufferData[168]=f;this.__vertexBufferData[169]=this.height;this.__vertexBufferData[171]=1*b;this.__vertexBufferData[172]=1;this.__vertexBufferData[183]= +this.height;this.__vertexBufferData[186]=1;this.__vertexBufferData[196]=f+v;this.__vertexBufferData[197]=this.height;this.__vertexBufferData[199]=1*(b+d);this.__vertexBufferData[200]=1;this.__vertexBufferData[210]=this.width;this.__vertexBufferData[211]=this.height;this.__vertexBufferData[213]=1;this.__vertexBufferData[214]=1;this.__vertexBuffer=a.createVertexBuffer(16,14)}else 0==d&&0!=e?(this.__vertexBufferData=new Float32Array(112),d=b.y,m=this.height-e-d,b=d/this.height,g=e/this.height,d/=c.get_scaleY(), +e=m/c.get_scaleY(),e=c.get_height()/c.get_scaleY()-d-e,c=c.get_width()/c.get_scaleX(),this.__vertexBufferData[0]=c,this.__vertexBufferData[1]=d,this.__vertexBufferData[3]=1,this.__vertexBufferData[4]=1*b,this.__vertexBufferData[15]=d,this.__vertexBufferData[18]=1*b,this.__vertexBufferData[28]=c,this.__vertexBufferData[31]=1,this.__vertexBufferData[56]=c,this.__vertexBufferData[57]=d+e,this.__vertexBufferData[59]=1,this.__vertexBufferData[60]=1*(b+g),this.__vertexBufferData[71]=d+e,this.__vertexBufferData[74]= +1*(b+g),this.__vertexBufferData[84]=c,this.__vertexBufferData[85]=this.height,this.__vertexBufferData[87]=1,this.__vertexBufferData[88]=1,this.__vertexBufferData[99]=this.height,this.__vertexBufferData[102]=1,this.__vertexBuffer=a.createVertexBuffer(8,14)):0==e&&0!=d&&(this.__vertexBufferData=new Float32Array(112),m=b.x,e=this.width-d-m,b=m/this.width,g=d/this.width,d=m/c.get_scaleX(),e/=c.get_scaleX(),e=c.get_width()/c.get_scaleX()-d-e,c=c.get_height()/c.get_scaleY(),this.__vertexBufferData[0]=d, +this.__vertexBufferData[1]=c,this.__vertexBufferData[3]=1*b,this.__vertexBufferData[4]=1,this.__vertexBufferData[15]=c,this.__vertexBufferData[18]=1,this.__vertexBufferData[28]=d,this.__vertexBufferData[31]=1*b,this.__vertexBufferData[56]=d+e,this.__vertexBufferData[57]=c,this.__vertexBufferData[59]=1*(b+g),this.__vertexBufferData[60]=1,this.__vertexBufferData[70]=d+e,this.__vertexBufferData[73]=1*(b+g),this.__vertexBufferData[84]=this.width,this.__vertexBufferData[85]=c,this.__vertexBufferData[87]= +1,this.__vertexBufferData[88]=1,this.__vertexBufferData[98]=this.width,this.__vertexBufferData[101]=1,this.__vertexBuffer=a.createVertexBuffer(8,14))}else this.__vertexBufferGrid=null;null==this.__vertexBuffer&&(this.__vertexBufferData=new Float32Array(56),this.__vertexBufferData[0]=this.width,this.__vertexBufferData[1]=this.height,this.__vertexBufferData[3]=1,this.__vertexBufferData[4]=1,this.__vertexBufferData[15]=this.height,this.__vertexBufferData[18]=1,this.__vertexBufferData[28]=this.width, +this.__vertexBufferData[31]=1,this.__vertexBuffer=a.createVertexBuffer(3,14));this.__vertexBuffer.uploadFromTypedArray(this.__vertexBufferData)}return this.__vertexBuffer},getTexture:function(a){if(!this.__isValid)return null;if(null==this.__texture||this.__textureContext!=a.__context)this.__textureContext=a.__context,this.__texture=a.createRectangleTexture(this.width,this.height,1,!1),this.__textureVersion=-1;ya.sync(this.image,!1);null!=this.image&&this.image.version>this.__textureVersion&&(null!= +this.__surface&&hj.flush(this.__surface),a=this.image,Za.__supportsBGRA||0==a.get_format()||(a=a.clone(),a.set_format(0)),this.__texture.__uploadFromImage(a),this.__textureVersion=this.image.version,this.__textureWidth=a.buffer.width,this.__textureHeight=a.buffer.height);this.readable||null==this.image||(this.image=this.__surface=null);return this.__texture},lock:function(){},setPixel:function(a,b,c){this.readable&&this.image.setPixel(a,b,c,1)},setPixel32:function(a,b,c){this.readable&&this.image.setPixel32(a, +b,c,1)},unlock:function(a){},__drawCanvas:function(a,b){var c=this.image.buffer;b.__allowSmoothing||b.applySmoothing(c.__srcContext,!1);b.__render(a);b.__allowSmoothing||b.applySmoothing(c.__srcContext,!0);c.__srcContext.setTransform(1,0,0,1,0,0);c.__srcImageData=null;c.data=null;this.image.dirty=!0;this.image.version++},__drawGL:function(a,b){var c=b.__context3D,d=c.__state.renderToTexture,e=c.__state.renderToTextureDepthStencil,f=c.__state.renderToTextureAntiAlias,l=c.__state.renderToTextureSurfaceSelector; +c.setRenderToTexture(this.getTexture(c),!0);b.__render(a);null!=d?c.setRenderToTexture(d,e,f,l):c.setRenderToBackBuffer()},__fillRect:function(a,b,c){if(null!=a)if(this.transparent&&0==(b&-16777216)&&(b=0),c&&null!=this.__texture&&null!=this.__texture.__glFramebuffer&&"opengl"==ma.get_current().stage.__renderer.__type){c=ma.get_current().stage.__renderer.__context3D;var d=!this.rect.equals(a),e=c.__state.renderToTexture,f=c.__state.renderToTextureDepthStencil,l=c.__state.renderToTextureAntiAlias, +v=c.__state.renderToTextureSurfaceSelector;c.setRenderToTexture(this.__texture);d&&c.setScissorRectangle(a);c.clear((b>>>16&255)/255,(b>>>8&255)/255,(b&255)/255,this.transparent?(b>>>24&255)/255:1,0,0,1);d&&c.setScissorRectangle(null);null!=e?c.setRenderToTexture(e,f,l,v):c.setRenderToBackBuffer()}else this.readable&&this.image.fillRect(a.__toLimeRectangle(),b,1)},__fromImage:function(a){null!=a&&null!=a.buffer&&(this.image=a,this.width=a.width,this.height=a.height,this.rect=new qa(0,0,a.width,a.height), +this.__textureWidth=this.width,this.__textureHeight=this.height,this.__isValid=this.readable=!0)},__getBounds:function(a,b){var c=qa.__pool.get();this.rect.__transform(c,b);a.__expand(c.x,c.y,c.width,c.height);qa.__pool.release(c)},__renderCairo:function(a){},__renderCanvas:function(a){if(this.readable){this.image.type==Vc.DATA&&ya.convertToCanvas(this.image);var b=a.context;b.globalAlpha=1;a.setTransform(this.__renderTransform,b);b.drawImage(this.image.get_src(),0,0,this.image.width,this.image.height)}}, +__renderDOM:function(a){},__renderGL:function(a){var b=a.__context3D;a.__setBlendMode(10);var c=a.__defaultDisplayShader;a.setShader(c);a.applyBitmapData(this,a.__upscaled);a.applyMatrix(a.__getMatrix(this.__worldTransform,1));a.applyAlpha(this.__worldAlpha);a.applyColorTransform(this.__worldColorTransform);a.updateShader();var d=this.getVertexBuffer(b);null!=c.__position&&b.setVertexBufferAt(c.__position.index,d,0,3);null!=c.__textureCoord&&b.setVertexBufferAt(c.__textureCoord.index,d,3,2);c=this.getIndexBuffer(b); +b.drawTriangles(c);a.__clearShader()},__setUVRect:function(a,b,c,d,e){if(null!=this.getVertexBuffer(a)&&(d!=this.__uvRect.width||e!=this.__uvRect.height||b!=this.__uvRect.x||c!=this.__uvRect.y)){null==this.__uvRect&&(this.__uvRect=new qa);this.__uvRect.setTo(b,c,d,e);a=0a+b?a+b:0);0!=a&&0!=d&&(a>d?a=d:a<-d&&(a=-d));return a};var md=function(a,b,c,d,e){null==d&&(d=-1);null==c&&(c=!0);L.call(this,0,0,c,d);if(null!=md.preload)this.__fromImage(md.preload);else{var f=this;Ia.loadFromBase64(lb.getString(md.resourceName),md.resourceType).then(function(a){f.__fromImage(a);return Ma.withValue(f)}).onComplete(function(a){null==md.preload&&(md.preload=a.image);null!=e&&aa.isFunction(e)&& +e(a)})}};h["flixel.system.GraphicLogo"]=md;md.__name__="flixel.system.GraphicLogo";md.__super__=L;md.prototype=p(L.prototype,{__class__:md});var nd=function(a,b,c,d,e){null==d&&(d=-1);null==c&&(c=!0);L.call(this,0,0,c,d);if(null!=nd.preload)this.__fromImage(nd.preload);else{var f=this;Ia.loadFromBase64(lb.getString(nd.resourceName),nd.resourceType).then(function(a){f.__fromImage(a);return Ma.withValue(f)}).onComplete(function(a){null==nd.preload&&(nd.preload=a.image);null!=e&&aa.isFunction(e)&&e(a)})}}; +h["flixel.system.GraphicVirtualInput"]=nd;nd.__name__="flixel.system.GraphicVirtualInput";nd.__super__=L;nd.prototype=p(L.prototype,{__class__:nd});var Va=function(a){this.length=a.byteLength;this.b=new Uint8Array(a);this.b.bufferValue=a;a.hxBytes=this;a.bytes=this.b};h["haxe.io.Bytes"]=Va;Va.__name__="haxe.io.Bytes";Va.ofString=function(a,b){b=[];for(var c=0;c=d&&(d=d-55232<<10|a.charCodeAt(c++)&1023);127>=d?b.push(d):(2047>=d?b.push(192|d>>6): +(65535>=d?b.push(224|d>>12):(b.push(240|d>>18),b.push(128|d>>12&63)),b.push(128|d>>6&63)),b.push(128|d&63))}return new Va((new Uint8Array(b)).buffer)};Va.ofData=function(a){var b=a.hxBytes;return null!=b?b:new Va(a)};Va.prototype={length:null,b:null,data:null,blit:function(a,b,c,d){if(0>a||0>c||0>d||a+d>this.length||c+d>b.length)throw new F($e.OutsideBounds);0==c&&d==b.b.byteLength?this.b.set(b.b,a):this.b.set(b.b.subarray(c,c+d),a)},getString:function(a,b,c){if(0>a||0>b||a+b>this.length)throw new F($e.OutsideBounds); +c="";var d=this.b,e=cj.fromCharCode,f=a;for(a+=b;fb){if(0==b)break;c+=e(b)}else if(224>b)c+=e((b&63)<<6|d[f++]&127);else if(240>b){var l=d[f++];c+=e((b&31)<<12|(l&127)<<6|d[f++]&127)}else{l=d[f++];var v=d[f++];b=(b&15)<<18|(l&127)<<12|(v&127)<<6|d[f++]&127;c+=e((b>>10)+55232);c+=e(b&1023|56320)}return c},toString:function(){return this.getString(0,this.length)},__class__:Va};var zg=function(){};h["openfl.utils.IDataOutput"]=zg;zg.__name__="openfl.utils.IDataOutput";zg.__isInterface__= +!0;zg.prototype={__class__:zg};var Ag=function(){};h["openfl.utils.IDataInput"]=Ag;Ag.__name__="openfl.utils.IDataInput";Ag.__isInterface__=!0;Ag.prototype={__class__:Ag};var kc=function(a){null==a&&(a=0);var b=new Va(new ArrayBuffer(a));Va.call(this,b.b.buffer);this.__length=a;null==kc.__defaultEndian&&(Eb.get_endianness()==Lj.LITTLE_ENDIAN?kc.__defaultEndian=1:kc.__defaultEndian=0);this.__endian=kc.__defaultEndian;this.objectEncoding=kc.defaultObjectEncoding;this.position=0};h["openfl.utils.ByteArrayData"]= +kc;kc.__name__="openfl.utils.ByteArrayData";kc.__interfaces__=[zg,Ag];kc.fromBytes=function(a){var b=new kc;b.__fromBytes(a);return b};kc.__super__=Va;kc.prototype=p(Va.prototype,{objectEncoding:null,position:null,__endian:null,__length:null,readByte:function(){var a=this.readUnsignedByte();return 0!=(a&128)?a-256:a},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},readUnsignedByte:function(){if(this.positionthis.length)throw new F(new Kf);this.position+=a;return this.getString(this.position-a,a)},writeByte:function(a){this.__resize(this.position+1);this.b[this.position++]=a&255},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)},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)},__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 Va(new ArrayBuffer(3*(a+1)>>1));if(0a/b&&(c=a/b);this._destroyed||this.update(c);this._loaded&&(0>=b||1<=a/b)&&(this.removeEventListener("enterFrame", +q(this,this.onEnterFrame)),ie.prototype.onLoaded.call(this),this.destroy(),this._destroyed=!0)},destroy:function(){},update:function(a){},onLoaded:function(){this._loaded=!0;this._percent=1},createBitmap:function(a,b){var c=new rb;a=La.createInstance(a,[0,0,!0,-1,function(a){b(c)}]);c.set_bitmapData(a);return c},checkSiteLock:function(){this._urlChecked||(this.isHostUrlAllowed()?this._urlChecked=!0:(this.removeChildren(),this.removeEventListener("enterFrame",q(this,this.onEnterFrame)),this.createSiteLockFailureScreen()))}, +createSiteLockFailureScreen:function(){this.addChild(this.createSiteLockFailureBackground(16777215,15066597));this.addChild(this.createSiteLockFailureIcon(15066597,.9));this.addChild(this.createSiteLockFailureText(30))},createSiteLockFailureBackground:function(a,b){var c=new ke,d=c.get_graphics();d.clear();var e=new Aa;e.createGradientBox(1,1,0,-.5,-.5);var f=Math.max(this.stage.stageWidth,this.stage.stageHeight);e.scale(f,f);e.translate(.5*this.stage.stageWidth,.5*this.stage.stageHeight);d.beginGradientFill(1, +[a,b],[1,1],[0,255],e);d.drawRect(0,0,this.stage.stageWidth,this.stage.stageHeight);d.endFill();return c},createSiteLockFailureIcon:function(a,b){var c=new ke,d=c.get_graphics();d.clear();d.beginFill(a);var e=[1,6,2,2,2,6,6,2,2,2,6,1,6,2,6,2,6,2,6,1,6,6,2,2,2,6,6];a=Da.toIntVector(null);for(var f=0,l=e.length;fa?(this._logoGlow.set_alpha(0),this._logo.set_alpha(0)):.15>a?(this._logoGlow.set_alpha(Math.random()), +this._logo.set_alpha(0)):.2>a?(this._logoGlow.set_alpha(0),this._logo.set_alpha(0)):.25>a?(this._logoGlow.set_alpha(0),this._logo.set_alpha(Math.random())):.7>a?(this._logoGlow.set_alpha((a-.45)/.45),this._logo.set_alpha(1)):.8a?(this._logoGlow.set_alpha(1-(a-.8)/.1),this._logo.set_alpha(0)):.9G._min||this.height>G._min;this._southWestTree=this._southEastTree=this._northEastTree=this._northWestTree=null;this._leftEdge=this.x;this._rightEdge=this.x+this.width;this._halfWidth=this.width/2; +this._midpointX=this._leftEdge+this._halfWidth;this._topEdge=this.y;this._bottomEdge=this.y+this.height;this._halfHeight=this.height/2;this._midpointY=this._topEdge+this._halfHeight},destroy:function(){this._headA=Z.destroy(this._headA);this._headB=Z.destroy(this._headB);this._tailA=Z.destroy(this._tailA);this._tailB=Z.destroy(this._tailB);this._northWestTree=Z.destroy(this._northWestTree);this._northEastTree=Z.destroy(this._northEastTree);this._southWestTree=Z.destroy(this._southWestTree);this._southEastTree= +Z.destroy(this._southEastTree);G._object=null;G._processingCallback=null;G._notifyCallback=null;this.exists=!1;this.next=G._cachedTreesHead;G._cachedTreesHead=this;G._NUM_CACHED_QUAD_TREES++;va.prototype.destroy.call(this)},load:function(a,b,c,d){this.add(a,0);null!=b?(this.add(b,1),G._useBothLists=!0):G._useBothLists=!1;G._notifyCallback=c;G._processingCallback=d},add:function(a,b){G._list=b;var c=na.resolveGroup(a);if(null!=c){a=0;for(var d,e=c.members,f=c.length;a=G._objectLeftEdge&&this._rightEdge<=G._objectRightEdge&&this._topEdge>=G._objectTopEdge&&this._bottomEdge<=G._objectBottomEdge)this.addToList();else{if(G._objectLeftEdge>this._leftEdge&&G._objectRightEdgethis._topEdge&&G._objectBottomEdgethis._midpointY&&G._objectBottomEdgethis._midpointX&&G._objectRightEdgethis._topEdge&&G._objectBottomEdgethis._midpointY&&G._objectBottomEdgethis._leftEdge&&G._objectLeftEdgethis._topEdge&&G._objectTopEdgethis._midpointX&&G._objectLeftEdgethis._topEdge&&G._objectTopEdgethis._midpointX&&G._objectLeftEdgethis._midpointY&&G._objectTopEdgethis._leftEdge&&G._objectLeftEdgethis._midpointY&&G._objectTopEdge=b.allowCollisions?G._iterator=G._iterator.next:(G._checkObjectHullX=b.xG._checkObjectHullX&&G._objectHullXG._checkObjectHullY&&G._objectHullYb?0:b;b=1-(1a?-1:a,this._transform.pan=1=this.endTime&&this.stopped()}},kill:function(){Ga.prototype.kill.call(this);this.cleanup(!1)},loadEmbedded:function(a,b,c,d){null==c&&(c=!1);null==b&&(b=!1);if(null==a)return this;this.cleanup(!0);a instanceof le?this._sound=a:xa.__instanceof(a,Nh)?this._sound=La.createInstance(a,[]):"string"==typeof a&&(Ka.exists(a, +"SOUND")||Ka.exists(a,"MUSIC"))&&(this._sound=Ka.getSound(a));return this.init(b,c,d)},loadStream:function(a,b,c,d){null==c&&(c=!1);null==b&&(b=!1);this.cleanup(!0);this._sound=new le;this._sound.addEventListener("id3",q(this,this.gotID3));this._sound.load(new Lf(a));return this.init(b,c,d)},init:function(a,b,c){null==b&&(b=!1);null==a&&(a=!1);this.looped=a;this.autoDestroy=b;this.updateTransform();this.set_exists(!0);this.onComplete=c;this.endTime=this._length=null==this._sound?0:this._sound.get_length(); +return this},play:function(a,b,c){null==b&&(b=0);null==a&&(a=!1);if(!this.exists)return this;if(a)this.cleanup(!1,!0);else if(null!=this._channel)return this;this._paused?this.resume():this.startSound(b);this.endTime=c;return this},resume:function(){this._paused&&this.startSound(this._time);return this},pause:function(){if(null==this._channel)return this;this._time=this._channel.get_position();this._paused=!0;this.cleanup(!1,!1);return this},updateTransform:function(){this._transform.volume=(u.sound.muted? +0:1)*u.sound.volume*(null!=this.group?this.group.volume:1)*this._volume*this._volumeAdjust;null!=this._channel&&this._channel.set_soundTransform(this._transform)},startSound:function(a){null!=this._sound&&(this._time=a,this._paused=!1,this._channel=this._sound.play(this._time,0,this._transform),null!=this._channel?(this._channel.addEventListener("soundComplete",q(this,this.stopped)),this.set_active(!0)):(this.set_exists(!1),this.set_active(!1)))},stopped:function(a){if(null!=this.onComplete)this.onComplete(); +this.looped?(this.cleanup(!1),this.play(!1,this.loopTime,this.endTime)):this.cleanup(this.autoDestroy)},cleanup:function(a,b){null==b&&(b=!0);a?this.reset():(null!=this._channel&&(this._channel.removeEventListener("soundComplete",q(this,this.stopped)),this._channel.stop(),this._channel=null),this.set_active(!1),b&&(this._time=0,this._paused=!1))},gotID3:function(a){this.name=this._sound.get_id3().songName;this.artist=this._sound.get_id3().artist;this._sound.removeEventListener("id3",q(this,this.gotID3))}, +onFocus:function(){this._alreadyPaused||this.resume()},onFocusLost:function(){this._alreadyPaused=this._paused;this.pause()},set_group:function(a){if(this.group!=a){var b=this.group;this.group=a;null!=b&&b.remove(this);null!=a&&a.add(this);this.updateTransform()}return a},set_volume:function(a){var b=0>a?0:a;this._volume=1this.sounds.indexOf(a)?(this.sounds.push(a),a.set_group(this),!0):!1},remove:function(a){return 0<=this.sounds.indexOf(a)?(a.set_group(null),z.remove(this.sounds,a)):!1},set_volume:function(a){this.volume=a;for(var b=0,c=this.sounds;b>24&255)/255);a.set_autoSize(1);return a};Md.fixSize=function(a){aa.setProperty(a,"width",11);aa.setProperty(a,"height",11);return a};var od=function(a,b,c,d,e){null==d&&(d=-1);null==c&&(c=!0);L.call(this,0,0,c,d);if(null!=od.preload)this.__fromImage(od.preload);else{var f=this;Ia.loadFromBase64(lb.getString(od.resourceName), +od.resourceType).then(function(a){f.__fromImage(a);return Ma.withValue(f)}).onComplete(function(a){null==od.preload&&(od.preload=a.image);null!=e&&aa.isFunction(e)&&e(a)})}};h["flixel.system.debug._FlxDebugger.GraphicFlixel"]=od;od.__name__="flixel.system.debug._FlxDebugger.GraphicFlixel";od.__super__=L;od.prototype=p(L.prototype,{__class__:od});var pd=function(a,b,c,d,e){null==d&&(d=-1);null==c&&(c=!0);L.call(this,0,0,c,d);if(null!=pd.preload)this.__fromImage(pd.preload);else{var f=this;Ia.loadFromBase64(lb.getString(pd.resourceName), +pd.resourceType).then(function(a){f.__fromImage(a);return Ma.withValue(f)}).onComplete(function(a){null==pd.preload&&(pd.preload=a.image);null!=e&&aa.isFunction(e)&&e(a)})}};h["flixel.system.debug._FlxDebugger.GraphicDrawDebug"]=pd;pd.__name__="flixel.system.debug._FlxDebugger.GraphicDrawDebug";pd.__super__=L;pd.prototype=p(L.prototype,{__class__:pd});var qd=function(a,b,c,d,e){null==d&&(d=-1);null==c&&(c=!0);L.call(this,0,0,c,d);if(null!=qd.preload)this.__fromImage(qd.preload);else{var f=this;Ia.loadFromBase64(lb.getString(qd.resourceName), +qd.resourceType).then(function(a){f.__fromImage(a);return Ma.withValue(f)}).onComplete(function(a){null==qd.preload&&(qd.preload=a.image);null!=e&&aa.isFunction(e)&&e(a)})}};h["flixel.system.debug.GraphicLog"]=qd;qd.__name__="flixel.system.debug.GraphicLog";qd.__super__=L;qd.prototype=p(L.prototype,{__class__:qd});var rd=function(a,b,c,d,e){null==d&&(d=-1);null==c&&(c=!0);L.call(this,0,0,c,d);if(null!=rd.preload)this.__fromImage(rd.preload);else{var f=this;Ia.loadFromBase64(lb.getString(rd.resourceName), +rd.resourceType).then(function(a){f.__fromImage(a);return Ma.withValue(f)}).onComplete(function(a){null==rd.preload&&(rd.preload=a.image);null!=e&&aa.isFunction(e)&&e(a)})}};h["flixel.system.debug.GraphicStats"]=rd;rd.__name__="flixel.system.debug.GraphicStats";rd.__super__=L;rd.prototype=p(L.prototype,{__class__:rd});var sd=function(a,b,c,d,e){null==d&&(d=-1);null==c&&(c=!0);L.call(this,0,0,c,d);if(null!=sd.preload)this.__fromImage(sd.preload);else{var f=this;Ia.loadFromBase64(lb.getString(sd.resourceName), +sd.resourceType).then(function(a){f.__fromImage(a);return Ma.withValue(f)}).onComplete(function(a){null==sd.preload&&(sd.preload=a.image);null!=e&&aa.isFunction(e)&&e(a)})}};h["flixel.system.debug.GraphicWatch"]=sd;sd.__name__="flixel.system.debug.GraphicWatch";sd.__super__=L;sd.prototype=p(L.prototype,{__class__:sd});var td=function(a,b,c,d,e){null==d&&(d=-1);null==c&&(c=!0);L.call(this,0,0,c,d);if(null!=td.preload)this.__fromImage(td.preload);else{var f=this;Ia.loadFromBase64(lb.getString(td.resourceName), +td.resourceType).then(function(a){f.__fromImage(a);return Ma.withValue(f)}).onComplete(function(a){null==td.preload&&(td.preload=a.image);null!=e&&aa.isFunction(e)&&e(a)})}};h["flixel.system.debug.GraphicBitmapLog"]=td;td.__name__="flixel.system.debug.GraphicBitmapLog";td.__super__=L;td.prototype=p(L.prototype,{__class__:td});var ud=function(a,b,c,d,e){null==d&&(d=-1);null==c&&(c=!0);L.call(this,0,0,c,d);if(null!=ud.preload)this.__fromImage(ud.preload);else{var f=this;Ia.loadFromBase64(lb.getString(ud.resourceName), +ud.resourceType).then(function(a){f.__fromImage(a);return Ma.withValue(f)}).onComplete(function(a){null==ud.preload&&(ud.preload=a.image);null!=e&&aa.isFunction(e)&&e(a)})}};h["flixel.system.debug.GraphicConsole"]=ud;ud.__name__="flixel.system.debug.GraphicConsole";ud.__super__=L;ud.prototype=p(L.prototype,{__class__:ud});var vd=function(a,b,c,d,e){null==d&&(d=-1);null==c&&(c=!0);L.call(this,0,0,c,d);if(null!=vd.preload)this.__fromImage(vd.preload);else{var f=this;Ia.loadFromBase64(lb.getString(vd.resourceName), +vd.resourceType).then(function(a){f.__fromImage(a);return Ma.withValue(f)}).onComplete(function(a){null==vd.preload&&(vd.preload=a.image);null!=e&&aa.isFunction(e)&&e(a)})}};h["flixel.system.debug.GraphicArrowLeft"]=vd;vd.__name__="flixel.system.debug.GraphicArrowLeft";vd.__super__=L;vd.prototype=p(L.prototype,{__class__:vd});var wd=function(a,b,c,d,e){null==d&&(d=-1);null==c&&(c=!0);L.call(this,0,0,c,d);if(null!=wd.preload)this.__fromImage(wd.preload);else{var f=this;Ia.loadFromBase64(lb.getString(wd.resourceName), +wd.resourceType).then(function(a){f.__fromImage(a);return Ma.withValue(f)}).onComplete(function(a){null==wd.preload&&(wd.preload=a.image);null!=e&&aa.isFunction(e)&&e(a)})}};h["flixel.system.debug.GraphicArrowRight"]=wd;wd.__name__="flixel.system.debug.GraphicArrowRight";wd.__super__=L;wd.prototype=p(L.prototype,{__class__:wd});var Zc=function(a,b,c,d,e){null==d&&(d=-1);null==c&&(c=!0);L.call(this,0,0,c,d);if(null!=Zc.preload)this.__fromImage(Zc.preload);else{var f=this;Ia.loadFromBase64(lb.getString(Zc.resourceName), +Zc.resourceType).then(function(a){f.__fromImage(a);return Ma.withValue(f)}).onComplete(function(a){null==Zc.preload&&(Zc.preload=a.image);null!=e&&aa.isFunction(e)&&e(a)})}};h["flixel.system.debug.GraphicCloseButton"]=Zc;Zc.__name__="flixel.system.debug.GraphicCloseButton";Zc.__super__=L;Zc.prototype=p(L.prototype,{__class__:Zc});var $c=function(a,b,c,d,e){null==d&&(d=-1);null==c&&(c=!0);L.call(this,0,0,c,d);if(null!=$c.preload)this.__fromImage($c.preload);else{var f=this;Ia.loadFromBase64(lb.getString($c.resourceName), +$c.resourceType).then(function(a){f.__fromImage(a);return Ma.withValue(f)}).onComplete(function(a){null==$c.preload&&($c.preload=a.image);null!=e&&aa.isFunction(e)&&e(a)})}};h["flixel.system.debug.GraphicInteractive"]=$c;$c.__name__="flixel.system.debug.GraphicInteractive";$c.__super__=L;$c.prototype=p(L.prototype,{__class__:$c});var Cg=function(){ka.call(this)};h["flixel.system.debug.FlxDebugger"]=Cg;Cg.__name__="flixel.system.debug.FlxDebugger";Cg.__super__=ka;Cg.prototype=p(ka.prototype,{__class__:Cg}); +var cf=function(){};h["flixel.system.debug.Tooltip"]=cf;cf.__name__="flixel.system.debug.Tooltip";cf.add=function(a,b){a=new Dg(a,b);cf._container.addChild(a);cf._tooltips.push(a);return a};var Dg=function(a,b,c,d){null==d&&(d=0);null==c&&(c=0);ka.call(this);this.owner=a;this.maxSize=new Sa(c,d);this._shadow=new rb(new L(1,2,!0,-16777216));this._background=new rb(new L(1,1,!0,-12961222));this.textField=Md.createTextField(2,1);this.textField.set_alpha(.8);this.textField.set_text(b);this.textField.set_wordWrap(!0); +this.addChild(this._shadow);this.addChild(this._background);this.addChild(this.textField);this.updateSize();this.setVisible(!1);null!=this.owner&&(this.owner.addEventListener("mouseOver",q(this,this.handleMouseEvents)),this.owner.addEventListener("mouseOut",q(this,this.handleMouseEvents)))};h["flixel.system.debug.TooltipOverlay"]=Dg;Dg.__name__="flixel.system.debug.TooltipOverlay";Dg.__super__=ka;Dg.prototype=p(ka.prototype,{_width:null,_height:null,_background:null,_shadow:null,textField:null,owner:null, +maxSize:null,setVisible:function(a){this.set_visible(a);this.get_visible()&&(this.parent.addChild(this),this.ensureOnScreen())},updateSize:function(){this._width=((0>=this.maxSize.x?this.textField.get_textWidth():Math.abs(this.maxSize.x))|0)+8;this._height=((0>=this.maxSize.y?this.textField.get_textHeight():Math.abs(this.maxSize.y))|0)+8;this._background.set_scaleX(this._width);this._background.set_scaleY(this._height);this._shadow.set_scaleX(this._width);this._shadow.set_y(this._height);this.textField.set_width(this._width)}, +ensureOnScreen:function(){this.set_x(0>this.get_x()?0:this.get_x());this.set_y(0>this.get_y()?0:this.get_y());var a=this.get_x()+this.get_width()>=ma.get_current().stage.stageWidth?ma.get_current().stage.stageWidth-(this.get_x()+this.get_width()):0,b=this.get_y()+this.get_height()>=ma.get_current().stage.stageHeight?ma.get_current().stage.stageHeight-(this.get_y()+this.get_height()):0;this.set_x(this.get_x()+a);this.set_y(this.get_y()+b)},handleMouseEvents:function(a){"mouseOver"!=a.type||this.get_visible()? +"mouseOut"==a.type&&this.setVisible(!1):(this.set_x(a.stageX+10),this.set_y(a.stageY+10),this.setVisible(!0))},__class__:Dg});var ad=function(a,b,c,d,e){null==d&&(d=-1);null==c&&(c=!0);L.call(this,0,0,c,d);if(null!=ad.preload)this.__fromImage(ad.preload);else{var f=this;Ia.loadFromBase64(lb.getString(ad.resourceName),ad.resourceType).then(function(a){f.__fromImage(a);return Ma.withValue(f)}).onComplete(function(a){null==ad.preload&&(ad.preload=a.image);null!=e&&aa.isFunction(e)&&e(a)})}};h["flixel.system.debug._Window.GraphicWindowHandle"]= +ad;ad.__name__="flixel.system.debug._Window.GraphicWindowHandle";ad.__super__=L;ad.prototype=p(L.prototype,{__class__:ad});var Mc=function(a,b,c,d,e,f,l,v){null==v&&(v=!0);null==l&&(l=!1);null==e&&(e=!0);null==d&&(d=0);null==c&&(c=0);ka.call(this);this.minSize=new Sa(50,30);this._width=Math.abs(c)|0;this._height=Math.abs(d)|0;this.updateBounds(f);this._drag=new Sa;this._resizable=e;this._closable=l;this._alwaysOnTop=v;this._shadow=new rb(new L(1,2,!0,-16777216));this._background=new rb(new L(1,1, +!0,-580952225));this._header=new rb(new L(1,15,!0,-1157627904));this._background.set_y(this._header.get_height());this._title=Md.createTextField(2,-1);this._title.set_alpha(.8);this._title.set_text(a);this.addChild(this._shadow);this.addChild(this._background);this.addChild(this._header);this.addChild(this._title);null!=b&&(Md.fixSize(b),this._icon=new rb(b),this._icon.set_x(5),this._icon.set_y(2),this._icon.set_alpha(.8),this._title.set_x(this._icon.get_x()+this._icon.get_width()+2),this.addChild(this._icon)); +this._resizable&&(this._handle=new rb(Md.fixSize(new ad(0,0))),this.addChild(this._handle));l?(this._closeButton=new df(new Zc(0,0),q(this,this.close)),this._closeButton.set_alpha(.8),this.addChild(this._closeButton)):(this._id=Mc.WINDOW_AMOUNT,this.loadSaveData(),Mc.WINDOW_AMOUNT++);0==this._width&&0==this._height||this.updateSize();this.bound();this.addEventListener("enterFrame",q(this,this.init))};h["flixel.system.debug.Window"]=Mc;Mc.__name__="flixel.system.debug.Window";Mc.__super__=ka;Mc.prototype= +p(ka.prototype,{minSize:null,maxSize:null,_width:null,_height:null,_bounds:null,_background:null,_header:null,_shadow:null,_title:null,_handle:null,_icon:null,_closeButton:null,_overHeader:null,_overHandle:null,_drag:null,_dragging:null,_resizing:null,_resizable:null,_closable:null,_alwaysOnTop:null,_id:null,destroy:function(){this._bounds=this.maxSize=this.minSize=null;null!=this._shadow&&this.removeChild(this._shadow);this._shadow=null;null!=this._background&&this.removeChild(this._background); +this._background=null;null!=this._header&&this.removeChild(this._header);this._header=null;null!=this._title&&this.removeChild(this._title);this._title=null;null!=this._handle&&this.removeChild(this._handle);this._drag=this._handle=null;this._closeButton=Z.destroy(this._closeButton);var a=ma.get_current().stage;a.hasEventListener("mouseMove")&&a.removeEventListener("mouseMove",q(this,this.onMouseMove));this.hasEventListener("mouseDown")&&this.removeEventListener("mouseDown",q(this,this.onMouseDown)); +a.hasEventListener("mouseUp")&&a.removeEventListener("mouseUp",q(this,this.onMouseUp))},resize:function(a,b){this._width=Math.abs(a)|0;this._height=Math.abs(b)|0;this.updateSize()},reposition:function(a,b){this.set_x(a);this.set_y(b);this.bound()},updateBounds:function(a){this._bounds=a;this.maxSize=null!=this._bounds?new Sa(this._bounds.width,this._bounds.height):new Sa(1.79E308,1.79E308)},loadSaveData:function(){null!=u.save.data.windowSettings?this.set_visible(u.save.data.windowSettings[this._id]): +(this.initSaveData(),this.loadSaveData())},initSaveData:function(){u.save.data.windowSettings=[!0,!0,!0,!0,!0,!0,!0,!0,!0,!0];u.save.flush()},init:function(a){null!=this.stage&&(this.removeEventListener("enterFrame",q(this,this.init)),this.stage.addEventListener("mouseMove",q(this,this.onMouseMove)),this.stage.addEventListener("mouseUp",q(this,this.onMouseUp)),this.addEventListener("mouseDown",q(this,this.onMouseDown)))},onMouseMove:function(a){a=0>this.get_mouseX()?0:this.get_mouseX();var b=0>this.get_mouseY()? +0:this.get_mouseY();this.parent.get_visible()?this._dragging?(this._overHeader=!0,this.reposition(this.parent.get_mouseX()-this._drag.x,this.parent.get_mouseY()-this._drag.y)):this._resizing?(this._overHandle=!0,this.resize(a-this._drag.x,b-this._drag.y)):0<=a&&a<=this._width&&0<=b&&b<=this._height?(this._overHeader=a<=this._header.get_width()&&b<=this._header.get_height(),this._resizable&&(this._overHandle=a>=this._width-this._handle.get_width()&&b>=this._height-this._handle.get_height())):this._overHandle= +this._overHeader=!1:this._overHandle=this._overHeader=!1},onMouseDown:function(a){if(this._overHeader)this._alwaysOnTop&&this.parent.addChild(this),this._dragging=!0,this._drag.x=this.get_mouseX(),this._drag.y=this.get_mouseY();else if(this._overHandle){this._alwaysOnTop&&this.parent.addChild(this);this._resizing=!0;a=this._width;var b=this.get_mouseX();this._drag.x=a-b;a=this._height;b=this.get_mouseY();this._drag.y=a-b}},onMouseUp:function(a){this._resizing=this._dragging=!1},bound:function(){if(null!= +this._bounds){var a=this.get_x(),b=this._bounds.get_left(),c=this._bounds.get_right()-this._width;a=null!=b&&ac?c:a);a=this.get_y();b=this._bounds.get_top();c=this._bounds.get_bottom()-this._height;a=null!=b&&ac?c:a)}},updateSize:function(){var a=this._width,b=this.minSize.x,c=this.maxSize.x;a=null!=b&&ac?c:a)|0;a=this._height;b=this.minSize.y;c=this.maxSize.y;a=null!=b&&ac?c:a)| +0;this._header.set_scaleX(this._width);this._background.set_scaleX(this._width);this._background.set_scaleY(this._height-this._header.get_height());this._shadow.set_scaleX(this._width);this._shadow.set_y(this._height);this._title.set_width(this._width-4);this._resizable&&(this._handle.set_x(this._width-this._handle.get_width()),this._handle.set_y(this._height-this._handle.get_height()));null!=this._closeButton&&(this._closeButton.set_x(this._width-this._closeButton.get_width()-3),this._closeButton.set_y(3))}, +close:function(){this.destroy()},__class__:Mc});var $h=function(a){this.selectedIndex=this.lowerVisibleIndex=this.upperVisibleIndex=0;this.entries=[];ka.call(this);this.set_visible(!1);this.upperVisibleIndex=a-1;this.actualHeight=20*a;this.createPopupEntries(a);this.createScrollBar();this.updateSelectedItem();ma.get_current().stage.addEventListener("keyDown",q(this,this.onKeyDown))};h["flixel.system.debug.completion.CompletionList"]=$h;$h.__name__="flixel.system.debug.completion.CompletionList";$h.__super__= +ka;$h.prototype=p(ka.prototype,{completed:null,selectionChanged:null,closed:null,filter:null,items:null,entries:null,originalItems:null,selectedIndex:null,lowerVisibleIndex:null,upperVisibleIndex:null,scrollBar:null,actualHeight:null,close:function(){this.set_visible(!1);this.set_filter(null);null!=this.closed&&this.closed()},createPopupEntries:function(a){for(var b=0;b=c)&&(null==d||b<=d)||(this.lowerVisibleIndex= +this.bound(this.lowerVisibleIndex+a),this.upperVisibleIndex=this.bound(this.upperVisibleIndex+a),this.upperVisibleIndex-this.lowerVisibleIndex!=this.items.length&&(0==this.lowerVisibleIndex?this.upperVisibleIndex=this.entries.length-1:this.upperVisibleIndex==this.items.length-1&&(this.lowerVisibleIndex=this.items.length-this.entries.length)))},bound:function(a){var b=this.items.length-1;a=0>a?0:a;return(null!=b&&a>b?b:a)|0},updateEntries:function(){this.updateLabels();this.updateSelectedItem();this.scrollBar.updateHandle(this.lowerVisibleIndex, +this.items.length,this.entries.length)},updateLabels:function(){for(var a=0,b=this.entries.length;al?-d:l>d?l:d==l?b.length-e.length|0:0}); +return b},startsWithExt:function(a,b){return da.startsWith(a,b)?2:da.startsWith(a.replace(/^[_]+/,""),b)?1:0},set_filter:function(a){if(a==this.filter)return a;this.setItems(this.filterItems(a));return this.filter=a},__class__:$h,__properties__:p(ka.prototype.__properties__,{set_filter:"set_filter"})});var xd=function(){this.selected=!1;ka.call(this);this.initBitmapDatas();this.addChild(this.background=new rb);this.background.set_bitmapData(xd.normalBitmapData);this.label=Md.createTextField();this.label.set_x(4); +this.addChild(this.label)};h["flixel.system.debug.completion.CompletionListEntry"]=xd;xd.__name__="flixel.system.debug.completion.CompletionListEntry";xd.__super__=ka;xd.prototype=p(ka.prototype,{selected:null,background:null,label:null,initBitmapDatas:function(){null==xd.normalBitmapData&&(xd.normalBitmapData=new L(150,20,!0,-10526881));null==xd.highlightBitmapData&&(xd.highlightBitmapData=new L(150,20,!0,-9605779))},setItem:function(a){this.label.set_text(a);150c?0:c;a.set_y(null!=b&&c>b?b:c)},__class__:Eg});var ai=function(){var a=this;this.variables=new Ea;this.locals=new Ea;this.declared=[];var b=this.variables; +null!=r["null"]?b.setReserved("null",null):b.h["null"]=null;b=this.variables;null!=r["true"]?b.setReserved("true",!0):b.h["true"]=!0;b=this.variables;null!=r["false"]?b.setReserved("false",!1):b.h["false"]=!1;b=this.variables;var c=aa.makeVarArgs(function(b){var c=a.posInfos(),d=b.shift();0>a.expr(c)};null!=r[">>"]?b.setReserved(">>",c):b.h[">>"]=c;b=this.binops;c=function(b,c){return a.expr(b)>>>a.expr(c)};null!=r[">>>"]?b.setReserved(">>>",c):b.h[">>>"]=c;b=this.binops;c=function(b,c){return a.expr(b)==a.expr(c)};null!=r["=="]?b.setReserved("==",c):b.h["=="]=c;b=this.binops;c=function(b,c){return a.expr(b)!=a.expr(c)};null!=r["!="]?b.setReserved("!=",c):b.h["!="]=c;b=this.binops; +c=function(b,c){return a.expr(b)>=a.expr(c)};null!=r[">="]?b.setReserved(">=",c):b.h[">="]=c;b=this.binops;c=function(b,c){return a.expr(b)<=a.expr(c)};null!=r["<="]?b.setReserved("<=",c):b.h["<="]=c;b=this.binops;c=function(b,c){return a.expr(b)>a.expr(c)};null!=r[">"]?b.setReserved(">",c):b.h[">"]=c;b=this.binops;c=function(b,c){return a.expr(b)>=",function(a,b){return a>>b});this.assignOp(">>>=",function(a,b){return a>>>b})},assign:function(a,b){b=this.expr(b);switch(a._hx_index){case 1:a=a.v;var c=this.locals;c=null!=r[a]?c.getReserved(a):c.h[a];null==c?(c=this.variables,null!=r[a]?c.setReserved(a, +b):c.h[a]=b):c.r=b;break;case 5:c=a.f;b=this.set(this.expr(a.e),c,b);break;case 16:c=a.index;a=this.expr(a.e);c=this.expr(c);xa.__implements(a,Ya)?xa.__cast(a,Ya).set(c,b):a[c]=b;break;default:throw b=Tb.EInvalidOp("="),new F(b);}return b},assignOp:function(a,b){var c=this,d=this.binops,e=function(d,e){return c.evalAssignOp(a,b,d,e)};null!=r[a]?d.setReserved(a,e):d.h[a]=e},evalAssignOp:function(a,b,c,d){switch(c._hx_index){case 1:a=c.v;var e=this.locals;e=null!=r[a]?e.getReserved(a):e.h[a];b=b(this.expr(c), +this.expr(d));null==e?(d=this.variables,null!=r[a]?d.setReserved(a,b):d.h[a]=b):e.r=b;break;case 5:a=c.f;c=this.expr(c.e);b=b(this.get(c,a),this.expr(d));b=this.set(c,a,b);break;case 16:a=c.index;c=this.expr(c.e);a=this.expr(a);xa.__implements(c,Ya)?(b=b(xa.__cast(c,Ya).get(a),this.expr(d)),xa.__cast(c,Ya).set(a,b)):(b=b(c[a],this.expr(d)),c[a]=b);break;default:throw b=Tb.EInvalidOp(a),new F(b);}return b},increment:function(a,b,c){switch(a._hx_index){case 1:var d=a.v;a=this.locals;var e=null!=r[d]? +a.getReserved(d):a.h[d];null==e?(a=this.variables,a=null!=r[d]?a.getReserved(d):a.h[d]):a=e.r;b?(a+=c,null==e?(c=this.variables,b=a,null!=r[d]?c.setReserved(d,b):c.h[d]=b):e.r=a):null==e?(b=this.variables,c=a+c,null!=r[d]?b.setReserved(d,c):b.h[d]=c):e.r=a+c;return a;case 5:return d=a.f,a=this.expr(a.e),e=this.get(a,d),b?(e+=c,this.set(a,d,e)):this.set(a,d,e+c),e;case 16:e=a.index;d=this.expr(a.e);a=this.expr(e);if(xa.__implements(d,Ya))return e=xa.__cast(d,Ya).get(a),b?(e+=c,xa.__cast(d,Ya).set(a, +e)):xa.__cast(d,Ya).set(a,e+c),e;e=d[a];b?(e+=c,d[a]=e):d[a]=e+c;return e;default:throw c=Tb.EInvalidOp(0a;){var b=this.declared.pop(),c=b.n;b=b.old;var d=this.locals;null!=r[c]?d.setReserved(c,b):d.h[c]=b}},resolve:function(a){var b=this.locals;b=null!=r[a]?b.getReserved(a):b.h[a];if(null!=b)return b.r;b=this.variables;b=null!=r[a]?b.getReserved(a):b.h[a];if(null==b){var c= +this.variables;c=!(null!=r[a]?c.existsReserved(a):c.h.hasOwnProperty(a))}else c=!1;if(c)throw a=Tb.EUnknownVariable(a),new F(a);return b},expr:function(a){var b=this;switch(a._hx_index){case 0:var c=a.c;switch(c._hx_index){case 0:return c.v;case 1:return c.f;case 2:return c.s}break;case 1:return this.resolve(a.v);case 2:var d=a.e,e=a.n,f=this.locals;this.declared.push({n:e,old:null!=r[e]?f.getReserved(e):f.h[e]});var l=this.locals,v={r:null==d?null:this.expr(d)};null!=r[e]?l.setReserved(e,v):l.h[e]= +v;return null;case 3:return this.expr(a.e);case 4:for(var m=a.e,g=this.declared.length,h=null,k=0;k"==Y.op:!1}else da=!1;if(da){for(var ba=!0,ca=!0,Z=!0,Da=!0,S=[],ma=[],qa=0;qa"==ja.op){var la=ja.e2,fa=this.expr(ja.e1),ra=this.expr(la);ba=ba&&"string"==typeof fa;ca=ca&&"number"==typeof fa&&(fa|0)===fa;Z=Z&&aa.isObject(fa);Da=Da&&aa.isEnumValue(fa);S.push(fa);ma.push(ra)}else throw new F("=> expected");else throw new F("=> expected");}if(ca)var pa=new ab;else if(ba)pa=new Ea;else if(Da)pa=new We;else if(Z)pa=new X;else throw new F("Inconsistent key types"); +for(var oa=0,wa=S.length;oaa?0:a;a=1d;)a=d++,a=new rb(new L(4,a+1,!1,-1)),a.set_x(b),a.set_y(c),this.addChild(a),this._bars.push(a),b+=6,--c;this.set_y(-this.get_height());this.set_visible(!1)};h["flixel.system.ui.FlxSoundTray"]=jg;jg.__name__= +"flixel.system.ui.FlxSoundTray";jg.__super__=ka;jg.prototype=p(ka.prototype,{active:null,_timer:null,_bars:null,_width:null,_defaultScale:null,update:function(a){0-this.get_height()&&(this.set_y(this.get_y()-a/1E3*u.height*2),this.get_y()<=-this.get_height()&&(this.set_visible(!1),this.active=!1,u.save.data.mute=u.sound.muted,u.save.data.volume=u.sound.volume,u.save.flush()))},show:function(a){null==a&&(a=!1);a||(a=Ka.getSound("flixel/sounds/beep.ogg"), +null!=a&&u.sound.load(a).play());this._timer=1;this.set_y(0);this.set_visible(!0);this.active=!0;a=Math.round(10*u.sound.volume);u.sound.muted&&(a=0);for(var b=0,c=this._bars.length;b=d.length?1:10);this.set_allowCollisions(0);this.set_moves(!1);this.drawFrame();b=a=1;null==b&&(b=0);null==a&&(a=0);a=ra._pool.get().set(a,b);a._inPool=!1;this.shadowOffset=a};h["flixel.text.FlxText"]=Ue;Ue.__name__= +"flixel.text.FlxText";Ue.__super__=I;Ue.prototype=p(I.prototype,{text:null,borderStyle:null,borderColor:null,borderSize:null,borderQuality:null,textField:null,shadowOffset:null,_defaultFormat:null,_formatAdjusted:null,_formatRanges:null,_font:null,_regen:null,_borderPixels:null,_borderColorTransform:null,_hasBorderAlpha:null,destroy:function(){this._formatAdjusted=this._defaultFormat=this._font=this.textField=null;this.shadowOffset=Z.put(this.shadowOffset);I.prototype.destroy.call(this)},drawFrame:function(a){null== +a&&(a=!1);this._regen=this._regen||a;I.prototype.drawFrame.call(this,this._regen)},setFormat:function(a,b,c,d,e,f,l){null==l&&(l=!0);null==f&&(f=0);null==c&&(c=-1);null==b&&(b=8);e=null==e?Ef.NONE:e;l?this.set_font(a):null!=a&&this.set_systemFont(a);this.set_size(b);this.set_color(c);null!=d&&this.set_alignment(d);a=f;null==a&&(a=0);this.set_borderStyle(e);this.set_borderColor(a);this.set_borderSize(1);this.set_borderQuality(1);this.textField.set_defaultTextFormat(this._defaultFormat);this.textField.setTextFormat(this._defaultFormat); +this._regen=!0;return this},updateHitbox:function(){this.regenGraphic();I.prototype.updateHitbox.call(this)},set_fieldWidth:function(a){if(null==this.textField)return a;0>=a?(this.set_wordWrap(!1),this.set_autoSize(!0)):(this.set_autoSize(!1),this.set_wordWrap(!0),this.textField.set_width(a));this._regen=!0;return a},set_autoSize:function(a){null!=this.textField&&(this.textField.set_autoSize(a?1:2),this._regen=!0);return a},set_text:function(a){this.text=a;if(null!=this.textField){var b=this.textField.get_text(); +this.textField.set_text(a);this._regen=this.textField.get_text()!=b||this._regen}return a},set_size:function(a){this._defaultFormat.size=a;this.textField.set_defaultTextFormat(this._defaultFormat);this.textField.setTextFormat(this._defaultFormat);this._regen=!0;return a},set_color:function(a){if(this._defaultFormat.color==(a&16777215))return a;this._defaultFormat.color=a&16777215;this.color=a;this.textField.set_defaultTextFormat(this._defaultFormat);this.textField.setTextFormat(this._defaultFormat); +this._regen=!0;return a},set_font:function(a){this.textField.set_embedFonts(!0);if(null!=a){var b=a;Ka.exists(a,"FONT")&&(b=Ka.getFont(a).name);this._defaultFormat.font=b}else this._defaultFormat.font=Wc.FONT_DEFAULT;this.textField.set_defaultTextFormat(this._defaultFormat);this.textField.setTextFormat(this._defaultFormat);this._regen=!0;return this._font=this._defaultFormat.font},set_systemFont:function(a){this.textField.set_embedFonts(!1);this._defaultFormat.font=a;this.textField.set_defaultTextFormat(this._defaultFormat); +this.textField.setTextFormat(this._defaultFormat);this._regen=!0;return a},set_wordWrap:function(a){this.textField.get_wordWrap()!=a&&(this.textField.set_wordWrap(a),this._regen=!0);return a},set_alignment:function(a){this._defaultFormat.align=kj.toOpenFL(a);this.textField.set_defaultTextFormat(this._defaultFormat);this.textField.setTextFormat(this._defaultFormat);this._regen=!0;return a},set_borderStyle:function(a){a!=this.borderStyle&&(this._regen=!0);return this.borderStyle=a},set_borderColor:function(a){this.borderColor!= +a&&this.borderStyle!=Ef.NONE&&(this._regen=!0);this._hasBorderAlpha=1>(a>>24&255)/255;return this.borderColor=a},set_borderSize:function(a){a!=this.borderSize&&this.borderStyle!=Ef.NONE&&(this._regen=!0);return this.borderSize=a},set_borderQuality:function(a){a=0>a?0:a;a=1> +24&255)/255,this._borderPixels.colorTransform(this._borderPixels.rect,this._borderColorTransform),this.graphic.bitmap.draw(this._borderPixels)),this.applyFormats(this._formatAdjusted,!1),this.drawTextFieldTo(this.graphic.bitmap));this._regen=!1;this.set_frame(this.frame)}},drawTextFieldTo:function(a){a.draw(this.textField,this._matrix)},draw:function(){this.regenGraphic();I.prototype.draw.call(this)},calcFrame:function(a){null==a&&(a=!1);null==this.textField||u.renderTile&&!a||(this.regenGraphic(), +I.prototype.calcFrame.call(this,a))},applyBorderStyle:function(){var a=this.borderSize*this.borderQuality|0;0>=a&&(a=1);var b=this.borderSize/a;switch(this.borderStyle._hx_index){case 1:this.applyFormats(this._formatAdjusted,!0);for(var c=0,d=a;c +a||a>=this._data.length?!1:0a&& +!this._running&&(this._running=!0,null!=this.onStart))this.onStart(this);if(this._secondsSinceStart>=this.duration+a)this.scale=this.backward?0:1,this.finished=!0;else if(null!=this.onUpdate)this.onUpdate(this)}},start:function(){this._waitingForRestart=!1;this._secondsSinceStart=0;this._delayToUse=0this.scale&&(this.scale=this.ease(this.scale)),4==a&&(this.backward=!this.backward)&& +(this.scale=1-this.scale),this.restart()},onEnd:function(){this.setVarsOnEnd();this.processTweenChain()},setVarsOnEnd:function(){this.set_active(!1);this._running=!1;this.finished=!0},processTweenChain:function(){null==this._chainedTweens||0>=this._chainedTweens.length||(this._nextTweenInChain=this._chainedTweens.shift(),this.doNextTween(this._nextTweenInChain),this._chainedTweens=null)},doNextTween:function(a){a.active||(a.start(),this.manager.add_flixel_tweens_FlxTween(a));a.setChain(this._chainedTweens)}, +setChain:function(a){null!=a&&(this._chainedTweens=null==this._chainedTweens?a:this._chainedTweens.concat(a))},restart:function(){this.active?this.start():this._waitingForRestart=!0},setDelays:function(a,b){this.set_startDelay(null!=a?a:0);this.set_loopDelay(null!=b?b:0);return this},set_startDelay:function(a){a=Math.abs(a);0==this.executions&&(this._secondsSinceStart=Math.max(this._secondsSinceStart-this._delayToUse,0)/this.duration*this.duration+Math.max(a-this.startDelay,0),this._delayToUse=a); +return this.startDelay=a},set_loopDelay:function(a){a=Math.abs(a);0this.maxInputMovement}else c=!1;return c&&b==this.currentInput|| +!this.overlapsPoint(a.getWorldPosition(d,this._point),!0,d)?!1:(this.updateStatus(b),!0)},updateStatus:function(a){if(a.get_justPressed())this.currentInput=a,this.onDownHandler();else if(0==this.status)if(this.allowSwiping&&a.get_pressed())this.onDownHandler();else this.onOverHandler()},updateLabelPosition:function(){null!=this._spriteLabel&&(this._spriteLabel.set_x((this.pixelPerfectPosition?Math.floor(this.x):this.x)+this.labelOffsets[this.status].x),this._spriteLabel.set_y((this.pixelPerfectPosition? +Math.floor(this.y):this.y)+this.labelOffsets[this.status].y))},updateLabelAlpha:function(){null!=this._spriteLabel&&this.labelAlphas.length>this.status&&this._spriteLabel.set_alpha(this.alpha*this.labelAlphas[this.status])},onUpEventListener:function(a){if(this.visible&&this.exists&&this.active&&2==this.status)this.onUpHandler()},onUpHandler:function(){this.set_status(0);this.input.release();this.currentInput=null;var a=this.onUp;null!=a.callback&&a.callback();null!=a.sound&&a.sound.play(!0)},onDownHandler:function(){this.set_status(2); +this.input.press();var a=this.onDown;null!=a.callback&&a.callback();null!=a.sound&&a.sound.play(!0)},onOverHandler:function(){if(u.mouse.enabled){this.set_status(1);var a=this.onOver;null!=a.callback&&a.callback();null!=a.sound&&a.sound.play(!0)}else this.set_status(0)},onOutHandler:function(){this.set_status(0);this.input.release();var a=this.onOut;null!=a.callback&&a.callback();null!=a.sound&&a.sound.play(!0)},set_label:function(a){null!=a&&(a.scrollFactor.put(),a.scrollFactor=this.scrollFactor); +this._spriteLabel=this.label=a;this.updateLabelPosition();return a},set_status:function(a){this.status=a;this.updateLabelAlpha();return this.status},set_alpha:function(a){I.prototype.set_alpha.call(this,a);this.updateLabelAlpha();return this.alpha},set_x:function(a){I.prototype.set_x.call(this,a);this.updateLabelPosition();return this.x},set_y:function(a){I.prototype.set_y.call(this,a);this.updateLabelPosition();return this.y},get_justReleased:function(){return-1==this.input.current},get_pressed:function(){var a= +this.input;return 1!=a.current?2==a.current:!0},get_justPressed:function(){return 2==this.input.current},__class__:ne,__properties__:p(I.prototype.__properties__,{get_justPressed:"get_justPressed",get_pressed:"get_pressed",get_justReleased:"get_justReleased",set_status:"set_status",set_label:"set_label"})});var Rc=function(a,b,c,d){null==b&&(b=0);null==a&&(a=0);ne.call(this,a,b,d);a=0;for(b=this.labelOffsets;athis.maxInputMovement}else c=!1;return c&&b==this.currentInput||!this.overlapsPoint(a.getWorldPosition(d,this._point),!0,d)?!1:(this.updateStatus(b),!0)},updateStatus:function(a){if(a.get_justPressed())this.currentInput=a,this.onDownHandler();else if(0==this.status)if(this.allowSwiping&&a.get_pressed())this.onDownHandler();else this.onOverHandler()},updateLabelPosition:function(){null!= +this._spriteLabel&&(this._spriteLabel.set_x((this.pixelPerfectPosition?Math.floor(this.x):this.x)+this.labelOffsets[this.status].x),this._spriteLabel.set_y((this.pixelPerfectPosition?Math.floor(this.y):this.y)+this.labelOffsets[this.status].y))},updateLabelAlpha:function(){null!=this._spriteLabel&&this.labelAlphas.length>this.status&&this._spriteLabel.set_alpha(this.alpha*this.labelAlphas[this.status])},onUpEventListener:function(a){if(this.visible&&this.exists&&this.active&&2==this.status)this.onUpHandler()}, +onUpHandler:function(){this.set_status(0);this.input.release();this.currentInput=null;var a=this.onUp;null!=a.callback&&a.callback();null!=a.sound&&a.sound.play(!0)},onDownHandler:function(){this.set_status(2);this.input.press();var a=this.onDown;null!=a.callback&&a.callback();null!=a.sound&&a.sound.play(!0)},onOverHandler:function(){if(u.mouse.enabled){this.set_status(1);var a=this.onOver;null!=a.callback&&a.callback();null!=a.sound&&a.sound.play(!0)}else this.set_status(0)},onOutHandler:function(){this.set_status(0); +this.input.release();var a=this.onOut;null!=a.callback&&a.callback();null!=a.sound&&a.sound.play(!0)},set_label:function(a){null!=a&&(a.scrollFactor.put(),a.scrollFactor=this.scrollFactor);this._spriteLabel=this.label=a;this.updateLabelPosition();return a},set_status:function(a){this.status=a;this.updateLabelAlpha();return this.status},set_alpha:function(a){I.prototype.set_alpha.call(this,a);this.updateLabelAlpha();return this.alpha},set_x:function(a){I.prototype.set_x.call(this,a);this.updateLabelPosition(); +return this.x},set_y:function(a){I.prototype.set_y.call(this,a);this.updateLabelPosition();return this.y},get_justReleased:function(){return-1==this.input.current},get_pressed:function(){var a=this.input;return 1!=a.current?2==a.current:!0},get_justPressed:function(){return 2==this.input.current},__class__:Mg,__properties__:p(I.prototype.__properties__,{get_justPressed:"get_justPressed",get_pressed:"get_pressed",get_justReleased:"get_justReleased",set_status:"set_status",set_label:"set_label"})}); +var Bd=function(a,b){this.callback=a;this.sound=b};h["flixel.ui._FlxButton.FlxButtonEvent"]=Bd;Bd.__name__="flixel.ui._FlxButton.FlxButtonEvent";Bd.__interfaces__=[bb];Bd.prototype={callback:null,sound:null,destroy:function(){this.callback=null;this.sound=Z.destroy(this.sound)},__class__:Bd};var fe=function(){};h["flixel.util.FlxArrayUtil"]=fe;fe.__name__="flixel.util.FlxArrayUtil";fe.setLength_flixel_group_FlxTypedGroup_T=function(a,b){if(0>b)return a;var c=b-a.length;if(0<=c)return a;b=0;for(c= +-c;b=this.x&&b>=this.y&&aa+c&&(l=a+c-this.get_right());this.get_bottom()>b+d&&(v=b+d-this.get_bottom());this.x+= +e;this.y+=f;this.width+=l-e;this.height+=v-f}},__expand:function(a,b,c,d){if(0==this.width&&0==this.height)this.x=a,this.y=b,this.width=c,this.height=d;else{var e=this.get_right(),f=this.get_bottom();this.x>a&&(this.x=a,this.width=e-a);this.y>b&&(this.y=b,this.height=f-b);ed&&(d=l);v>f&&(f=v);l=b.a*(this.x+this.width)+b.c*(this.y+this.height);v=b.b*(this.x+this.width)+b.d*(this.y+this.height);ld&&(d=l);v>f&&(f=v);l=b.a*this.x+b.c*(this.y+this.height);v=b.b*this.x+b.d*(this.y+this.height);ld&&(d=l);v>f&&(f=v);a.setTo(c+b.tx,e+b.ty,d-c,f-e)}, +get_bottom:function(){return this.y+this.height},get_left:function(){return this.x},get_right:function(){return this.x+this.width},get_top:function(){return this.y},__class__:qa,__properties__:{get_top:"get_top",get_right:"get_right",get_left:"get_left",get_bottom:"get_bottom"}};var Ih={};h["flixel.util._FlxColor.FlxColor_Impl_"]=Ih;Ih.__name__="flixel.util._FlxColor.FlxColor_Impl_";Ih._new=function(a){null==a&&(a=0);return a};var Qc=function(){};h["flixel.util.FlxColorTransformUtil"]=Qc;Qc.__name__= +"flixel.util.FlxColorTransformUtil";Qc.setMultipliers=function(a,b,c,d,e){a.redMultiplier=b;a.greenMultiplier=c;a.blueMultiplier=d;a.alphaMultiplier=e;return a};Qc.hasRGBMultipliers=function(a){return 1==a.redMultiplier&&1==a.greenMultiplier?1!=a.blueMultiplier:!0};Qc.hasRGBOffsets=function(a){return 0==a.redOffset&&0==a.greenOffset?0!=a.blueOffset:!0};Qc.hasRGBAOffsets=function(a){return Qc.hasRGBOffsets(a)?!0:0!=a.alphaOffset};var Z=function(){};h["flixel.util.FlxDestroyUtil"]=Z;Z.__name__="flixel.util.FlxDestroyUtil"; +Z.destroy=function(a){null!=a&&a.destroy();return null};Z.destroyArray=function(a){if(null!=a){for(var b=0;b=Math.abs(a.x-b.x)&&1E-7>=Math.abs(a.y-b.y),b._weak&&b.put(),a?this.object.velocity.set():this.calculateVelocity(b,c,d),this._autoRotate&&(this.object.angularVelocity= +0,this.object.angularAcceleration=0,this.object.set_angle(this.angle)),this.finished&&this.cancel())}},calculateVelocity:function(a,b,c){b||Nb._point.y==a.y?(this.object.velocity.set_x(Nb._point.xthis.object.velocity.x?-90:90,b||this.object.velocity.set_y(0)):c||Nb._point.x==a.x?(this.object.velocity.set_y(Nb._point.ythis.object.velocity.y?0:180,c||this.object.velocity.set_x(0)):(this.object.velocity.set_x(Nb._point.x< +a.x?this.speed:-this.speed),this.object.velocity.set_y(Nb._point.ythis.nodeIndex&&(this.nodeIndex=0,a=!0,this.onEnd()):0<(this._mode&16)?this.nodeIndex>=this._nodes.length&&(a=!0,this.nodeIndex=0):0<(this._mode&256)?0>this.nodeIndex&&(this.nodeIndex=this._nodes.length-1,a=!0,0>this.nodeIndex&&(this.nodeIndex=0)):0<(this._mode&4096)?0= +this._nodes.length&&(this.nodeIndex=this._nodes.length-2,a=!0,0>this.nodeIndex&&(this.nodeIndex=0),this._inc=-this._inc):0>this.nodeIndex&&(this.nodeIndex=1,a=!0,this.nodeIndex>=this._nodes.length&&(this.nodeIndex=this._nodes.length-1),0>this.nodeIndex&&(this.nodeIndex=0),this._inc=-this._inc):this.nodeIndex>=this._nodes.length&&(this.nodeIndex=this._nodes.length-1,a=!0,this.onEnd());if(a&&null!=this.onComplete)this.onComplete(this);return this._nodes[this.nodeIndex]},cancel:function(){this.onEnd(); +null!=this.object&&this.object.velocity.set(0,0);return this},onEnd:function(){this.finished=!0;this.active=!1;null!=this._wasObjectImmovable&&this.object.set_immovable(this._wasObjectImmovable);this._wasObjectImmovable=null},destroy:function(){Z.putArray(this._nodes);this.onComplete=this.object=this._nodes=null},__class__:Nb};var Oh=B["flixel.util.FlxSaveStatus"]={__ename__:"flixel.util.FlxSaveStatus",__constructs__:["SUCCESS","PENDING","ERROR"],SUCCESS:{_hx_index:0,__enum__:"flixel.util.FlxSaveStatus", +toString:g},PENDING:{_hx_index:1,__enum__:"flixel.util.FlxSaveStatus",toString:g},ERROR:{_hx_index:2,__enum__:"flixel.util.FlxSaveStatus",toString:g}},Ng=function(a,b){this.dispatchOnce=!1;this.listener=a;this.dispatchOnce=b};h["flixel.util._FlxSignal.FlxSignalHandler"]=Ng;Ng.__name__="flixel.util._FlxSignal.FlxSignalHandler";Ng.__interfaces__=[bb];Ng.prototype={listener:null,dispatchOnce:null,destroy:function(){this.listener=null},__class__:Ng};var gi=function(){};h["flixel.util.IFlxSignal"]=gi; +gi.__name__="flixel.util.IFlxSignal";gi.__isInterface__=!0;gi.__interfaces__=[bb];var id=function(){this.processingListeners=!1;this.handlers=[];this.pendingRemove=[]};h["flixel.util._FlxSignal.FlxBaseSignal"]=id;id.__name__="flixel.util._FlxSignal.FlxBaseSignal";id.__interfaces__=[gi];id.prototype={dispatch:null,handlers:null,pendingRemove:null,processingListeners:null,add:function(a){null!=a&&this.registerListener(a,!1)},remove:function(a){null!=a&&(a=this.getHandler(a),null!=a&&(this.processingListeners? +this.pendingRemove.push(a):(z.remove(this.handlers,a),a.destroy())))},destroy:function(){Z.destroyArray(this.handlers);this.pendingRemove=this.handlers=null},registerListener:function(a,b){var c=this.getHandler(a);if(null==c)return c=new Ng(a,b),this.handlers.push(c),c;if(c.dispatchOnce!=b)throw new F("You cannot addOnce() then add() the same listener without removing the relationship first.");return c},getHandler:function(a){for(var b=0,c=this.handlers;bc&&(c*=-1);this.loops=c;this.onComplete=b;this._loopsCounter=this._timeCounter=0;return this}, +cancel:function(){this.finished=!0;this.active=!1;null!=this.manager&&this._inManager&&(this.manager.remove(this),this._inManager=!1)},update:function(a){for(this._timeCounter+=a;this._timeCounter>=this.time&&this.active&&!this.finished;)this._timeCounter-=this.time,this._loopsCounter++,0=this.loops&&(this.finished=!0)},onLoopFinished:function(){this.finished&&this.cancel();if(null!=this.onComplete)this.onComplete(this)},__class__:bf};var Jg=function(){this._timers= +[];Ga.call(this);this.set_visible(!1);u.signals.preStateSwitch.add(q(this,this.clear))};h["flixel.util.FlxTimerManager"]=Jg;Jg.__name__="flixel.util.FlxTimerManager";Jg.__super__=Ga;Jg.prototype=p(Ga.prototype,{_timers:null,destroy:function(){fe.clearArray(this._timers);this._timers=null;u.signals.preStateSwitch.remove(q(this,this.clear));Ga.prototype.destroy.call(this)},update:function(a){for(var b=null,c=0,d=this._timers;c":b);a.b+=".";a.b+=null==c?"null":""+c;break;case 4:b=b.v,a.b+="local function #",a.b+=null==b?"null":""+b}};Ja.makeStack=function(a){if(null==a)return[];if("string"==typeof a){a=a.split("\n"); +"Error"==a[0]&&a.shift();for(var b=[],c=new ja("^ at ([A-Za-z0-9_. ]+) \\(([^)]+):([0-9]+):([0-9]+)\\)$",""),d=0;da?"m":"p";break;case 3:this.buf.b+=a?"t":"f";break;case 4:xa.__instanceof(a,Nh)?(a=a.__name__,this.buf.b+="A",this.serializeString(a)):xa.__instanceof(a,Pj)?(this.buf.b+="B",this.serializeString(a.__ename__)):this.useCache&&this.serializeRef(a)||(this.buf.b+="o",this.serializeFields(a));break;case 5:throw new F("Cannot serialize function"); +case 6:b=b.c;if(b==String){this.serializeString(a);break}if(this.useCache&&this.serializeRef(a))break;switch(b){case Array:b=0;this.buf.b+="a";for(var c=0,d=a.length;c>2]),this.buf.b+=String.fromCodePoint(b[(e<<4|f>>4)&63]),this.buf.b+=String.fromCodePoint(b[(f<<2|l>>6)&63]),this.buf.b+= +String.fromCodePoint(b[l&63]);c==d?(d=a.b[c++],a=a.b[c++],this.buf.b+=String.fromCodePoint(b[d>>2]),this.buf.b+=String.fromCodePoint(b[(d<<4|a>>4)&63]),this.buf.b+=String.fromCodePoint(b[a<<2&63])):c==d+1&&(a=a.b[c++],this.buf.b+=String.fromCodePoint(b[a>>2]),this.buf.b+=String.fromCodePoint(b[a<<4&63]));break;default:this.useCache&&this.cache.pop(),null!=a.hxSerialize?(this.buf.b+="C",this.serializeString(b.__name__),this.useCache&&this.cache.push(a),a.hxSerialize(this),this.buf.b+="g"):(this.buf.b+= +"c",this.serializeString(b.__name__),this.useCache&&this.cache.push(a),this.serializeFields(a))}break;case 7:b=b.e;if(this.useCache){if(this.serializeRef(a))break;this.cache.pop()}this.buf.b+=R.string(this.useEnumIndex?"j":"w");this.serializeString(b.__ename__);this.useEnumIndex?(this.buf.b+=":",this.buf.b+=R.string(a._hx_index)):this.serializeString(B[a.__enum__].__constructs__[a._hx_index]);this.buf.b+=":";b=La.enumParameters(a);this.buf.b+=R.string(b.length);for(c=0;cd||57b||101==b||69==b)this.pos++;else break}return parseFloat(z.substr(this.buf,a,this.pos-a))},unserializeObject:function(a){for(;;){if(this.pos>=this.length)throw new F("Invalid object");if(103==this.buf.charCodeAt(this.pos))break;var b=this.unserialize();if("string"!=typeof b)throw new F("Invalid object key");var c=this.unserialize();a[b]=c}this.pos++},unserializeEnum:function(a,b){if(58!=this.buf.charCodeAt(this.pos++))throw new F("Invalid enum format");var c=this.readDigits();if(0==c)return La.createEnum(a, +b);for(var d=[];0a||a>=this.scache.length)throw new F("Invalid string reference");return this.scache[a];case 97:a=[];for(this.cache.push(a);;){b=this.buf.charCodeAt(this.pos);if(104==b){this.pos++;break}117==b?(this.pos++, +b=this.readDigits(),a[a.length+b-1]=null):a.push(this.unserialize())}return a;case 98:a=new Ea;for(this.cache.push(a);104!=this.buf.charCodeAt(this.pos);){b=this.unserialize();var c=this.unserialize();null!=r[b]?a.setReserved(b,c):a.h[b]=c}this.pos++;return a;case 99:a=this.unserialize();b=this.resolver.resolveClass(a);if(null==b)throw new F("Class not found "+a);a=Object.create(b.prototype);this.cache.push(a);this.unserializeObject(a);return a;case 100:return this.readFloat();case 102:return!1;case 105:return this.readDigits(); +case 106:a=this.unserialize();b=this.resolver.resolveEnum(a);if(null==b)throw new F("Enum not found "+a);this.pos++;c=this.readDigits();var d=b.__constructs__.slice()[c];if(null==d)throw new F("Unknown enum index "+a+"@"+c);a=this.unserializeEnum(b,d);this.cache.push(a);return a;case 107:return NaN;case 108:a=new ia;for(this.cache.push(a);104!=this.buf.charCodeAt(this.pos);)a.add(this.unserialize());this.pos++;return a;case 109:return-Infinity;case 110:return null;case 111:return a={},this.cache.push(a), +this.unserializeObject(a),a;case 112:return Infinity;case 113:a=new ab;this.cache.push(a);for(b=this.buf.charCodeAt(this.pos++);58==b;)b=this.readDigits(),c=this.unserialize(),a.h[b]=c,b=this.buf.charCodeAt(this.pos++);if(104!=b)throw new F("Invalid IntMap format");return a;case 114:a=this.readDigits();if(0>a||a>=this.cache.length)throw new F("Invalid reference");return this.cache[a];case 115:a=this.readDigits();d=this.buf;if(58!=this.buf.charCodeAt(this.pos++)||this.length-this.pos>2)+(2<=l?l-1:0)));for(c=0;f>4)&255;m=e[d.charCodeAt(f++)];b.b[c++]=(g<<4|m>>2)&255;g=e[d.charCodeAt(f++)];b.b[c++]=(m<<6|g)&255}2<=l&&(g=e[d.charCodeAt(f++)],v=e[d.charCodeAt(f++)],b.b[c++]=(g<<2|v>>4)&255,3==l&&(d=e[d.charCodeAt(f++)],b.b[c++]=(v<<4|d>>2)&255));this.pos+=a;this.cache.push(b);return b;case 116:return!0; +case 118:return 48<=this.buf.charCodeAt(this.pos)&&57>=this.buf.charCodeAt(this.pos)&&48<=this.buf.charCodeAt(this.pos+1)&&57>=this.buf.charCodeAt(this.pos+1)&&48<=this.buf.charCodeAt(this.pos+2)&&57>=this.buf.charCodeAt(this.pos+2)&&48<=this.buf.charCodeAt(this.pos+3)&&57>=this.buf.charCodeAt(this.pos+3)&&45==this.buf.charCodeAt(this.pos+4)?(a=z.strDate(z.substr(this.buf,this.pos,19)),this.pos+=19):a=new Date(this.readFloat()),this.cache.push(a),a;case 119:a=this.unserialize();b=this.resolver.resolveEnum(a); +if(null==b)throw new F("Enum not found "+a);a=this.unserializeEnum(b,this.unserialize());this.cache.push(a);return a;case 120:throw F.wrap(this.unserialize());case 121:a=this.readDigits();if(58!=this.buf.charCodeAt(this.pos++)||this.length-this.pos1<b;){var c=b++;a[c]=-1}b=0;for(c=this.base.length;b>3,e=new Va(new ArrayBuffer(d)),f=0,l=0,v=0,m=0;ml;){l+=b;f<<=b;var g=c[a.b[v++]];if(-1==g)throw new F("BaseCode : invalid encoded char"); +f|=g}l-=8;e.b[m++]=f>>l&255}return e},__class__:ii};var Gb=function(){};h["haxe.ds.ArraySort"]=Gb;Gb.__name__="haxe.ds.ArraySort";Gb.sort=function(a,b){Gb.rec(a,b,0,a.length)};Gb.rec=function(a,b,c,d){var e=c+d>>1;if(12>d-c){if(!(d<=c))for(e=c+1;ec;){if(0>b(a[f],a[f-1]))Gb.swap(a,f-1,f);else break;--f}}else Gb.rec(a,b,c,e),Gb.rec(a,b,e,d),Gb.doMerge(a,b,c,e,d,e-c,d-e)};Gb.doMerge=function(a,b,c,d,e,f,l){if(0!=f&&0!=l)if(2==f+l)0>b(a[d],a[c])&&Gb.swap(a,d,c);else{if(f>l){var v= +f>>1;var m=c+v;var g=Gb.lower(a,b,d,e,m);var h=g-d}else h=l>>1,g=d+h,m=Gb.upper(a,b,c,d,g),v=m-c;Gb.rotate(a,b,m,d,g);d=m+h;Gb.doMerge(a,b,c,m,d,v,h);Gb.doMerge(a,b,d,g,e,f-v,l-h)}};Gb.rotate=function(a,b,c,d,e){if(c!=d&&d!=e)for(b=Gb.gcd(e-c,d-c);0!=b--;){for(var f=a[c+b],l=d-c,v=c+b,m=c+b+l;m!=c+b;)a[v]=a[m],v=m,m=e-m>l?m+l:c+(l-(e-m));a[v]=f}};Gb.gcd=function(a,b){for(;0!=b;){var c=a%b;a=b;b=c}return a};Gb.upper=function(a,b,c,d,e){d-=c;for(var f,l;0>1,l=c+f,0>b(a[e],a[l])?d=f:(c=l+1,d= +d-f-1);return c};Gb.lower=function(a,b,c,d,e){d-=c;for(var f,l;0>1,l=c+f,0>b(a[l],a[e])?(c=l+1,d=d-f-1):d=f;return c};Gb.swap=function(a,b,c){var d=a[b];a[b]=a[c];a[c]=d};var Nf=function(){};h["haxe.ds.BalancedTree"]=Nf;Nf.__name__="haxe.ds.BalancedTree";Nf.__interfaces__=[Ya];Nf.prototype={root:null,set:function(a,b){this.root=this.setLoop(a,b,this.root)},get:function(a){for(var b=this.root;null!=b;){var c=this.compare(a,b.key);if(0==c)return b.value;b=0>c?b.left:b.right}return null},remove:function(a){try{return this.root= +this.removeLoop(a,this.root),!0}catch(b){Ja.lastException=b;if("string"==typeof(b instanceof F?b.val:b))return!1;throw b;}},setLoop:function(a,b,c){if(null==c)return new uc(null,a,b,null);var d=this.compare(a,c.key);if(0==d)return new uc(c.left,a,b,c.right,null==c?0:c._height);if(0>d)return a=this.setLoop(a,b,c.left),this.balance(a,c.key,c.value,c.right);a=this.setLoop(a,b,c.right);return this.balance(c.left,c.key,c.value,a)},removeLoop:function(a,b){if(null==b)throw new F("Not_found");var c=this.compare(a, +b.key);return 0==c?this.merge(b.left,b.right):0>c?this.balance(this.removeLoop(a,b.left),b.key,b.value,b.right):this.balance(b.left,b.key,b.value,this.removeLoop(a,b.right))},merge:function(a,b){if(null==a)return b;if(null==b)return a;var c=this.minBinding(b);return this.balance(a,c.key,c.value,this.removeMinBinding(b))},minBinding:function(a){if(null==a)throw new F("Not_found");return null==a.left?a:this.minBinding(a.left)},removeMinBinding:function(a){return null==a.left?a.right:this.balance(this.removeMinBinding(a.left), +a.key,a.value,a.right)},balance:function(a,b,c,d){var e=null==a?0:a._height,f=null==d?0:d._height;return e>f+2?(e=a.left,f=a.right,(null==e?0:e._height)>=(null==f?0:f._height)?new uc(a.left,a.key,a.value,new uc(a.right,b,c,d)):new uc(new uc(a.left,a.key,a.value,a.right.left),a.right.key,a.right.value,new uc(a.right.right,b,c,d))):f>e+2?(e=d.right,f=d.left,(null==e?0:e._height)>(null==f?0:f._height)?new uc(new uc(a,b,c,d.left),d.key,d.value,d.right):new uc(new uc(a,b,c,d.left.left),d.left.key,d.left.value, +new uc(d.left.right,d.key,d.value,d.right))):new uc(a,b,c,d,(e>f?e:f)+1)},compare:function(a,b){return aa.compare(a,b)},__class__:Nf};var uc=function(a,b,c,d,e){null==e&&(e=-1);this.left=a;this.key=b;this.value=c;this.right=d;-1==e?(a=this.left,b=this.right,a=(null==a?0:a._height)>(null==b?0:b._height)?this.left:this.right,a=null==a?0:a._height,this._height=a+1):this._height=e};h["haxe.ds.TreeNode"]=uc;uc.__name__="haxe.ds.TreeNode";uc.prototype={left:null,right:null,key:null,value:null,_height:null, +__class__:uc};var We=function(){};h["haxe.ds.EnumValueMap"]=We;We.__name__="haxe.ds.EnumValueMap";We.__interfaces__=[Ya];We.__super__=Nf;We.prototype=p(Nf.prototype,{compare:function(a,b){var c=a._hx_index-b._hx_index;if(0!=c)return c;a=La.enumParameters(a);b=La.enumParameters(b);return 0==a.length&&0==b.length?0:this.compareArgs(a,b)},compareArgs:function(a,b){var c=a.length-b.length;if(0!=c)return c;c=0;for(var d=a.length;cthis.size&&this.grow(a.length);if(0!=this.size){var b=new Uint8Array(a.b.buffer, +a.b.byteOffset,a.length);this.u8.set(b,this.pos);this.pos+=a.length}},addBytes:function(a,b,c){if(0>b||0>c||b+c>a.length)throw new F($e.OutsideBounds);this.pos+c>this.size&&this.grow(c);0!=this.size&&(a=new Uint8Array(a.b.buffer,a.b.byteOffset+b,c),this.u8.set(a,this.pos),this.pos+=c)},grow:function(a){var b=this.pos+a;for(a=0==this.size?16:this.size;a>1;b=new ArrayBuffer(a);var c=new Uint8Array(b);0b||0>c||b+c>a.length)throw new F($e.OutsideBounds);try{for(;0b||0>c||b+c>a.length)throw new F($e.OutsideBounds);this.b=a.b;this.pos=b;this.totlen=this.len=c};h["haxe.io.BytesInput"]=Ee;Ee.__name__="haxe.io.BytesInput";Ee.__super__=Qg;Ee.prototype= +p(Qg.prototype,{b:null,pos:null,len:null,totlen:null,readByte:function(){if(0==this.len)throw new F(new Pf);this.len--;return this.b[this.pos++]},readBytes:function(a,b,c){if(0>b||0>c||b+c>a.length)throw new F($e.OutsideBounds);if(0==this.len&&0b)throw new F("Invalid huffman");var e=c<<5|d;if(a.h.hasOwnProperty(e))return Ge.Found(a.h[e]);c<<=1;++d;return Ge.NeedBit(this.treeMake(a,b,c,d), +this.treeMake(a,b,c|1,d))},make:function(a,b,c,d){if(1==c)return Ge.NeedBit(Ge.Found(0),Ge.Found(0));var e=[],f=[];if(32=d)throw new F("Invalid huffman");e[v]++}l=0;v=1;for(var m=d-1;vb;){var c=b++;a.push(143>=c?8:255>=c?9:279>=c?7:8)}ac.FIXED_HUFFMAN=this.htools.make(a,0,288,10);return ac.FIXED_HUFFMAN},readBytes:function(a,b,c){this.needed=c;this.outpos=b;this.output=a;if(0>=a;return b},getBit:function(){0==this.nbits&&(this.nbits=8,this.bits=this.input.readByte()); +var a=1==(this.bits&1);this.nbits--;this.bits>>=1;return a},getRevBits:function(a){return 0==a?0:this.getBit()?1<b)throw new F("Invalid data");for(;cb)throw new F("Invalid data");break;case 18:c+=11+this.getBits(7);if(c>b)throw new F("Invalid data");break;default:throw new F("Invalid data");}}},inflateLoop:function(){switch(this.state._hx_index){case 0:var a=this.input.readByte();if(8!=(a&15))throw new F("Invalid data");var b=this.input.readByte(),c=0!=(b&32);if(0!=((a<<8)+b)%31)throw new F("Invalid data"); +if(c)throw new F("Unsupported dictionary");this.state=Bc.Block;return!0;case 1:switch(this.isFinal=this.getBit(),this.getBits(2)){case 0:this.len=this.input.readUInt16();if(this.input.readUInt16()!=65535-this.len)throw new F("Invalid data");this.state=Bc.Flat;a=this.inflateLoop();this.resetBits();return a;case 1:return this.huffman=this.buildFixedHuffman(),this.huffdist=null,this.state=Bc.CData,!0;case 2:a=this.getBits(5)+257;b=this.getBits(5)+1;c=this.getBits(4)+4;for(var d=0;dc;)d=c++,this.lengths[ac.CODE_LENGTHS_POS[d]]=0;this.huffman=this.htools.make(this.lengths,0,19,8);c=[];d=0;for(e=a+b;db)return this.addByte(b),0this.window.available())throw new F("Invalid data");this.state=1==this.dist?Bc.DistOne:Bc.Dist}return!0;case 3:return a=this.len>11&31,c=a>>5&63;a&=31;var d=this.i.readUInt16();return new Date((d>>9)+1980,(d>>5&15)-1,d&31,b,c,a<<1)},readExtraFields:function(a){for(var b=new ia;0a)throw new F("Invalid extra fields data"); +var c=this.i.readUInt16(),d=this.i.readUInt16();if(a +c.dataSize){null==b&&(b=new Va(new ArrayBuffer(65536)));for(var d=new Of,e=new ac(this.i,!1,!1);;){var f=e.readBytes(b,0,65536);d.addBytes(b,0,f);if(65536>f)break}c.data=d.getBytes();c.crc32=this.i.readInt32();134695760==c.crc32&&(c.crc32=this.i.readInt32());c.dataSize=this.i.readInt32();c.fileSize=this.i.readInt32();c.dataSize=c.fileSize;c.compressed=!1}else c.data=this.i.read(c.dataSize);a.add(c)}return a},__class__:Qf};var Vd=B["hscript.Const"]={__ename__:"hscript.Const",__constructs__:["CInt", +"CFloat","CString"],CInt:(n=function(a){return{_hx_index:0,v:a,__enum__:"hscript.Const",toString:g}},n.__params__=["v"],n),CFloat:(n=function(a){return{_hx_index:1,f:a,__enum__:"hscript.Const",toString:g}},n.__params__=["f"],n),CString:(n=function(a){return{_hx_index:2,s:a,__enum__:"hscript.Const",toString:g}},n.__params__=["s"],n)},wa=B["hscript.Expr"]={__ename__:"hscript.Expr",__constructs__:"EConst EIdent EVar EParent EBlock EField EBinop EUnop ECall EIf EWhile EFor EBreak EContinue EFunction EReturn EArray EArrayDecl ENew EThrow ETry EObject ETernary ESwitch EDoWhile EMeta ECheckType".split(" "), +EConst:(n=function(a){return{_hx_index:0,c:a,__enum__:"hscript.Expr",toString:g}},n.__params__=["c"],n),EIdent:(n=function(a){return{_hx_index:1,v:a,__enum__:"hscript.Expr",toString:g}},n.__params__=["v"],n),EVar:(n=function(a,b,c){return{_hx_index:2,n:a,t:b,e:c,__enum__:"hscript.Expr",toString:g}},n.__params__=["n","t","e"],n),EParent:(n=function(a){return{_hx_index:3,e:a,__enum__:"hscript.Expr",toString:g}},n.__params__=["e"],n),EBlock:(n=function(a){return{_hx_index:4,e:a,__enum__:"hscript.Expr", +toString:g}},n.__params__=["e"],n),EField:(n=function(a,b){return{_hx_index:5,e:a,f:b,__enum__:"hscript.Expr",toString:g}},n.__params__=["e","f"],n),EBinop:(n=function(a,b,c){return{_hx_index:6,op:a,e1:b,e2:c,__enum__:"hscript.Expr",toString:g}},n.__params__=["op","e1","e2"],n),EUnop:(n=function(a,b,c){return{_hx_index:7,op:a,prefix:b,e:c,__enum__:"hscript.Expr",toString:g}},n.__params__=["op","prefix","e"],n),ECall:(n=function(a,b){return{_hx_index:8,e:a,params:b,__enum__:"hscript.Expr",toString:g}}, +n.__params__=["e","params"],n),EIf:(n=function(a,b,c){return{_hx_index:9,cond:a,e1:b,e2:c,__enum__:"hscript.Expr",toString:g}},n.__params__=["cond","e1","e2"],n),EWhile:(n=function(a,b){return{_hx_index:10,cond:a,e:b,__enum__:"hscript.Expr",toString:g}},n.__params__=["cond","e"],n),EFor:(n=function(a,b,c){return{_hx_index:11,v:a,it:b,e:c,__enum__:"hscript.Expr",toString:g}},n.__params__=["v","it","e"],n),EBreak:{_hx_index:12,__enum__:"hscript.Expr",toString:g},EContinue:{_hx_index:13,__enum__:"hscript.Expr", +toString:g},EFunction:(n=function(a,b,c,d){return{_hx_index:14,args:a,e:b,name:c,ret:d,__enum__:"hscript.Expr",toString:g}},n.__params__=["args","e","name","ret"],n),EReturn:(n=function(a){return{_hx_index:15,e:a,__enum__:"hscript.Expr",toString:g}},n.__params__=["e"],n),EArray:(n=function(a,b){return{_hx_index:16,e:a,index:b,__enum__:"hscript.Expr",toString:g}},n.__params__=["e","index"],n),EArrayDecl:(n=function(a){return{_hx_index:17,e:a,__enum__:"hscript.Expr",toString:g}},n.__params__=["e"], +n),ENew:(n=function(a,b){return{_hx_index:18,cl:a,params:b,__enum__:"hscript.Expr",toString:g}},n.__params__=["cl","params"],n),EThrow:(n=function(a){return{_hx_index:19,e:a,__enum__:"hscript.Expr",toString:g}},n.__params__=["e"],n),ETry:(n=function(a,b,c,d){return{_hx_index:20,e:a,v:b,t:c,ecatch:d,__enum__:"hscript.Expr",toString:g}},n.__params__=["e","v","t","ecatch"],n),EObject:(n=function(a){return{_hx_index:21,fl:a,__enum__:"hscript.Expr",toString:g}},n.__params__=["fl"],n),ETernary:(n=function(a, +b,c){return{_hx_index:22,cond:a,e1:b,e2:c,__enum__:"hscript.Expr",toString:g}},n.__params__=["cond","e1","e2"],n),ESwitch:(n=function(a,b,c){return{_hx_index:23,e:a,cases:b,defaultExpr:c,__enum__:"hscript.Expr",toString:g}},n.__params__=["e","cases","defaultExpr"],n),EDoWhile:(n=function(a,b){return{_hx_index:24,cond:a,e:b,__enum__:"hscript.Expr",toString:g}},n.__params__=["cond","e"],n),EMeta:(n=function(a,b,c){return{_hx_index:25,name:a,args:b,e:c,__enum__:"hscript.Expr",toString:g}},n.__params__= +["name","args","e"],n),ECheckType:(n=function(a,b){return{_hx_index:26,e:a,t:b,__enum__:"hscript.Expr",toString:g}},n.__params__=["e","t"],n)},Wd=B["hscript.CType"]={__ename__:"hscript.CType",__constructs__:"CTPath CTFun CTAnon CTParent CTOpt CTNamed".split(" "),CTPath:(n=function(a,b){return{_hx_index:0,path:a,params:b,__enum__:"hscript.CType",toString:g}},n.__params__=["path","params"],n),CTFun:(n=function(a,b){return{_hx_index:1,args:a,ret:b,__enum__:"hscript.CType",toString:g}},n.__params__=["args", +"ret"],n),CTAnon:(n=function(a){return{_hx_index:2,fields:a,__enum__:"hscript.CType",toString:g}},n.__params__=["fields"],n),CTParent:(n=function(a){return{_hx_index:3,t:a,__enum__:"hscript.CType",toString:g}},n.__params__=["t"],n),CTOpt:(n=function(a){return{_hx_index:4,t:a,__enum__:"hscript.CType",toString:g}},n.__params__=["t"],n),CTNamed:(n=function(a,b){return{_hx_index:5,n:a,t:b,__enum__:"hscript.CType",toString:g}},n.__params__=["n","t"],n)},Tb=B["hscript.Error"]={__ename__:"hscript.Error", +__constructs__:"EInvalidChar EUnexpected EUnterminatedString EUnterminatedComment EInvalidPreprocessor EUnknownVariable EInvalidIterator EInvalidOp EInvalidAccess ECustom".split(" "),EInvalidChar:(n=function(a){return{_hx_index:0,c:a,__enum__:"hscript.Error",toString:g}},n.__params__=["c"],n),EUnexpected:(n=function(a){return{_hx_index:1,s:a,__enum__:"hscript.Error",toString:g}},n.__params__=["s"],n),EUnterminatedString:{_hx_index:2,__enum__:"hscript.Error",toString:g},EUnterminatedComment:{_hx_index:3, +__enum__:"hscript.Error",toString:g},EInvalidPreprocessor:(n=function(a){return{_hx_index:4,msg:a,__enum__:"hscript.Error",toString:g}},n.__params__=["msg"],n),EUnknownVariable:(n=function(a){return{_hx_index:5,v:a,__enum__:"hscript.Error",toString:g}},n.__params__=["v"],n),EInvalidIterator:(n=function(a){return{_hx_index:6,v:a,__enum__:"hscript.Error",toString:g}},n.__params__=["v"],n),EInvalidOp:(n=function(a){return{_hx_index:7,op:a,__enum__:"hscript.Error",toString:g}},n.__params__=["op"],n), +EInvalidAccess:(n=function(a){return{_hx_index:8,f:a,__enum__:"hscript.Error",toString:g}},n.__params__=["f"],n),ECustom:(n=function(a){return{_hx_index:9,msg:a,__enum__:"hscript.Error",toString:g}},n.__params__=["msg"],n)},ef=B["hscript._Interp.Stop"]={__ename__:"hscript._Interp.Stop",__constructs__:["SBreak","SContinue","SReturn"],SBreak:{_hx_index:0,__enum__:"hscript._Interp.Stop",toString:g},SContinue:{_hx_index:1,__enum__:"hscript._Interp.Stop",toString:g},SReturn:{_hx_index:2,__enum__:"hscript._Interp.Stop", +toString:g}},la=B["hscript.Token"]={__ename__:"hscript.Token",__constructs__:"TEof TConst TId TOp TPOpen TPClose TBrOpen TBrClose TDot TComma TSemicolon TBkOpen TBkClose TQuestion TDoubleDot TMeta TPrepro".split(" "),TEof:{_hx_index:0,__enum__:"hscript.Token",toString:g},TConst:(n=function(a){return{_hx_index:1,c:a,__enum__:"hscript.Token",toString:g}},n.__params__=["c"],n),TId:(n=function(a){return{_hx_index:2,s:a,__enum__:"hscript.Token",toString:g}},n.__params__=["s"],n),TOp:(n=function(a){return{_hx_index:3, +s:a,__enum__:"hscript.Token",toString:g}},n.__params__=["s"],n),TPOpen:{_hx_index:4,__enum__:"hscript.Token",toString:g},TPClose:{_hx_index:5,__enum__:"hscript.Token",toString:g},TBrOpen:{_hx_index:6,__enum__:"hscript.Token",toString:g},TBrClose:{_hx_index:7,__enum__:"hscript.Token",toString:g},TDot:{_hx_index:8,__enum__:"hscript.Token",toString:g},TComma:{_hx_index:9,__enum__:"hscript.Token",toString:g},TSemicolon:{_hx_index:10,__enum__:"hscript.Token",toString:g},TBkOpen:{_hx_index:11,__enum__:"hscript.Token", +toString:g},TBkClose:{_hx_index:12,__enum__:"hscript.Token",toString:g},TQuestion:{_hx_index:13,__enum__:"hscript.Token",toString:g},TDoubleDot:{_hx_index:14,__enum__:"hscript.Token",toString:g},TMeta:(n=function(a){return{_hx_index:15,s:a,__enum__:"hscript.Token",toString:g}},n.__params__=["s"],n),TPrepro:(n=function(a){return{_hx_index:16,s:a,__enum__:"hscript.Token",toString:g}},n.__params__=["s"],n)},mi=function(){this.uid=0;this.preprocesorValues=new Ea;this.line=1;this.opChars="+*/-=!><&|^%~"; +this.identChars="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_";var a=[["%"],["*","/"],["+","-"],["<<",">>",">>>"],["|","&","^"],"== != > < >= <=".split(" "),["..."],["&&"],["||"],"= += -= *= /= %= <<= >>= >>>= |= &= ^= =>".split(" ")];this.opPriority=new Ea;this.opRightAssoc=new Ea;this.unops=new Ea;for(var b=0,c=a.length;b"))||this.unexpected(b);b=this.parseExpr();return wa.EFunction(a,wa.EReturn(b))},parseMetaArgs:function(){var a=this.token();if(a!=la.TPOpen){var b=this.tokens;b.head=new Oa(a,b.head);return null}b=[];a=this.token();if(a!=la.TPClose){var c=this.tokens; +c.head=new Oa(a,c.head);a:for(;;)if(b.push(this.parseExpr()),a=this.token(),null==a)this.unexpected(a);else switch(a._hx_index){case 5:break a;case 9:break;default:this.unexpected(a)}}return b},mapCompr:function(a,b){switch(b._hx_index){case 3:a=wa.EParent(this.mapCompr(a,b.e));break;case 4:var c=b.e;a=1==c.length?wa.EBlock([this.mapCompr(a,c[0])]):wa.ECall(wa.EField(wa.EIdent(a),"push"),[b]);break;case 9:c=b.e1;var d=b.cond;a=null==b.e2?wa.EIf(d,this.mapCompr(a,c),null):wa.ECall(wa.EField(wa.EIdent(a), +"push"),[b]);break;case 10:a=wa.EWhile(b.cond,this.mapCompr(a,b.e));break;case 11:a=wa.EFor(b.v,b.it,this.mapCompr(a,b.e));break;case 24:a=wa.EDoWhile(b.cond,this.mapCompr(a,b.e));break;default:a=wa.ECall(wa.EField(wa.EIdent(a),"push"),[b])}return a},makeUnop:function(a,b){switch(b._hx_index){case 6:var c=b.e2;return wa.EBinop(b.op,this.makeUnop(a,b.e1),c);case 22:c=b.e2;var d=b.e1;return wa.ETernary(this.makeUnop(a,b.cond),d,c);default:return wa.EUnop(a,!0,b)}},makeBinop:function(a,b,c){switch(c._hx_index){case 6:var d= +c.e2,e=c.e1,f=c.op;var l=this.opPriority;l=null!=r[a]?l.getReserved(a):l.h[a];var v=this.opPriority;l<=(null!=r[f]?v.getReserved(f):v.h[f])?(l=this.opRightAssoc,l=!(null!=r[a]?l.existsReserved(a):l.h.hasOwnProperty(a))):l=!1;return l?wa.EBinop(f,this.makeBinop(a,b,e),d):wa.EBinop(a,b,c);case 22:return d=c.e2,e=c.e1,f=c.cond,l=this.opRightAssoc,(null!=r[a]?l.existsReserved(a):l.h.hasOwnProperty(a))?wa.EBinop(a,b,c):wa.ETernary(this.makeBinop(a,b,f),e,d);default:return wa.EBinop(a,b,c)}},parseStructure:function(a){switch(a){case "break":return wa.EBreak; +case "continue":return wa.EContinue;case "do":a=this.parseExpr();var b=this.token();null==b?this.unexpected(b):2==b._hx_index?"while"!=b.s&&this.unexpected(b):this.unexpected(b);b=this.parseExpr();return wa.EDoWhile(b,a);case "else":return this.unexpected(la.TId(a));case "for":a=this.token();a!=la.TPOpen&&this.unexpected(a);a=this.getIdent();b=this.token();La.enumEq(b,la.TId("in"))||this.unexpected(b);b=this.parseExpr();var c=this.token();c!=la.TPClose&&this.unexpected(c);c=this.parseExpr();return wa.EFor(a, +b,c);case "function":return b=this.token(),a=null,null==b?(c=this.tokens,c.head=new Oa(b,c.head)):2==b._hx_index?a=b.s:(c=this.tokens,c.head=new Oa(b,c.head)),b=this.parseFunctionDecl(),wa.EFunction(b.args,b.body,a,b.ret);case "if":a=this.token();a!=la.TPOpen&&this.unexpected(a);a=this.parseExpr();b=this.token();b!=la.TPClose&&this.unexpected(b);b=this.parseExpr();c=null;var d=!1,e=this.token();e==la.TSemicolon&&(d=!0,e=this.token());if(La.enumEq(e,la.TId("else")))c=this.parseExpr();else{var f=this.tokens; +f.head=new Oa(e,f.head);d&&(d=this.tokens,d.head=new Oa(la.TSemicolon,d.head))}return wa.EIf(a,b,c);case "inline":return this.maybe(la.TId("function"))||this.unexpected(la.TId("inline")),this.parseStructure("function");case "new":a=[];a.push(this.getIdent());for(b=!0;b;)if(c=this.token(),null==c)this.unexpected(c);else switch(c._hx_index){case 4:b=!1;break;case 8:a.push(this.getIdent());break;default:this.unexpected(c)}b=this.parseExprList(la.TPClose);return wa.ENew(a.join("."),b);case "return":return a= +this.token(),b=this.tokens,b.head=new Oa(a,b.head),a=a==la.TSemicolon?null:this.parseExpr(),wa.EReturn(a);case "switch":a=this.parseExpr();c=null;b=[];d=this.token();d!=la.TBrOpen&&this.unexpected(d);a:for(;;)if(d=this.token(),null==d)this.unexpected(d);else switch(d._hx_index){case 2:switch(d.s){case "case":e={values:[],expr:null};b.push(e);b:for(;;)if(d=this.parseExpr(),e.values.push(d),d=this.token(),null==d)this.unexpected(d);else switch(d._hx_index){case 9:break;case 14:break b;default:this.unexpected(d)}f= +[];b:for(;;){d=this.token();var l=this.tokens;l.head=new Oa(d,l.head);if(null==d)this.parseFullExpr(f);else switch(d._hx_index){case 2:switch(d.s){case "case":case "default":break b;default:this.parseFullExpr(f)}break;case 7:break b;default:this.parseFullExpr(f)}}e.expr=1==f.length?f[0]:0==f.length?wa.EBlock([]):wa.EBlock(f);break;case "default":null!=c&&this.unexpected(d);c=this.token();c!=la.TDoubleDot&&this.unexpected(c);c=[];b:for(;;)if(d=this.token(),e=this.tokens,e.head=new Oa(d,e.head),null== +d)this.parseFullExpr(c);else switch(d._hx_index){case 2:switch(d.s){case "case":case "default":break b;default:this.parseFullExpr(c)}break;case 7:break b;default:this.parseFullExpr(c)}c=1==c.length?c[0]:0==c.length?wa.EBlock([]):wa.EBlock(c);break;default:this.unexpected(d)}break;case 7:break a;default:this.unexpected(d)}return wa.ESwitch(a,b,c);case "throw":return a=this.parseExpr(),wa.EThrow(a);case "try":return a=this.parseExpr(),b=this.token(),La.enumEq(b,la.TId("catch"))||this.unexpected(b), +b=this.token(),b!=la.TPOpen&&this.unexpected(b),b=this.getIdent(),c=this.token(),c!=la.TDoubleDot&&this.unexpected(c),c=null,this.allowTypes?c=this.parseType():(d=this.token(),La.enumEq(d,la.TId("Dynamic"))||this.unexpected(d)),d=this.token(),d!=la.TPClose&&this.unexpected(d),d=this.parseExpr(),wa.ETry(a,b,c,d);case "var":return a=this.getIdent(),b=this.token(),c=null,b==la.TDoubleDot&&this.allowTypes&&(c=this.parseType(),b=this.token()),d=null,La.enumEq(b,la.TOp("="))?d=this.parseExpr():(e=this.tokens, +e.head=new Oa(b,e.head)),wa.EVar(a,c,d);case "while":return a=this.parseExpr(),b=this.parseExpr(),wa.EWhile(a,b);default:return null}},parseExprNext:function(a){var b=this.token();if(null==b){var c=this.tokens;c.head=new Oa(b,c.head);return a}switch(b._hx_index){case 3:c=b.s;if("->"==c){switch(a._hx_index){case 1:return a=a.v,b=this.parseExpr(),wa.EFunction([{name:a}],wa.EReturn(b));case 3:var d=a.e;if(1==d._hx_index)return a=d.v,b=this.parseExpr(),wa.EFunction([{name:a}],wa.EReturn(b));break;case 26:if(d= +a.e,1==d._hx_index)return a=a.t,b=d.v,c=this.parseExpr(),wa.EFunction([{name:b,t:a}],wa.EReturn(c))}this.unexpected(b)}d=this.unops;return(null!=r[c]?d.getReserved(c):d.h[c])?this.isBlock(a)||3==a._hx_index?(c=this.tokens,c.head=new Oa(b,c.head),a):this.parseExprNext(wa.EUnop(c,!1,a)):this.makeBinop(c,a,this.parseExpr());case 4:return this.parseExprNext(wa.ECall(a,this.parseExprList(la.TPClose)));case 8:return b=this.getIdent(),this.parseExprNext(wa.EField(a,b));case 11:return b=this.parseExpr(), +c=this.token(),c!=la.TBkClose&&this.unexpected(c),this.parseExprNext(wa.EArray(a,b));case 13:return b=this.parseExpr(),c=this.token(),c!=la.TDoubleDot&&this.unexpected(c),c=this.parseExpr(),wa.ETernary(a,b,c);default:return c=this.tokens,c.head=new Oa(b,c.head),a}},parseFunctionArgs:function(){var a=[],b=this.token();if(b!=la.TPClose)for(var c=!1;!c;){var d=null,e=!1;null!=b&&13==b._hx_index&&(e=!0,b=this.token());null==b?this.unexpected(b):2==b._hx_index?d=b.s:this.unexpected(b);b={name:d};a.push(b); +e&&(b.opt=!0);this.allowTypes&&(this.maybe(la.TDoubleDot)&&(b.t=this.parseType()),this.maybe(la.TOp("="))&&(b.value=this.parseExpr()));b=this.token();if(null==b)this.unexpected(b);else switch(b._hx_index){case 5:c=!0;break;case 9:b=this.token();break;default:this.unexpected(b)}}return a},parseFunctionDecl:function(){var a=this.token();a!=la.TPOpen&&this.unexpected(a);a=this.parseFunctionArgs();var b=null;if(this.allowTypes){var c=this.token();if(c!=la.TDoubleDot){var d=this.tokens;d.head=new Oa(c, +d.head)}else b=this.parseType()}return{args:a,ret:b,body:this.parseExpr()}},parsePath:function(){for(var a=[this.getIdent()];;){var b=this.token();if(b!=la.TDot){var c=this.tokens;c.head=new Oa(b,c.head);break}a.push(this.getIdent())}return a},parseType:function(){var a=this,b=this.token();if(null==b)return this.unexpected(b);switch(b._hx_index){case 2:var c=this.tokens;c.head=new Oa(b,c.head);c=this.parsePath();var d=null;b=this.token();if(null==b){var e=this.tokens;e.head=new Oa(b,e.head)}else if(3== +b._hx_index)if("<"==b.s)a:for(d=[];;){d.push(this.parseType());b=this.token();if(null!=b)switch(b._hx_index){case 3:e=b.s;if(">"==e)break a;if(62==z.cca(e,0)){b=this.tokens;b.head=new Oa(la.TOp(z.substr(e,1,null)),b.head);break a}break;case 9:continue}this.unexpected(b)}else e=this.tokens,e.head=new Oa(b,e.head);else e=this.tokens,e.head=new Oa(b,e.head);return this.parseTypeNext(Wd.CTPath(c,d));case 4:if(c=this.token(),d=this.token(),b=this.tokens,b.head=new Oa(d,b.head),b=this.tokens,b.head=new Oa(c, +b.head),b=function(b){var c=a.token();null==c?a.unexpected(c):3==c._hx_index?"->"!=c.s&&a.unexpected(c):a.unexpected(c);return Wd.CTFun(b,a.parseType())},null==c){c=this.parseType();d=this.token();if(null==d)return this.unexpected(d);switch(d._hx_index){case 5:return this.parseTypeNext(Wd.CTParent(c));case 9:for(c=[c];c.push(this.parseType()),this.maybe(la.TComma););d=this.token();d!=la.TPClose&&this.unexpected(d);return b(c);default:return this.unexpected(d)}}else switch(c._hx_index){case 2:if(null!= +d&&14==d._hx_index){c=[];d=0;for(e=this.parseFunctionArgs();d"!=b.s)return c=this.tokens,c.head=new Oa(b,c.head),a}else return c=this.tokens,c.head= +new Oa(b,c.head),a;b=this.parseType();return 1==b._hx_index?(b.args.unshift(a),b):Wd.CTFun([a],b)},parseExprList:function(a){var b=[],c=this.token();if(c==a)return b;var d=this.tokens;for(d.head=new Oa(c,d.head);;)if(b.push(this.parseExpr()),c=this.token(),null==c){if(c==a)break;this.unexpected(c)}else if(9!=c._hx_index){if(c==a)break;this.unexpected(c)}return b},readChar:function(){try{return this.input.readByte()}catch(a){return Ja.lastException=a,0}},readString:function(a){for(var b=0,c=new Rg, +d=!1,e=this.line,f=this.input;;){try{b=f.readByte()}catch(Ij){throw Ja.lastException=Ij,this.line=e,new F(Tb.EUnterminatedString);}if(d)switch(d=!1,b){case 34:case 39:case 92:c.writeByte(b);break;case 47:this.allowJSON?c.writeByte(b):this.invalidChar(b);break;case 110:c.writeByte(10);break;case 114:c.writeByte(13);break;case 116:c.writeByte(9);break;case 117:this.allowJSON||this.invalidChar(b);var l=null;try{l=f.readString(4)}catch(Ij){throw Ja.lastException=Ij,this.line=e,new F(Tb.EUnterminatedString); +}var v=0;v<<=4;var m=z.cca(l,0);if(null==m)this.invalidChar(m);else switch(m){case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:v+=m-48;break;case 65:case 66:case 67:case 68:case 69:case 70:v+=m-55;break;case 97:case 98:case 99:case 100:case 101:case 102:v+=m-87;break;default:this.invalidChar(m)}v<<=4;m=z.cca(l,1);if(null==m)this.invalidChar(m);else switch(m){case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:v+=m-48;break;case 65:case 66:case 67:case 68:case 69:case 70:v+= +m-55;break;case 97:case 98:case 99:case 100:case 101:case 102:v+=m-87;break;default:this.invalidChar(m)}v<<=4;m=z.cca(l,2);if(null==m)this.invalidChar(m);else switch(m){case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:v+=m-48;break;case 65:case 66:case 67:case 68:case 69:case 70:v+=m-55;break;case 97:case 98:case 99:case 100:case 101:case 102:v+=m-87;break;default:this.invalidChar(m)}v<<=4;l=z.cca(l,3);if(null==l)this.invalidChar(l);else switch(l){case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:v+= +l-48;break;case 65:case 66:case 67:case 68:case 69:case 70:v+=l-55;break;case 97:case 98:case 99:case 100:case 101:case 102:v+=l-87;break;default:this.invalidChar(l)}127>=v?c.writeByte(v):(2047>=v?c.writeByte(192|v>>6):(c.writeByte(224|v>>12),c.writeByte(128|v>>6&63)),c.writeByte(128|v&63));break;default:this.invalidChar(b)}else if(92==b)d=!0;else if(b==a)break;else 10==b&&this.line++,c.writeByte(b)}return c.getBytes().toString()},token:function(){if(null!=this.tokens.head){var a=this.tokens,b=a.head; +if(null==b)return null;a.head=b.next;return b.elt}0>this.char?a=this.readChar():(a=this.char,this.char=-1);for(;;){switch(a){case 0:return la.TEof;case 10:this.line++;break;case 9:case 13:case 32:break;case 35:a=this.readChar();if(this.idents[a])for(b=String.fromCodePoint(a);;){a=this.readChar();if(!this.idents[a])return this.char=a,this.preprocess(b);b+=String.fromCodePoint(a)}this.invalidChar(a);break;case 34:case 39:return la.TConst(Vd.CString(this.readString(a)));case 40:return la.TPOpen;case 41:return la.TPClose; +case 44:return la.TComma;case 46:switch(a=this.readChar(),a){case 46:return a=this.readChar(),46!=a&&this.invalidChar(a),la.TOp("...");case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:b=a-48;for(var c=1;;)switch(a=this.readChar(),c*=10,a){case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:b=10*b+(a-48);break;default:return this.char=a,la.TConst(Vd.CFloat(b/c))}default:return this.char=a,la.TDot}case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:for(b= +1*(a-48),c=0;;)switch(a=this.readChar(),c*=10,a){case 46:if(0");this.char=a;return la.TOp("=");case 63:return la.TQuestion; +case 64:a=this.readChar();if(this.idents[a]||58==a)for(b=String.fromCodePoint(a);;){a=this.readChar();if(!this.idents[a])return this.char=a,la.TMeta(b);b+=String.fromCodePoint(a)}this.invalidChar(a);break;case 91:return la.TBkOpen;case 93:return la.TBkClose;case 123:return la.TBrOpen;case 125:return la.TBrClose;default:if(this.ops[a])for(b=String.fromCodePoint(a),c=-1;;){a=this.readChar();if(!this.ops[a]||61==c){if(47==z.cca(b,0))return this.tokenComment(b,a);this.char=a;return la.TOp(b)}c=a;b+=String.fromCodePoint(a)}if(this.idents[a])for(b= +String.fromCodePoint(a);;){a=this.readChar();if(!this.idents[a])return this.char=a,la.TId(b);b+=String.fromCodePoint(a)}this.invalidChar(a)}a=this.readChar()}},preprocValue:function(a){var b=this.preprocesorValues;return null!=r[a]?b.getReserved(a):b.h[a]},preprocStack:null,parsePreproCond:function(){var a=this.token();if(null==a)return this.unexpected(a);switch(a._hx_index){case 2:return wa.EIdent(a.s);case 3:return"!"==a.s?wa.EUnop("!",!0,this.parsePreproCond()):this.unexpected(a);case 4:return a= +this.tokens,a.head=new Oa(la.TPOpen,a.head),this.parseExpr();default:return this.unexpected(a)}},evalPreproCond:function(a){switch(a._hx_index){case 1:return null!=this.preprocValue(a.v);case 3:return this.evalPreproCond(a.e);case 6:var b=a.e2,c=a.e1;switch(a.op){case "&&":return this.evalPreproCond(c)?this.evalPreproCond(b):!1;case "||":return this.evalPreproCond(c)?!0:this.evalPreproCond(b);default:throw new F(Tb.EInvalidPreprocessor("Can't eval "+B[a.__enum__].__constructs__[a._hx_index]));}case 7:if("!"== +a.op)return!this.evalPreproCond(a.e);throw new F(Tb.EInvalidPreprocessor("Can't eval "+B[a.__enum__].__constructs__[a._hx_index]));default:throw new F(Tb.EInvalidPreprocessor("Can't eval "+B[a.__enum__].__constructs__[a._hx_index]));}},preprocess:function(a){switch(a){case "else":case "elseif":if(0";case 1:return this.constString(a.c);case 2:return a.s;case 3:return a.s;case 4:return"(";case 5:return")";case 6:return"{";case 7:return"}";case 8:return".";case 9:return",";case 10:return";";case 11:return"["; +case 12:return"]";case 13:return"?";case 14:return":";case 15:return"@"+a.s;case 16:return"#"+a.s}},__class__:mi};var F=function(a){Error.call(this);this.val=a;Error.captureStackTrace&&Error.captureStackTrace(this,F)};h["js._Boot.HaxeError"]=F;F.__name__="js._Boot.HaxeError";F.wrap=function(a){return a instanceof Error?a:new F(a)};F.__super__=Error;F.prototype=p(Error.prototype,{val:null,__class__:F});var ni=function(){};h["js.Browser"]=ni;ni.__name__="js.Browser";ni.getLocalStorage=function(){try{var a= +window.localStorage;a.getItem("");if(0==a.length){var b="_hx_"+Math.random();a.setItem(b,b);a.removeItem(b)}return a}catch(c){return Ja.lastException=c,null}};var pj=function(){};h["js.html._CanvasElement.CanvasUtil"]=pj;pj.__name__="js.html._CanvasElement.CanvasUtil";pj.getContextWebGL=function(a,b){var c=a.getContext("webgl",b);if(null!=c)return c;a=a.getContext("experimental-webgl",b);return null!=a?a:null};var Ch=function(){this.connected=!0;this.buttons=[];this.axes=[]};h["lime._internal.backend.html5.GameDeviceData"]= +Ch;Ch.__name__="lime._internal.backend.html5.GameDeviceData";Ch.prototype={connected:null,id:null,isGamepad:null,buttons:null,axes:null,__class__:Ch};var pi=function(a){this.parent=a;this.id=-1;this.gain=1;this.position=new oi};h["lime._internal.backend.html5.HTML5AudioSource"]=pi;pi.__name__="lime._internal.backend.html5.HTML5AudioSource";pi.prototype={completed:null,gain:null,id:null,length:null,loops:null,parent:null,playing:null,position:null,dispose:function(){},init:function(){},play:function(){if(!this.playing&& +null!=this.parent.buffer&&null!=this.parent.buffer.__srcHowl){this.playing=!0;var a=this.getCurrentTime();this.completed=!1;var b=this.parent.buffer.__srcHowl._volume;this.parent.buffer.__srcHowl._volume=this.parent.get_gain();this.id=this.parent.buffer.__srcHowl.play();this.parent.buffer.__srcHowl._volume=b;this.setPosition(this.parent.get_position());this.parent.buffer.__srcHowl.on("end",q(this,this.howl_onEnd),this.id);this.setCurrentTime(a)}},stop:function(){this.playing=!1;null!=this.parent.buffer&& +null!=this.parent.buffer.__srcHowl&&(this.parent.buffer.__srcHowl.stop(this.id),this.parent.buffer.__srcHowl.off("end",q(this,this.howl_onEnd),this.id))},howl_onEnd:function(){this.playing=!1;0a?0:a}return 0},setCurrentTime:function(a){if(null!=this.parent.buffer&&null!=this.parent.buffer.__srcHowl){var b=(a+this.parent.offset)/1E3;0>b&&(b=0);this.parent.buffer.__srcHowl.seek(b,this.id)}return a},getGain:function(){return this.gain},setGain:function(a){null!=this.parent.buffer&&null!= +this.parent.buffer.__srcHowl&&-1!=this.id&&this.parent.buffer.__srcHowl.volume(a,this.id);return this.gain=a},getLength:function(){return 0!=this.length?this.length:null!=this.parent.buffer&&null!=this.parent.buffer.__srcHowl?1E3*this.parent.buffer.__srcHowl.duration()|0:0},setLength:function(a){return this.length=a},setLoops:function(a){return this.loops=a},getPosition:function(){return this.position},setPosition:function(a){this.position.x=a.x;this.position.y=a.y;this.position.z=a.z;this.position.w= +a.w;null!=this.parent.buffer.__srcHowl&&null!=this.parent.buffer.__srcHowl.pos&&this.parent.buffer.__srcHowl.pos(this.position.x,this.position.y,this.position.z,this.id);return this.position},__class__:pi};var pa=function(){this.validStatus0=(new ja("Tizen","gi")).match(window.navigator.userAgent)};h["lime._internal.backend.html5.HTML5HTTPRequest"]=pa;pa.__name__="lime._internal.backend.html5.HTML5HTTPRequest";pa.loadImage=function(a){var b=new dc;pa.activeRequestsc.request.status||c.validStatus0&&0==c.request.status)?(a=null,""==c.request.responseType?null!=c.request.responseText&&(a=Va.ofString(c.request.responseText)):null!=c.request.response&&(a=Va.ofData(c.request.response)),c.processResponse(),b.complete(a)): +(c.processResponse(),b.error(c.request.status)),c.request=null,pa.activeRequests--,pa.processQueue())})},__loadText:function(a,b){var c=this;this.binary=!1;this.load(a,function(a){b.progress(a.loaded,a.total)},function(a){4==c.request.readyState&&(null!=c.request.status&&(200<=c.request.status&&400>=c.request.status||c.validStatus0&&0==c.request.status)?(c.processResponse(),b.complete(c.request.responseText)):(c.processResponse(),b.error(c.request.status)),c.request=null,pa.activeRequests--,pa.processQueue())})}, +__class__:pa};var Ba=function(a){this.unusedTouchesPool=new ia;this.scale=1;this.currentTouches=new ab;this.parent=a;this.cursor=ub.DEFAULT;this.cacheMouseY=this.cacheMouseX=0;var b=a.__attributes;Object.prototype.hasOwnProperty.call(b,"context")||(b.context={});this.renderType=b.context.type;Object.prototype.hasOwnProperty.call(b,"element")&&(a.element=b.element);var c=a.element;Object.prototype.hasOwnProperty.call(b,"allowHighDPI")&&b.allowHighDPI&&"dom"!=this.renderType&&(this.scale=window.devicePixelRatio); +a.__scale=this.scale;this.setWidth=Object.prototype.hasOwnProperty.call(b,"width")?b.width:0;this.setHeight=Object.prototype.hasOwnProperty.call(b,"height")?b.height:0;a.__width=this.setWidth;a.__height=this.setHeight;a.id=Ba.windowID++;c instanceof HTMLCanvasElement?this.canvas=c:"dom"==this.renderType?this.div=window.document.createElement("div"):this.canvas=window.document.createElement("canvas");if(null!=this.canvas){var d=this.canvas.style;d.setProperty("-webkit-transform","translateZ(0)",null); +d.setProperty("transform","translateZ(0)",null)}else null!=this.div&&(d=this.div.style,d.setProperty("-webkit-transform","translate3D(0,0,0)",null),d.setProperty("transform","translate3D(0,0,0)",null),d.position="relative",d.overflow="hidden",d.setProperty("-webkit-user-select","none",null),d.setProperty("-moz-user-select","none",null),d.setProperty("-ms-user-select","none",null),d.setProperty("-o-user-select","none",null));0==a.__width&&0==a.__height&&(null!=c?(a.__width=c.clientWidth,a.__height= +c.clientHeight):(a.__width=window.innerWidth,a.__height=window.innerHeight),this.cacheElementWidth=a.__width,this.cacheElementHeight=a.__height,this.resizeElement=!0);null!=this.canvas?(this.canvas.width=Math.round(a.__width*this.scale),this.canvas.height=Math.round(a.__height*this.scale),this.canvas.style.width=a.__width+"px",this.canvas.style.height=a.__height+"px"):(this.div.style.width=a.__width+"px",this.div.style.height=a.__height+"px");if(Object.prototype.hasOwnProperty.call(b,"resizable")&& +b.resizable||!Object.prototype.hasOwnProperty.call(b,"width")&&0==this.setWidth&&0==this.setHeight)a.__resizable=!0;this.updateSize();if(null!=c){null!=this.canvas?c!=this.canvas&&c.appendChild(this.canvas):c.appendChild(this.div);b="mousedown mouseenter mouseleave mousemove mouseup wheel".split(" ");for(d=0;d>12&4095],b[m+1]=d[g&4095],v+=3,m+=2;switch(e-3*f){case 1:g= +a.b[v]<<16;b[m]=d[g>>12&4095];b[m+1]="==";break;case 2:g=a.b[v]<<16|a.b[v+1]<<8,b[m]=d[g>>12&4095],b[m+1]=c[g>>6&63]+"="}return b.join("")};var qj=function(){};h["lime._internal.format.Deflate"]=qj;qj.__name__="lime._internal.format.Deflate";qj.decompress=function(a){a=pako.inflateRaw(a.b.bufferValue);return Va.ofData(a)};var rj=function(){};h["lime._internal.format.GZip"]=rj;rj.__name__="lime._internal.format.GZip";rj.decompress=function(a){a=pako.ungzip(a.b.bufferValue);return Va.ofData(a)};var sj= +function(){};h["lime._internal.format.LZMA"]=sj;sj.__name__="lime._internal.format.LZMA";sj.decompress=function(a){return null};var tj=function(){};h["lime._internal.format.Zlib"]=tj;tj.__name__="lime._internal.format.Zlib";tj.decompress=function(a){a=pako.inflate(a.b.bufferValue);return Va.ofData(a)};var ya=function(){};h["lime._internal.graphics.ImageCanvasUtil"]=ya;ya.__name__="lime._internal.graphics.ImageCanvasUtil";ya.colorTransform=function(a,b,c){ya.convertToData(a);hb.colorTransform(a,b, +c)};ya.convertToCanvas=function(a,b){null==b&&(b=!1);var c=a.buffer;null!=c.__srcImage?(null==c.__srcCanvas&&(ya.createCanvas(a,c.__srcImage.width,c.__srcImage.height),c.__srcContext.drawImage(c.__srcImage,0,0)),c.__srcImage=null):null==c.__srcCanvas&&null!=c.data?(a.set_transparent(!0),ya.createCanvas(a,c.width,c.height),ya.createImageData(a),c.__srcContext.putImageData(c.__srcImageData,0,0)):a.type==Vc.DATA&&null!=c.__srcImageData&&a.dirty&&(c.__srcContext.putImageData(c.__srcImageData,0,0),a.dirty= +!1);b?(c.data=null,c.__srcImageData=null):null==c.data&&null!=c.__srcImageData&&(c.data=c.__srcImageData.data);a.type=Vc.CANVAS};ya.convertToData=function(a,b){null==b&&(b=!1);var c=a.buffer;null!=c.__srcImage&&ya.convertToCanvas(a);if(null!=c.__srcCanvas&&null==c.data)ya.createImageData(a),a.type==Vc.CANVAS&&(a.dirty=!1);else if(a.type==Vc.CANVAS&&null!=c.__srcCanvas&&a.dirty){if(null==c.__srcImageData)ya.createImageData(a);else{c.__srcImageData=c.__srcContext.getImageData(0,0,c.width,c.height); +var d=c.__srcImageData.data.buffer;d=null!=d?new Uint8Array(d):null;c.data=d}a.dirty=!1}b&&(a.buffer.__srcCanvas=null,a.buffer.__srcContext=null);a.type=Vc.DATA};ya.copyChannel=function(a,b,c,d,e,f){ya.convertToData(b);ya.convertToData(a);hb.copyChannel(a,b,c,d,e,f)};ya.copyPixels=function(a,b,c,d,e,f,l){null==l&&(l=!1);null==d||d.x>=a.width||d.y>=a.height||null==c||1>c.width||1>c.height||(null!=e&&e.get_transparent()&&(null==f&&(f=new ze),b=b.clone(),b.copyChannel(e,new hd(c.x+f.x,c.y+f.y,c.width, +c.height),new ze(c.x,c.y),si.ALPHA,si.ALPHA)),ya.convertToCanvas(a,!0),l||a.get_transparent()&&b.get_transparent()&&a.buffer.__srcContext.clearRect(d.x+a.offsetX,d.y+a.offsetY,c.width+a.offsetX,c.height+a.offsetY),ya.convertToCanvas(b),null!=b.buffer.get_src()&&(a.buffer.__srcContext.globalCompositeOperation="source-over",a.buffer.__srcContext.drawImage(b.buffer.get_src(),c.x+b.offsetX|0,c.y+b.offsetY|0,c.width|0,c.height|0,d.x+a.offsetX|0,d.y+a.offsetY|0,c.width|0,c.height|0)),a.dirty=!0,a.version++)}; +ya.createCanvas=function(a,b,c){var d=a.buffer;null==d.__srcCanvas&&(d.__srcCanvas=window.document.createElement("canvas"),d.__srcCanvas.width=b,d.__srcCanvas.height=c,a.get_transparent()?d.__srcContext=d.__srcCanvas.getContext("2d"):(a.get_transparent()||d.__srcCanvas.setAttribute("moz-opaque","true"),d.__srcContext=d.__srcCanvas.getContext("2d",{alpha:!1})))};ya.createImageData=function(a){a=a.buffer;if(null==a.__srcImageData){null==a.data?a.__srcImageData=a.__srcContext.getImageData(0,0,a.width, +a.height):(a.__srcImageData=a.__srcContext.createImageData(a.width,a.height),a.__srcImageData.data.set(a.data));var b=a.__srcImageData.data.buffer;b=null!=b?new Uint8Array(b):null;a.data=b}};ya.fillRect=function(a,b,c,d){ya.convertToCanvas(a);if(1==d){d=c>>16&255;var e=c>>8&255;var f=c&255;c=a.get_transparent()?c>>24&255:255}else d=c>>24&255,e=c>>16&255,f=c>>8&255,c=a.get_transparent()?c&255:255;0==b.x&&0==b.y&&b.width==a.width&&b.height==a.height&&a.get_transparent()&&0==c?a.buffer.__srcCanvas.width= +a.buffer.width:(255>c&&a.buffer.__srcContext.clearRect(b.x+a.offsetX,b.y+a.offsetY,b.width+a.offsetX,b.height+a.offsetY),0>>24&255)*H.unmult)]&255)<<24|(H.__clamp[Math.round((k>>>16&255)*H.unmult)]& +255)<<16|(H.__clamp[Math.round((k>>>8&255)*H.unmult)]&255)<<8|k&255);k=(v[k>>>24&255]&255)<<24|(m[k>>>16&255]&255)<<16|(c[k>>>8&255]&255)<<8|l[k&255]&255;u=e;B=f;null==B&&(B=!1);null==u&&(u=0);B&&(0==(k&255)?0!=k&&(k=0):255!=(k&255)&&(H.a16=H.__alpha16[k&255],k=((k>>>24&255)*H.a16>>16&255)<<24|((k>>>16&255)*H.a16>>16&255)<<16|((k>>>8&255)*H.a16>>16&255)<<8|k&255));switch(u){case 0:d[h]=k>>>24&255;d[h+1]=k>>>16&255;d[h+2]=k>>>8&255;d[h+3]=k&255;break;case 1:d[h]=k&255;d[h+1]=k>>>24&255;d[h+2]=k>>> +16&255;d[h+3]=k>>>8&255;break;case 2:d[h]=k>>>8&255,d[h+1]=k>>>16&255,d[h+2]=k>>>24&255,d[h+3]=k&255}}}a.dirty=!0;a.version++}};hb.copyChannel=function(a,b,c,d,e,f){switch(f._hx_index){case 0:var l=0;break;case 1:l=1;break;case 2:l=2;break;case 3:l=3}switch(e._hx_index){case 0:var v=0;break;case 1:v=1;break;case 2:v=2;break;case 3:v=3}e=b.buffer.data;f=a.buffer.data;if(null!=e&&null!=f){c=new Yd(b,c);d=new Yd(a,new hd(d.x,d.y,c.width,c.height));var m=b.buffer.format,g=a.buffer.format;b=b.buffer.premultiplied; +for(var h=a.buffer.premultiplied,k,n,z,r,u=0,q=0,B=d.height;q>> +24&255)*H.unmult)]&255)<<24|(H.__clamp[Math.round((z>>>16&255)*H.unmult)]&255)<<16|(H.__clamp[Math.round((z>>>8&255)*H.unmult)]&255)<<8|z&255);Q=g;p=h;null==p&&(p=!1);null==Q&&(Q=0);switch(Q){case 0:r=(f[n]&255)<<24|(f[n+1]&255)<<16|(f[n+2]&255)<<8|f[n+3]&255;break;case 1:r=(f[n+1]&255)<<24|(f[n+2]&255)<<16|(f[n+3]&255)<<8|f[n]&255;break;case 2:r=(f[n+2]&255)<<24|(f[n+1]&255)<<16|(f[n]&255)<<8|f[n+3]&255}p&&0!=(r&255)&&255!=(r&255)&&(H.unmult=255/(r&255),r=(H.__clamp[Math.round((r>>>24&255)*H.unmult)]& +255)<<24|(H.__clamp[Math.round((r>>>16&255)*H.unmult)]&255)<<16|(H.__clamp[Math.round((r>>>8&255)*H.unmult)]&255)<<8|r&255);switch(v){case 0:u=z>>>24&255;break;case 1:u=z>>>16&255;break;case 2:u=z>>>8&255;break;case 3:u=z&255}switch(l){case 0:r=(u&255)<<24|(r>>>16&255)<<16|(r>>>8&255)<<8|r&255;break;case 1:r=(r>>>24&255)<<24|(u&255)<<16|(r>>>8&255)<<8|r&255;break;case 2:r=(r>>>24&255)<<24|(r>>>16&255)<<16|(u&255)<<8|r&255;break;case 3:r=(r>>>24&255)<<24|(r>>>16&255)<<16|(r>>>8&255)<<8|u&255}Q=g;p= +h;null==p&&(p=!1);null==Q&&(Q=0);p&&(0==(r&255)?0!=r&&(r=0):255!=(r&255)&&(H.a16=H.__alpha16[r&255],r=((r>>>24&255)*H.a16>>16&255)<<24|((r>>>16&255)*H.a16>>16&255)<<16|((r>>>8&255)*H.a16>>16&255)<<8|r&255));switch(Q){case 0:f[n]=r>>>24&255;f[n+1]=r>>>16&255;f[n+2]=r>>>8&255;f[n+3]=r&255;break;case 1:f[n]=r&255;f[n+1]=r>>>24&255;f[n+2]=r>>>16&255;f[n+3]=r>>>8&255;break;case 2:f[n]=r>>>8&255,f[n+1]=r>>>16&255,f[n+2]=r>>>24&255,f[n+3]=r&255}k+=4;n+=4}}a.dirty=!0;a.version++}};hb.copyPixels=function(a, +b,c,d,e,f,l){null==l&&(l=!1);if(a.width==b.width&&a.height==b.height&&c.width==b.width&&c.height==b.height&&0==c.x&&0==c.y&&0==d.x&&0==d.y&&null==e&&null==f&&0==l&&a.get_format()==b.get_format())a.buffer.data.set(b.buffer.data);else{var v=b.buffer.data,m=a.buffer.data;if(null==v||null==m)return;c=new Yd(b,c);var g=new hd(d.x,d.y,c.width,c.height);g=new Yd(a,g);var h=b.buffer.format,k=a.buffer.format,n=b.buffer.premultiplied,z=a.buffer.premultiplied,r=b.buffer.bitsPerPixel/8|0,u=a.buffer.bitsPerPixel/ +8|0,q=null!=e&&e.get_transparent();l=l||q&&!a.get_transparent()||!l&&!a.get_transparent()&&b.get_transparent();if(q)if(u=e.buffer.data,b=e.buffer.format,f=new Yd(e,new hd(c.x+(null==f?0:f.x),c.y+(null==f?0:f.y),c.width,c.height)),g.clip(d.x|0,d.y|0,f.width,f.height),l)for(r=0,q=g.height;r>>24&255)*H.unmult)]&255)<<24|(H.__clamp[Math.round((p>>>16&255)*H.unmult)]&255)<<16|(H.__clamp[Math.round((p>>>8&255)*H.unmult)]&255)<<8|p&255);Q=k;y=z;null==y&&(y=!1);null==Q&&(Q=0);switch(Q){case 0:var t=(m[e]&255)<<24|(m[e+1]&255)<<16| +(m[e+2]&255)<<8|m[e+3]&255;break;case 1:t=(m[e+1]&255)<<24|(m[e+2]&255)<<16|(m[e+3]&255)<<8|m[e]&255;break;case 2:t=(m[e+2]&255)<<24|(m[e+1]&255)<<16|(m[e]&255)<<8|m[e+3]&255}y&&0!=(t&255)&&255!=(t&255)&&(H.unmult=255/(t&255),t=(H.__clamp[Math.round((t>>>24&255)*H.unmult)]&255)<<24|(H.__clamp[Math.round((t>>>16&255)*H.unmult)]&255)<<16|(H.__clamp[Math.round((t>>>8&255)*H.unmult)]&255)<<8|t&255);Q=b;y=!1;null==y&&(y=!1);null==Q&&(Q=0);switch(Q){case 0:var x=(u[l]&255)<<24|(u[l+1]&255)<<16|(u[l+2]& +255)<<8|u[l+3]&255;break;case 1:x=(u[l+1]&255)<<24|(u[l+2]&255)<<16|(u[l+3]&255)<<8|u[l]&255;break;case 2:x=(u[l+2]&255)<<24|(u[l+1]&255)<<16|(u[l]&255)<<8|u[l+3]&255}y&&0!=(x&255)&&255!=(x&255)&&(H.unmult=255/(x&255),x=(H.__clamp[Math.round((x>>>24&255)*H.unmult)]&255)<<24|(H.__clamp[Math.round((x>>>16&255)*H.unmult)]&255)<<16|(H.__clamp[Math.round((x>>>8&255)*H.unmult)]&255)<<8|x&255);Q=(x&255)/255*((p&255)/255);if(0>>24&255)*Q+ +(t>>>24&255)*y*N)/K)]&255)<<24|(t>>>16&255)<<16|(t>>>8&255)<<8|t&255;t=(t>>>24&255)<<24|(H.__clamp[Math.round(((p>>>16&255)*Q+(t>>>16&255)*y*N)/K)]&255)<<16|(t>>>8&255)<<8|t&255;t=(t>>>24&255)<<24|(t>>>16&255)<<16|(H.__clamp[Math.round(((p>>>8&255)*Q+(t>>>8&255)*y*N)/K)]&255)<<8|t&255;t=(t>>>24&255)<<24|(t>>>16&255)<<16|(t>>>8&255)<<8|H.__clamp[Math.round(255*K)]&255;Q=k;y=z;null==y&&(y=!1);null==Q&&(Q=0);y&&(0==(t&255)?0!=t&&(t=0):255!=(t&255)&&(H.a16=H.__alpha16[t&255],t=((t>>>24&255)*H.a16>>16& +255)<<24|((t>>>16&255)*H.a16>>16&255)<<16|((t>>>8&255)*H.a16>>16&255)<<8|t&255));switch(Q){case 0:m[e]=t>>>24&255;m[e+1]=t>>>16&255;m[e+2]=t>>>8&255;m[e+3]=t&255;break;case 1:m[e]=t&255;m[e+1]=t>>>24&255;m[e+2]=t>>>16&255;m[e+3]=t>>>8&255;break;case 2:m[e]=t>>>8&255,m[e+1]=t>>>16&255,m[e+2]=t>>>24&255,m[e+3]=t&255}}d+=4;e+=4;l+=4}}else for(t=0,r=g.height;t>>24&255)*H.unmult)]&255)<<24|(H.__clamp[Math.round((p>>>16&255)*H.unmult)]&255)<<16|(H.__clamp[Math.round((p>>>8&255)*H.unmult)]&255)<<8|p&255);A=b;Q=!1;null==Q&&(Q=!1);null==A&&(A=0);switch(A){case 0:x= +(u[l]&255)<<24|(u[l+1]&255)<<16|(u[l+2]&255)<<8|u[l+3]&255;break;case 1:x=(u[l+1]&255)<<24|(u[l+2]&255)<<16|(u[l+3]&255)<<8|u[l]&255;break;case 2:x=(u[l+2]&255)<<24|(u[l+1]&255)<<16|(u[l]&255)<<8|u[l+3]&255}Q&&0!=(x&255)&&255!=(x&255)&&(H.unmult=255/(x&255),x=(H.__clamp[Math.round((x>>>24&255)*H.unmult)]&255)<<24|(H.__clamp[Math.round((x>>>16&255)*H.unmult)]&255)<<16|(H.__clamp[Math.round((x>>>8&255)*H.unmult)]&255)<<8|x&255);p=(p>>>24&255)<<24|(p>>>16&255)<<16|(p>>>8&255)<<8|Math.round((x&255)/255* +(p&255))&255;A=k;Q=z;null==Q&&(Q=!1);null==A&&(A=0);Q&&(0==(p&255)?0!=p&&(p=0):255!=(p&255)&&(H.a16=H.__alpha16[p&255],p=((p>>>24&255)*H.a16>>16&255)<<24|((p>>>16&255)*H.a16>>16&255)<<16|((p>>>8&255)*H.a16>>16&255)<<8|p&255));switch(A){case 0:m[e]=p>>>24&255;m[e+1]=p>>>16&255;m[e+2]=p>>>8&255;m[e+3]=p&255;break;case 1:m[e]=p&255;m[e+1]=p>>>24&255;m[e+2]=p>>>16&255;m[e+3]=p>>>8&255;break;case 2:m[e]=p>>>8&255,m[e+1]=p>>>16&255,m[e+2]=p>>>24&255,m[e+3]=p&255}d+=4;e+=4;l+=4}else if(l)for(x=0,u=g.height;x< +u;)for(e=x++,d=c.byteOffset+c.stride*e,e=g.byteOffset+g.stride*e,b=0,f=g.width;b>>24&255)*H.unmult)]&255)<<24|(H.__clamp[Math.round((p>>>16&255)*H.unmult)]& +255)<<16|(H.__clamp[Math.round((p>>>8&255)*H.unmult)]&255)<<8|p&255);l=k;r=z;null==r&&(r=!1);null==l&&(l=0);switch(l){case 0:t=(m[e]&255)<<24|(m[e+1]&255)<<16|(m[e+2]&255)<<8|m[e+3]&255;break;case 1:t=(m[e+1]&255)<<24|(m[e+2]&255)<<16|(m[e+3]&255)<<8|m[e]&255;break;case 2:t=(m[e+2]&255)<<24|(m[e+1]&255)<<16|(m[e]&255)<<8|m[e+3]&255}r&&0!=(t&255)&&255!=(t&255)&&(H.unmult=255/(t&255),t=(H.__clamp[Math.round((t>>>24&255)*H.unmult)]&255)<<24|(H.__clamp[Math.round((t>>>16&255)*H.unmult)]&255)<<16|(H.__clamp[Math.round((t>>> +8&255)*H.unmult)]&255)<<8|t&255);Q=(p&255)/255;y=(t&255)/255;N=1-Q;K=Q+y*N;0==K?t=0:(t=(H.__clamp[Math.round(((p>>>24&255)*Q+(t>>>24&255)*y*N)/K)]&255)<<24|(t>>>16&255)<<16|(t>>>8&255)<<8|t&255,t=(t>>>24&255)<<24|(H.__clamp[Math.round(((p>>>16&255)*Q+(t>>>16&255)*y*N)/K)]&255)<<16|(t>>>8&255)<<8|t&255,t=(t>>>24&255)<<24|(t>>>16&255)<<16|(H.__clamp[Math.round(((p>>>8&255)*Q+(t>>>8&255)*y*N)/K)]&255)<<8|t&255,t=(t>>>24&255)<<24|(t>>>16&255)<<16|(t>>>8&255)<<8|H.__clamp[Math.round(255*K)]&255);l=k;r= +z;null==r&&(r=!1);null==l&&(l=0);r&&(0==(t&255)?0!=t&&(t=0):255!=(t&255)&&(H.a16=H.__alpha16[t&255],t=((t>>>24&255)*H.a16>>16&255)<<24|((t>>>16&255)*H.a16>>16&255)<<16|((t>>>8&255)*H.a16>>16&255)<<8|t&255));switch(l){case 0:m[e]=t>>>24&255;m[e+1]=t>>>16&255;m[e+2]=t>>>8&255;m[e+3]=t&255;break;case 1:m[e]=t&255;m[e+1]=t>>>24&255;m[e+2]=t>>>16&255;m[e+3]=t>>>8&255;break;case 2:m[e]=t>>>8&255,m[e+1]=t>>>16&255,m[e+2]=t>>>24&255,m[e+3]=t&255}d+=4;e+=4}else if(h==k&&n==z&&r==u)for(p=0,h=g.height;p>>24&255)*H.unmult)]&255)<<24|(H.__clamp[Math.round((p>>>16&255)*H.unmult)]&255)<<16|(H.__clamp[Math.round((p>>>8&255)*H.unmult)]&255)<<8|p&255);f=k;l=z;null==l&&(l=!1);null==f&&(f=0);l&&(0==(p&255)?0!=p&&(p=0):255!=(p&255)&&(H.a16=H.__alpha16[p&255],p=((p>>>24&255)*H.a16>>16&255)<<24|((p>>>16&255)*H.a16>>16&255)<<16|((p>>>8&255)*H.a16>>16&255)<<8|p&255));switch(f){case 0:m[e]=p>>>24&255;m[e+1]=p>>>16&255;m[e+2]=p>>>8&255;m[e+3]=p&255;break;case 1:m[e]=p&255; +m[e+1]=p>>>24&255;m[e+2]=p>>>16&255;m[e+3]=p>>>8&255;break;case 2:m[e]=p>>>8&255,m[e+1]=p>>>16&255,m[e+2]=p>>>24&255,m[e+3]=p&255}d+=4;e+=4}}a.dirty=!0;a.version++};hb.fillRect=function(a,b,c,d){switch(d){case 1:c=(c>>>16&255)<<24|(c>>>8&255)<<16|(c&255)<<8|c>>>24&255;break;case 2:c=(c>>>8&255)<<24|(c>>>16&255)<<16|(c>>>24&255)<<8|c&255}a.get_transparent()||(c=(c>>>24&255)<<24|(c>>>16&255)<<16|(c>>>8&255)<<8|255);d=a.buffer.data;if(null!=d){var e=a.buffer.format;a.buffer.premultiplied&&(0==(c&255)? +0!=c&&(c=0):255!=(c&255)&&(H.a16=H.__alpha16[c&255],c=((c>>>24&255)*H.a16>>16&255)<<24|((c>>>16&255)*H.a16>>16&255)<<16|((c>>>8&255)*H.a16>>16&255)<<8|c&255));b=new Yd(a,b);for(var f,l=0,v=b.height;l>>24&255)*H.a16>>16&255)<<24|((c>>>16&255)*H.a16>>16&255)<<16|((c>>>8&255)*H.a16>>16&255)<<8|c&255));switch(k){case 0:d[h]= +c>>>24&255;d[h+1]=c>>>16&255;d[h+2]=c>>>8&255;d[h+3]=c&255;break;case 1:d[h]=c&255;d[h+1]=c>>>24&255;d[h+2]=c>>>16&255;d[h+3]=c>>>8&255;break;case 2:d[h]=c>>>8&255,d[h+1]=c>>>16&255,d[h+2]=c>>>24&255,d[h+3]=c&255}}}a.dirty=!0;a.version++}};hb.gaussianBlur=function(a,b,c,d,e,f,l,v,m){null==l&&(l=1);null==f&&(f=4);null==e&&(e=4);(v=a.get_premultiplied())&&a.set_premultiplied(!1);vc.blur(a,b,c,d,e,f,l);a.dirty=!0;a.version++;v&&a.set_premultiplied(!0);return a};hb.multiplyAlpha=function(a){var b=a.buffer.data; +if(null!=b&&a.buffer.transparent){for(var c=a.buffer.format,d,e=0,f=b.length/4|0;e>>24&255)*H.unmult)]&255)<<24|(H.__clamp[Math.round((d>>> +16&255)*H.unmult)]&255)<<16|(H.__clamp[Math.round((d>>>8&255)*H.unmult)]&255)<<8|d&255);l*=4;v=c;m=!0;null==m&&(m=!1);null==v&&(v=0);m&&(0==(d&255)?0!=d&&(d=0):255!=(d&255)&&(H.a16=H.__alpha16[d&255],d=((d>>>24&255)*H.a16>>16&255)<<24|((d>>>16&255)*H.a16>>16&255)<<16|((d>>>8&255)*H.a16>>16&255)<<8|d&255));switch(v){case 0:b[l]=d>>>24&255;b[l+1]=d>>>16&255;b[l+2]=d>>>8&255;b[l+3]=d&255;break;case 1:b[l]=d&255;b[l+1]=d>>>24&255;b[l+2]=d>>>16&255;b[l+3]=d>>>8&255;break;case 2:b[l]=d>>>8&255,b[l+1]=d>>> +16&255,b[l+2]=d>>>24&255,b[l+3]=d&255}}a.buffer.premultiplied=!0;a.dirty=!0;a.version++}};hb.setFormat=function(a,b){var c=a.buffer.data;if(null!=c){var d=c.length/4|0;switch(a.get_format()){case 0:var e=0;var f=1;var l=2;var v=3;break;case 1:e=1;f=2;l=3;v=0;break;case 2:e=2,f=1,l=0,v=3}switch(b){case 0:var m=0;var g=1;var h=2;var k=3;break;case 1:m=1;g=2;h=3;k=0;break;case 2:m=2,g=1,h=0,k=3}for(var n=0;n>>16&255)<<24|(d>>>8&255)<<16|(d&255)<<8|d>>>24&255;break;case 2:d=(d>>>8&255)<<24|(d>>>16&255)<<16|(d>>>24&255)<<8|d&255}e=0;var f=a.buffer.data,l=4*(c+a.offsetY)*a.buffer.width+4*(b+a.offsetX),v=a.buffer.format,m=a.buffer.premultiplied;null==m&&(m=!1);null==v&&(v=0);switch(v){case 0:e=(f[l]&255)<<24|(f[l+1]&255)<<16|(f[l+2]&255)<<8|f[l+3]&255;break;case 1:e=(f[l+1]&255)<<24|(f[l+2]&255)<< +16|(f[l+3]&255)<<8|f[l]&255;break;case 2:e=(f[l+2]&255)<<24|(f[l+1]&255)<<16|(f[l]&255)<<8|f[l+3]&255}m&&0!=(e&255)&&255!=(e&255)&&(H.unmult=255/(e&255),e=(H.__clamp[Math.round((e>>>24&255)*H.unmult)]&255)<<24|(H.__clamp[Math.round((e>>>16&255)*H.unmult)]&255)<<16|(H.__clamp[Math.round((e>>>8&255)*H.unmult)]&255)<<8|e&255);d=(d>>>24&255)<<24|(d>>>16&255)<<16|(d>>>8&255)<<8|e&255;e=a.buffer.data;b=4*(c+a.offsetY)*a.buffer.width+4*(b+a.offsetX);c=a.buffer.format;f=a.buffer.premultiplied;null==f&&(f= +!1);null==c&&(c=0);f&&(0==(d&255)?0!=d&&(d=0):255!=(d&255)&&(H.a16=H.__alpha16[d&255],d=((d>>>24&255)*H.a16>>16&255)<<24|((d>>>16&255)*H.a16>>16&255)<<16|((d>>>8&255)*H.a16>>16&255)<<8|d&255));switch(c){case 0:e[b]=d>>>24&255;e[b+1]=d>>>16&255;e[b+2]=d>>>8&255;e[b+3]=d&255;break;case 1:e[b]=d&255;e[b+1]=d>>>24&255;e[b+2]=d>>>16&255;e[b+3]=d>>>8&255;break;case 2:e[b]=d>>>8&255,e[b+1]=d>>>16&255,e[b+2]=d>>>24&255,e[b+3]=d&255}a.dirty=!0;a.version++};hb.setPixel32=function(a,b,c,d,e){switch(e){case 1:d= +(d>>>16&255)<<24|(d>>>8&255)<<16|(d&255)<<8|d>>>24&255;break;case 2:d=(d>>>8&255)<<24|(d>>>16&255)<<16|(d>>>24&255)<<8|d&255}a.get_transparent()||(d=(d>>>24&255)<<24|(d>>>16&255)<<16|(d>>>8&255)<<8|255);e=a.buffer.data;b=4*(c+a.offsetY)*a.buffer.width+4*(b+a.offsetX);c=a.buffer.format;var f=a.buffer.premultiplied;null==f&&(f=!1);null==c&&(c=0);f&&(0==(d&255)?0!=d&&(d=0):255!=(d&255)&&(H.a16=H.__alpha16[d&255],d=((d>>>24&255)*H.a16>>16&255)<<24|((d>>>16&255)*H.a16>>16&255)<<16|((d>>>8&255)*H.a16>> +16&255)<<8|d&255));switch(c){case 0:e[b]=d>>>24&255;e[b+1]=d>>>16&255;e[b+2]=d>>>8&255;e[b+3]=d&255;break;case 1:e[b]=d&255;e[b+1]=d>>>24&255;e[b+2]=d>>>16&255;e[b+3]=d>>>8&255;break;case 2:e[b]=d>>>8&255,e[b+1]=d>>>16&255,e[b+2]=d>>>24&255,e[b+3]=d&255}a.dirty=!0;a.version++};hb.unmultiplyAlpha=function(a){var b=a.buffer.data;if(null!=b){for(var c=a.buffer.format,d,e=0,f=b.length/4|0;e>>24&255)*H.unmult)]&255)<<24|(H.__clamp[Math.round((d>>>16&255)*H.unmult)]&255)<<16|(H.__clamp[Math.round((d>>>8&255)*H.unmult)]&255)<<8|d&255);l*=4;v=c;m=!1;null==m&&(m=!1);null==v&&(v=0);m&&(0==(d&255)?0!=d&&(d=0):255!=(d&255)&&(H.a16=H.__alpha16[d& +255],d=((d>>>24&255)*H.a16>>16&255)<<24|((d>>>16&255)*H.a16>>16&255)<<16|((d>>>8&255)*H.a16>>16&255)<<8|d&255));switch(v){case 0:b[l]=d>>>24&255;b[l+1]=d>>>16&255;b[l+2]=d>>>8&255;b[l+3]=d&255;break;case 1:b[l]=d&255;b[l+1]=d>>>24&255;b[l+2]=d>>>16&255;b[l+3]=d>>>8&255;break;case 2:b[l]=d>>>8&255,b[l+1]=d>>>16&255,b[l+2]=d>>>24&255,b[l+3]=d&255}}a.buffer.premultiplied=!1;a.dirty=!0;a.version++}};var Yd=function(a,b){this.image=a;null==b?this.rect=a.get_rect():(0>b.x&&(b.x=0),0>b.y&&(b.y=0),b.x+b.width> +a.width&&(b.width=a.width-b.x),b.y+b.height>a.height&&(b.height=a.height-b.y),0>b.width&&(b.width=0),0>b.height&&(b.height=0),this.rect=b);this.stride=a.buffer.get_stride();this.__update()};h["lime._internal.graphics._ImageDataUtil.ImageDataView"]=Yd;Yd.__name__="lime._internal.graphics._ImageDataUtil.ImageDataView";Yd.prototype={x:null,y:null,height:null,width:null,byteOffset:null,image:null,rect:null,stride:null,tempRect:null,clip:function(a,b,c,d){null==this.tempRect&&(this.tempRect=new hd);this.tempRect.setTo(a, +b,c,d);this.rect.intersection(this.tempRect,this.rect);this.__update()},__update:function(){this.x=Math.ceil(this.rect.x);this.y=Math.ceil(this.rect.y);this.width=Math.floor(this.rect.width);this.height=Math.floor(this.rect.height);this.byteOffset=this.stride*(this.y+this.image.offsetY)+4*(this.x+this.image.offsetX)},__class__:Yd};var vc=function(){};h["lime._internal.graphics.StackBlur"]=vc;vc.__name__="lime._internal.graphics.StackBlur";vc.blur=function(a,b,c,d,e,f,l){a.copyPixels(b,c,d);vc.__stackBlurCanvasRGBA(a, +c.width|0,c.height|0,e,f,l)};vc.__stackBlurCanvasRGBA=function(a,b,c,d,e,f){d=Math.round(d)>>1;e=Math.round(e)>>1;if(null!=vc.MUL_TABLE&&(d>=vc.MUL_TABLE.length&&(d=vc.MUL_TABLE.length-1),e>=vc.MUL_TABLE.length&&(e=vc.MUL_TABLE.length-1),!(0>d||0>e))){1>f&&(f=1);3>>K,a[v++]=m*N>>>K,a[v++]=ha*N>>>K,a[v++]=D*N>>>K,p=p+d+1,p=x+(p>>K,a[p+3]=w,0>>K,a[p+1]=m*N>>>K,a[p+2]=ha*N>>>K):a[p]=a[p+1]=a[p+2]=0,p=C+r,p=q+(p>>K;a[p+3]=w;0>>K)*w|0,X=(m*N>>>K)*w|0,C=(ha*N>>>K)*w|0,a[p]=255this.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)}, +remove:function(a){for(var b=this.__listeners.length;0<=--b;)aa.compareMethods(this.__listeners[b],a)&&(this.__listeners.splice(b,1),this.__priorities.splice(b,1),this.__repeat.splice(b,1))},__listeners:null,dispatch:function(a){this.canceled=!1;for(var b=this.__listeners,c=this.__repeat,d=0;dthis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)},remove:function(a){for(var b=this.__listeners.length;0<=--b;)aa.compareMethods(this.__listeners[b], +a)&&(this.__listeners.splice(b,1),this.__priorities.splice(b,1),this.__repeat.splice(b,1))},__listeners:null,dispatch:function(a,b,c){this.canceled=!1;for(var d=this.__listeners,e=this.__repeat,f=0;fthis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)},cancel:function(){this.canceled=!0},remove:function(a){for(var b=this.__listeners.length;0<=--b;)aa.compareMethods(this.__listeners[b],a)&&(this.__listeners.splice(b, +1),this.__priorities.splice(b,1),this.__repeat.splice(b,1))},__listeners:null,dispatch:function(a,b,c){this.canceled=!1;for(var d=this.__listeners,e=this.__repeat,f=0;fthis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)},remove:function(a){for(var b=this.__listeners.length;0<=--b;)aa.compareMethods(this.__listeners[b],a)&&(this.__listeners.splice(b,1),this.__priorities.splice(b,1),this.__repeat.splice(b,1))},__listeners:null, +dispatch:function(a,b){this.canceled=!1;for(var c=this.__listeners,d=this.__repeat,e=0;ethis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)},cancel:function(){this.canceled=!0},remove:function(a){for(var b=this.__listeners.length;0<=--b;)aa.compareMethods(this.__listeners[b],a)&&(this.__listeners.splice(b,1),this.__priorities.splice(b,1),this.__repeat.splice(b,1))},__listeners:null, +dispatch:function(a,b,c){this.canceled=!1;for(var d=this.__listeners,e=this.__repeat,f=0;fthis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)},cancel:function(){this.canceled=!0},remove:function(a){for(var b=this.__listeners.length;0<=--b;)aa.compareMethods(this.__listeners[b],a)&&(this.__listeners.splice(b,1),this.__priorities.splice(b,1),this.__repeat.splice(b,1))},__listeners:null, +dispatch:function(a,b,c){this.canceled=!1;for(var d=this.__listeners,e=this.__repeat,f=0;fthis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)},__listeners:null,__class__:yi};var zi=function(){this.canceled=!1;this.__listeners=[];this.__priorities=[];this.__repeat=[]};h["lime.app._Event_Int_Float_Void"]=zi;zi.__name__="lime.app._Event_Int_Float_Void";zi.prototype={canceled:null,__repeat:null,__priorities:null,add:function(a,b, +c){null==c&&(c=0);null==b&&(b=!1);for(var d=0,e=this.__priorities.length;dthis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)},remove:function(a){for(var b=this.__listeners.length;0<=--b;)aa.compareMethods(this.__listeners[b],a)&&(this.__listeners.splice(b,1),this.__priorities.splice(b,1),this.__repeat.splice(b,1))},__listeners:null,dispatch:function(a, +b){this.canceled=!1;for(var c=this.__listeners,d=this.__repeat,e=0;ethis.__priorities[f]){this.__listeners.splice(f, +0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)},remove:function(a){for(var b=this.__listeners.length;0<=--b;)aa.compareMethods(this.__listeners[b],a)&&(this.__listeners.splice(b,1),this.__priorities.splice(b,1),this.__repeat.splice(b,1))},__listeners:null,dispatch:function(a,b){this.canceled=!1;for(var c=this.__listeners,d=this.__repeat,e=0;ethis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c); +this.__repeat.push(!b)},remove:function(a){for(var b=this.__listeners.length;0<=--b;)aa.compareMethods(this.__listeners[b],a)&&(this.__listeners.splice(b,1),this.__priorities.splice(b,1),this.__repeat.splice(b,1))},__listeners:null,dispatch:function(a){this.canceled=!1;for(var b=this.__listeners,c=this.__repeat,d=0;dthis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)},__listeners:null,__class__:Ai};var Bi=function(){this.canceled= +!1;this.__listeners=[];this.__priorities=[];this.__repeat=[]};h["lime.app._Event_String_Int_Int_Void"]=Bi;Bi.__name__="lime.app._Event_String_Int_Int_Void";Bi.prototype={canceled:null,__repeat:null,__priorities:null,add:function(a,b,c){null==c&&(c=0);null==b&&(b=!1);for(var d=0,e=this.__priorities.length;dthis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)}, +__listeners:null,__class__:Bi};var Vg=function(){this.canceled=!1;this.__listeners=[];this.__priorities=[];this.__repeat=[]};h["lime.app._Event_String_Void"]=Vg;Vg.__name__="lime.app._Event_String_Void";Vg.prototype={canceled:null,__repeat:null,__priorities:null,add:function(a,b,c){null==c&&(c=0);null==b&&(b=!1);for(var d=0,e=this.__priorities.length;dthis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a); +this.__priorities.push(c);this.__repeat.push(!b)},cancel:function(){this.canceled=!0},has:function(a){for(var b=0,c=this.__listeners;bthis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0, +c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)},has:function(a){for(var b=0,c=this.__listeners;bthis.__priorities[f]){this.__listeners.splice(f, +0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)},cancel:function(){this.canceled=!0},remove:function(a){for(var b=this.__listeners.length;0<=--b;)aa.compareMethods(this.__listeners[b],a)&&(this.__listeners.splice(b,1),this.__priorities.splice(b,1),this.__repeat.splice(b,1))},__listeners:null,dispatch:function(a){this.canceled=!1;for(var b=this.__listeners,c=this.__repeat,d=0;dthis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f, +0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)},remove:function(a){for(var b=this.__listeners.length;0<=--b;)aa.compareMethods(this.__listeners[b],a)&&(this.__listeners.splice(b,1),this.__priorities.splice(b,1),this.__repeat.splice(b,1))},__listeners:null,dispatch:function(a,b){this.canceled=!1;for(var c=this.__listeners,d=this.__repeat,e=0;ethis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a); +this.__priorities.push(c);this.__repeat.push(!b)},remove:function(a){for(var b=this.__listeners.length;0<=--b;)aa.compareMethods(this.__listeners[b],a)&&(this.__listeners.splice(b,1),this.__priorities.splice(b,1),this.__repeat.splice(b,1))},__listeners:null,dispatch:function(a){this.canceled=!1;for(var b=this.__listeners,c=this.__repeat,d=0;dthis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)},remove:function(a){for(var b= +this.__listeners.length;0<=--b;)aa.compareMethods(this.__listeners[b],a)&&(this.__listeners.splice(b,1),this.__priorities.splice(b,1),this.__repeat.splice(b,1))},__listeners:null,dispatch:function(a){this.canceled=!1;for(var b=this.__listeners,c=this.__repeat,d=0;dthis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)},remove:function(a){for(var b=this.__listeners.length;0<=--b;)aa.compareMethods(this.__listeners[b],a)&&(this.__listeners.splice(b,1), +this.__priorities.splice(b,1),this.__repeat.splice(b,1))},__listeners:null,dispatch:function(a){this.canceled=!1;for(var b=this.__listeners,c=this.__repeat,d=0;dthis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)},cancel:function(){this.canceled=!0},remove:function(a){for(var b=this.__listeners.length;0<=--b;)aa.compareMethods(this.__listeners[b],a)&&(this.__listeners.splice(b,1),this.__priorities.splice(b, +1),this.__repeat.splice(b,1))},__listeners:null,dispatch:function(a,b){this.canceled=!1;for(var c=this.__listeners,d=this.__repeat,e=0;ethis.__priorities[f]){this.__listeners.splice(f,0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)},remove:function(a){for(var b=this.__listeners.length;0<=--b;)aa.compareMethods(this.__listeners[b],a)&&(this.__listeners.splice(b,1),this.__priorities.splice(b,1),this.__repeat.splice(b,1))},__listeners:null,dispatch:function(a){this.canceled= +!1;for(var b=this.__listeners,c=this.__repeat,d=0;dthis.__priorities[f]){this.__listeners.splice(f, +0,a);this.__priorities.splice(f,0,c);this.__repeat.splice(f,0,!b);return}}this.__listeners.push(a);this.__priorities.push(c);this.__repeat.push(!b)},remove:function(a){for(var b=this.__listeners.length;0<=--b;)aa.compareMethods(this.__listeners[b],a)&&(this.__listeners.splice(b,1),this.__priorities.splice(b,1),this.__repeat.splice(b,1))},__listeners:null,dispatch:function(a){this.canceled=!1;for(var b=this.__listeners,c=this.__repeat,d=0;da.length)return!1;a=a.getString(0,6);return"GIF87a"!=a?"GIF89a"==a:!0};Ia.__isJPG=function(a){return null==a||4>a.length?!1:255==a.b[0]&&216==a.b[1]&&255==a.b[a.length-2]?217== +a.b[a.length-1]:!1};Ia.__isPNG=function(a){return null==a||8>a.length?!1:137==a.b[0]&&80==a.b[1]&&78==a.b[2]&&71==a.b[3]&&13==a.b[4]&&10==a.b[5]&&26==a.b[6]?10==a.b[7]:!1};Ia.__isWebP=function(a){return null==a||16>a.length?!1:"RIFF"==a.getString(0,4)?"WEBP"==a.getString(8,4):!1};Ia.prototype={buffer:null,dirty:null,height:null,offsetX:null,offsetY:null,rect:null,type:null,version:null,width:null,clone:function(){if(null!=this.buffer){this.type==Vc.CANVAS?ya.convertToCanvas(this):ya.convertToData(this); +var a=new Ia(this.buffer.clone(),this.offsetX,this.offsetY,this.width,this.height,null,this.type);a.version=this.version;return a}return new Ia(null,this.offsetX,this.offsetY,this.width,this.height,null,this.type)},colorTransform:function(a,b){a=this.__clipRect(a);if(null!=this.buffer&&null!=a)switch(this.type._hx_index){case 0:ya.colorTransform(this,a,b);break;case 1:ya.convertToData(this);hb.colorTransform(this,a,b);break;case 2:a.offset(this.offsetX,this.offsetY),this.buffer.__srcBitmapData.colorTransform(a.__toFlashRectangle(), +fb.__toFlashColorTransform(b))}},copyChannel:function(a,b,c,d,e){b=this.__clipRect(b);if(null!=this.buffer&&null!=b&&!(e==si.ALPHA&&!this.get_transparent()||0>=b.width||0>=b.height))switch(b.x+b.width>a.width&&(b.width=a.width-b.x),b.y+b.height>a.height&&(b.height=a.height-b.y),this.type._hx_index){case 0:ya.copyChannel(this,a,b,c,d,e);break;case 1:ya.convertToData(this);ya.convertToData(a);hb.copyChannel(this,a,b,c,d,e);break;case 2:switch(d._hx_index){case 0:var f=1;break;case 1:f=2;break;case 2:f= +4;break;case 3:f=8}switch(e._hx_index){case 0:var l=1;break;case 1:l=2;break;case 2:l=4;break;case 3:l=8}b.offset(a.offsetX,a.offsetY);c.offset(this.offsetX,this.offsetY);this.buffer.__srcBitmapData.copyChannel(a.buffer.get_src(),b.__toFlashRectangle(),c.__toFlashPoint(),f,l)}},copyPixels:function(a,b,c,d,e,f){null==f&&(f=!1);if(null!=this.buffer&&null!=a&&!(0>=b.width||0>=b.height||0>=this.width||0>=this.height))switch(b.x+b.width>a.width&&(b.width=a.width-b.x),b.y+b.height>a.height&&(b.height=a.height- +b.y),0>b.x&&(b.width+=b.x,b.x=0),0>b.y&&(b.height+=b.y,b.y=0),c.x+b.width>this.width&&(b.width=this.width-c.x),c.y+b.height>this.height&&(b.height=this.height-c.y),0>c.x&&(b.width+=c.x,b.x-=c.x,c.x=0),0>c.y&&(b.height+=c.y,b.y-=c.y,c.y=0),a==this&&c.x>>24&255)<<16|(b>>>16&255)<<8|b>>>8&255;else switch(c){case 1:break;case 2:b=(b&255)<<24|(b>>>8&255)<<16|(b>>>16&255)<<8|b>>>24&255;break;default:b=(b&255)<<24|(b>>>24&255)<<16|(b>>>16&255)<<8|b>>>8&255}this.buffer.__srcBitmapData.fillRect(a.__toFlashRectangle(), +b)}},setPixel:function(a,b,c,d){if(!(null==this.buffer||0>a||0>b||a>=this.width||b>=this.height))switch(this.type._hx_index){case 0:ya.setPixel(this,a,b,c,d);break;case 1:ya.convertToData(this);hb.setPixel(this,a,b,c,d);break;case 2:if(null==d)c=(c&255)<<24|(c>>>24&255)<<16|(c>>>16&255)<<8|c>>>8&255;else switch(d){case 1:break;case 2:c=(c&255)<<24|(c>>>8&255)<<16|(c>>>16&255)<<8|c>>>24&255;break;default:c=(c&255)<<24|(c>>>24&255)<<16|(c>>>16&255)<<8|c>>>8&255}this.buffer.__srcBitmapData.setPixel(a+ +this.offsetX,b+this.offsetX,c)}},setPixel32:function(a,b,c,d){if(!(null==this.buffer||0>a||0>b||a>=this.width||b>=this.height))switch(this.type._hx_index){case 0:ya.setPixel32(this,a,b,c,d);break;case 1:ya.convertToData(this);hb.setPixel32(this,a,b,c,d);break;case 2:if(null==d)c=(c&255)<<24|(c>>>24&255)<<16|(c>>>16&255)<<8|c>>>8&255;else switch(d){case 1:break;case 2:c=(c&255)<<24|(c>>>8&255)<<16|(c>>>16&255)<<8|c>>>24&255;break;default:c=(c&255)<<24|(c>>>24&255)<<16|(c>>>16&255)<<8|c>>>8&255}this.buffer.__srcBitmapData.setPixel32(a+ +this.offsetX,b+this.offsetY,c)}},__clipRect:function(a){return null==a||0>a.x&&(a.width-=-a.x,a.x=0,0>=a.x+a.width)||0>a.y&&(a.height-=-a.y,a.y=0,0>=a.y+a.height)||a.x+a.width>=this.width&&(a.width-=a.x+a.width-this.width,0>=a.width)||a.y+a.height>=this.height&&(a.height-=a.y+a.height-this.height,0>=a.height)?null:a},__fromBase64:function(a,b,c){var d=this,e=new Image;e.addEventListener("load",function(a){d.buffer=new Xd(null,e.width,e.height);d.buffer.__srcImage=e;d.offsetX=0;d.offsetY=0;d.width= +d.buffer.width;d.height=d.buffer.height;null!=c&&c(d)},!1);e.src="data:"+b+";base64,"+a},__fromBytes:function(a,b){if(Ia.__isPNG(a))var c="image/png";else if(Ia.__isJPG(a))c="image/jpeg";else if(Ia.__isGIF(a))c="image/gif";else return!1;this.__fromBase64(Nd.encode(a),c,b);return!0},__fromFile:function(a,b,c){var d=this,e=new Image;pa.__isSameOrigin(a)||(e.crossOrigin="Anonymous");e.onload=function(a){d.buffer=new Xd(null,e.width,e.height);d.buffer.__srcImage=e;d.width=e.width;d.height=e.height;null!= +b&&b(d)};e.onerror=function(a){null!=c&&c()};e.src=a;return!0},__fromImageBuffer:function(a){this.buffer=a;null!=a&&(-1==this.width&&(this.width=a.width),-1==this.height&&(this.height=a.height))},get_data:function(){null==this.buffer.data&&0c;){var d=c++;b=Math.floor(d*a[18]+255*a[19]);255b&&(b=0);fb.__alphaTable[d]=b}return fb.__alphaTable};fb.getBlueTable=function(a){if(null==fb.__blueTable){var b=new Uint8Array(256);fb.__blueTable=b}for(var c=0;256>c;){var d=c++;b=Math.floor(d* +a[12]+255*a[14]);255b&&(b=0);fb.__blueTable[d]=b}return fb.__blueTable};fb.getGreenTable=function(a){if(null==fb.__greenTable){var b=new Uint8Array(256);fb.__greenTable=b}for(var c=0;256>c;){var d=c++;b=Math.floor(d*a[6]+255*a[9]);255b&&(b=0);fb.__greenTable[d]=b}return fb.__greenTable};fb.getRedTable=function(a){if(null==fb.__redTable){var b=new Uint8Array(256);fb.__redTable=b}for(var c=0;256>c;){var d=c++;b=Math.floor(d*a[0]+255*a[4]);255b&&(b=0);fb.__redTable[d]= +b}return fb.__redTable};fb.__toFlashColorTransform=function(a){return null};var Na={};h["lime.math._Matrix4.Matrix4_Impl_"]=Na;Na.__name__="lime.math._Matrix4.Matrix4_Impl_";Na._new=function(a){if(null==a||16!=a.length)a=Na.__identity,a=null!=a?new Float32Array(a):null;return a};Na.append=function(a,b){var c=a[0],d=a[4],e=a[8],f=a[12],l=a[1],v=a[5],m=a[9],g=a[13],h=a[2],k=a[6],n=a[10],z=a[14],r=a[3],u=a[7],q=a[11],p=a[15],B=Na.get(b,0),A=Na.get(b,4),Q=Na.get(b,8),t=Na.get(b,12),y=Na.get(b,1),x=Na.get(b, +5),N=Na.get(b,9),K=Na.get(b,13),ta=Na.get(b,2),X=Na.get(b,6),w=Na.get(b,10),C=Na.get(b,14),ha=Na.get(b,3),D=Na.get(b,7),H=Na.get(b,11);b=Na.get(b,15);a[0]=c*B+l*A+h*Q+r*t;a[1]=c*y+l*x+h*N+r*K;a[2]=c*ta+l*X+h*w+r*C;a[3]=c*ha+l*D+h*H+r*b;a[4]=d*B+v*A+k*Q+u*t;a[5]=d*y+v*x+k*N+u*K;a[6]=d*ta+v*X+k*w+u*C;a[7]=d*ha+v*D+k*H+u*b;a[8]=e*B+m*A+n*Q+q*t;a[9]=e*y+m*x+n*N+q*K;a[10]=e*ta+m*X+n*w+q*C;a[11]=e*ha+m*D+n*H+q*b;a[12]=f*B+g*A+z*Q+p*t;a[13]=f*y+g*x+z*N+p*K;a[14]=f*ta+g*X+z*w+p*C;a[15]=f*ha+g*D+z*H+p*b}; +Na.createOrtho=function(a,b,c,d,e,f,l){var v=1/(c-b),m=1/(e-d),g=1/(l-f);a[0]=2*v;a[1]=0;a[2]=0;a[3]=0;a[4]=0;a[5]=2*m;a[6]=0;a[7]=0;a[8]=0;a[9]=0;a[10]=-2*g;a[11]=0;a[12]=-(b+c)*v;a[13]=-(d+e)*m;a[14]=-(f+l)*g;a[15]=1};Na.identity=function(a){a[0]=1;a[1]=0;a[2]=0;a[3]=0;a[4]=0;a[5]=1;a[6]=0;a[7]=0;a[8]=0;a[9]=0;a[10]=1;a[11]=0;a[12]=0;a[13]=0;a[14]=0;a[15]=1};Na.get=function(a,b){return a[b]};Na.set=function(a,b,c){return a[b]=c};var H={};h["lime.math._RGBA.RGBA_Impl_"]=H;H.__name__="lime.math._RGBA.RGBA_Impl_"; +var hd=function(a,b,c,d){null==d&&(d=0);null==c&&(c=0);null==b&&(b=0);null==a&&(a=0);this.x=a;this.y=b;this.width=c;this.height=d};h["lime.math.Rectangle"]=hd;hd.__name__="lime.math.Rectangle";hd.prototype={height:null,width:null,x:null,y:null,intersection:function(a,b){null==b&&(b=new hd);var c=this.xa.get_right()?a.get_right():this.get_right();if(d<=c)return b.setEmpty(),b;var e=this.ya.get_bottom()?a.get_bottom():this.get_bottom(); +if(a<=e)return b.setEmpty(),b;b.x=c;b.y=e;b.width=d-c;b.height=a-e;return b},offset:function(a,b){this.x+=a;this.y+=b},setEmpty:function(){this.x=this.y=this.width=this.height=0},setTo:function(a,b,c,d){this.x=a;this.y=b;this.width=c;this.height=d},__toFlashRectangle:function(){return null},get_bottom:function(){return this.y+this.height},get_right:function(){return this.x+this.width},__class__:hd,__properties__:{get_right:"get_right",get_bottom:"get_bottom"}};var oi=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};h["lime.math.Vector4"]=oi;oi.__name__="lime.math.Vector4";oi.prototype={w:null,x:null,y:null,z:null,__class__:oi};var Hb=function(){};h["lime.media.AudioBuffer"]=Hb;Hb.__name__="lime.media.AudioBuffer";Hb.fromBytes=function(a){if(null==a)return null;var b=new Hb;b.set_src(new Howl({src:["data:"+Hb.__getCodec(a)+";base64,"+Nd.encode(a)],html5:!0,preload:!1}));return b};Hb.fromFile=function(a){if(null==a)return null; +var b=new Hb;b.__srcHowl=new Howl({src:[a],preload:!1});return b};Hb.fromFiles=function(a){var b=new Hb;b.__srcHowl=new Howl({src:a,preload:!1});return b};Hb.loadFromFile=function(a){var b=new dc,c=Hb.fromFile(a);null!=c?null!=c&&(c.__srcHowl.on("load",function(){b.complete(c)}),c.__srcHowl.on("loaderror",function(a,c){b.error(c)}),c.__srcHowl.load()):b.error(null);return b.future};Hb.loadFromFiles=function(a){var b=new dc,c=Hb.fromFiles(a);null!=c?(c.__srcHowl.on("load",function(){b.complete(c)}), +c.__srcHowl.on("loaderror",function(){b.error(null)}),c.__srcHowl.load()):b.error(null);return b.future};Hb.__getCodec=function(a){switch(a.getString(0,4)){case "OggS":return"audio/ogg";case "RIFF":if("WAVE"==a.getString(8,4))return"audio/wav";var b=a.b[2],c=a.b[1];switch(a.b[0]){case 73:if(68==c&&51==b)return"audio/mp3";break;case 255:switch(c){case 243:case 250:case 251:return"audio/mp3"}}break;case "fLaC":return"audio/flac";default:switch(b=a.b[2],c=a.b[1],a.b[0]){case 73:if(68==c&&51==b)return"audio/mp3"; +break;case 255:switch(c){case 243:case 250:case 251:return"audio/mp3"}}}Ca.error("Unsupported sound format",{fileName:"lime/media/AudioBuffer.hx",lineNumber:362,className:"lime.media.AudioBuffer",methodName:"__getCodec"});return null};Hb.prototype={__srcHowl:null,get_src:function(){return this.__srcHowl},set_src:function(a){return this.__srcHowl=a},__class__:Hb,__properties__:{set_src:"set_src",get_src:"get_src"}};var Gi=function(a){if("custom"!=a){if(null==a||"web"==a)try{window.AudioContext=window.AudioContext|| +window.webkitAudioContext,this.web=new window.AudioContext,this.type="web"}catch(b){Ja.lastException=b}null==this.web&&"web"!=a&&(this.html5=new Fi,this.type="html5")}else this.type="custom"};h["lime.media.AudioContext"]=Gi;Gi.__name__="lime.media.AudioContext";Gi.prototype={html5:null,openal:null,type:null,web:null,__class__:Gi};var Pe=function(){};h["lime.media.AudioManager"]=Pe;Pe.__name__="lime.media.AudioManager";Pe.init=function(a){if(null==Pe.context){if(null==a&&(Pe.context=new Gi,a=Pe.context, +"openal"==a.type)){var b=a.openal,c=b.openDevice();c=b.createContext(c);b.makeContextCurrent(c);b.processContext(c)}Pe.context=a}};var Hi=function(a,b,c,d){null==d&&(d=0);null==b&&(b=0);this.onComplete=new Cb;this.buffer=a;this.offset=b;this.__backend=new pi(this);null!=c&&0!=c&&this.set_length(c);this.set_loops(d);null!=a&&this.init()};h["lime.media.AudioSource"]=Hi;Hi.__name__="lime.media.AudioSource";Hi.prototype={onComplete:null,buffer:null,offset:null,__backend:null,dispose:function(){this.__backend.dispose()}, +init:function(){this.__backend.init()},play:function(){this.__backend.play()},stop:function(){this.__backend.stop()},get_currentTime:function(){return this.__backend.getCurrentTime()},set_currentTime:function(a){return this.__backend.setCurrentTime(a)},get_gain:function(){return this.__backend.getGain()},set_gain:function(a){return this.__backend.setGain(a)},set_length:function(a){return this.__backend.setLength(a)},set_loops:function(a){return this.__backend.setLoops(a)},get_position:function(){return this.__backend.getPosition()}, +set_position:function(a){return this.__backend.setPosition(a)},__class__:Hi,__properties__:{set_position:"set_position",get_position:"get_position",set_loops:"set_loops",set_length:"set_length",set_gain:"set_gain",get_gain:"get_gain",set_currentTime:"set_currentTime",get_currentTime:"get_currentTime"}};var Fi=function(){};h["lime.media.HTML5AudioContext"]=Fi;Fi.__name__="lime.media.HTML5AudioContext";Fi.prototype={__class__:Fi};var xj=function(){};h["lime.media.OpenALAudioContext"]=xj;xj.__name__= +"lime.media.OpenALAudioContext";xj.prototype={createContext:function(a,b){return oe.createContext(a,b)},makeContextCurrent:function(a){return oe.makeContextCurrent(a)},openDevice:function(a){return oe.openDevice(a)},processContext:function(a){oe.processContext(a)},__class__:xj};var oe=function(){};h["lime.media.openal.ALC"]=oe;oe.__name__="lime.media.openal.ALC";oe.createContext=function(a,b){return null};oe.makeContextCurrent=function(a){return!1};oe.openDevice=function(a){return null};oe.processContext= +function(a){};var Zg=function(){};h["lime.net._IHTTPRequest"]=Zg;Zg.__name__="lime.net._IHTTPRequest";Zg.__isInterface__=!0;Zg.prototype={contentType:null,data:null,enableResponseHeaders:null,followRedirects:null,formData:null,headers:null,method:null,responseHeaders:null,responseStatus:null,timeout:null,uri:null,userAgent:null,withCredentials:null,__class__:Zg};var Cd=function(a){this.uri=a;this.contentType="application/x-www-form-urlencoded";this.followRedirects=!0;this.enableResponseHeaders=!1; +this.formData=new Ea;this.headers=[];this.method="GET";this.timeout=3E4;this.withCredentials=!1;this.__backend=new pa;this.__backend.init(this)};h["lime.net._HTTPRequest.AbstractHTTPRequest"]=Cd;Cd.__name__="lime.net._HTTPRequest.AbstractHTTPRequest";Cd.__interfaces__=[Zg];Cd.prototype={contentType:null,data:null,enableResponseHeaders:null,followRedirects:null,formData:null,headers:null,method:null,responseData:null,responseHeaders:null,responseStatus:null,timeout:null,uri:null,userAgent:null,withCredentials:null, +__backend:null,__class__:Cd};var He=function(a){Cd.call(this,a)};h["lime.net._HTTPRequest_Bytes"]=He;He.__name__="lime.net._HTTPRequest_Bytes";He.__super__=Cd;He.prototype=p(Cd.prototype,{fromBytes:function(a){return a},load:function(a){var b=this;null!=a&&(this.uri=a);var c=new dc;a=this.__backend.loadData(this.uri);a.onProgress(q(c,c.progress));a.onError(q(c,c.error));a.onComplete(function(a){b.responseData=b.fromBytes(a);c.complete(b.responseData)});return c.future},__class__:He});var Tf=function(a){Cd.call(this, +a)};h["lime.net._HTTPRequest_String"]=Tf;Tf.__name__="lime.net._HTTPRequest_String";Tf.__super__=Cd;Tf.prototype=p(Cd.prototype,{load:function(a){var b=this;null!=a&&(this.uri=a);var c=new dc;a=this.__backend.loadText(this.uri);a.onProgress(q(c,c.progress));a.onError(q(c,c.error));a.onComplete(function(a){b.responseData=a;c.complete(b.responseData)});return c.future},__class__:Tf});var Tg=function(a,b){null==b&&(b="");this.name=a;this.value=b};h["lime.net.HTTPRequestHeader"]=Tg;Tg.__name__="lime.net.HTTPRequestHeader"; +Tg.prototype={name:null,value:null,__class__:Tg};var $g=function(a){Cd.call(this,a)};h["lime.net._HTTPRequest_lime_utils_Bytes"]=$g;$g.__name__="lime.net._HTTPRequest_lime_utils_Bytes";$g.__super__=He;$g.prototype=p(He.prototype,{fromBytes:function(a){return wc.fromBytes(a)},__class__:$g});var ah=function(a){Cd.call(this,a)};h["lime.net._HTTPRequest_openfl_utils_ByteArray"]=ah;ah.__name__="lime.net._HTTPRequest_openfl_utils_ByteArray";ah.__super__=He;ah.prototype=p(He.prototype,{fromBytes:function(a){return pe.fromBytes(a)}, +__class__:ah});var Ob=function(){};h["lime.system.Clipboard"]=Ob;Ob.__name__="lime.system.Clipboard";Ob.__properties__={set_text:"set_text",get_text:"get_text"};Ob.__update=function(){var a=Ob._text;Ob._text=null;Ob._text!=a&&Ob.onUpdate.dispatch()};Ob.get_text=function(){Ob.__update();return Ob._text};Ob.set_text=function(a){var b=Ob._text;Ob._text=a;var c=ha.current.__window;null!=c&&c.__backend.setClipboard(a);Ob._text!=b&&Ob.onUpdate.dispatch();return a};var Qj=function(){};h["lime.system.DisplayMode"]= +Qj;Qj.__name__="lime.system.DisplayMode";var Lj=B["lime.system.Endian"]={__ename__:"lime.system.Endian",__constructs__:["LITTLE_ENDIAN","BIG_ENDIAN"],LITTLE_ENDIAN:{_hx_index:0,__enum__:"lime.system.Endian",toString:g},BIG_ENDIAN:{_hx_index:1,__enum__:"lime.system.Endian",toString:g}},Ic=function(a,b){this.onUpdate=new ui;this.type=a;this.id=b};h["lime.system.Sensor"]=Ic;Ic.__name__="lime.system.Sensor";Ic.getSensors=function(a){if(null==a)return Ic.sensors.slice();for(var b=[],c=0,d=Ic.sensors;c< +d.length;){var e=d[c];++c;e.type==a&&b.push(e)}return b};Ic.registerSensor=function(a,b){a=new Ic(a,b);Ic.sensors.push(a);return Ic.sensorByID.h[b]=a};Ic.prototype={id:null,onUpdate:null,type:null,__class__:Ic};var Mj=B["lime.system.SensorType"]={__ename__:"lime.system.SensorType",__constructs__:["ACCELEROMETER"],ACCELEROMETER:{_hx_index:0,__enum__:"lime.system.SensorType",toString:g}},Eb=function(){};h["lime.system.System"]=Eb;Eb.__name__="lime.system.System";Eb.__properties__={get_endianness:"get_endianness"}; +Eb.embed=t.lime.embed=function(a,b,c,d,e){if(null!=Eb.__applicationEntryPoint){var f=Eb.__applicationEntryPoint;if(null!=r[a]?f.existsReserved(a):f.h.hasOwnProperty(a))f="string"==typeof b?window.document.getElementById(b):null==b?window.document.createElement("div"):b,null==f?window.console.log("[lime.embed] ERROR: Cannot find target element: "+R.string(b)):(null==c&&(c=0),null==d&&(d=0),null==e&&(e={}),Object.prototype.hasOwnProperty.call(e,"background")&&"string"==typeof e.background&&(b=da.replace(R.string(e.background), +"#",""),-1=(a&256)?0<(a&512):!0};db.get_ctrlKey=function(a){return 0>=(a&64)?0<(a&128):!0};db.get_metaKey=function(a){return 0>=(a&1024)?0<(a&2048):!0};db.get_shiftKey=function(a){return 0>=(a&1)?0<(a&2):!0};var ub=B["lime.ui.MouseCursor"]={__ename__:"lime.ui.MouseCursor",__constructs__:"ARROW CROSSHAIR DEFAULT MOVE POINTER RESIZE_NESW RESIZE_NS RESIZE_NWSE RESIZE_WE TEXT WAIT WAIT_ARROW CUSTOM".split(" "),ARROW:{_hx_index:0,__enum__:"lime.ui.MouseCursor", +toString:g},CROSSHAIR:{_hx_index:1,__enum__:"lime.ui.MouseCursor",toString:g},DEFAULT:{_hx_index:2,__enum__:"lime.ui.MouseCursor",toString:g},MOVE:{_hx_index:3,__enum__:"lime.ui.MouseCursor",toString:g},POINTER:{_hx_index:4,__enum__:"lime.ui.MouseCursor",toString:g},RESIZE_NESW:{_hx_index:5,__enum__:"lime.ui.MouseCursor",toString:g},RESIZE_NS:{_hx_index:6,__enum__:"lime.ui.MouseCursor",toString:g},RESIZE_NWSE:{_hx_index:7,__enum__:"lime.ui.MouseCursor",toString:g},RESIZE_WE:{_hx_index:8,__enum__:"lime.ui.MouseCursor", +toString:g},TEXT:{_hx_index:9,__enum__:"lime.ui.MouseCursor",toString:g},WAIT:{_hx_index:10,__enum__:"lime.ui.MouseCursor",toString:g},WAIT_ARROW:{_hx_index:11,__enum__:"lime.ui.MouseCursor",toString:g},CUSTOM:{_hx_index:12,__enum__:"lime.ui.MouseCursor",toString:g}},ri=B["lime.ui.MouseWheelMode"]={__ename__:"lime.ui.MouseWheelMode",__constructs__:["PIXELS","LINES","PAGES","UNKNOWN"],PIXELS:{_hx_index:0,__enum__:"lime.ui.MouseWheelMode",toString:g},LINES:{_hx_index:1,__enum__:"lime.ui.MouseWheelMode", +toString:g},PAGES:{_hx_index:2,__enum__:"lime.ui.MouseWheelMode",toString:g},UNKNOWN:{_hx_index:3,__enum__:"lime.ui.MouseWheelMode",toString:g}},Pb=function(a,b,c,d,e,f,l){this.x=a;this.y=b;this.id=c;this.dx=d;this.dy=e;this.pressure=f;this.device=l};h["lime.ui.Touch"]=Pb;Pb.__name__="lime.ui.Touch";Pb.prototype={device:null,dx:null,dy:null,id:null,pressure:null,x:null,y:null,__class__:Pb};var Uf=function(a,b){this.onTextInput=new Vg;this.onTextEdit=new Bi;this.onRestore=new Cb;this.onResize=new Ug; +this.onRenderContextRestored=new Wg;this.onRenderContextLost=new Cb;this.onRender=new Wg;this.onMove=new Sf;this.onMouseWheel=new xi;this.onMouseUp=new vi;this.onMouseMoveRelative=new Sf;this.onMouseMove=new Sf;this.onMouseDown=new wi;this.onMinimize=new Cb;this.onLeave=new Cb;this.onKeyUp=new Yg;this.onKeyDown=new Yg;this.onFullscreen=new Cb;this.onFocusOut=new Cb;this.onFocusIn=new Cb;this.onExpose=new Cb;this.onEnter=new Cb;this.onDropFile=new Vg;this.onDeactivate=new Cb;this.onClose=new Cb;this.onActivate= +new Cb;this.application=a;this.__attributes=null!=b?b:{};Object.prototype.hasOwnProperty.call(this.__attributes,"parameters")&&(this.parameters=this.__attributes.parameters);this.__height=this.__width=0;this.__fullscreen=!1;this.__scale=1;this.__y=this.__x=0;this.__title="";this.id=-1;this.__backend=new Ba(this)};h["lime.ui.Window"]=Uf;Uf.__name__="lime.ui.Window";Uf.prototype={application:null,context:null,element:null,id:null,onActivate:null,onClose:null,onDeactivate:null,onDropFile:null,onEnter:null, +onExpose:null,onFocusIn:null,onFocusOut:null,onFullscreen:null,onKeyDown:null,onKeyUp:null,onLeave:null,onMinimize:null,onMouseDown:null,onMouseMove:null,onMouseMoveRelative:null,onMouseUp:null,onMouseWheel:null,onMove:null,onRender:null,onRenderContextLost:null,onRenderContextRestored:null,onResize:null,onRestore:null,onTextEdit:null,onTextInput:null,parameters:null,stage:null,__attributes:null,__backend:null,__fullscreen:null,__height:null,__resizable:null,__scale:null,__title:null,__width:null, +__x:null,__y:null,close:function(){this.__backend.close()},set_cursor:function(a){return this.__backend.setCursor(a)},__class__:Uf,__properties__:{set_cursor:"set_cursor"}};var Dd=function(){this.data=new Ea;this.paths=[]};h["lime.utils.AssetBundle"]=Dd;Dd.__name__="lime.utils.AssetBundle";Dd.fromBytes=function(a){a=new Ee(a);return Dd.__extractBundle(a)};Dd.loadFromBytes=function(a){return Ma.withValue(Dd.fromBytes(a))};Dd.loadFromFile=function(a){return wc.loadFromFile(a).then(Dd.loadFromBytes)}; +Dd.__extractBundle=function(a){var b=Qf.readZip(a);a=new Dd;for(b=b.h;null!=b;){var c=b.item;b=b.next;if(c.compressed)var d=a.data,e=c.fileName,f=wc.decompress(c.data,dk.DEFLATE);else e=c.fileName,f=c.data,d=a.data;null!=r[e]?d.setReserved(e,f):d.h[e]=f;a.paths.push(c.fileName)}return a};Dd.prototype={data:null,paths:null,__class__:Dd};var Ii=function(){this.enabled=!0;this.audio=new Ea;this.font=new Ea;this.image=new Ea;this.version=359181};h["lime.utils.AssetCache"]=Ii;Ii.__name__="lime.utils.AssetCache"; +Ii.prototype={audio:null,enabled:null,image:null,font:null,version:null,exists:function(a,b){if("IMAGE"==b||null==b){var c=this.image;if(null!=r[a]?c.existsReserved(a):c.h.hasOwnProperty(a))return!0}if("FONT"==b||null==b)if(c=this.font,null!=r[a]?c.existsReserved(a):c.h.hasOwnProperty(a))return!0;if("SOUND"==b||"MUSIC"==b||null==b)if(b=this.audio,null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return!0;return!1},set:function(a,b,c){switch(b){case "FONT":b=this.font;null!=r[a]?b.setReserved(a, +c):b.h[a]=c;break;case "IMAGE":if(!(c instanceof Ia))throw new F("Cannot cache non-Image asset: "+R.string(c)+" as Image");b=this.image;null!=r[a]?b.setReserved(a,c):b.h[a]=c;break;case "MUSIC":case "SOUND":if(!(c instanceof Hb))throw new F("Cannot cache non-AudioBuffer asset: "+R.string(c)+" as AudioBuffer");b=this.audio;null!=r[a]?b.setReserved(a,c):b.h[a]=c;break;default:throw new F(b+" assets are not cachable");}},clear:function(a){if(null==a)this.audio=new Ea,this.font=new Ea,this.image=new Ea; +else{for(var b=this.audio.keys();b.hasNext();){var c=b.next();da.startsWith(c,a)&&this.audio.remove(c)}for(b=this.font.keys();b.hasNext();)c=b.next(),da.startsWith(c,a)&&this.font.remove(c);for(b=this.image.keys();b.hasNext();)c=b.next(),da.startsWith(c,a)&&this.image.remove(c)}},__class__:Ii};var nb=function(){this.types=new Ea;this.sizes=new Ea;this.preload=new Ea;this.paths=new Ea;this.pathGroups=new Ea;this.classTypes=new Ea;this.cachedText=new Ea;this.cachedImages=new Ea;this.cachedFonts=new Ea; +this.cachedBytes=new Ea;this.cachedAudioBuffers=new Ea;this.onChange=new Cb;this.bytesTotal=this.bytesLoaded=0};h["lime.utils.AssetLibrary"]=nb;nb.__name__="lime.utils.AssetLibrary";nb.fromBundle=function(a){var b=a.data;if(null!=r["library.json"]?b.existsReserved("library.json"):b.h.hasOwnProperty("library.json")){if(b=a.data,b=rc.fromBytes(null!=r["library.json"]?b.getReserved("library.json"):b.h["library.json"]),null!=b){if(null==b.libraryType)var c=new nb;else if(c=h[b.libraryType],null!=c)c= +La.createInstance(c,b.libraryArgs);else return Ca.warn("Could not find library type: "+b.libraryType,{fileName:"lime/utils/AssetLibrary.hx",lineNumber:122,className:"lime.utils.AssetLibrary",methodName:"fromBundle"}),null;c.__fromBundle(a,b);return c}}else return b=new nb,b.__fromBundle(a),b;return null};nb.fromManifest=function(a){if(null==a)return null;if(null==a.libraryType)var b=new nb;else if(b=h[a.libraryType],null!=b)b=La.createInstance(b,a.libraryArgs);else return Ca.warn("Could not find library type: "+ +a.libraryType,{fileName:"lime/utils/AssetLibrary.hx",lineNumber:160,className:"lime.utils.AssetLibrary",methodName:"fromManifest"}),null;b.__fromManifest(a);return b};nb.prototype={onChange:null,assetsLoaded:null,assetsTotal:null,bytesLoaded:null,bytesLoadedCache:null,bytesTotal:null,cachedAudioBuffers:null,cachedBytes:null,cachedFonts:null,cachedImages:null,cachedText:null,classTypes:null,loaded:null,pathGroups:null,paths:null,preload:null,promise:null,sizes:null,types:null,exists:function(a,b){b= +null!=b?xa.__cast(b,String):null;var c=this.types;a=null!=r[a]?c.getReserved(a):c.h[a];return null==a||a!=b&&("SOUND"!=b&&"MUSIC"!=b||"MUSIC"!=a&&"SOUND"!=a)&&"BINARY"!=b&&null!=b&&("BINARY"!=a||"TEXT"!=b)?!1:!0},getAsset:function(a,b){switch(b){case "BINARY":return this.getBytes(a);case "FONT":return this.getFont(a);case "IMAGE":return this.getImage(a);case "MUSIC":case "SOUND":return this.getAudioBuffer(a);case "TEMPLATE":throw new F("Not sure how to get template: "+a);case "TEXT":return this.getText(a); +default:throw new F("Unknown asset type: "+b);}},getAudioBuffer:function(a){var b=this.cachedAudioBuffers;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return b=this.cachedAudioBuffers,null!=r[a]?b.getReserved(a):b.h[a];b=this.classTypes;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return b=this.classTypes,Hb.fromBytes(xa.__cast(La.createInstance(null!=r[a]?b.getReserved(a):b.h[a],[]),Va));b=this.paths;return Hb.fromFile(null!=r[a]?b.getReserved(a):b.h[a])},getBytes:function(a){var b= +this.cachedBytes;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return b=this.cachedBytes,null!=r[a]?b.getReserved(a):b.h[a];b=this.cachedText;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a)){b=this.cachedText;b=wc.ofString(null!=r[a]?b.getReserved(a):b.h[a]);var c=this.cachedBytes;null!=r[a]?c.setReserved(a,b):c.h[a]=b;return b}b=this.classTypes;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return b=this.classTypes,xa.__cast(La.createInstance(null!=r[a]?b.getReserved(a): +b.h[a],[]),Va);b=this.paths;return wc.fromFile(null!=r[a]?b.getReserved(a):b.h[a])},getFont:function(a){var b=this.cachedFonts;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return b=this.cachedFonts,null!=r[a]?b.getReserved(a):b.h[a];b=this.classTypes;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return b=this.classTypes,xa.__cast(La.createInstance(null!=r[a]?b.getReserved(a):b.h[a],[]),cb);b=this.paths;return cb.fromFile(null!=r[a]?b.getReserved(a):b.h[a])},getImage:function(a){var b= +this.cachedImages;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return b=this.cachedImages,null!=r[a]?b.getReserved(a):b.h[a];b=this.classTypes;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return b=this.classTypes,xa.__cast(La.createInstance(null!=r[a]?b.getReserved(a):b.h[a],[]),Ia);b=this.paths;return Ia.fromFile(null!=r[a]?b.getReserved(a):b.h[a])},getText:function(a){var b=this.cachedText;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return b=this.cachedText,null!= +r[a]?b.getReserved(a):b.h[a];a=this.getBytes(a);return null==a?null:a.getString(0,a.length)},isLocal:function(a,b){var c=this.classTypes;if(null!=r[a]?c.existsReserved(a):c.h.hasOwnProperty(a))return!0;b=null!=b?xa.__cast(b,String):null;if(null==b){b=this.cachedBytes;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return!0;b=this.cachedText;return null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a)}switch(b){case "FONT":return b=this.cachedFonts,null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a); +case "IMAGE":return b=this.cachedImages,null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a);case "MUSIC":case "SOUND":return b=this.cachedAudioBuffers,null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a);default:b=this.cachedBytes;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return!0;b=this.cachedText;return null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a)}},load:function(){if(this.loaded)return Ma.withValue(this);if(null==this.promise){this.promise=new dc;this.bytesLoadedCache=new Ea; +this.assetsLoaded=0;this.assetsTotal=1;for(var a=this.preload.keys();a.hasNext();){var b=a.next(),c=this.preload;if(null!=r[b]?c.getReserved(b):c.h[b])if(c=this.types,Ca.verbose("Preloading asset: "+b+" ["+(null!=r[b]?c.getReserved(b):c.h[b])+"]",{fileName:"lime/utils/AssetLibrary.hx",lineNumber:405,className:"lime.utils.AssetLibrary",methodName:"load"}),c=this.types,c=null!=r[b]?c.getReserved(b):c.h[b],null!=c)switch(c){case "BINARY":this.assetsTotal++;c=this.loadBytes(b);c.onProgress(function(a, +b){return function(c,d){b[0](a[0],c,d)}}([b],[q(this,this.load_onProgress)]));c.onError(function(a,b){return function(c){b[0](a[0],c)}}([b],[q(this,this.load_onError)]));c.onComplete(function(a,b){return function(c){b[0](a[0],c)}}([b],[q(this,this.loadBytes_onComplete)]));break;case "FONT":this.assetsTotal++;c=this.loadFont(b);c.onProgress(function(a,b){return function(c,d){b[0](a[0],c,d)}}([b],[q(this,this.load_onProgress)]));c.onError(function(a,b){return function(c){b[0](a[0],c)}}([b],[q(this, +this.load_onError)]));c.onComplete(function(a,b){return function(c){b[0](a[0],c)}}([b],[q(this,this.loadFont_onComplete)]));break;case "IMAGE":this.assetsTotal++;c=this.loadImage(b);c.onProgress(function(a,b){return function(c,d){b[0](a[0],c,d)}}([b],[q(this,this.load_onProgress)]));c.onError(function(a,b){return function(c){b[0](a[0],c)}}([b],[q(this,this.load_onError)]));c.onComplete(function(a,b){return function(c){b[0](a[0],c)}}([b],[q(this,this.loadImage_onComplete)]));break;case "MUSIC":case "SOUND":this.assetsTotal++; +c=this.loadAudioBuffer(b);c.onProgress(function(a,b){return function(c,d){b[0](a[0],c,d)}}([b],[q(this,this.load_onProgress)]));c.onError(function(a,b){return function(c){b[0](a[0],c)}}([b],[q(this,this.loadAudioBuffer_onError)]));c.onComplete(function(a,b){return function(c){b[0](a[0],c)}}([b],[q(this,this.loadAudioBuffer_onComplete)]));break;case "TEXT":this.assetsTotal++,c=this.loadText(b),c.onProgress(function(a,b){return function(c,d){b[0](a[0],c,d)}}([b],[q(this,this.load_onProgress)])),c.onError(function(a, +b){return function(c){b[0](a[0],c)}}([b],[q(this,this.load_onError)])),c.onComplete(function(a,b){return function(c){b[0](a[0],c)}}([b],[q(this,this.loadText_onComplete)]))}}this.__assetLoaded(null)}return this.promise.future},loadAudioBuffer:function(a){var b=this.cachedAudioBuffers;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return b=this.cachedAudioBuffers,Ma.withValue(null!=r[a]?b.getReserved(a):b.h[a]);b=this.classTypes;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return b= +this.classTypes,Ma.withValue(La.createInstance(null!=r[a]?b.getReserved(a):b.h[a],[]));b=this.pathGroups;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return b=this.pathGroups,Hb.loadFromFiles(null!=r[a]?b.getReserved(a):b.h[a]);b=this.paths;return Hb.loadFromFile(null!=r[a]?b.getReserved(a):b.h[a])},loadBytes:function(a){var b=this.cachedBytes;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return b=this.cachedBytes,Ma.withValue(null!=r[a]?b.getReserved(a):b.h[a]);b=this.classTypes; +if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return b=this.classTypes,Ma.withValue(La.createInstance(null!=r[a]?b.getReserved(a):b.h[a],[]));b=this.paths;return wc.loadFromFile(null!=r[a]?b.getReserved(a):b.h[a])},loadFont:function(a){var b=this.cachedFonts;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return b=this.cachedFonts,Ma.withValue(null!=r[a]?b.getReserved(a):b.h[a]);b=this.classTypes;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return b=this.classTypes,a= +La.createInstance(null!=r[a]?b.getReserved(a):b.h[a],[]),a.__loadFromName(a.name);b=this.paths;return cb.loadFromName(null!=r[a]?b.getReserved(a):b.h[a])},loadImage:function(a){var b=this,c=this.cachedImages;if(null!=r[a]?c.existsReserved(a):c.h.hasOwnProperty(a))return c=this.cachedImages,Ma.withValue(null!=r[a]?c.getReserved(a):c.h[a]);c=this.classTypes;if(null!=r[a]?c.existsReserved(a):c.h.hasOwnProperty(a))return c=this.classTypes,Ma.withValue(La.createInstance(null!=r[a]?c.getReserved(a):c.h[a], +[]));c=this.cachedBytes;if(null!=r[a]?c.existsReserved(a):c.h.hasOwnProperty(a))return c=this.cachedBytes,Ia.loadFromBytes(null!=r[a]?c.getReserved(a):c.h[a]).then(function(c){b.cachedBytes.remove(a);var d=b.cachedImages;null!=r[a]?d.setReserved(a,c):d.h[a]=c;return Ma.withValue(c)});c=this.paths;return Ia.loadFromFile(null!=r[a]?c.getReserved(a):c.h[a])},loadText:function(a){var b=this.cachedText;if(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))return b=this.cachedText,Ma.withValue(null!= +r[a]?b.getReserved(a):b.h[a]);b=this.cachedBytes;(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))?b=!0:(b=this.classTypes,b=null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a));if(b){b=this.getBytes(a);if(null==b)return Ma.withValue(null);b=b.getString(0,b.length);var c=this.cachedText;null!=r[a]?c.setReserved(a,b):c.h[a]=b;return Ma.withValue(b)}b=new Tf;c=this.paths;return b.load(null!=r[a]?c.getReserved(a):c.h[a])},unload:function(){},__assetLoaded:function(a){this.assetsLoaded++;if(null!= +a){var b=this.types;Ca.verbose("Loaded asset: "+a+" ["+(null!=r[a]?b.getReserved(a):b.h[a])+"] ("+(this.assetsLoaded-1)+"/"+(this.assetsTotal-1)+")",{fileName:"lime/utils/AssetLibrary.hx",lineNumber:619,className:"lime.utils.AssetLibrary",methodName:"__assetLoaded"})}if(null!=a){b=this.sizes;(null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a))?(b=this.sizes,b=null!=r[a]?b.getReserved(a):b.h[a]):b=0;var c=this.bytesLoadedCache;(null!=r[a]?c.existsReserved(a):c.h.hasOwnProperty(a))?(c=this.bytesLoadedCache, +c=null!=r[a]?c.getReserved(a):c.h[a],cd&&(b=d);c=this.bytesLoadedCache;(null!=r[a]?c.existsReserved(a):c.h.hasOwnProperty(a))?(c=this.bytesLoadedCache,c=null!=r[a]?c.getReserved(a):c.h[a],b!=c&&(this.bytesLoaded+=b-c)):this.bytesLoaded+=b;c=this.bytesLoadedCache;null!=r[a]?c.setReserved(a,b):c.h[a]=b;this.promise.progress(this.bytesLoaded,this.bytesTotal)}},__class__:nb};var rc=function(){this.assets= +[];this.libraryArgs=[];this.version=2};h["lime.utils.AssetManifest"]=rc;rc.__name__="lime.utils.AssetManifest";rc.fromBytes=function(a,b){return null!=a?rc.parse(a.getString(0,a.length),b):null};rc.loadFromFile=function(a,b){a=rc.__resolvePath(a);b=rc.__resolveRootPath(b,a);return null==a?null:wc.loadFromFile(a).then(function(a){return Ma.withValue(rc.fromBytes(a,b))})};rc.parse=function(a,b){if(null==a||""==a)return null;a=JSON.parse(a);var c=new rc;Object.prototype.hasOwnProperty.call(a,"name")&& +(c.name=a.name);Object.prototype.hasOwnProperty.call(a,"libraryType")&&(c.libraryType=a.libraryType);Object.prototype.hasOwnProperty.call(a,"libraryArgs")&&(c.libraryArgs=a.libraryArgs);if(Object.prototype.hasOwnProperty.call(a,"assets")){var d=a.assets;Object.prototype.hasOwnProperty.call(a,"version")&&2>=a.version?c.assets=fc.run(d):c.assets=d}Object.prototype.hasOwnProperty.call(a,"rootPath")&&(c.rootPath=a.rootPath);null!=b&&""!=b&&(c.rootPath=null==c.rootPath||""==c.rootPath?b:b+"/"+c.rootPath); +return c};rc.__resolvePath=function(a){if(null==a)return null;var b=a.indexOf("?");var c=-1d&&(c=d);d=a.bytesLoadedCache2;(null!=r[b[0]]?d.existsReserved(b[0]):d.h.hasOwnProperty(b[0]))?(d=a.bytesLoadedCache2,a.bytesLoaded+=c-(null!=r[b[0]]?d.getReserved(b[0]):d.h[b[0]])):a.bytesLoaded+=c;d=a.bytesLoadedCache2;null!=r[b[0]]?d.setReserved(b[0], +c):d.h[b[0]]=c;a.simulateProgress||a.onProgress.dispatch(a.bytesLoaded,a.bytesTotal)}}}(d)).onComplete(function(b){return function(c){c=200;var d=a.bytesTotalCache;if(null!=r[b[0]]?d.existsReserved(b[0]):d.h.hasOwnProperty(b[0]))c=a.bytesTotalCache,c=null!=r[b[0]]?c.getReserved(b[0]):c.h[b[0]];d=a.bytesLoadedCache2;(null!=r[b[0]]?d.existsReserved(b[0]):d.h.hasOwnProperty(b[0]))?(d=a.bytesLoadedCache2,a.bytesLoaded+=c-(null!=r[b[0]]?d.getReserved(b[0]):d.h[b[0]])):a.bytesLoaded+=c;a.loadedAssetLibrary(b[0])}}(d)).onError(function(){return function(a){Ca.error(a, +{fileName:"lime/utils/Preloader.hx",lineNumber:290,className:"lime.utils.Preloader",methodName:"updateProgress"})}}())}}this.simulateProgress||this.loadedLibraries!=this.libraries.length+this.libraryNames.length||(this.preloadComplete||(this.preloadComplete=!0,Ca.verbose("Preload complete",{fileName:"lime/utils/Preloader.hx",lineNumber:301,className:"lime.utils.Preloader",methodName:"updateProgress"})),this.start())},__class__:Eh};var ma=function(){};h["openfl.Lib"]=ma;ma.__name__="openfl.Lib";ma.__properties__= +{get_current:"get_current"};ma.getTimer=function(){return Eb.getTimer()};ma.getURL=function(a,b){ma.navigateToURL(a,b)};ma.navigateToURL=function(a,b){null==b&&(b="_blank");var c=a.url;if(La.typeof(a.data)==Tc.TObject){for(var d="",e=aa.fields(a.data),f=0;fa&&(a=0);if(a>b)for(;ba;)this.__array.pop()}return this.__array.length},__class__:bh,__properties__:{set_length:"set_length"}};var Gd=function(a,b,c,d){null==d&&(d=!1);null==b&&(b=!1);null==a&&(a=0);if(d){if(this.__array=[],null!=c){d=0;for(var e=c.length;da&&(a=0);if(a>b)for(;ba;)this.__array.pop()}return this.__array.length},__class__:Gd,__properties__:{set_length:"set_length",get_length:"get_length"}};var ch=function(a,b,c){null==b&&(b= +!1);null==a&&(a=0);null==c&&(c=[]);this.__array=c;0a&&(a=0);if(a>b)for(;ba;)this.__array.pop()}return this.__array.length},__class__:ch,__properties__:{set_length:"set_length"}}; +var Re=function(a,b,c){null==b&&(b=!1);null==a&&(a=0);null==c&&(c=[]);this.__array=c;0a&&(a=0);if(a>b)for(;ba;)this.__array.pop()}return this.__array.length},__class__:Re,__properties__:{set_length:"set_length",get_length:"get_length"}};var Se=function(a,b,c,d){null==d&&(d=!1);null==b&&(b=!1);null==a&& +(a=0);if(d){if(this.__array=[],null!=c){d=0;for(var e=c.length;da&&(a=0);if(a>b)for(;b< +a;)b++,this.__array.push(null);else for(;this.__array.length>a;)this.__array.pop()}return this.__array.length},__class__:Se,__properties__:{set_length:"set_length",get_length:"get_length"}};var hc=function(){};h["openfl._internal.Lib"]=hc;hc.__name__="openfl._internal.Lib";var bc=function(){};h["openfl._internal.formats.agal.AGALConverter"]=bc;bc.__name__="openfl._internal.formats.agal.AGALConverter";bc.prefixFromType=function(a,b){switch(a){case 0:return"va";case 1:return b==Ie.VERTEX?"vc":"fc"; +case 2:return b==Ie.VERTEX?"vt":"ft";case 3:return"output_";case 4:return"v";case 5:return"sampler";default:throw new F(new Ub("Invalid data!"));}};bc.readUInt64=function(a){var b=a.readInt();a=a.readInt();return new ec(a,b)};bc.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 new F(new Ub("Magic value must be 0xA0, may not be AGAL"));if(1!=a.readInt())throw new F(new Ub("Version must be 1"));if(161!=(a.readByte()&255))throw new F(new Ub("Shader type ID must be 0xA1")); +c=0==(a.readByte()&255)?Ie.VERTEX:Ie.FRAGMENT;for(var d=new dh,e="";;){var f=a.position;if(!Kc.gt(pe.get_length(a),f))break;var l=a.readInt();f=a.readUnsignedInt();var v=bc.readUInt64(a),m=bc.readUInt64(a);f=mf.parse(f,c);v=Je.parse(v,c,f.mask);var g=Je.parse(m,c,f.mask);e+="\t";switch(l){case 0:e+=R.string(f.toGLSL()+" = "+v.toGLSL()+"; // mov");d.addDR(f,Y.VECTOR_4);d.addSR(v,Y.VECTOR_4);break;case 1:e+=R.string(f.toGLSL()+" = "+v.toGLSL()+" + "+g.toGLSL()+"; // add");d.addDR(f,Y.VECTOR_4);d.addSR(v, +Y.VECTOR_4);d.addSR(g,Y.VECTOR_4);break;case 2:e+=R.string(f.toGLSL()+" = "+v.toGLSL()+" - "+g.toGLSL()+"; // sub");d.addDR(f,Y.VECTOR_4);d.addSR(v,Y.VECTOR_4);d.addSR(g,Y.VECTOR_4);break;case 3:e+=R.string(f.toGLSL()+" = "+v.toGLSL()+" * "+g.toGLSL()+"; // mul");d.addDR(f,Y.VECTOR_4);d.addSR(v,Y.VECTOR_4);d.addSR(g,Y.VECTOR_4);break;case 4:e+=R.string(f.toGLSL()+" = "+v.toGLSL()+" / "+g.toGLSL()+"; // div");d.addDR(f,Y.VECTOR_4);d.addSR(v,Y.VECTOR_4);d.addSR(g,Y.VECTOR_4);break;case 5:e=-1>>24&15;c.mask=a>>>16&15;c.n=a&65535;return c};mf.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==Ie.VERTEX?"gl_Position":"gl_FragColor":bc.prefixFromType(this.type,this.programType)+this.n;a&&15!=this.mask&&(b+=this.getWriteMask());return b},__class__:mf};var Ie= +B["openfl._internal.formats.agal._AGALConverter.ProgramType"]={__ename__:"openfl._internal.formats.agal._AGALConverter.ProgramType",__constructs__:["VERTEX","FRAGMENT"],VERTEX:{_hx_index:0,__enum__:"openfl._internal.formats.agal._AGALConverter.ProgramType",toString:g},FRAGMENT:{_hx_index:1,__enum__:"openfl._internal.formats.agal._AGALConverter.ProgramType",toString:g}},dh=function(){this.mEntries=[]};h["openfl._internal.formats.agal.RegisterMap"]=dh;dh.__name__="openfl._internal.formats.agal.RegisterMap"; +dh.prototype={mEntries:null,add:function(a,b,c,d){for(var e=0,f=this.mEntries;e>31,a.high>>28);c.f=b.low&15;b=new ec(a.high>>31,a.high>>24);c.m=b.low&15;b=new ec(a.high>>31,a.high>>20);c.w=b.low&15;b=new ec(a.high>>31,a.high>>16);c.s=b.low&15;b=new ec(a.high>>31,a.high>>12);c.d=b.low&15;b=new ec(a.high>>31,a.high>>8);c.t=b.low&15;b=new ec(a.high>> +31,a.high>>0);c.type=b.low&15;b=new ec(a.high>>16,a.high<<16|a.low>>>16);c.b=b.low&255;c.n=a.low&65535;return c};nf.prototype={b:null,d:null,f:null,m:null,n:null,programType:null,s:null,t:null,type:null,w:null,toGLSL:function(){return bc.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 new F(new Ub);}switch(this.m){case 0:var b=2;break;case 1:b=1;break;case 2:b=0;break;default:throw new F(new Ub);}switch(this.w){case 0:var c= +0;break;case 1:c=2;break;default:throw new F(new Ub);}return new Ke(c,a,b,(this.b<<24>>24)/8,4==(this.s&4),1==(this.s&1),2==this.t)},__class__:nf};var Je=function(){};h["openfl._internal.formats.agal._AGALConverter.SourceRegister"]=Je;Je.__name__="openfl._internal.formats.agal._AGALConverter.SourceRegister";Je.parse=function(a,b,c){var d=new Je;d.programType=b;b=new ec(a.high>>31,a.high>>31);d.d=b.low&1;b=new ec(a.high>>31,a.high>>16);d.q=b.low&3;b=new ec(a.high>>31,a.high>>8);d.itype=b.low&15;b= +new ec(a.high>>31,a.high>>0);d.type=b.low&15;b=new ec(a.high>>24,a.high<<8|a.low>>>24);d.s=b.low&255;b=new ec(a.high>>16,a.high<<16|a.low>>>16);d.o=b.low&255;d.n=a.low&65535;d.sourceMask=c;return d};Je.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==Ie.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=bc.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=bc.prefixFromType(this.itype,this.programType)+this.n+"."+e;c+="[ int("+e+") +"+b+"]"}a&&""!=d&&(c+="."+d);return c},__class__:Je};var Fa=function(){};h["openfl._internal.formats.html.HTMLParser"]=Fa;Fa.__name__="openfl._internal.formats.html.HTMLParser";Fa.parse=function(a,b,c){a=a.replace(Fa.__regexBreakTag.r,"\n");a=a.replace(Fa.__regexEntities[0].r, +'"');a=a.replace(Fa.__regexEntities[1].r,"'");a=a.replace(Fa.__regexEntities[2].r,"&");a=a.replace(Fa.__regexEntities[5].r," ");var d=a.split("<");if(1==d.length)a=a.replace(Fa.__regexHTMLTag.r,""),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=0,l=d.length;f");d[g]=e}e=[b.clone()];f=[];g=!1;for(l=0;l"),k=n+1,r=m.indexOf(" ");r=m.substring(h?1:0,-1this.paramData.length&&(d=this.paramDataLength,d=null!=d?new Float32Array(d):null,d.set(this.paramData),this.paramData=d));l=f=e=d=0;g=0;for(m=this.paramCount;g>>16,k=(v&65280)>>>8, +v&=255,n=d[n]/255,0>n&&(n=0),1c/2&&(e=c/2);f>d/2&&(f=d/2);c=a+c;d=b+d;var l=-e+.7071067811865476*e,g=-e+.41421356237309503*e,m=-f+.7071067811865476*f,h=-f+.41421356237309503*f;y.context.moveTo(c,d-f);y.context.quadraticCurveTo(c,d+h,c+l,d+m);y.context.quadraticCurveTo(c+g,d,c-e,d);y.context.lineTo(a+e,d);y.context.quadraticCurveTo(a-g,d,a-l,d+m);y.context.quadraticCurveTo(a,d+h,a,d-f);y.context.lineTo(a,b+f);y.context.quadraticCurveTo(a, +b-h,a-l,b-m);y.context.quadraticCurveTo(a-g,b,a+e,b);y.context.lineTo(c-e,b);y.context.quadraticCurveTo(c+g,b,c+l,b-m);y.context.quadraticCurveTo(c,b-h,c,b+f);y.context.lineTo(c,d-f)};y.endFill=function(){y.context.beginPath();y.playCommands(y.fillCommands,!1);y.fillCommands.clear()};y.endStroke=function(){y.context.beginPath();y.playCommands(y.strokeCommands,!0);y.context.closePath();y.strokeCommands.clear()};y.hitTest=function(a,b,c){y.bounds=a.__bounds;y.graphics=a;if(0==a.__commands.get_length()|| +null==y.bounds||0>=y.bounds.width||0>=y.bounds.height)return!1;y.hitTesting=!0;var d=a.__renderTransform,e=b*d.b+c*d.d+d.ty;b=b*d.a+c*d.c+d.tx-(y.bounds.x*d.a+y.bounds.y*d.c+d.tx);c=e-(y.bounds.x*d.b+y.bounds.y*d.d+d.ty);e=a.__canvas;var f=a.__context;a.__canvas=y.hitTestCanvas;a.__context=y.hitTestContext;y.context=a.__context;y.context.setTransform(d.a,d.b,d.c,d.d,d.tx,d.ty);y.fillCommands.clear();y.strokeCommands.clear();y.hasFill=!1;y.hasStroke=!1;y.bitmapFill=null;y.bitmapRepeat=!1;y.windingRule= +"evenodd";d=new Ed(a.__commands);for(var l=0,g=a.__commands.types;lx.buffer.f[x.fPos])y.hasFill=!1;else{if(1==x.buffer.f[x.fPos]){var N=da.hex(x.buffer.i[x.iPos]&16777215,6);y.context.fillStyle="#"+N}else{var K=(x.buffer.i[x.iPos]&16711680)>>>16;var ta=(x.buffer.i[x.iPos]&65280)>>>8;var X=x.buffer.i[x.iPos]&255;y.context.fillStyle="rgba("+K+", "+ta+", "+X+", "+x.buffer.f[x.fPos]+")"}y.bitmapFill=null; +y.setSmoothing(!0);y.hasFill=!0}break;case 2:switch(k.prev._hx_index){case 0:k.oPos+=2;k.bPos+=2;break;case 1:k.iPos+=1;k.fPos+=1;break;case 2:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 3:k.oPos+=1;break;case 4:k.fPos+=6;break;case 5:k.fPos+=4;break;case 6:k.fPos+=3;break;case 7:k.fPos+=4;break;case 8:k.oPos+=3;break;case 9:k.fPos+=4;break;case 10:k.fPos+=5;k.oPos+=1;break;case 12:k.oPos+=4;break;case 14:k.oPos+=2;k.bPos+=2;break;case 15:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 16:k.oPos+= +4;k.iPos+=1;k.fPos+=2;k.bPos+=1;break;case 17:k.fPos+=2;break;case 18:k.fPos+=2;break;case 19:k.oPos+=1;break;case 20:k.oPos+=1}k.prev=V.BEGIN_GRADIENT_FILL;var w=k;y.context.fillStyle=y.createGradientPattern(w.buffer.o[w.oPos],w.buffer.ii[w.iiPos],w.buffer.ff[w.ffPos],w.buffer.ii[w.iiPos+1],w.buffer.o[w.oPos+1],w.buffer.o[w.oPos+2],w.buffer.o[w.oPos+3],w.buffer.f[w.fPos]);y.bitmapFill=null;y.setSmoothing(!0);y.hasFill=!0;break;case 3:switch(k.prev._hx_index){case 0:k.oPos+=2;k.bPos+=2;break;case 1:k.iPos+= +1;k.fPos+=1;break;case 2:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 3:k.oPos+=1;break;case 4:k.fPos+=6;break;case 5:k.fPos+=4;break;case 6:k.fPos+=3;break;case 7:k.fPos+=4;break;case 8:k.oPos+=3;break;case 9:k.fPos+=4;break;case 10:k.fPos+=5;k.oPos+=1;break;case 12:k.oPos+=4;break;case 14:k.oPos+=2;k.bPos+=2;break;case 15:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 16:k.oPos+=4;k.iPos+=1;k.fPos+=2;k.bPos+=1;break;case 17:k.fPos+=2;break;case 18:k.fPos+=2;break;case 19:k.oPos+=1; +break;case 20:k.oPos+=1}k.prev=V.BEGIN_SHADER_FILL;var C=k,ha=C.buffer.o[C.oPos];0=6*tb?Lb= +Ib=!0:R.get_length()>=4*tb?Ib=!0:R.get_length()>=2*tb&&(Lb=!0));var M=qa.__pool.get(),ua=Aa.__pool.get(),ka=y.graphics.__renderTransform;y.context.save();for(var Y=0,ba=tb;Yca||(M.setTo(ia.get(ca),ia.get(ca+1),ia.get(ca+2),ia.get(ca+3)),0>=M.width||0>=M.height))){if(Ib&&Lb){var Z=6*aa;ua.setTo(R.get(Z),R.get(Z+1),R.get(Z+2),R.get(Z+3),R.get(Z+4),R.get(Z+5))}else Ib?(Z=4*aa,ua.setTo(R.get(Z),R.get(Z+1),R.get(Z+2),R.get(Z+3),M.x,M.y)):Lb?(Z=2*aa,ua.tx= +R.get(Z),ua.ty=R.get(Z+1)):(ua.tx=M.x,ua.ty=M.y);ua.tx+=e-c;ua.ty+=f-d;ua.concat(ka);y.context.setTransform(ua.a,ua.b,ua.c,ua.d,ua.tx,ua.ty);null!=y.bitmapFill?y.context.drawImage(y.bitmapFill.image.get_src(),M.x,M.y,M.width,M.height,0,0,M.width,M.height):y.context.fillRect(0,0,M.width,M.height)}}qa.__pool.release(M);Aa.__pool.release(ua);y.context.restore();break;case 9:switch(k.prev._hx_index){case 0:k.oPos+=2;k.bPos+=2;break;case 1:k.iPos+=1;k.fPos+=1;break;case 2:k.oPos+=4;k.iiPos+=2;k.ffPos+= +1;k.fPos+=1;break;case 3:k.oPos+=1;break;case 4:k.fPos+=6;break;case 5:k.fPos+=4;break;case 6:k.fPos+=3;break;case 7:k.fPos+=4;break;case 8:k.oPos+=3;break;case 9:k.fPos+=4;break;case 10:k.fPos+=5;k.oPos+=1;break;case 12:k.oPos+=4;break;case 14:k.oPos+=2;k.bPos+=2;break;case 15:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 16:k.oPos+=4;k.iPos+=1;k.fPos+=2;k.bPos+=1;break;case 17:k.fPos+=2;break;case 18:k.fPos+=2;break;case 19:k.oPos+=1;break;case 20:k.oPos+=1}k.prev=V.DRAW_RECT;var S=k;var fa= +!1;if(null!=y.bitmapFill&&!y.hitTesting){var ja=u=r=z=0;var ma=!0;if(null!=y.pendingMatrix)if(0!=y.pendingMatrix.b||0!=y.pendingMatrix.c)ma=!1;else{null==q&&(q=Sa.__pool.get());null==p&&(p=Sa.__pool.get());q.setTo(S.buffer.f[S.fPos],S.buffer.f[S.fPos+1]);var la=y.inversePendingMatrix,pa=q.x,ra=q.y;q.x=pa*la.a+ra*la.c+la.tx;q.y=pa*la.b+ra*la.d+la.ty;p.setTo(S.buffer.f[S.fPos]+S.buffer.f[S.fPos+2],S.buffer.f[S.fPos+1]+S.buffer.f[S.fPos+3]);var oa=y.inversePendingMatrix,wa=p.x,xa=p.y;p.x=wa*oa.a+xa* +oa.c+oa.tx;p.y=wa*oa.b+xa*oa.d+oa.ty;z=q.y;ja=q.x;u=p.y;r=p.x}else z=S.buffer.f[S.fPos+1],ja=S.buffer.f[S.fPos],u=S.buffer.f[S.fPos+1]+S.buffer.f[S.fPos+3],r=S.buffer.f[S.fPos]+S.buffer.f[S.fPos+2];ma&&0<=z&&0<=ja&&r<=y.bitmapFill.width&&u<=y.bitmapFill.height&&(fa=!0,y.hitTesting||y.context.drawImage(y.bitmapFill.image.get_src(),ja,z,r-ja,u-z,S.buffer.f[S.fPos]-c,S.buffer.f[S.fPos+1]-d,S.buffer.f[S.fPos+2],S.buffer.f[S.fPos+3]))}fa||(n=!0,y.context.rect(S.buffer.f[S.fPos]-c,S.buffer.f[S.fPos+1]- +d,S.buffer.f[S.fPos+2],S.buffer.f[S.fPos+3]));break;case 10:switch(k.prev._hx_index){case 0:k.oPos+=2;k.bPos+=2;break;case 1:k.iPos+=1;k.fPos+=1;break;case 2:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 3:k.oPos+=1;break;case 4:k.fPos+=6;break;case 5:k.fPos+=4;break;case 6:k.fPos+=3;break;case 7:k.fPos+=4;break;case 8:k.oPos+=3;break;case 9:k.fPos+=4;break;case 10:k.fPos+=5;k.oPos+=1;break;case 12:k.oPos+=4;break;case 14:k.oPos+=2;k.bPos+=2;break;case 15:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+= +1;break;case 16:k.oPos+=4;k.iPos+=1;k.fPos+=2;k.bPos+=1;break;case 17:k.fPos+=2;break;case 18:k.fPos+=2;break;case 19:k.oPos+=1;break;case 20:k.oPos+=1}k.prev=V.DRAW_ROUND_RECT;var na=k;n=!0;y.drawRoundRect(na.buffer.f[na.fPos]-c,na.buffer.f[na.fPos+1]-d,na.buffer.f[na.fPos+2],na.buffer.f[na.fPos+3],na.buffer.f[na.fPos+4],na.buffer.o[na.oPos]);break;case 12:switch(k.prev._hx_index){case 0:k.oPos+=2;k.bPos+=2;break;case 1:k.iPos+=1;k.fPos+=1;break;case 2:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break; +case 3:k.oPos+=1;break;case 4:k.fPos+=6;break;case 5:k.fPos+=4;break;case 6:k.fPos+=3;break;case 7:k.fPos+=4;break;case 8:k.oPos+=3;break;case 9:k.fPos+=4;break;case 10:k.fPos+=5;k.oPos+=1;break;case 12:k.oPos+=4;break;case 14:k.oPos+=2;k.bPos+=2;break;case 15:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 16:k.oPos+=4;k.iPos+=1;k.fPos+=2;k.bPos+=1;break;case 17:k.fPos+=2;break;case 18:k.fPos+=2;break;case 19:k.oPos+=1;break;case 20:k.oPos+=1}k.prev=V.DRAW_TRIANGLES;var Rb=k,Ga=Rb.buffer.o[Rb.oPos], +va=Rb.buffer.o[Rb.oPos+1],sa=Rb.buffer.o[Rb.oPos+2],ya=null,Ca=null==y.bitmapFill;if(Ca&&null!=sa)break a;if(!Ca){if(null==sa){sa=Da.toFloatVector(null);for(var Ea=0,Fa=Ga.get_length()/2|0;Ea(Qa-Ua)*(jb-Ra)-(gb-Ra)*(Ta-Ua)){Ba+=3;continue}break;case 2:if(!(0> +(Qa-Ua)*(jb-Ra)-(gb-Ra)*(Ta-Ua))){Ba+=3;continue}}Ca?(y.context.beginPath(),y.context.moveTo(Ua,Ra),y.context.lineTo(Qa,gb),y.context.lineTo(Ta,jb),y.context.closePath(),y.hitTesting||y.context.fill(y.windingRule),Ba+=3):(ob=sa.get(Na)*ya.width,Va=sa.get(Pa)*ya.width,Xa=sa.get(Ya)*ya.width,Za=sa.get(Oa)*ya.height,Wa=sa.get(Ac)*ya.height,$a=sa.get(bb)*ya.height,db=ob*($a-Wa)-Va*$a+Xa*Wa+(Va-Xa)*Za,0==db?(Ba+=3,y.context.restore()):(y.context.save(),y.context.beginPath(),y.context.moveTo(Ua,Ra),y.context.lineTo(Qa, +gb),y.context.lineTo(Ta,jb),y.context.closePath(),y.context.clip(),Jd=-(Za*(Ta-Qa)-Wa*Ta+$a*Qa+(Wa-$a)*Ua)/db,ib=(Wa*jb+Za*(gb-jb)-$a*gb+($a-Wa)*Ra)/db,kb=(ob*(Ta-Qa)-Va*Ta+Xa*Qa+(Va-Xa)*Ua)/db,lb=-(Va*jb+ob*(gb-jb)-Xa*gb+(Xa-Va)*Ra)/db,sb=(ob*($a*Qa-Wa*Ta)+Za*(Va*Ta-Xa*Qa)+(Xa*Wa-Va*$a)*Ua)/db,nb=(ob*($a*gb-Wa*jb)+Za*(Va*jb-Xa*gb)+(Xa*Wa-Va*$a)*Ra)/db,y.context.transform(Jd,ib,kb,lb,sb,nb),y.context.drawImage(ya,0,0,ya.width,ya.height),y.context.restore(),Ba+=3))}break;case 14:switch(k.prev._hx_index){case 0:k.oPos+= +2;k.bPos+=2;break;case 1:k.iPos+=1;k.fPos+=1;break;case 2:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 3:k.oPos+=1;break;case 4:k.fPos+=6;break;case 5:k.fPos+=4;break;case 6:k.fPos+=3;break;case 7:k.fPos+=4;break;case 8:k.oPos+=3;break;case 9:k.fPos+=4;break;case 10:k.fPos+=5;k.oPos+=1;break;case 12:k.oPos+=4;break;case 14:k.oPos+=2;k.bPos+=2;break;case 15:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 16:k.oPos+=4;k.iPos+=1;k.fPos+=2;k.bPos+=1;break;case 17:k.fPos+=2;break;case 18:k.fPos+= +2;break;case 19:k.oPos+=1;break;case 20:k.oPos+=1}k.prev=V.LINE_BITMAP_STYLE;var mb=k;b&&y.hasStroke&&y.closePath();y.context.moveTo(e-c,f-d);y.context.strokeStyle=y.createBitmapFill(mb.buffer.o[mb.oPos],mb.buffer.b[mb.bPos],mb.buffer.b[mb.bPos+1]);y.hasStroke=!0;break;case 15:switch(k.prev._hx_index){case 0:k.oPos+=2;k.bPos+=2;break;case 1:k.iPos+=1;k.fPos+=1;break;case 2:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 3:k.oPos+=1;break;case 4:k.fPos+=6;break;case 5:k.fPos+=4;break;case 6:k.fPos+= +3;break;case 7:k.fPos+=4;break;case 8:k.oPos+=3;break;case 9:k.fPos+=4;break;case 10:k.fPos+=5;k.oPos+=1;break;case 12:k.oPos+=4;break;case 14:k.oPos+=2;k.bPos+=2;break;case 15:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 16:k.oPos+=4;k.iPos+=1;k.fPos+=2;k.bPos+=1;break;case 17:k.fPos+=2;break;case 18:k.fPos+=2;break;case 19:k.oPos+=1;break;case 20:k.oPos+=1}k.prev=V.LINE_GRADIENT_STYLE;var ab=k;b&&y.hasStroke&&y.closePath();y.context.moveTo(e-c,f-d);y.context.strokeStyle=y.createGradientPattern(ab.buffer.o[ab.oPos], +ab.buffer.ii[ab.iiPos],ab.buffer.ff[ab.ffPos],ab.buffer.ii[ab.iiPos+1],ab.buffer.o[ab.oPos+1],ab.buffer.o[ab.oPos+2],ab.buffer.o[ab.oPos+3],ab.buffer.f[ab.fPos]);y.setSmoothing(!0);y.hasStroke=!0;break;case 16:switch(k.prev._hx_index){case 0:k.oPos+=2;k.bPos+=2;break;case 1:k.iPos+=1;k.fPos+=1;break;case 2:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 3:k.oPos+=1;break;case 4:k.fPos+=6;break;case 5:k.fPos+=4;break;case 6:k.fPos+=3;break;case 7:k.fPos+=4;break;case 8:k.oPos+=3;break;case 9:k.fPos+= +4;break;case 10:k.fPos+=5;k.oPos+=1;break;case 12:k.oPos+=4;break;case 14:k.oPos+=2;k.bPos+=2;break;case 15:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 16:k.oPos+=4;k.iPos+=1;k.fPos+=2;k.bPos+=1;break;case 17:k.fPos+=2;break;case 18:k.fPos+=2;break;case 19:k.oPos+=1;break;case 20:k.oPos+=1}k.prev=V.LINE_STYLE;var vb=k;b&&y.hasStroke&&y.closePath(!0);y.context.moveTo(e-c,f-d);if(null==vb.buffer.o[vb.oPos])y.hasStroke=!1;else{y.context.lineWidth=0>>16,ta=(vb.buffer.i[vb.iPos]&65280)>>>8,X=vb.buffer.i[vb.iPos]& +255,y.context.strokeStyle="rgba("+K+", "+ta+", "+X+", "+vb.buffer.f[vb.fPos]+")";y.setSmoothing(!0);y.hasStroke=!0}break;case 17:switch(k.prev._hx_index){case 0:k.oPos+=2;k.bPos+=2;break;case 1:k.iPos+=1;k.fPos+=1;break;case 2:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 3:k.oPos+=1;break;case 4:k.fPos+=6;break;case 5:k.fPos+=4;break;case 6:k.fPos+=3;break;case 7:k.fPos+=4;break;case 8:k.oPos+=3;break;case 9:k.fPos+=4;break;case 10:k.fPos+=5;k.oPos+=1;break;case 12:k.oPos+=4;break;case 14:k.oPos+= +2;k.bPos+=2;break;case 15:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 16:k.oPos+=4;k.iPos+=1;k.fPos+=2;k.bPos+=1;break;case 17:k.fPos+=2;break;case 18:k.fPos+=2;break;case 19:k.oPos+=1;break;case 20:k.oPos+=1}k.prev=V.LINE_TO;var hb=k;n=!0;y.context.lineTo(hb.buffer.f[hb.fPos]-c,hb.buffer.f[hb.fPos+1]-d);e=hb.buffer.f[hb.fPos];f=hb.buffer.f[hb.fPos+1];e==g&&f==m&&(l=!0);break;case 18:switch(k.prev._hx_index){case 0:k.oPos+=2;k.bPos+=2;break;case 1:k.iPos+=1;k.fPos+=1;break;case 2:k.oPos+= +4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 3:k.oPos+=1;break;case 4:k.fPos+=6;break;case 5:k.fPos+=4;break;case 6:k.fPos+=3;break;case 7:k.fPos+=4;break;case 8:k.oPos+=3;break;case 9:k.fPos+=4;break;case 10:k.fPos+=5;k.oPos+=1;break;case 12:k.oPos+=4;break;case 14:k.oPos+=2;k.bPos+=2;break;case 15:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 16:k.oPos+=4;k.iPos+=1;k.fPos+=2;k.bPos+=1;break;case 17:k.fPos+=2;break;case 18:k.fPos+=2;break;case 19:k.oPos+=1;break;case 20:k.oPos+=1}k.prev=V.MOVE_TO; +var fb=k;y.context.moveTo(fb.buffer.f[fb.fPos]-c,fb.buffer.f[fb.fPos+1]-d);e=fb.buffer.f[fb.fPos];f=fb.buffer.f[fb.fPos+1];h&&(l=!0);g=fb.buffer.f[fb.fPos];m=fb.buffer.f[fb.fPos+1];h=!0;break;case 21:y.windingRule="evenodd";break;case 22:y.windingRule="nonzero";break;default:switch(k.prev._hx_index){case 0:k.oPos+=2;k.bPos+=2;break;case 1:k.iPos+=1;k.fPos+=1;break;case 2:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 3:k.oPos+=1;break;case 4:k.fPos+=6;break;case 5:k.fPos+=4;break;case 6:k.fPos+= +3;break;case 7:k.fPos+=4;break;case 8:k.oPos+=3;break;case 9:k.fPos+=4;break;case 10:k.fPos+=5;k.oPos+=1;break;case 12:k.oPos+=4;break;case 14:k.oPos+=2;k.bPos+=2;break;case 15:k.oPos+=4;k.iiPos+=2;k.ffPos+=1;k.fPos+=1;break;case 16:k.oPos+=4;k.iPos+=1;k.fPos+=2;k.bPos+=1;break;case 17:k.fPos+=2;break;case 18:k.fPos+=2;break;case 19:k.oPos+=1;break;case 20:k.oPos+=1}k.prev=Q}}null!=q&&Sa.__pool.release(q);null!=p&&Sa.__pool.release(p);k.destroy();n&&(b&&y.hasStroke&&(y.hasFill&&l?(y.context.lineTo(g- +c,m-d),y.closePath(!1)):l&&e==g&&f==m&&y.closePath(!1),y.hitTesting||y.context.stroke()),b||!y.hasFill&&null==y.bitmapFill||(y.context.translate(-y.bounds.x,-y.bounds.y),null!=y.pendingMatrix?(y.context.transform(y.pendingMatrix.a,y.pendingMatrix.b,y.pendingMatrix.c,y.pendingMatrix.d,y.pendingMatrix.tx,y.pendingMatrix.ty),y.hitTesting||y.context.fill(y.windingRule),y.context.transform(y.inversePendingMatrix.a,y.inversePendingMatrix.b,y.inversePendingMatrix.c,y.inversePendingMatrix.d,y.inversePendingMatrix.tx, +y.inversePendingMatrix.ty)):y.hitTesting||y.context.fill(y.windingRule),y.context.translate(y.bounds.x,y.bounds.y),y.context.closePath()))};y.render=function(a,b){a.__update(b.__worldTransform);if(a.__softwareDirty){y.hitTesting=!1;y.graphics=a;y.allowSmoothing=b.__allowSmoothing;y.worldAlpha=b.__getAlpha(a.__owner.__worldAlpha);y.bounds=a.__bounds;var c=a.__width,d=a.__height;if(!a.__visible||0==a.__commands.get_length()||null==y.bounds||1>c||1>d)a.__canvas=null,a.__context=null,a.__bitmap=null; +else{null==a.__canvas&&(a.__canvas=window.document.createElement("canvas"),a.__context=a.__canvas.getContext("2d"));y.context=a.__context;var e=a.__renderTransform,f=a.__canvas,l=b.pixelRatio,g=c*l|0,m=d*l|0;b.__setBlendModeContext(y.context,10);b.__isDOM?(f.width==g&&f.height==m?y.context.clearRect(0,0,g,m):(f.width=g,f.height=m,f.style.width=c+"px",f.style.height=d+"px"),c=a.__renderTransform,y.context.setTransform(c.a*l,c.b*l,c.c*l,c.d*l,c.tx*l,c.ty*l)):(f.width==g&&f.height==m?(y.context.closePath(), +y.context.setTransform(1,0,0,1,0,0),y.context.clearRect(0,0,g,m)):(f.width=c,f.height=d),y.context.setTransform(e.a,e.b,e.c,e.d,e.tx,e.ty));y.fillCommands.clear();y.strokeCommands.clear();y.hasFill=!1;y.hasStroke=!1;y.bitmapFill=null;l=y.bitmapRepeat=!1;d=c=0;y.windingRule="evenodd";e=new Ed(a.__commands);f=0;for(g=a.__commands.types;f=a.__worldAlpha)&&null!=a.__bitmapData&&a.__bitmapData.__isValid){var c=b.__context3D;b.__setBlendMode(a.__worldBlendMode);b.__pushMaskObject(a);var d=b.__initDisplayShader(a.__worldShader);b.setShader(d);b.applyBitmapData(a.__bitmapData,b.__allowSmoothing&&(a.smoothing||b.__upscaled));b.applyMatrix(b.__getMatrix(a.__renderTransform,a.pixelSnapping));b.applyAlpha(a.__worldAlpha);b.applyColorTransform(a.__worldColorTransform); +b.updateShader();var e=a.__bitmapData.getVertexBuffer(c);null!=d.__position&&c.setVertexBufferAt(d.__position.index,e,0,3);null!=d.__textureCoord&&c.setVertexBufferAt(d.__textureCoord.index,e,3,2);d=a.__bitmapData.getIndexBuffer(c);c.drawTriangles(d);b.__clearShader();b.__popMaskObject(a)}};ce.renderMask=function(a,b){if(null!=a.__bitmapData&&a.__bitmapData.__isValid){var c=b.__context3D,d=b.__maskShader;b.setShader(d);b.applyBitmapData(of.opaqueBitmapData,!0);b.applyMatrix(b.__getMatrix(a.__renderTransform, +a.pixelSnapping));b.updateShader();var e=a.__bitmapData.getVertexBuffer(c);null!=d.__position&&c.setVertexBufferAt(d.__position.index,e,0,3);null!=d.__textureCoord&&c.setVertexBufferAt(d.__textureCoord.index,e,3,2);a=a.__bitmapData.getIndexBuffer(c);c.drawTriangles(a);b.__clearShader()}};var hh=function(a,b,c,d){this.context3D=a;this.elementType=b;this.dataPerVertex=d;this.vertexCount=this.indexCount=0;this.resize(c)};h["openfl._internal.renderer.context3D.Context3DBuffer"]=hh;hh.__name__="openfl._internal.renderer.context3D.Context3DBuffer"; +hh.prototype={dataPerVertex:null,elementCount:null,elementType:null,indexCount:null,vertexBuffer:null,vertexBufferData:null,vertexCount:null,context3D:null,flushVertexBufferData:function(){this.vertexBufferData.length>this.vertexCount&&(this.vertexCount=this.vertexBufferData.length,this.vertexBuffer=this.context3D.createVertexBuffer(this.vertexCount,this.dataPerVertex,0));this.vertexBuffer.uploadFromTypedArray(this.vertexBufferData)},resize:function(a,b){null==b&&(b=-1);this.elementCount=a;-1==b&& +(b=this.dataPerVertex);b!=this.dataPerVertex&&(this.vertexBuffer=null,this.vertexCount=0,this.dataPerVertex=b);var c=0;switch(this.elementType._hx_index){case 0:c=4*a;break;case 1:c=3*a;break;case 2:c=3*a}a=c*b;null==this.vertexBufferData?this.vertexBufferData=null!=a?new Float32Array(a):null:a>this.vertexBufferData.length&&(b=this.vertexBufferData,this.vertexBufferData=null!=a?new Float32Array(a):null,this.vertexBufferData.set(b))},__class__:hh};var ek=B["openfl._internal.renderer.context3D.Context3DElementType"]= +{__ename__:"openfl._internal.renderer.context3D.Context3DElementType",__constructs__:["QUADS","TRIANGLES","TRIANGLE_INDICES"],QUADS:{_hx_index:0,__enum__:"openfl._internal.renderer.context3D.Context3DElementType",toString:g},TRIANGLES:{_hx_index:1,__enum__:"openfl._internal.renderer.context3D.Context3DElementType",toString:g},TRIANGLE_INDICES:{_hx_index:2,__enum__:"openfl._internal.renderer.context3D.Context3DElementType",toString:g}},ib=function(){};h["openfl._internal.renderer.context3D.Context3DGraphics"]= +ib;ib.__name__="openfl._internal.renderer.context3D.Context3DGraphics";ib.buildBuffer=function(a,b){var c=0,d=0,e=0,f=new Ed(a.__commands);b=b.__context3D;for(var l=qa.__pool.get(),g=Aa.__pool.get(),m=null,h=0,n=a.__commands.types;h=6*B?p=q=!0:r.get_length()>=4*B?q=!0:r.get_length()>=2*B&&(p=!0));null==a.__quadBuffer?a.__quadBuffer=new hh(b,ek.QUADS,B,4):a.__quadBuffer.resize(c+B,4);for(var A,t,Q,y,x,N,K,w,ta,X,D,ha,C,H,za=a.__quadBuffer.vertexBufferData,E=m.width,F=m.height,W=0,G=B;Wt||(l.setTo(k.get(t),k.get(t+1),k.get(t+2),k.get(t+3)),t=l.width, +Q=l.height,0>=t||0>=Q||(q&&p?(y*=6,g.setTo(r.get(y),r.get(y+1),r.get(y+2),r.get(y+3),r.get(y+4),r.get(y+5))):q?(y*=4,g.setTo(r.get(y),r.get(y+1),r.get(y+2),r.get(y+3),l.x,l.y)):p?(y*=2,g.tx=r.get(y),g.ty=r.get(y+1)):(g.tx=l.x,g.ty=l.y),y=l.x/E,x=l.y/F,N=l.get_right()/E,K=l.get_bottom()/F,w=0*g.a+0*g.c+g.tx,ta=0*g.b+0*g.d+g.ty,X=t*g.a+0*g.c+g.tx,D=t*g.b+0*g.d+g.ty,ha=0*g.a+Q*g.c+g.tx,C=0*g.b+Q*g.d+g.ty,H=t*g.a+Q*g.c+g.tx,t=t*g.b+Q*g.d+g.ty,za[A]=w,za[A+1]=ta,za[A+2]=y,za[A+3]=x,za[A+4]=X,za[A+4+1]= +D,za[A+4+2]=N,za[A+4+3]=x,za[A+8]=ha,za[A+8+1]=C,za[A+8+2]=y,za[A+8+3]=K,za[A+12]=H,za[A+12+1]=t,za[A+12+2]=N,za[A+12+3]=K));c+=B}break;case 12:switch(f.prev._hx_index){case 0:f.oPos+=2;f.bPos+=2;break;case 1:f.iPos+=1;f.fPos+=1;break;case 2:f.oPos+=4;f.iiPos+=2;f.ffPos+=1;f.fPos+=1;break;case 3:f.oPos+=1;break;case 4:f.fPos+=6;break;case 5:f.fPos+=4;break;case 6:f.fPos+=3;break;case 7:f.fPos+=4;break;case 8:f.oPos+=3;break;case 9:f.fPos+=4;break;case 10:f.fPos+=5;f.oPos+=1;break;case 12:f.oPos+= +4;break;case 14:f.oPos+=2;f.bPos+=2;break;case 15:f.oPos+=4;f.iiPos+=2;f.ffPos+=1;f.fPos+=1;break;case 16:f.oPos+=4;f.iPos+=1;f.fPos+=2;f.bPos+=1;break;case 17:f.fPos+=2;break;case 18:f.fPos+=2;break;case 19:f.oPos+=1;break;case 20:f.oPos+=1}f.prev=V.DRAW_TRIANGLES;r=f;k=r.buffer.o[r.oPos];z=r.buffer.o[r.oPos+1];r=r.buffer.o[r.oPos+2];u=null!=z;B=Math.floor(k.get_length()/2);q=u?z.get_length():B;A=(B=(p=null!=r)&&r.get_length()>=3*B)?4:2;za=B?3:2;E=A+2;F=B?e:d;ib.resizeVertexBuffer(a,B,F+q*E);W=B? +a.__vertexBufferDataUVT:a.__vertexBufferData;Q=0;for(y=q;Qa.__vertexBufferCount)c=b.createVertexBuffer(d,4,0),a.__vertexBuffer=c,a.__vertexBufferCount=d;c.uploadFromTypedArray(a.__vertexBufferData)}if(0a.__vertexBufferCountUVT)d=b.createVertexBuffer(e,6,0),a.__vertexBufferUVT=d,a.__vertexBufferCountUVT=e;d.uploadFromTypedArray(a.__vertexBufferDataUVT)}qa.__pool.release(l);Aa.__pool.release(g)};ib.isCompatible=function(a){if(null!=a.__owner.__worldScale9Grid)return!1;var b=new Ed(a.__commands),c=!1,d=!1,e=!1,f= +0;for(a=a.__commands.types;f=p)break;null==f||ib.maskRender||b.__updateShaderBuffer(k);null!=B.__position&&d.setVertexBufferAt(B.__position.index, +a.__quadBuffer.vertexBuffer,16*n,2);null!=B.__textureCoord&&d.setVertexBufferAt(B.__textureCoord.index,a.__quadBuffer.vertexBuffer,16*n+2,2);d.drawTriangles(d.__quadIndexBuffer,0,2*p);k+=4*p;n+=p}b.__clearShader()}break;case 9:if(null!=h){switch(c.prev._hx_index){case 0:c.oPos+=2;c.bPos+=2;break;case 1:c.iPos+=1;c.fPos+=1;break;case 2:c.oPos+=4;c.iiPos+=2;c.ffPos+=1;c.fPos+=1;break;case 3:c.oPos+=1;break;case 4:c.fPos+=6;break;case 5:c.fPos+=4;break;case 6:c.fPos+=3;break;case 7:c.fPos+=4;break;case 8:c.oPos+= +3;break;case 9:c.fPos+=4;break;case 10:c.fPos+=5;c.oPos+=1;break;case 12:c.oPos+=4;break;case 14:c.oPos+=2;c.bPos+=2;break;case 15:c.oPos+=4;c.iiPos+=2;c.ffPos+=1;c.fPos+=1;break;case 16:c.oPos+=4;c.iPos+=1;c.fPos+=2;c.bPos+=1;break;case 17:c.fPos+=2;break;case 18:c.fPos+=2;break;case 19:c.oPos+=1;break;case 20:c.oPos+=1}c.prev=V.DRAW_RECT;var t=c;p=t.buffer.f[t.fPos];B=t.buffer.f[t.fPos+1];A=t.buffer.f[t.fPos+2];var Q=t.buffer.f[t.fPos+3];t=h;ib.tempColorTransform.redOffset=t>>>16&255;ib.tempColorTransform.greenOffset= +t>>>8&255;ib.tempColorTransform.blueOffset=t&255;ib.tempColorTransform.__combine(a.__owner.__worldColorTransform);e.identity();e.scale(A,Q);e.tx=p;e.ty=B;e.concat(a.__owner.__renderTransform);p=ib.maskRender?b.__maskShader:b.__initGraphicsShader(null);b.setShader(p);b.applyMatrix(b.__getMatrix(e,1));b.applyBitmapData(ib.blankBitmapData,!0,g);b.applyAlpha((t>>>24&255)/255*a.__owner.__worldAlpha);b.applyColorTransform(ib.tempColorTransform);b.updateShader();B=ib.blankBitmapData.getVertexBuffer(d);null!= +p.__position&&d.setVertexBufferAt(p.__position.index,B,0,3);null!=p.__textureCoord&&d.setVertexBufferAt(p.__textureCoord.index,B,3,2);p=ib.blankBitmapData.getIndexBuffer(d);d.drawTriangles(p);k+=4;b.__clearShader()}break;case 12:switch(c.prev._hx_index){case 0:c.oPos+=2;c.bPos+=2;break;case 1:c.iPos+=1;c.fPos+=1;break;case 2:c.oPos+=4;c.iiPos+=2;c.ffPos+=1;c.fPos+=1;break;case 3:c.oPos+=1;break;case 4:c.fPos+=6;break;case 5:c.fPos+=4;break;case 6:c.fPos+=3;break;case 7:c.fPos+=4;break;case 8:c.oPos+= +3;break;case 9:c.fPos+=4;break;case 10:c.fPos+=5;c.oPos+=1;break;case 12:c.oPos+=4;break;case 14:c.oPos+=2;c.bPos+=2;break;case 15:c.oPos+=4;c.iiPos+=2;c.ffPos+=1;c.fPos+=1;break;case 16:c.oPos+=4;c.iPos+=1;c.fPos+=2;c.bPos+=1;break;case 17:c.fPos+=2;break;case 18:c.fPos+=2;break;case 19:c.oPos+=1;break;case 20:c.oPos+=1}c.prev=V.DRAW_TRIANGLES;Q=c;B=Q.buffer.o[Q.oPos+1];A=Q.buffer.o[Q.oPos+2];p=Q.buffer.o[Q.oPos+3];t=null!=B;Q=Math.floor(Q.buffer.o[Q.oPos].get_length()/2);B=t?B.get_length():Q;t= +(A=null!=A&&A.get_length()>=3*Q)?4:2;Q=t+2;var x=A?a.__vertexBufferUVT:a.__vertexBuffer,N=A?z:r,K=b.__getMatrix(a.__owner.__renderTransform,1);if(null==f||ib.maskRender){var w=ib.maskRender?b.__maskShader:b.__initGraphicsShader(null);b.setShader(w);b.applyMatrix(K);b.applyBitmapData(l,m,g);b.applyAlpha(a.__owner.__worldAlpha);b.applyColorTransform(a.__owner.__worldColorTransform);b.updateShader()}else w=b.__initShaderBuffer(f),b.__setShaderBuffer(f),b.applyMatrix(K),b.applyBitmapData(l,!1,g),b.applyAlpha(1), +b.applyColorTransform(null),b.__updateShaderBuffer(k);null!=w.__position&&d.setVertexBufferAt(w.__position.index,x,N,A?4:2);null!=w.__textureCoord&&d.setVertexBufferAt(w.__textureCoord.index,x,N+t,2);switch(p){case 0:d.setCulling(0);break;case 1:d.setCulling(3);break;case 2:d.setCulling(1)}d.__drawTriangles(0,B);k+=B;A?z+=Q*B:r+=Q*B;switch(p){case 1:case 2:d.setCulling(0)}b.__clearShader();break;case 13:f=h=l=null;switch(c.prev._hx_index){case 0:c.oPos+=2;c.bPos+=2;break;case 1:c.iPos+=1;c.fPos+= +1;break;case 2:c.oPos+=4;c.iiPos+=2;c.ffPos+=1;c.fPos+=1;break;case 3:c.oPos+=1;break;case 4:c.fPos+=6;break;case 5:c.fPos+=4;break;case 6:c.fPos+=3;break;case 7:c.fPos+=4;break;case 8:c.oPos+=3;break;case 9:c.fPos+=4;break;case 10:c.fPos+=5;c.oPos+=1;break;case 12:c.oPos+=4;break;case 14:c.oPos+=2;c.bPos+=2;break;case 15:c.oPos+=4;c.iiPos+=2;c.ffPos+=1;c.fPos+=1;break;case 16:c.oPos+=4;c.iPos+=1;c.fPos+=2;c.bPos+=1;break;case 17:c.fPos+=2;break;case 18:c.fPos+=2;break;case 19:c.oPos+=1;break;case 20:c.oPos+= +1}c.prev=p;break;case 18:switch(c.prev._hx_index){case 0:c.oPos+=2;c.bPos+=2;break;case 1:c.iPos+=1;c.fPos+=1;break;case 2:c.oPos+=4;c.iiPos+=2;c.ffPos+=1;c.fPos+=1;break;case 3:c.oPos+=1;break;case 4:c.fPos+=6;break;case 5:c.fPos+=4;break;case 6:c.fPos+=3;break;case 7:c.fPos+=4;break;case 8:c.oPos+=3;break;case 9:c.fPos+=4;break;case 10:c.fPos+=5;c.oPos+=1;break;case 12:c.oPos+=4;break;case 14:c.oPos+=2;c.bPos+=2;break;case 15:c.oPos+=4;c.iiPos+=2;c.ffPos+=1;c.fPos+=1;break;case 16:c.oPos+=4;c.iPos+= +1;c.fPos+=2;c.bPos+=1;break;case 17:c.fPos+=2;break;case 18:c.fPos+=2;break;case 19:c.oPos+=1;break;case 20:c.oPos+=1}c.prev=V.MOVE_TO;break;case 19:switch(c.prev._hx_index){case 0:c.oPos+=2;c.bPos+=2;break;case 1:c.iPos+=1;c.fPos+=1;break;case 2:c.oPos+=4;c.iiPos+=2;c.ffPos+=1;c.fPos+=1;break;case 3:c.oPos+=1;break;case 4:c.fPos+=6;break;case 5:c.fPos+=4;break;case 6:c.fPos+=3;break;case 7:c.fPos+=4;break;case 8:c.oPos+=3;break;case 9:c.fPos+=4;break;case 10:c.fPos+=5;c.oPos+=1;break;case 12:c.oPos+= +4;break;case 14:c.oPos+=2;c.bPos+=2;break;case 15:c.oPos+=4;c.iiPos+=2;c.ffPos+=1;c.fPos+=1;break;case 16:c.oPos+=4;c.iPos+=1;c.fPos+=2;c.bPos+=1;break;case 17:c.fPos+=2;break;case 18:c.fPos+=2;break;case 19:c.oPos+=1;break;case 20:c.oPos+=1}c.prev=V.OVERRIDE_BLEND_MODE;p=c;b.__setBlendMode(p.buffer.o[p.oPos]);break;default:switch(c.prev._hx_index){case 0:c.oPos+=2;c.bPos+=2;break;case 1:c.iPos+=1;c.fPos+=1;break;case 2:c.oPos+=4;c.iiPos+=2;c.ffPos+=1;c.fPos+=1;break;case 3:c.oPos+=1;break;case 4:c.fPos+= +6;break;case 5:c.fPos+=4;break;case 6:c.fPos+=3;break;case 7:c.fPos+=4;break;case 8:c.oPos+=3;break;case 9:c.fPos+=4;break;case 10:c.fPos+=5;c.oPos+=1;break;case 12:c.oPos+=4;break;case 14:c.oPos+=2;c.bPos+=2;break;case 15:c.oPos+=4;c.iiPos+=2;c.ffPos+=1;c.fPos+=1;break;case 16:c.oPos+=4;c.iPos+=1;c.fPos+=2;c.bPos+=1;break;case 17:c.fPos+=2;break;case 18:c.fPos+=2;break;case 19:c.oPos+=1;break;case 20:c.oPos+=1}c.prev=p}}Aa.__pool.release(e)}a.__hardwareDirty=!1;a.set___dirty(!1)}};ib.renderMask= +function(a,b){ib.maskRender=!0;ib.render(a,b);ib.maskRender=!1};ib.resizeVertexBuffer=function(a,b,c){var d=b?a.__vertexBufferDataUVT:a.__vertexBufferData,e=null;null==d?e=null!=c?new Float32Array(c):null:c>d.length&&(e=null!=c?new Float32Array(c):null,e.set(d));null!=e&&(b?a.__vertexBufferDataUVT=e:a.__vertexBufferData=e)};var of=function(){null==this.__glFragmentSource&&(this.__glFragmentSource="varying vec2 openfl_TextureCoordv;\n\t\t\n\t\tuniform sampler2D openfl_Texture;\n\t\t\n\t\tvoid main(void) {\n\t\t\t\n\t\t\tvec4 color = texture2D (openfl_Texture, openfl_TextureCoordv);\n\t\t\t\n\t\t\tif (color.a == 0.0) {\n\t\t\t\t\n\t\t\t\tdiscard;\n\t\t\t\t\n\t\t\t} else {\n\t\t\t\t\n\t\t\t\tgl_FragColor = color;\n\t\t\t\t\n\t\t\t}\n\t\t\t\n\t\t}"); +null==this.__glVertexSource&&(this.__glVertexSource="attribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\t\tvarying vec2 openfl_TextureCoordv;\n\t\t\n\t\tuniform mat4 openfl_Matrix;\n\t\t\n\t\tvoid main(void) {\n\t\t\t\n\t\t\topenfl_TextureCoordv = openfl_TextureCoord;\n\t\t\t\n\t\t\tgl_Position = openfl_Matrix * openfl_Position;\n\t\t\t\n\t\t}");sc.call(this);this.__isGenerated=!0;this.__initGL()};h["openfl._internal.renderer.context3D.Context3DMaskShader"]=of;of.__name__= +"openfl._internal.renderer.context3D.Context3DMaskShader";of.__super__=sc;of.prototype=p(sc.prototype,{openfl_Position:null,openfl_TextureCoord:null,openfl_Matrix:null,openfl_Texture:null,__class__:of});var de=function(){};h["openfl._internal.renderer.context3D.Context3DShape"]=de;de.__name__="openfl._internal.renderer.context3D.Context3DShape";de.render=function(a,b){if(a.__renderable&&!(0>=a.__worldAlpha)){var c=a.__graphics;if(null!=c){b.__setBlendMode(a.__worldBlendMode);b.__pushMaskObject(a); +ib.render(c,b);if(null!=c.__bitmap&&c.__visible){var d=b.__context3D,e=b.__initDisplayShader(a.__worldShader);b.setShader(e);b.applyBitmapData(c.__bitmap,!0);b.applyMatrix(b.__getMatrix(c.__worldTransform,1));b.applyAlpha(a.__worldAlpha);b.applyColorTransform(a.__worldColorTransform);b.updateShader();var f=c.__bitmap.getVertexBuffer(d);null!=e.__position&&d.setVertexBufferAt(e.__position.index,f,0,3);null!=e.__textureCoord&&d.setVertexBufferAt(e.__textureCoord.index,f,3,2);c=c.__bitmap.getIndexBuffer(d); +d.drawTriangles(c);b.__clearShader()}b.__popMaskObject(a)}}};de.renderMask=function(a,b){var c=a.__graphics;if(null!=c&&(ib.renderMask(c,b),null!=c.__bitmap)){a=b.__context3D;var d=b.__maskShader;b.setShader(d);b.applyBitmapData(c.__bitmap,!0);b.applyMatrix(b.__getMatrix(c.__worldTransform,1));b.updateShader();var e=c.__bitmap.getVertexBuffer(a);null!=d.__position&&a.setVertexBufferAt(d.__position.index,e,0,3);null!=d.__textureCoord&&a.setVertexBufferAt(d.__textureCoord.index,e,3,2);c=c.__bitmap.getIndexBuffer(a); +a.drawTriangles(c);b.__clearShader()}};var Wf=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 qa;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};h["openfl._internal.renderer.context3D.Context3DState"]=Wf;Wf.__name__="openfl._internal.renderer.context3D.Context3DState";Wf.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,__class__:Wf};var Xf=function(){};h["openfl._internal.renderer.context3D.Context3DTextField"]=Xf;Xf.__name__="openfl._internal.renderer.context3D.Context3DTextField";Xf.render=function(a,b){var c=b.__softwareRenderer,d= +a.__textEngine,e=d.background||d.border?d.bounds:d.textBounds;b=a.__graphics;a.__dirty&&(a.__updateLayout(),null==b.__bounds&&(b.__bounds=new qa),b.__bounds.copyFrom(e));b.__update(c.__worldTransform);if(a.__dirty||b.__softwareDirty){var f=b.__width,l=b.__height;if(!(null!=d.text&&""!=d.text||d.background||d.border||d.__hasFocus||1==d.type&&d.selectable)||(0>=d.width||0>=d.height)&&2!=d.autoSize)a.__graphics.__canvas=null,a.__graphics.__context=null,a.__graphics.__bitmap=null,a.__graphics.__softwareDirty= +!1,a.__graphics.set___dirty(!1),a.__dirty=!1;else{null==a.__graphics.__canvas&&(a.__graphics.__canvas=window.document.createElement("canvas"),a.__graphics.__context=a.__graphics.__canvas.getContext("2d"));J.context=b.__context;var g=b.__renderTransform;if(c.__isDOM){var m=c.pixelRatio;b.__canvas.width=f*m|0;b.__canvas.height=l*m|0;b.__canvas.style.width=f+"px";b.__canvas.style.height=l+"px";f=Aa.__pool.get();f.copyFrom(g);f.scale(m,m);c.setTransform(f,J.context);Aa.__pool.release(f)}else b.__canvas.width= +f,b.__canvas.height=l,J.context.setTransform(g.a,g.b,g.c,g.d,g.tx,g.ty);null==J.clearRect&&(J.clearRect="undefined"!==typeof navigator&&"undefined"!==typeof navigator.isCocoonJS);J.clearRect&&J.context.clearRect(0,0,b.__canvas.width,b.__canvas.height);if(null!=d.text&&""!=d.text||d.__hasFocus){g=d.text;b.__context.imageSmoothingEnabled=!c.__allowSmoothing||0==d.antiAliasType&&400==d.sharpness?!1:!0;if(d.border||d.background)J.context.rect(.5,.5,e.width-1,e.height-1),d.background&&(c=da.hex(d.backgroundColor& +16777215,6),J.context.fillStyle="#"+c,J.context.fill()),d.border&&(J.context.lineWidth=1,c=da.hex(d.borderColor&16777215,6),J.context.strokeStyle="#"+c,J.context.stroke());J.context.textBaseline="alphabetic";J.context.textAlign="start";c=-a.get_scrollH();f=m=0;for(l=a.get_scrollV()-1;fd.get_bottomScrollV()-1)break;h="#"+da.hex(l.format.color&16777215, +6);J.context.font=Wa.getFont(l.format);J.context.fillStyle=h;J.context.fillText(g.substring(l.startIndex,l.endIndex),l.offsetX+c-e.x,l.offsetY+l.ascent+m-e.y);if(-1=a.__caretIndex){for(var k=n=0,r=a.__caretIndex-l.startIndex;k=a.__caretIndex||l.startIndex<=a.__selectionIndex&&l.endIndex>=a.__selectionIndex||l.startIndex>a.__caretIndex&&l.endIndexa.__selectionIndex&& +l.endIndexn&&(n=l.startIndex),l.endIndex=l.endIndex?(r=a.getCharBoundaries(l.endIndex-1),null!=r&&(r.x+=r.width+2)):r=a.getCharBoundaries(k),null!=z&&null!=r&&(J.context.fillStyle="#000000",J.context.fillRect(z.x+c,z.y+m,r.x-z.x,l.height),J.context.fillStyle="#FFFFFF",J.context.fillText(g.substring(n,k),c+z.x,l.offsetY+l.ascent+ +m));l.format.underline&&(J.context.beginPath(),J.context.strokeStyle=h,J.context.lineWidth=1,h=l.offsetX+c-e.x,n=Math.floor(l.offsetY+m+l.ascent-e.y)+.5,J.context.moveTo(h,n),J.context.lineTo(h+l.width,n),J.context.stroke(),J.context.closePath())}}else{if(d.border||d.background)d.border?J.context.rect(.5,.5,e.width-1,e.height-1):J.context.rect(0,0,e.width,e.height),d.background&&(e=da.hex(d.backgroundColor&16777215,6),J.context.fillStyle="#"+e,J.context.fill()),d.border&&(J.context.lineWidth=1,J.context.lineCap= +"square",e=da.hex(d.borderColor&16777215,6),J.context.strokeStyle="#"+e,J.context.stroke());if(-1=d.width||0>=d.height)&&2!=d.autoSize)a.__graphics.__canvas=null,a.__graphics.__context=null,a.__graphics.__bitmap=null,a.__graphics.__softwareDirty=!1,a.__graphics.set___dirty(!1),a.__dirty=!1;else{null==a.__graphics.__canvas&&(a.__graphics.__canvas=window.document.createElement("canvas"),a.__graphics.__context=a.__graphics.__canvas.getContext("2d"));J.context=b.__context;var g=b.__renderTransform;if(c.__isDOM){var m=c.pixelRatio;b.__canvas.width= +f*m|0;b.__canvas.height=l*m|0;b.__canvas.style.width=f+"px";b.__canvas.style.height=l+"px";f=Aa.__pool.get();f.copyFrom(g);f.scale(m,m);c.setTransform(f,J.context);Aa.__pool.release(f)}else b.__canvas.width=f,b.__canvas.height=l,J.context.setTransform(g.a,g.b,g.c,g.d,g.tx,g.ty);null==J.clearRect&&(J.clearRect="undefined"!==typeof navigator&&"undefined"!==typeof navigator.isCocoonJS);J.clearRect&&J.context.clearRect(0,0,b.__canvas.width,b.__canvas.height);if(null!=d.text&&""!=d.text||d.__hasFocus){g= +d.text;b.__context.imageSmoothingEnabled=!c.__allowSmoothing||0==d.antiAliasType&&400==d.sharpness?!1:!0;if(d.border||d.background)J.context.rect(.5,.5,e.width-1,e.height-1),d.background&&(c=da.hex(d.backgroundColor&16777215,6),J.context.fillStyle="#"+c,J.context.fill()),d.border&&(J.context.lineWidth=1,c=da.hex(d.borderColor&16777215,6),J.context.strokeStyle="#"+c,J.context.stroke());J.context.textBaseline="alphabetic";J.context.textAlign="start";c=-a.get_scrollH();f=m=0;for(l=a.get_scrollV()-1;f< +l;){var h=f++;m-=d.lineHeights.get(h)}var n;for(f=d.layoutGroups.iterator();f.hasNext();)if(l=f.next(),!(l.lineIndexd.get_bottomScrollV()-1)break;h="#"+da.hex(l.format.color&16777215,6);J.context.font=Wa.getFont(l.format);J.context.fillStyle=h;J.context.fillText(g.substring(l.startIndex,l.endIndex),l.offsetX+c-e.x,l.offsetY+l.ascent+m-e.y);if(-1=a.__caretIndex){for(var k=n=0,r=a.__caretIndex-l.startIndex;k=a.__caretIndex||l.startIndex<=a.__selectionIndex&&l.endIndex>=a.__selectionIndex||l.startIndex>a.__caretIndex&&l.endIndexa.__selectionIndex&&l.endIndexn&&(n=l.startIndex),l.endIndex=l.endIndex?(r=a.getCharBoundaries(l.endIndex- +1),null!=r&&(r.x+=r.width+2)):r=a.getCharBoundaries(k),null!=z&&null!=r&&(J.context.fillStyle="#000000",J.context.fillRect(z.x+c,z.y+m,r.x-z.x,l.height),J.context.fillStyle="#FFFFFF",J.context.fillText(g.substring(n,k),c+z.x,l.offsetY+l.ascent+m));l.format.underline&&(J.context.beginPath(),J.context.strokeStyle=h,J.context.lineWidth=1,h=l.offsetX+c-e.x,n=Math.floor(l.offsetY+m+l.ascent-e.y)+.5,J.context.moveTo(h,n),J.context.lineTo(h+l.width,n),J.context.stroke(),J.context.closePath())}}else{if(d.border|| +d.background)d.border?J.context.rect(.5,.5,e.width-1,e.height-1):J.context.rect(0,0,e.width,e.height),d.background&&(e=da.hex(d.backgroundColor&16777215,6),J.context.fillStyle="#"+e,J.context.fill()),d.border&&(J.context.lineWidth=1,J.context.lineCap="square",e=da.hex(d.borderColor&16777215,6),J.context.strokeStyle="#"+e,J.context.stroke());if(-1>24&255)/255);break;case 3:c.curveTo(B.controlX*m+l,B.controlY*m+g,B.anchorX*m+l,B.anchorY*m+g);break;case 4:c.endFill();break;case 5:var t=B.miterLimit,A=B.joints,Q=B.caps,y=B.scaleMode,x=B.pixelHinting,N=B.alpha,K=B.color;B=B.thickness;null!=B?c.lineStyle(B,K,N,x,y,Q,A,t):c.lineStyle();break;case 6:c.lineTo(B.x* +m+l,B.y*m+g);break;case 7:c.moveTo(B.x*m+l,B.y*m+g)}}l+=.05*r.advances[u]}}}b.text=d;this.records=null;this.rendered=new Yf;this.rendered.text=d;this.rendered.__graphics.copyFrom(b.__graphics);return b},__class__:Pi});var Bj=function(){};h["openfl._internal.symbols.StaticTextRecord"]=Bj;Bj.__name__="openfl._internal.symbols.StaticTextRecord";Bj.prototype={advances:null,color:null,fontHeight:null,fontID:null,glyphs:null,offsetX:null,offsetY:null,__class__:Bj};var Cj=function(){};h["openfl._internal.symbols.timeline.Frame"]= +Cj;Cj.__name__="openfl._internal.symbols.timeline.Frame";Cj.prototype={label:null,objects:null,script:null,scriptSource:null,__class__:Cj};var Dj=function(){};h["openfl._internal.symbols.timeline.FrameObject"]=Dj;Dj.__name__="openfl._internal.symbols.timeline.FrameObject";Dj.prototype={blendMode:null,cacheAsBitmap:null,clipDepth:null,colorTransform:null,depth:null,filters:null,id:null,matrix:null,name:null,symbol:null,type:null,visible:null,__class__:Dj};var fk=B["openfl._internal.symbols.timeline.FrameObjectType"]= +{__ename__:"openfl._internal.symbols.timeline.FrameObjectType",__constructs__:["CREATE","UPDATE","DESTROY"],CREATE:{_hx_index:0,__enum__:"openfl._internal.symbols.timeline.FrameObjectType",toString:g},UPDATE:{_hx_index:1,__enum__:"openfl._internal.symbols.timeline.FrameObjectType",toString:g},DESTROY:{_hx_index:2,__enum__:"openfl._internal.symbols.timeline.FrameObjectType",toString:g}},Wa=function(a){this.textField=a;this.height=this.width=100;this.set_text("");this.bounds=new qa(0,0,0,0);this.textBounds= +new qa(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=Da.toFloatVector(null);this.lineBreaks=Da.toIntVector(null);this.lineDescents=Da.toFloatVector(null);this.lineLeadings=Da.toFloatVector(null);this.lineHeights=Da.toFloatVector(null);this.lineWidths= +Da.toFloatVector(null);this.layoutGroups=Da.toObjectVector(null);this.textFormatRanges=Da.toObjectVector(null);null==Wa.__context&&(Wa.__context=window.document.createElement("canvas").getContext("2d"))};h["openfl._internal.text.TextEngine"]=Wa;Wa.__name__="openfl._internal.text.TextEngine";Wa.findFont=function(a){var b=eb.__fontByName;return null!=r[a]?b.getReserved(a):b.h[a]};Wa.findFontVariant=function(a){var b=a.font,c=a.bold,d=a.italic;null==b&&(b="_serif");a=da.replace(da.replace(b," Normal", +"")," Regular","");if(c&&d){var e=eb.__fontByName;var f=a+" Bold Italic";e=null!=r[f]?e.existsReserved(f):e.h.hasOwnProperty(f)}else e=!1;if(e)return Wa.findFont(a+" Bold Italic");c?(c=eb.__fontByName,e=a+" Bold",c=null!=r[e]?c.existsReserved(e):c.h.hasOwnProperty(e)):c=!1;if(c)return Wa.findFont(a+" Bold");d?(d=eb.__fontByName,c=a+" Italic",d=null!=r[c]?d.existsReserved(c):d.h.hasOwnProperty(c)):d=!1;return d?Wa.findFont(a+" Italic"):Wa.findFont(b)};Wa.getFormatHeight=function(a){Wa.__context.font= +Wa.getFont(a);var b=Wa.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};Wa.getFont=function(a){var b=a.font,c=a.bold,d=a.italic;null==b&&(b="_serif");var e=da.replace(da.replace(b," Normal","")," Regular","");if(c&&d){var f=eb.__fontByName;var l=e+" Bold Italic";f=null!=r[l]?f.existsReserved(l):f.h.hasOwnProperty(l)}else f= +!1;f?(b=e+" Bold Italic",d=c=!1):(c?(f=eb.__fontByName,l=e+" Bold",f=null!=r[l]?f.existsReserved(l):f.h.hasOwnProperty(l)):f=!1,f?(b=e+" Bold",c=!1):(d?(f=eb.__fontByName,l=e+" Italic",f=null!=r[l]?f.existsReserved(l):f.h.hasOwnProperty(l)):f=!1,f?(b=e+" Italic",d=!1):(c&&(-1=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))},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:bthis.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=Wa.getFontInstance(a),null!=a.__ascent?(l=a.size*a.__ascent,f=a.size*a.__descent):null!=b&&0!=b.unitsPerEM?(l=b.ascender/b.unitsPerEM*a.size,f=Math.abs(b.descender/ +b.unitsPerEM*a.size)):(l=a.size,f=.185*a.size),c=a.leading,a=l,b=f,this.textHeight=l+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&&0this.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=yb.__defaultTextFormat.clone(),f=0,l=0,g=0,m=0,h=3,n=null,k=null,r=0,p=0,u=0,q=-2,B=-1,t=this.text.indexOf(" "),A=this.getLineBreakIndex(),Q=2,y=2,x=0,N= +0,K=function(b,c,d){var e=[];if(null==a.__useIntAdvances){var f=new ja("Trident/7.0","");a.__useIntAdvances=f.match(window.navigator.userAgent)}if(a.__useIntAdvances){f=0;for(var k,l=c;lu&&(u=p);l>g&&(g=l)},D=function(){var f=a.textFormatRanges.get_length()-1;return bN||(c.ascent=g,c.height=u)}y+=u;u=g=0;N+=1;Q=2},H=function(b){if(4<=a.width&&a.wordWrap){var c=k,d,e,f;for(d=w(c);Q+d>a.width-2;){for(f=d=e=0;Q+f +d&&f+Q>a.width-2){if(x+d-e==b)break}else for(;Q+f>a.width-2;)--d,0this.width-2&&(E=!0,0q)++G;else break;--E}x==q+1&&C();Q=2;if(0A-n.startIndex-n.positions.length&&n.positions.push(0),x=A+1);q=t;t=F;if(-1A||-1==t)||x>this.text.length)break}else xb?1:b},get_maxScrollV:function(){if(1==this.numLines||null==this.lineHeights)return 1;var a=this.numLines-1,b=0;10==z.cca(this.text,this.text.length-1)&&--a;for(var 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},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__:Wa,__properties__:{set_text:"set_text",set_scrollV:"set_scrollV",get_scrollV:"get_scrollV",get_maxScrollV:"get_maxScrollV",get_bottomScrollV:"get_bottomScrollV"}}; +var $d=function(a,b,c){this.format=a;this.start=b;this.end=c};h["openfl._internal.text.TextFormatRange"]=$d;$d.__name__="openfl._internal.text.TextFormatRange";$d.prototype={end:null,format:null,start:null,__class__:$d};var ih=function(a,b,c){this.format=a;this.startIndex=b;this.endIndex=c};h["openfl._internal.text.TextLayoutGroup"]=ih;ih.__name__="openfl._internal.text.TextLayoutGroup";ih.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,__class__:ih};var Le=function(){this.rollOutStack=[]};h["openfl._internal.utils.TouchData"]=Le;Le.__name__="openfl._internal.utils.TouchData";Le.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__:Le};var yf=function(){ha.call(this);null==hc.application&&(hc.application=this); +null==hc.current&&(hc.current=new Cc);hc.current.__loaderInfo=Pd.create(null);hc.current.__loaderInfo.content=hc.current};h["openfl.display.Application"]=yf;yf.__name__="openfl.display.Application";yf.__super__=ha;yf.prototype=p(ha.prototype,{createWindow:function(a){var b=new Qe(this,a);this.__windows.push(b);this.__windowByID.h[b.id]=b;var c=q(this,this.__onWindowClose);b.onClose.add(function(){c(b)},!1,-1E4);null==this.__window&&(this.__window=b,b.onActivate.add(q(this,this.onWindowActivate)), +b.onRenderContextLost.add(q(this,this.onRenderContextLost)),b.onRenderContextRestored.add(q(this,this.onRenderContextRestored)),b.onDeactivate.add(q(this,this.onWindowDeactivate)),b.onDropFile.add(q(this,this.onWindowDropFile)),b.onEnter.add(q(this,this.onWindowEnter)),b.onExpose.add(q(this,this.onWindowExpose)),b.onFocusIn.add(q(this,this.onWindowFocusIn)),b.onFocusOut.add(q(this,this.onWindowFocusOut)),b.onFullscreen.add(q(this,this.onWindowFullscreen)),b.onKeyDown.add(q(this,this.onKeyDown)),b.onKeyUp.add(q(this, +this.onKeyUp)),b.onLeave.add(q(this,this.onWindowLeave)),b.onMinimize.add(q(this,this.onWindowMinimize)),b.onMouseDown.add(q(this,this.onMouseDown)),b.onMouseMove.add(q(this,this.onMouseMove)),b.onMouseMoveRelative.add(q(this,this.onMouseMoveRelative)),b.onMouseUp.add(q(this,this.onMouseUp)),b.onMouseWheel.add(q(this,this.onMouseWheel)),b.onMove.add(q(this,this.onWindowMove)),b.onRender.add(q(this,this.render)),b.onResize.add(q(this,this.onWindowResize)),b.onRestore.add(q(this,this.onWindowRestore)), +b.onTextEdit.add(q(this,this.onTextEdit)),b.onTextInput.add(q(this,this.onTextInput)),this.onWindowCreate());this.onCreateWindow.dispatch(b);return b},__class__:yf});var rb=function(a,b,c){null==c&&(c=!1);W.call(this);this.__bitmapData=a;this.pixelSnapping=b;this.smoothing=c;null==b&&(this.pixelSnapping=1)};h["openfl.display.Bitmap"]=rb;rb.__name__="openfl.display.Bitmap";rb.__super__=W;rb.prototype=p(W.prototype,{pixelSnapping:null,smoothing:null,__image:null,__bitmapData:null,__imageVersion:null, +__enterFrame:function(a){null==this.__bitmapData||null==this.__bitmapData.image||this.__bitmapData.image.version==this.__imageVersion||this.__renderDirty||(this.__renderDirty=!0,this.__setParentRenderDirty())},__getBounds:function(a,b){var c=qa.__pool.get();null!=this.__bitmapData?c.setTo(0,0,this.__bitmapData.width,this.__bitmapData.height):c.setTo(0,0,0,0);c.__transform(c,b);a.__expand(c.x,c.y,c.width,c.height);qa.__pool.release(c)},__hitTest:function(a,b,c,d,e,f){if(!f.get_visible()||this.__isMask|| +null==this.__bitmapData||null!=this.get_mask()&&!this.get_mask().__hitTestMask(a,b))return!1;this.__getRenderTransform();c=this.__renderTransform;var l=c.a*c.d-c.b*c.c;c=0==l?-c.tx:1/l*(c.c*(c.ty-b)+c.d*(a-c.tx));l=this.__renderTransform;var g=l.a*l.d-l.b*l.c;a=0==g?-l.ty:1/g*(l.a*(b-l.ty)+l.b*(l.tx-a));if(0=a.__getAlpha(this.__worldAlpha))){if(null!=this.opaqueBackground&&!this.__isCacheBitmapRender&&0>>16&255)+","+(c>>>8&255)+","+(c&255)+")";b.fillRect(0,0,this.get_width(),this.get_height());a.__popMaskObject(this)}if(null!=this.__graphics&&this.__renderable){var d=a.__getAlpha(this.__worldAlpha);if(!(0>=d)){var e=this.__graphics;if(null!=e){y.render(e,a);var f=e.__width,l=e.__height;b=e.__canvas;if(null!=b&&e.__visible&&1<=f&&1<=l){var g=e.__worldTransform;c=a.context;var m=this.__scrollRect,h=this.__worldScale9Grid;if(null==m||0=this.__worldAlpha)){if(null!=this.opaqueBackground&&!this.__isCacheBitmapRender&&0>>16&255)/255,(d>>> +8&255)/255,(d&255)/255,1,0,0,1);a.__popMaskRect();a.__popMaskObject(this);qa.__pool.release(c)}null!=this.__graphics&&de.render(this,a)}ce.render(this,a)}else ce.render(this.__cacheBitmap,a);this.__renderEvent(a)},__renderGLMask:function(a){ce.renderMask(this,a)},__updateCacheBitmap:function(a,b){return null==this.__bitmapData||null==this.__filters&&"opengl"==a.__type&&null==this.__cacheBitmap?!1:W.prototype.__updateCacheBitmap.call(this,a,null!=this.__bitmapData.image&&this.__bitmapData.image.version!= +this.__imageVersion)},get_bitmapData:function(){return this.__bitmapData},set_bitmapData:function(a){this.__bitmapData=a;this.smoothing=!1;this.__renderDirty||(this.__renderDirty=!0,this.__setParentRenderDirty());this.__imageVersion=-1;return this.__bitmapData},set_height:function(a){null!=this.__bitmapData?this.set_scaleY(a/this.__bitmapData.height):this.set_scaleY(0);return a},set_width:function(a){null!=this.__bitmapData?this.set_scaleX(a/this.__bitmapData.width):this.set_scaleX(0);return a},__class__:rb, +__properties__:p(W.prototype.__properties__,{set_bitmapData:"set_bitmapData",get_bitmapData:"get_bitmapData"})});var pc=function(){T.call(this);this.__allowSmoothing=!0;this.__tempColorTransform=new Xa;this.__worldAlpha=1};h["openfl.display.DisplayObjectRenderer"]=pc;pc.__name__="openfl.display.DisplayObjectRenderer";pc.__super__=T;pc.prototype=p(T.prototype,{__allowSmoothing:null,__blendMode:null,__cleared:null,__context:null,__overrideBlendMode:null,__roundPixels:null,__stage:null,__tempColorTransform:null, +__type:null,__worldAlpha:null,__worldColorTransform:null,__worldTransform:null,__clear:function(){},__getAlpha:function(a){return a*this.__worldAlpha},__popMaskObject:function(a,b){},__pushMaskObject:function(a,b){},__render:function(a){},__resize:function(a,b){},__setBlendMode:function(a){},__class__:pc});var jh=function(a){pc.call(this)};h["openfl.display.CairoRenderer"]=jh;jh.__name__="openfl.display.CairoRenderer";jh.__super__=pc;jh.prototype=p(pc.prototype,{cairo:null,__matrix:null,__matrix3:null, +applyMatrix:function(a,b){null==b&&(b=this.cairo);this.__matrix.copyFrom(a);this.cairo==b&&null!=this.__worldTransform&&this.__matrix.concat(this.__worldTransform);this.__matrix3.a=this.__matrix.a;this.__matrix3.b=this.__matrix.b;this.__matrix3.c=this.__matrix.c;this.__matrix3.d=this.__matrix.d;this.__roundPixels?(this.__matrix3.tx=Math.round(this.__matrix.tx),this.__matrix3.ty=Math.round(this.__matrix.ty)):(this.__matrix3.tx=this.__matrix.tx,this.__matrix3.ty=this.__matrix.ty);b.set_matrix(this.__matrix3)}, +__clear:function(){if(null!=this.cairo&&(this.cairo.identityMatrix(),null!=this.__stage&&this.__stage.__clearBeforeRender)){var a=this.__blendMode;this.__setBlendMode(10);this.cairo.setSourceRGB(this.__stage.__colorSplit[0],this.__stage.__colorSplit[1],this.__stage.__colorSplit[2]);this.cairo.paint();this.__setBlendMode(a)}},__popMask:function(){this.cairo.restore()},__popMaskObject:function(a,b){null==b&&(b=!0);a.__isCacheBitmapRender||null==a.__mask||this.__popMask();b&&null!=a.__scrollRect&&this.__popMaskRect()}, +__popMaskRect:function(){this.cairo.restore()},__pushMask:function(a){this.cairo.save();this.applyMatrix(a.__renderTransform,this.cairo);this.cairo.newPath();a.__renderCairoMask(this);this.cairo.clip()},__pushMaskObject:function(a,b){null==b&&(b=!0);b&&null!=a.__scrollRect&&this.__pushMaskRect(a.__scrollRect,a.__renderTransform);a.__isCacheBitmapRender||null==a.__mask||this.__pushMask(a.__mask)},__pushMaskRect:function(a,b){this.cairo.save();this.applyMatrix(b,this.cairo);this.cairo.newPath();this.cairo.rectangle(a.x, +a.y,a.width,a.height);this.cairo.clip()},__render:function(a){null!=this.cairo&&a.__renderCairo(this)},__setBlendMode:function(a){null!=this.__overrideBlendMode&&(a=this.__overrideBlendMode);this.__blendMode!=a&&(this.__blendMode=a,this.__setBlendModeCairo(this.cairo,a))},__setBlendModeCairo:function(a,b){switch(b){case 0:a.setOperator(12);break;case 2:a.setOperator(17);break;case 3:a.setOperator(23);break;case 5:a.setOperator(21);break;case 7:a.setOperator(2);break;case 8:a.setOperator(18);break; +case 9:a.setOperator(14);break;case 11:a.setOperator(16);break;case 12:a.setOperator(15);break;default:a.setOperator(2)}},__class__:jh});var Hd=function(a){this.pixelRatio=1;pc.call(this);this.context=a;this.__tempMatrix=new Aa;this.__type="canvas"};h["openfl.display.CanvasRenderer"]=Hd;Hd.__name__="openfl.display.CanvasRenderer";Hd.__super__=pc;Hd.prototype=p(pc.prototype,{context:null,pixelRatio:null,__isDOM:null,__tempMatrix:null,applySmoothing:function(a,b){a.imageSmoothingEnabled=b},setTransform:function(a, +b){null==b?b=this.context:this.context==b&&null!=this.__worldTransform&&(this.__tempMatrix.copyFrom(a),this.__tempMatrix.concat(this.__worldTransform),a=this.__tempMatrix);this.__roundPixels?b.setTransform(a.a,a.b,a.c,a.d,a.tx|0,a.ty|0):b.setTransform(a.a,a.b,a.c,a.d,a.tx,a.ty)},__clear:function(){if(null!=this.__stage){var a=this.__blendMode;this.__blendMode=null;this.__setBlendMode(10);this.context.setTransform(1,0,0,1,0,0);this.context.globalAlpha=1;!this.__stage.__transparent&&this.__stage.__clearBeforeRender? +(this.context.fillStyle=this.__stage.__colorString,this.context.fillRect(0,0,this.__stage.stageWidth*this.__stage.window.__scale,this.__stage.stageHeight*this.__stage.window.__scale)):this.__stage.__transparent&&this.__stage.__clearBeforeRender&&this.context.clearRect(0,0,this.__stage.stageWidth*this.__stage.window.__scale,this.__stage.stageHeight*this.__stage.window.__scale);this.__setBlendMode(a)}},__popMask:function(){this.context.restore()},__popMaskObject:function(a,b){null==b&&(b=!0);a.__isCacheBitmapRender|| +null==a.__mask||this.__popMask();b&&null!=a.__scrollRect&&this.__popMaskRect()},__popMaskRect:function(){this.context.restore()},__pushMask:function(a){this.context.save();this.setTransform(a.__renderTransform,this.context);this.context.beginPath();a.__renderCanvasMask(this);this.context.closePath();this.context.clip()},__pushMaskObject:function(a,b){null==b&&(b=!0);b&&null!=a.__scrollRect&&this.__pushMaskRect(a.__scrollRect,a.__renderTransform);a.__isCacheBitmapRender||null==a.__mask||this.__pushMask(a.__mask)}, +__pushMaskRect:function(a,b){this.context.save();this.setTransform(b,this.context);this.context.beginPath();this.context.rect(a.x,a.y,a.width,a.height);this.context.clip()},__render:function(a){a.__renderCanvas(this)},__setBlendMode:function(a){null!=this.__overrideBlendMode&&(a=this.__overrideBlendMode);this.__blendMode!=a&&(this.__blendMode=a,this.__setBlendModeContext(this.context,a))},__setBlendModeContext:function(a,b){switch(b){case 0:a.globalCompositeOperation="lighter";break;case 2:a.globalCompositeOperation= +"darken";break;case 3:a.globalCompositeOperation="difference";break;case 5:a.globalCompositeOperation="hard-light";break;case 8:a.globalCompositeOperation="lighten";break;case 9:a.globalCompositeOperation="multiply";break;case 11:a.globalCompositeOperation="overlay";break;case 12:a.globalCompositeOperation="screen";break;default:a.globalCompositeOperation="source-over"}},__class__:Hd});var Aj={};h["openfl.display._CapsStyle.CapsStyle_Impl_"]=Aj;Aj.__name__="openfl.display._CapsStyle.CapsStyle_Impl_"; +Aj.toString=function(a){switch(a){case 0:return"none";case 1:return"round";case 2:return"square";default:return null}};var pf=function(a){this.pixelRatio=1;pc.call(this);this.element=a;W.__supportDOM=!0;a=window.getComputedStyle(document.documentElement,"");a=(Array.prototype.slice.call(a).join("").match(/-(moz|webkit|ms)-/)||""===a.OLink&&["","o"])[1];"WebKit|Moz|MS|O".match(new RegExp("("+a+")","i"));a[0].toUpperCase();a.substr(1);this.__vendorPrefix=a;this.__transformProperty="webkit"==a?"-webkit-transform": +"transform";this.__transformOriginProperty="webkit"==a?"-webkit-transform-origin":"transform-origin";this.__clipRects=[];this.__z=this.__numClipRects=0;this.__type="dom";this.__canvasRenderer=new Hd(null);this.__canvasRenderer.__isDOM=!0};h["openfl.display.DOMRenderer"]=pf;pf.__name__="openfl.display.DOMRenderer";pf.__super__=pc;pf.prototype=p(pc.prototype,{element:null,pixelRatio:null,__canvasRenderer:null,__clipRects:null,__currentClipRect:null,__numClipRects:null,__transformOriginProperty:null, +__transformProperty:null,__vendorPrefix:null,__z:null,__applyStyle:function(a,b,c,d){var e=a.__style;if(b&&a.__renderTransformChanged){b=a.__renderTransform;var f=this.__roundPixels;null==f&&(f=!1);e.setProperty(this.__transformProperty,f?"matrix3d("+b.a+", "+b.b+", 0, 0, "+b.c+", "+b.d+", 0, 0, 0, 0, 1, 0, "+(b.tx|0)+", "+(b.ty|0)+", 0, 1)":"matrix3d("+b.a+", "+b.b+", 0, 0, "+b.c+", "+b.d+", 0, 0, 0, 0, 1, 0, "+b.tx+", "+b.ty+", 0, 1)",null)}a.__worldZ!=++this.__z&&(a.__worldZ=this.__z,e.setProperty("z-index", +null==a.__worldZ?"null":""+a.__worldZ,null));c&&a.__worldAlphaChanged&&(1>a.__worldAlpha?e.setProperty("opacity",null==a.__worldAlpha?"null":""+a.__worldAlpha,null):e.removeProperty("opacity"));d&&a.__worldClipChanged&&(null==a.__worldClip?e.removeProperty("clip"):(a=a.__worldClip,e.setProperty("clip","rect("+a.y+"px, "+a.get_right()+"px, "+a.get_bottom()+"px, "+a.x+"px)",null)))},__initializeElement:function(a,b){var c=a.__style=b.style;c.setProperty("position","absolute",null);c.setProperty("top", +"0",null);c.setProperty("left","0",null);c.setProperty(this.__transformOriginProperty,"0 0 0",null);this.element.appendChild(b);a.__worldAlphaChanged=!0;a.__renderTransformChanged=!0;a.__worldVisibleChanged=!0;a.__worldClipChanged=!0;a.__worldClip=null;a.__worldZ=-1},__popMask:function(){this.__popMaskRect()},__popMaskObject:function(a,b){null==b&&(b=!0);null!=a.__mask&&this.__popMask();b&&null!=a.__scrollRect&&this.__popMaskRect()},__popMaskRect:function(){0c.height&&(c.height=0);0>c.width&&(c.width=0);this.__currentClipRect=c;this.__numClipRects++},__render:function(a){this.element.style.background=this.__stage.__transparent?"none":this.__stage.__colorString;this.__z=1;a.__renderDOM(this)},__setBlendMode:function(a){null!=this.__overrideBlendMode&&(a=this.__overrideBlendMode);this.__blendMode!=a&&(this.__blendMode=a)},__updateClip:function(a){if(null== +this.__currentClipRect)a.__worldClipChanged=null!=a.__worldClip,a.__worldClip=null;else{null==a.__worldClip&&(a.__worldClip=new qa);var b=qa.__pool.get(),c=Aa.__pool.get();c.copyFrom(a.__renderTransform);c.invert();this.__currentClipRect.__transform(b,c);b.equals(a.__worldClip)?a.__worldClipChanged=!1:(a.__worldClip.copyFrom(b),a.__worldClipChanged=!0);qa.__pool.release(b);Aa.__pool.release(c)}},__class__:pf});var kh=function(a){null==this.__glFragmentSource&&(this.__glFragmentSource="varying float openfl_Alphav;\n\t\tvarying vec4 openfl_ColorMultiplierv;\n\t\tvarying vec4 openfl_ColorOffsetv;\n\t\tvarying vec2 openfl_TextureCoordv;\n\n\t\tuniform bool openfl_HasColorTransform;\n\t\tuniform sampler2D openfl_Texture;\n\t\tuniform vec2 openfl_TextureSize;\n\n\t\tvoid main(void) {\n\n\t\t\tvec4 color = texture2D (openfl_Texture, openfl_TextureCoordv);\n\n\t\tif (color.a == 0.0) {\n\n\t\t\tgl_FragColor = vec4 (0.0, 0.0, 0.0, 0.0);\n\n\t\t} else if (openfl_HasColorTransform) {\n\n\t\t\tcolor = vec4 (color.rgb / color.a, color.a);\n\n\t\t\tmat4 colorMultiplier = mat4 (0);\n\t\t\tcolorMultiplier[0][0] = openfl_ColorMultiplierv.x;\n\t\t\tcolorMultiplier[1][1] = openfl_ColorMultiplierv.y;\n\t\t\tcolorMultiplier[2][2] = openfl_ColorMultiplierv.z;\n\t\t\tcolorMultiplier[3][3] = 1.0; // openfl_ColorMultiplierv.w;\n\n\t\t\tcolor = clamp (openfl_ColorOffsetv + (color * colorMultiplier), 0.0, 1.0);\n\n\t\t\tif (color.a > 0.0) {\n\n\t\t\t\tgl_FragColor = vec4 (color.rgb * color.a * openfl_Alphav, color.a * openfl_Alphav);\n\n\t\t\t} else {\n\n\t\t\t\tgl_FragColor = vec4 (0.0, 0.0, 0.0, 0.0);\n\n\t\t\t}\n\n\t\t} else {\n\n\t\t\tgl_FragColor = color * openfl_Alphav;\n\n\t\t}\n\n\t\t}"); +null==this.__glVertexSource&&(this.__glVertexSource="attribute float openfl_Alpha;\n\t\tattribute vec4 openfl_ColorMultiplier;\n\t\tattribute vec4 openfl_ColorOffset;\n\t\tattribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\n\t\tvarying float openfl_Alphav;\n\t\tvarying vec4 openfl_ColorMultiplierv;\n\t\tvarying vec4 openfl_ColorOffsetv;\n\t\tvarying vec2 openfl_TextureCoordv;\n\n\t\tuniform mat4 openfl_Matrix;\n\t\tuniform bool openfl_HasColorTransform;\n\t\tuniform vec2 openfl_TextureSize;\n\n\t\tvoid main(void) {\n\n\t\t\topenfl_Alphav = openfl_Alpha;\n\t\topenfl_TextureCoordv = openfl_TextureCoord;\n\n\t\tif (openfl_HasColorTransform) {\n\n\t\t\topenfl_ColorMultiplierv = openfl_ColorMultiplier;\n\t\t\topenfl_ColorOffsetv = openfl_ColorOffset / 255.0;\n\n\t\t}\n\n\t\tgl_Position = openfl_Matrix * openfl_Position;\n\n\t\t}"); +sc.call(this,a);this.__isGenerated=!0;this.__initGL()};h["openfl.display.DisplayObjectShader"]=kh;kh.__name__="openfl.display.DisplayObjectShader";kh.__super__=sc;kh.prototype=p(sc.prototype,{openfl_Alpha:null,openfl_ColorMultiplier:null,openfl_ColorOffset:null,openfl_Position:null,openfl_TextureCoord:null,openfl_Matrix:null,openfl_HasColorTransform:null,openfl_TextureSize:null,openfl_Texture:null,__class__:kh});var lh=function(a,b){T.call(this);this.__name=a;this.__frame=b};h["openfl.display.FrameLabel"]= +lh;lh.__name__="openfl.display.FrameLabel";lh.__super__=T;lh.prototype=p(T.prototype,{__frame:null,__name:null,get_frame:function(){return this.__frame},get_name:function(){return this.__name},__class__:lh,__properties__:{get_name:"get_name",get_frame:"get_frame"}});var ic=function(a){this.__dirty=!0;this.__owner=a;this.__commands=new gc;this.__positionY=this.__positionX=this.__strokePadding=0;this.__renderTransform=new Aa;this.__usedShaderBuffers=new ia;this.__worldTransform=new Aa;this.__height= +this.__width=0;this.__shaderBufferPool=new fa(function(){return new gh});this.moveTo(0,0)};h["openfl.display.Graphics"]=ic;ic.__name__="openfl.display.Graphics";ic.prototype={__bounds:null,__commands:null,__dirty:null,__hardwareDirty:null,__height:null,__positionX:null,__positionY:null,__quadBuffer:null,__renderTransform:null,__shaderBufferPool:null,__softwareDirty:null,__strokePadding:null,__transformDirty:null,__triangleIndexBuffer:null,__triangleIndexBufferCount:null,__triangleIndexBufferData:null, +__usedShaderBuffers:null,__vertexBuffer:null,__vertexBufferCount:null,__vertexBufferCountUVT:null,__vertexBufferData:null,__vertexBufferDataUVT:null,__vertexBufferUVT:null,__visible:null,__owner:null,__width:null,__worldTransform:null,__canvas:null,__context:null,__bitmap:null,beginBitmapFill:function(a,b,c,d){null==d&&(d=!1);null==c&&(c=!0);this.__commands.beginBitmapFill(a,null!=b?b.clone():null,c,d);this.__visible=!0},beginFill:function(a,b){null==b&&(b=1);null==a&&(a=0);this.__commands.beginFill(a& +16777215,b);0this.__positionX||a>e&&athis.__positionX||c>e&&ck&&(l=this.__calculateBezierCubicPoint(k,this.__positionX,a,c,e));0m&&(g=this.__calculateBezierCubicPoint(m,this.__positionX,a,c,e))}m=k=f;if(!(bthis.__positionX||b>f&&bthis.__positionX||d>f&&dh&&(k=this.__calculateBezierCubicPoint(h,this.__positionX,b,d,f));0n&&(m=this.__calculateBezierCubicPoint(n,this.__positionX,b,d,f))}this.__inflateBounds(l-this.__strokePadding,k-this.__strokePadding);this.__inflateBounds(l+this.__strokePadding,k+this.__strokePadding);this.__inflateBounds(g-this.__strokePadding,m-this.__strokePadding);this.__inflateBounds(g+this.__strokePadding, +m+this.__strokePadding);this.__positionX=e;this.__positionY=f;this.__inflateBounds(this.__positionX-this.__strokePadding,this.__positionY-this.__strokePadding);this.__inflateBounds(this.__positionX+this.__strokePadding,this.__positionY+this.__strokePadding);this.__commands.cubicCurveTo(a,b,c,d,e,f);this.set___dirty(!0)},curveTo:function(a,b,c,d){this.__inflateBounds(this.__positionX-this.__strokePadding,this.__positionY-this.__strokePadding);this.__inflateBounds(this.__positionX+this.__strokePadding, +this.__positionY+this.__strokePadding);var e=athis.__positionX||a>c&&athis.__positionY||b>d&&b=c||(this.__inflateBounds(a-c-this.__strokePadding,b-c-this.__strokePadding),this.__inflateBounds(a+c+this.__strokePadding,b+c+this.__strokePadding),this.__commands.drawCircle(a,b,c),this.set___dirty(!0))},drawPath:function(a,b,c){null==c&&(c=0);var d=0;1==c&&this.__commands.windingNonZero();a=a.iterator();a:for(;a.hasNext();)switch(a.next()){case 1:this.moveTo(b.get(d),b.get(d+1));d+=2;break; +case 2:this.lineTo(b.get(d),b.get(d+1));d+=2;break;case 3:this.curveTo(b.get(d),b.get(d+1),b.get(d+2),b.get(d+3));d+=4;break;case 4:this.moveTo(b.get(d+2),b.get(d+3));break a;case 5:this.lineTo(b.get(d+2),b.get(d+3));break a;case 6:this.cubicCurveTo(b.get(d),b.get(d+1),b.get(d+2),b.get(d+3),b.get(d+4),b.get(d+5)),d+=6}},drawQuads:function(a,b,c){if(null!=a){var d=null!=b,e=!1,f=!1,l=d?b.get_length():Math.floor(a.get_length()/4);if(0!=l){null!=c&&(c.get_length()>=6*l?f=e=!0:c.get_length()>=4*l?e=!0: +c.get_length()>=2*l&&(f=!0));for(var g=qa.__pool.get(),m=Aa.__pool.get(),h=Infinity,n=Infinity,k=-Infinity,r=-Infinity,z,u=0;uz||(g.setTo(0,0,a.get(z+2),a.get(z+3)),0>=g.width||0>=g.height||(e&&f?(z=6*p,m.setTo(c.get(z),c.get(z+1),c.get(z+2),c.get(z+3),c.get(z+4),c.get(z+5))):e?(z=4*p,m.setTo(c.get(z),c.get(z+1),c.get(z+2),c.get(z+3),g.x,g.y)):f?(z=2*p,m.tx=c.get(z),m.ty=c.get(z+1)):(m.tx=g.x,m.ty=g.y),g.__transform(g,m),h>g.x&&(h=g.x),n>g.y&&(n=g.y),kc?-1:1,f=0>d?-1:1;this.__inflateBounds(a-this.__strokePadding*e,b-this.__strokePadding*f);this.__inflateBounds(a+c+this.__strokePadding*e,b+d+this.__strokePadding*f);this.__commands.drawRect(a,b,c,d);this.set___dirty(!0)}},drawTriangles:function(a, +b,c,d){null==d&&(d=1);if(null!=a&&0!=a.get_length()){var e=a.get_length()/2|0;if(null==b){if(0!=e%3)throw new F(new ve("Not enough vertices to close a triangle."));b=Da.toIntVector(null);for(var f=0;ff&&(l=f),m>g&&(m=g),hthis.__strokePadding&&(this.__strokePadding=a):a/2>this.__strokePadding&&(this.__strokePadding=a/2));this.__commands.lineStyle(a,b,c,d,e,f,l,g);null!=a&&(this.__visible=!0)},lineTo:function(a,b){isFinite(a)&&isFinite(b)&&(this.__inflateBounds(this.__positionX-this.__strokePadding,this.__positionY-this.__strokePadding),this.__inflateBounds(this.__positionX+ +this.__strokePadding,this.__positionY+this.__strokePadding),this.__positionX=a,this.__positionY=b,this.__inflateBounds(this.__positionX-this.__strokePadding,this.__positionY-this.__strokePadding),this.__inflateBounds(this.__positionX+2*this.__strokePadding,this.__positionY+this.__strokePadding),this.__commands.lineTo(a,b),this.set___dirty(!0))},moveTo:function(a,b){this.__positionX=a;this.__positionY=b;this.__commands.moveTo(a,b)},overrideBlendMode:function(a){null==a&&(a=10);this.__commands.overrideBlendMode(a)}, +__calculateBezierCubicPoint:function(a,b,c,d,e){var f=1-a;return b*f*f*f+3*c*a*f*f+3*d*f*a*a+e*a*a*a},__calculateBezierQuadPoint:function(a,b,c,d){var e=1-a;return e*e*b+2*e*a*c+a*a*d},__cleanup:function(){null!=this.__bounds&&null!=this.__canvas&&(this.set___dirty(!0),this.__transformDirty=!0);this.__context=this.__canvas=this.__bitmap=null},__getBounds:function(a,b){if(null!=this.__bounds){var c=qa.__pool.get();this.__bounds.__transform(c,b);a.__expand(c.x,c.y,c.width,c.height);qa.__pool.release(c)}}, +__hitTest:function(a,b,c,d){if(null==this.__bounds)return!1;var e=d.a*d.d-d.b*d.c;e=0==e?-d.tx:1/e*(d.c*(d.ty-b)+d.d*(a-d.tx));var f=d.a*d.d-d.b*d.c;a=0==f?-d.ty:1/f*(d.a*(b-d.ty)+d.b*(d.tx-a));return e>this.__bounds.x&&a>this.__bounds.y&&this.__bounds.contains(e,a)?c?y.hitTest(this,e,a):!0:!1},__inflateBounds:function(a,b){null==this.__bounds?(this.__bounds=new qa(a,b,0,0),this.__transformDirty=!0):(athis.__bounds.x+this.__bounds.width&&(this.__bounds.width=a-this.__bounds.x),b>this.__bounds.y+this.__bounds.height&&(this.__bounds.height=b-this.__bounds.y))},__update:function(a){if(!(null==this.__bounds||0>=this.__bounds.width||0>=this.__bounds.height)){var b=this.__owner.__renderTransform;if(null!=b){var c=0==b.b?Math.abs(b.a):Math.sqrt(b.a*b.a+b.b*b.b);var d=0==b.c?Math.abs(b.d):Math.sqrt(b.c* +b.c+b.d*b.d);null!=a&&(c=0==a.b?c*a.a:c*Math.sqrt(a.a*a.a+a.b*a.b),d=0==a.c?d*a.d:d*Math.sqrt(a.c*a.c+a.d*a.d));a=this.__bounds.width*c;d*=this.__bounds.height;if(1>a||1>d)(1<=this.__width||1<=this.__height)&&this.set___dirty(!0),this.__height=this.__width=0;else{null!=ic.maxTextureWidth&&a>ic.maxTextureWidth&&(a=ic.maxTextureWidth);null!=ic.maxTextureWidth&&d>ic.maxTextureHeight&&(d=ic.maxTextureHeight);this.__renderTransform.a=a/this.__bounds.width;this.__renderTransform.d=d/this.__bounds.height; +c=1/this.__renderTransform.a;var e=1/this.__renderTransform.d;this.__worldTransform.a=c*b.a;this.__worldTransform.b=c*b.b;this.__worldTransform.c=e*b.c;this.__worldTransform.d=e*b.d;e=this.__bounds.x;var f=this.__bounds.y;c=e*b.a+f*b.c+b.tx;b=e*b.b+f*b.d+b.ty;this.__worldTransform.tx=Math.floor(c);this.__worldTransform.ty=Math.floor(b);e=this.__worldTransform;f=e.a*e.d-e.b*e.c;this.__renderTransform.tx=0==f?-e.tx:1/f*(e.c*(e.ty-b)+e.d*(c-e.tx));e=this.__worldTransform;f=e.a*e.d-e.b*e.c;this.__renderTransform.ty= +0==f?-e.ty:1/f*(e.a*(b-e.ty)+e.b*(e.tx-c));a=Math.ceil(a+1);d=Math.ceil(d+1);a==this.__width&&d==this.__height||this.set___dirty(!0);this.__width=a;this.__height=d}}}},set___dirty:function(a){if(a&&null!=this.__owner){var b=this.__owner;b.__renderDirty||(b.__renderDirty=!0,b.__setParentRenderDirty())}a&&(this.__hardwareDirty=this.__softwareDirty=!0);return this.__dirty=a},__class__:ic,__properties__:{set___dirty:"set___dirty"}};var zj={};h["openfl.display._JointStyle.JointStyle_Impl_"]=zj;zj.__name__= +"openfl.display._JointStyle.JointStyle_Impl_";zj.toString=function(a){switch(a){case 0:return"bevel";case 1:return"miter";case 2:return"round";default:return null}};var Qi=function(){ua.call(this);this.contentLoaderInfo=Pd.create(this);this.uncaughtErrorEvents=this.contentLoaderInfo.uncaughtErrorEvents;this.__unloaded=!0};h["openfl.display.Loader"]=Qi;Qi.__name__="openfl.display.Loader";Qi.__super__=ua;Qi.prototype=p(ua.prototype,{contentLoaderInfo:null,uncaughtErrorEvents:null,__unloaded:null,__class__:Qi}); +var Pd=function(){T.call(this);this.applicationDomain=qf.currentDomain;this.bytesTotal=this.bytesLoaded=0;this.childAllowsParent=!0;this.parameters={}};h["openfl.display.LoaderInfo"]=Pd;Pd.__name__="openfl.display.LoaderInfo";Pd.create=function(a){var b=new Pd;b.uncaughtErrorEvents=new mh;null!=a?b.loader=a:b.url=Pd.__rootURL;return b};Pd.__super__=T;Pd.prototype=p(T.prototype,{applicationDomain:null,bytesLoaded:null,bytesTotal:null,childAllowsParent:null,content:null,loader:null,parameters:null, +uncaughtErrorEvents:null,url:null,__completed:null,__complete:function(){this.__completed||(this.bytesLoadedthis.__totalFrames||(this.__playing=!0,this.__frameTime=1E3/this.__swf.frameRate|0,this.__timeElapsed=0)},__enterFrame:function(a){this.__updateFrameScript(a);this.__updateSymbol(this.__currentFrame);ka.prototype.__enterFrame.call(this, +a)},__updateFrameScript:function(a){if(null!=this.__symbol&&this.__playing){var b=this.__getNextFrame(a);if(this.__lastFrameScriptEval==b)ka.prototype.__enterFrame.call(this,a);else if(null!=this.__frameScripts){if(bm.depth&&b<=m.clipDepth){c.set_mask(m.displayObject);l=!0;break}0a&&(a=1);a>this.__totalFrames&&(a=Math.floor((a-1)%this.__totalFrames)+1);this.__timeElapsed%=this.__frameTime;return a},__goto:function(a){null!=this.__symbol&&(1>a?a=1:a>this.__totalFrames&&(a=this.__totalFrames),this.__currentFrame=a,this.__enterFrame(0))},__resolveFrameReference:function(a){if("number"==typeof a&&(a|0)===a)return a;if("string"==typeof a){for(var b=0,c=this.__currentLabels;bc.a&&.999c.d&&.999b.height&&(b.height=0);0>b.width&&(b.width=0);Aa.__pool.release(c);this.__scissorRect(b);this.__numClipRects++},__render:function(a){this.__context3D.setColorMask(!0,!0,!0,!0);this.__context3D.setCulling(3);this.__context3D.setDepthTest(!1,0);this.__context3D.setStencilActions();this.__context3D.setStencilReferenceValue(0,0,0);this.__context3D.setScissorRectangle(null);this.__blendMode=null;this.__setBlendMode(10);if(null==this.__defaultRenderTarget){if(Pa.__scissorRectangle.setTo(this.__offsetX, +this.__offsetY,this.__displayWidth,this.__displayHeight),this.__context3D.setScissorRectangle(Pa.__scissorRectangle),this.__upscaled=1!=this.__worldTransform.a||1!=this.__worldTransform.d,a.__renderGL(this),0d&&(d=0);0>a&&(a=0);Pa.__scissorRectangle.setTo(b,c,d,a);this.__context3D.setScissorRectangle(Pa.__scissorRectangle)}else this.__context3D.setScissorRectangle(null)},__setBlendMode:function(a){null!=this.__overrideBlendMode&&(a=this.__overrideBlendMode);if(this.__blendMode!=a)switch(this.__blendMode=a,a){case 0:this.__context3D.setBlendFactors(2,2);break;case 9:this.__context3D.setBlendFactors(1,5);break;case 12:this.__context3D.setBlendFactors(2,6); +break;case 14:this.__context3D.setBlendFactors(2,2);this.__context3D.__setGLBlendEquation(this.__gl.FUNC_REVERSE_SUBTRACT);break;default:this.__context3D.setBlendFactors(2,5)}},__setRenderTarget:function(a){this.__defaultRenderTarget=a;this.__flipped=null==a;null!=a&&this.__resize(a.width,a.height)},__setShaderBuffer:function(a){this.setShader(a.shader);this.__currentShaderBuffer=a},__suspendClipAndMask:function(){0.299*(a>>16&255)+.587*(a>>8&255)+.114*(a&255)&&(b=16777215);a=this.getHeight()/2-3.5;var c=this.getWidth()-60;this.outline= +new ka;this.outline.get_graphics().beginFill(b,.07);this.outline.get_graphics().drawRect(0,0,c,7);this.outline.set_x(30);this.outline.set_y(a);this.outline.set_alpha(0);this.addChild(this.outline);this.progress=new ka;this.progress.get_graphics().beginFill(b,.35);this.progress.get_graphics().drawRect(0,0,c-4,3);this.progress.set_x(32);this.progress.set_y(a+2);this.progress.set_scaleX(0);this.progress.set_alpha(0);this.addChild(this.progress);this.startAnimation=ma.getTimer()+100;this.endAnimation= +this.startAnimation+1E3;this.addEventListener("addedToStage",q(this,this.this_onAddedToStage))};h["openfl.display.DefaultPreloader"]=oh;oh.__name__="openfl.display.DefaultPreloader";oh.__super__=ka;oh.prototype=p(ka.prototype,{endAnimation:null,outline:null,progress:null,startAnimation:null,getBackgroundColor:function(){var a=ma.get_current().stage.window.context.attributes;return Object.prototype.hasOwnProperty.call(a,"background")&&null!=a.background?a.background:0},getHeight:function(){var a=ma.get_current().stage.window.__height; +return 0a&&(a=0);1=this.__length)switch(this.type){case 0:a.uniform1i(this.index,c[0]?1:0);break;case 1:a.uniform2i(this.index,c[0]?1:0,c[1]?1:0);break;case 2:a.uniform3i(this.index,c[0]?1:0,c[1]?1:0,c[2]?1:0);break;case 3:a.uniform4i(this.index,c[0]?1:0,c[1]?1:0,c[2]?1:0,c[3]?1:0);break;case 4:a.uniform1f(this.index,d[0]);break;case 5:a.uniform2f(this.index,d[0],d[1]);break;case 6:a.uniform3f(this.index,d[0],d[1],d[2]);break; +case 7:a.uniform4f(this.index,d[0],d[1],d[2],d[3]);break;case 8:a.uniform1i(this.index,e[0]);break;case 9:a.uniform2i(this.index,e[0],e[1]);break;case 10:a.uniform3i(this.index,e[0],e[1],e[2]);break;case 11:a.uniform4i(this.index,e[0],e[1],e[2],e[3]);break;case 12:this.__uniformMatrix[0]=d[0];this.__uniformMatrix[1]=d[1];this.__uniformMatrix[2]=d[2];this.__uniformMatrix[3]=d[3];qb.uniformMatrix2fv(a,this.index,!1,this.__uniformMatrix);break;case 16:this.__uniformMatrix[0]=d[0];this.__uniformMatrix[1]= +d[1];this.__uniformMatrix[2]=d[2];this.__uniformMatrix[3]=d[3];this.__uniformMatrix[4]=d[4];this.__uniformMatrix[5]=d[5];this.__uniformMatrix[6]=d[6];this.__uniformMatrix[7]=d[7];this.__uniformMatrix[8]=d[8];qb.uniformMatrix3fv(a,this.index,!1,this.__uniformMatrix);break;case 20:this.__uniformMatrix[0]=d[0],this.__uniformMatrix[1]=d[1],this.__uniformMatrix[2]=d[2],this.__uniformMatrix[3]=d[3],this.__uniformMatrix[4]=d[4],this.__uniformMatrix[5]=d[5],this.__uniformMatrix[6]=d[6],this.__uniformMatrix[7]= +d[7],this.__uniformMatrix[8]=d[8],this.__uniformMatrix[9]=d[9],this.__uniformMatrix[10]=d[10],this.__uniformMatrix[11]=d[11],this.__uniformMatrix[12]=d[12],this.__uniformMatrix[13]=d[13],this.__uniformMatrix[14]=d[14],this.__uniformMatrix[15]=d[15],qb.uniformMatrix4fv(a,this.index,!1,this.__uniformMatrix)}else switch(this.type){case 1:case 9:a.uniform2i(this.index,0,0);break;case 3:case 11:a.uniform4i(this.index,0,0,0,0);break;case 4:a.uniform1f(this.index,0);break;case 5:a.uniform2f(this.index,0, +0);break;case 6:a.uniform3f(this.index,0,0,0);break;case 7:a.uniform4f(this.index,0,0,0,0);break;case 0:case 8:a.uniform1i(this.index,0);break;case 2:case 10:a.uniform3i(this.index,0,0,0);break;case 12:this.__uniformMatrix[0]=0;this.__uniformMatrix[1]=0;this.__uniformMatrix[2]=0;this.__uniformMatrix[3]=0;qb.uniformMatrix2fv(a,this.index,!1,this.__uniformMatrix);break;case 16:this.__uniformMatrix[0]=0;this.__uniformMatrix[1]=0;this.__uniformMatrix[2]=0;this.__uniformMatrix[3]=0;this.__uniformMatrix[4]= +0;this.__uniformMatrix[5]=0;this.__uniformMatrix[6]=0;this.__uniformMatrix[7]=0;this.__uniformMatrix[8]=0;qb.uniformMatrix3fv(a,this.index,!1,this.__uniformMatrix);break;case 20:this.__uniformMatrix[0]=0,this.__uniformMatrix[1]=0,this.__uniformMatrix[2]=0,this.__uniformMatrix[3]=0,this.__uniformMatrix[4]=0,this.__uniformMatrix[5]=0,this.__uniformMatrix[6]=0,this.__uniformMatrix[7]=0,this.__uniformMatrix[8]=0,this.__uniformMatrix[9]=0,this.__uniformMatrix[10]=0,this.__uniformMatrix[11]=0,this.__uniformMatrix[12]= +0,this.__uniformMatrix[13]=0,this.__uniformMatrix[14]=0,this.__uniformMatrix[15]=0,qb.uniformMatrix4fv(a,this.index,!1,this.__uniformMatrix)}else if(this.__useArray||null!=b&&b.length!=this.__length)for(b=0,c=this.__arrayLength;b=this.__length)switch(this.type){case 1:case 9:a.uniform2i(this.index,b[c]|0,b[c+1]|0);break;case 3:case 11:a.uniform4i(this.index,b[c]|0,b[c+1]|0,b[c+2]|0,b[c+3]|0);break;case 4:a.uniform1f(this.index,b[c]);break;case 5:a.uniform2f(this.index,b[c],b[c+1]);break; +case 6:a.uniform3f(this.index,b[c],b[c+1],b[c+2]);break;case 7:a.uniform4f(this.index,b[c],b[c+1],b[c+2],b[c+3]);break;case 0:case 8:a.uniform1i(this.index,b[c]|0);break;case 2:case 10:a.uniform3i(this.index,b[c]|0,b[c+1]|0,b[c+2]|0);break;case 12:this.__uniformMatrix[0]=b[c];this.__uniformMatrix[1]=b[c+1];this.__uniformMatrix[2]=b[c+2];this.__uniformMatrix[3]=b[c+3];qb.uniformMatrix2fv(a,this.index,!1,this.__uniformMatrix);break;case 16:this.__uniformMatrix[0]=b[c];this.__uniformMatrix[1]=b[c+1]; +this.__uniformMatrix[2]=b[c+2];this.__uniformMatrix[3]=b[c+3];this.__uniformMatrix[4]=b[c+4];this.__uniformMatrix[5]=b[c+5];this.__uniformMatrix[6]=b[c+6];this.__uniformMatrix[7]=b[c+7];this.__uniformMatrix[8]=b[c+8];qb.uniformMatrix3fv(a,this.index,!1,this.__uniformMatrix);break;case 20:this.__uniformMatrix[0]=b[c],this.__uniformMatrix[1]=b[c+1],this.__uniformMatrix[2]=b[c+2],this.__uniformMatrix[3]=b[c+3],this.__uniformMatrix[4]=b[c+4],this.__uniformMatrix[5]=b[c+5],this.__uniformMatrix[6]=b[c+ +6],this.__uniformMatrix[7]=b[c+7],this.__uniformMatrix[8]=b[c+8],this.__uniformMatrix[9]=b[c+9],this.__uniformMatrix[10]=b[c+10],this.__uniformMatrix[11]=b[c+11],this.__uniformMatrix[12]=b[c+12],this.__uniformMatrix[13]=b[c+13],this.__uniformMatrix[14]=b[c+14],this.__uniformMatrix[15]=b[c+15],qb.uniformMatrix4fv(a,this.index,!1,this.__uniformMatrix)}}else if(this.__internal||0!=d&&d!=this.__length){b=a.FLOAT;this.__isBool?b=a.INT:this.__isInt&&(b=a.INT);for(var f=0,l=this.__arrayLength;f=this.__worldAlpha||null==this.__currentState||(a.__pushMaskObject(this),this.__currentState.__renderCairo(a), +a.__popMaskObject(this),this.__renderEvent(a))},__renderCairoMask:function(a){this.__currentState.__renderCairoMask(a)},__renderCanvas:function(a){!this.__renderable||0>=this.__worldAlpha||null==this.__currentState||(a.__pushMaskObject(this),this.__currentState.__renderCanvas(a),a.__popMaskObject(this),this.__renderEvent(a))},__renderCanvasMask:function(a){this.__currentState.__renderCanvasMask(a)},__renderDOM:function(a){a.__pushMaskObject(this);for(var b=this.__previousStates.iterator();b.hasNext();)b.next().__renderDOM(a); +this.__previousStates.set_length(0);null!=this.__currentState&&(this.__currentState.stage!=this.stage&&this.__currentState.__setStageReference(this.stage),this.__currentState.__renderDOM(a));a.__popMaskObject(this);this.__renderEvent(a)},__renderGL:function(a){!this.__renderable||0>=this.__worldAlpha||null==this.__currentState||(a.__pushMaskObject(this),this.__currentState.__renderGL(a),a.__popMaskObject(this),this.__renderEvent(a))},__renderGLMask:function(a){null!=this.__currentState&&this.__currentState.__renderGLMask(a)}, +__setStageReference:function(a){U.prototype.__setStageReference.call(this,a);null!=this.__currentState&&this.__currentState.__setStageReference(a);null!=this.get_hitTestState()&&this.get_hitTestState()!=this.__currentState&&this.get_hitTestState().__setStageReference(a)},__setTransformDirty:function(){U.prototype.__setTransformDirty.call(this);null!=this.__currentState&&this.__currentState.__setTransformDirty();null!=this.get_hitTestState()&&this.get_hitTestState()!=this.__currentState&&this.get_hitTestState().__setTransformDirty()}, +__update:function(a,b){U.prototype.__update.call(this,a,b);b&&(null!=this.__currentState&&this.__currentState.__update(a,!0),null!=this.get_hitTestState()&&this.get_hitTestState()!=this.__currentState&&this.get_hitTestState().__update(a,!0))},__updateTransforms:function(a){U.prototype.__updateTransforms.call(this,a);null!=this.__currentState&&this.__currentState.__updateTransforms();null!=this.get_hitTestState()&&this.get_hitTestState()!=this.__currentState&&this.get_hitTestState().__updateTransforms()}, +get_downState:function(){return this.__downState},set_downState:function(a){null!=this.__downState&&this.__currentState==this.__downState&&this.set___currentState(this.__downState);return this.__downState=a},get_hitTestState:function(){return this.__hitTestState},set_hitTestState:function(a){null!=this.__hitTestState&&this.__hitTestState!=a&&this.__hitTestState!=this.get_downState()&&this.__hitTestState!=this.get_upState()&&this.__hitTestState!=this.get_overState()&&(this.__hitTestState.__renderParent= +null);null!=a&&(a.__renderParent=this,a.__renderDirty||(a.__renderDirty=!0,a.__setParentRenderDirty()));return this.__hitTestState=a},get_overState:function(){return this.__overState},set_overState:function(a){null!=this.__overState&&this.__currentState==this.__overState&&this.set___currentState(a);return this.__overState=a},get_upState:function(){return this.__upState},set_upState:function(a){null!=this.__upState&&this.__currentState==this.__upState&&this.set___currentState(a);return this.__upState= +a},set___currentState:function(a){null!=this.__currentState&&this.__currentState!=this.get_hitTestState()&&(this.__currentState.__renderParent=null);null!=a&&null!=a.parent&&a.parent.removeChild(a);W.__supportDOM&&null==this.__previousStates&&(this.__previousStates=Da.toObjectVector(null));if(a!=this.__currentState){if(W.__supportDOM){null!=this.__currentState&&(this.__currentState.__setStageReference(null),this.__previousStates.push(this.__currentState));var b=this.__previousStates.indexOf(a,0); +-1this.__dragBounds.get_right()&&(b=this.__dragBounds.get_right()),athis.__dragBounds.get_bottom()&&(a=this.__dragBounds.get_bottom()));this.__dragObject.set_x(b);this.__dragObject.set_y(a)},__getInteractive:function(a){null!=a&&a.push(this);return!0},__globalToLocal:function(a,b){a!=b&&b.copyFrom(a);return b},__handleError:function(a){var b=new sf("uncaughtError",!0,!0,a);try{ma.get_current().__loaderInfo.uncaughtErrorEvents.dispatchEvent(b)}catch(e){Ja.lastException= +e}if(!b.__preventDefault){try{var c=Ja.lastException;if(null!=c&&Object.prototype.hasOwnProperty.call(c,"stack")&&null!=c.stack&&""!=c.stack)console.log(c.stack),a.stack=c.stack;else{var d=Ja.toString(Ja.callStack());console.log(d)}}catch(e){Ja.lastException=e}throw a;}},__onKey:function(a,b,c){this.__dispatchPendingMouseEvent();$a.__altKey=db.get_altKey(c);$a.__commandKey=db.get_metaKey(c);$a.__ctrlKey=db.get_ctrlKey(c);$a.__shiftKey=db.get_shiftKey(c);var d=[];null==this.__focus?this.__getInteractive(d): +this.__focus.__getInteractive(d);if(0e?0:e+b):e=this.__currentTabOrderIndex}else 1==d.length&&(a=d[0],this.get_focus()==a&&(a=null));1==d.length||0==d.length&&null!=this.get_focus()?e=0:1e&&(e+=d.length),e%=d.length,a=d[e],a==this.get_focus()&&(e+=b,0>e&&(e+=d.length),e%=d.length,a=d[e]));b=null;null!=this.get_focus()&&(b=new ae("keyFocusChange",!0,!0,a,db.get_shiftKey(c),0),d=[],this.get_focus().__getInteractive(d),d.reverse(),this.__dispatchStack(b, +d));null!=b&&b.isDefaultPrevented()||(this.__currentTabOrderIndex=e,null!=a&&this.set_focus(a))}}},__onLimeCreateWindow:function(a){if(this.window==a){var b=q(this,this.__onLimeWindowActivate);a.onActivate.add(function(){b(a)});var c=q(this,this.__onLimeWindowClose);a.onClose.add(function(){c(a)},!1,-9E3);var d=q(this,this.__onLimeWindowDeactivate);a.onDeactivate.add(function(){d(a)});var e=q(this,this.__onLimeWindowDropFile);a.onDropFile.add(function(b){e(a,b)});var f=q(this,this.__onLimeWindowEnter); +a.onEnter.add(function(){f(a)});var l=q(this,this.__onLimeWindowExpose);a.onExpose.add(function(){l(a)});var g=q(this,this.__onLimeWindowFocusIn);a.onFocusIn.add(function(){g(a)});var m=q(this,this.__onLimeWindowFocusOut);a.onFocusOut.add(function(){m(a)});var h=q(this,this.__onLimeWindowFullscreen);a.onFullscreen.add(function(){h(a)});var n=q(this,this.__onLimeKeyDown);a.onKeyDown.add(function(b,c){n(a,b,c)});var k=q(this,this.__onLimeKeyUp);a.onKeyUp.add(function(b,c){k(a,b,c)});var r=q(this,this.__onLimeWindowLeave); +a.onLeave.add(function(){r(a)});var z=q(this,this.__onLimeWindowMinimize);a.onMinimize.add(function(){z(a)});var p=q(this,this.__onLimeMouseDown);a.onMouseDown.add(function(b,c,d){p(a,b,c,d)});var u=q(this,this.__onLimeMouseMove);a.onMouseMove.add(function(b,c){u(a,b,c)});var B=q(this,this.__onLimeMouseMoveRelative);a.onMouseMoveRelative.add(function(b,c){B(a,b,c)});var A=q(this,this.__onLimeMouseUp);a.onMouseUp.add(function(b,c,d){A(a,b,c,d)});var t=q(this,this.__onLimeMouseWheel);a.onMouseWheel.add(function(b, +c,d){t(a,b,c,d)});var Q=q(this,this.__onLimeWindowMove);a.onMove.add(function(b,c){Q(a,b,c)});a.onRender.add(q(this,this.__onLimeRender));a.onRenderContextLost.add(q(this,this.__onLimeRenderContextLost));a.onRenderContextRestored.add(q(this,this.__onLimeRenderContextRestored));var y=q(this,this.__onLimeWindowResize);a.onResize.add(function(b,c){y(a,b,c)});var x=q(this,this.__onLimeWindowRestore);a.onRestore.add(function(){x(a)});var N=q(this,this.__onLimeTextEdit);a.onTextEdit.add(function(b,c,d){N(a, +b,c,d)});var K=q(this,this.__onLimeTextInput);a.onTextInput.add(function(b){K(a,b)});this.__onLimeWindowCreate(a)}},__onLimeGamepadAxisMove:function(a,b,c){try{Ra.__onGamepadAxisMove(a,b,c)}catch(d){Ja.lastException=d,this.__handleError(d instanceof F?d.val:d)}},__onLimeGamepadButtonDown:function(a,b){try{Ra.__onGamepadButtonDown(a,b)}catch(c){Ja.lastException=c,this.__handleError(c instanceof F?c.val:c)}},__onLimeGamepadButtonUp:function(a,b){try{Ra.__onGamepadButtonUp(a,b)}catch(c){Ja.lastException= +c,this.__handleError(c instanceof F?c.val:c)}},__onLimeGamepadConnect:function(a){try{Ra.__onGamepadConnect(a)}catch(f){Ja.lastException=f,this.__handleError(f instanceof F?f.val:f)}var b=q(this,this.__onLimeGamepadAxisMove);a.onAxisMove.add(function(c,d){b(a,c,d)});var c=q(this,this.__onLimeGamepadButtonDown);a.onButtonDown.add(function(b){c(a,b)});var d=q(this,this.__onLimeGamepadButtonUp);a.onButtonUp.add(function(b){d(a,b)});var e=q(this,this.__onLimeGamepadDisconnect);a.onDisconnect.add(function(){e(a)})}, +__onLimeGamepadDisconnect:function(a){try{Ra.__onGamepadDisconnect(a)}catch(b){Ja.lastException=b,this.__handleError(b instanceof F?b.val:b)}},__onLimeKeyDown:function(a,b,c){null!=this.window&&this.window==a&&this.__onKey("keyDown",b,c)},__onLimeKeyUp:function(a,b,c){null!=this.window&&this.window==a&&this.__onKey("keyUp",b,c)},__onLimeModuleExit:function(a){null!=this.window&&(a=new S("deactivate"),this.__broadcastEvent(a))},__onLimeMouseDown:function(a,b,c,d){if(null!=this.window&&this.window== +a){this.__dispatchPendingMouseEvent();switch(d){case 1:var e="middleMouseDown";break;case 2:e="rightMouseDown";break;default:e="mouseDown"}this.__onMouse(e,b*a.__scale|0,c*a.__scale|0,d);this.showDefaultContextMenu||2!=d||a.onMouseDown.cancel()}},__onLimeMouseMove:function(a,b,c){null!=this.window&&this.window==a&&(this.__pendingMouseEvent=!0,this.__pendingMouseX=b*a.__scale|0,this.__pendingMouseY=c*a.__scale|0)},__onLimeMouseMoveRelative:function(a,b,c){},__onLimeMouseUp:function(a,b,c,d){if(null!= +this.window&&this.window==a){this.__dispatchPendingMouseEvent();switch(d){case 1:var e="middleMouseUp";break;case 2:e="rightMouseUp";break;default:e="mouseUp"}this.__onMouse(e,b*a.__scale|0,c*a.__scale|0,d);this.showDefaultContextMenu||2!=d||a.onMouseUp.cancel()}},__onLimeMouseWheel:function(a,b,c,d){null!=this.window&&this.window==a&&(this.__dispatchPendingMouseEvent(),d==ri.PIXELS?this.__onMouseWheel(b*a.__scale|0,c*a.__scale|0,d):this.__onMouseWheel(b|0,c|0,d))},__onLimeRender:function(a){if(!this.__rendering){this.__rendering= +!0;this.__broadcastEvent(new S("enterFrame"));this.__broadcastEvent(new S("frameConstructed"));this.__broadcastEvent(new S("exitFrame"));this.__renderable=!0;this.__enterFrame(this.__deltaTime);this.__deltaTime=0;a=null!=this.__renderer&&(this.__renderDirty||this.__forceRender);if(this.__invalidated&&a){this.__invalidated=!1;var b=new S("render");this.__broadcastEvent(b)}this.__update(!1,!0);if(null!=this.__renderer){if(null!=this.context3D){for(b=this.stage3Ds.iterator();b.hasNext();){var c=b.next(); +this.context3D.__renderStage3D(c)}this.context3D.__present&&(a=!0)}a?(null==this.context3D&&this.__renderer.__clear(),this.__renderer.__render(this)):null==this.context3D&&this.window.onRender.cancel();null!=this.context3D&&(this.context3D.__present?(this.__renderer.__cleared||this.__renderer.__clear(),this.context3D.__present=!1,this.context3D.__cleared=!1):this.window.onRender.cancel());this.__renderer.__cleared=!1}this.__rendering=!1}},__onLimeRenderContextLost:function(){this.context3D=this.__renderer= +null;for(var a=this.stage3Ds.iterator();a.hasNext();)a.next().__lostContext()},__onLimeRenderContextRestored:function(a){this.__createRenderer();for(a=this.stage3Ds.iterator();a.hasNext();)a.next().__restoreContext()},__onLimeTextEdit:function(a,b,c,d){},__onLimeTextInput:function(a,b){if(null!=this.window&&this.window==a){var c=[];null==this.__focus?this.__getInteractive(c):this.__focus.__getInteractive(c);b=new jd("textInput",!0,!0,b);0a-this.__lastClickTime?(g=$a.__create("doubleClick",d,this.__mouseX,this.__mouseY,f.__globalToLocal(e,b),f),this.__dispatchStack(g,c),this.__lastClickTime=0):this.__lastClickTime= +a));if("auto"==Fb.__cursor&&!Fb.__hidden){l=null;if(null!=this.__mouseDownLeft)l=this.__mouseDownLeft.__getCursor();else for(a=0;a>>16)/255,this.__colorSplit[1]=((a&65280)>>>8)/255,this.__colorSplit[2]=(a&255)/255,this.__colorString="#"+da.hex(a&16777215,6),this.__renderDirty=!0,this.__color=-16777216|a&16777215);return a},get_focus:function(){return this.__focus},set_focus:function(a){if(a!=this.__focus){var b=this.__focus;this.__cacheFocus=this.__focus=a;if(null!=b){var c=new ae("focusOut",!0,!1,a,!1,0),d=[];b.__getInteractive(d);d.reverse();this.__dispatchStack(c,d)}null!= +a&&(b=new ae("focusIn",!0,!1,b,!1,0),c=[],a.__getInteractive(c),c.reverse(),this.__dispatchStack(b,c))}return a},set_frameRate:function(a){return null!=this.window?this.window.__backend.setFrameRate(a):a},get_fullScreenSourceRect:function(){return null==this.__fullScreenSourceRect?null:this.__fullScreenSourceRect.clone()},set_height:function(a){return this.get_height()},get_mouseX:function(){return this.__mouseX},get_mouseY:function(){return this.__mouseY},get_quality:function(){return this.__quality}, +set_rotation:function(a){return 0},set_scaleMode:function(a){return this.__scaleMode=a},set_scaleX:function(a){return 0},set_scaleY:function(a){return 0},get_tabEnabled:function(){return!1},get_tabIndex:function(){return-1},set_transform:function(a){return this.get_transform()},set_width:function(a){return this.get_width()},set_x:function(a){return 0},set_y:function(a){return 0},__class__:rf,__properties__:p(ua.prototype.__properties__,{set_scaleMode:"set_scaleMode",get_quality:"get_quality",get_fullScreenSourceRect:"get_fullScreenSourceRect", +set_frameRate:"set_frameRate",set_focus:"set_focus",get_focus:"get_focus",set_color:"set_color"})});var Ne=function(a){T.call(this);this.__stage=a;this.__height=0;this.__projectionTransform=new ph;this.__renderTransform=new ph;this.__y=this.__x=this.__width=0;this.visible=!0;0\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)},__class__:Qa});var qh={};h["openfl.display3D._Context3DBufferUsage.Context3DBufferUsage_Impl_"]=qh;qh.__name__="openfl.display3D._Context3DBufferUsage.Context3DBufferUsage_Impl_";qh.fromString=function(a){switch(a){case "dynamicDraw":return 0;case "staticDraw":return 1; +default:return null}};qh.toString=function(a){switch(a){case 0:return"dynamicDraw";case 1:return"staticDraw";default:return null}};var Vi={};h["openfl.display3D._Context3DProgramType.Context3DProgramType_Impl_"]=Vi;Vi.__name__="openfl.display3D._Context3DProgramType.Context3DProgramType_Impl_";Vi.toString=function(a){switch(a){case 0:return"fragment";case 1:return"vertex";default:return null}};var Gj={};h["openfl.display3D._Context3DTextureFormat.Context3DTextureFormat_Impl_"]=Gj;Gj.__name__="openfl.display3D._Context3DTextureFormat.Context3DTextureFormat_Impl_"; +Gj.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}};var Si=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};h["openfl.display3D.IndexBuffer3D"]=Si;Si.__name__="openfl.display3D.IndexBuffer3D";Si.prototype={__context:null,__id:null,__numIndices:null, +__tempUInt16Array:null,__usage:null,uploadFromTypedArray:function(a,b){null!=a&&(b=this.__context.gl,this.__context.__bindGLElementArrayBuffer(this.__id),qb.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.lengthb;){d=b++;var e="va"+d;-1!=a.indexOf(" "+e)&&c.bindAttribLocation(this.__glProgram,d,e)}else for(a=0,b=this.__glslAttribNames;aa&&(a=d.regIndex+d.regCount)}this.__registerLookup=Da.toObjectVector(null,a);a=0;for(b=this.__uniforms;athis.__registerLookup.get_length()&&(b=this.__registerLookup.get_length());aQa.__glMaxTextureMaxAnisotropy&&(a=Qa.__glMaxTextureMaxAnisotropy);b.texParameterf(b.TEXTURE_CUBE_MAP,Qa.__glTextureMaxAnisotropy, +a)}return!0}return!1},__class__:sh});var Zf=function(a,b,c,d,e){Za.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)};h["openfl.display3D.textures.RectangleTexture"]=Zf;Zf.__name__="openfl.display3D.textures.RectangleTexture";Zf.__super__=Za;Zf.prototype=p(Za.prototype,{uploadFromTypedArray:function(a){var b=this.__context.gl;this.__context.__bindGLTexture2D(this.__textureID); +qb.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(Za.prototype.__setSamplerState.call(this,a)){var b=this.__context.gl;if(0!=Qa.__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>Qa.__glMaxTextureMaxAnisotropy&&(a=Qa.__glMaxTextureMaxAnisotropy);b.texParameterf(b.TEXTURE_2D,Qa.__glTextureMaxAnisotropy, +a)}return!0}return!1},__class__:Zf});var rh=function(a,b,c,d,e,f){Za.call(this,a);this.__width=b;this.__height=c;this.__optimizeForRenderToTexture=e;this.__streamingLevels=f;a=this.__context.gl;this.__textureTarget=a.TEXTURE_2D;this.__context.__bindGLTexture2D(this.__textureID);qb.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)};h["openfl.display3D.textures.Texture"]= +rh;rh.__name__="openfl.display3D.textures.Texture";rh.__super__=Za;rh.prototype=p(Za.prototype,{__setSamplerState:function(a){if(Za.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!=Qa.__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>Qa.__glMaxTextureMaxAnisotropy&&(a=Qa.__glMaxTextureMaxAnisotropy); +b.texParameterf(b.TEXTURE_2D,Qa.__glTextureMaxAnisotropy,a)}return!0}return!1},__class__:rh});var Wi=function(a){Za.call(this,a);this.__textureTarget=this.__context.gl.TEXTURE_2D};h["openfl.display3D.textures.VideoTexture"]=Wi;Wi.__name__="openfl.display3D.textures.VideoTexture";Wi.__super__=Za;Wi.prototype=p(Za.prototype,{__netStream:null,__getTexture:function(){if((!this.__netStream.__video.paused||this.__netStream.get___seeking())&&0>1),Qd.__blurShader.uRadius.value[0]=this.get_blurX()*a,Qd.__blurShader.uRadius.value[1]=0):(a=Math.pow(.5,b-this.__horizontalPasses>>1),Qd.__blurShader.uRadius.value[0]=0,Qd.__blurShader.uRadius.value[1]=this.get_blurY()*a);return Qd.__blurShader},get_blurX:function(){return this.__blurX},set_blurX:function(a){a!=this.__blurX&&(this.__blurX=a,this.__renderDirty=!0,this.__rightExtension=this.__leftExtension= +0=this.__blurX?0:Math.round(a/4*this.__blurX)+1;this.__verticalPasses=0>=this.__blurY?0:Math.round(a/4*this.__blurY)+1;this.__numShaderPasses=this.__horizontalPasses+this.__verticalPasses;a!=this.__quality&&(this.__renderDirty=!0); +return this.__quality=a},__class__:Qd,__properties__:{set_quality:"set_quality",set_blurY:"set_blurY",get_blurY:"get_blurY",set_blurX:"set_blurX",get_blurX:"get_blurX"}});var ag=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}");Vb.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()};h["openfl.filters._ColorMatrixFilter.ColorMatrixShader"]=ag;ag.__name__="openfl.filters._ColorMatrixFilter.ColorMatrixShader";ag.__super__=Vb;ag.prototype=p(Vb.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__:ag});var Me=function(a){Fc.call(this);this.set_matrix(a);this.__numShaderPasses=1;this.__needSecondBitmapData=!1};h["openfl.filters.ColorMatrixFilter"]=Me;Me.__name__="openfl.filters.ColorMatrixFilter";Me.__super__=Fc;Me.prototype=p(Fc.prototype,{__matrix:null,__applyFilter:function(a,b,c,d){var e=b.image,f=a.image;ya.convertToData(e);ya.convertToData(f);var l=e.get_data(),g=f.get_data(),m=d.x-c.x|0;d=d.y-c.y|0;b=4*b.width;var h=4*a.width,n=e.buffer.format,k=f.buffer.format; +e=e.buffer.premultiplied;f=f.buffer.premultiplied;for(var r,z=0,u,p,q=c.y|0,B=c.height|0;q>> +24&255)*H.unmult)]&255)<<24|(H.__clamp[Math.round((r>>>16&255)*H.unmult)]&255)<<16|(H.__clamp[Math.round((r>>>8&255)*H.unmult)]&255)<<8|r&255);0==(r&255)?z=0:(z=((Math.max(0,Math.min(this.__matrix[0]*(r>>>24&255)+this.__matrix[1]*(r>>>16&255)+this.__matrix[2]*(r>>>8&255)+this.__matrix[3]*(r&255)+this.__matrix[4],255))|0)&255)<<24|(z>>>16&255)<<16|(z>>>8&255)<<8|z&255,z=(z>>>24&255)<<24|((Math.max(0,Math.min(this.__matrix[5]*(r>>>24&255)+this.__matrix[6]*(r>>>16&255)+this.__matrix[7]*(r>>>8&255)+this.__matrix[8]* +(r&255)+this.__matrix[9],255))|0)&255)<<16|(z>>>8&255)<<8|z&255,z=(z>>>24&255)<<24|(z>>>16&255)<<16|((Math.max(0,Math.min(this.__matrix[10]*(r>>>24&255)+this.__matrix[11]*(r>>>16&255)+this.__matrix[12]*(r>>>8&255)+this.__matrix[13]*(r&255)+this.__matrix[14],255))|0)&255)<<8|z&255,z=(z>>>24&255)<<24|(z>>>16&255)<<16|(z>>>8&255)<<8|(Math.max(0,Math.min(this.__matrix[15]*(r>>>24&255)+this.__matrix[16]*(r>>>16&255)+this.__matrix[17]*(r>>>8&255)+this.__matrix[18]*(r&255)+this.__matrix[19],255))|0)&255); +u=k;y=f;null==y&&(y=!1);null==u&&(u=0);y&&(0==(z&255)?0!=z&&(z=0):255!=(z&255)&&(H.a16=H.__alpha16[z&255],z=((z>>>24&255)*H.a16>>16&255)<<24|((z>>>16&255)*H.a16>>16&255)<<16|((z>>>8&255)*H.a16>>16&255)<<8|z&255));switch(u){case 0:g[p]=z>>>24&255;g[p+1]=z>>>16&255;g[p+2]=z>>>8&255;g[p+3]=z&255;break;case 1:g[p]=z&255;g[p+1]=z>>>24&255;g[p+2]=z>>>16&255;g[p+3]=z>>>8&255;break;case 2:g[p]=z>>>8&255,g[p+1]=z>>>16&255,g[p+2]=z>>>24&255,g[p+3]=z&255}}a.image.dirty=!0;return a},__initShader:function(a,b){Me.__colorMatrixShader.init(this.get_matrix()); +return Me.__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__:Me,__properties__:{set_matrix:"set_matrix",get_matrix:"get_matrix"}});var Xi=function(){null==this.__glFragmentSource&&(this.__glFragmentSource="varying vec2 vBlurCoords[9];\n\n\t\tuniform sampler2D openfl_Texture;\n\n\t\tuniform float uBias;\n\t\tuniform mat3 uConvoMatrix;\n\t\tuniform float uDivisor;\n\t\tuniform bool uPreserveAlpha;\n\n\t\tvoid main(void) {\n\n\t\t\tvec4 tc = texture2D (openfl_Texture, vBlurCoords[4]);\n\t\t\tvec4 c = vec4 (0.0);\n\n\t\t\tc += texture2D (openfl_Texture, vBlurCoords[0]) * uConvoMatrix[0][0];\n\t\t\tc += texture2D (openfl_Texture, vBlurCoords[1]) * uConvoMatrix[0][1];\n\t\t\tc += texture2D (openfl_Texture, vBlurCoords[2]) * uConvoMatrix[0][2];\n\n\t\t\tc += texture2D (openfl_Texture, vBlurCoords[3]) * uConvoMatrix[1][0];\n\t\t\tc += tc * uConvoMatrix[1][1];\n\t\t\tc += texture2D (openfl_Texture, vBlurCoords[5]) * uConvoMatrix[1][2];\n\n\t\t\tc += texture2D (openfl_Texture, vBlurCoords[6]) * uConvoMatrix[2][0];\n\t\t\tc += texture2D (openfl_Texture, vBlurCoords[7]) * uConvoMatrix[2][1];\n\t\t\tc += texture2D (openfl_Texture, vBlurCoords[8]) * uConvoMatrix[2][2];\n\n\t\t\tif (uDivisor > 0.0) {\n\n\t\t\t\tc /= vec4 (uDivisor, uDivisor, uDivisor, uDivisor);\n\n\t\t\t}\n\n\t\t\tc += vec4 (uBias, uBias, uBias, uBias);\n\n\t\t\tif (uPreserveAlpha) {\n\n\t\t\t\tc.a = tc.a;\n\n\t\t\t}\n\n\t\t\tgl_FragColor = c;\n\n\t\t}"); +null==this.__glVertexSource&&(this.__glVertexSource="attribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\n\t\tvarying vec2 vBlurCoords[9];\n\n\t\tuniform mat4 openfl_Matrix;\n\t\tuniform vec2 openfl_TextureSize;\n\n\t\tvoid main(void) {\n\n\t\t\tvec2 r = vec2 (1.0, 1.0) / openfl_TextureSize;\n\t\t\tvec2 t = openfl_TextureCoord;\n\n\t\t\tvBlurCoords[0] = t + r * vec2 (-1.0, -1.0);\n\t\t\tvBlurCoords[1] = t + r * vec2 (0.0, -1.0);\n\t\t\tvBlurCoords[2] = t + r * vec2 (1.0, -1.0);\n\n\t\t\tvBlurCoords[3] = t + r * vec2 (-1.0, 0.0);\n\t\t\tvBlurCoords[4] = t;\n\t\t\tvBlurCoords[5] = t + r * vec2 (1.0, 0.0);\n\n\t\t\tvBlurCoords[6] = t + r * vec2 (-1.0, 1.0);\n\t\t\tvBlurCoords[7] = t + r * vec2 (0.0, 1.0);\n\t\t\tvBlurCoords[8] = t + r * vec2 (1.0, 1.0);\n\n\t\t\tgl_Position = openfl_Matrix * openfl_Position;\n\n\t\t}"); +Vb.call(this);this.uDivisor.value=[1];this.uBias.value=[0];this.uPreserveAlpha.value=[!0];this.__isGenerated=!0;this.__initGL()};h["openfl.filters._ConvolutionFilter.ConvolutionShader"]=Xi;Xi.__name__="openfl.filters._ConvolutionFilter.ConvolutionShader";Xi.__super__=Vb;Xi.prototype=p(Vb.prototype,{uBias:null,uConvoMatrix:null,uDivisor:null,uPreserveAlpha:null,__class__:Xi});var Yi=function(){null==this.__glFragmentSource&&(this.__glFragmentSource="\n\n\t\tuniform sampler2D openfl_Texture;\n\t\tuniform sampler2D mapTexture;\n\n\t\tuniform mat4 openfl_Matrix;\n\n\t\tuniform vec4 uOffsets;\n\t\tuniform mat4 uDisplacements;\n\n\t\tvarying vec2 openfl_TextureCoordV;\n\t\tvarying vec2 mapTextureCoords;\n\n\t\tvoid main(void) {\n\n\t\t\tvec4 map_color = texture2D(mapTexture, mapTextureCoords);\n\t\t\tvec4 map_color_mod = map_color - uOffsets;\n\n\t\t\tmap_color_mod = map_color_mod * vec4(map_color.w, map_color.w, 1.0, 1.0);\n\n\t\t\tvec4 displacements_multiplied = map_color_mod * uDisplacements;\n\t\t\tvec4 result = vec4(openfl_TextureCoordV.x, openfl_TextureCoordV.y, 0.0, 1.0) + displacements_multiplied;\n\n\t\t\tgl_FragColor = texture2D(openfl_Texture, vec2(result));\n\n\t\t}\n\n\t"); +null==this.__glVertexSource&&(this.__glVertexSource="\n\n\t\tuniform mat4 openfl_Matrix;\n\n\t\tuniform vec2 mapTextureCoordsOffset;\n\n\t\tattribute vec4 openfl_Position;\n\t\tattribute vec2 openfl_TextureCoord;\n\n\t\tvarying vec2 openfl_TextureCoordV;\n\n\t\tvarying vec2 mapTextureCoords;\n\n\t\tvoid main(void) {\n\n\t\t\tgl_Position = openfl_Matrix * openfl_Position;\n\n\t\t\topenfl_TextureCoordV = openfl_TextureCoord;\n\t\t\tmapTextureCoords = openfl_TextureCoord - mapTextureCoordsOffset;\n\n\t\t}\n\n\t"); +Vb.call(this);this.__isGenerated=!0;this.__initGL()};h["openfl.filters._DisplacementMapFilter.DisplacementMapShader"]=Yi;Yi.__name__="openfl.filters._DisplacementMapFilter.DisplacementMapShader";Yi.__super__=Vb;Yi.prototype=p(Vb.prototype,{mapTextureCoordsOffset:null,mapTexture:null,uOffsets:null,uDisplacements:null,__class__:Yi});var nh=function(a,b,c,d,e,f,l,g,m,h,n){null==n&&(n=!1);null==h&&(h=!1);null==m&&(m=!1);null==g&&(g=1);null==l&&(l=1);null==f&&(f=4);null==e&&(e=4);null==d&&(d=1);null== +c&&(c=0);null==b&&(b=45);null==a&&(a=4);Fc.call(this);this.__offsetY=this.__offsetX=0;this.__distance=a;this.__angle=b;this.__color=c;this.__alpha=d;this.__blurX=e;this.__blurY=f;this.__strength=l;this.__quality=g;this.__inner=m;this.__knockout=h;this.__hideObject=n;this.__updateSize();this.__needSecondBitmapData=!0;this.__preserveObject=!this.__hideObject;this.__renderDirty=!0};h["openfl.filters.DropShadowFilter"]=nh;nh.__name__="openfl.filters.DropShadowFilter";nh.__super__=Fc;nh.prototype=p(Fc.prototype, +{__alpha:null,__angle:null,__blurX:null,__blurY:null,__color:null,__distance:null,__hideObject:null,__inner:null,__knockout:null,__offsetX:null,__offsetY:null,__quality:null,__strength:null,__applyFilter:function(a,b,c,d){var e=this.__color>>16&255,f=this.__color>>8&255,l=this.__color&255;d=new Sa(d.x+this.__offsetX,d.y+this.__offsetY);c=hb.gaussianBlur(a.image,b.image,c.__toLimeRectangle(),d.__toLimeVector2(),this.__blurX,this.__blurY,this.__quality,this.__strength);c.colorTransform(c.get_rect(), +(new Xa(0,0,0,this.__alpha,e,f,l,0)).__toLimeColorMatrix());return c==a.image?a:b},__updateSize:function(){this.__offsetX=this.__distance*Math.cos(this.__angle*Math.PI/180)|0;this.__offsetY=this.__distance*Math.sin(this.__angle*Math.PI/180)|0;this.__topExtension=Math.ceil((0>this.__offsetY?-this.__offsetY:0)+this.__blurY);this.__bottomExtension=Math.ceil((0this.__offsetX?-this.__offsetX:0)+this.__blurX);this.__rightExtension= +Math.ceil((0>16&255,f=this.__color>> +8&255,l=this.__color&255;c=hb.gaussianBlur(a.image,b.image,c.__toLimeRectangle(),d.__toLimeVector2(),this.__blurX,this.__blurY,this.__quality,this.__strength);c.colorTransform(c.get_rect(),(new Xa(0,0,0,this.__alpha,e,f,l,0)).__toLimeColorMatrix());return c==a.image?a:b},__initShader:function(a,b){b<=this.__horizontalPasses?(a=Math.pow(.5,b>>1),Ec.__glowShader.uRadius.value[0]=this.get_blurX()*a,Ec.__glowShader.uRadius.value[1]=0):(a=Math.pow(.5,b-this.__horizontalPasses>>1),Ec.__glowShader.uRadius.value[0]= +0,Ec.__glowShader.uRadius.value[1]=this.get_blurY()*a);Ec.__glowShader.uColor.value[0]=(this.get_color()>>16&255)/255;Ec.__glowShader.uColor.value[1]=(this.get_color()>>8&255)/255;Ec.__glowShader.uColor.value[2]=(this.get_color()&255)/255;Ec.__glowShader.uColor.value[3]=this.get_alpha()*(this.__strength/this.__numShaderPasses);return Ec.__glowShader},get_alpha:function(){return this.__alpha},get_blurX:function(){return this.__blurX},set_blurX:function(a){a!=this.__blurX&&(this.__blurX=a,this.__renderDirty= +!0,this.__rightExtension=this.__leftExtension=0=this.__blurX?0:Math.round(a/4*this.__blurX)+1;this.__verticalPasses=0>=this.__blurY?0:Math.round(a/4*this.__blurY)+1;this.__numShaderPasses= +this.__horizontalPasses+this.__verticalPasses;a!=this.__quality&&(this.__renderDirty=!0);return this.__quality=a},__class__:Ec,__properties__:{set_quality:"set_quality",get_color:"get_color",set_blurY:"set_blurY",get_blurY:"get_blurY",set_blurX:"set_blurX",get_blurX:"get_blurX",get_alpha:"get_alpha"}});var ph=function(a){null!=a&&16==a.get_length()?this.rawData=a.concat(null):this.rawData=Da.toFloatVector(null,null,null,[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])};h["openfl.geom.Matrix3D"]=ph;ph.__name__= +"openfl.geom.Matrix3D";ph.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),f=this.rawData.get(1),l=this.rawData.get(5),g=this.rawData.get(9),m=this.rawData.get(13),h=this.rawData.get(2),n=this.rawData.get(6),k=this.rawData.get(10),r=this.rawData.get(14),z=this.rawData.get(3),u=this.rawData.get(7),p=this.rawData.get(11),q=this.rawData.get(15),B=a.rawData.get(0),A=a.rawData.get(4),t=a.rawData.get(8),Q=a.rawData.get(12), +y=a.rawData.get(1),x=a.rawData.get(5),N=a.rawData.get(9),K=a.rawData.get(13),w=a.rawData.get(2),ta=a.rawData.get(6),X=a.rawData.get(10),D=a.rawData.get(14),za=a.rawData.get(3),C=a.rawData.get(7),ha=a.rawData.get(11);a=a.rawData.get(15);this.rawData.set(0,b*B+f*A+h*t+z*Q);this.rawData.set(1,b*y+f*x+h*N+z*K);this.rawData.set(2,b*w+f*ta+h*X+z*D);this.rawData.set(3,b*za+f*C+h*ha+z*a);this.rawData.set(4,c*B+l*A+n*t+u*Q);this.rawData.set(5,c*y+l*x+n*N+u*K);this.rawData.set(6,c*w+l*ta+n*X+u*D);this.rawData.set(7, +c*za+l*C+n*ha+u*a);this.rawData.set(8,d*B+g*A+k*t+p*Q);this.rawData.set(9,d*y+g*x+k*N+p*K);this.rawData.set(10,d*w+g*ta+k*X+p*D);this.rawData.set(11,d*za+g*C+k*ha+p*a);this.rawData.set(12,e*B+m*A+r*t+q*Q);this.rawData.set(13,e*y+m*x+r*N+q*K);this.rawData.set(14,e*w+m*ta+r*X+q*D);this.rawData.set(15,e*za+m*C+r*ha+q*a)},appendTranslation:function(a,b,c){var d=this.rawData;d.set(12,d.get(12)+a);a=this.rawData;a.set(13,a.get(13)+b);b=this.rawData;b.set(14,b.get(14)+c)},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;dd&&(d=-1);var e=Gc.__soundTransform.volume*c.volume,f=new Hi(this.__buffer);f.offset=a|0;1b&&(b=-1);1?#".split("");var d=!0;if(null==a||""==a)d=!1;else for(var e=0;ethis.__interval)throw new F(new ve);0==this.__interval&&(this.__interval=kb.defaultInterval);null!=this.__timer&&(this.__timer.stop(),this.__timer=null);kb.supported&&!this.get_muted()&&(this.__timer=new xb(this.__interval),this.__timer.run=q(this,this.update))},update:function(){var a=new vf("update");a.timestamp=(new Date).getTime()/ +1E3;a.accelerationX=kb.currentX;a.accelerationY=kb.currentY;a.accelerationZ=kb.currentZ;this.dispatchEvent(a)},get_muted:function(){return this.__muted},__class__:kb,__properties__:{get_muted:"get_muted"}});var qf=function(a){this.parentDomain=null!=a?a:qf.currentDomain};h["openfl.system.ApplicationDomain"]=qf;qf.__name__="openfl.system.ApplicationDomain";qf.prototype={parentDomain:null,__class__:qf};var Yf=function(){W.call(this);this.__graphics=new ic(this)};h["openfl.text.StaticText"]=Yf;Yf.__name__= +"openfl.text.StaticText";Yf.__super__=W;Yf.prototype=p(W.prototype,{text:null,__class__:Yf});var yb=function(){this.__renderedOnCanvasWhileOnDOM=this.__forceCachedBitmapUpdate=!1;U.call(this);this.__caretIndex=-1;this.__displayAsPassword=!1;this.__graphics=new ic(this);this.__textEngine=new Wa(this);this.__layoutDirty=!0;this.__offsetY=this.__offsetX=0;this.__mouseWheelEnabled=!0;this.__text="";null==yb.__defaultTextFormat&&(yb.__defaultTextFormat=new lc("Times New Roman",12,0,!1,!1,!1,"","",3,0, +0,0,0),yb.__defaultTextFormat.blockIndent=0,yb.__defaultTextFormat.bullet=!1,yb.__defaultTextFormat.letterSpacing=0,yb.__defaultTextFormat.kerning=!1);this.__textFormat=yb.__defaultTextFormat.clone();this.__textEngine.textFormatRanges.push(new $d(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))};h["openfl.text.TextField"]=yb;yb.__name__="openfl.text.TextField";yb.__super__=U;yb.prototype=p(U.prototype,{__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,__symbol:null,__text:null,__textEngine:null,__textFormat:null,__div:null,__renderedOnCanvasWhileOnDOM:null, +__rawHtmlText:null,__forceCachedBitmapUpdate:null,getCharBoundaries:function(a){if(0>a||a>this.__text.length-1)return null;var b=new qa;return this.__getCharBoundaries(a,b)?b:null},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},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},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.__stopCursorTimer();this.__startCursorTimer()},setTextFormat:function(a,b,c){null==c&&(c=0);null==b&&(b=0);var d=this.get_text().length;0> +b&&(b=0);0>c&&(c=0);0==c&&(c=0==b?d:b+1);if(!(c=d)for(this.__textFormat.__merge(a),b=0,c=this.__textEngine.textFormatRanges.get_length();b=b&&d.end<=c?d.format.__merge(a):d.start>=b&&d.startb?(f=new $d(d.format.clone(),d.start, +c),f.format.__merge(a),this.__textEngine.textFormatRanges.insertAt(e,f),d.start=c,++e):d.startb&&d.end>=c&&(f=new $d(d.format.clone(),b,d.end),f.format.__merge(a),this.__textEngine.textFormatRanges.insertAt(e+1,f),d.end=b,++e);++e}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.__selectionIndex== +this.__caretIndex||this.__caretIndex +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&&aa||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 g=0,h=a-f.startIndex;gthis.__textEngine.textHeight&&(b=this.__textEngine.textHeight);d=!0;f=0;for(var g=this.__textEngine.layoutGroups.get_length();f=e.offsetY&&b<=e.offsetY+e.height||!c&&null==h)if(a>=e.offsetX&&a<=e.offsetX+e.width||!c&&(null==h||h.lineIndex!=e.lineIndex))return e}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=b.width||0>=b.height)&&2!=b.autoSize)this.__graphics.__canvas=null,this.__graphics.__context=null,this.__graphics.__bitmap=null,this.__graphics.__softwareDirty=!1,this.__graphics.set___dirty(!1),this.__dirty=!1;else{null==this.__graphics.__canvas&& +(this.__graphics.__canvas=window.document.createElement("canvas"),this.__graphics.__context=this.__graphics.__canvas.getContext("2d"));J.context=d.__context;var g=d.__renderTransform;if(a.__isDOM){var h=a.pixelRatio;d.__canvas.width=e*h|0;d.__canvas.height=f*h|0;d.__canvas.style.width=e+"px";d.__canvas.style.height=f+"px";e=Aa.__pool.get();e.copyFrom(g);e.scale(h,h);a.setTransform(e,J.context);Aa.__pool.release(e)}else d.__canvas.width=e,d.__canvas.height=f,J.context.setTransform(g.a,g.b,g.c,g.d, +g.tx,g.ty);null==J.clearRect&&(J.clearRect="undefined"!==typeof navigator&&"undefined"!==typeof navigator.isCocoonJS);J.clearRect&&J.context.clearRect(0,0,d.__canvas.width,d.__canvas.height);if(null!=b.text&&""!=b.text||b.__hasFocus){g=b.text;d.__context.imageSmoothingEnabled=!a.__allowSmoothing||0==b.antiAliasType&&400==b.sharpness?!1:!0;if(b.border||b.background)J.context.rect(.5,.5,c.width-1,c.height-1),b.background&&(h=da.hex(b.backgroundColor&16777215,6),J.context.fillStyle="#"+h,J.context.fill()), +b.border&&(J.context.lineWidth=1,h=da.hex(b.borderColor&16777215,6),J.context.strokeStyle="#"+h,J.context.stroke());J.context.textBaseline="alphabetic";J.context.textAlign="start";h=-this.get_scrollH();f=e=0;for(var m=this.get_scrollV()-1;fb.get_bottomScrollV()-1)break;n="#"+da.hex(m.format.color&16777215,6);J.context.font=Wa.getFont(m.format); +J.context.fillStyle=n;J.context.fillText(g.substring(m.startIndex,m.endIndex),m.offsetX+h-c.x,m.offsetY+m.ascent+e-c.y);if(-1=this.__caretIndex){for(var k=r=0,z=this.__caretIndex-m.startIndex;k=this.__caretIndex||m.startIndex<=this.__selectionIndex&&m.endIndex>=this.__selectionIndex||m.startIndex>this.__caretIndex&&m.endIndexthis.__selectionIndex&&m.endIndexr&&(r=m.startIndex),m.endIndex=m.endIndex?(z=this.getCharBoundaries(m.endIndex-1),null!=z&&(z.x+=z.width+2)):z=this.getCharBoundaries(k),null!=u&&null!=z&&(J.context.fillStyle="#000000",J.context.fillRect(u.x+h,u.y+e,z.x-u.x,m.height),J.context.fillStyle="#FFFFFF",J.context.fillText(g.substring(r, +k),h+u.x,m.offsetY+m.ascent+e));m.format.underline&&(J.context.beginPath(),J.context.strokeStyle=n,J.context.lineWidth=1,n=m.offsetX+h-c.x,r=Math.floor(m.offsetY+e+m.ascent-c.y)+.5,J.context.moveTo(n,r),J.context.lineTo(n+m.width,r),J.context.stroke(),J.context.closePath())}}else{if(b.border||b.background)b.border?J.context.rect(.5,.5,c.width-1,c.height-1):J.context.rect(0,0,c.width,c.height),b.background&&(c=da.hex(b.backgroundColor&16777215,6),J.context.fillStyle="#"+c,J.context.fill()),b.border&& +(J.context.lineWidth=1,J.context.lineCap="square",c=da.hex(b.borderColor&16777215,6),J.context.strokeStyle="#"+c,J.context.stroke());if(-1=a.__getAlpha(this.__worldAlpha))&&(null!=this.opaqueBackground&&!this.__isCacheBitmapRender&&0>>16&255)+","+(c>>>8&255)+","+(c&255)+")",b.fillRect(0,0,this.get_width(),this.get_height()),a.__popMaskObject(this)),null!=this.__graphics&&this.__renderable&&(n=a.__getAlpha(this.__worldAlpha),!(0>=n)&&(m=this.__graphics,null!=m&&(y.render(m,a),g=m.__width,h=m.__height,b=m.__canvas,null!=b&&m.__visible&&1<=g&&1<= +h&&(f=m.__worldTransform,c=a.context,r=this.__scrollRect,e=this.__worldScale9Grid,null==r||0n.d?(g=n.a,n.d/=n.a,n.a=1):(g=n.d,n.a/=n.d,n.d=1),m*=g,e=Math.ceil(e*g),f=Math.ceil(f*g);b.__textFormat.size=m;n=c.text;var r=0;if(b.__isHTML){for(var k=n;Bb.__regexFont.match(k);){k=Bb.__regexFont.matched(0); +var u="";Bb.__regexFace.match(k)&&(u+="font-family:'"+Bb.__getAttributeMatch(Bb.__regexFace)+"';");Bb.__regexColor.match(k)&&(u+="color:#"+Bb.__getAttributeMatch(Bb.__regexColor)+";");if(Bb.__regexSize.match(k)){r=Bb.__getAttributeMatch(Bb.__regexSize);var p=z.cca(r,0);r=parseFloat(r)*g;u+="font-size:"+(43==p||45==p?m+r:r)+"px;"}n=da.replace(n,k,"");k=Bb.__regexFont.matchedRight()}n=n.replace(Bb.__regexCloseFont.r,"")}else n=da.htmlEscape(n);n=da.replace(n,"

");b.__div.innerHTML=m;m=b.__div.innerHTML.replace(/\n/g,"
");b.__div.innerHTML=m;m=b.__div.innerHTML.replace(/\r/g,"
");b.__div.innerHTML=m;d.setProperty("font",Wa.getFont(b.__textFormat),null);b.__textFormat.size=h;b.__textFormat.leading=g;d.setProperty("top","3px",null);c.border?(d.setProperty("border","solid 1px #"+da.hex(c.borderColor&16777215,6),null),b.__renderTransform.translate(-1,-1),b.__renderTransformChanged= +!0,b.__transformDirty=!0):""!=d.border&&(d.removeProperty("border"),b.__renderTransformChanged=!0);d.setProperty("color","#"+da.hex(b.__textFormat.color&16777215,6),null);d.setProperty("width",e+"px",null);d.setProperty("height",f+"px",null);switch(b.__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)}b.__dirty=!1}else null!=b.__div&&(a.element.removeChild(b.__div),b.__div= +null);null!=b.__div&&(c=a.__roundPixels,a.__roundPixels=!0,a.__updateClip(b),a.__applyStyle(b,!0,!0,!0),a.__roundPixels=c)}else Bb.clear(b,a)}else this.__renderDOMClear(a),this.__cacheBitmap.stage=this.stage,c=this.__cacheBitmap,null!=c.stage&&c.__worldVisible&&c.__renderable&&null!=c.__bitmapData&&c.__bitmapData.__isValid&&c.__bitmapData.readable?(a.__pushMaskObject(c),null!=c.__bitmapData.image.buffer.__srcImage?Wb.renderImage(c,a):Wb.renderCanvas(c,a),a.__popMaskObject(c)):Wb.clear(c,a);this.__renderEvent(a)}, +__renderDOMClear:function(a){Bb.clear(this,a)},__renderGL:function(a){this.__updateCacheBitmap(a,!1);if(null==this.__cacheBitmap||this.__isCacheBitmapRender){if(Xf.render(this,a),!(null==this.opaqueBackground&&null==this.__graphics||!this.__renderable||0>=this.__worldAlpha)){if(null!=this.opaqueBackground&&!this.__isCacheBitmapRender&&0>>16&255)/255,(d>>>8&255)/255,(d&255)/255,1,0,0,1);a.__popMaskRect();a.__popMaskObject(this);qa.__pool.release(c)}null!=this.__graphics&&de.render(this,a)}}else ce.render(this.__cacheBitmap,a);this.__renderEvent(a)},__renderGLMask:function(a){Xf.renderMask(this,a);U.prototype.__renderGLMask.call(this,a)},__replaceSelectedText:function(a,b){null==b&&(b=!0);null==a&&(a="");if(""!=a||this.__selectionIndex!= +this.__caretIndex){var c=this.__caretIndexthis.__selectionIndex?this.__caretIndex:this.__selectionIndex;if(!(c==d&&0this.__text.length&&(c=this.__text.length);d>this.__text.length&&(d=this.__text.length);if(dc&&(c=0);this.__replaceText(c,d,a,b);a=c+xa.__cast(a,String).length;a>this.__text.length&&(a=this.__text.length); +this.setSelection(a,a);this.__updateScrollH()}}},__replaceText:function(a,b,c,d){if(!(ba||b>this.__text.length||null==c)){d&&(c=this.__textEngine.restrictText(c),0=d?c="":dthis.__text.length&&(b=this.__text.length);d=c.length-(b-a);for(var e=0,f;e=b?(f.end+=d,++e):f.start>=a&&f.end<=b?(0a&&f.start<=b&&(f.start+=d),++e);this.__updateScrollV();this.__updateScrollH();this.__layoutDirty=this.__dirty=!0;this.__renderDirty||(this.__renderDirty=!0,this.__setParentRenderDirty())}},__shouldCacheHardware:function(a){return 1==a?!0:!1},__startCursorTimer:function(){this.__cursorTimer=xb.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);(W.__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(){(W.__supportDOM?this.__renderedOnCanvasWhileOnDOM:1)&&this.__disableInput()},__updateCacheBitmap:function(a,b){return null!=this.__filters||"opengl"!=a.__type||null!=this.__cacheBitmap||this.__domRender?U.prototype.__updateCacheBitmap.call(this,a,b||this.__dirty)?(null!=this.__cacheBitmap&&(this.__cacheBitmap.__renderTransform.tx-=this.__offsetX,this.__cacheBitmap.__renderTransform.ty-=this.__offsetY),!0):!1:!1},__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(){if(!this.get_multiline()&&1==this.get_type()){this.__layoutDirty=!0;this.__updateLayout();var a=this.__textEngine.textWidth-this.__textEngine.width+ +4;0=this.get_text().length?this.set_scrollH(Math.ceil(a)):(a=qa.__pool.get(),this.__getCharBoundaries(this.__caretIndex,a),a.xthis.get_scrollH()+this.__textEngine.width&&this.set_scrollH(Math.ceil(a.x-this.__textEngine.width-2)),qa.__pool.release(a)):this.set_scrollH(0)}},__updateScrollV:function(){this.__layoutDirty=!0;this.__updateLayout();var a=this.getLineIndexOfChar(this.__caretIndex);-1==a&&0this.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){W.__supportDOM&&this.__renderedOnCanvasWhileOnDOM&&(this.__forceCachedBitmapUpdate=this.__text!=a);this.__textEngine.set_text(a);this.__text= +this.__textEngine.text;this.__text.lengththis.__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.dispatchEvent(new S("scroll")));return this.__textEngine.scrollH=a},get_scrollV:function(){return this.__textEngine.get_scrollV()},set_scrollV:function(a){this.__updateLayout();a!=this.__textEngine.get_scrollV()&&(this.__dirty=!0,this.__renderDirty||(this.__renderDirty=!0,this.__setParentRenderDirty()),this.dispatchEvent(new S("scroll")));return this.__textEngine.set_scrollV(a)},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},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;1b;){var c=b++;a=new Pc(this,"BUTTON_"+c,0,1);this.__button.h[c]=a;this.__controls.push(a)}};h["openfl.ui.GameInputDevice"]=bj;bj.__name__="openfl.ui.GameInputDevice"; +bj.prototype={enabled:null,id:null,name:null,__axis:null,__button:null,__controls:null,__class__:bj};var Ej=function(){};h["openfl.ui.Keyboard"]=Ej;Ej.__name__="openfl.ui.Keyboard";Ej.__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};var Fb=function(){};h["openfl.ui.Mouse"]=Fb;Fb.__name__="openfl.ui.Mouse";Fb.__properties__={set_cursor:"set_cursor"};Fb.hide=function(){Fb.__hidden=!0;for(var a=0,b=ha.current.__windows;a","g"),h=new ja("([\\w\\.\\-\\+]+)", +"gi"),m=new ja("^\\w{3}","ig"),n=new ja("vc\\[([vofi][acostdip]?[d]?)(\\d*)?(\\.[xyzw](\\+\\d{1,3})?)?\\](\\.[xyzw]{1,4})?|([vofi][acostdip]?[d]?)(\\d*)?(\\.[xyzw]{1,4})?","gi"),u=new ja("\\[.*\\]","ig"),k=new ja("^\\b[A-Za-z]{1,3}","ig"),p=new ja("\\d+",""),q=new ja("(\\.[xyzw]{1,4})",""),B=new ja("[A-Za-z]{1,3}","ig"),A=new ja("(\\.[xyzw]{1,1})",""),t=new ja("\\+\\d{1,3}","ig"),Q=0;Qc){this.error="error: opcode requires version 2.";break}if(0!=(N.flags&64)&&f){this.error="error: opcode is only allowed in vertex programs.";break}if(0!=(N.flags&32)&&!f){this.error="error: opcode is only allowed in fragment programs."; +break}this.verbose&&Ca.info("emit opcode="+R.string(N),{fileName:"openfl/utils/AGALMiniAssembler.hx",lineNumber:308,className:"openfl.utils.AGALMiniAssembler",methodName:"assemble"});this.agalcode.writeUnsignedInt(N.emitCode);++b;if(4096=U;)F|=cb<<(U-1<<1),++U}else F=G?15:228;if(za){H=this.match(C[0],B);I=ca.REGMAP;J=H[0];I=null!=r[J]?I.getReserved(J):I.h[J];if(null==I){this.error="error: bad index register";w=!0;break}I=I.emitCode;cb=this.match(C[0],A);if(0==cb.length){this.error="error: bad index register select";w=!0;break}J=z.cca(cb[0],1)-120;Kc.gt(J,2)&&(J=3);C=this.match(C[0],t);0 +T||255b.length&&(b="0"+b),c+=b;Ca.info(c,{fileName:"openfl/utils/AGALMiniAssembler.hx",lineNumber:662,className:"openfl.utils.AGALMiniAssembler",methodName:"assemble"})}this.verbose&& +Ca.info("AGALMiniAssembler.assemble time: "+(ma.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=ca.REGMAP,d=new Hc("va","vertex attribute",0,b?1024:1==a||2==a?7:15,66);null!=r.va?c.setReserved("va",d):c.h.va=d;c=ca.REGMAP;d=new Hc("vc","vertex constant",1,b?1024:1==a?127:249,66);null!=r.vc?c.setReserved("vc",d):c.h.vc=d;c=ca.REGMAP;d=new Hc("vt", +"vertex temporary",2,b?1024:1==a?7:25,67);null!=r.vt?c.setReserved("vt",d):c.h.vt=d;c=ca.REGMAP;d=new Hc("vo","vertex output",3,b?1024:0,65);null!=r.vo?c.setReserved("vo",d):c.h.vo=d;c=ca.REGMAP;d=new Hc("vi","varying",4,b?1024:1==a?7:9,99);null!=r.vi?c.setReserved("vi",d):c.h.vi=d;c=ca.REGMAP;d=new Hc("fc","fragment constant",1,b?1024:1==a?27:2==a?63:199,34);null!=r.fc?c.setReserved("fc",d):c.h.fc=d;c=ca.REGMAP;d=new Hc("ft","fragment temporary",2,b?1024:1==a?7:25,35);null!=r.ft?c.setReserved("ft", +d):c.h.ft=d;c=ca.REGMAP;d=new Hc("fs","texture sampler",5,b?1024:7,34);null!=r.fs?c.setReserved("fs",d):c.h.fs=d;c=ca.REGMAP;d=new Hc("fo","fragment output",3,b?1024:1==a?0:3,33);null!=r.fo?c.setReserved("fo",d):c.h.fo=d;c=ca.REGMAP;a=new Hc("fd","fragment depth output",6,b?1024:1==a?-1:0,33);null!=r.fd?c.setReserved("fd",a):c.h.fd=a;a=ca.REGMAP;b=new Hc("iid","instance id",7,b?1024:0,66);null!=r.iid?a.setReserved("iid",b):a.h.iid=b;a=b=ca.REGMAP;a=null!=r.vo?a.getReserved("vo"):a.h.vo;null!=r.op? +b.setReserved("op",a):b.h.op=a;a=b=ca.REGMAP;a=null!=r.vi?a.getReserved("vi"):a.h.vi;null!=r.i?b.setReserved("i",a):b.h.i=a;a=b=ca.REGMAP;a=null!=r.vi?a.getReserved("vi"):a.h.vi;null!=r.v?b.setReserved("v",a):b.h.v=a;a=b=ca.REGMAP;a=null!=r.fo?a.getReserved("fo"):a.h.fo;null!=r.oc?b.setReserved("oc",a):b.h.oc=a;a=b=ca.REGMAP;a=null!=r.fd?a.getReserved("fd"):a.h.fd;null!=r.od?b.setReserved("od",a):b.h.od=a;a=b=ca.REGMAP;a=null!=r.vi?a.getReserved("vi"):a.h.vi;null!=r.fi?b.setReserved("fi",a):b.h.fi= +a},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__:ca};var Ua=function(a,b,c,d){this.name=a;this.numRegister=b;this.emitCode=c;this.flags=d};h["openfl.utils._AGALMiniAssembler.OpCode"]=Ua;Ua.__name__="openfl.utils._AGALMiniAssembler.OpCode";Ua.prototype={emitCode:null,flags:null,name:null,numRegister:null,__class__:Ua};var Hc=function(a,b,c,d,e){this.name=a;this.longName=b;this.emitCode=c;this.range=d;this.flags=e};h["openfl.utils._AGALMiniAssembler.Register"]= +Hc;Hc.__name__="openfl.utils._AGALMiniAssembler.Register";Hc.prototype={emitCode:null,name:null,longName:null,flags:null,range:null,toString:function(){var a=this.emitCode;a='[Register name="'+this.name+'", longName="'+this.longName+'", emitCode='+R.string(null==a?null:Kc.toFloat(a))+", range=";var b=this.range;a=a+R.string(null==b?null:Kc.toFloat(b))+", flags=";b=this.flags;return a+R.string(null==b?null:Kc.toFloat(b))+"]"},__class__:Hc};var mb=function(a,b,c){this.name=a;this.flag=b;this.mask=c}; +h["openfl.utils._AGALMiniAssembler.Sampler"]=mb;mb.__name__="openfl.utils._AGALMiniAssembler.Sampler";mb.prototype={flag:null,mask:null,name:null,__class__:mb};var yh=function(){};h["openfl.utils.IAssetCache"]=yh;yh.__name__="openfl.utils.IAssetCache";yh.__isInterface__=!0;yh.prototype={get_enabled:null,getBitmapData:null,getFont:null,getSound:null,hasBitmapData:null,hasFont:null,hasSound:null,removeBitmapData:null,setBitmapData:null,setFont:null,setSound:null,__class__:yh,__properties__:{get_enabled:"get_enabled"}}; +var zh=function(){this.__enabled=!0;this.bitmapData=new Ea;this.font=new Ea;this.sound=new Ea};h["openfl.utils.AssetCache"]=zh;zh.__name__="openfl.utils.AssetCache";zh.__interfaces__=[yh];zh.prototype={bitmapData:null,font:null,sound:null,__enabled:null,getBitmapData:function(a){var b=this.bitmapData;return null!=r[a]?b.getReserved(a):b.h[a]},getFont:function(a){var b=this.font;return null!=r[a]?b.getReserved(a):b.h[a]},getSound:function(a){var b=this.sound;return null!=r[a]?b.getReserved(a):b.h[a]}, +hasBitmapData:function(a){var b=this.bitmapData;return null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a)},hasFont:function(a){var b=this.font;return null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a)},hasSound:function(a){var b=this.sound;return null!=r[a]?b.existsReserved(a):b.h.hasOwnProperty(a)},removeBitmapData:function(a){oa.cache.image.remove(a);return this.bitmapData.remove(a)},setBitmapData:function(a,b){var c=this.bitmapData;null!=r[a]?c.setReserved(a,b):c.h[a]=b},setFont:function(a, +b){var c=this.font;null!=r[a]?c.setReserved(a,b):c.h[a]=b},setSound:function(a,b){var c=this.sound;null!=r[a]?c.setReserved(a,b):c.h[a]=b},get_enabled:function(){return this.__enabled},__class__:zh,__properties__:{get_enabled:"get_enabled"}};var Ka=function(){};h["openfl.utils.Assets"]=Ka;Ka.__name__="openfl.utils.Assets";Ka.addEventListener=function(a,b,c,d,e){null==e&&(e=!1);null==d&&(d=0);null==c&&(c=!1);oa.onChange.has(Ka.LimeAssets_onChange)||oa.onChange.add(Ka.LimeAssets_onChange);Ka.dispatcher.addEventListener(a, +b,c,d,e)};Ka.dispatchEvent=function(a){return Ka.dispatcher.dispatchEvent(a)};Ka.exists=function(a,b){return oa.exists(a,b)};Ka.getBitmapData=function(a,b){null==b&&(b=!0);if(b&&Ka.cache.get_enabled()&&Ka.cache.hasBitmapData(a)){var c=Ka.cache.getBitmapData(a);if(Ka.isValidBitmapData(c))return c}c=oa.getImage(a,!1);return null!=c?(c=L.fromImage(c),b&&Ka.cache.get_enabled()&&Ka.cache.setBitmapData(a,c),c):null};Ka.getFont=function(a,b){null==b&&(b=!0);if(b&&Ka.cache.get_enabled()&&Ka.cache.hasFont(a))return Ka.cache.getFont(a); +var c=oa.getFont(a,!1);if(null!=c){var d=new eb;d.__fromLimeFont(c);b&&Ka.cache.get_enabled()&&Ka.cache.setFont(a,d);return d}return new eb};Ka.getSound=function(a,b){null==b&&(b=!0);if(b&&Ka.cache.get_enabled()&&Ka.cache.hasSound(a)){var c=Ka.cache.getSound(a);if(Ka.isValidSound(c))return c}c=oa.getAudioBuffer(a,!1);return null!=c?(c=le.fromAudioBuffer(c),b&&Ka.cache.get_enabled()&&Ka.cache.setSound(a,c),c):null};Ka.isValidBitmapData=function(a){return null!=a&&null!=a.image};Ka.isValidSound=function(a){return!0}; +Ka.LimeAssets_onChange=function(){Ka.dispatchEvent(new S("change"))};var pe={};h["openfl.utils._ByteArray.ByteArray_Impl_"]=pe;pe.__name__="openfl.utils._ByteArray.ByteArray_Impl_";pe.__properties__={set_length:"set_length",get_length:"get_length"};pe.fromBytes=function(a){return null==a?null:a instanceof kc?a:kc.fromBytes(a)};pe.get_length=function(a){return null==a?0:a.length};pe.set_length=function(a,b){0a?String.fromCharCode(a):String.fromCharCode((a>>10)+55232)+String.fromCharCode((a&1023)+56320)});String.prototype.__class__=h.String=String; +String.__name__="String";h.Array=Array;Array.__name__="Array";Date.prototype.__class__=h.Date=Date;Date.__name__="Date";var Kj={},Zj={},ak=Number,Yj=Boolean,Nh={},Pj={};xa.__toStr={}.toString;lb.content=[{name:"__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorScaleX",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFvQUFBQUtDQVlBQUFDTk1zKzlBQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUFUZ0FBQUU0QnNjMGZNd0FBQUJ4MFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1JtbHlaWGR2Y210eklFTlROdWk4c293QUFBQlBTVVJCVkJpVmpWQkJEc0F3Q0FLMy8vKzRZNWV5R05hREpoNVVCSlNTTUlrYW9RSW9BSXk1aktrOXRENWJHcmdBRkRVMGVZZGtMbjFXdUFsWHM5SGpzUlVmY3lWRHE4dlNQNWxUYi96SEY2VW9FeGRNWXJPSEFBQUFBRWxGVGtTdVFtQ0M"}, +{name:"__ASSET__:bitmap_flixel_system_debug_stats__Stats_GraphicMaximizeButton",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFvQUFBQUtDQVlBQUFDTk1zKzlBQUFBQm1KTFIwUUEvd0QvQVArZ3ZhZVRBQUFBQ1hCSVdYTUFBQUIyQUFBQWRnRk9leVlJQUFBQUIzUkpUVVVIM2dNSkNSOFVCaGtEeVFBQUFFOUpSRUZVR05PdGtFRVN3REFJQW92Ly8vUDJvb2FhOUJaUFpvQXdxd0NlTlpMVUQ5ZkNIVzc2VFkyZmR3MklVOVVwZUhlVU5kMVlBRm5kTUFGUW1ndTV0eGFWM202VDV5bW9EL0gwT3ZrTFNBOUI4bis0Y2pvQUFBQUFTVVZPUks1Q1lJST0"},{name:"__ASSET__:bitmap_flixel_system_debug_GraphicArrowRight",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUQ1SlJFRlVlTnBpK1AvLy96SWdqZ1JpQmtJWVJNQUFRVTNJaWdscXdxWVlweVo4aWpFME1mNEhheUVLTENmSlpJcmRURlJvRUJYT1JNY2dRSUFCQU1xdGZ6aUhGZ2JoQUFBQUFFbEZUa1N1UW1DQw"}, +{name:"__ASSET__:bitmap_flixel_system_GraphicLogo",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUdRQUFBQmtDQVlBQUFCdzRwVlVBQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBS1QybERRMUJRYUc5MGIzTm9iM0FnU1VORElIQnliMlpwYkdVQUFIamFuVk5uVkZQcEZqMzMzdlJDUzRpQWxFdHZVaFVJSUZKQ2k0QVVrU1lxSVFrUVNvZ2hvZGtWVWNFUlJVVUVHOGlnaUFPT2pvQ01GVkVzRElvSzJBZmtJYUtPZzZPSWlzcjc0WHVqYTlhODkrYk4vclhYUHVlczg1Mnp6d2ZBQ0F5V1NETlJOWUFNcVVJZUVlQ0R4OFRHNGVRdVFJRUtKSEFBRUFpelpDRnovU01CQVBoK1BEd3JJc0FIdmdBQmVOTUxDQURBVFp2QU1CeUgvdy9xUXBsY0FZQ0VBY0Iwa1RoTENJQVVBRUI2amtLbUFFQkdBWUNkbUNaVEFLQUVBR0RMWTJMakFGQXRBR0FuZitiVEFJQ2QrSmw3QVFCYmxDRVZBYUNSQUNBVFpZaEVBR2c3QUt6UFZvcEZBRmd3QUJSbVM4UTVBTmd0QURCSlYyWklBTEMzQU1ET0VBdXlBQWdNQURCUmlJVXBBQVI3QUdESUl5TjRBSVNaQUJSRzhsYzg4U3V1RU9jcUFBQjRtYkk4dVNRNVJZRmJDQzF4QjFkWExoNG96a2tYS3hRMllRSmhta0F1d25tWkdUS0JOQS9nODh3QUFLQ1JGUkhnZy9QOWVNNE9yczdPTm82MkRsOHQ2cjhHL3lKaVl1UCs1YytyY0VBQUFPRjBmdEgrTEMrekdvQTdCb0J0L3FJbDdnUm9YZ3VnZGZlTFpySVBRTFVBb09uYVYvTncrSDQ4UEVXaGtMbloyZVhrNU5oS3hFSmJZY3BYZmY1bndsL0FWLzFzK1g0OC9QZjE0TDdpSklFeVhZRkhCUGpnd3N6MFRLVWN6NUlKaEdMYzVvOUgvTGNMLy93ZDB5TEVTV0s1V0NvVTQxRVNjWTVFbW96ek1xVWlpVUtTS2NVbDB2OWs0dDhzK3dNKzN6VUFzR28rQVh1UkxhaGRZd1AyU3ljUVdIVEE0dmNBQVBLN2I4SFVLQWdEZ0dpRDRjOTMvKzgvL1VlZ0pRQ0Faa21TY1FBQVhrUWtMbFRLc3ovSENBQUFSS0NCS3JCQkcvVEJHQ3pBQmh6QkJkekJDL3hnTm9SQ0pNVENRaEJDQ21TQUhISmdLYXlDUWlpR3piQWRLbUF2MUVBZE5NQlJhSWFUY0E0dXdsVzREajF3RC9waENKN0JLTHlCQ1FSQnlBZ1RZU0hhaUFGaWlsZ2pqZ2dYbVlYNEljRklCQktMSkNESmlCUlJJa3VSTlVneFVvcFVJRlZJSGZJOWNnSTVoMXhHdXBFN3lBQXlndnlHdkVjeGxJR3lVVDNVRExWRHVhZzNHb1JHb2d2UVpIUXhtbzhXb0p2UWNyUWFQWXcyb2VmUXEyZ1AybzgrUThjd3dPZ1lCelBFYkRBdXhzTkNzVGdzQ1pOank3RWlyQXlyeGhxd1Zxd0R1NG4xWTgreGR3UVNnVVhBQ1RZRWQwSWdZUjVCU0ZoTVdFN1lTS2dnSENRMEVkb0pOd2tEaEZIQ0p5S1RxRXUwSnJvUitjUVlZakl4aDFoSUxDUFdFbzhUTHhCN2lFUEVOeVFTaVVNeUo3bVFBa214cEZUU0V0SkcwbTVTSStrc3FaczBTQm9qazhuYVpHdXlCem1VTENBcnlJWGtuZVRENURQa0crUWg4bHNLbldKQWNhVDRVK0lvVXNwcVNobmxFT1UwNVFabG1ESkJWYU9hVXQyb29WUVJOWTlhUXEyaHRsS3ZVWWVvRXpSMW1qbk5neFpKUzZXdG9wWFRHbWdYYVBkcHIraDB1aEhkbFI1T2w5Qlgwc3ZwUitpWDZBUDBkd3dOaGhXRHg0aG5LQm1iR0FjWVp4bDNHSytZVEtZWjA0c1p4MVF3TnpIcm1PZVpENWx2VlZncXRpcDhGWkhLQ3BWS2xTYVZHeW92VkttcXBxcmVxZ3RWODFYTFZJK3BYbE45cmtaVk0xUGpxUW5VbHF0VnFwMVE2MU1iVTJlcE82aUhxbWVvYjFRL3BINVovWWtHV2NOTXcwOURwRkdnc1YvanZNWWdDMk1aczNnc0lXc05xNFoxZ1RYRUpySE4yWHgyS3J1WS9SMjdpejJxcWFFNVF6TktNMWV6VXZPVVpqOEg0NWh4K0p4MFRnbm5LS2VYODM2SzNoVHZLZUlwRzZZMFRMa3haVnhycXBhWGxsaXJTS3RScTBmcnZUYXU3YWVkcHIxRnUxbjdnUTVCeDBvblhDZEhaNC9PQlozblU5bFQzYWNLcHhaTlBUcjFyaTZxYTZVYm9idEVkNzl1cCs2WW5yNWVnSjVNYjZmZWViM24raHg5TC8xVS9XMzZwL1ZIREZnR3N3d2tCdHNNemhnOHhUVnhiendkTDhmYjhWRkRYY05BUTZWaGxXR1g0WVNSdWRFOG85VkdqVVlQakduR1hPTWs0MjNHYmNhakpnWW1JU1pMVGVwTjdwcFNUYm1tS2FZN1REdE14ODNNemFMTjFwazFtejB4MXpMbm0rZWIxNXZmdDJCYWVGb3N0cWkydUdWSnN1UmFwbG51dHJ4dWhWbzVXYVZZVlZwZHMwYXRuYTBsMXJ1dHU2Y1JwN2xPazA2cm50Wm53N0R4dHNtMnFiY1pzT1hZQnR1dXRtMjJmV0ZuWWhkbnQ4V3V3KzZUdlpOOXVuMk4vVDBIRFlmWkRxc2RXaDErYzdSeUZEcFdPdDZhenB6dVAzM0Y5SmJwTDJkWXp4RFAyRFBqdGhQTEtjUnBuVk9iMDBkbkYyZTVjNFB6aUl1SlM0TExMcGMrTHBzYnh0M0l2ZVJLZFBWeFhlRjYwdldkbTdPYnd1Mm8yNi91TnU1cDdvZmNuOHcwbnltZVdUTnowTVBJUStCUjVkRS9DNStWTUd2ZnJINVBRMCtCWjdYbkl5OWpMNUZYcmRld3Q2VjNxdmRoN3hjKzlqNXluK00rNHp3MzNqTGVXVi9NTjhDM3lMZkxUOE52bmwrRjMwTi9JLzlrLzNyLzBRQ25nQ1VCWndPSmdVR0JXd0w3K0hwOEliK09QenJiWmZheTJlMUJqS0M1UVJWQmo0S3RndVhCclNGb3lPeVFyU0gzNTVqT2tjNXBEb1ZRZnVqVzBBZGg1bUdMdzM0TUo0V0hoVmVHUDQ1d2lGZ2EwVEdYTlhmUjNFTnozMFQ2UkpaRTNwdG5NVTg1cnkxS05TbytxaTVxUE5vM3VqUzZQOFl1WmxuTTFWaWRXRWxzU3h3NUxpcXVObTVzdnQvODdmT0g0cDNpQytON0Y1Z3Z5RjF3ZWFIT3d2U0ZweGFwTGhJc09wWkFUSWhPT0pUd1FSQXFxQmFNSmZJVGR5V09Dbm5DSGNKbklpL1JOdEdJMkVOY0toNU84a2dxVFhxUzdKRzhOWGtreFRPbExPVzVoQ2Vwa0x4TURVemRtenFlRnBwMklHMHlQVHE5TVlPU2taQnhRcW9oVFpPMlorcG41bVoyeTZ4bGhiTCt4VzZMdHk4ZWxRZkphN09RckFWWkxRcTJRcWJvVkZvbzF5b0hzbWRsVjJhL3pZbktPWmFybml2TjdjeXp5dHVRTjV6dm4vL3RFc0lTNFpLMnBZWkxWeTBkV09hOXJHbzVzanh4ZWRzSzR4VUZLNFpXQnF3OHVJcTJLbTNWVDZ2dFY1ZXVmcjBtZWsxcmdWN0J5b0xCdFFGcjZ3dFZDdVdGZmV2YzErMWRUMWd2V2QrMVlmcUduUnMrRlltS3JoVGJGNWNWZjlnbzNIamxHNGR2eXIrWjNKUzBxYXZFdVdUUFp0Sm02ZWJlTFo1YkRwYXFsK2FYRG00TjJkcTBEZDlXdE8zMTlrWGJMNWZOS051N2c3WkR1YU8vUExpOFphZkp6czA3UDFTa1ZQUlUrbFEyN3RMZHRXSFgrRzdSN2h0N3ZQWTA3TlhiVzd6My9UN0p2dHRWQVZWTjFXYlZaZnRKKzdQM1A2NkpxdW40bHZ0dFhhMU9iWEh0eHdQU0EvMEhJdzYyMTduVTFSM1NQVlJTajlZcjYwY094eCsrL3AzdmR5ME5OZzFWalp6RzRpTndSSG5rNmZjSjMvY2VEVHJhZG94N3JPRUgweDkySFdjZEwycENtdkthUnB0VG12dGJZbHU2VDh3KzBkYnEzbnI4UjlzZkQ1dzBQRmw1U3ZOVXlXbmE2WUxUazJmeXo0eWRsWjE5Zmk3NTNHRGJvclo3NTJQTzMyb1BiKys2RUhUaDBrWC9pK2M3dkR2T1hQSzRkUEt5MitVVFY3aFhtcTg2WDIzcWRPbzgvcFBUVDhlN25MdWFycmxjYTdudWVyMjFlMmIzNlJ1ZU44N2Q5TDE1OFJiLzF0V2VPVDNkdmZONmIvZkY5L1hmRnQxK2NpZjl6c3U3MlhjbjdxMjhUN3hmOUVEdFFkbEQzWWZWUDF2KzNOanYzSDlxd0hlZzg5SGNSL2NHaFlQUC9wSDFqdzlEQlkrWmo4dUdEWWJybmpnK09UbmlQM0w5NmZ5blE4OWt6eWFlRi82aS9zdXVGeFl2ZnZqVjY5Zk8wWmpSb1pmeWw1Ty9iWHlsL2VyQTZ4bXYyOGJDeGg2K3lYZ3pNVjcwVnZ2dHdYZmNkeDN2bzk4UFQrUjhJSDhvLzJqNXNmVlQwS2Y3a3htVGsvOEVBNWp6L0dNekxkc0FBQUFnWTBoU1RRQUFlaVVBQUlDREFBRDUvd0FBZ09rQUFIVXdBQURxWUFBQU9wZ0FBQmR2a2wvRlJnQUFCTTFKUkVGVWVOcnMyOCtMRzJVWXdQSFhabTZDdVhrMGRFMFRzVCtTbVQxb2Q1Rmsrd3ZwbXRHYmlFaE9YbFZRTDE0Q25rdjNYRVFESG9SQ1llbXBiS21kcE10U3dVejIxUE1jUlBCU2dwQmxZVWQ0UEd5em1VMDJ1L01tNzQvbm1mZDk0ZmtIOHVHYk4rL2tIUVpkRDVSTXgydkRqbHRnUkJjczNjanZsUnJ0dmJJUE1vY3BBK2w2QUIxM0FGMnZCYjNsUEMwSXZ6VXMrUVBaR09wQkNNR29odEFMY2d5bTJzU0dNU3o1emIyeUg2bUV3QUV5aG9rd3dPaUV3QVdTaEhubTFsUkQ3QmNidGIyU3Y2c1RBaWZJR0NaUUFiTmZiTlNHNVVhQUFRSTNTQkptMjYySS8ycjZxSUlOZ2dhSTREUE0vdm5iQlJWbmlleURMQWhEQVlJbUNPY1pSdGRad2l5UUZEQVVJZWlEekRoY0RrdCtreUpFZGtCZXpSL0JsYWh6NjJaRUZTSlRJTHRCQmZKYmIwTitzd2pQcjkyMElCZ3cyTllTc0swbDhpZ3NTeGhaUUdGWnc2Q093cktJa1p4N1gzeGdRV1RPNXRQTHFURW9vcEFDYVQrOXhBVkJFWVdaZ0VFSmhabUNRUVdGbVlSQkFZV1pob0VkaFptSWdSbUZtWXFCRllWQnh3MU14UmpORDkrOGp3amttVnN6R1dNMG4vL280UUJoakRIb2VHMlRNVENoSElMMGx2T3YvaEkxRmdNSlNqVCtIN3BiL1ZvSHhzYnZGOUZnNkVZWmx2emoxMmtQNzlpcXcyZytlUWNkaGthVWFQcmFqTUlOSGpPR0RwU3BPc2FWZUpzV1F6bEtOUHR5Mlk1YmtMbkJVOEpRaFRLemp2RUc3N1VzeGpUSzM5VjF0WFVjZ1J6K0RJNHN4dkc1L1BPN3dsSE9yR084d1ZjL3RoaVNVVXIrTHQrTGp3S2VjMlVKUXpUS2ZySEI5MUlTYkxzVml5RUhaVmh1QlBPOUh0ejFOaXlHZUJUdU9pWTIrSUhGRUljeWR4Mko1MXhOaXlFT1plNDZKamI0M2RNZ0JoMFhLbzh2R0lmQmk3SndIV21lYzVtT3dZTWlwSTdFYzY2MnhUaDkzdnF0UFBPU3Q3QTZabTN3Rm9QdjVyM1FPaWFmYzFrTVBoVGhkU1RYeTA0MXNoaDhLRkxxR0sxTHplZEI3bUhGZnVncFVSNnRYNWRYeDlVMXFLMnVBVlErZlFFV0pjVTh1UTI1UC8rUkI3SmFoMkIxRGNDaXBNVjRDVTRZZzlPUGE5THFTSTVGU1lFUnh1RDA0a0JxSGNrcGZ2WEFBcHlHTVJxUmxaeFVoMFhod0JCZHlhdzZMRXBLREpHVm5GV0hSVW1KSWFxU05IVVlqWklXUTBRbFBIVVlpY0tMc1dnbHZIV1loUEphOENVL3hpS1Z6RnRIY3M1Ly8wczJNVHJmemdleFNDV0wxSkdjTis5OFp6RVdyVVJFSFZsRUVZWVJ4cERyeFp2SzY4Z1Npa2lNMGJBK0ZKVFhrUVVVR1JoT0dFTXVQR2hycVlNeWlpeU1WSlhJcklNaWlteU1NeXVSWFFjbEZCVVlwMWFpcW83a3ZQSFRaOFpqekt4RVpSMmplZS9EZitIMVg5ZU54aml4RWgxMVlFVFJoVEZWaVk0NnNLSG94RGlxUkhjZFdGQXdZQnlCNks1RE53b1dEQ2VNQVUwZHVsQXdZVGhoREtqcVVJMkNEZU1RQkNIR2FKWS8rVXZhblMrTUdPaEJaRjNFdzRwQkFrUTB5cm50dTJneHlJQ0lRam0zY3g4MUJpbVFSVkVvWUpBRG1SZUZDZ1pKRUY0VVNoaGtRZEtpVU1NZ0RYTFdSVHlLR09SQlpxRlF4Y2dFeUNRS1pZek1nSXhRcUdOa0JtU2xEdTJWYTFCZ2ZTamt3b08yQmRFMWRRaXVyc0gwL2RnK1ZKeGVIRmdRM1JBVHkrbkhOV293ak5oWFU3UmFoeWJ2TFg1S01DekxFSk1yMS91dm1Rc1BJZ3N5LzFmVFlLVU9MZEh2MjJPR1laZ2hsbTlBbmtsY0dHRVlRb3dOMlJESFZnL3lUaGkzY21FOHNDQW5uU1YwTFNRd0RNTlBXSzBReUdBWTlyT0V0cVhwMVAvL0FOd29yczhWOE1oV0FBQUFBRWxGVGtTdVFtQ0M"}, +{name:"__ASSET__:bitmap_flixel_system_debug_GraphicWatch",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUlHTklVazBBQUhvbEFBQ0Fnd0FBK2Y4QUFJRHBBQUIxTUFBQTZtQUFBRHFZQUFBWGI1SmZ4VVlBQUFEY1NVUkJWSGphakpBaFM4TmhHTVIvZTFGWkdNSmd3U2FyVnNPS1dSSGJtcGo4Qkg0Q205L0JabDJ3R3NSZ0U5Um1GbHcwQ0NKWUxIZG44UDF2KzZ1SUIwOTU3cmk3NStrazRiOG9BTmdGZXhmN0d2c0ZlNHA5Z2oxb3FaTVFhVDlTSXQxSE9vNTBGdWs5MG1Xa2ZoS1N6TVRUU0xlUnVnMFI2VENTSXgwMHUxSUQxb0VIU3ZsWUNMMEJYb0ZodS9NWHNZYzlxamVzQWtkQXQzS3R6cHVSSGlPOVJicUtkRmR2T0krMDFOVG96RjVuYndEakd0c0hkb0JuWUp0U251Yk9peU90Uk9wRk9xM3VGeitkdjhOZUF5YkFNcVZzQVgrSWY4SG5BTlI0d3BRazlwRnhBQUFBQUVsRlRrU3VRbUND"}, +{name:"__ASSET__:bitmap_flixel_system_debug_GraphicInteractive",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUxFZ0FBQ3hJQjB0MSsvQUFBQUJ4MFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1JtbHlaWGR2Y210eklFTlROdWk4c293QUFBQndTVVJCVkJpVmpaR3hEWUF3REFSZnpNSTYyU0JTT3RaZ0tBWmdBYW9NUVU5SmRSUUprUXVjOE5MTHNuVitGeGFnanFQdEovbUtrdVphaXpxSkFiaXJvNWNjSlYyU1ZqTXJGNXpFQXpockRXL3liOURDeXdpMDhFNlJDelk0NTR4WitBUWJuRkxDTEN6ZWt3UnNneTgyUDZENlFrZUFUREtHQUFBQUFFbEZUa1N1UW1DQw"}, +{name:"__ASSET__:bitmap_flixel_system_debug_interaction_tools_GraphicCursorCross",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUxFZ0FBQ3hJQjB0MSsvQUFBQUJaMFJWaDBRM0psWVhScGIyNGdWR2x0WlFBd05TOHlPUzh4TnJ0VlFGa0FBQUFjZEVWWWRGTnZablIzWVhKbEFFRmtiMkpsSUVacGNtVjNiM0pyY3lCRFV6Ym92TEtNQUFBQUxrbEVRVlFZbFdQOC8vOC9BeGJ3bjRHQmdSRmRrQW1iU2x4Z2tDaG1ZWUI0Qmh2QUVHZGh3T0pyaG1FVUdnQjN1Z2NXZXB2bWtRQUFBQUJKUlU1RXJrSmdnZz09"},{name:"__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorScaleY", +data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFvQUFBQUtDQVlBQUFDTk1zKzlBQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUFUZ0FBQUU0QnNjMGZNd0FBQUJ4MFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1JtbHlaWGR2Y210eklFTlROdWk4c293QUFBQkdTVVJCVkJpVmZaQkpEZ0F3Q0FLbDZmKy9iRTl0RVlPY3pFaHdRV2FHNkFJd1hNYWtkVEcyYUdhYklLUTVqcllhamNBUEhZMzhFZDVSanltN2NpS2k2ekVkRFZQSEFlQm5EaFZYand5eEFBQUFBRWxGVGtTdVFtQ0M"},{name:"__ASSET__:file_flixel_system_VirtualInputData",data:"YmFzZSA9IDI2NiA0NiA4NCA4NA0KdGh1bWIgPSAyNjYgMTMxIDUyIDUyDQphID0gMCAwIDEzMiA0NQ0KYiA9IDAgNDYgMTMyIDQ1DQpjID0gMCA5MiAxMzIgNDUNCmRvd24gPSAwIDEzOCAxMzIgNDUNCmxlZnQgPSAxMzMgMCAxMzIgNDUNCnJpZ2h0ID0gMTMzIDQ2IDEzMiA0NQ0KdXAgPSAxMzMgOTIgMTMyIDQ1DQp4ID0gMjY2IDAgMTMyIDQ1DQp5ID0gMTMzIDEzOCAxMzIgNDUNCg"}, +{name:"__ASSET__:bitmap_flixel_system_GraphicVirtualInput",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQVk4QUFBQzNDQVlBQUFEcXhOS1RBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNNQUFBN0RBY2R2cUdRQUFJLzRTVVJCVkhoZTdWMEhlQlRWMm9aQVFocEo2RFVKRUZJZ0NUV0IwRU12Z3ZUUWV4VlJxaUJGQVJYcjlkcTc2RlV2WEFWQkZPV2lRRUxvSllRV0NFMUV4UUplRkZFUkNQRDkzM3QyWmptemV6YVp0TjBOZjg3enZNOU9kcy9NZWVma20vZWRjNzRwSllqSUZpV3RlT1MxYUVhY2t4Rmw0R0RQenhaRmw2OTd3TUFQeGZZN2hyVithbXBxOUpZdFcrS2NDVzR6ejMxODh1VEphRWFjay9IL0tpWWVlWXFpSDNtUzRweUtweWpQZlZ6VStMb0pEUHhFMmVBWEthQlZBRHhvMFN1ejZPR1hMOURDNTRubVA4ZjRwNVBBYlMxOGdVVGJpMTZaSkxob3ZDU2VPdXo1TG5tRkJCWTdDWHA3S3I3TmU1WUFlTm1lcndXbE5KUjJNdlIyZFI0V3Zsci9va3lkT2xWQS93MzFVbEpTWmlVbkoxOUlUdDVNeWNtYm5BeTBtWHlCT1JqNldPSnAxOGZIangrZnhiaVFtWG1NamgwNzZsU2dUYlROTVBCZHVuUnBDWUNYN2ZocWNLdVkwUHNYcFZiNEV3TDZiNmkzNkhHYTlmQlN1c0NmeEovMDhHTk9BcmVsdFltMkRYMnM4MndZWjRIK1Blcm9mQjk5aWdoZ1FYY0s5TFpVZkJuV3ZyWHRYdzF1RlJNNlQxRWs0N0FRZmZpbGoyZ0cvMmNTeHhIVjcwOFUxYys1UUp1ZEpoRE5RblF3bDlzN0lBU09QKzM1TG42WmFESkgxTkNIaUlZc2RDN1E1aFRtdW9RNTJQSzliUjYzK1ZyK01aNE1MdzFsbkF5OVhYRFFnOFRhdnlpU2NRak9MTm9mYmRyMEpYMzAwVWYwM252djBiLys5UytuQW0ydVdyV1NObTM2aXNBRm5EUnVRdUQ0MDhDWFJmdWpJMGNPMGJadHFiUng0MWYwMVZmT0JkcmN2bjBiWldRY2hva1krRXJtVVNSaVFqWVAvSzE5WDRxRjhLUDVTNGlTUmhGMXZwc1AyVjdPQmRvY01wWm93U05DbEExOURLNlNjVmo1TG4yR1pXVStTOFUwb2tuM094ZG9jemEzRFE0cXZyYjl5M0RibUxDYUIvN1F2aXhGaTE0ZVRiT2ZKR3FZcEJaMlp3SWN3QVdjSk9JYWJ2T0ZjWXg0bUdqd0F0Y0NITUFsTzc2V2Z3VCtNZDVkdW5TcEhSRVIwZHJaQ0FzTGE5V3paODhRY05DNGdKT1ZyMjFNc0ZpUDNyejVLL3JnZy9lVnd1NU1nQU80Z0JPNGFSd05mY3hpUFJxaXZXblRKcVd3T3hQZ29CbUlMVjk4Q3I2TUloY1RpNStnMFF0WnRIdmdQRThoN000RU9DeDhsQTg5NWdSdUdrZERUT0MzeDFpMDc1MUpOUEUrMXdJY1lDRFo4V1VVaVpoQVVPaUV2V2orODRlb3h6MUVrWDNkQTcybThLbkY4enNFTnd0SEdSYStVNTlRaTdrcmNEK2JuWm92bkJ2ZmVWZXJWcTFQNmRLbDk2RHJPMVlPb2I0MTZqb1Y3U3JWeElRbE1ZZHR3Y0hCWGNGSjR3YWVIcll4a1p5Y2ZHajE2bytWWXU0S3JGbXpHbE5ZRG1QaTJMRmpoM2J1M0s0VWMxZGcxNjRkeEp4a3ZySkEyTVZFZ3dZTktDRWh3YW1JaVluSlZVeXdjUndhTVpHb0k0dTNPMkEwUzlaRGo1RERtQURmT1F2Vll1NEtQTWpubVE3NEtuV2lXdlhXRkJMYXphbW9VaTBoeDVoQVVJZ09admhjZitEcExISEdyeEp5VnlCdUtQMDE2OG0vbVp0T0hBY2NPaGhPYU9FNzRpRVdiaDRQdWdQR0xITElsOCtXL2IyOXZkOUNsNy9icWlkZG5jMm5Id3VlSjVyM0hPT2ZUZ0szdGVBRjBmYUxjWjFGY1BqNStURUp3VmVjV2RqR3hJWU5HN0krK09BRHBaQzdBaXRXTEtjdnZ2akNZVXdjUG53NGEvTm0xNDg2ZEtTa0pGTjZlcnJPVitlS1QwTk1USnMyamY3NzMvOXErUjFWM3Fjd3NWbTBQWEhpUkZNeE1mZmg2MW5kKzdGdzkzUVA5R0xKZW1EQlh3NWpBbnp2bmM3Q1BkVTljTjhzeDN6bG1Halg4VVdhL2VEdjlOQ1NHN1J3eVUxYXVOaEo0TFllZXVTR2FMdEY2NlVPWXdKQmdUKzhmWHg4bnFMWi95Q0tnbkQzY1E4MFNxSkw5ejFHL3Y3K2p6RkhId2FDUVFTRWxTOUVlNUNiWVBoRDJmRjlFZDE5cUQrUHBxYTdPcWZFcDQwem5oQmN3RW5qS3dMRE5pWTJidHlvRkhGWEFVYTJkdTFhaHpGeDlPaFJwWWk3Q3BzM2I2YmR1M2ZiOGtWZlcyUGlsVmRlb1kwYmtWUDYwTVU1cFM4Rmw1eGlZaTZmT1dQS1NDWGtyZ0NtcnFiUHZlUXdKc0FYWi93VFdMamRBVlBZeUxMaEsySmk4UEFkTk8vaFc1UTAwb1U1cFRGOHZybm9sdUNpaWdrRWhWZEVSRVE4TDk2Z21VK3JSZHhWNEZIUW4xTWZCZkViVFpzMmpVWG5BdlhyMTI5bTVUdG9udnRnMkVMbSs1Z2QzOGpJeUJibzZpY2J0aVdhNlVZNXBWbFBDazRTWHk5ZU5zUUVCRkFsT0s0QzhoNmZmdnFwdzVqSXlNaFFpcmlyZ0x6SDNyMTdaYjQ0K0h4alltSmFsaXhaa2thT0hDbnlPTzZVVXdJbmlhOWRUTXpod1g2SHU5d0hHQVZObi9PSDRKeVFrTkFBOFFEb01RRytFKzUxSDl3ekRlWmh6emNxS2tyb1JGeXpCVFNmUmR0ZGNrcmdBazdnSzhjRWdvSkhTWlpoRWsxallWT0p1S3ZBQW5mMW5rZEFtbng5ZmQ5Z3JuNE1meDVDdlkwRFQvQlZpYmlyd09aeDlWNWhkZ2ErZkRheEVueC9HYnVBSTkyTmNrbzk3NlZ6SXg0UWZEa0dYbWV1WlhqWkVCTmZmdm1sVW1qeUFwelZBcXJmekFJQ3QyN2RPb2N4Y2VUSUVhV0k1d1ZmZlBHRmdPbzNzNEI1N04rL1grYnJ5eWlyeHdTdVlITzNuQkpHZCtEcktDWm1jeGlyUk54VmdIbE1lK0FLb1Q4NURxd3h3ZjM5dHM1M1BJdTJ1d0JYWGsyYlk4KzNUSmt5SzhGMzRwVHZhTVFFSGxXeGVMc0RSazhpR2pQaHBGMU1JQ2g4UER3OHpvckYrNWF5cVBUT0YwN1g2VVI3UTl0WmNhUldlMlU5VTJnNGtLNVBXaVJJTThkTTVob0FsQzVkK2l3Nlh2Qk5lakJmT04xak11M3ROTXFLSTEzSEtldVp3dEFGZEgzS0VoWGZuOEQzeGd3ZUtibFpUdW5hZlU4SXZxVktsVHFCV09CbFEweHMyTEJCS1RLNXhUUFBQRVB6NTgrbkJRc1c1TXRBWlBOUXhjVGh3NGVWSXA1YnJGbXpodDUvLzMyQi9CaUliQjRhMzdMZzYrbnBLV0lDL2V1R09hVnNZMkltbnllcFJOd1JFdHBsVWx5cnZWYTA2bmhPV2E5bGg3T202dG1pTzRmeWZiUC9GbUxNY1dDTkNabXZTc1FkWWNEUVRPbzljSzhWUTBhZlU5WWJQUEtzcVhxMmdIbmMvNENTNzAvZ08rdkJhOElRVlZOMHJnQnlTdE1mK05NdUpoQVV2dnh4UXl4T2VaUW9na1U3SC9qNjJiZnA0czc5VnB6NzZITzZFczRNRkhWelJBTTJqL0VQQ2RMYzBiOHgxMENBZCtBR09sN3dWWWw0THZEMXU2dm80b0dqVnB4YnY0V3U5Sit0ckpzallCNlRGaHY0Wm1Sa2xHZStOd1hmV2U2WFU3cCszK002MzB0NlVNZ3hnVVNxU21SeWc2VkxsOUtERHo0b0RBUll1SENoc3A0WndEdysrK3d6aHpGeDZOQWhwWWpuQmhnTm9DMFlDQUJ4VjlVekE1aEhXbHFhekRjZ016T3pnaDRUcUdPN2o2NEU5bFUzRDBjeE1YMHVVZnNlNXZIUjZyOXBYOXBGS3g1KzVDZ2xkczh5MUduWDlRbzkvYy9NMi9YMi8wcFAvdk9tb1k0amRPTlF2bmVtVll5dE1TSHpIVGZGUFA3NzFkOTA2UEJGSy83NXdsRWFNem5MVUdmMHhDdjArbHVadCtzZCtaWGVmdSttb1k0ajRMNlBxYk9NZktFVHpQVW0rRDR3NzZhWU1sSUp1U3ZRQTlPQ3M2L1l4WVFlRk9JSG1yUkVMZUltY1Q2c0cyWDkvZ2R2MGxqT3RSbXVySjhqWUI1akYrcWtzZUVnZ0E4ODBmR0M3MENPakR6aS9OMzNVZFlmZndxT2NqbkhiYXJxNTRnaDg5anNIamJ3WGJKa1NiQ1Y3M1QzeXlsZG55SnlOT0NIamtBc0dHSmkvZnIxU3BFeGk4Y2VlNHdlZnZoaE1kcDQ2YVdYNk9XWFg2YlhYMzlkV2RjTVlCNWF6a01aRXdjUEhyUVQ4TndBeHZIdmYvOWJDQ2hHT0o5Ly9ya3dVRlZkTTRCNTdOdTN6MkZNRk9TMFlFRUEvWXQ5MXZncVkrTCtCOVFpN2dneitOQ1F5K1hMV2RTcDV4bERuYnNIWkdpL1dzb2ZmOXlpWGdPTjIzR0VyaHpLOTB5M2lyRTFKbVMrS2hGM2hLZWZFeFNzNVk4L3MyajBoRE9HT2hQdk5mTDk2NjliNGlvcXVZNGpJSGsvWllhUjc2SkZpMEowdnJNZXZLa2NZYmtLR05uZFA4dHFIdGFZTUpvSEN4OUYzSjFuZkR2aElmU2pYVG16K0VWbC9Sd1JPNEN1ajVvbmt6YWFCL2dPbkpObmZMdjRKY0hQdHB4NTVRTmwvUnd4NUVHNlBrWWtscXg4V1NoQ3JYeHhINGhLeEYwRm1NZGtTMDVKRGdydFUzd1BFVldKakJub3hnSERnSEhBUU41ODgwMXhOcStxYndZUU4xeHRKWEUyeE1TQkF3ZVVJbTRHdW5GQVBHRWMySGRNSyszY3VWTlozd3lraExreUpncHFXaEFvNkp5U281aVl5aUxadm52dXNPcVRtN3lKMitXMU4wOVJ1eTVYeEcrdE8xMms1QzNudFY4czVhRkgxTnRSb1N1ZlowNjYzeXJHMXBpUStZNjlKM2Y0Y3BPUjd3ZkxUOUdvQ1ZmRWI4UEdYcVFkdTR4OFgzcGR2UjBWY01YVjVHbEd2b3NYTDY2bDg1MHh4LzNNWStxTW5NeGpESjl4cTBUY0JMTENlNGtwS2xXNW5IR1Nyb1F6QzhWNjJRTG1NWHl1VE5wb0h1QTdnRVU3RDhqcVA1dk9yVThSL0d6TDVaUGYwSlcrTTVYclpZdkJiQjRqaldZM2QrN2NPbGErOXo3T29zMlJuZzhVZUU1cGduV2F6Um9VMnFmNEhrS3FFcG1jb0J2SHE2KythZ1dNQTZPR0R6LzhVTG1PR1VEY1B2bmtFNGN4a1o2ZXJoVHhuQ0NQT0hSQTJIR1o3ZGF0VzVYcm1BSE1ZOCtlUFE1am9pQ21CWUdDekNsSjA0TEttSmd5Z3lpUlJUczM2RG5BTXBxUVN5OGViZUMzQ1ZPTVovRmJkOXl3V3o4N2RPRlFuampWc1htQTc5akp1Y05VWGdlakNibE11Q2REL0Radm9aSHYvdlFiZHV0bkIxeHhOZkUrSTk4NWMrYUU2WHluemM2ZGVSUjJUcWtibThlVWFUbVpCd3NmUmZUS0UzNXN4QzFJNWNiR25kcVNwWnh1UFVTNVhyYUk3VWZYaDh5V1NSdk5BM3dIOEpnMEQvZ3hpYzFCS2pkMkg5YVdMT1gwU0I1cks5YkxGb1Btc3RuTk1mQTFtTWRrTjh3cGpiWG1sS3hCb1gySzczRVdxaEtaN0lBY2g2MXh2UEhHRzJKYksxZXVGRWxvMVhwbUFISER5RVhpYklnSkpLZFZJcDRkVk1ZQlVjZUlZZHUyYlpTY25LeGN6d3hnSGpBZ21hOGNFL21kRmdRS09xY2tUUXNxWTJMU05MV0k1d1E4MGtRdW0zbTBFZC82Q0IwL2NWbjdCZ1p6a3dhUFZxL3ZDRENQY2ZjNk5nL3dIY09pblZ1ODlKcWdaQzBZYmZSSk9rS252NzdOOTgrL2J0SURDOVRyTzRJbGNlN1lQTzZiYVM3WG82T3djMHFZRnB4OFgwN21NWXdGazBjUWVjSFpXVStnTDI4WDNBUW5sWE52ZmFoY0wxdkVzSG13eUlPYlJ0cG9IdUNMNUhZZWNQYnB0d1F2YTdsbnFiWmdLZWRXclZldWx5MlM1dGlabmNFOEpyaFpUaW1XeldPME5hZGtEUXJ0VTN5UHMxQ1Z5RGdDaEd6Um9rVWlyd0hUZU8yMTEyalpzbVZpQktNYlIzNXVoTXZKUEpDY1ZvbTRJOEE0bGk5Zkxzd0NwZ0V4eC9leWNlQkdQOXYxekFMbXNXdlhMb2N4Z1RaVisya1doWkZUc3BrV3RJdUpDZmV4R0hYTEc5SVBHcWVEMXE0N3B5MVpDcVovVk90bEI5elFOdVlleCtZQnZyamNOQzg0ZHR6STk4dU5ScjRyVnFyWHl3N0llNHkxNFN1Yng3M1RjMmNlenNncFRidzNKL01ZekFLSXM5aGM0a3JkN25UK3Yxc0VLWlJyUjArTDcvLytjcnYyRGRHVjczNmt5eXgrdHV0bWk1aStkTDMvTkptMDBUekFWeVhpT2VCS24rbDBmdXNld1F2bDJ0ZmZpZS8vM25sUSs0YjUvblNCTHZlKzMyN2RiQUh6U0pwaDRHc3dqN0Z1bUZNYVlaaG1zeE1LQ0lsS1pGUjQ4c2tucmNZQjA4Q25iQnd3amZ5TU9nQ0kyOGNmZit3d0ppRDZLaEZYWWRXcVZWYmpnR25vaVhIZE9HQWFNQThZZ08yNlpvRjFkK3l3M0tHcmlvbThUZ3NDaFpWVHNwa1d0SXNKaUo5S3hNMWcwQ2dXTng1ZHFFcjZ3UnZLZFhJQ3pHUFVSTWZtQWI2akorWU5zK2RaUmhlcWNpenpobktkbkREdUh2NmM1Tmc4N3JtZnpZTkhWTGxCWWVlVUprekp5VHdHekZTTGVBNDQxMmFZSUtTWDY0KzlJYjYvT2NkNDJjSTMzY2ZiclpzdFlCNTk3cE5KRzgwRGZQdk55alhPalhwUThOSEw5YmZYaU85dnZyUkMrOFpTdnBtOHlHN2RiREh3QWJyZWI3cUJyOEU4UnJsaFRtbW9JYWRrSnhRUUVwWElxUERJSTQ4STA4QVVsUTZZRDg3dThidHVIUGtkZVVEMEpjNkdtRUIrUVNYaUt2em5QLyt4bW9ZT1RESEJPQ0Q2dW5Ia2QrU1JuWG5rWlZvUUtNeWNrczNJemk0bU1QV2lFbkd6ZVBjRDNwcWk1TldVWUI0anhqczJEL0FkeGFLZFYzenltYUJuVng1NlZGMC9KeUJwUG5LQ1kvT1lPUFdtM2RSY1RpanNuTkxZeVRtWlI5OXBMTm9zUXJuRW1jVXZDRkxXa2pqVzhsdlRKTzBMUzdGTVhkbXY3eERSZmVoNnIzdGwwa2J6QU45K01KRGM0Y3hMN3drKzFqTDVNY3R2SXhab1gxakt1WlZmMksyYkxRYk9wdXU5aldabk1JL2hicGhUR21TWVpyTVRpdHlleGNyR0FUejk5Tk9FMFFjTVE0WnFYVE9BdUdFVUkzRTJ4QVRFWHlYaUtrRFlaZU1BVnE5ZUxYNkRZY2l3WGRjczBNYjI3ZHNkeGtSdXB3VUJKK2VVN0dKaUpBdGcyNjU1UjhzT0Y4WFVpbHpXcnZ1Uno1Q3ZLT3ZuQk53VE1YU3NZL01BMzFFVDhvN0JJeStLeTNYbDh1WEdIMm40bUN2Sytqa0JTZk5oNHh5YngvZ3B1VGNQb0RCelNyaXZCZHprbURDYXg5MVRpZXF5YU9jQ1Y4SzY4Wmt2YmpxMGxHdEhUeGwrRjM5ckJWTlg1MnQzTnZ5ZUxlcXplZlNZTEpNMm1nZjQ0cXFvWE9ESzNmZlQ1Wk5uQkIrVWE2ZS9NL3d1L3RiS2xSL1AwM2x1WC80OVd3eGc4K2hwZWRpZ3p0ZGdIa1BjTUtmRW96ZUpyNTFRUUV4VklxTUNoQkRDaFROZ2lCaytIMy84Y1pIQWhZSG85ZDU5OTEzRGVya0J4QTBqR1lteklTYVFYMUNKdUFvWXBXQjBnYXVxWUJ6NGhQanFOd1ZDK0hYWXJtc1dXQmNqR1ptdkhCTVlLYWoyMHhHY2tWUEMvMXppYXhjVHc4ZXJSZHdNMm5USm9uR1REL0htakFWbWNsZmZROHAxY2tLbm5pendveDJiQi9pT1pOSE9DMGFNeTZJSDV0bnpoWm1NbVhoSXVVNU93RWhveUJqSDVqRjI4azNsQ01zTUNpdW5OSEo4VHVaeEY0OGJWU0tlRGM2MjRqTmVxV1F1K2lkdHFON01Ddnd0bDI4bjhObTlZanRLd0R5NldoNFRyWkUybWdmNDlwMlJLNXdkOFlEZ29aZk1GOTZoRFMzN1dZRy81Zkx0d3p5cVVteEhpZjR6N2N6T1lCNUpzMW0wYmFibVRLQlFjMHI5RERrbE82RkFma0VsTWlvZ2Y0QnBJSWpYVzIrOVpUVVE1RUllZXVnaGc0SGtGUkEzVE10SW5BMHhrWnQ3TXJaczJTSVM3QmhaNEdZOTNVQXdMWWFycjFDbklNd0RsL3JLZk9XWUtBSTVKYnVZR0RxV1JidEwzdENoMnhuNjRZY3J2RG43c2pmdElyVklQSzljTHp0MFpLbElHdW5ZUE1CM0pBd2tEeGcrNWd6OS9MT2E3OEZERnlscDJIbmxldGxoekNUa2ZoeWJ4K2dKZVRlUFFza3A4WGttUmxuZ0pzZUUwVHk2OFY3VjdaRXJuSDNXNXFxbEhNcVBtTGRYYkVlSityM3BlcWR4TW1tamVZQnZuK201d3RsM1Znb2Vac3VQWHlRcnQ2TkV2eGxzZGhNTWZBM213ZWFpRlBFY1VHZzVwV2cyRCtNMG01MVFRSlJVSXFQQ08rKzhReXRXckRBWUNNd0RlT0tKSjZ3amtQeU1QQ0NPYUVQaWJJZ0o1QmRVSXE0Q0hqZWZtcHBxTUJDWWgyNGc4Z2pFZGwyendMcG9RK1lyeDBRUnlDblp4UVFFcWcyTGRtN1Jzc05sZXVXTjJ6TVJLTGJ6OU5ObUg2TFduYk9VNnpzQzdrVVlNTXl4ZVlEdkNCNm81eGFEUjE2bTl6NHc4clc5OTJQUkk0ZFlXTE9VNnp2Q3FJbk1kN2hqOHhneEx1L21BUlI0VG9uTlk4aW9uTXlqTTR1UFNzUWQ0SEtkTHVLTU56Y2w2L2ZMZEw1MkorWDI3RkQvYnJyZVliUk0ybWdlNEtzU2NRZTQzSE9LbUlyS1RjSGpTODUzNS8rMlludDJnSGwwR212Z2F6Q1BQbTZZVStwcHlDblpDWVV1VEdZQVU0Q0I2RmN3UWN6ZWZ2dHRZU0lBRENTL0k1RDMzMzlQYkYvaWJJZ0o1QmRVSXE0Q2hCMEdvbzlBOVBzNVlDS0FQQUxKSzlBR3RpL3psV01pTjlPQ2dHd2NRR0hrbEd5bUJlMWlZdUFJdFlqbmhFRWpqSW5iSDMrNktiWWxGMHhmSlhZOXFWemZFV0FlL1lZNk5nKzBvUkx4bkRCMW1wSHZoVjl1MmwwVys4Y2ZXVFJrNUVubCtvNkF2RWQvRzc2eWVRd2JjMU01UFdjV0JaMVR3dk90Qm8zSXlUemFzeWpWN1c0YTMzVGorbmtvWDQ5L1VMazlPOVRyUmRmYmluY0w2S1NONWdHK0VHU1QrR2JpUXRGK2JzdlhELzFUdVQwNzlKdE8xeE9OWm1jd2oxNzM4WDV4cE9jQ2haNVQ2bjZQWFZCb24rTDczRnk1QS9QUW9Sc0l6dDUxQThFbmNpQ1l0MWV0YndZd0R3aTZ4TmtRRThndnFFUmNCUWk3RHBXQjRCTWpMNGlwdkY1dUFITktTVWx4R0JPNW1SWjBWazdKWmxyUUxpYjY4MEM0RFlkWmJ0Q3N6Vmt4TFNXWCsyZGJmbHYybm5HYTVmM2xaNmxGNGtXN2JUaENCejdQN0RQWXNYbUE3M0FXN2R5Zzc2Q3pZbHBLTGt1ZnR2eTJlcTJSNzhkcnpsTFM4SXQyMjNBRTVEMzZEbkZzSGtORzVkMDhDaU9uQlBOSUdwYVRlYlRsOFYwWWk3WkpmUGZtZndReGErR3pXRlU5YW9kM3ZkOHVtTC9QcXNQaklWVmRHVkZzSHEyR3k2U041Z0crdUJmREpMNzdjSjFvMzFxbVA2V3NSeE1XYXhVczVYenFic3BDY2w1VlYwYmZhWFM5amRIc0RPYlJ3dzF6U2wwTU9TVTdvY0RsckNxUlVRR2pEdmxUdjJ0Yk5oQWd2K2FCN1VtY0RUR0JLU0tWaUtzQVlkZEhIL2lFeU9NaGhyWWprUHlhQjZiRVpMNXlUR0IwbzlwUEZaeVZVOEwvWE9KckZ4TjlPU1JiczJpYlJjdU9WK2lwWjIrZkFLR2ticjloL1IyUHY3Q2RweDg3Q2ROWDl0dFNBVGV5M1ozazJEekFkemlmWjVvRnBtaGVmZDNJZDkvK0c5YmY4U3BaMjNzL1pzODlaTmhHZGtEZW8vY2d4K2FSTklMTmcwZFVlVUZoNVpUNkQ4M0pQRnJ4K0U0bDRncWNyOVZSVEVIcEpldjduNVQxZEZ5VnpwQlJmb3p0cGF4bkFNd2pZYWhNMm1nZTRLc1NjUVhPZDV0Z2VJSnUxcysvS092cHVIcjZXNjJtcGZ6WTM2UjUySmlkd1R5NnVtRk9xYU1ocDJRbkZNZ3ZxRVJHQlhua0FRT1JSeURZRGd3RXlFMGV4Ull3RDV4OVM1d05NWUVSaEVyRVZaQkhIcnFCNkNNUTJZUnlNNXF4aGI1ZG1hOGNFMFVncDJRWEU3MEhzV2gzTW84ZWZUSU0weWd3aWdFOEdwRHI0S3hlTHVkWUFPTmFuVGJVY1FUY3lOWnpnR1B6QU45aFk4eGp6UGdNTVIybGx6Ly92RW5USHpEV2VlTnQ3VWV0L1BUekZlbzk0TFNoamlOZzZxclhRTWZtTVdEWVRidXBPVE1vekp4UzM4RTVtVWNML28vaWloMFR1RFRSZUxmejllZmZWOWJUSVg2WHl1K3orYXhmVWMrQXFKNTB2ZGxnbWJUUlBNRDM3dnRNNGRLU1YwUzdlcm0rbkVWV1VVK0grRjBxdi8vakhXVTlBL3JjVDlkYkdNM09ZQjZkZUx5cUVuRUhjRXBPcWYwWXU2RFFQc1gzRUgrVnlLZ0FjZE9oR3dpQUVZaCtPU3hHSW5tNXQwRUh6QVBDS1hFMnhBUkdEeW9SVndIQ3JrTTNFQURid0RPeVlDSVlpZVRteGtOYjZOdVUrY294VVFSeVNuWXhnY2RhcUVSY2hWWWRzeWhsS3paenV5eDdUMTMzNUNuajJmd2J5eTRxNjlrQzV0R2puMlB6QUYrVmlLc3dkRlFXN2Q1ajVMdDZyYnJ1TjJlTmZQL3owVVZsUFZ2QVBPN3E3OWc4K2czSm0za1VaazZwZDFKTzVzRkNyUlJ4RlNZdklYcmhnOXRvaHlrdlJUMGQrRjJ1ai9WVjlXVEFQSm9PbEVrYnpRTjhWU0t1d3VOOEJyOWkvVzJNWDZTdXB3Ty95L1d4dnFxZURCNTlYRzgyeU1EWFlCN3VuMU95RXdvSXYwcGtWTkROQXRDRkRrS0dUd2crNXZlUklNYmZxdlhOQU9LR1Q0bXpJU2IwS1NjejBJVWQwTTFEL3g1VFRiaHlDOUMvend2MGRXVytja3dVZ1p5U1hVemMxVjh0NGlyZ1JVMHdDeG1xZWdBdVlUVmJWd2JNbzFzZngrWUJ2a05adE0wQUR5MzhtTTFDaHFvZU1JOGx3bXhkR2NoN2RPL3IyRHo2Sk4xUzVuYXlRMkhubEhxeDJZR2JIQk5HODhEVk95b1JkeFZnSG8zN3k2U041Z0crS2hGM0ZXQWVObVpuTUkrMm8zbS9PTkpOd2prNXBSRjJRYUY5aXU4aFRpcVJjUlVnYmhCUGliTWhKdkp6TjNoaEFPYUJ2SW5NVjQ2SklwQlRzb3NKdk4raEZZdTJ1MERjQlgyM1kvTUEzNkY4aUxnTGtQZm8ydHV4ZWZRYWNNdVEwOGtKenNncDlXQ3pBemM1Sm96bTBYZ0FpMHBYOTBIVVhYUzlZVitadE5FOHdCZUpiSGRCNzZsMlptY3dqMVlqZWI5c0JOd0JuSmRUR21ZWEZOcW4rQjVUSXlxUmNSVWdiaEJQaWJNaEpqQ0NVSW00cXdEendKU2R6RmVPaVNLUVU3S0xDVHdvcjFWSDkwRTdsb3JPUFIyYkIvaXFSTnhWZ0hsMDd1WFlQTzdxeCtiQnBtZ1d6c2dwZFdPekF6YzVKb3ptMGFBZlVUak9XRzFFM0ZXb3grWVIwMXNtYlRRUDhNVVpmeThXYm5kQW4vdm9lZ09qMlJuTXcvMXpTblpDZ2VrbVFDVTByZ0N1QnNySlBEWnVWQXU1SzdCcFUvYm1VUVJ5U25ZeGdjZFZ0R0ZSVVFtNUs1RElvZHp4THNmbUFiNFE3U0dqM0FNajJEdzYyWmlkYkI3ZCs1ZzNENmZrbExoL3U3RFpnWnNjRTRhZ3VGYVB6MVliY0UvWFllRjJCelRxUTFkNDlBRnVHbW1EVUZ5TDdVUFUvMzRXN252ZEE4emxTcXpSN0F6bTBXeUlXc1JWY0ZwT0tja3VLT1NZd0puczh1WG04eDZGalJVci9pMnVMcEk0RzJJQ0FwcWM3RDVUVnlrcHllTHhJVEpmT1NhS1FFN0pMaVlTdS84bG5pZWxFbkpYQUNPTGR0MStGLzJwTW8vMlBmNFNOK2FwaE53VkdETVJaL05HdnJKNWRPMXQzanlja1ZPQ09XTmtCMjV5VEJpQzR1ZGFIZGhpeGhCRjlGQ0x1VE1SY1JkSHhUajZOaVJSSm0wUWlwOWhkSU5taUROK3BaZzdFMzJadzVDWjlHMkRuZ2ErQnZOb09rZ3Q0cTZDeUNrTnNBc0tPU2FlZSs0NUZxU1AzV0wwQVE1cjFud3M3cXFXT0J0aUFsY3ZiZCsrTFY5SjdvSUNPSUNMVFFMYUVCTkZJS2RrRnhQTjI1MFF6NHZDbFRndFdieGRDZHpFTm13Y1VYenJnNkkvVmViUnV0TUptblRmTFJvKzloYUx0MnN4Z2psTW5uYUxXbll3OHBYTm8zT3ZXOHJjanF1QVI1UmdaQWR1Y2t3WWdtSnJZQXpkaUdUUjdzWTIzWXlGTG9iRnVUNlBScHdKdE5tYzIrNDJucm4wcEs4Q28yWFNCcUhZR3QrVGJtQzBOR29lMGZDNVJBUHdpQkRjNmUxRW9NM2hEd29PNFBKVmsrNEd2ck5temFwdE5ZL0dBMW0wT2RyZEJTS24xTTh1S09TWVlQN2k3SGJ0MmpYaXlpQUlJUVRQbVVDYk1BVThCd3BjcGsxei9JS3dmL3pqSDJMMHNXUEhkbkhQQmhMb21NcHlKdEJtYXVvV3dRRmNjQVdVekZlT2lTS1FVN0tMaWZENnI3Tm9YNk1SNDRsNjlyZGNqWU41Y1dmQ2NnV1E1YkxYZHQyeUtLemVTNkkvVmViUnVQbnJYT2NhM1RmckZwdklUUjZGM0tTUjQ1MEx0SW0ycHpJSDhHMFliK1E3WThhTU9qcmZUbmV4ZWJBeHVndVFVK3JRUFFmejJPQVhTZWtWbWxBV0x1UHNpWHZvcHhEZGZRLy9sNXdFdE5XSDI3eHJBbDJyMjQzMk01ZlZ2dUV5YVlOUWJHamVrOUtiOUtRc0dON1FXVVQzTENMQ0M1d21QZXdjb0szSi9EbDRKbDFqRHZ1WnkrcTRiZ2EraXhZdENyR2FSME9PZG5mTEtjWDJzUXNLT1NhbVRwMUtDeFlzRUZmeHdFRFdyZnVNUHZ2c1U4WmFKd0Z0ZmNadHJ4YlRWZUF5Y2FMakp5M2pTaU84VVE4MzB1M2N1WjEyNzk0bEh0UHVUS0JOdEkzOEE5N3loM3N2Wkw3ejU4OFA4ZkR3RUh3eG1uS0hVWjBPUlU3SkxpWnFoVDlCOVJwOXpDT1BxK0sxcXVQNWtOWGZ6KzBzb00xUjNIYnJ6bjlSdllZcktTUnNrZWhQbFhrMGpIdUM0bHAreklaM2xhWk12MFVQekw5SnN4bXo1amtIYUF1NGg5dHUyK1V2NXJLU1lob2IrUzVjdURCVTU5dWgreTIzeXlrbGRsV2Jodysrd09KSHZuV0ZnV3dKaUthdnE3YWdYME02ME8raEhaMktpeUh0UmR2Slplc0xMc3Q5dzNUU3Z6TFhBSUNGNGs5MC9FZE51Z2dEMmNJamtLOWo3NkpmbzNyUTcwN0d4WG85Uk52SnpBRmNsamZ1SlBNTlpERXB6M3l2Z2U5Vk44d3AvUlZsbldZRFh4OWVOc1RFdUhIamhJSHdtWkU0ZzM3eHhSZUZJRG9UYUJOdFQ1OCtYWEFaTThaNlk2TmRUTEF3Q3dQQjFCYW1YNUFId011Tm5BazhjZ1J0UC9YVVU0TEwzTG5XdHpYYXhRUk0yZDF5U25qc2ljVFhMaWFDNnl3VUJoSlc3MlZxMUh3SE5XLzNQU1VrL3VSVU5HLzNyV2k3VHRRTGdrdHc3WG5nQ3pHMnhvVE9ON3JSUW1FZ2padTlUTTNiN3FDV0hiOW5VZnpKcVdqWjRWdlJkcU5tTHdndTlSc1krQWJ1M0xtelBQOTlEWHpiZFA3RHZYSktMRm10TzEyeWl3a0VoVGZ2UUFZV0gvYXVJUVRibmZCQW1XcUN0S2VuSjE0NlhoYnc4dkxLUU1jL0hCRW5CTnVkOEVCWUl3UGZBd2NPQk9sOGo0VzJkYnVjMHY3Z1ZqSmZiMTQyeEVTUEhqMkVZTHNUT25mdTdEQW1oZzBiSmdUYm5UQmdnQ1d2eEJ6Qk55QXRMUzBRZlBFZFhpZnJiamtsdktWUTZsKzdtS2hjYmJnUWJIZEN4YXBKUW95OXZiMnRNY0Y4ajRKdnJiRGhRckRkQ1NHMWpYelQwOU9EZEw1TkV2YlJrTkh1azFOQ2ZxdGhNOHRyQmVTWVFGQ1U4ZlB6ZXgyTDFUMjg2QlBmY0tXSXV3S2YrVVZRVGVZRWJnRUJBZjlncm40QUw3OGgrSHI3MFNkeDNaUWk3Z3A4RnQrZGFucjdxL2lLL20zcEhVUlpmS1pQM2QwZ3A4UWNia1Qxb25iZTVRVGZzbVhMUG9WWTRHVkRUQVFHQnRLa1NaT1VJdTRLVEo0OG1jcVZzM0JXeFVTRkNoWEVDNU5VSXU0S0xGNjhtQ3BXckNqejlXZjRjbisvaHUvQ3dzTEVGVzN1bEZPS2pJek1OaVk4UFN0UVNOZ1NwWWk3QXFGMUh5RlByMHFDTThmR000Z0h3Ti9mWC9BdFU2WUN4VFpab2hSeFZ5QzJ5U05VeHRzeDM3SUJjZFM2NDFWeFA0aXJjMHJnMExyVGRRb0lhbUVYRXdnS3o5RFEwSzRlSGg3ZjQ4K0VVdjRpejZBU2MyY0NVMmpOU3ZrSnd1Qld0MjdkVHN6VkcrQURycHVWYjdrcUlzK2dFbk5uQWxOb3pZSXFxL2o2UkVSRUpQSjNGL0RiQXdHMTZIbzQvMmQ2VGlUcWU2OXJja3JjOXRYdzdqUWpJTVRLdDM3OStzMFFDL3kzWFV6VXJsMWI1QmxVWXU1TVlBcXRWcTFhT2NaRXZYcjFSSjVCSmViT0JLYlFJalVoQnJmdzhQRE9pQWZ3bFdPaWE5ZXVicEZUd25TVlBxb0QzK3hpd3Rldm5zZ3pxTVRjbWNBVW1vOWZsREltNnRTcFk0MkpnS0I2SXMrZ0VuTm5BbE5vQVlGS3ZqNGNIOWFZcUZaekNyWHM4TGQ0ZlB0NFBteHhtYTB6TVk3YkhEbmhGclZvL3dkVnJUbEpHUk1JaXRKOFFEYm5zNk5KUEl5NmhLOHFsQ3hObzd3cTByUGVJZlNTVDZoVDhZeDNzR2c3c0dRcFFaZzVYYTVjdWZJNFB0amltS3NYd0IyZVlPRHI1VTJqYWtiU3MvVmIwa3N4Ylp5S1orcTFFRzBIZWxwR1NDcStyVnExQ21PK1UvaTNLNmdUNCtsUG4xVnVST2RDRXVsOGFBZW40anR1RTIySGxmWXg4RzNkdW5VSVlvRy9VOFlFbjNWU1FrSUM5ZS9mbjVLU2tweUt2bjM3aXJaOWZJeWNzNHNKUHNzWFFnalRtekpsaWxNeGZ2eDQwVGI2VE1HM0RNTXpQajYramh3VDFhdFhGd2FKcThWd2ViUXpnZndRMnE1VXlYSTJyUFBOS1NaS2xRNmdjaFc2Q0hHcEhqTFZxYWhhYzZKb3U1UjJncWx6WnJPMnhnU2ZVQmhpd3RNcmdLclc2RUoxb3laUlJQMnBUa1ZZNUVUUmR1blNqdm0yYU5IQ29CTStmQklkR2JPY21yWThTWEd0djNVcW1yUTRMdHIyOWc1MUdCTUlDZzhPaWxvY3ZKMXIxS2lSNU9ucHVRTmZ1d05LbFNxVlVhVktsVkhneHVKUWs3bVdBb29ZMzlMcjE2OHZFeHdjM0FhZHozVk9xZFoxQlhTK0lTRWhyZFBTMGp3UkMveDljVXdVSUdTKzBkSFJ3WWdIb0RnbUNnNUZPU2FLc2s0Z0tFcnljTld6ZlBueUxiaENKeWJmaFplbjgxblRNaTh2cjFUc2hEUEJiYVp3MjIrQ0E3aUFFN2lscEtUZ29QTUFpaHBmUnFuRXhNUWcvcTBEeDNQWGN1WEt6WFlYdmxXclZrM3MzcjA3cms1QkFKY3Nqb244d3dUZmtvemltTWdIVFBSeHNVN2tBN1o4VlRFaGdnTGc0VlBab0tDZ3RoVXFWT2lFSFlNcllpWHNoQXgyeWdLRjdmYlJKdG9HQjNBQkp6NWpRNUpSOEN5cWZCa2U2SHl1MTl4ZCtISkF4QThjT0JCY2RVR3pDZ1ZRSEJQbVlMdjlIUGhhK3hyTHhURmhEcmJiejZHUHJTaldDWE93M2I3TTExRk1JQ2lzZ2NHa2NVVkZBMzkvL3c2QmdZRWRzWk02c0pIQ2hOd1cyZ1lIWDEvZnBseDhkWDRhMXlMTGx5SE9McUtpb2lxRWhvYldybG16WmdQZUZvS2tPUSt0RXdvVGVqdmNaaXpham8yTkxhZnhrY1dzT0NieUFibXQ0cGdvSE1odEZjZEV3VU52eDB4TTZLUU41SG00Rk1qT0dNbzdHc003R2g4UUVPQVVvQzF1TXhwdGc0UE9SK09tUXBIa3EwSC9oNGhBY1JMa05tVXVWbzdGTVpFLzVJR3YyNk00SnZLSHZQTFZJQit6cW1PNk1DQzNLWE94Y2l3dXhhVzRGSmZpVWx6eVZtUTMwV0IxbWh0SGwwUXo0cHlNS0prRFE4VlJScEhsNnlZdzhNc3BKbEpUVTZPM2JOa1M1MHh3bTNudTQ1TW5UMFl6NHB5TS93OHg0VXBnS2dYM0d3eGl6R0E4eG5pTzhhWUdMT003L0lZNkNReXNvOXFXUzNCSGxHOW5XOEE3cEFlT3g0Mk1oMmZkeUhqb3dvM2pDK2ptOFhsT3hZM01CU1Rhem5oNEVyam92Q1NlT3V6NW5saENOMDgrNGxTZ1RSWGZzeTkzTEFId3NoMWZEZm9RRVZkYk9CTzJRMVBCUys5ZmxLbFRwd3JvdjZGZVNrcktyT1RrNUF0NFYwWnk4aVluQTIwbVgyQU9oajZXZU5yMThmSGp4MmN4TG1SbUhxTmp4NDQ2RldnVGJUTU1mSmN1WFZvQzRHVTd2aHJjS2liMC9rWGh2L09GL0JSZUgvZEN6R1I4d3ZpV2tkZUNkYkVOYkN0TzI3eFRDcmRYWVAzaE5rVXlEaEc4TnpNZSt1alc2VmxFMy9SaEpETGFPUmxvc3orQkE3aUFrOFpOQ0J4LzJ2UDlkaW5SL3g0aSttMHVZNDZUd1czKzhoRGRPcnZVanE5a0hsYStEQnlzdUZaYTNCakV3RTFqem9UZUxqam93bUh0WHhUSk9BUm5GdTJQTm0zNlVqekN3aFhQWUVLYnExYXRwRTJiOEhLbEZFTWZTK1poNWN1aS9kR1JJNGRvMjdaVWw3eFZFRzNpUFI0WkdZZGhJZ2Era25rVWlaaHdsWG53T3YwWWVJbi9PWWFoWExwMGlmYnYzMDlyUC8yVTNucDdHVDN6ajJmcDBjZVcwcno1QytuQmVmTnA4WkpINk1tbm5xTFhYbnRkUEJoeno1NDk5TnR2djJsckd3cTJqVGI2YWMwV1d1RTI4dFVmYmxsNFIyNEw4ZEZGbzIrZG1zM2kzWkhvREF1NUs4RWNicDE2Z01BSjNEU080R3JrK3cyUFRuK2JSL1FyQzdrcndSekFKVHUrREJ5Y09GaTl1M1RwVWpzaUlxSzFzeEVXRnRhcVo4K2V1RXNVajBRQUYzQ3k4cldOQ1JicjBaczNmMFY0VkxkSzJKMEpjQUFYY0FJM2phT2hqMW1zUjBPMDhWNE5sYkE3RStDZ0dZZ3RYM3dLdm95aUVoUDVncG5DOVpveVhtVWNabGpMc1dPWjlPNi8zcU1ac3g2Z3Uvc09wR1l0MnVRYURadkVVOXZFRGpSbTdEaDY2YVdYNlBCaFF4TW8rQUp0RjhxSWhMZWI2LzV3KzhJN29nZXgxODJNK1lmbzYwRkVYN040dXdQT0RHRXhYckFEM0RTT01peDhmMzZZUngwUHVBZVlpd08rT0p2RGQ5N1ZxbFhyVTdwMDZUM28rbTVOSzFGU20ycE9SY2RHRlJDNWVCVDB0dURnNEs3Z3BIRURUK3ZkeE5yZlhzbkp5WWZ3MUZlVm1Mc0NhOWFzeGhTV3c1ZzRkdXpZSWJ4TFF5WG1yc0N1WFR0WS9JN0pmR1hUc0l1SkJnMGFpRWV4T0JNeE1URm1ZaUpmeUs3dzc0a01UQ2RaeTlHalIrbVpaNStqbnIzN0tjMGd2MmpZcEJrMVQyZ2hIcGQvNE1BQnJWVnJBWmRFalY2QkZONmU2ZjRvTW9WM1JCeDBESityQitkazBkYzg2ampkMWszUWpmNU1tLzAzYzlPREdRY2NoQmhuUnhhK0Z6QnR4TUx0RHJnd3p5RmZQbHYyOS9iMmZndGQvdEhDNW5SMTMweTZjWHcrM1R6K29GTnhJM08rYVB1dDZVMkVZUGo1K1QydjhSVm5tN1l4c1dIRGhpdzhlVlVsNUs3QWloWEw4WklsaHpIQlo1UlptemU3ZnRTaEErOHdUMDlQMS9ucVhQRnBpQW04SFZGLy83bzY3MU9ZMkN6YTFsK3k1U0FtOGdWVjRlK2JNOVl4UlBucnI3L29nMzh2cHlIRFJsSjhRbXVuSWJwQlkwcHMzMEU4NSt2UFAvR3VJMnNCdCtZYTNYd1YzazZPL1ZIa0N1OElBc1RieDhmbnFac1pjNGhPOFJuL0tSWnVkOERwVHZUcjdtbms3KytQS3lmd05GSUloQkFKSzk4THM5MEg1K2RreC9kRmRQZUo1WDNwNXVtWjVNcWMwcTB6L2VqbXFWbUNDemhwZklWWTJNWUUzc090RW5GWEFVYTJkdTFhaHpHQk0xYVZpTHNLZUNYdDd0MjdiZm1pcjYweGdUY2ZidHlJbk5LSExzNHBmU200T0lpSmZFRXUvRGRNZnhsRGxOOHZYNlkzMzFwR25idmRwUlIzWndHamtlaVlCdlRvbzQrS3ZJcFV3TlZMbzUrbnd1czc3SThpVzlBcEVSRVI4Yng0NDJZR0MrQkpGbTEzd2FsTzlNZmUrOURUTjVvMmJSckxYSEh3K2VDeHdGYSs1MmU1RDM1K2dQN1lKOTZ2YmVBYkdSblpBbDM5L09RWUlkcnVrbE82ZVdxMjRDVHhGUWNJUHZXWWdBQ3FCTWRWUU43ajAwOC9kUmdUR1JrWlNoRjNGWkQzMkx0M3I4d1hndXdiRXhQVHNtVEpralJ5NUVpUngzR25uQkk0U1h6MW1NZ1g5TUxMQXhuSEdIVDkrblg2MS9zZlVJZE8zWlJpN2lyRU5tcEtFUkZSNGduSDE2NWRBMVVVY0I2ZzdVYXVDNityN0k4aVhYaEhlT1JzR1RyZnpHQmhPOUhHZlhDeUkxM2RQeFU5VGI2K3ZtOHdWN3cweForSDFXL2p3Qk44ZjNZai9QUUFYVTBYNW1IZ3kyZVlLOEgzMHFZeDVGWTVwYStIMElYMXd3VmZqb0hYbWF2KzRoOXJUSHo1NVpkS29ja05jRFlMcUg3TExTQnc2OWF0Y3hnVFI0NGNVWXA0Ym9CM2p3T3EzM0lMbUFldURKTDQ0ckVVWmZXWXdCVnM3cFpUd3VnT2ZHMWlJbC9RdG1FZGJlemV2WWY2SncxUmlyZTdJQ3c4aWswa0FoZG9hS3hGV1NaMkpwZUYxN1ByanlKZmVFZDhQRHc4em1MeDVwRVpSTWRadEUzaTlGZnh0T0h0bUJ5eDR6OE5SZDJzbzYyVjIzR0lFeDNwK3Y0cElwQ1pZeVp6RmU4bUxsMjY5RmxoSHVENzAwelRPTDFyTEczNFQ3OGNzZU96d2FKdTF2ZlRsZHR4aUI5bjAvVUQ5NnY0L2dTK053NXdIVGZMS1YzZlorRmJxbFNwRTRnRlhqYkV4SVlORzVRaVl4WXdqUVVMRm9nWEl6M3p6RFBLT3JtQmJCNnFtTUJWTkNvUk53dVl4dnZ2dnkrQTk1R3I2dVFHc25sb2ZQR0sxQUJQVDA4UkUraGZOOHdwcVdJaVA4Qmp4Ly9MRUdmeS8vakhQNmtaQkxwNUs3ZEhYSHdMcWxxdHVzaEpYYjE2RmJ1QWduMnBpWDR4VzdpK0FYZEU0UjN4NVk4YldMeDVaSnBheEIzZzRtbmN6Smx6dWZ5L1REcTEveFhhczdwMTdneUV6U05yLzJRUnlIeWc0VUp0UEJjbWtJUDZoc1U4bU8rUEVHMXp1UGpkV3NFbnAzTDUxek4wNnZDSHRPZS9iQ0Rmc1lFb3RxWEVEN01wNjRCbHBLVHp6Y2pJS005OGJ3cStoMmFUVytXVVRuV2lySDFpV2hCOE1jbXJDNFUxSnBCSVZZbU1XU3hjdUZDWUJ2RGdndytLTit5cDZwa0Z6QU52dnRNNDI4WEVvVU9IbENKdUZoQnltQWFBOWpBeVVOVXpDNWhIV2xxYXpEY2dNek96Z2g0VHFHTzdqNjRFOWw4M0Q1dVl5Q3R3dC8xWkJuMzMzWGMwWXZRNGlvTW9GekhVREE2bHVMZzRPblBtREhZRkJUY2NScUZ2ekJTdWE4QWRVWGhISUJRaVdHNGVtVXFVeWFKdEVtYk5ReTh3a1dQL1pmRlViRXVKNHpBUHl4VWdITWgvOENhQ0FEN3c4TGVGN3c4OCtqQUpzK2FoRjVqSXNkVEp5bTJwTVl2TjR4NEQzeVZMbGdSYitSNWlnMUhsZGx3R21NZTlPbDljWm9KWU1NVEUrdlhybFNKakZxKy8vanE5L1BMTDR0cDZqRUllZnZoaGV1eXh4NVIxelFEbW9lVThsREZ4OE9CQk93SFBEV0NXbjMvK3VSamRRRVQxOTN1cjZwb0J6R1Bmdm4wT1k2SWdwZ1VMRXVoZjdML0dWNDZKdkFCWFUvM0ZvSlF0cWRTK1UxZWxNQmNWMUkyb1IwRkJRYUovdElKOU0zVTFGdGN6NEk0b3ZDT1NlVXdod3NqQUpDNmV3aFJ1N3NxUEoxbkFGZHRTNGxnSE5vL3hjaURibUFmenhkU1NTVno4Tm5mbWdmTGptV1RsdHRTWXllWmhlZCt2enBlRkl0VEs5eURYVWVWMlhBWTI1NzFXczFPYUJ3UlVKVEptZ1RQNE45OThVeGdIREFSR2toOERnYmpoYWl1SnN5RW1jTTIrU3NUTll1Zk9uV0lxQ2ZzTkE0RlE1TWRBcElTNU1pYnlPeTBJRkZaT3lTWW1jZ3MrZ0MzbGs3V2ZVdk9XYlpXQ1hOUVFGZDBBOThPSXZwSkthL1JSZG9YckdIQkhGTjRSeVR6NExEdUQvK2NtSVp2SDVmUDdsSFhvOUJpNjhlZEpyUlpSMXJYTDZub3FIRzNQNWpIV29WQUl2cGhXTWduWlBDNy83Nml5RHYzMEROMzQrM3V0RnZoeXM2cDZTc3hnODdDT2xBVGZ1WFBuMXJsdEh2ZmJUODFsZzBMUEtXRmt0OWM2TFNnTGhUVW1JSjYyQXBNYmZQamhoMktrQUFONTlkVlhyY2lyZ1VEY1B2bmtFNGN4a1o2ZXJoUnhzOWk2ZGF1NHRGWTNFQjE1TlJDWUJ4NlBJZk9WWXlLLzA0S0ZrVk9TcGdYbG1NZ05PQkF0NVYvdmZTQkV0Mm16bG5jTVlobzBvY3BWcW9tcnNhU1NyWUh3N3diY0VZVjM1TFo1SEo1SWRJVC83eVp4OGFTTmVTanFBTCtrczhqTFJWRkhpUXcyajdUUkRvVkM4UDEybW1sY1BIdjdKbFpoSG9vNndDK1pUMnUxdEtLb284WjB5a28zanBRTTVuRmdxa0xBSGFQUWMwb3dqejBHczdNekQ1eUZxa1RHTEpCNFhybHlwZGpPRzIrOFlXY2d1YzJCUU53d21wRTRHMklDeVdtVmlKdEZjbkl5YmR1MlRZd1dJT3o1TlJDWUI4eEk1aXZIUkg2bkJRc2pweVJOQzhveFlSYkljZnpPb0xlWHZhc1UzenNCc1EyYmlqNTY0b2tuc0tzbzJPZDY2Q3RWNGQ4TXVDTUs3NGhrSHVPSkRyVXlqWXNuYnB2SHBaLzIwY1d0emUxd2RrTWNIZDJ5UUt2RlovSlhmbEJ1UzRuRGlXd2U0cHB6cFZBSXZ0K3dhSnZFeFc5dW04ZWxDMGZwNG9GSmRqaTdmU3dkM2ZtU1ZvdjUvdjJMY2x0cXdEeU1JeVdEZWFSUFVlZDJIS0RRYzBxWkhTaHJ0OEhzN013RFo2RXFrVEdMOTk1N3oyb2dHTVVzVzdhTVhudnROV0VleUljc1dyUW9WNEtYazNrZ09hMFNjYlBBVFgyeWdlQTdDRHpNQTJheWZQbnlYQmtJekdQWHJsME9Zd0xiVmUybldSUkdUc2xtV2pBMzVoSE1FQTh5L0d6ZDUzZmNpTU1Xa2ZWaXhQOFFKeFZhd2I0SG83OXNDMzl2d0IxUmVFZXNRbkhyOEJpaWd5emFKaUdieCtWZk1tbnYydEYyeU56K0pHVmR2YXpWNHZMVE11VzJsRGlVU0RmU2hqa1VDc0gzelAybUladkg1WXRuYU8rR0JYYkkzUHUyWmFwS0w3K3VWMjVMaldsc0hxTWNDc1hOOUVuMmVaMXNVUGc1SlI3WjdSNmpFZ3ByVEVCSVZDS1RHOEE4WUNLeWdVRDBZQ0s2Z1R6NTVKUEtkVzBCY2NPVFVpWE9ocGpRQlQrdmdOakRQR0Fpc29IQU9HQWl1b0dzV3JYS2JsMFZzTDBkTzNZNGpJbjhUZ3NXUms3SlpsclFySG5nbVYyYkdiUnBjN0s0VDZKSmZJczdIa2lpNDMrSjBacFdraG5pZVdCeTRlOE11Q01LNzRoa0hxT0lEckJvbTRSc0htYkt6NW4vcHN2YkU1VGJVdUlnekdPSVE2RVFmTDltMFRZSjJUek1sSjlQZjBHWEQwOVdia3NObU1jSWgwSnhjLzhFKzd4T05uQktUbW1Yd2V6c3pBTkNvaElaczRCcDRCTUdnaytjdGNPUU1JV2xBeWJ5eUNPUEdOWnpCSWdiaEZ2aWJJZ0o1QmRVSW00V01BM2RRUEFKQThHMEUweERCMHprUC8vNWozSjlXK1JrSHZtZEZpeU1uSkxOeU02c2ViekxvTk5mZjAxdDIzZFdDdTJkaXBvaHRTZ3dNSkF5TTNFYmp5anZvcy9rd3Q4WmNFY1UzaEhKUEVZUXBiYzBqWXZIY1FPcStYTHgzRjdhczZvL1plMXJvZHllSFE2MFkvTVk3RkFvQk45VDk1bkd4VE5yQkErejVlSlBSMmpQdWhtVWRmeGU1ZmJzY1QrYmgzR2taRENQdEhIcTNJNERPQ1dudE5OZ2RuYm1BU0ZSaVl4WndEeGtZTlR4OU5OUEc4d0RVSzJyQXNRTkl4aUpzeUVtSVBRcUVUY0xtSWNNZkxkNjlXcURlUUF3QmR0MVZVQzk3ZHUzTzR5Si9FNExPaUduWk1ZOEJqUG83Ny8vcGdGSlE1VUNlNmNEQ2ZUNjlldlRsU3RYMEJVb1E5QnZldUcvRGJnakN1K0laQjVEaWZhemFKdUViQjQzY01aN09kMGVWMjZmRmFOZ0N1dTdMeE9WMjdORE9zeGpvRU9oRUh4UFRUVU4yVHh1WE9mTmdac3RydDYrMGdvRlUxamZiYjlIdVQxNzNNZm1ZVFE3bzNtTXRzL3JaQU9uNUpSMkRsVUpoVFVtSUp3cWtUR0xkOTk5MTdvTTQwQ0M5L0hISHhkbnloQTdmRUlBellvb3hBMmpGNG16SVNhUVgxQ0p1RmxBN0hYZ2I5dzBCM0hHMVZjd0RYeGlWR0oyaElQdFlQUWk4NVZqQXFNRzFYNmFCUXk1b0hOSytKOUxmTTJZeHlFR1BmSFVNOVE0THVIL0pSbzFiUzc2Yk1xVUtlZ0tsRVBvTjczdzN3YmNFWVYzNUxaNUhPSVRpRFFXYlpPNG1IbmJQQzcvekdmR2lqb0NlR0dUVkw3ZDk3UzZuaTMyczNuczYyODQ4QUNyZVlEdlNSWnRrN2o0OVczenVIemhxTEtPd004ZmFMVXM1ZHRELzFMWHN3T2J4LzVCQnI0Rzg5ZzMwajZ2a3cyY2tWUEsybUV3T3p2elFINUJKVEs1QlVUdG9ZY2VFcmtOM1RqZWV1c3RJWDZZQmtJZVFiV2VMU0J1bUtxUk9CdGlBdmRwcUVUY0xHVGpRQ0lVVTJTNmNlQ0dQb3hHa0pUZnNtV0wzYm9xWUZ1NC9GZm1LOGRFRWNncDVXUWU0cXFPZmR3bk9BTlhDZXYvRjRUV3JpditweGhwYXVWTjlCMEtMeHR3UnhUZUVjazhrb2oydGpDTmk4Y2s4L2hwcjdLT2prcy84dTlheWFtdUZmdmFzbmxZSGh1dUgzakFiZk5ndnBoU01vbUxwMWVMOWxFdVg4aFExdEZ4NlR6L3JwV2M2bHB4WWlxYmgzR2taRENQdmNQczh6clp3Qms1cGF3ZFNTcWhzTVlFQkVrbE1tYUJrWWMrNHNCbGpUQU9RRGFPRlN0VzBEdnZ2S05jM3hZUVN0U1hPQnRpQXZrRmxZaWJoVHppMEkwRGtJMGpOUld2dDkxb3Q2NEsyQjdxeTN6bG1DZ0NPYVhzekNPZVFWbFpXVFJveUFpbG9QNS9RNlhLVmFsaHc0YWlUN1FpM2t6SW53YmNFWVYzUkRLUC9rUjdXTFJOd3M0OEZIV0FjNTgzWlFHMkpwUG9MOHpmSytyWllXOGJObys3SFFxRjRKdUp5MS9Od2M0OEZIV0FjMXRHMGVYL2ZhM1ZaTDY0SjBSUnp3NXNJRm43K3prVWlwdDdodGpuZGJMQlJTZmtsTEsyRDFBSmhUVW1JRVlxa1RFTGZjUUI0NEJoQUcrLy9iWVFPNXpOWThRQjQ1Q250N0xEKysrL0o5YVJPQnRpQW1kOUtoSFBEZlFSQnd3RHdIZVlxdEpISERBTzNXUnlBdXBoSFptdkhCUDVuUmFFZWNoQWYrYzNwMlF6TFppZGVZam5kT0JHUUV6YkZLTTUxWXR1S1BvT0w1YlN5dWVxL3JzakN1K0laQjU5aVhhejhKaUViQjYvc25EdGZTZldEcW12UmRPUnIrWnJ0U3dsNjl4L2xOdXp3eDZZUjAvRGdRZmNOZy9tZTR4RjJ5Ums4L2oxcHlPMGQrVUFPNlMrMzRlT2JMSCs0MFhKT3I5SnVUMDdzSUZrN2U5ajRHczBEeDRwcVhJN0RpQ2JSK0hrbE5xeWVSaEdkbmJtZ1NraWxjaVlCZWJia2VPQVllakdnYk42M1RoZ0dqcFU2OXNDNWdGeGx6Z2JZZ0w1QlpXSW13V0VFNk10TEt1TUEyYWdRMTdQRVdBMGVLUzN6RmVPaWZ4T0M4cjlwby93OHB0VHNwa1dkR1FlUFJqMDIyKy9VZXQySFpWQyt2OFZWYXBXRjFkZlhieDRFVjJFZ3I0eTlOOGRVWGhISlBQb1RiUXJ3VFF1SG4yTlY3Y1VpTmJGNy9mWTRjcnY0cDRoWTBsbjBWZHN6dzU3V3JONTlIQW9GSUp2eGoybWNmSFViZk5BSXZ6aUQ0ZnRjT1h5ZWEyR1ZFNHNWRzdQRGtmdllmTXdqcFFNNXJGN2dEcTM0d0NGbjFOaTg5aldXeVVVMXBqQUpha3FrVEVMbUljODR0Q2YyZ29Ed08vNmRKWDVhYXYzeERZa3pvYVl3QlNSU3NUTkF1WmhPK0xBZ3cxaEFEQU1mZFJoZHRvSzlURGRKZk9WWXdJakhOVis1aGI2Q0s4Z2NrcjRuMHQ4SFptSGVIM3M4eSs4UkkyYU5DdUdCRHkrQkYwMmI5NDhkQkVLK3NyUWYzZEU0UjI1YlI0SGV4SHRaTkUyQ2RrOFRKZFRqeXEzcGNSdU5vKzkzUXdISG1BMUQvQTl3cUp0RWhkUDNqWVAwK1hjZThwdEtjRUdrcFZtSENrWnpHTlhQL3U4VGpZby9KeFNHOHJhMmt2bWEyY2V5QytvUk1Zc2NCWVAwd0N3TFhuRW9VOVg1WGJrZ1ROcGliTWhKc3dtc2gxQkhybkFpT1FSaDI0Y091VDFIRUZmUitZcngwUVJ5Q21wekFOUHk2VkxsMzRYb3c2OHZyVVlSaUQzZ1Nmd1NxK3pSWjlaKy9DT0tMd2prbm5jUmJTRFJkc2tycC9KeGVNemNDTmI1aHpsZGh4aUY4eWpxME9oRUh6eGNFU1R1UDZEOVM3UW5Bc2Vqdmd0bTZOaU93NlJNWm5Od3poU01wb0hqNVJVdVIwSGNFWk9LV3VyZ2ErZGVaZzlZM1VFVEpmb2ovWkE0aGtqRGdpWmJoejZzbmx4czh6dFM1d05NWUVSZ2tyRXpRS1g0R0trQWRQQWM3S3dQUmlBYmdMNk1xQmEzeFo2WFptdkhCTkZJS2VrTW8rM0dmVE91LzlTQ21jeG1sRmsvVmpSaDlMREU5Rm4xajY4SXdydmlHUWUzWWx3dFk1WjdPdkxvamtsWit6dXBGNC9KK3lFZVhRMkhIakFiZk5ndnJnRDNDeU9MeUQ2K3A4NTQrZ005Zm81Z1Ewa0s4MDRVaktZeDA0ZUthbHlPdzdnakp4U1ZxcUJyNTE1Nk5OTGVRV0VDMGxoek8xRDlQRTNCRThYTkh6cVVLMXZDNGdiUGlYT2hwakFOSk5LeE0wQ1FvOHJ0Z0JNTitrbWdjKzhtZ2MrWmI1eVRCU0JuSkt0ZWVBeEpIVHIxaTNxM1hjQU5Xd2NYd3dIOFBYenA4aklTTkZYV2tIZmlYNjhJd3J2aUZVbzZHQlhGbTBlWGJrTGRyWmk4K2pvVUNnRTMwT1QzQWVISjlHTk5PTkl5V0FlTzNpa3BNcnRPRUNoNTVSMnQ2YXNMUWErZHVZQklWS0pqS3NBY1lNUVNwd05NYUhmRmU0dWdIa2dmeUx6bFdPaUNPU1ViTTBqaVVGNzkrNmpCaXlReFhDTTZqVkRSRDlLOTMyZzcwUS8zaEdGZDBReWo4NUUyMWkwM1FVN1lCN3REUWNlY05zOG1POUJGbTEzQVJ2SWpUVGpTTWxnSHR1N0dYTTZPYURRYzBxNzJEeFNPc2w4N2N3RDB4OHFrWEVWSUc0UVFvbXpJU2JNNWlLY0JaZ0hwdXRrdm5KTUZJR2NrcTE1Zk1TZ3h4NS9naG8waWl0R05xZ1gzVUQwNDMzMzNZY3VRMEhmaVg2OEl3cnZpR1FlSFltMnNxaHNaZUYyQndqemFHYzQ4SURiNXNGOEQweG1zSEM3QXc1T1p2TXdqcFNNNXRIRm1OUEpBWVdlVTlvSjgrZ2c4N1V6RDB3MUFTcWhjUVZ3TlZCTzVyRnhvMXJJWFlGTm03STNqeUtRVTVMTnd6cGwxYUZ6ZDRwbGdTeEc5aWpqN1VQVnExZTNtN3E2SXdydmlGVW9idTV1emFMU2ppaVZoZHNkc0xNOVhkL1owcUZRM05qWFhnZzJwVTkwRHh5Nmg2N3ZNWTZVRE9heExaZTVuOExPS2UxZzgwaE9WQW1GTlNad1JydDhlZjd5SGdXSkZTditMYTRta2pnYllnSWltcHpzUGxOWEtTbko0cEVoTWw4NUpvcEFUa2syajJZTU9ucjBxRklvaTJHUGlwV3FpTDQ4ZlBnd3VnNEZmWWd1TGZxRmQ4UXFGSDk5RnNNQ09JRFArbHV3ZVBNK3VoSmJXektYZ2ZUYnFucUdBdy9RRDd5L05yV25XOGNtMHkwZWZkeGk4WFlwd09IWUZQcHR2VUdNYmN5akE0czJtNks3WUVkTE5vKzJNbDg3ODhDZHNxdFhXNFRKVm1pY0RYQllzK1pqY1FlMXhOa1FFN2g2YWZ2MmJhWVQyb1VKY0FBWG13UzBJU2FLUUU1Sk5vK1pESHJ6cmJmRm0vU0trVE5DUXV1SXZuejIyV2ZSZFNqb1EzUnAwUys4STFhaCtHR0pEOTNhMTRyRmNCRGQydEdOYm0xclI3ZTJ0bkV1MENiYVBzQWMwbHJUcVlVK2hnTVAwQSs4YzI5MzREcHQ2ZGJSbVhUekVPUEFWTVlVSjRQYlBEU0xqV01tM2RyZmxrNitZcHhtbXpWclZtMnJlV3hOVk9kMlhJWHRiQjZiVzh0ODdjeUQrWXN6MmJWcjE0Z3JneUNFRUR4bkFtM0NGUEFjS0hDWk5tMmF3NWpBcFpFWWZlellzVjNjbjRFRU9xYXluQW0wbVpxNlJYQUFGMXdOSmZPVlk2SUk1SlJrOHhCUEZwMTYvM1NLWVdFc1JzNklxQmNqK3JKLy8vN29PaFRjYklZdUxmcUZkOFFxRk4vT0xrRVhucTlBTi9lMm9GdEhodEN0UXlOWXhJY3poamtKM0JhM1NVY0cwODNkQ1hUaHVmS1VjWitGbTBvb3pyN2NrYzZ2YUU4MzA5aDBNbG5JTStlNUFBOXkyNVBweHQ0MmRINTVlenJ5ak5FOEZpMWFGR0kxajlTMlBLSkt1SjNUY1RXMnQ2S3NUWVpwUVR2em1EcDFLaTFZc0VCY3pRTURXYmZ1TS9yc3MwOFphNTBFdFBVWnQ3MWFURmVCeThTSmh2ZXVHMklDVngvaHJYcTRPVzduenUyMGUvY3U4WmgyWndKdG9tM2tJdkJtUDl5SElmT2RQMzkraUllSGgrQ0wwWlE3ak9wMEtISktzbmw4eTZET1hYdUl1NmlMWVE3NFg0ZUVoS0RyVU5DSDZOS2lYM2hIZkJBa1dFeWZZakdRY3c5NzBlOGZoTkxWcnhyUXRjMk5uSXFyWDhhS3RyOWY0Q200N0psc05ZOWZtV3NBd0VMeEp3Njg5Q2ZiQ0FQNS9zME9kR2xkTzdySzRueHRXeHVuNHU4dGJVWGIzNy9SUVhEWi9aajFUQjU4QTFsTXlqUGZhK0I3N1N2a0d0d29wN1NqUGYyOXdmSWVBbzJ2RHk4YlltTGN1SEhDUUdiTW1DSE9vRjk4OFVVaGlNNEUya1RiMDZkUEYxekdqTEcrT3RjdUpsaVloWUZnYWd2VEw4Z0Y0T1ZHemdRZU9ZSzJuM3JxS2NGbDd0eTVEbU1DcHV4dU9TVTgya1RpcThjRVRKcCsvLzEzaW1aQkxJWjUrUGo0aXY2VTdqWVBRcDhXK2NJNzRsMjZkT2tNTEw3WjIySWU3b1RuZWxqTXc5UFRjdzl6TFF0NGVYbGw0TUI3WTBJRElkanVoSCtPakRid1BYRGdRSkRPOTh5eUtMcTF0eCtmOWJ0SFR1bld2djUwOU5Wd21hODNMeHRpb2tlUEhrS3czUW1kTzFzdWgxYkZ4TEJodzRSZ3V4TUdETEE4dVpnNWdtOUFXbHBhSVBqaU83d3ExdDF5U25nRG9kUy9la3p3bVEvUnZuMXBGQjNidUJpNVFFQmdrT2hQUEwxQUs4M1FwMFcrOEk2VThmUHpleDJMdFlKSzBMRnBhaEYzQlU1TUwwRjF5bHZNSXlBZ0FQZjUrd0c4L0liZ1c4bUhqajZicUJSeFYrRDRjKzJwVGhYTFdZWU5YOUcvN2VwNVU5YW01bXdnU2E3UEtlMUxvaHViRTZoanJDV25WTFpzMmFjUUM3eHNpQWs4SFhUU3BFbEtFWGNGSmsrZVRPWEtsWE1ZRXhVcVZMQytQYzhkc0hqeFlxcFlzYUxNMTUvaHkvMzlHcjRMQ3dzVFY3UzVVMDRwTWpKU0ZSTkRHTFNhUjFiMVdSQ0xZUjdsSzFRUy9Zbi9yMVlHb1UrTGZPRWQ4UXdORGUzcTRlSHhQZjdzSEZaQzVCbFVZdTVNWUFxdFF4MkxjWUJiM2JwMU96RlhiNEFQdUc1V3ZyRVZSWjVCSmViT0JLYlFPc1JZUk1LR3IwOUVSRVFpZjNjQnZ6M1V2eHhsYll4bjhSNUV0L1lQcDF0cHd4aERuUVJ1YS84d3VzbkdjZTNMcGpTdmorV01DSHpyMTYvUHd4SHk1TC90WXFKMjdkb2l6NkFTYzJjQ1UyaTFhdFhLTVNicTFhc244Z3dxTVhjbU1JVVdxUWt4dUlXSGgzZEdQSUN2SEJOZHUzWjFpNXdTcHF2MFVSMzQyc1RFREFhOS9zYWJTb0VzaG1OVXFsSk45S24wam84WjZOTWlYM2hIU3ZNQjJaelBqaWJ4c1A4U3ZxcnFYNEptdHk1Qkh3OHBRWitQY0M0K0dtUnB1NEt2TmRkeHVYTGx5dVA0WUl0anJsNEFpMGFDZ1c5UUdacmRLNHhXeldoSzYrWTBjeW8rbXRaRXRGM2UzOHNoMzFhdFdvVXgzeW44MnhYVWFSVHFSUnNYMTZRTC82bFB2NjZLY1NwK1hsNVB0QjFSemRQQXQzWHIxc2pvbGVidmxESEJJeEZLU0VnUVY0MGtKU1U1RlgzNzloVnQrL2hZcjd6TE1TYjRMRjhJSVV3UDc1VjJKc2FQSHkvYVJwOHArSlpoZU1iSHg5ZVJZd0kza3NFZ2NiVVlSTWFaUUg0SWJWZXFaRGxEMXZuYXhJUjQ3ditUVHoxTjlXTWFGU01YcUZLdGh1aFhuTkJvNVZIMGFaRXZ2Q01lTEJTMU9IZzcxNmhSSThuVDAzTUh2bllIbENwVktxTktsU3Fqd0kzRm9TWnpMUVVVTWI2bDE2OWZYeVk0T0xnTkRraXVjMHExcml1Zzh3MEpDV21kbHBibWlWamc3NHRqb2dBaDg0Mk9qZzVHUEFCRk1DWmVaTkRDaHg2bWVpeUl4VENQcXRWcmlyN0ZKZVphZVFGOVd1UUw3MGhKSHE1NmxpOWZ2Z1VIVFNjTzZDNjhQSjNQbXBaNWVYbWxJckNkQ1c0emhkdCtFeHpBQlp6QUxTVWxCUWNkYnUzM0tHcDhHYVVTRXhPRCtMY09ySEZkeTVVck45dGQrRmF0V2pXeGUvZnV1R0lKSWx5eU9DYnlEeE44U3pLS1dreUlCNjNOZlhDZWVOVnFNY3lqcWpieXVPZWVlOUNGS01oM0ZmM0NPNEpBTGhrWkdWazJLQ2lvYllVS0ZUb2gySEdtaEVCQ1lNdmdzNzBDaGUzMjBTYmFCZ2R3QVNjK1kwT1NVZkFzcW53WkhqZ2d1VjV6ZCtITEloRS9jT0JBY05VRnpXb2VRSEZNbUlQdDluUGdhKzFyTEJlaG1CRG1NV2Z1Z3hURmdsZ004NmhjdGZvZGF4NVdzZUJBeGxVMkRmejkvVHNFQmdaMlJPRHJRR0FWSnVTMjBEWTQrUHI2TnVYaXEvUFR1Qlpadmd3Y2tLV2lvcUlxaElhRzFxNVpzMllEM2hhRW8zbU5HalVTQ2hONk85eG1MTnFPalkwdHAvR1J4YXc0SnZJQnVhMDdNQ2JFdE5XOCtRc29xbjZEWXVRQyt2T3Q3c1JwS3hraVlIZ0lIY2huUzZFYy9ERWMvUEVCQVFGT0FkcmlOcVBSTmpqb2ZEUnVLaFJKdmhyMGcxU0loNU1ndHlsenNYSXNqb244SVE5ODNSNWFUSWlFK2RLbGoxTWtDMkl4ektOY2VjdFZtSGRjd3J5NEZKZmlVbHh5S2l4NDRsTGRWMTU1bFNMcnhSWWpGeWdiRUNqTUExZTJhZVdPdVZUWEZ2cVpVc2xIemxFMEk4N0ppSkk1TUZRY1pSUlp2bTRDQTcrY1lpSTFOVFY2eTVZdGNjNEV0NW5uUGo1NThtUTBJODdKdUJOalF0d2tpSmRQcVFTeUdJN2g3VzI1eEJ4dmpkVEtFTkdwUmIzNHp0d293RHVrQjQ3SG91OXAxc1BmMDRWNVB4RE4rZEc1UUp0b216bE1BaGVkbDhSVGh4M2ZKVDhSTGZtWmFMR1RnTGJRcG9wdnc4VmZsUUI0Mlk2dkJuMHFTVnk2NlVUWVRtRUpYbnIvb2t5ZE9sVkEvdzMxVWxKU1ppVW5KMS9BdXpLU2t6YzVHV2d6K1FKek1QU3h4Tk91ajQ4ZlB6NkxjU0V6OHhnZE8zYlVxVUNiYUp0aDRMdDA2ZElTQUMvYjhkWGdWakdoOXk4Sy95MGVUN0o3OTI2S1lFRXNobmw0ZUhnSTg3ampIazhpR1ljSTNvZStwNC91WVZHcy93dFJBTVBmeVVDYkRTOFFUV0VPNEFKT0dqY2hjUHhweDNmeHIwU1RyaEVOdmNtVzdtU2d6WHV1c3Brd0IxdStrbmxZK1RKd3NPTDZlWEZ6R3dNM2pUa1RlcnZnb0F1SHRYOVJKT01RbkZtMFA5cTA2VXZ4Q0F0WFBJTUpiYTVhdFpJMmJjTExsVklNZlN5Wmg1VXZpL1pIUjQ0Y29tM2JVbDN5VmtHMGlmZDRaR1FjaG9rWStFcm1VU1JpUWpJUDhXQkVQTnl2ZGxnRVJVVEZGTU1FMEZmb1B1Qk9mRERpYlNFK1I2UHZaZEd1Q0NGbkFYY2x3R0VxRElRNWdadkdFVndOZkJmOWoyakVEYUxCTGdZNGdFdDJmQms0T0hHd2VuZnAwcVYyUkVSRWEyY2pMQ3lzVmMrZVBYSG5NQjdyQVM3Z1pPVnJHeE1zMXFNM2IvNks4S2h1bGJBN0UrQUFMdUFFYmhwSFF4K3pXSStHYU9POUdpcGhkeWJBUVRNUVc3NzRGSHdaUlNVbUFQRkk5cmhtQ1JUT3dsaU1uRkd0UnJBd2pqdjFrZXg2RUhzOStCMGRhbjZleGR0TjBKSXg3enZhQVc0YVJ4bUM3NzEvc1hoZmR3L2N4MXdjOE1YWkhMN3pybGF0V3AvU3BVdnZRZGRYanU5RU5STDdPaFdWR2x2ZWRNZ2N0Z1VIQjNjRko0MGJlRnJ2TU5mKzlrcE9UajZFcDc2cXhOd1ZXTE5tTmFhd0hNYkVzV1BIRHVGZEdpb3hkd1YyN2RwQnpFbm1LNXVHWFV3MGFOQkFQSXJGbVlpSnNieXdLSWVZQU1UTG9FYU1IRVhoa2RIRk1JR2djaFZFMzk2cEw0TVNCeDNEWithWjYxbVZJTng4eHU4T0NHWXUwMC8rOVRkejA0TVpCeHlFR0dkSGd1K0lxeXpjMTl3RG81bXBJNzU4dHV6djdlMzlGcnE4NVNQL29sa25ydExjSDRobS8raGNQTWh0b3UyNE9TK0pvUGJ6ODN0ZTR5dk9ObTFqWXNPR0RWbDQ4cXBLeUYyQkZTdVc0eVZMRG1QaThPSERXWnMzdTM3VW9RUHZNRTlQVDlmNTZsenhhWWdKM0FPZ3YzOWRuZmNwVEd3V2Jlc3YyWElRRTRCNERlM3p6ejlQZFZrWWk1RXp2TXFVRVgxNnA3NkdGZ0hpN2VQajg5UU1IbEQ1LzBUazV5YW93Z1l5SmVNUytmdjc0eHB6UEkwVUFpRkVRdWM3bU0xamtKdGdPRXRFTm54ZlJIZjNYM09ZSnZGKzFkUHlPNnE4VDJGQ3p5a2hyd1V1NEtUeEZXSmhHeE40RDdkS3hGMEZHTm5hdFdzZHhzVFJvMGVWSXU0cTRKVzBTRExiOEVWZlcyTUNiejdjdUJFNXBROWRuRlA2VW5CeEVCTUFuckpMQnc4ZXBGcDF3cWx1UlAxaVpBUDBFYm9PT0hUb0VMb09CWDJJTGkzNmhYZkVLeUlpSXA0WGI5elBZdXpIWjZmdWdzcU15Y2YrUkUvZmFOcTBhU3h6eGNIbmcwZEY2M3dIc1dDN0M0WmRZVkhPdE9jYkdSblpBbDNkNEw0bmFRcWJvcnZrbE1BRm5DUytYcnhzaUFrSW9FcHdYQVhrUFQ3OTlGT0hNWkdSa2FFVWNWY0JlWSs5ZS9mS2ZDSEl2akV4TVMxTGxpeEpJMGVPRkhrY2Q4b3BnWlBFVjQ4SkFGTnVkT3ZXTFlwdDBFZ3BtTVc0allxVnFxSWZ4Uk9UMFdkYVFSK2lTNHQrNFIzaGtiTmw2SHd2ek9PSC9NSDM2RVh5MlhuYUN0OUQ1OG52Mnl4bDNaeFFpYzFqd29tcjRoL2c2K3Y3Qm5QRmkzLzhlVmo5Tmc0ODhCM0VncDBmOVAzaEl0MlZjZHFLM3QrZXA2VExXY3E2T1dIWVgwU1RUdHJ6NVRQTWxlQTdldmYvcUptV3ozRUh0R0FNUy8xQjhPVVllSjI1NmkvK3NjYkVsMTkrcVJRYVZ3RUN0MjdkT29jeGNlVElFYVdJdXdvd2ovMzc5OHQ4OGFpU3NucE00QW8yZDhzcFlYUUh2all4b1FOWGo0bFhBb2V4UUJiRE1ieTExODlPblRvVlhZYUN2aFA5ZUVjVTNoRWZEdytQczFpY2ZKYVB4SE41ZysvdXMrVDk0U2Jxc21rdlBYcjRsQlVEVTlPcHlxcE41TFA1Q1BtZFpSTlJyT3NJbGRoQXhwNjRMdjRCekRHVHVZcjNWWmN1WGZvc0RqendUV0xCemd0NlpwNmxkbDlzb3Z0MzdLVjNqcCt5WXNHZWRPcXhmaE4xM1hlRUJ2NmVwVnpYRVliK1NUVCtwSkx2VCtCNy8ra2I1RTQ1cFpxTWU0OWZFM3hMbFNwMUFySEF5NGFZMkxCaGcxSmtYQVhaUEZReGNmandZYVdJdXdxeWVXaDg4ZHJjQUU5UFR4RVQ2RjgzekNtcFlrTEhZQVp0Mzc2ZGdrUHJVRmg0dldJb2dMNUJ0d0hidG0xRGw2RU1Zb2grdkNNSzc0Z3ZmOXpBNG5pWXgvZTVoOCttSXpRN0xaTXVYY3RDQnluTCsxK2ZveXFmN2lDL1UxZVUyMUNoRWh2SUtNMDgrRUQ3alRlRFp3VUZjbERmd0lFSHZra3MyTGxGMTcxSDZLVWptZlRIZGNkODEzOTdqbnB0M2tIOWY3bWkzSVlLUS84Z0dxT1poODQzSXlPalBQTzlDYjdUbUsrNzVaVHV1ZDIvdUFoZEZ3cHJUQ0NScWhJWlZ3SG1nVGZmYVp6dFlnSnp5eW9SZHhWZ0htbHBhVExmZ016TXpBcDZUS0NPYWo5ZEJSaVpiaDQyTWFIRE9uVVZGOStNNnJCUUZzTWVnVUhsUlI5R1JrYmFUVmtCZDBUaEhZRlFpQjBkL1EyTHluZTVnOCsyMC9UK2FWWjVFK1hzSDFjbzhzczA1WFpVcU1RR011eTRWZHhZbXNXTlNrRjg0T0Z2d1hjZ2Y1c2JkRDk4V2hpRG1mTFRYMWRvNlBZMDVYWlVHSHlaYU1SdE1lWnZLR2pKa2lYQk90K3A2Rjh0bitNT3dMVGd4TnY5eS9ZbllzRVFFK3ZYcjFlS2pLc0E4OUJ5SHNxWVFETFhWc0JkQ1pqSHZuMzdITWFFTzA0TGZ2NzU1NnFZa1BFMlE3ejFNTFIyT05XcEcxVU1DZWdUZEJtQVB0SUsrc3phaDNkRTRSMnhDc1VJaUJ0R0gyWngvQW85ZXZBVWI4SllQdUJEWkNtZlk3MzhPeHVHemNuOW9ZdVh5WGYzT2ZYMmJGQUpWMU1aeGMwZ0ZPQTdrTnN3aTM0L1g2RjNqdG56VGJsT3RQSXEwZWZYaUM3YzFMN1V5c2xMbDZsbjVqbmw5bXd4bU0vVGh0NDJEOEdYaFNKVTV6djVETytYVFY0bnR5am9uTkxZek96TkEyZWhLcEhKRFY1NDRRV2FPWE1tY1YvUSsrL25MekVNY2NQVlZoSm5RMHdjT0hCQUtlSzVBVVkyYjcvOXRuZ1dVWEp5c3JLT1dVZ0pjMlZNdVBPMG9FMU15R2pPb045Kys0MUNhOVZSQ3VqL1orajNkZ1FGQmNsM2xhUFBySDE0UnhUZUVhdFFESUc0d1VCTUltcjdhVjc5ZGpsNzdTYTFnRERaMUlPWnlHVmkraG03T2lwVVpBTVpZQlEzZzFDQTd3QTJLYk1ZZWNqSTkzeldUWnJOb3dYYmVpbHNJbko1K3RnWnV6b3FEUHFWS01uRzdPYk9uVnRINXp2aGE5NHZMWitUV3hSV1RtbjBzZXpOQTJlaEtwRXhDNXg1TFZxMGlGNSsrV1h4cnV5SEgzNDRYNWVqUXR3KytlUVRoekdSbnA2dUZIR3pXTE5tRFMxZnZsenM5K3JWcStuZi8vNjN1TnhXVmRjTVlCNTRwcEhNVjQ0Sk41OFdsR1BDRnVzWU5HL2VQQW9PRGFQYUxKckZpQko5Z2U0QzBEZGFRVjhaK3UrT0tMd2pWcUVZQ0hHRGdaakVTeWRZZ2FUU0RkTWhpbnJBMmI5dkQwRlNmN21zckdPTGltd2dmWTNpWmhBSzhCM0FnbTBXcTg0WStTNkNjU2pxQVQ5TCtadUR2MTVXMXJIRm9JdEUvVzNNVGhhS3NlaGZLYWRqRm9XWlV4cVJnM25nTEZRbE1tWUFzM2owMFVmcGpUZmVvRGZmZkZOODRnWXp2TmRBVmQ4TUlHNFFlSW16SVNhUW5GYUp1Qm5BTEQ3ODhFTWg2QmdSNEJOVFpEQVFtSUJxblp5QTlYQ2ZoOHhYamdrM254YVVZOElXUFJoMDhlSkZxbEV6aEdxSFJSYURFUkJZVHZSZFlHQ2c2QnV0b0s4TS9YZEhGTjRScTFEMGhianh5Ymtwbk1nU09ReTlwUDdHb3FXcXAySE9MMFJidWJvT1ZSMWJWR1ErdmJJeEQvRHQvejl6NlBkekZ2MzA1MjIraHk1ZlVkYlQ4UzYzbG5IOU5sUjFiSkhFKzlnN0cvTVlpZjFTNUhheVEySG5sSVljemQ0OGNCYXFFcG1jOE5SVFQxbU5RemVQMTE5L1hTeS8rT0tMZVRhUW5Nd0R5V21WaU9lRWp6LysyR29jc25rQTZJTzhHZ2pXMmJWcmw4T1lLSWhwd1lJRSt0ZG1XdENSZVFCZk1PakpKNStreWxXcUs4WDAveFBRQitncUFQR3ZsYzlWL1hkSEZONFJxMUQwZ3JpZE1vZHFCL2hVV3lxUC9jRG1vYWlYSDFSa1B0Mk40bVlRQ3ZEdHo0SnRCb05QRy9tdStCK2JoNkplZmpEd0F0RmRObVluQzhWUTdKZE5YaWRiRkhKT3FlSzN6Sm1kVWVKclp4NFFFcFhJWkFlTU9CNTc3REZoR0crOTlaYUFiaUQ2Q0VRM2tIZmZmVmU1RFVlQXVFSG9KYzZHbUVCK1FTWGkyUUVqRHR4dkFjTkFBaHZRRFVRM2tid2FDT3J2MkxIRFlVemtkMW9RS09pY2tzMjBZSGJtMFlwQlY2OWVwZkR3Y0twVkorTC9OZEJOQVBvQ2ZhS1ZscXIrdXlNSzc0aFZLTHJEUEU2YVE5ZmpsM25WMndWL3ErcmxCeFZZTnp0bll4N2cyNDhGMnd6bWZXL2tpNzlWOWZLREFlZTVIN0l4anlUc2wwMWVKenM0STZmVTkwajI1Z0VoVVltTUkrQ01DOGFobXdhQTd6RTlzMnJWS29PaHdFQ1FBN0hkUm5hQXVHRTdFbWREVENDL29CSnhSNEFSd1RoMDB3QWcrQmpCNEY0RzJWRHlZaUE1bVVkK3BnV0J3c2dwMll6c3NqTVA0QjJHdUxBQWw2ZXFSUFgvQS9UcEt2eFAwUmRhZVFkOWg4TExCdHdSaFhmRUtoU2RjV1o4M0J5Nlp0cVlCLyt0cXBjZlZEaEIxTjU0Wm13UUN2RHQ5N001elB2T3hqejRiMVc5L0dEQVQwU2RiTXhPRm9yK3ZEK3EzSTRqT0NPbjFEc0g4NENRcUVSR0JUM0hzV3paTW5HMUVvQ1JoWDdtams4SXYvNGI2dWtHWWxid0lHNTRtNTNFMlJBVHlDK29SRndGUGNjaGY2Y2JCMHhJTnhENWQ5MUF6Q2JSc1Qxc1ErWXJ4d1MycDlwUE0zQlNUaWtuODhDenVuRHpJMDJaTW9YS1Y2aWtGTmM3R2RobmRCR0FQdEFLK2tUY25ZL0N5d2JjRVlWM3hDb1U3V0Vldk10bTBQWEVYN3pxN2RMMTRDL0tldmxCQlRhUXR0bVlCL2oyWmNFMmcvbm5qSHpublBwRldTOC82TS9pbnBpTmVmU0dLV0owWndaT3lpbmRkVGg3ODREQXFrVEdGcGc2MFkwRG93cVlBNzdIaUFNSldDekRPSEFHcnh1SVh1K2xsMTZpUng1NXhMQTlSNEM0WWFRZ2NUYkVCUElMS2hHM0JVUmJOdzV3d3FkdUhMb0JRZlJ4OVpadUlIbzlqQlp3R1MrV2N3SzJpVHVNWmI1eVRPaDlrMXNVWms0Si8zT0piMDdtQVloWDFGNjVjb1hxMTY5UGxhdFdGL2M2L0g4QTloWGRBMkRmLy9yTHFqT0dWODN5M3diY0VZVjN4Q29VYlRDdGNzd2NXdkNacTF3bXBwOVQxdFBodStrcythemNhNFdxamkwcXNJRzBOSjRaRzRRQ2ZQdXlZSnZCVEJaWHVUeDk3Snl5bm82dWU4OVM0dnE5VnFqcTJLTC9EMFN0YmN4T0ZvcTdZQjR3YUJOd1JrNnBBaHRJMXh6TUE5TTZLcEdSQVJOQTBsUWZjZUFUMzJQS3gvYk1XamNRYkJmMWRNQjhYbnZ0TlVOZEZTQnVFSDJKc3lFbWR1N2NxUlJ4R2JxQnlkOUI1SEdsbHUyMGwyNGdtSHFTdjhkK3dSamw3MVRBZHJkdTNlb3dKb3BBVHNtTWVRRHZNdkRpSzNHbFVkVnFOWlZpZXljQis0aXVBYkRQbVprc1dKYnlML1NaWFBnN0ErNkl3anRpRllvV21GWTVhaDV5ZWYva2orUjNPRXRaRDVpOTl6U2wvbmpSZ2d0L0tPdllvandiU0xOc3pBTjgrN0JnbTRWY3Z2am1SK3I5YlpheUh2RGlvZE9VL3ZORmdRTVgvMURXc1VWZlJvSU5YMWtvdW1KRXBlVnpjb0t6Y2tvZEQyVnZIcGdpVW9tTURDUnBZUUR2dlBPT0FCNXhBZU53ZEZhdEd3ak9jUFYxeklvYzJscXhZb1hEbUxBVmVSWDBHLy93dUhrQWY4TTRIRTE1eVFhaXJ3TlRBRlQxWmFCT2FtcXF3NWdvQWprbHMrYUJSMjlzWm9qL2UrblNwYWxHY0cybDZONEp3TDZoV3dEOEw3SFBXa0hDUTd4QVN5NzhuUUYzUk9FZHNRcEZQTXdqd3p3KysrVnZYdDFTY0E5QzFiV0hsUFY4L251YXpsNitQUVdEOVZUMWJGR2VEYVJKTnVZQnZuM09tY2ZPMzI3ei9ZUDU5dHAwU0Ztdjg0N1Q5S04wV1MvV1U5V3pSVjlHWERibTBSRWpLaTJma3hPY2xWTktQSmk5ZVdDS1NDVXlNdlN6Y0l3SVVCL2ltdE1adFg3bWp5a2dtQTIyWVR0S1VlSDk5OThUTi9GSm5BMHhvVTh4WlFjOW40RVJBYWFVY0ZkNlRya1NiQmYxY0RVWHpBYmJNSk9jaDNsczJiTEZZVXlZblJZRW5KVlRzcGtXTkdzZVFEQ0Rqd0lTZWFHeUFVRlV2V1lvaGRTcWUwY0IrK1JmTmxEdkk3R3ZXc0crQjZPL2JBdC9iOEFkVVhoSHJFTFJtQVhGOTRoNVRCUmhjcnQ4K3MxNTh2NWdCL2xzUGtjKzJ5K1NUeXIvdlRLZEh0M0hwN2hTd1hxcTdkbWlIQnRJUStPMGlrRW93TGZQOStieG9uRW1pRksvTzA5dFA5bEIzZmFkb3g1SExsTDNBK2VwL1gvVDZlMURScjVZVDdVOVcvUmxOTGJoS3d0Rk80eW90SHhPVG5CV1RxbjFnZXpOQTRhZ0VobGI0TXdMSW9tejdOeWNUVU5nSWVBWXFhaCt0d1hNQXdlcnhOa1FFOWlXcllDckFMUEE0OXNCczNrU0FBYUNGMDZadlJrUlJwcVNrdUl3SnN4TUN3TE96Q25aVEF2bXhqeUFLTWJ2REhyaWlTZkVkakM5b3hMaG9naDVxZ3JBUG1vRisxeVB2MU1XL3MyQU82THdqbGlGSWhibWNTaDMyUHFIOVltUm9oejg1VEtOVHo1Q25UL2RTd00zcE5Pblo4NXJ2MWpLb2I5dUtyZWpRcm5EUk5IWm1BZjQ5djQyZHpoeXhjajM1TVhMOU5pT0kzVHZsM3RwYmtxNk1CUzVmSDMxcG5JN0t2Umh4R1pqSHEwd29wSnlPdG5CV1RtbGhQVHN6UU9KWVpYSXVBb3dELzE5RTZxWWdIbXBSTnhWZ0huZ3lpeVpyeHdURUhyVmZzcUFDVGd6cDRUL3VjUTN0K1lCdEdhSWd0RVM5ck5TNVdwS01TNUt3RDZnSzdTK29XZWVlVWJiUzFGYW81OGNGZjdkZ0R1aThJNVloYUllaTRudndkeWhHbzhRemw0ekNyS2pjdW5HTGFySG9xWGFqZ3JsMkVBaWpYUHlCcUVBMzk1bmM0ZWgzK0daVnViNC9ubnpGazNnVVpKcU95cjBZZFN6NFNzTFJYUHVLMVZ1eHhIa1VsZzVwYmo5MlpzSDhnc3FrWEVWWUI3SWUwaWNEVEdCMFk5S3hGMEZQVDhpODVWam9namtsUEppSG9EVlFOQTJjaUNCNVNxSVp6OFZSZWdQT3dTd0w5Z25xV1JySENoY3g0QTdvdkNPV0lVaVBBL21BY0JBdHRyY3FHWmI4SHR1akFNSVl2TUl5OFk4d1BmdWIzS1BJVHhDT0hJNy9hRXMrSDM4OStyMXMwTjROdWJSbEVkU3F0eU9JemdqcDlRNExYdnpRSDVCSlRLdUFzd0Q4L2NTWjBOTVlJcElKZUt1QXN3RGtQbktNVkVFY2twNU5RK2dCVU1FSnU2a0R3Z0lvTEpsQTZsbVNCMmxRTHNqd0JXYzBRVUE5Z0g3b2hYc1d3TDZKNmZDOVF5NEl3cnZpRlVvNmtEY0QrUWRDY2VKSHZ2SlloUTZYcnBBMVBXVXVuNU9DR0lEcVcxTTZCcUVBbnp2UHBOM1RPTlJ4WXBmTFVhaDQ5UGZpZWIvcUs1dkJtRTJmR1doYUlqcE9DMmZZd2JPeUNuRjdzdmVQSkJmVUltTXF3Qnh3NmZFMlJBVCtwVlU3Z0lJUFQ1bHZuSk1GSUdjVW43TUEwQU9oRS9YaU02Y09VTnhjWEZpMnhVcVZsR0t0VHNCSE1GVkI3aC8vZlhYMkJVVTdGTVVmMitxY0YwRDdvakNPMklWaWhDWVI3cjdJSWdOSkRnYjh3RGZ1L2wvNlRaZzh3ak54anhpdEZ4T2JsRFlPYVg2T1pnSHpscFZJdU1xUU53d1pTQnhOc1JFZmg2ZlhoaUFlV0FLU2VZcngwUVJ5Q25sMXp5QUVNWi9HZUtaVDNpbk4vWWRWeXhWclJGQ05WbW8zUW5ncEY5TnBmV0Q0Q3c5cjJvREl3VDlZclp3ZlFQdWlNSTdZaFdLR2tmNWovM3VneUEya09yR3E0RU1RZ0crZDU5Mkk3Q0IxTXpHUEtKc3B1WE1vREJ6U3BnV2pOaWJ2WGxnRGx3bE1xNEN4QTF6K0JKblEweVl1ZmZDbVlCNTRLeGY1aXZIUkJISUtSV0VlV0FUK0Z6R0VBVWpSRHhBRUYvamt0NXFNSkdRT2k0Rk9JQUxPT2tBUjB5RlNtVVpmNS9yd3V2WjlVZVJMN3dqVnFHb3ltTHNuOFpmdUFuS3NZRlV5Y1k4d1BmdVUwUzkzQVM5MlVDcVpXTWVkVEVkcHhEeG5GQ1lPYVU2ZTdJM0QrUVg4dk9ndllJR3JnYkt5VHcyYmxRTHVTdXdhVlAyNWxFRWNrb0ZaaDRvdkR5SWtjbWdhOWV1aWF1eGtFZkFULzVsQTZoSzFacEtZUzlNb0UxNXBBR0FFNjZtQWtldDhORkZnL2kzUEJWZVY5a2ZSYnJ3amxpRm91TCthMVFGVTBiNzNBUFZXR3dyN3YxYmNGTUpSWlgwYTlTWEJWc2w1SzRBdUZUWlorUXJDMFZ0OUsyV3o4a0xDaU9uVkd0Mzl1YUJTME9YTDNlZnZNZUtGZjhXZDFGTG5BMHhnUnZsa3BQZForb3FKU1ZaSkZobHZuSk1GSUdjVW9HYUJ3ci9qWWNwaXFmeG91QjF0cmlIcFVJRnl4Vk5ucDVlRkJoVW9WQkhJOWcyMmtCYmFGTUhPSUNMOVBwWUZIQzFQdVF3TDRYWGQ5Z2ZSYmJ3amxpRkl1aUw4OVNZendrQ2NPYXZFSE5uSXBBNU5HVXVnV3UrRTl4VVFsSHp5L1BVNjJ1aVBpZFp2RjJNdml6Z3ZURnQ5Wm1Scnl3VUlaaU8wL0k1N2dDUlU5cVZ2WGs4OTl4enRIcjF4MjR4K2dDSE5XcytGbWVyRW1kRFRPQnFwTzNidDFrVDFhNEVPSUNMN1UyTmNrd1VnWnhTZ1p1SFh2aDdYSTBsWGlpRjh1ZWZmNHFuQXNmR3hvcjJBWWc3UmdWSVhsZXRubmN6d2JyWUJyWmxheGdBMmtTc2c0TlV3TTNVMVZRNUZkNU9qdjFSNUFydmlGVW8vQmJ2WUVHNVFmRThRS3ZGd2xLSkJieUNrNEUyYTNQYjRCQjA2Q2I1TGpCZUl3L29CMTcwUDdaVHVZTTNhUEFab3VGODFqK0FCYndmQzdremdUYlJOamlVWTc1Ump4c3Z5NXcxYTFadG5XOE5LWi9qRGhBNXBSek1nL21MZXd6V3JsMGpyZ3lDRUVMd25BbTBDVlBBVlViZ01tM2FOSWN4Z2ZkYllQU3hZOGQyY1hVU0V1aVl5bkltMEdacTZoYkJBVndlZi94eGh6RlJCSEpLaFdZZWV1SGZFeGxyR2RhQ1o0bk5tREdEcWxXN2ZXTWVVTkxEZzd5OHlwQ1ByNStZNXNKN05QQWVFZHlIQVdBWjMrRTMxRUZkckNOdlF3ZTJqVGJRbGswQmwwU3VVMkNGdDJlNlA0cE00UjJ4Q29YdnpJM2s5L3hCQ2tqUG9vUVRSRzM0ekw4VmkzaExKd0Z0b1UxTXp3U2tYU08vNXc2UXo3MkdWMklhaEtMaDRxOG8vTTBEYkhoWjRxeC8zRGNXakhVUzlMWjZjdHZsOWwrajhEZlNLZVpCdzF2WWdoWXRXaFNpODYzS3h1aDJPYVdkMlpzSHJqSlpzR0NCdU1zWkJySnVIZTRYK0pTeDFrbEFXNTl4MjZ2RmRCVzRUSnc0MFdGTUxGMjZsRjU1NVJWeFg4VE9uZHRwOSs1ZDR2RWp6Z1RhUk50NHhTeGUwb1NuMjhwODU4K2ZIK0xCZ2dhK1JTQ25WT2ptb1JldTE1VHhLdU13UTVSYnQyNEpjWC8yMldlcGI5KytGQklTSXJqbEJWZ1gyOEFKQnJhSmJVc0ZiYUx0T0s1YjRJVzNtK3YrY1B2Q08rS0RJTUdpenowZkN3UHhYYmlWL1A1OWh2dzMvVWIrVzM1M0xqYitLdHIyblo4cXVQaE10RDRxQVUrbUNnQllLUDdFZ1JmOXdDcGhJTkZQcFZMd3FqTlVNZVUzcXJEMWQ2ZWlVdkt2b3UyWUo3WUlMdlZuV3UvT0JkOUFGcFB5elBjYStGYmNkcFdxNEt4Zk1VM25DbFRqRTY2S1c2N0lmSDE0MlJBVDQ4YU5Fd2FDTXpTY1FlTkJleEJFWndKdG91M3AwNmNMTG1QR2pIRVlFeXpNd2tBd3RZWHBGenltQXk4M2NpWndneDdheGhOd3dXWHUzTGtPWXdLbTdHNDVKVHpTWGVLcngwUytrTnZDNi9SanJHVFlGZVJJOEd3eWpJUXgxYlJ3NFVJeEdzVkpCWUJsZklmZlVBZDFzWTZEZ2piNmFjMFdXdUUyOHRVZmJsbDRSN3hMbHk2ZGdjVXlkeSsybUljYndhdWI1Y0R6OVBUY3cxekxBbDVlWGhrNDhHb05XaVFFMjUwUTBuZU9nZStCQXdlQ2RMNkJIMlJTNHlNWVZhbkYzSmtRT1NWd2VXdS96TmVibHcweDBhTkhEeUhZN29UT25UczdqSWxodzRZSndYWW5EQmd3UVBCbGp1QWJrSmFXRmdpKytBNlBWM2UzbkJLZXdpdjFyeDRUK1VKZUM2K0xSNzAzWTh4a2ZNSVFOeHptc1dCZGJHTTJvem5EN3RIcGhWVzRyUUxwRDdjcXZDTmwvUHo4WHNkaXlhRHE1SHZmWjBvUmR3bnUvNXc4eWdXTFFBNElDUGdIYy9VRGVQa05mRmVtZkhXS25mK3BVc1JkZ2RnRjY2aE1SY3RUTjIzNGl2NHRWYjhsQmUzTW9uZ1diWmZubEpoRDBLNGJWRG8yVWZBdFc3YnNVNGdGWGpiRUJGNXlNMm5TSktXSXV3S1RKMCttY3VVczc0dFd4UVN1bGxtMGFKRlN4RjJCeFlzWFU4V0tGV1crL2d4Zjd1L1g4RjFZV0ppNG9zMmRja3FSa1pHcW1IQW5sR01rTUhEWjd3ekdZNHdYR0c5cXdESyt3MitvZzdwWVI3VXRsK0NPS0x3am5xR2hvVjA5UER5K3g1K2x3bHFJUElOU3pKMElUS0dWcXROY0JERzQxYTFidHhOejlRYjRnT3VtOHcySWJDSHlEQ294ZHlZd2hSWVFvZVRyRXhFUmtjamZYY0J2WGtsektHRDdkVXJJSUdwemxNU1RkbHM2Q1dnTGJTWmd4TEgxS25uMW4ybmxXNzkrZlp6ZGVmTGZkakZSdTNadE1SMmdFbk5uQWxOb3RXclZ5akVtNnRXckovSU1LakYzSmpDRkZxa0pNYmlGaDRkM1JqeUFyeHdUWGJ0MmRZdWNFcWFyOUZFZCtNb3hVVnlLaTEzaDRDak5CMlJ6UGp1YXhNUCtTL2lxcEg5RjhtdzFocndIUFVmZXcxNTFMcEtlRlcyWDlMRytiT1Z5NWNxVngvSEJGc2RjdlFBV2pRU1pyMmRBUmFyYVlUVFZIZnRQaXBqNGlsTVJOdm9mb3UzU2ZvNzV0bXJWS296NVR1SGZycUNPUjYxWThsbTZqdnpXL0VCKzZ5NDRGNnUvRjIxN1ZBc3o4RzNkdWpVZUlWR2F2MVBHQkk5RUtDRWhnZnIzNzA5SlNVbE9CWktjYU52SHg4ZDBUUEJadmhCQ21ONlVLVk9jaXZIang0dTIwV2NLdnJqSHdUTStQcjZPSEJQVnExY1hCb2xrTHVicW5RbmtoOUIycFVxVkhNWkVBWmVTREV3WndaZ3dMWWFrZkZrYjREdjhoanFvaTNXS2l6c1ZEZzRQRm9wYUhMeWRhOVNva2VUcDZia0RYN3NEU3BVcWxWR2xTcFZSNE1iaVVKTzVsZ0tLR04vUzY5ZXZMeE1jSE53R0J5VFhPYVZhMXhYUStZYUVoTFJPUzB2elJDenc5OFV4VVlDUStVWkhSK05OZTZXQm9oWVRCVkFnL2pBaW1FSVFveFpqSUdNQjR4M0dLc2FYR3JDTTcvQWI2cUF1MXNHNjJFYXhrYmhENGVBb3ljTlZ6L0xseTdmZ29PbkVBZDJGbDZmeldkTXlMeSt2VkFTMk04RnRwbkRiYjRJRHVJQVR1S1drcE9DZ1EvTE1vNmp4WlpSS1RFd000dDg2c01aMUxWZXUzR3gzNFZ1MWF0WEU3dDI3NDRvbGlMQTRLUEZaSEJONWh3bStKUmxGS2lieVdMQXV6QWQ1RTRoL0U4YVRqQVBjNXEzSXlNaHJIVHAwK0h2dzRNRi9qeG8xK3U5Smt5WmQ0VkhiMzRNR0RmNnJWNjllZi9EbzdFODJzU3VsUzVlK2lYVzBkYkVOYkF2YkxCNlJ1TEpvZ1Z5Uy81RmxnNEtDMmxhb1VLRVRnaDFuU2dna0JMWU1QdHNyVU5odUgyMmliWEFBRjNEaU16WWtHUVhQb3NxWDRZRURrdXMxZHhlK0xCTHhBd2NPQkZkZDBLem1BUlRIaERuWWJqOEh2dGEreG5KUmlZazhGTjAweWpPR001TFpJRy8wN3QzbjZ0S2xqOTk4Ny8zM2J5MWI5ZzY5L3ZycjlOUlR6OURpeFV0b3laSWxOR2ZPWEhyZ2dibmlpcTk1OHhmUXdvVVBpL3pWMEtIRC9temNwTWtsWDEvZjY5aVd0azFzVzVoSXlaTEZIdUwwd3NGaEZRc09aRnhsMDhEZjM3OURZR0JnUndTK0RnUldZVUp1QzIyREF3ZEtVeTYrT2orTmE1SGx5OEFCV1NvcUtxcENhR2hvN1pvMWF6YmdiVUU0bXRlb1VTT2hNS0czdzIzR291M1kyRmhjZlFJK3NwZ1Z4MFErSUxkMXA4VkVMZ3BVSEhtS0FBWUVQaVU4UER4cjRjS0hycTFjdVVyY2dMajA4U2RvNnRUN2FHRFNJT3JZc1RPMWFkT1c0cHNsVUd5RHh0UzRjUk5HVTJyU05KN2F0azJrTGwyNlVzK2V2V0VlTkc3Y0JCb3pkdHl0RGgwNi9zNUdoUHVRdGpCR2FHMmh6V0lIY1daQmNFZ1FBY1AvbUVBK1d3cmw0SS9oNEk4UENBaHdDdEFXdHhtTnRzRkI1Nk54VTZGSTh0V2dINlJDUEp3RXVVMlppNVZqY1V6a0Qzbmc2L2JJUmNGb0EwbnVtb3ozS2xldWZJTkhFTmMvL25nMXZmVFN5elJqeGt6cTJldHVhdGl3Q2RXdVU1ZXFWUSttY3VVclU1V3FOUVRLVjZoS1ZhdlZGTUF5dnNOeTVTbzFLRHdpaXVMaW0xT0hEcDJwVDU5KzFMLy9RSXFQYi9hL01tWEs0SUtEOTdRMjBYWkI1V2lLUzNFcExzV2x1RGlobEdJZ29UMjBaTW1TTFBCOXJ1SWQ2cSsvL2dhUE11NFhONXZXQ1l1Z1NwV3JVVVJFQkZXb1dKVXFWcXBHOWV2WDUrK3FNMnBRVEV5TU1Bb0F5L2dPdjZFTzZnTDRIa2JTUEtFVjNYMzMzVHhxU2N5cVhLWEtUOXd1WEc2WXhnRmNpa3RoRjhXWmhuNm1WREkxTlRWNnk1WXRjYzRFdDRuWFZsbzVNRlFjWlZqcm5qeDVNcG9SNTJUa21hK2J3TUF2cDVoNGxQNFYvZ2k5RytkTW9FMlpBMFBGVVVhUjVlc21NUEF6VVNEV3VMeDJJWSs4Ymk1Y3VQRDZpaFgvb1lVUExhSzc3dXBGRVpIMTJSQ3FpMUZFOVJvaFZJbk5vV1p3YlFvT3FVMVZxZ1ZUU0dnZFJoai9IaUkramN0MVJCM1V4VHBZdDBiTlVQRjlSRVE5YXRhOEphTUZmeGY4RTV2V05YRFF1QlFiU0dHWHFWT25DbWhCQTNpa3BLVE1TazVPdm9EM0lpUW5iM0l5MEdieUJlWXdDVngwWGhKUEhWYSt4NDhmbjhXNGtKbDVqSTRkTytwVW9FMjB6VER3WGJwMGFRbUFsKzM0YXRDbmtzU2xtMDZFN1JTVzRLWDNMMHJRRkc4Qi9iZFhicTN4VzNScjJUOGZ2dlgycFFlelhxYloxNTUzS3RBbTJtWU9UNEtMemt2aWFlaGptZStpckRmb29XdXZPUlZvVThVMzR0NWFKUUNOcTVVdnd5MWpZdUxUaVNXQUhJcHVIRXZMbFN0Mzg0VVhYcnorOXR2TGFNcVVlNmxwMDNnVy9GQXhQWVVSUkkyYXRZUUo2TVlRV2d0VFY2SGlFNmhlSTVScTFRNFh3TEwrdlY1SE54VnNBOXZDUzV4cTF3bW4yQWFOZUhRU1MxV3JWci9FQnZJWGMzbGM0MVJzSUlWWkpPTVF3Y3VpL2RHbVRWK0t4eFc0NG5rN2FIUFZxcFcwYVJOZXBKUHlFVGhwM0lUQThhZUJMNHYyUjBlT0hLSnQyMUpkOGdZNXRJbDNObVJrSElhSkdQaEs1bUhseThEQml1dm54YzF0RE53MDVrem83WUtETGh6Vy9rV1JqRU53WG5qenpRMGpmMTlBRmI1cFJ5VlBOYUVTcHhvN0ZXaXpJcmM5NnZKQ1lpNWZiTDZWQnY2Q3MyUWVCcjRQL1A0czlUNXpMM1U4T1pZNk9CbG9FMjNQWVE2MmZDWHpLQkl4a1lONUlML2d4M2lvZlBueU4xNSsrWlVzM0tVK1pNZ3dpcW9YUTFGUlVjSTBJUElOR2pRUUpsQzlSaTFxMHFTSkVQOGFOV3V6d1RRVm4rYVdMZXRpRzlnV3RsbVZSeVg0UGo0K1hoaUp2My9nYnlWS0NBTjVTT05XbkFNcHJJSUEwUUlGeGpGNjgrYXZDSTlsVmdtN013RU80QUpPNEtaeEJGY3JYeGJyMFJCdHZFTkJKZXpPQkRob0JtTExGNStDTHdNSEp3NVc3eTVkdXRTT2lJaG83V3lFaFlXMTZ0bXpKKzRjeG1NOXdBV2NySHh0WStLaEcyL2VNK0h5SWlwektwNUtuR1F4ZHlIQUFWekFDZHcwam9hWXdHOXpMejlIWFU1T29QWW54cm9VNFBBZ2M4bU9MNk5JeElTaTRIc2txTWY0K1BqY2ZPYVpmMlR4cUlNR0RCaEVFVkgxcVhyTkVLck1waEVjV3B0SERXSDhkMjJxeGVKZU95eUNhZ1RYRVovNVdjYTJzRTFzTzZSV0hmNitGb1ZIUnJHUmhKQ2ZYOWxmbUJlbXNNWm9ISXV2d2lxTW9nVUlBc1VyT1RuNUVKN3dxUkp6VjJETm10V1l3dG9CYmhwSEdWN0hqaDA3aFBjbXFNVGNGZGkxYXdjeEo1bXZMQkQ0enJ0YXRXcDlTcGN1dlFkZGp6TW5QSGJEbVVEQ0VXMHpoMjNCd2NGZHdVbmpKdmhLTVlFelVLKzUxMTg1VXUrNzNsVGlCQXU0RzZEaDl3UG93ZXV2N2dZM2hoNExnSlh2a085bVUvdmpZOXdDdzcrZmt5MWZoaUVtYWphdFNSSGRJcDBLdEpsVFRDZ0tMbzBOUlhKOHpweTVmNy80NGt0aXhGRTNuQVVjcjQ5bE1jZm9BRk5RdGV0RThOOTFxRTVZcEVETjRMQUNXbVlqNFcxYnBybHE4V2NZMWEwYlNlVXJWQ0ZmUDMveDNEQUc3azRIMStKUzBFVUxFQVNLejRZTkc3THdsRTJWa0xzQ0sxWXN4d3QxL21adWVqQkRoSEhRNGV6STUvRGh3MW1iTjd0KzFLRUQ3NnRPVDAvWCtlcGN4WmtsajZEOHZiMjkzMEtYNDMwRCtydTIxWG1md3NSbTBiYitRaVUvUDcvbkpiNWlqaGlmREM5d252SFg4emU5VC9LbzQzZ2p0MEM1MDYxcDJxVm5sVEdoOCsxeVlqeTF6MlR4ZGdQY2RlcWViUGtpSnJ3RHlsRFN5aEYwMzIrUDA3MS9QazZUL25qRXFVQ2JhSHZBOHFFRUxxcVlzQ2t3bEVERys5MjZkYnVDRy8zR2pwMUE5ZW8zRUZOVnlFdEF6QnMxYWlURVBqaWtycGg2d21kaExLTU50RldqWmgzK3V3NUZSMGV6Z1ZTbVVxVktmd3VPR3RmaTZhdUNMbHFBZVBQUTh5bThjMWtsNHE0Q2pHenQyclhrNysrUHh5dmphYVF3RFdFYzRIdjA2RkdsaUxzS2VQMG9Yanhqd3hjSElmaStpTzdHVys0MmJrUk82VU1YNTVTK0ZGekFTZU1yeE1JbUpsNmMvdmR6VkNLVGhkdE40SCt5QmQxei9nbEhNU0g0Smg0YjdUYm9lbUppdG56UjNXUFRwbEhTeFJsVTRadTJWUEowRXlweG1rZFpUZ1Rhck1odEQ3bzRrOGJzdVo4OFBFdlp4WVJVTUFXRXU3cEhWYXBVNmZvTEw3eDRhK2JNMmVJbVB5U3lxMVVQNFJGQVhURWlDQTRKbzdDNlVRSWhvWFVMZFJsdG9VM2tQWkJZeDFWZDVTdFV5bUtldjRPcnhybDQrcW9nQ3dlSFYwUkVSRHd2M29BQXFnVEhWVURlNDlOUFA0WEEzZUN6akZnY2NBQWVGWTN2TWpJeWxDTHVLaUR2c1hmdlhwa3ZEajdmbUppWWxoamVqeHc1VXVSeDNDbW5CRTRTWHk5ZUZqRlJ0MjVkdlBpZjdydnlEeXB4aklYYlRlQjNJb0VtWFhqTUxpWWlJeU5iNkh3VGo3Snd1d202SEIvUGZKYzY1TnZ4MFM0MC9OY0hxTXhwSHQwcExoWndKc0JoK0s5ekJDZUpyNGdKcVdBa2dzZUNiSjA4ZWZMZmp6enlHSFh1MG8xQ2EyT0VnZHhEYmFxTmFTV0llNjF3Q2d1dkorQ01aYlNKdG1zeUQweGxWYWxXZzgrQWZNK0JxOGE1ZVBSUmtJV0RnMGZPbHVtVUw3LzhVaWswcmdJRWJ0MjZkUWhrOHZYMWZZTzU0ckpIZng1V3Z3MHhQbkxraUZMRVhRV1l4Lzc5bGpmemFYenhXSXF5ZklhNUVueHhCWnU3NVpRd3VnTmZqb0hYbVN2T3prUk1lSGw1ZllURmUvNThpa29jWmVGMkUvZ2RUNkR4RjViWXhZVGV4K0NibU1IQzdTYm9ram1lSnZ6eWlFTys0MC9QcFlodmV5b3ZFSEFGb3IvdlEyT1BXdDd6SXNlRVZNU29JelEwOU5vVFR6eUp4NFdJNlNPTU9HQWNtRDZDa0lmV2poRGY0OU9aeTJqYndxR3V1QklyT0RnWWo1ai9IM1BHWTB4czk2VzQ1S2R3Y1BoNGVIaWN4ZUtHRFJ1VUl1TXF5T2JCSERPWnEzaGZkZW5TcGMvaXdEdDgrTEJTeEYwRjJUdzB2bmhGYW9DbnB5ZHVZQkw5NjRZNUpjRzNWS2xTSnhBTHZDeGlndm4rZ01VSmx4K25FaGtzM0dieFZYMHE4ZDk2dDdHbmdib2VJTmNERGpWVTE1UGdsNWxBb3k4c3Nvc0o1djhEK2hoODJ4MFpaUnJOdit4UHpkYjNzNkwxN3FIS2VvQmNEMmg3Y0tTeW5vek94OGJSbUF1TFZURXNZbUxDYjRzdFY3S2Q0UDF6QXdTZGJrVVR6ajlrRnhOYXdiUVBubWk3WmZpSWtYL09uNytBMnJmdnlHZjZ0YWtXaXpXUzJCRHc4SWo2QXJYcVJMcGtHUnd3bFFWT2xhcFVKeDlmdi9QTU9VWGpYangxVlZDRmd3TzM4OS9BSWhLcEtwRnhGV0FlZU1zWnVQR0JoamZZNDFsQmdSelVOM0RnSFRwMFNDbmlyZ0xNSXkwdFRlWWJrSm1aV1lINTNnUmYxRkh0cDZzQUk5UE5nL2xkMG9WaSsvYnR1TUZLeE1UWVMzeldmSVJGM1NTbW4zeVNGdTE3M29wR0crNVcxaXV4UGNaUWI5R1JGeW5vV0d0MVhRbSt4NXJUaUo4WEdHSWlJeU9qdkI0VDROdnVNQXUzU1R4MzRsLzA2cjczclJqeTMvdVU5VnB0RzJ5bzkvcmg1WFRYMFh1VWRXVjBQanFPUnY2OFVNVlh4TVRZUzJ3c2lnc0RYQVcva3drMDlvS1ZyelVtdElKM2FUUXJXN2JzOWZrTEZ0NGFQWHFzdURrUEl3NFlSOTN3ZWtMRUl5S2pCV3FIUmJsa0dSekFCYWpPSTZLS2xhcmNZdDY0OTZPeHRnL0ZwU0FLQndmTVF3VEwrdlhybFNMaktzQTh0SndIQXZrUDVob0U4SUdIdituZ3dZTjJBdTVLd0R6MjdkdG40THRreVpKZ25hODdUZ3QrL3Zubk90OC90VmdvTVhyMDZLcjREaGo1SzUvbEgyYmhOb25SM3ovRW03bGRVbjdZVFNXMnhkalZTOXcwWEt0aEtTbS83N1dybzRMdjBlWTA1TWNISGZZeCtMWTd4Q01DazNqaXU3Y3NCTFN5OTRlRDFHcnJJTHQ2RXpiTjFXcFlTdnJ2UiszcXFOQTVZeXdOKzNHZVE3NmpmdVd6Zk1XRkFhNkM3NG5tTk9wbksxOXJUR2dGeTg4MGI5Nzgwb01QUGtpZE9uVVZ5V2xjL2wwTHlXb1djRXdmMWFsYlQ4Q1Z5K0NDL0FldXZNTHp0SGlrOXgxemYxcmJoK0pTRUVVTERoRXNPQXRWaVl3dDhLcE12RzRUbDV6Kzg1Ly9WTlpSQWMvbHh5V2lDeGN1VlA1dUM0Z2JycllDTnkyUURlWng0TUFCcFlqYllzMmFOZlRxcTYvU20yKytLYmFucXFQQ3YvLzliM3I1NVpmRkdicnFkMXRJQ1hNclh4YUtVSjJ2TzA4THlrTEIvNk5xK0E0WThqOCt5ei9Jd3AwTGZQUDNEN3lwMnlVeGViaXh6cDVZWVNweWFYUWl5VmpIQVh5UE5LT0I1MlliK25qcDBxVWhlaCtEYjlzREkzT0ZILysrWUNHaGxRbWI1eGwrYjcxN0dPMDlkMUQ3MVZMR0hsOW9xT01JSFErUHBhUnpjeHpHeFBDTDg1VVhCcmdLdnNlYjAvQ2ZESHgxc2RXbnJOS1RCZzM2YS9JOVU4UlRibkZsbFppcWlxeFBrZldpS1N3Y256RUNybDJPRnB6QURZOUlLVnMyQUhtUGRHMGZpcWV1Q3FKb3dTR0NCV2VoS3BHUmdmY2R6NW8xaXg1NTVCSHh3aFlZQ0w1VDFaVXhkKzVjbWoxN05qMzIyR1Awd0FNUGlFOVZQUmtRdDA4KytjUnc0QUg2Z1plZW5xNFVjUmw0c3VleVpjdm9QLy81anpBREdBaStVOVdWZ2ZheEhwTGNlQWNCUGxYMVpNQTg5dXpaWStETCsxMUg1K3ZtMDRKV29SZzNibHgxZkFjTXZEQ1hTaHhnNGM0RkVrK040MDNkTHArYytZcEs3STYxL2w1cmZRZnRGMHQ1OXdLZklFanJad2ZmdzgybzczZlREWDBzaXpINHRrMGZrU3ZjZi9KeEN4R3RiRDZ6blZydkdtcjl2ZGNYeHYxWmZ5SFZzSDUyNkhob05QWDd6cEtBVnNYRTRGOTRGR1Z6VVVDMjJGaWZTbXlvZHh0N0c2anJBWEk5QUtNM1ZUMEp2cG5OYWZBUEJuUFd6UU5YS3RYaU0vaWJiQnkzQmc0YVF2VllxTVhkM3BneWlvSnd4MUpZUkxUNGRJZGxjS3JOSTVHUVdtRlVzVkpsVE1QaTBsM2NORmg4MVZWQkZDMDRSTERnTEZRbE1qSndKdjdNTTg4SXczanFxYWVJei9wbyt2VHAyUnJJbkRsemFQNzgrYUtPanBkZWVrbFpWd2JFRGFNR2NOTVBQRUEvOEpDY1ZvbTREQmdpdGdIRCtQampqNFVKdlBYV1c5a2F5THZ2dmt2dnYvKytxS01EZmFPcUt3UG1nZnM4Wkw2eVVMajV0S0JWS0lZT0hScU03NEMrUDdPUXBMTkE1UklwbC9ieTVtNlhXbCswdC95Mkw1YmV6VnlsZldzcHRUSzYyYTN2Q0Q0SDQ2blgyZnNkOWpINHR0M1B3cDFMcEY4NmFpR2pGUmdHdm0remR6aXR6ZHlnZldzcFNVZG0ySzN2Q0IwUGpxYTd6MDV6eUhmZytRZW9SQWFMdWtsTVAvVWtMVXA3M2dxUlUxTFVLN0VqeGxCUDVKUXlXNnZyU3ZBOTFveVN2amVZblc0ZXVOOGpxV3JWcXBmSFQ1aEV2WHIxSWp3aXBGYnRTSEYxVTFoNE5OV05pQkZUUnZoMGgyVndhdHk0c2JnZnBHS2xxcmhnNFRmZWgwSGF2aFNYL0JZdE9FU3c0Q3hVSlRJeUlLeTQwUXdHZ3VrcmZEN3h4QlBDUUdBbXR2VXgybGl3WUlHb3A2L3oybXV2MmRWVElTZnpRSEphSmVJeUlPaTRlUS9iMGJGcTFTcGhJREFUMi9vWWJjQTQ1UG9RZld6SHRxNHRVR2ZYcmwwT2hjTHN0S0N6Z1A2MW1SYTBNNDllUC9KWi9uNFc3bHlpMGJHQnZMbmJCWVpSWW1jTUJhMlAxNzZ4bEhkLzRmWVY2enVDejRGNDZuNW1pc00rQnQ4MmFjTnpqYkhIRmxnSWFXWHRzUTNVYXNjUTZ2REZVTzBiUzFuL1M2cHlmVWZva0Q2SzdqcHpyME8rZlg5aW9WWmNHT0FJbzg4cGNrcmJZK3pxSlc1VzVKUnM2cWpnYzdRWjlmdldZSGE2ZWVBWlVZc2pJNk4rR3pWcURMVnNuU2h1eXNQVlRYVlpwT3ZWYnlnUUhobnJWc3ZnaGl1djhEaDRIalY5ei91d1JOdVg0cExmb2dXSENCWUlpVXBrYkxGaXhRcGF2bnc1UGZ2c3N3SXdCSXdtWnN5WVFVOCsrYVMxSHFhbmtPZlE2eUEvZ3R3RFJGdmVuaU5BM0ZBWDNQUUREOUFQUE9RWFZDSnVpOVRVVk5xeVpZdVlBZ05nQ0JoTndFQmdKSG85VEU5aGFrdXZnLzZBNE8vWXNjT3dQVWVBZWFDdXpGY1dDalBUZ29BemMwbzIwNEoyNXRIdDNGUXFrY2JDblFlOGUzNHRiL0oycWJVMmtSYnR4Wk12TE9XMzY1Y3A2RUFyNWJxTzRKTWVSNTFQV3g2dG91cGo4RzJ6ajRVN0QvamlmS3FGbUZidSttUU12YnIzUGUwdm9zdlgvNlR1NlJPVjZ6cEMrLzJqcU12WGt4enl2ZnNISGtYaEV1VmN3QzZubERMY1dHZXZJcWQwTXNsWXh3RjhqalNqM3Q4WXpFNDNEenloOWwrTkdqVytPR2p3VUlwcjFvTHExSTFrb1VadWdjVTZtc1dhRVJIVndLMld3UTAzRWVLT2N5K3ZNakNQZjJuN1VsenlXN1RnRU1FQ0lWR0pqQW9yVjY0VUJ2TGNjODlaQVFOQlB1VHh4eDhYT1E3a1JKNS8vbmtoZ1BqRU0zQWd5aEJwMVRadEFYR0R1SU9iZnVBQitvR0gvSUpLeEZYWXRtMmJNQkFZZ2c0WUNFWWEyQmUwQitQQU5BNSt3eWR5RkR0MzdpUTh0a1cxVFZ2a1pCNW1wZ1gxUG5SV1Rnbi9ENG12blhsMCtuWXlsZGpId3AwSDFEcmNUUmlFWGo3NStrdjY3ZXJ2Mmw5RWk3NS9WYmxlZHZEWkgwZnRUNDUxMk1mZzIyYnZzRHhoNEtIcHdpRDBzdm5yN1hUNUtpNlFzcFJsMzMrc1hDODd0RThiU1IxT2puZkl0OGM1Rm1ycGdnQXpTRHl0eUNudGliWCticGRUd3VoT1dqODcrQnlPNTVFUy84OXRZb0lMTHQvK21NM2pmSjkrQTZoRml4YmlpaVpNRCtFeDZaSDFHZ3BneXNpZGxzRU5DZlJxTlVMSno4OGY3ejFmcmUxTGNjbHYwWUpEQkF1RVJDVXlqZ0R4UlNJYStRc2RPR3ZHQ0dUUm9rV0c3M0dXRDBFMmF4d0F4QTNDRG03NmdRZm9CeDd5Q3lvUmR3UUlPMFloRUhFZDJHZHdneEhLMytPeVdtemZySEVBTUkvdDI3YzdGQW96MDRJdXppblptVWU3YjFqNElFeDV4S0x2WHVITjJwZmZydjlPUVdrdGxldGtCKzk5VGFuMThWRU8reGg4Y2FOZlhySHN1NDh0QkcwS1RLWGJ2dHh2TzNFdmowQ09qM2JJdDh0M0xOUUgyUmh6Q2J1YzB2cjJsdC8ySzNKS3g3clpyZThJUG9manFOdnBDWFl4d1FXQ3U2RlJveVlYNzc2N0R6VnNIQ2VtcktMcU5SQWlIUjNUV0NDcWZpTzNXZ2EzaU1nWXdsTitmWHo4Y09QckJtMWZpa3QraXhZY0lsaGdCaXFSeVE0UUg0d084SkE5VEVucG44aHI0Qk9BWVVDUWMyTWNBTVFOQ1c1dzB3ODhRRC93a0Y5UWlYaDJ3RWdDQW8vcEtCbklhK2pMTUF4TWllWEdPQUNZQjBZNE1sOVpLR0NlcXYyVTRleWNFdjduRWw4NzgyajFOUXNmcnBUS0k0TDJ0VFNNUHZRaVJoMksram5CZTI5VFNqZzJ6R0VmZ3krdWxNb3JZQkR5NkVNdkdIV282dWVFeEQzRHFlV3g0UTc1ZGpqTFFxMjRNQ0FuTk1wVTVKUjJ4VkRRZnhVNUpjWDZqdUJ6TUk0Nm5SeG5GeE5jaEhuRXhqYjRwWHVQWGhUYktJNGlvcUxGMUZCVWRHT0thZEJFb0Y2TTVkTmRsc0VOVjE0Rmg4QThmSC9FUG1qN1VsenlXN1RnRU1GaU5oZGhDeGdJZ0xlSVlXcEtCbjdIWEg5dWpRT0F1SDM0NFllR0F3L1FEendZZ1VyRWN3TFdBekF0WlFzWVFGNk1BOEM2VzdkdWRTZ1VtQTVUN2FjdFhKaFRzak9QWnFkWStCUWluaHVNL25vaGIvcDIrZWF2YzhwNlpnRHppTXNZNUxDUHdiZjFUaGJ1ZkdEcEtUelM2WGI1OGMvenlucG0wRzczY0lyUEdPeVFiOXN6WSt3dUNqQUxYT0lzbDFxZkpvcTc5ZlVpY2tvSFd5blhkUVR2QTNHVWVNSXdzcFBOWTNWNGVPU1BuYnAwRTIvdUMrY3orcWpvUm1KcXFINXNVd0ZNR2JuVE1yaEZzSG5nVFlSKy92NjR5N3g0MnFxZ2loWWNJbGowdWYrOEFPYUJuQWtNUkFmT29QTnFIQUN1ZW9LUWdwdCs0QUg2Z1djMmthMEN6QU1qRjlrNGNGVldYbzBEZ0hsZ1drem1Ld3RGRWNncDJabEhreE1zZkR0ajhnMjVMRHI2b3JLT0dYanZia3lORHZkMzJNZmdpNnVrOGd1NXZKR3hRbG5IRE5ydUdrYU5EdzkweUxmVjZaSEtDd1BNSU1lYzBqa2UzU25XeXc3ZTZYSFVKdE13VXRMTlF5VE1nNE5EZms1czM0a2FOb2tYWi9TWUdvSkl4emFNRTRodVlQbDBsMlZ3dzlSYWpacWg1RlhHRzAvWUxVNllGMVRSZ2tNRUM2YUlWQ0pqRmppTHhidytwbDR3WXNpUGNRRHZ2LytlRUZCdzB3ODhRRC93TVAya0VuR3pnUGtnNmE2UEdQSmpIQUMyZzZTOHpGY1dpdHhPQ3pvanAyUXpMV2huSGcweUI0aDdCdklMdVN6S1lQTlExREdETXJzYVU4ekJQZzc3R0h4YmJXZmh6aWZrSXN4RFVjY00ydTRjUnJFSCt6cmsyL3prVUhGMVZGNng2UHRzY2tyN1d5clh5UTdlYVUyb3hWSERTRWszRDF6ZXVxUmN1WEkvdG1qWmhwbzBUYUNvK213ZXNZMkZXRGRvWkVGTXczaTNXZ1kzM0hWZXZVWXdMdFhGdEZYeHBib0ZWYlRnRU1FQ3dWZUpURzRBTVVwSlNSSEc4ZmJiYnl2cm1BWE1BMWRBZ1p0KzRBSDZnWWY4Z2tyRWN3TnNBMC9uTlh2WmIzYUE4V0RmWmI2eVVPUmxXckN3YzBvMjA0SjI1bEV2ZzRVYTl4SGtFM0lSNXFHb1l3WmxkamFteVAwOUhmWXgrT0loaHZtRlhONDRzbHhaeHd6YTh1aWozdjVlRHZrMlBUNUllV0dBV2VDaUEyVk9DYU1PUmYyYzRMMnZDVFU3WWhncDZlWWhiaEwwOHZLNjBJaEhIWmkyUWpKYW54cUtiZFJNQUZORzdyUU1iblVqWTZoeTFScTRTUkF2aGlxK1NiQ2dpaFljSWxod2xxc1NHVmNCNXFHL2IwSS84QUQ5d01NVWtVckVYUVdZQjZhK1pMNnlVTUFFVlB1WkV3b3pwNFQvdWNUWHpqekNEN05RNDhHRytZUmNjTGV6cW80WmxOblJtT3FtZFhQWXgrRGJjdXVnZkVNdXI3TjVxT3FZUVp2dGd5azhyYnREdmcyUDhjaE9JZUs1Z1RLbnBLaG5CbVhZUEpvY01rd0w2dVloSGsvQzMyVkZSTmE3RWN0bjlGSDFHNGlrZEd6RFp0U3dzUVVOR2pWM3ErV1lCdkVVVmplU0tsV3FjcFA1RnorZXBDQ0xGaHdpV0pCZlVJbU1xd0R6UU40RDNQUUREOUFQUEV3UnFVVGNWWUI1WU9wSzVpc0xSUkhJS2RtWlIrMkRMSHhiV2JqekNia0k4MURVTVlNeTJ4dFRyYjJkSGZZeCtMWk1aZUhPSitRaXpFTlJ4d3hhOCtpajlsN3haajRsMytpTXZ1SXFxZnhDTGlLbnBLaGpCbVgyTktZR0J3elRncnA1V0IrTVdMNThwZk9SdUVTWHpTTWE1c0ZuK0EyYnNHQXpHalJPY0t2bCtyRk54TE90L01zR1hBSjNiUitLSDR4WUVFVUxEaEVzeUMrb1JNWlZnSGxBSU1GTlAvQUEvY0RERkpGS3hGMEZtQWNnODVXRm9namtsT3pNSXppZGhUbzFPdCtReTZKakxHNktPbWJndGEwaDFkemQzbUVmZzIvTExTemMrWVJjM2ppNlFsbkhERnB2SFV6QnV6czY1QnQ1dUpmeXdvRGNRaTc1dVNDaHpPN0dWTjg0TGFpYkJ3cVcvMUdtalBmWFlXRmg0bjRLVEZ2aCtWRU5tN1FRd0pTUk95M2prZXg0eTJIcDBwNC9NL2ZpUjdJWFpOR0NRd1FMOGdzcWtYRVZJRzc0QkRmOXdBUDBBeTg1T1ZrcDRxNENqQU9mTWw5WktJcEFUc25PUEtydDcwQWx0ckJ3NXhNcHYrMjFZdlR4QmNvNlp1QzF0U0ZWM2RYT1lSK0RiOHVVcEh3ai9iZWpWanlXK2FxeWpobTA1dEZIOVYySkR2bldQZGhEZVdGQWJpR1gvRjZRRUxYUE1NMG1pNjE0R1JUamo1QmE0YmR3bndjUzVwZ21hc1JuK1kyYkpsQ2pwaTNGcHpzc04yZ1VUM1hDNjFPbHlsWHhNcWkvR2NVdmd5cklvZ1dIQ0JaM2VrVXFBSEhEV1RhNDZRY2VvQjk0eUMvWUNyZ3JBZlBBbmVreVgxa29pa0JPeWM0OEt1OXJxeFJ4VndIbVVYbEhLNGQ5REw0dGtwUGNCcTIySkZHVkhhMGQ4cTJWM2xWNVlVQnVJWmY4WFpEUWlPb2FwOWxrODlDbnJyWUVCVlU0aXpmMTFZOXVTTEZzSG8yYk5xY21jUzJvY1Z3cjhla095ekZzYkRWRDZwQ3ZueCtlcGx2OEd0cUNMbHB3aUdEQkhMaEtaRndGaUJ1bVpjQk5QL0FBL2NCRGZrRWw0cTRDekFNdmZKTDV5a0pSQkhKS2R1WlJmZzhMZFFvTHQ1dkFLN1VobGQrVzRMQ1B3VmNsNHE1Q1N6YVBDdHRhT09RYnZMK1Q4c0tBM0VJdStia2d3V3RISTZxOWh6blp4SVJVeWpCR01mK0xlSHRnWlAyRzFLQkJBOHZaUG9zMnBveWF4TGNXY09WeXd5WUo0aWJHeXBVcll6K1E3eGloY1M4dUJWVzA0QkRCZ3Z3Q29CSWFWd0JYQStWa0hoczNxb1hjRmRpMEtYdnpLQUk1SlR2ekNOeVZRQjRwTEN6SkxONXVnREpiR2xGZ2FyekRQZ2JmVmhEdXpRUGRBcTFTa2lnb3RabER2dFgydGFjU1czbmY4Z201aUp5U29vNFpJS2NVdk11UVU3STFqMUtNOG95dDVjcFYrQW1qRDl4TDBhaHhNM0cyMzdSWkcyb2EzOUlDRnkzRFFEQ2RKcDVuNWV1SE53aHUxVGdYWDJWVmtFVUxEaEVzbUVOZnZ0eDk4aDRyVmxqZS9BZHUrb0VINkFjZTdncFBUbmFmcWF1VWxHU1JpNUQ1eWtKUkJISktkdWJobjl5RUFsTGpxTVJtRmhjM1FMbXR6Y2gvVTJPSGZSeVFFa2Z0dGd5aEZwdFl2TjBBN2JjT3BjQk5UUjN5cmJ5bnJmTENnTnpDTHFla3FHTUdtQmFzdm9NNTJjU0VWRER0STBZZi9QdWxrRnAxYm1EMGdXZGROWTVMb0NZUThXWThBZ0dhdDNYSmNnTWVkZFNwRzBFVktsYkc1Ymw0a3U0b2pYUHhsRlZCRmkwNFJMRGdFUmlyVjMvc0ZxTVBjRml6NW1QeFNBNXcwdzg4UUQvd2tEemV2bjJiTlZIdFNvQUR1TmplMUNnTFJSSElLZG1aaDk5L3dxbHhXaC95M055QVNteXE3MUtVU1c1RVRkUDZrdDk3WVE3N3VQeUhzZFJsM3hocXZXa3dKV3djNkZLMDNUeUV1dThiU3hYZVkyRjJ3TGZDN2xaS0VYY1Z4QVVKMncwNUpWdnpRTUVaZkNEamZhOHlaYzdVcWxXTDZzVTJvWVpJV0RkdVRIRUpiUVV3ZmVUczVjYnhyU2c4UEp5cVZLdUJPOHAvQVVlTmEvR29vNkNMRmh3aVdQRGNKTHpmWXUzYU5lTEtJQWdoQk0rWlFKc3dCZHpUQUM1NG53VzQ2UWNlb0I5NGVGUUhSaDg3ZG13WDkzd2dnWTZwTEdjQ2JhYW1iaEVjd0FYUG5aTDVjcC9XMXZrV2daeVNFSW9CQXdiVXhIZEE0TndBOGtwcFFLMzJENkd3SFYycDNKWUVDdGpTektrb245cUM2dTdzU3EzU2g1TFhsb1lVTUN2QVlSL1hubHVIdkZNYVVsTGEvZFIvKzczVWVjc282cGd5d3Fub3NtVTBEZGd4bFpMMjMwOWxtRy9vck5vTytRYnRiS0c4TU1CVlFFNnAwbFpEamtabEhpaTRTMXVjWkFTVksvOGRYcmdVelFiU1dFd2h0YUs0NXEwcHZrVTc4ZW1zNVNieExjUlRmcXZYRENWZlh6L2NUWTc5QU1maU84b0xvMmpCSVlKbDZ0U3A0dkhlZUU0U0RHVGR1cy9vczg4K1pheDFFdERXWjl6MmFqRmRCUzU0TXg2NDZRY2VvQjk0ZU5jRkh0ZUJ4Nm52M0xtZGR1L2VKUjUyNkV5Z1RiU05SN25qWFJ4NHlxM01kLzc4K1NFZUhoNkNieEhJS1FtaEdEVnFWRFY4QndSTjhTYi9wUlY1NUJGRExkT1RxT3ZCc2RUNXdCaW5vc3ZCTWRSaWZ4SjVib3dtLzhjcVVPQjRiME1mTDFxMEtFU1BpWWg3YTFITngrdVMxK1pZdW12L2VCcDdZQzZOTy9BZ2Z6b0hhR3ZNZ1RuVWJmOVlLck14bG1vdXJVdDFKNFE0NUZ0MlJ6UHkyQktqdkRqQUZTaURDeEtNT1JwSDVvRXBJRHdqYWpqamF1VXExWDZyRzFHZllodkZVK09tTFNpdVdXdHF4b0llMzd5TlFMTVdpWVc2REFPcEg5T0lhZ1RYSXYreWdYOHdwK3NNSk1uQnNYaTZxakFLQjRjUGdnU0w0OGFORXdhQ0IrL2hEUHJGRjE4VWd1aE1vRTIwamZkWGdNdVlNV1AwUVA2VnVRWUFmT0Q5aVFNUEwwQ0NnV0JxQzlNdnVJbE9mNVNIczRCSGpxQnQvY1ZOYytmT2xma0dzc0dVWjc3WHdOZnkwaW4zeWluaFRuV0pydzh2bC9qMDAwL0w4dC9YOEgzZ21ETENRQUpuK1pQUGF6WEljM1ZkOGx3YjdseDhIQ2JhRHB6aEo3Z0VqQ3Jqc0kvRHhnWUxBNmt6dXpaVmVEMkNmRmZYSTUrMTlaMEt2NC9yaWJiRFp0YTJjQmtkN0pCdnVjM3hGTEExVG5seGdDdFFibHN6cXJEUmVrR0NOU1ljRkV3RjRRbTFEekgrcUZLdHhxKzRlVEMyY1hPUis4QnpwWnExVEdTMEY5TksrQ3o0NVVScXlzWVJGUlVsTHNzTkNBekNZOWV2YXB6QXJYaTZxckFLQjRkMzZkS2xNN0RZbzBjUElkanVoTTZkTFkraThQVDAzTU5jeXdKZVhsNFpPUENHRFJzbUJOdWRNR0RBQU1HWE9ZSnZRRnBhV2lENDRqdThHdGJkY2twNHJMdlV2K0pwb3l0WHJ2VFhZOEt2bTZjUWJIZUNiMGRQUTB4czI3YXRuQjRUMWJ0WEZvTHRUcWphcWFLQjc0RURCNEowdmpYZmIwU045dlVteitRR1ZHSnpmWmVpVElvbHB4VDhWa083bU1pbTRPb3J2QjlqS2VPdlNsV3EvaElXSGlXZWVZVXJvT0lUTUVKb1M4MWJkUkNmQmJrTUEya2MxNElpNjhkUzlab1ljUVRveHZHNHhnbmNpa3RoRlE2T01uNStmcTlqTVRBd2tDWk5tcVFVY1ZkZzh1VEpWSzVjT1JISUFRRUIvMkN1ZmdBdnY0SHZLbFNvSUI1TnJoSnhWMkR4NHNWVXNhSkZLRFMrL2d6ZnNtWEx2b2J2Y0ZhR0s5cmNLYWNVR1JrcCtETEhweEFMdkZ4aTNicDF2bnBNZUFTV3BNQUphaEYzQlFJbmVwTkhVRWxEVE96WnM0Y1hMVEhoR2VoSmRTZUdLRVhjRlFpZkZFcGVRUmF6MC9rQ3ZDejZ0MnhNSVBra043YmtsSFoycFhLcENSU1Eyc3lwS0wrMUJkWGQxWlU1RENWdk5wQ0Foa0YyTVpGRDBRMWtJZU5xWUZDNTg3VnFoMVA5bU1iVXVHa3ppbXZXaXBxejBEZUgrRE1TMkFEeXU0eHROdVFSRGg1NldLVnFkZkx4OGNHTmdKaXFBb2RpNDNCRzRlRHdEQTBON2VyaDRmRTkvcXhkdTdiSU02akUzSm5BRkJxdTRnQW5jS3RidDI0bjV1b05zQWgzMC9uV3ExZFA1QmxVWXU1TVlBb3RVaE5pY0FzUEQrL01YSDNBTnlJaUlwRy91NERmdW5idDZoWTVKVXhYNmFNNjhLMWZ2MzR6eEFML2paandDZzRPN3FsejlxemxJZklNS2pGM0pqQ0Y1aG5xb1lvSkg0NlZYanBmLzlxK0lzK2dFbk5uQWxOb2ZxRStTcjV5VEZRZVhKTzhOeldrbHZ1VHFNc0I1K2VVZ0lTMEpQTGQySkFxRDZ5aGpBa1RCV0tOL0FoeUlEenlMdk5kdFdyVnFXNWtOTVUwaWhjM0VtS0tDU01IVERjbHRPNG9rTHZsRHVKcXJrWnhMU2tLaWZIcTFhbDh4Y28zU3BVdWZSRnRNcERqQUlkaTQzQkc0ZUFvelFkZWN6NWpuc1REYU55SlNYeldTUWtKQ2RTL2YzOUtTa3B5S3ZyMjdTdmE1ak1KRWNUTTZYTGx5cFhIOGNFV3gxeTlBRDRJRTJTK2ZCWW5oQkNtTjJYS0ZLZGkvUGp4b20zMG1ZSnZHUng4OGZIeGRaanZGUDd0Q3VvZzZHR1F1RnBNZmxPZ000RDhFTnF1VkttU2dXL3IxcTFERUF2OG5Sd1RWczRlZmlYSnUzbHA4dS9yUldVSE9oZitmYnhFMnlWOUxDTU9tejZXWThMS3Q3UmZLYXJZdkJ3Rjk2dEtJVW5WbllyZ3ZsVkYyNlY4U2puazI2cFZxekNacjI4ZFA2cStOSklxcklxbGNwODRGeFZYeG9xMnkxUzNYb2hnRnhNbUMvSUxtT2JDMVhydmxTaFI4bytBd01CZmdrTnFDeE5CUXJ0UjArWVV6eU1IVEdjMWI5bU9XclRwS0Q2elcyN2VxcjI0K1E4dmQ4S1RmSU5EYTFQRlNsWDAwUWFlV2NWdGlUYlJkbkdPdzFtRmc4T0RoYUlXQzFybkdqVnFKSGw2ZXU3QTErNkFVcVZLWlZTcFVtVVV1TEU0MUdTdXBZQ2l3RGM2T2pvWUJ4NndmdjM2TW53bTN3WUhKTmM1cFZyWEZkRDVob1NFdEU1TFMvTkVMUEQzaUlsU1VWRlJvby9kbGJOTlRKUXVhbnlMV2t6a291REtKb3hXQWhnWUNXeGhNL3JOUHlEZzUrbzFRMjdoOGVnUlViRlVqNDNFY21NaEhtdlNncHF3T2VBK0RYeml1eWJOV212djQyZ3EzcE5lcTA0NFZhc1J6S1pSOVphM2o4OWwzaVl1OHRtaXRZRzIwR2J4VlZYT0xCd2NKZDk0NHczUDh1WEx0K0NnNmNRQjNZV1hwL09aOURJdkw2OVVCTFl6d1cybWNOdHZnZ080Z0JPNHBhU2tRSWc5Z0NMR3R5U2pWR0ppWWhELzFvRjlyMnU1Y3VWbXV3dmZxbFdySm5idjNoMVhzVUhVeE1HSFQvUXg4MnlGL1hFM3pvNWlvaWp4WlJTcG1NaERnZWtnWDRMSGdtQXFLNWx4eGRQVDZ5Y2VqVnl2VXEzbVRWeFd5NmJLeGhCQmRlcldvOURRVU1MOUlyWHJSaEtmR0ZLTjROckU5WWg1a2E5ZjJkOUxXNmFuY0JVZ3RvVnRZdHRvbzNpMDRZcUM0QUFpSXlQTEJnVUZ0YTFRb1VJbkJEdk9sQkJJQ0d3WmZQWlVvTERkUHRwRTIrQUFMdURFWi9GSVBBdWVSWXl2Ymg1aUdRY2sxMnZ1TG54WkpPSUhEaHdJcmxhZWNrencrZ0c4UDRsRkpTWjQzU0xGbDFGa1lpS1BCZXZxSm9JbjJqWmhQTWs0d01qeThQRDRyVlRwMHVmTGVIdi96OXZIOTZLdnIvLy9HTCtWOGZiNTFhdE1tVi80dDE4eGhjWjFiMmpyWUYxc0E5dlNUU00vL0lwTGZnb0hoMVVzT0pCeDVWVURmMy8vRG9HQmdSMFIrRG9RV0lVSnVTMjBEUTYrdnI1TnVmanEvRFN1UlpZdlE1eHhSa1ZGVmVDenJObzFhOVpzd051Q2NEVG5NNjJFd29UZURyY1ppN1pqWTJQTGFYeGtnN09MQ1loZVFFQkFmRkhwNDZMR2wxRWtZcUlBQ2tRZStSTWt0Q0grZUIzc1FBYXVqbnFYOFRIakt3MVl4bmY0RFhWUUYrdGdYV3lqMkREY29TQTRKSWlBNFNGMElKOHRoWEx3eDNEd3grTmdkQWJRRnJjWmpiYkJRZWVqY1ZPaHFQRjFlemlLQ1JiRGNrVXBKb29hWHcyNmNBdERjUkxrTm1VdVZvNkZVUFFSQ2ZJVVNITERGSEI1clF4OGg5OVFwM2lFNFhhbFJJbi9BelRGVHVNU1FjMzJBQUFBQUVsRlRrU3VRbUND"}, +{name:"__ASSET__:bitmap_flixel_system_debug_GraphicArrowLeft",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQm1KTFIwUUFBQUFBQUFENVE3dC9BQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUIzUkpUVVVIM2dRWkVqQTAzU0hjY2dBQUFFQkpSRUZVR05Oai9QLy9Qd01SSUpLQmdjR1g0Zi8vLy9odzVQLy8vNWY5aHdLaUZPRlNqRlVSdW1LOGlwQVZFMVJFdHNra3U1bXMwTUNyaVpHVUdBUUFzOU5wbXo4SWloRUFBQUFBU1VWT1JLNUNZSUk9"},{name:"__ASSET__:bitmap_flixel_system_debug_GraphicCloseButton",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFnQUFBQUlDQVlBQUFERUQ3NkxBQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUFkZ0FBQUhZQlRuc21DQUFBQUJsMFJWaDBVMjltZEhkaGNtVUFkM2QzTG1sdWEzTmpZWEJsTG05eVo1dnVQQm9BQUFCL1NVUkJWQmlWVFkweENzSlFFQVhIYnlTZXdNdWxUV2R2YTZPbGxXSnBDQ0syaWsxT1krY3RRc1lpcS9rREM4dnM3bHZVU3UzVXBVcFdPN1ZDM1RqU3FXVU1EK0dldisxdGlKZDZ5dm95ajl3NzhWQVhLb21SR2JCaW9nY0dBTlNrTm5GNVY0L1IzOVNFMm9hNHF2TjRkdzUzS1lBMzBBRDFQeGJXUUFGOHZwYVlyTldBYU5WMEFBQUFBRWxGVGtTdVFtQ0M"}, +{name:"__ASSET__:bitmap_flixel_system_debug_GraphicBitmapLog",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQm1KTFIwUUFBQUFBQUFENVE3dC9BQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUIzUkpUVVVIM2dRWkV4c2Fka1ZHNHdBQUFFRkpSRUZVR05PVnpjc0pBREFJQk5FdDFUSnl0UFBKS2VSbnhBd3NlSGlnOUJOUW1mRURBU3REUUdXWTRRdStjQWhQN013cytqaU94cDR5dk9ZWkxrRkFIVzZYWUMwODhkcWRBQUFBQUVsRlRrU3VRbUND"},{name:"__ASSET__:bitmap_flixel_system_debug_GraphicStats",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUlHTklVazBBQUhvbEFBQ0Fnd0FBK2Y4QUFJRHBBQUIxTUFBQTZtQUFBRHFZQUFBWGI1SmZ4VVlBQUFBeFNVUkJWSGphWXZ6Ly96OERzWUNKZ1FSQWpPTC9VRXdkaytHbTBkVE5XQlZqdFpvK3ptQWtKUVlCQUFBQS8vOERBTDhIREFscWRHWVJBQUFBQUVsRlRrU3VRbUND"}, +{name:"__ASSET__:bitmap_flixel_system_debug_GraphicLog",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUlHTklVazBBQUhvbEFBQ0Fnd0FBK2Y4QUFJRHBBQUIxTUFBQTZtQUFBRHFZQUFBWGI1SmZ4VVlBQUFBa1NVUkJWSGphWXZ6Ly96OERzWUFGaVkxUEZ5TzZZc1pSa3dlSHlRQUFBQUQvL3dNQStmWUlMQWhqbnhZQUFBQUFTVVZPUks1Q1lJST0"},{name:"__ASSET__:bitmap_flixel_system_debug__Window_GraphicWindowHandle",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFvQUFBQUtDQVlBQUFDTk1zKzlBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUZCSlJFRlVlTnFNandFS0FDQUlBeFgyeWg3b055MmpRa3lwUWJUMGRFU3FTblllRXZoWE5zRE1ZblhlelZHNHdBME5OVlJaSGpLUEgyaDYvNWwxVzBPaXgzTlRFbDFDSjdxS0MvNExraTdBQUQ1WWZydllMZlJQQUFBQUFFbEZUa1N1UW1DQw"}, +{name:"__ASSET__:bitmap_flixel_system__FlxPreloader_GraphicLogoCorners",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVBQUFBQkFDQVlBQUFDcWFYSGVBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQlkxSlJFRlVlTnJrV3d1eW16Z1FsR1Q4d1g1Sk52ZS9UUTYwdFhrdi9tRkFDNjRaMG01TEFwejFPaENxcHJEQnh1NmVuaGtKUnRZWTg2MnhkV1A3eG40MDloM3NIem4yMGRpeHNaTlkwZGlsc2JLeENxd0c4MkQ4M3NDZVg3ZWJoWDFyRHZacVdXTUwyUzhiV3dtT1RXTnZZbDhhKzlyWVg3TC9MTWZiejJ3Yk8yZHljQ2tBQ3JtZ0FTQkZ3QzZ5Ui9BZVNJZ0Jad0lZT0pPQVJDandSZUQ2K1BrTS9sc054OVlDZWlmN055VmdMeGQ5QjYrMzlyZnN2NHNLV2dXY3lmczFlVDRGT3VUOVBnSVFXRWdKQzFCQklZNjhpT20xVVNVWlhIZWhCSnprd0VHQUtoSHZRc0M3a0hRU0FpNEF1b29BcjhuTEtlQkRWR0FEUkRnaTRnSktacy9uNHZWYzNxL1VrVXFBRjVBZllrakNoNUNqM2k4SFNOMzBBQjlDZ0Uwb0FVbXdRa0JKdVVpUHJ5RG1jM205RkNJNkFpcngvZzhnUU1Hci9BdncvcEQ0N2dPYzh2eFFFcFNJQ3ZhbFhKc1Y4Q2J4bndNcFZTYmVMWUVBQkw2WDh5ZUsrMGRCRHdYK0tCRTFPQWdKVUd4YklzQm5VTmEwREI3azlSRkszeGtraGpFK3hMc2h3SDRrZUQrQUNFM0VXc1cwVkI0QW0xWUFMWmMyZzlwK0lQQUhxdmxWSk5iTlNFOC9vZ0QrYm93SXZMWVR4eDBCMTE0STJJZ3RNZ0NxSHp4Q3lWUFpsMVRxbmdteTcxcVdsR1poYjZqOEZZUnRUOGt3eXdUb2lZQVhFZkQxTDRKOGxCZzdrSFF2d0d2NDc1Y0F4b09RMEJHQTRNODB6T1doN2JNOVBsUUZzWE0xNUlRU0JrWWhFbFlaZ01haGJxeld2d0o4MzIvYWdBbzhPSzZDb1R1VFVDTUJPTkJoNzc4YThKakU2R2wwV29FS0NzQjYwaktJRTV3TGxic3hZL2ZmZ1FoV0ErYXVNa0NDeVFMU0x3Zkd2Zm5OeVdBVmxLU0VRc2NCUlVUNmZpS2VUeW1ocGx6QUpGd0pLQlAxZnFvSzRMQ3RZYUtFSkRoSDRLc1pTRDgwTnFnREpGd3R3emNrbWFtSGdROGt3NHBJV0RqeS90UVZFQ01pUmtMbElqYzFwK2oxUGdKOElDRldMbkZuMTgvTSsxWGdIdWFOQXVvQk56dW1Gdis5WWVBQ1NXL29sSGVxT2VER2hpcGc2dU9BS0JFdVVmYm1zREVKRlpQZ1RQcWh4bHhJQ0QybTZ3Z1krOGhxVHZuQXU1bDZQVFl6dkZPRCt3T2tINW9YZE9kY1l2dzg1ZEdnSHhvT3pveDdiaitYSE5BZGMyYittMDlNazQyYmFlSWJzbGtsd1A0cFlFUHZYZVFEcVMvUGFsTUZoR3lPS3Jqck8zSXpCODBLdm51czdoTGVueklwc2NmbmQ2cDNpVENZaStkakpEZ2t3TTI4SW9SYTdib2NNR2NWaE1CamE1M3JYZ1NJbUVNSkRMWGNJdVlGZGxzdUlpVE1EZnhObDZrTGdIZG1Yb21RUTBCYlp6c0N0SWRXRDA1OVlHUURCSEJ2c2JiUVpZN0FZM3hNT1JuYW52aS9VVUJHS3BoVFNXVHBZM2Q1aTNuWm5sanBtNTU4WUNlWStFS0xMQlRyQ2dsWXc0bU13c0JNWkdnY0d2bTVsUGVOdE1sZDI4YUZpQlVSNEdES1hKdGhEWXV2bnV2SEZJREFPd1VnQVdzS0IrNFB0aWJjbWhxN0RXVk11TkY1N08yc01mY2wrbGFWNE5xaXE3VUhOd0owQXlmTzhnVnNqMC9kWDdPSlAydi9ZKzhPbWVveStDVTRkdzFxdjRaQUxuOCtGK05HNlJBQi9oYzkrOHg1UG51ZFBhOXJCWElOQVNWZ0srQnpjN3MyQ0lIR1dtZTVXenNXTGo0U0Zxd2VQd0kwMzlwRHI3UGtOMkJyVkVDN3RZc0plRjBncnI3Z0xqSm53azlmWGxYdWVLaTdCTkNxN3EzNTJTNi9WUVZzNVlzS0h0dmxhMkFZMXduZVBXSXkvOCtUSkp1WTZOaEF0a2ZRT3lLZ2E1ZlBoVFgwUGk0OHhEc29xV2JLWnl1aER6eU84VlgyQ253WEljRXBBVXZ5UEpaQWpDdGRXZnFLbmlMYjQza3VkUnNCck10b1B4RUpMVzZMWlhCbjd0Y0xlQ0lnSXhYRXdpRkZRbXdNMFZmelkwdHBPZXVyOTNQQjlFbE1sYUR5YnovVExTc3pKdDR5YitCSGxrUlFUQWtwRXZ6STBoa2I0ckxzMmZ0YklPQU5iQXRWNExwZVlHZCtManIwZ2RLSGlhVnZQZEV6OGtIb2xyYUwxSHYydmtxL1hVWGVyaUQvVEdxb2NQSDB5ZHl2dXViWXFzejlpbTFWZ251Z01neXArVFl5ekkxTmNIQm1pM01aWFIxL3hLVCtyd0FEQUFKQmFpQW1tNXh3QUFBQUFFbEZUa1N1UW1DQw"}, +{name:"__ASSET__:bitmap_flixel_system_debug_interaction_tools__Mover_GraphicMoverTool",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUxFZ0FBQ3hJQjB0MSsvQUFBQUJ4MFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1JtbHlaWGR2Y210eklFTlROWEcxNHpZQUFBSnZjSEpXVjNpYzdackxqdE13RklZanNiUDZFRlpZc0NGeG5LYTNxTWtJdFJyTnBtakVWQXhpbHladUoyb1RSMGxHU2ZzMnZBTUxKQ1RZSXg2QXQ1Z1ZXOERwalU0MVlzR2lxZVR6OVdyWHgxLytFeS83N2RlWEJ5VlJrdDhWM3llTkhFL1lMSXdkOWVIelZ4V0hnYVBldGtiR0tCbXd1L0JxbGJLYjFldXh2NXI3dlVDOWNGRy90TXNvaVZqdTRUSmF4SmxkT3FvWDhBbXp4ZmRxbXFoNHZTU2ZPK3FyNmdmOGJuU05CenhsdUtVYm1tKzBEZHltT20xYW5VN25KVFlOYWhEREpOVFVhTWR1bXJaaDRDMnFpOFI3UHcybTlwdmg1VlluUm81NmwrZUpUVWhSRkhyUjFIazZJN1RYNjFYYm1LWW1WbWpaTXM2OVVvdXo1NXROZHZzTVdlYW5ZWktIUE1iVjJKdncrOXhSVllRUDJPYUtrcjBvenZSMVJ0M25FU205aEZEZElQdWRxODNGYW51UU1pL242Wmp6aGJ0SmZobW1yT0RwUE1PRG14YW1va284cks2RmI4TTQ0RVhXSjhkMVQyM0podUxsaWtaWm10SFZER3RNdTdiVnRXbnovVUg5WnRGUitZZ0g0WFQ1UkhtcmFWdnRiZm5Cb2wycnlGR3YvcmVIZ2I5dllYS2ZMdFozS3ZBSlc3Q0l4WGttMmtnZnR6SHc3U2xQSXk5M3c4aWJNWkxFc3o3NU8vblA2OXZNaXBNaURpblpuMUwzMFdVZG9wd1k4TzlCa3VlWDFvOGt6dzkrOElNZi9QWDZrZVQ1cGZVanlmT0RIL3pnQjMrOWZpUjVmbW45U1BMODRBZi8yZmhSelg0TS9ucjhTUEw4MHZxUjVQbkJELzZ6OGFPYS9YWG5sOWFQSk04dnJmLzRqeGluOXRlZEgvemdQeHMva2p5L3RINGtlWDd3Z3gvODRLL1hqeVRQTDYwZjFaNGY5Uy9LeFBQbjdOUitBQUFBQUFBQUFBQUFvQjQraU9lem4wdmwwOXVQalI4di9FYmQxd01BcCtSYThaU1p3aFNzVURIYWZRS3k4QWVWbzZ2ekVKZzhjUUFBQUVodGEwSkcrdDdLL2dBQUFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFLYVF6b1FBQU9TaHRhMVJUZUp6dGZkdHoyOGFTUGpZbmppUDVubXhsSC9aRlZidS8rajNGaDdpUUJCOUZVcFFVVXhJUFFkbHlYbHdnU01UYTJGYU9KQ3ZIeThML3Z0UGRnOXRnY0NVcFVRN0NXRU5pY0JsODNmTk5kMDhQY1BTcWU3TjRQYmJPRjdiM2VueDB2bEM5d2JnWEtjYi9PRDVmTkJ0NlIydWJEZTlzMkhNWERlOHRGVzhPKys1Q1ZiMkR3d21XNHozTFhiUTFiMnlkbnJQcTdqNDdnNHYvZWFQaDhHYlJIYkUvdmQzSjFVTDVYcGtxanZKTzZTcTJjcVdjSzQ1M2VIekV0ajltMnoreDdRZHMrNlV5VTNhVUlhdjlwTXk5Y2Y5a0NpZmRQY1p6NzdJbTYzUFQ2L1lQenhlRzF6MWliWit6QXUra2ErM2hUdFlBYnFGckhlQ3Y3cENLVjFqMGp2a0o5Z2I0ZXp6QmZRZGQvRFVZWTNGTUc2MFIyOWZ4dWhPcW5ORFpKeFpkNUlqT1I4WGhMclR5R0ZyVjhQb25LalNuZjZMQmFmb25PaFlEdGxGamhVYUZEb1ZYQUp0bkNXekd5b1h5bVcyYktYTmx0aXhDNnYxSHlOY2VpK0hpS3RmTGFJL3FHcFgxUjEwU0hYVzkraE9pczZUK2lCaVYwYUE3eHVneHgyaVg0WFBKa09peXY1OFpXdTg1VnQ5enJFSU1zOUNCZGtmZ2FSbUVEOWJuNG1NYU1Yd2FNWHgwTFk3UWJNaytwaEZDR2lGa0VFSUdJV1I0MXVoWGtxcGxzUy9PbEcwNG9kdXdyQlBjVUFiRFJ4ekRDZE91ZnpGOSs4enE4L1JNMTJTS2xnMmsydUZRYWxPbkJKU09TVkRpOXJXQnFYV0tnZm1VZzlsakN2ZUJmYzZWM3hoY3R2S0g4bDc1d2dIZGlpamxSL2I5UXJuSUJGUGx2VmJWQzlPKzJqRGszYmFSMFcyYkRVSVMrUUNRZE8zQ1BWY3pDMk9wbXhwaHFhdXowdGhsZCtqMmpLQXpIVUp1dmlLRG9wRTFYR29WeWE0WVpGVUIrZ2ZycCtld1Z3d2dvMGtBcVZOQnQxd09VWU13Y3JJNktxaEZ2bTRoSVVad0FqWUZuRkNwMWdCVVVyZUNqbHExZzQ1WjdSUTc2S2RNTlZNN3E5V3oxUTZxNjlHejd6aEdiOWhZY0MxRnB5Mm9tR0IwWk5sbGNHZ01IKzNPOGJGR1hXSi9xNXNnL1VjQlh1L1JwbmVZeGpEa0JHM3E0YmdKbFArbEVOMXp2RlROa1NJbUVIN2JLYTlTUm9zZ3N6bG0rc3dvUEhaVzc1VHNnbHJUSmlCaHFDbVA1QWpKLzVxaCthRVVrcTVSWU9SMC9aRVQ3SW1DUUFiY3hvRkVtMlQxT0FKOGxtK05BTG1SV2VKL0FXVEpMdkcvakV0RC9ERHVYSlNCRjhlTVhIY0MxYmswdm5OdW1jREJBSENudFdxQXh3eFhiVDRuek1SQkl4dXpLZ2F5bkJTMVpxYUI3R2psKzNoZ0hqYzFnbzR3TElhZE9pOU1qWUhpYVc0TXVxMEFPaGhCdnVCWVdzVTNpN3RtNkNKVWpIMFU2Y2lheWEwVWRFb0tvcVZyTXJSYWhGYUwwR3BSVnlZQ2hDOVRWK2pLTU1hTUQwcmcrREN3Vm16bDk1d1lpVWtvZGdoRk5ORWlLRGFXUmRFZ0ZFbkZwREEyYmNKUnk4Q3gyZUJoZ0E2UEEzUTRrbHp4V2x6eldrWWFtTFFsQWlZek9zc3A1WVQxZEthU3l1OWxlbkVoclN4bVBjdlZFanN6RE5UVGxmTWZEakRZaDMwZ3g5R1Joc2FlZlBYc1kyZCtqL3dYRDFkRmFncDNlbWtVWVFQQ1ZXckZjRlU2U3MrbEtQVXhzRGRsSm5oMnQ5NVVuTFJid21uQyt2RTVjMC91SzA3NnluSGFDbkM2WUJiSjlTMEdock40ck9NWUZaMDBQaVEwQ0pvR1FkTWdhQm9FVGFNZ05FK2xLc1JuWThxclQ1enJHN2MvKzVKRlJrMUNxRWtJTlplaTdBUDBYbTl5dk5kTm5XSGdLTEVSRzJGcUVreE5nc2ttbUd5Q3laYmEvZ053TjNHNlpRSmNJMUdtUzJaKzdTaEgvTnRjdVN4aWlwVXhIZFRtdk1oa1EwUHE1SmZ1Y25MRGdadXpKa0Zsa3ZGUGN3M3BnWkZzN0E0d3dQU2VCNXJlSTF2RnNRT3JFY09XNEFHaE5Cc3hRNWI4cG9RaEsrMk1xSXRGSStMMldyRXJEcFhmSTRjQlJPbUtKc2JmSEZtUGhLaDFLbTJGUG5xRllOTGE5Q3hxMTRlUkpMQlVNWkpremt2ZytUQm01bjlhN1p4N3dZa3NZV2k4aFc0YWdBVTRSc0g2am9OMUFsTUdIS0x0d0QwSDJ3ckNiWG5XbFYwMU9RRzhtVHlZZE1HMTlGMGhQOVNHQ3Axd0xOVUM0UXpZaWhZV0Iwc3p5ZmRCVDJjWEhUWlV2bGFMUEI4RFNnd241bUw0SW9JaFJJd2cyY05DTzlYbVZsbjJHR0ZMQTJ3RklJVklWc2JVakdNVHFCb0gxZEdFK05xTXg0aG80TTd4TUpucUVxd214OVVrWUIyVGdIVTRzSTRwK3V2d1pleC9pWFZ3cWdxKytBR20wWmo3cE9PeEgrSzBrdUU2bVNqOElOMnR3Sy9QQ3NFdmhPZ0M5RFBuWFZOaUpRYTMrd3pDbmhsSWlEMldPcGFJTktFb1JSb0hjUUFZRlgxTWlsOFUzdTBBM211TXFVQXl5bFVSKzhlZjFQYVRMVlI3WGdEZkl2WlBVMkNNT0xNQzMxcVlLSmNPYnNzb0I2NFBuT29HTVJJRVVNdG5paC9sTVdTZWpsR01mOXNWK2JmUU1NVkRlNjR0NUFod09JMXBqSDROR2YzNmNJbzgwZVIrWEpNN2NxeU1KMTFRRkdwTWdGcGpUczM4TndDdHVsSks5ajJjRVlQeUUvdVdWRmRWK1puVm5qUEljK2VTNHZQa2xhUFBXYjVmQ1JzZ3JxaG0xY0JCRXBuL2tDSEQxSENYYmIxbXYzOW0zOEJRQjg4d2Q1Smp0Wml0MW01YUlXYitNTjlqZy93SDlzL3Z1dEU5WmU0TXVpMnBKcVpkUHJCUXdzQXNQc1FVQWdyN0tmQmZjbXdCeXhOcUxDcUxRZW9QMS90QjRzRTVETmpyU1I5MmlwdnBwYkxOQk91VDA1OU5RTm9FcEprdzFMbnBHYzAyaXdFYUJmQUpCL0FOV2pSelBqV0pPaWhNYUJTTDNnaDVlNEZmWFN5QUExT01KYlV4c0huUVpGcHFXbEtLWkRCbkhrNjBZYXpDL3pJK2lRemJEUnBOQkNVdGpuR3hTU1BObE9rcEJZQldpTEEvWjZUNzg3N040Z0RMZlVwZE5tZUVQVHV0NzVlRHNZeFQ3bkxyMFkxYmo2NWRBTVFpN3VheUFTQzVpbW95Qk1rcmozcEJ3V1NibUNIcDgrV1lXOWdYeWtlQkwyRUkrcVM0a0pRRnc3VU1RN1ZwRUlhdE9JWjJDUWhiVWoyVUdqVTA5VnZGcXZHMU1FNllHbGRETEhVc3FmZTJlUGN0RHBxdmNEUkprdTJ1NkxKT0s2Ukp5a2VYUm5Ickd2azJpZFhVeUo4MEQzd1ZZZEljQ0JieG9pODZmU0g3MnB4eit4cStqSHdNTGQvMUcvc2NTVUdQWXBqNmVZRURjR0ZraUU2Tm1IUHRhMThaN3pwenZFWU1aY2tJY3YrUFk2ckxNSFZNdWNQUzRkRzFEay9xNkxRb1VvUnVpVDlIM2czZEZIL09YSWlPcDRNWWV0UC9aRERhYUZCbXEyZXpxdTFUWWtRaG55OFNleXVSaGNYOFE2bDZ3dllCM3o2ZzdRR1VPRnEzK1dEZEpnMzFJVVVGUFNEWHNGeG5mNHQ0Wm84dThSRzZVTjVnR1Z1U2ErWlVPaGtxZU5MUzBTVXRNSkdXSVJQUHdPU3FpQjV6eWxxUVV3YlZKeHlvUDZNQjdwdmxEemlJdXRLdmtON1dMcktPcG9oTG84ZE5uRGlBVEZVa29ZaGlZVFBObE1TQ0QyaU1Mb1BUZG9nVDh3UDMwY3o1TXhzeDZRQlRiT21SRDVtYXIzT09kSUJSNXpJeVZHOFZzc2VCQmZNZWs2UWg3REJQcE42THNMV3F6am1veFdjQkExOUZiNVZQQ3ZRTndUeXY3OEEzblErU3BuTWVkQytDTWZjRHJ2b29PODBnbnlGY1h2VXduend5ejJCTHJXbGYrWXBFWXNXUldLcDh2a1V6RGlZTGtnWk0wUTU4d3JaZlk4QXJiL25wS2pwd3MzZ0FWc0N3a3o5bytPbXBnam05b3U3cjZ5RGs1cDlqckhEdE9waklwTlNsU3RneDQ1TmRyblRVa004ZkNnbStqcHdDWmZhZ0dNWUpwN200RlJPTlk1TzZzaHRzTjJsWWJwWFQxaWVCNTN5QnJzeDdCanhmSXBHdHM2dExpTXNhcDAzcEVqbUlnMFFRMThyTXdLUnBMZGszVnRJSnpFUHdhUVRCZjJFUVp3Y2pGYVV4eE1CZ2ljV3VBWTVHdml0ZGVYNEFmT1VDZ3hBR0laeTJKQ0VkazN4d2cvL0ZuMzRaY1dNU2JwRW1aQ1BXcFRoem1DZUZuN2dVWHVPTWw0UFpyMWM0K1FBTURESGluWkJneXRNSkxhVXFxdGhTTm9rcnRtQk5ZYWd0eVNXbExGQ2R4NGgwSGxwbkpYSUpGMDkwZkJ0eDRjU0NtU2l0eUZTWkdaOHBBM3ZmR3d6N040dEI5RWtETG9yRndvRGNlU1NKMUVWeEhPT2N4a2NVMUdscURSZkhnQUFaRURjTUNJZkJIbXJ4WU56SFhjWmpxanVnNGd3S2J4RDE0cWhCL0xFUDRMRUpUWXJXbktiV1ZHdVNSazFpeFg3UW9oZXNQVTR3SHpIajJuZ2RtZks1Q3JqWTRUa2ZNUFE1eXUrTVIvelppOEgrYXdiOGNZOU9mc2krNzQvZ0NTd0Rlc1JLQS8veklsV3FYOFdmdndKMWI2R3VzZng1MUlxbjhLdlliNFRPaTRudUVSZGRENThtNExBTy9FRWl2akVITWFsUjBacHE0dE5KZkhvdHZncmllOHJGTjJZQU9leW1JWXJ5bXlERXA0R29aUHVjRnRpbm1tQnRFcXhkQzdhQ1lMZURmZ2tUQkdEZ1JKMGROeko1NE5lZFp0UlZFNkJCQWpScUFTN1JNMGtRMTJnYlhmcXdDVDFUdnM5cGdYMldvbHhWclNWYlFiS2grV1ZqaWsyNEZ0SGxzd0QrOXRPVTdkV2sxaVNwTld1aExTRzBFWnFiVHVTSlV5NlBnL2piVDFPMlZ4TmFtNFRXcm9XMmhOQUdDTXdzZ01VWFRyajlOR1Y3TmFHWkpEU3pGbG9Gb1QzaFF0dmp6Nkw1QTBrdmFyODg0V0tTN1hHYXUwYzFrWFpJcEoxYXBCVkUrcENMdEl0enNWZkJESzBiUEJEaU11aUQ0dFpxNG5KSVhFNHRyZ3JpMmdxY1F1ZzV0TXhhOU9mREd0R2ZEMnVxaVc1R29wdlZvbHRpeEh1RHlaL3p4SWdYYmo5TjJWNU5hSE1TMnJ3VzJoSysraWljT3d1Y2d1M0Fqb3pXbldiVVZST2dTd0owWXcxN0hHalRYSmtxZlpUSWU1emE4K2Z3ZmUwUjYwOXo2cXMxVXVYUll5ajdhZ1RZUVYrTC9kSmp2NHpZcndrSllCK0Q0bFcwOVNuWFZxaVpna21CazU5ZG5JeVA2bXRMcmlTNkNjb1VxWHFwbVdHdDFySGI4VnFqR2RaT1crS3hyYXhEMnhtSHFtS0x4RzV5LzVxL3V0NVpzOWdhY1hyR2NScmpzcGw5ekhhRWZaTTlTSmMxa05vUjE1U0lvc0MvMU5iTGdGelhSVFlFWlpoYnZjRGNxbXZsaEsvVi9DMWZJN1ZPdzI1MlVqU3A3ZkFHNW10a3NmTnNTTThOK212WWgvTnc4cnRWZHVQeWNTcDJuanZHNlhtRTRWaFA1VDM0TGVidVVjcGpUdDl0ZEJpVGF5bmRLdG5ub3VRbFZibDFYZVNPY1g0aDRCeEJPSThsWDRadG1UWTAyMDZEWWVheTZuaGxSend5RSswVlgyaEROSHNQTTFFeFJ3WFRLb1BSeWN1eDY3U0c3b2dEUm1nWXFkTk9XNTJtR1VicTNIRFpyMWh0WUJpMTdMblRVTk1NbytTSlZiRkZvaFR2WC9QdldEY2VjZDJBOUVhYTNZWVhKbnpNMHdpWkNhRkZLMFZiMkFqYnJka1pockpvZkRSZW11RnBVeTBUdnptRjFHRnoyMzdIdXJETmRTSHlTR3BXbDZzSnJSWmtlTW83bDlrd2szQUdQYVRWRXUyQ0NKNXdZTnRONjF4MDRUVFRpLzFmV0JrMnVQbDNyQTlia1ZqQUg4Z1BseEZ0TUdTTjZyU05saW9NbDNwd1o5T1o2UWhjYWdhMUxVZWJxM0pJNXU1czZzeVNFcjJiSm15SVZDeDhKY2FOSUJXcGtuZjBEck1iMDVUYzBPQ1RwdVRUNWxTZnFpbEszbW9sZTArbzVMTTVmS1JZUU1jeWl4TDJSamQvUXppYnZKV2svWnppajZVM2kvc1hvbUNXT004SzQ4cDdnLzdOWW04UW1VNmRJMDZIbUlNTnRtMlgvYjNCQitENDgzRHpZRG1SclZ4N2V5UHJadEh2N2NHZlY0aWZ4ZnhpOEQxT2xLbnlQMlFEZWYzZWExd2c2S0t0Zk1VUTlTTEhiUG1MNEpoUERRdVVycFgzL0loL1V4cXhQYmZEOWlUMi9VWlJoYjIzV0ZzK0lOZk9sWW55QmNxVTh6N0NWdHU0SnZUUFVDdjQzZytWLzFJYTRVYzRjby9kbGN0dHZTTjhrdHVoMHVkSC9qOWxvYlN4dHNWYXg5cW5hTXJQN0x2RHRzQTMyRGJEeCttWWJGdWIxZEExbXJobm0vMVZXUTM4OGdRY3dvYzk3bUtNNWtOd2IzOWp4K2hLVTJqbEFiSWJ4U3RrOStlR0grSElMcTV5dXNhTU1BdXpOYTlUY2R5S3lDY2I4U2VSUGYxc3MwdXlrd0o1dG9XN2VNS3dua0U4Q3A4Q2dldWVVZGVZOTVWNmxSQ25QbjlTbG8wcE5sRzBSSmsraStqTkVlYWxYdk1uU0ovajZPQmZTeFd1RlVnaWVQM2VKMnpqVlhDRUhqdmlNVDZtODByNVBYVi9zVjIwNGl6V0w2WFNuTEd6eWJUMUtUN080RThlUDRXZVBFc2N2eFhYZHFaTHJ0Q0txTVlmc3ZiU2lveHovaXh5T3N1MzNQT1pDeGdkb0E1bVh6MmlpOUtyMDN2UkdFNk1oV3pzUzNuM0lPTHdJbUFjMHVqTFZQMFFaZkQvMmRWL1o5Y2ZZSCthWXh6d2t2ZXJFM2JrQjZiMTlLUzJqMHhqTGxDbkw5bTJLR2FuYlA5aldzZktyL0lvd3JnN0VjNUZpcTdBem1OTUpQdnQzckt6eUY0MU85ZnNYTE56emM3M201MS80T3hzc1hQN2EzRnBmL1E2RlhvVHczM2xiSzNtN0pxemE4NnVPZnVyNHV5dEpHZmZXNFpXYTRhdUdicG02SnFodnlxRzN1WU0vU3RxL2Evc0dyOHhXL1MrY3JSUmMzVE4wVFZIMXh6OVZYRzBiMFZIT1ByZU1yUmVNM1ROMERWRDF3ejlWVEwwbUNFUDF3TjUzRmVHYnRVTVhUTjB6ZEExUTk5RGhwWm9RWjE1VjdQelV1d3NjbG5OempVNzErenNzM01vMlZXd2M1MTVWN056emM0MU85ZnN2RW5zWEdmZTFaeGRjM2JOMlRWbjN4L09yalB2YW9hdUdicG02SnFoTjVXaDY4eTdtcU5yanE0NXV1Ym96ZVhvT3ZPdVp1aWFvV3VHcmhsNjB4bTZ6cnlyR2JwbTZKcWhhNGErRzRidXM3MUFPeU9jSmVSMmNIMUtzSE0yejRtb3RSSXNtY2QxTnV1ekhjVmdueG5EeUZ3SjF5MmpiMDlqOXl1WE1Jd2Jtc0N1MGFPeXN3TGorOUpUR0VPR01ETkdtU1J2NjZ3bHpWdlJObCtEZG1JNlZGYmJubkZ0Qzk4TThpNjIxM0xhWnlkbWk3OUc3ZnMzcGIwbTNjdUtFbTY2N2ozbHVoZmxldEVhL1o1ckgrUkdNSXR5by9LTXhVeUhPc3Q0a3l4UlhiQkpha3MwM3hMVmhIYlZsbWcxUzFRVjJyRnBsdWpqa0U4WlEwZnVjQW1HSHJNcm5DUFQxZ3hkTTNRUmh0WnFocTRadW80VlNCbjZTY2lueWl5VG81L0ZtR29IVzB0dmYvb1E4ZUlleDFiOXJkSi9FM2tsai8yYW5OTmNaRFBndkRiN0dHeC9uLzEwOWczZVRRcHQ4SzlqSWwrNjZQVUJCOWIrMi9ydEE1bTJWTkc5WjhobUgzQnNqcDFOZVFrZmlRYm02ZEJVNlRBdGNOaGZHQW5uT0lJYXlIRytEa0ZjQURUSVpScm1heXJzYmJMZm9Ia3p0bjljaC82VFhhbkxzSElSU2VMVWR3eXpTK1JWNFBrLzJlL3JBR2ZRcnY4TkVIdUFWOTZCdjdHemZxL01Dc2FqMWlQSlBPeWpMWGlnMklMR2ZjTlFhZ3I3T0RuOGpNeGFRVXUyWXpybjE0bTZrV1VYaW4wcFQ0czBaQm1UYVFPVEJiSU9hQWZvUzNVbUttTEZ0QVJNODBkOW8rS29uemJhTGNPWG16WlN5dlVtcm9HUEdaZk9tT2Z4R1Z1NUU4SEtmMHZlTGlKNndlcUdBYUpYRlpnSmRNSmc5UzdhN3lxT2JpcTdaeU5oMjV1Y21Xd2NCV0g4bTdGL1lGMTFib1dabnJMOUxtQXNRbnZwSFpmcE8vYjdOMldhSXNGbndqSHZ1UzBkUCtwdjdINmFnbzV2czNxUTJrZjI5eDFxMmVmVVdjT3QyTDV3bDdPVVBSL0Y5dnhOOGQ5M1dleTgwZnVNNy9rODlUN2pMWmZkNll2VVk4WDJ5WTRXcit4TEpYbHZ0ek5qSmU4WGNjYWJJVnRkQy9vUVNrMTJuOCtrUnhWQktFc0g4NjRweDFiVVJ0RkRTdXNuOHd3dlU0NUpkaDk1SERtcVNHOThJdGsvNzE2U1IrUnBscnhWNmZmK1ZIcnZLZjJtRkV0dnNTMGdoeHM4ZjFYYlVXZGNDeHc3eGJGOGp1elk0ZU4vT09wRFBkeEhBKzFMWU9nT3hnVm1hRU9LMFpmMU1QVGpVRFo0dGd2bEhPMkpLMjkveEVEYkgwMXVGbWZESHJ4dDdTMFZYcmhOYXpacEszenhCTmJrMGxqcFdiZEpWMWQrVHZCL1Yzbk85VENsVERmTGFuZUVZU3RyZDl6KzBBTDdvMW5iSDdYOWNlL3NEMW1mcUcyUDJ2YTRmZHZqdStqVEdTcnhNbHpWd0VoRGgvdUZZRTIwSkx6Y3VGTmVYazlQanVOWER2c1h5Z0ZhSzM5WExKeHIrb3pYaFB1QytNcHE3TUJaWUFkcUcyZ0h2a2YrZXhmRzNvVGo1SE9vMit3NHN2SnNYTFArR2V5bmxKNERvMFlTMnlKSFBzZm9JczJvOGJoVm9lUFdvMmRGZEtXYzl2M0VKSHFadU1PL2k5RzlGZW1oRStpaHVuRjYrQXoxTDNyUHhUUnJLc0h2N2pTa25Eekw2Y3AydUlYVlVycy9TR0xZNFd3bllEREx5RUxJSDFkbU9LN1lmSlNBV1E4Tk15VGpNV3pRS0R1V1M0QXpxWmhET1YvaGJOcERKcGsvY0E0VzVQUWxHSE9UYytvUFVyTU9aQkhyZGNXT1pmS0t5L3dCT3o4OG4ya2VrZklBZlZHYWw2WDhneXF4WWhjelBCcE1OaUFKNk84dXpsR0ZNNkVOdEFsQVFuZnJxNjBMZlJtT2VlZy81ejNWZjFMV0RvOVA3ckpXL0FIelRCVWtvYUVNTk94TE5sb0FEaXNObkVXTVdtZE5uUHNwbHBGem55U1JqMmxjS3Q4Rzg5Z2trL0IzbFY2Z3Nqb1hQUndqbURIeEkzT2JGTEZZRC9ZaGR0a1liL20vV2N1TzhPekpUTHV5YUd0L09iUmxLR2JqL2hRemNXQVdIMnpzbmVENDZoRTZrSUNPdVJ3a0FRM1BEMXhqb04zWHhGRWNjQVk1TlZsZEI2MUVrSW1MTW5CdVJRSS9JS2IrbmZ0KzlLWFVkdnVHdFRBK1l2K1lldlEvV1drckgySVd3amVnYmJjZy8yeHBabXZDYzJXZkhmVVo3Y1Z6bk92TzA0Wi94NGhmOUlnb0RqNCtuNE9aL2grWWxGK2lSWkQrS2J0YUt4NFJiZ1FSWWYwdjB1UHpwWll0OWNmS3J3bzg3KzNqQ3ZwK2g2OWFncmhQSy9Eck5HUmZXTkUweFF3bThPZGFhTk5QV1RsSEszMkcxb21PRnNkdHlPSTUyNGZ1dW15L2Z5RTk4aTc3ZkxvRTg1Z2ZaT2pIRHZMNytzZkkzdEY3VDg4QUsrdnROUm5hSmxxY0xkU05uM0YvaWlJYU9JNjdPSGFvT0VZME1VdHVqam8wWjNXd2g1M3c5dGFqUHk5UzBVam1tSFZ1aWZtenBCblhoSWM4WSswU003NC9CZXR1NDF2TDkzOEhHUlo4UE1nOUk0K1BzdnlUSGwvN0srUmlFY0VpcUQ5ajUvbUVlZjFVc3hOa3k4bjc0VS9JVCtIKzczQys3UXJYclY0WFhDVlExbzQyTnRpTy9qRURqMVZZSUZubmw0MFh6VnZwN1hsYVUwVHpIc2UzTHVWM1FjYW9odithZlA2bmc1WkFPNkV2ZnE3cDE5WHowN0VVNHozSG1Pa0JjeG0rRkhiUi90a0pheXJiWDNQRXM0SFp1MU9Nc3ptSXRJN2pwOE90WXZqYnhEVlRmajR3V0YxenROM0FKN3NkKzh2R3UzN0hzUEx2dWxoLytsRjY1R2RlaXRuYmFYTkg2OUtDTkZtSy9aSFdIY1l6eFAzblhoeGdpeS9XdnM0d25uVmR2M0hLeCtIK3JUU01TN0pZanI2WTc1Qy8wbEJjL2JkSkt3M0IxeXE3NmtETVlLblhHdDcrV2tQekZsajUyNVJWRTNJVzlwOFBkNHpuQjFzdk9jTzVhaVlXYy9scUp2NHJNWEg1TmQ5ZkZ4TW4xd3JXWFB5MXJ2dE80K0x2MkoxOVFOdC94dlRDejBtTWJxc3lGK2hpVkpEOFRZZkhvRHVSdFdxMGlyYkJPT2h1VjlHdUt5Y3hpbCtjd2FBM2ZwSDRTOUNuT3VnRlFxNUdSMkJKSnpoZitwRWRuTTNUQzhqM0JXb2kzY0VsOWhMUThKMGxwVDdEK1lZMmpqTWRsSG9MWnhjN01hbFBNWExjaVVrZC9ybTQ3KzNFa05lVklaaVA2dDNxd2crWUQvT0Z0NHBXUzM5aDN3MHVEVmlMdDhkMUpEcUNRa3liMkxENjNMU0pJK0VjZXpqRnAwMmNhNGpHcDF1WUI2UGpmQUw4cGQ4RzZ0UDkxbzBzTkt2TDZKa3c4ekRCMWtDNzcwcE9sRE40ZitXVWgyaDFXVzJoTFhaSkZzd2R5Z2UyM1YvNXlGQ015K1JIekMwN1Z5Z1diTEUyblBOdllHR0RkeEdWeXZkaGZ1Q2FaZEpta21oalprNGJNM1RnYnd2SHlpWmFSL2RYSmtrTTR4SjVoTmpQTVhNWC9ITS9HOWJQZ2graGwzV05uUGhlb1dkN2dsOTFnLzBxZXUwcVZnbk1uTTNSOTNiUjA0WDVrVGtlNFV2SFJsdTBqZjJqd1ZmSmFOeHk3YkFheUtpb2tzZWNGby80RnUwRUorS0ppcEdGZGVXbmwwRWEvanV5bUJDOVgvSHZhSGR5cytqMmh1Y0wxM1VOK0hnRCt0WEEvN3p1S0pENDl6Z0hBay8ydFJFVko1aHhtUVp4OWt1TTFnK3hkODY5Y2Y5a3VtRG4yRDAreDhJNlgraHowK3YyRDg4WHF0YzlPanBmekZuQk50dGUxOXJEbmF3QjFsa0grS3M3cE9JVkZyMWpmb0s5QWY0ZVQzRGZRUmQvRGNaWUhOTkdhOFQyZGJ6dWhDb25kUGFKUlJjNW92TlJjYmdMclR5R1ZqVzgvb2tLemVtZmFIQ2Evb21PeFlCdDFGaWhVYUZENFEyaTJMaUlUZkQwbkdCOGNCUFJyOVBVR283WGdObzhvTHNjUUdNMTlndnZhekR1NHk3ak1kVWRVSEVHaFRjNTY5NHM2TUlQbUdOSWc5d25KdkJYTjRzM0k3YVAyZkFPZURteGZtWG5ZeEtlSExLN21CejJ6eGR0ZDJhNCtEU2V5ZGxnTlNmeTlzNUdONHZCMFFSdW9UY2NRekVhNHAyTWRsRUJoNmdiSTZpQ2s0d20vRGREUXZWMlIwTXFMTGpwM2QwZS90cnRZMkZOUUgxR3d6NGNzQThuYlhpL2pQNXh2bWhDYWRIUEV5cEdjUHorNEJDS1h5ell4MmJsSHYyY3dPbCtzYm9JN0hDRWlCNUQ0L2F0SVd3YldxZFE5S2tZV2lpQm5uVUVoKzMxTExpWjQ3Y1cvQnBhK090Z2dvcDFNQ0dpN0NQQlE2ZjlFMHRNbS9iT0JyanYyUkcyZnpMRzA3RWpvVGpyNytMSkIyZnNCSXAzZkdUY0xOaWY4MFhMdzhLbFFxV2lJUlNzSE1EK1RIMmFIaFpzd0RpMkduUXVTK1dseGtzZHk3M2pIdXczMmNVZU54bTlnZUlNYmtUMWV0MVQzS2ZYUmEzcmRYZHhhMzhYZi9XUGJoYkR3Y1JkTkY0MnZjbkppTDZNRC9tVzdnbi80dlhPRUdMdjZKZzE3K2k0aitmMFJ2dkg2TkNPRkJ1SG14MDJ2QjBlb2NCR2gwTXFZTmYvNWxQZEhUUjNpT3BibVA1cTgrbFkyRXFwc0JxZktJZGdCRXlIcXpoMWJ1T3lsaG1URW11eGR6Z2s0YjVsa2g3dXZtVTArR29mTnB5T1VlZUd2SmUrWVJlYUlxZlphQk5lZXNNaFFuUms0WDVIUFR4Ti94QVZvRGNFU3RpRFUvWmV3ZmE5SVZ6TDgxNGZzbnQrVFR0NVh1SjZEWDY5YldSWGVHbzZySFdsdWR0WjdJcU5RbGM4UE5vUE5weWREUENwQjFURW40R0FuWGxLZlhsS1hkbU05K1NwYWtNUWRyS0x0MUg0Umg2R2dLRkVKYmVnbGdUTjJ4LzNieGI3SjJmUThQMlR0MWhZN0pmZVl1VmJLdjNCaXcxbkxqdWl6d3lML1Q1ZWM3Ly9LbEsxM3orQUR0NS9EUmM2c1pCd1R5eFVhRy9VNzdITGpuRlllajArSXRydFJZcnhQNDZCWmZTTzFqWVRpQjcyM1lYS2VqTG9QeXZIZTVhN2FHdmUyRHJGd1dhL2gyTXR0R0VFOTcyMkFkYTQvd05zQVd5ZUpiQVorOTFHZ1lYZlN5S2szbitFZk8zeEp3dVcwQjZWbVlkVjlVZGRFaDExdmZvVG9yT2svb2dZbGRHZ084Ym9NY2RvbCtGRHI1eTV4RVNnOTRGYlRWaUZHR2FoQSsyT3dOTXlDQitzejhYSE5HTDROR0w0NkZvY29kbVNmVXdqaERSQ3lDQ0VERUxJOEt6UnJ5UlZDMFpIWjhvMm5OQnRXTllKYmlpRDRTT09JYmg1LzFKb3dYbWVudW1hVE5HeWdWUTdIRXB0NnBTQTBqRUpTdHkrTmpDMVRqRXduM0l3ZStoeDAzTUR3QmVCTllaZkFnOHJWRXFhMzd2STlqdDVyMVgxd3JTdk5neDV0MjFrZE50bWc1QkVQZ0FrWGJ0d3o5WE13bGpxcGtaWTZ1cXNOSGJaSGJvOUkraE1oNUNicjhpZ2FHUU5sMXBGc2lzR1dWV0Evc0g2S1lXM29nQVpUUUpJblFxNjVYS0lHb1NSazlWUlFTM3lkUXNKTVlJVHNDbmdoRXExQnFDU3VoVjAxS29kZEl5Qk5PaWduekxWVE8yc1ZzOVdPNml1UjgrKzR4aUJzM2t0UmFjdHFKaGdkR1RaWlhCb0RCL3R6dkd4UmwxaWY2dWJJUDFIQVY2VUFPNWcrUGVEb0UyOUlLYnlwUkRkYzd4VXpaRWlKaEIrMnltdlVrYUxJTE01WnZyTUtEeDJWdStVN0lKYTB5WWdZYWdwaitTSUVxaGdFck1Va3E1UllPUjAvWkVUN0ltQ1FBYmN4b0ZFbTJUMU9BSjhsbStOQUxtUldlSi9BV1RKTHZHL2pFdEQvRER1WEpTQkY4ZU1YSGNDMWJrMHZuTnVtY0RCQUhDbnRXcUF4d3hYYlQ0bnpNUkJJeHV6S2dheW5CUzFacWFCN0dqbCszaGdIamMxZ280d0xJYWRPaTlNallIaWFXNE11cTBBdWt1TXJsMEVpNC9LK1daeDF3eGRoSXF4anlJZFdUTzVsWUpPU1VHMGRFMkdWb3ZRYWhGYUxlcktSSUR3WmVvS1hSbkdtUEZCQ1J3ZkJ0YUtyZnllRXlNeENjVU9vWWdtV2dURnhySW9Hb1FpcVpnVXhxWk5PR29aT0RZYlBBelE0WEdBRGtlU0sxNkxhMTdMU0FPVHRrVEFaRVpuT2FXYzROTVZIZVgzTXIyNGtGWVdzNTdsYW9tZEdRYnE2Y3I1RHdjWTdNTStrT1BvU0VOalQ3NTY5ckV6djBmK2k0ZXJJaldGTzcwMGlyQUI0U3ExWXJncUhhWG5VcFQ2R05panVmejdpSk4yU3poTk1DdmhqM3VMazc1eW5MWUNuQzV3VmNQdEJZYXplS3pqR0JXZE5ENGtOQWlhQmtIVElHZ2FCRTJqSURSUHBTckVaMlBLcTArYzZ4dTNQL3VTUlVaTlFxaEpDRFdYb3V3RG5nbVE3YjF1Nmd3RFI0bU4yQWhUazJCcUVrdzJ3V1FUVExiVTloOWd6dXcxNW1JeXJwRW8weVV6djNaNFh1RHZPTzlld0JRcll6cW96WG1SeVlhRzFNa3YzZVhraGdNM1owMkN5aVRqbitZYTBnTWoyZGdkOExWTDRWTjJSZXpBYXNTd0pYaEFLTTFHekpBbHZ5bGh5RW83SStwaTBZaTR2VmJzaWtQbDk4aHdtVmU2b29ueE4wZldJeUZxblVwYm9ZOWVJWmkwTmoyTDJ2VmhKQWtzVll3a21mTVNlRDZNbWZtZlZqdm5YbkFpU3hnYWI2R2JCbUFCamxHd3Z1TmduY0NVUWZBTVdOODl2K1NyeGZLc0s3dHFjZ0o0TTNrdzZZSnI2YnRDZnFnTkZUcmhXS29Gd2htd0ZTMHNEcFpta3UrRG5zNHVPbXlvZkswV2VUNEdsQmhPek1Yd1JRVERDMHdHaStaL0oza3VHMUhITEF3cFJMSXlwbVljbTBEVk9LaU9Kc1RYWmp4R1JBTjNqb2ZKVkpkZ05UbXVKZ0hybUFTc3c0RjFUTkZmaHk5ai8wdXNnMU5WOE1VUE1JM0czQ2VGWkZJS2NWckpjSjFNRkg2UTdsYmcxMmVGNEJkQ2RBSDZtZk91S2JFU2c5dDlCbUhQRENURUhrc2RTMFNhVUpRaWpZTTRBSXlLUGliRkx3cnZkZ0F2clcvK2hLdk1DdGcvL3FTMm4yeWgydk1DK0JheGY1b0NZOFNaRmZqV3drUzVkSEJiUmpsd2ZlQlVONGlSSUlCYVBsUDhLSThoODNTTVl2emJyc2kvaFlZcEh0cHpiU0ZIZ01OcFRHUDBhOGpvMTRkVDVJa205K09hM0pGalpUenBncUpRWXdMVUduTnE1cjhCYU5XVlVyTHY0WXo0SXNpa3VzSWltUkhiL3EvOHVhVDRQSG5sNkhPVzcxZkNCb2dycWxrMWNKQkU1ajlreU9DRHNqL2hNcCtmK2JJbUd4OXRsRFBKc1ZyTVZtczNyUkF6ZjVnUEg3VlBYVGU2cDh5ZFFiY2wxY1MweXdjV1NoaVl4WWVZUWtCaFB3WCtTNDR0WUhsQ2pVVmxNVWo5NFhvL1NEekFWVWZyU1I5MmlwdnBwYkxOQk91VDA1OU5RTm9FcEprdzFMbnBHYzAyaXdFYUJmQUpCL0FOUGE2RVQwMUdYOWp4ZmVCa0Y0bmVDSGw3Z1Y5ZExJQURVNHdsdFRHd2VkQmtXbXBhVW9wa01HY2VUclJock1ML01qNkpETnNOR2swRUpTMk9jYkZKSTgyVTZTa0ZnRmFJc0Q5bnBQdnp2czNpQU10OVNsMDJaNFE5TzYzdmw0T3hqRlB1Y3V2UmpWdVBybDBBeENMdTVySUJJTG1LYWpJRXlTdVBla0hCWkp1WUllbno1WmhiMkJmS1I0RXY2UmxEc05RSUhKeHpHWVpxMHlBTVczRU03UklRdHFSNktEVnFhT3EzaWxYamEyR2NNRFd1aGxqcVdGTHZiZkh1V3h3MFgrRm9raVRiWGRGbG5WWklrNVNQTG8zaTFqWHliUktycVpFL2FSNzRLc0trT1JBczRrVmZkUHBDOXJVNTUvWTFmQm41R0ZxKzZ6ZjJPWktDSHNVdzlmTUNCL2lZY1FtaVV5UG1YUHZhVjhhN3poeXZFVU5aTW9MYy8rT1k2akpNSFZQdXNIUjRkSzNEa3pvNkxZb1VvVnZpejVGM1F6ZkZuek1Yb3VQcElJYmVORDFWSHA4QmxxbWV6YXEyVDRrUmhYeStTT3l0UkJZVzh3K2w2Z25iQjN6N2dMWUhVT0pvM2VhRGRaczAxSWNVRmZTQVhNTnluZjB0NHBrOXVzUkg2RUo1ZzJWc1NhNlpVK2xrcU9CSlMwZVh0TUJFV29aTVBBT1RxeUo2ekNsclFlRFIwcCtVOFBXQ3ZsbitnSU9vSy8wSzZXM3RJdXRvaXJnMGV0ekVpUVBJVkVVU2lpZ1dOdE5NU1N6NGdNYm9Namh0aHpneFA5Qi80RmttWXRJQnB0alNJeDh5TlYvbkhPa0FvODVsWktqZUttU1BBd3ZtUFQwdEFwODRJYWJlaTdDMXFzNDVxTVZuQVFOZlJXK1ZUd3IwRGNFOHIrL0FONTBQa3FaekhuUXZnakgzQTY3NktEdk5JSjhoWEY3MU1KODhNczlnUzYxcFgvbUtSR0xGa1ZpcWZMNUZNdzRtQzVJR1RORU9URStoL0ZEazZTQXI2TURONGdGWUFjTk8vcURocDZjSzV2U0t1cSt2Z3lONjhBYk91SzVaQnhPWmxMcFVDVHRtZkxMTGxZNGE4dmxESWNIWGtWT2d6QjRVd3pqaE5CZTNZcUp4YkZKWGRvUHRKZzNMclhMYStpVHduQy9RbFhtUGJ5aTl5bzJZcWF0TGlNc2FwMDNwRWptSWcwUVExOHJNd0tScExkazNWdElKekVQd2FRVEJmMkVRWndjakZhVXh4TUJnaWNXdUFZNUd2aXRkZVg0QWZPVUNneEFHSVp5MkpDRWRrM3h3Zy8vRm4zNFpjV01TYnBFbVpDUFdwVGh6bUNlRm43Z1U2Q2xXRG1hL1h2RzNkUHBQVWdzSXBqeWQwRktxb29vdFpaTzRZZ3ZXRkliYWtseFN5Z0xWZVl4STU2RjFWaUtYY1BGRXg3Y1JGMDRzbUluU2lreVZtZkdaTXJEM3ZjR3dmN1BZdUVkQkRhSmVIRFdJUC9ZQlBEYWhTZEdhMDlTYWFrM1NxRW1zMkE5YTlJSzF4d25tSTJaY0c2OGpVejVYQVJjN1BPZmpBMzh1enB0ZzltS3cvNW9CRDQ4dGdwTWZzdS83OE93aDlyMFhlWUJacEVyMXEvanpWNkR1TGRRMWxqK1BXdkVVZmhYN2pkQjVNZEU5NHFMcjRkTUVISHlzZUZKOGtWZFVDdUtMMWxRVG4wN2kwMnZ4VlJEZlV5NitNWC8rSHIzTExpN0VwNEdvWlB1Y0Z0aW5tbUJ0RXF4ZEM3YUNZTGVEZmdrVEJHRGdSSjBkTnpKNTROZWRadFJWRTZCQkFqUnFBUzdSTS8yM1NGeWc3Y1JoRTNxbWZKL1RBdnNzUmJtcVdrdTJnbVJEODh2R0ZKdHdMYUxMWndIODdhY3AyNnRKclVsU2E5WkNXMEpvSXpRM25jZ1RwMXdlQi9HM242WnNyeWEwTmdtdFhRdHRDYUVONkcwNkFTeStjTUx0cHluYnF3bk5KS0dadGRBcUNPMEpGOW9lZnhiTkgwaDZVZnZsQ1JlVGJJL1QzRDJxaWJSREl1M1VJcTBnMG9kY3BGMmNpNzBLWm1qZDRJRVFsMEVmRkxkV0U1ZEQ0bkpxY1ZVUTExYmdGRUxQb1dYV29qOGYxb2orZkZoVFRYUXpFdDJzRnQwU0k5NGJoUjdpTFk1NDRmYlRsTzNWaERZbm9jMXJvUzNocTQvQ3ViUEFLZGdPN01obzNXbEdYVFVCdWlSQU45YXd4NEUyd1JQRyt5aVI5emkxNTgvaCs5b2oxcC9tMUZkcnBNcWp4MUQyMVFpd2c3NFcrNlhIZmhteFh4TVN3RDRHeGF0bzYxT3VyVkF6QlpNQ0p6KzdPQmtmMWRlV1hFbDBFNVFwVXZWU004TmFyV08zNDdWR002eWR0c1JqVzFtSHRqTU9WY1VXaWQzay9qVi9kYjJ6WnJFMTR2U000elRHWlRQN21PMEkreVo3a0M1cklMVWpyaWtSUllGL3FhMlhBYm11aTJ3SXlqQzNlb0c1VmRmS0NWK3IrVnUrUm1xZGh0M3NwR2hTMitFTnpOZklZdWZaa0o0YjlOZXdEK2ZoNUhlcjdNYmw0MVRzUEhlTTAvTUl3N0dleW52d1c4emRvNVRIbkw3YjZEQW0xMUs2VmJMUFJjbExxbkxydXNnZDQveEN3RG1DY0I1THZnemJNbTFvdHAwR3c4eGwxZkhLam5oa0p0b3J2dENHYVBZZVpxSmlqZ3FtVlFhams1ZGoxMmtOM1JFSGpOQXdVcWVkdGpwTk00elV1ZUd5WDdIYXdEQnEyWE9ub2FZWlJza1RxMktMUkNuZXYrYmZzVzQ4NHJyaHYwMlEzdjc5TVU4alpDYUVGcTBVYldFamJMZG1aeGpLb3ZIUmVHbUdwMDIxVFB6bUZGS0h6VzM3SGV2Q050ZUZ5Q09wV1YydUpyUmFrT0VwNzF4bXcwekNHZlNRVmt1MEN5SjR3b0Z0TjYxejBZWFRUQy8yZjJGbDJPRG0zN0UrYkVWaUFYOGdQMXhHdE1HUU5hclRObHFxTUZ6cXdaMU5aNllqY0trWjFMWWNiYTdLSVptN3M2a3pTMHIwYnBxd0lWS3g4SlVZTjRKVXBFcmUwVHZNYmt4VGNrT0RUNXFTVDV0VGZhcW1LSG1ybGV3OW9aTFA1dkNSWWdFZHl5eEsyQnZkL0EzaGJQSldrdlp6aWorVzNpenVYNGlDV2VJOEs0d3I3dzM2TjR2SVc1Q2ZvTTN5VGpuRUhHeXdiWU0zd2dmemNQTmdPWkd0WENmZWRiek4rdEY3OUQxT2xLbnlQMlFENWJ4cmVNdGZCTWQ4YWxpZ2RLMjg1MGY4bS9ETzRlM0lHK3JGZlpOdktONWliZm1BWER0WEpzb1hLRlBPK3doYmJlT2EwRDlEcmVCN1AxVCtpNzhySFQvQ2tYbnZkbTVqYlF2ZjR3enZiSWJYZkRwc2l4YTgyeGtlcDJPeWJXMTh0ek44bXJobm0vMVZXUTM4OGdRY3dvYzk3bUtNSm55ajg5L3dmZXBOb1pVSHlHNFVyNURkbnh0K2hDTzd1TXJwR2pQQ0xNeld2RTdGY1NzaW4yekVuMFQyOUxQTkxzbE9DdVRaRnU3aVNmQU9iM2dLQks1N1JsMWozbGZxVlVLYyt2eEpXVGFtMkVUUkVtWDZMS0kzUjVpWGVzMmZJSDJPbzROL0xWVzRWaUNKNFBWN243Q05WOEVSZXV5SXgvaVl6aXZsOTlUOXhYYlJpck5ZdjVSS0U5NGpMdFBXcC9nNGd6OTUvQlI2OGl4eC9GWmMyNWt1dVJYZUsvNHQ5M3ptQWtZSHFJUFpWNC9vb3ZUcTlGNDBoaE5qSVJ2N1V0NDlpRGk4Q0JpSE5Qb3lWVDlFR2F6bnJlZVBJb3k3RStGY0wvYU8rbngyM3VMcy9DdHEvYS9zR3IvZFc0YldhNGF1R2JwbTZKcWh2eXFHM2s0eXRLTGRXNDQyYW82dU9icm02SnFqdnlxTzltTWNZMXlPY1g4dGFKRzlhbmF1MmJsbTU1cWQ3emM3K3pHT01VTWVyZ2Z5dUs4TTNhb1p1bWJvbXFGcmh2NnFHUG9IenRBV083Zi96REhhSDJmWEZYcmo1SDNsYkszbTdKcXphODZ1T2Z1cjRtemZxbzV3OXIxbGFMVm02SnFoYTRhdUdmb2VNclJFQytyTXU1cWRsMkpua2N0cWRxN1p1V1pubjUxRHlTN0R6blhtWGMzUU5VUFhERjB6OUtZeWRKMTVWM04wemRFMVI5Y2N2YmtjWFdmZTFleGNzM1BOempVN2J5STcxNWwzTlVQWERGMHpkTTNRbThyUWRlWmR6ZGsxWjllY1hYUDIvZUhzT3ZPdVp1aWFvV3VHcmhuNmJobTZ6L1lDN1l4d1Z2QjBmR0xvOEYwTjcySjdpV3lkelhzaWluYkNyczNqUHB2MTRZNWlzTStNWVdhdWhQdVcwYituc2Z0TmszaGI0TnJvTWRrNWd2Rjk2Wm1NSVY5a3pZUW1XVnhuOTkrOEZkM3o5V2tucGl0bGRjK2ZFZUZjdHFTdXRSSnhyNjlSMThCbTBkYWtiZVk5MXJhblhOdWlYQzlhbzk5emZZT1lBYk1vTnlyUFdJd0ExRm5HbTJTSjZvSk5VbHVpK1phb0pyU3J0a1NyV2FLcTBJNU5zMFFmaDN6S0dEcHloMHN3OUpoZDRSeVp0bWJvbXFHTE1MUldNM1ROMEhXc1FNclFUMEkrVldhWkhQMHN4bFE3MkZwNis5T0hpTisySFZ2MTU5ZUpUSjNGdXFKZm04ZHlHcjVmMUdSOWxuay9UR3JBYUJyN05BS1dnMjJ3RDdUZGw0cUp2T2lpZndkYzU1WG1pSmJBRWZsOXlxallwOUowYVpuK3NHbDZLTmViS2hyNE9IYW1WY2FyeEpFdFR6T2JmRlIxY1R5RlViZk5QZ2JidjdwbTF2R3FkVmlvTW0ycG9udlBzTzkvUUU2TG5VMTVDUitKQnVicDBGVHBNQzF3MkYrd3hlWm93eGs0eXZvNkJMRXAwQ0FYT1k4MEZmWUdGZ1RObTdIOTR6cjBuK3hLWFlhVmkwZ1NBNzFqbUYwaUM0R2w4U2Y3ZlIzZ0ROcjF2d0ZpRC9ES08vQTNkdGJ2bFZuQnFOUjZKSm1IZmJRRkR4UmIwTGh2R0VwTllSOG54MEpBUG81cHlXT215VFBtZVh4R0hIWWluT0svSlc4WE9mK0MxUTBEenIrcW9CZkFEUWFyZDlGK1Y1RmJWSWFwa2JEdFRhNFhObklRc00rTS9RUHJxbk1yZXZHVTdYY0JUSUQyMGpzKzZyeGp2MzlUcGlsTThrdzQ1ajIzcGVOSC9ZM2RUMU9RMmphckI2MzR5UDYrUTA3OG5EcHJ1QlhiRis1eWxyTG5vOWlldnluKyt5NkxuVGQ2bi9FOW42ZmVaN3psc2p0OWtYcXMyRDdaMGVLVmZha2s3KzEyWnF6ay9TSnVrODNRbnJvVzlDR1VtdXcrbjBtUEtvSlFsZzdtWFZPT3JhaU5vb2VVMWsvbUdWNm1ISlBzUHZJNGNsU1IzdmhFc24vZXZTU1B5Tk1zZWF2UzcvMnA5TjVUK2swcGx2NkpzZUJsNEwxeksxNzV1K2dKVkI3VGRjYkN3TDVUdFBiSUd1eXdscW94dXhEcTRRNGJPTzREZDNjd1lqRERzVjJNeTZ5SHU1L2hHQmk5NTNmWWIwRlBQd1cra0NpWkY2emxTZnlLSExrZWRpa256M0s2c2gxNWw5NE9iL2NIaWI4YnhoMEFnMWxHUERCLzVBY05NTkM2Y2RETHRURmkxeEc4Q3RBb094YlZ3NWdHem1mT1YraFZQR1NTK1FPaklTQ25MeG5SclFlcDhUK1pkN3N1UDFNbXIzSXkzMkpiZ0tkdlVKTld3d0x6Z0FYMGpXT0J4eUYzNDlrdWxIUHNOMWZlL29pQnRqK2EzQ3pPaGoxNEcrTmJLcnh3bTlaczBsYjQ0Z202enRsNnBXZmRwckZzNWVlRStOZ3F6N2tlL1picFpqbnRmcUVjb0V6K3pud29pTGgveGl1RHpnQmJya2JiWjRHMmF4dW83ZTl4bnVoZDZQOEp4OGxua3JiWmNhVExSVWJJS3dtMlJZNThqaDd1cG95c1JYU2xuUFo5RjEyMVVja3YxbkIwVkxudS9JeXh0NW5Ta3ZqRmZyVGtidnppOVVna2psL1pjUzNpZTFYdTZmSEloQlpFSnBwMVpLS09UTnk3eUlTc1Q5UlJpVG9xc2Zxb3hBT21wYkJ1Y1I3dzhYUHVvZnByR0hkNGhHeVhuZTBQaUc5WFlHY1lGWFgyRnl3cUc5blpZYVdCc3doUmRtN2lMRlN4bkpEN05EN21ZNW9ubFcxczBTYytXMDVaSVZVaStDN20zVFJRSGk2aTd1SzhUVGc3MkVCSmdMZCt0K1BrdWp4eEdZNXg5TDhOWmhFSisvQjNGYnhWVnVjaWp4bkJqSW52ZVcrU1hiSWV2RVBzc2pIZThuK3psaDNoMlpPWmRtWFIxdjV5YU10UXpNYjl1YkxQenZBWlBicHpuSi9jQ2M0aHQ4WC9IYTI1NkJIK1NIT0pvNVNOTTdLZmd3eVVIeGk2TDVGeDBqOWwxMG5FcmYxR1lPM3JmeEU1NTBzdFcrcFBFVlhmWTg2WCtNZkkzbEZwcDgrOWw0MHZONWxFVEJ6clcrejhMUnlYWE81Qkc5aUhYWXc1cTVpWDBNVDhCTWd5QlN2S3hEMXNSWXd2cjBlaUwxTFJTTTd1ZDI3Rlc4aVdacDRtakhtUGhlaFNuaVlVNlpuQXdEcG0waEFEYTNoK0UrVUlzMDFObENQMFB4Y2xPVU5ieE1DKzZtTGZkRzVGamo4RVhBVjNIcGVqR05mNmhyVXdMc2tmVTQvK0p5dHQ1VU5zWHVJYllLRmIwWVFzYVdacndtUGxWd1ZXeEg5Y2dSWjArQW8yNkwrdElNYXE0VGdNcTl1bTJKdWh2N2R3VG1tS1BkbkZXU1lObzdKZytkK0dGanhuKzlCZGw5V0FGOUlqNzFMNjZSS01TLzRoejFPNnhJenZUOEhheC9qVzhsSjNjS3dGYndLeVk4bTNvQ3ovcEcvUi9ncEhaUkhCSXFnL2ptOWR5dnBWTVJ2UFJUK2ZvdEFkN0lYdGhGWGtaMzUrWGZpblkxbEVFcy9ZR1QvaENndXEyUWt5cStVcytCUHlRN2ovTzR4dlh1RjY5ZXVDNnpYS2VqVEdCbnMwUDJiZ3NRcXZJT3Y4TXI1dTNncm41bW1OR05jNXhwbGNtTVh6Ky84dWpubzdZVTNsVVhlT1VvZk1ieGhoSFl5eU5kRFcraGxycGp4SFEyZllxR2h2MDRvRkdHdm5PR0tEVFhZN282Nk5kLzJPWWVmZmRURXAvaWc5OGpNdnhkelp0Rm5UZGZGUG1pempXdkNkMHNOV2ZtYjdYZ1V6a05GdFZTSWZMdnBCeE9zT3Q3TTZrY3hjeXRodU1GbmZiY2IydW1ZZ28vakZaNStnTjM2UmFBZmtBWFZRNXlFRzJoR1kyUW5PbDM1a0IzMFh2WUI4WCtES0I3cURTeHlkZ05GM2xwVDZERzNxTnRwWUhaUjZDMzJwVGt6cVUvU1ZPekdwd3o4WDk3MGRyM2xkbVFENXFONnRMdnlBY2VZdnZGVzBmdU1MKzI1d2FVRG04UjdYa2VqNkw3RGdhYzFmZFUvY3hHakpISHM0V2VNbVJsZWkxbmdMNTF4MGpLREFYL3B0b0Q3ZGI5M0lRck82akxad2ZMK2tETVU3azgwTXQ5MWYyY2hRckM2VFowTDhhNEt0Z1BiZW5YeWE5M28welVNMExxc2ZjUjd6blB0Y0ZtdlBPZjhHYThodG5POE1wZlY5T08rMlp2bTBtVlRhR0lkc1l6d1Mvclp3ckd5aWRYUi81WlBFTUM2UlI0ajlITE9qd2Y3MU00NzlsUVlqOUV1dmtSUGgyeDhvb1hOa3k1M1l0YXRZSmVDZHp0Rk9kM0hlSHVJUWN6ekNsNDZOdG1nYiswcUQ1OFJwM0hMdHNCcUlHbGJKRlUrejk3OUZPOEdKK0JYaURNVzYxZ0NVUVZxTVV0RFRTZUpyUGYzbmx4NWpHOEFEVHViOXIvcUpKR0pHV2YxdVdzTGgvajJUSkw0YXVzcnpCb284azBSOFRzZ21QWk1FWXZIbG5xQ1FYRWxjUDVma2EzMHV5YmNwejRDUWM3SC90TWdEWk5TTHRmT3dVZlB3WDVpSHhUelV2eG9QaTNaSXpjSjN3Y0xtYmJPd045cWQzQ3k2dmVINXduVmRBejdlZ0g0MThEK3ZPd3A0K251Yzk0Qm5SOXNvQXllWVpaa0dUSDJKRWZvaCtxaHpiOXcvbVM3WU9YYVB6N0d3emhmNjNQUzYvY1B6aGVwMWo0N09GM05Xc00yMjE3WDJjQ2RyZ0hYV0FmN3FEcWw0aFVYdm1KOWdiNEMveHhQY2Q5REZYNE14RnNlMDBScXhmUjJ2TzZIS0NaMTlZdEZGanVoOFZCenVRaXVQb1ZVTnIzK2lRblA2SnhxY3BuK2lZekZnR3pWV2FGVG9VSGlES0RZdVloTThyeVR3S055RVIzR2FXc1B4R2xDYkIzU1hBMmlzeG43aGZRM0dmZHhsUEthNkF5ck9vUEFtWjkyYkJWMzRBUk16aFJVK2VVZldxNXZGbXhIYngyeDRCN3ljV0wreTh6RUpUdzdaWFV3TysrZUx0anN6WEh6K3llUnNzSm9UZVh0bm81dkY0R2dDdDlBYmpxRVlEZkZPUnJ0c2QvWURkV01FVlhDUzBZVC9aa2lvM3U1b1NJVUZONzI3MjhOZnUzMHNyQW1vejJqWWh3UDI0YVFONzVmUlA4NFhUU2d0K25sQ3hRaU8zeDhjUXZHTEJmdllyTnlqbnhNNDNTOVdGNEVkamhEUlkyamN2aldFYlVQckZJbytGVU1MSmRDemp1Q3d2WjRGTjNQODFvSmZRd3QvSFV4UXNRNG1GQzdvNHhBQ25mQlBMREZSM1RzYjRMNW5SOWoreVJoUHg0NkU0cXkvaXljZm5MRVRLTjd4a1hHellIL09GeTBQQzVjS2xZcUdVTEJ5QVBzejlXbDZXTEFCNU5ocTBMa3NsWmNhTDNVczk0NTdzTjlrRjN2Y1pQUUdpak80RWRYcmRVOXhuMTRYdGE3WDNjV3QvVjM4MVQrNldRd0hFM2ZSZU5uMEppY2orakkrNUZ1NkoveUwxenREaUwyalk5YThvK00rbnRNYjdSOWZ3YlRPU0xGeHlOMWh3OTNoRVFwc2REaWtBbmI5YjBiUU5vWUVHeGh3Z2pCSEU0MmVCazdJelRFSUJhRVBNUDQwckhYWWRoZU5IUXFHUU9nUXBNUmE3QTNmTWhFUGQ5OHkvbnUxRDVjNUhaTzArWktBcmtJUHlJZmxKRFJ4T3ZPR1EwVG5pUFRpcUlkRi94QmwzeHNDRyt6QlNYdXZZUHZla0YzbThHZy8ySEIyTXNBbHhWVEVGeGhqcjVwU3A1cFNuekxqWFdxcTJtRFpUSFpaMitHLzE0Y014ZGQwYmM5THZaR0hqSTF0alBWZUlyU1NXMUN6YnlIL1dpcS8xaFlib2Vac05OZ0pyeG03bmxvSXNzVDF2UDArcy8zMyt3ZlFKZnV2WVk4VEN5bnl4RUlWOVA0UG41dUJOVm8vYlQ0QUFBQytiV3RDVTNpY1hVN0xEb0l3RU96TjMvQVRBSVBnRWNyRGhxMGFxQkc4Z2JFSlYwMmFtTTMrdXkwZ0IrY3lrNW1kemNncU5WalVmRVNmV3VBYVBlcG11b2xNWXhEdTZTaVVSajhLcU00YmpZNmI2MmdQMHRLMjlBS0NEZ3hDMGhsTXEzS3c4YlVHUjNDU2IyUWJCcXhuSC9aa0w3WmxQc2xtQ2puWUVzOWRrMWZPeUVFYUZMSmNqZlpjVEp0bStsdDRhZTFzejZPakUvMkRWSE1mTWZaSUNmdFJpV3pFU0IrQzJLZEZoOUhRLzNRZjdQYXJEdU9RS0ZPSlFWcndCYWVtWDFrZzdRUllBQUFLdFcxclFsVDZ6c3IrQUg5WHVnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZUp6dG5ZMlIyemdNUmxOSUdra2hLU1NOcEpBVWtrWlNTRzZRbTNmejdndEl5Vm12SGR0NE01N1Y2b2VrQ0JLaUFKRDYrWE1ZaG1FWWhtRVlobUVZaG1GNFNiNS8vLzdiNzhlUEgvOGR1eWRWam51WDRkbjU4T0hEYjcrdlg3LytxdmZhdm1mOVZ6bXFETVA3Z2J6UDR2YndsdjY1dTdhTzFXOG5mNjVIVncxN1BuNzgyTmJWU3Y3dS8yeC8rdlRwMTk5djM3NzkvUExseTMvNm92WVh0YS95S1Nvdnp1VVk1NUZPL1Z5dTJzK3gybS81azNhZFcybGFYOVd4WWM5S3pwMytMenI1Zi83OCtkYzI5VS8vTGJtVURKQTVNbUkvNTFUK3lCU1oxLzVzRi9ScnppVS90eFBhQXVVYjl1emtYekx5K0svbzVNOHg1RUovdFF5UmM3VVY5MW5reHpYZ1ByNDZoajRBeW1NOU1lelp5ZitzL2svNWQrOE02SG5rWG4rckxTRFgycllzL2N4WXlkOTZBT2o3bFo1MXc5QnpUZmtqMTVKVlhlcytTRi8zbU1CNStGbVN4M2E2SWR1SjlZemxYMjNFYVF6L1VuWGkvbk8wSDEzTldKeHRINmRmWi9zcFdWbmVLUS82YmVaZDEza3NsN0tzYmRvZ2VvWXh5ZXFhWVJpR1lSaUdZWGhGR01mZmswZXcxNmYvODI4djcxbnkzZm9lWE9wcnVqYjFybmlFeStqdGFnZlA1bWRJbmZDVzlyNjdsdmZ6bmZ6UDJQR1BmSVo1bnZkMXZzUXV2Wlg4LzRiKzh4WmMvdlN6WWMvRHBvNU5KdjEzNmR2REYrUnI2U09kejVENkpEL09YZmtEVGVkdnBJeGNqLzNJdml6YkwrM2YycVdYOHJjZjRsSGJRTXJmZmpZZmN6OHBmWW5PTExrZ0cyeSs3T2VjOUF2WVoxZ2dJK3gyQmVkUjU3UVBrL1pudHgzYURQZENucGtXOHU3czJabGV5dDkxOUtqamdhNy9BM1ZvdmVDK2JUK09mWHRkak5BdWZzaDkwSFpmOS85S08rdDQ1Mi9NWjByMjYvUlpYWkxlcyt0L1FMYnBBeTdzcXltWjRXOXhmME9XL0wrVFAzM2ZQa0RIKzFpZndNN2ZtUEluTGZ3QTVOUEoveWk5VjVFL3ovYjZtN0t4dkl2MHhkc1g1L3JlNlFiMGlkc0p1c1c2R0hiK3hwUy96K3ZrVDV6S21mUlMvcHpYK2NQK2R1eGJTejliUVgybFB5MzlkL2J0NWJYVWJkSFZrZjE5UEVmSVkrVkxoSlcvTVgySXZLZDE1ZkY0NWt4NjNxWWVIbFgrd3pBTXd6QU13MUJqVyt5Yi9Edyt2MmRjUGZhQUdXTy9IN1o5OGJOTnZvc0x2UlYvdy96RFoyZG4wK3I4NE5ZSjZBN0hoT2Zjd1BRdFFsN3I4MnRmWnovTThxQ3ZSaitjbzdPcklQK1YzZGQyTUh4ODJJN1FHOWgvUGNlblNMOVF4dTdiWitkejdMZmpMOGRvSDlpUjhVa054M1Q5M0g0WDEzdVI4dWY2Ymw2bmZZRzI3MXJtK0ErNmVVU2U2NWZ6eit5Mzh6WG9pT24vNTFqSmY2WC9WM2J3OUtXblR4MGJLZTBpKzdGak1NNGN5M1paNEpQWXhRc00vK2RhOHU5OGZ1QzVYeVV2endVc3p2Ui9jRnlBeThtNWVjNnc1MXJ5TDlESjZUc3ZlSVlYMXVIT2MvWDhYK2tHdHprLy94MnJVTXpjcnpYZHUxenRXNzNqZVh6ZTJRSVl3K2YxeEkwNG5kVFAzZmlmWndEays3L0x5ckZNZStRL0RNTXdETU13RE9jWVgrQnJNNzdBNTRZK3RKTGorQUtmRzl2Y3hoZjRldVFhcThuNEFsK0RuZnpIRi9qOFhGUCs0d3Q4UEs0cC8ySjhnWS9GeXVjM3ZzQmhHSVpoR0laaGVHNHV0WlYwNjRZY1lYOFNQMnpFOTE1RDQ1WGZFWFpycmF6WXZTT3U0UDNjZm1YN2tPNHAvN1F6UEROZTF3ZmJHN2E1d212d3JHUnMrV04vd1NhM2Frc3JtNXpsYjM4aVpmTDZQQzdqeXA1Z204SHFYaWd6ZXN6eXovYm9kUXFmd2FaczJ5czJ1L3JmZHJUdW16eVpodGNRdzYrSERiNXJOMTMvTDJ6VFl4dGJZUDFQMnZiNTBHNTl2ZGZuOHBxRXErOExrVWZLMyt1T3NRYWExOFI2ZEpBUnVGNTIzK1F5S1g4L08xZHR4bkwxTlozOEhXL2tZL1lmczUvK1NYcnNQL3ErbUkrUlQrNzNlbmozakh1NUp0akhJZnVGWmJsNkx2NnAvTHY5bmZ6VEY5VEZJdEd2MGUya2YvUU51ZDB4L0JUVzgrVEI4VWRuMS8vdGV5dlNqd08za24vWEhtejdkendCL1QxOVI5Mjk3TnBHeHFpUVh2b3BIL1dkZ2Jic2Vra2RjT1JIdjVYOEM2L2pTK3dBck5hY3pudk5lOW5KMzJYSTd3djdta2VWZjVFeE11bkgyNjJ2ejNHdnA1bHBkVzFtRjVlVFByOHV2OVgrM1gyc3JzM3I4cHl1ZnA1aDdEOE13ekFNd3pBTXNKcGJkYlMvbXl2d04vaFRkbkdzdysvczV0YXQ5bm5PaGVjS0hiMC8zb0tSZjQ5OUdMYWg1WndhV1BubmQrM0Z0cEhhZHN3LzMrV3czNm53OTBUdy80R1ArVnJiay9BdGNTK1dQOSt6OFQyLzZqd1J5OHgrdG95Ymh5UDkzOW5tcmYvWjVycyt0dFBaUm12L2pOc2ljZjc0ZXJBQmNxMi9VZWh2Q1RuR3hIS21MUGlJN3EybmJzMVpXenNjN2FkdjVqb0JLWDlBRDdndFlOZW5MZGczaS93b2U4NGJzZCt2bTFQUzdhZmQrcnRBcjhLMTVkLzFuMHZrN3prZjZPNzgxcUMveWJpVGZ6NFBPcDl1d1RQcEZlY0tYMXYvWHlwLzYyMTBzR050N01ORFB1UnhwUDlUL3JTTlRKUDRFTWNJUExJLzV4SThicUtQMGE5dUlmL0NQajMzNTkwODhydzJ4Mzg3K2VQSHEvUnovUGZvL3R4aEdJWmhHSVpoR0laNzRIakxqSmxjeFgvZWl0Mzc2bkFkZU9lMlB6RFhpN3dYSS84MW50L2crSHJteDlHUG1ZTmp2MTJtczdLaGVBNWUrdXBzaC9LOG9KVVAwTWNvRTlkbStiSC9PbjRmbjZiTDA5bWpYZ0Zzb0drUHhXN25OUm81cjdPcEY1NVh4ODkrdDF3N0ZOcy9kdjV1anBmdHUvYm5ralpsekhLbDM5SDl2L05WWWxOK2R2bW4vcU5ldWZkVkRFODNUeWpwZkRzcitWUFA2VWYwL0RSOFA5aG03UiswLzlEM3Rpby94M0tPbC9kWGZzOHl6Mi9GVHY2VzJaL0tmNlgvVS80NS85ZCtaSTVocStlWTUvTHUxb2ZjeWQ5dEZFaUxOdmJzYmNCWS8xdi8zVXIraGYyUWZzNXpMdU1TMmdONW5OSC9rRzJETk5tMlQ5enQ3eFY4UWg3L3JXVDhudkwzK0MvbitOa0htUDdCWWpYKzI4bS95SG4rM2ZqdlZlUS9ETU13RE1Nd0RNTXdETU13RE1Nd0RNTXdETU13dkM3RVVCYVhmZzhFSC80cTFzNHhRRWRjNHArLzVOeEx5dkRlRU45eVMxai9tTFZ6TW4vaXNTamZwZkxudW81SzYreTNGcm80bEk2TUp6N2lrbGhBNHBhOERzNVJyUHRSL1JwaW8rRGFjZlNPbmZKM2VJa0w3R0wzS1pPLzYrNjRYOHBMZkpXUGtYYk9GeURlM0RIbmp0Vk52RFlRYXdobG4yVXRNc2ViNy9vMStaODVsL01kUDB0ZWprVzZwSDZKT2ZMUHNWSHZzYTVacnRkR3VUaVc2MzhSRDA0LzVYNDdPajFLUEpmdjI5LytvUzNzZEFEeHVzU1NlVTVCM2h2SDZXZTcva1AramdsYzRmdE8vZUpZeWt2cWwzTXBKK2xlUy85blhIN2k1eko5bXpidGZkU3p2N2ZoN3ltNUh0eHVYVSs3KzNMZUhWNGJ6UGV6YW9kK2hpSzM3bnNmY09hNTR2a3lPWGVBTnBRYzFTL1FMaHlmZWkxMjdUcjdLLzNILzZQenNrMTczbGVYSHYyUCswcFp1YTlhOTYzSzZyV2lZQ1czakEzdDBxUnNPWStGdkJMbmxlMmV0cGtjMWEvUEkwL1BWWG9yNk1GVi96ODc3djBUK1hPTzU5eGttbjRlZHZIZ1RyZWJoMFNkNXpjcUxsbm5xeHNyZGpyVGVXVTc5UGc0eTMybWZ1bi8zWHlGdDdJcnc1SGVoVTcrT1grajROM0FmWlY3UXNhZUkzUUdyK21ZMTNqdWtPUFZyWE9QV01tL2E2K01VNndmVnUyYi9DL1Y1N3QxU2oxdjZneEgvYi93UEl2VnUwd24vNk95ODB5czhqb1A1RVJkc2piY2FxeG1uWm55WjB5WTZ3UjZuUyt2SzlpOVczdU9tZDhkdW5MdzNVUDBUYTVaMTNHbWZ1SG9XN3NjZTQ5NWk3eWpydkxOZVJvSll3WElla0cvcDk3MHUvU1IzanZUN25mdmhLdXhnTWM1bDZ3VGVzbHplbGUvbFB0SXJweno3UE5XaDJGNE0vOEFvSUw2SU9DL0phTUFBQTdYYld0Q1ZQck95djRBZjVLQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUI0bk8yZGpaRWNLUXlGSFlnVGNTQU94SWs0RUFmaVJCeklYdW5xUHRlN1owbEF6OC8rV0s5cWFtZTdhUkFTQ05DRG5wZVh3V0F3R0F3R2c4RmdNQmdNQm9QQjRELzgrdlhyNWVmUG4zOTg0anIzcXVmaWM2V3NBR1g0OThIL1VlbjVpdjR6ZlAvKy9lWFRwMDkvZk9JNjl6SjgrZkxsMzg4dXZuMzc5anZ2c0RkbEJQVDdSMGJVKzdTZWxaNVA5YjhDTnRIK3J2WmY5Vkg2ZHBXbWs5ZnQzL21kWFZUeXJPUUVYUnE5WHFYTHJtZnR2SHMrY0dybnEzcnI3Qi9sYTk5MXViUnZleDZhRDNrRnF2NnZlV1gxanZ1ZlAzLys5M3ZvTGRMOStQSGo5NzE0aHJxb0x3dEVPcjBlNlRORS9wNG04b2k4dVJkbHExNUlGOWYxZWVxZ2FTTXZUMGNkOUhyOGpjK3EvOGZmcjErLy9uN3VDanI3YzAxbDBmSWpUWlRQTTFtZkl6MzNNdnU3REZHZTJ3aWJ4OS9RbWFhSjc0eGJYSE05UlJxZDh6aTBmVVUrcEVjWHlLbnBWTzc0b0F2YXNzb2QxMVFmcW1jdG4vRjkxLzc2ekJXcy9IOVdadGIvNlgrZHZJSE0vdXB2cUZOV2Qrd2NlbFo5MFM3aWd5L1FQcWgrZ1R4V2NuYTZRRDdLSVQvM0ZWV2QvZm1Rejh2ZkdmL3ZNUmU0eGY3b1BQb2o5ZTdrcGY2Vi9YMGQ0c0MyMkQzK1Jsc2dmLzczZm9hczlGSGFpMEx6b1U2Wkx2QzNMaXZ0a2JsZVpYOWsxT2U5L0V4dksxdGN4UzMycHgxcnUrL2tEV1QyVjMrSDc4MzZLSDNkL1kvcU51NXgzZjBrdmlPelAzclFOcGJwUXRPcHpXa1h5Ty8yeHoveVRQemxHYzAzcmlIak0reFBYMUY5MEo4QmRmWHY2bThaM3h5YUhwbnBXL285bnFVUGRHdWx5SXY3K0UzQS81SEc3eUVuZlM4RDljYUhaTHJRY2pMNXlWL0hRL3FILysreXFQdzZsNm4wNmJvZERBYUR3V0F3R0F3Nk9QZVgzWC9OOG0vQlBiaUVLemd0OHpSOXhkdWV3bVBseEtWWXoyUnhnWHRpVmY3cTJSV2YxbkdZajhLcHpxN291T0p0N3lHcnhyYXJaeXJPcXZJZlZWeDZ0L3hiK2JSSFFlWFdQUk5lcHl0eWRmSDhlN1hyVEZibDFmeitDZWRWcFQ4cC8xWStyZEtUODRiT0tmb2VCZWQ0a0lWOG5BTlo2YXpTZ2NZVnUyY2VhWC8wNDV4Y3hYbHAzRjVqNWxYNjAvSnY0ZE1xUFJHakM4Q3p3dk1oODhyK3hPMVVGcFd6MDFtbEE3VS9jbWJ5Wi83L3loNmFFL3RYbkpkejFzcTlWaHpaYnZuVTlTcWZWdGtmN2xqNUkrVVVQZi9NUnNqYy9YK3FBOCtya24rWEsxdWhHcXZnUnZSK3hYa0ZTS3RjVEpkK3QveGIrYlRPVDlLSG80eG9EL1ExbnQyMXY0NFpudlpVQjZmMnZ4WHFiK0FhbEhldmZGTm1GNjc3M01IVG41Ui9LNS9XNlNtenQ4NDdHUmUwN014R0FlVVdzN1E3T25nTisrdll5Y2YzNGlrdmlFOVR6Z3Q1c3V0VitwUHliK0hUTXQ3T1pRUEtLVlpsTXlkM3JwVG5rV2RIWjVtT1BlOUsvcTVlZzhGZ01CZ01Cb1BCQ3NTK2lQbWNnblVnYTVoVkxLcExFM1BiSGY3bkh0aVJOWUJ1SGxubXJpejNCdWRpV0hkN0RIOEY0aCtzdjNmV0p0MzY5Wm43R1RPdVVkZVVnZmhPclBCUlpYYlhId21QWFFlb3I4YTN1dmF2WjJOSXIvckxudWNaN21tOW5mZUtlKzZYOU14QnBqT2U2ZlJKZi9NNGhzZG9zL0ozOHNwa3pOSjExM2ZMeVBTNGcxVWNTZmZrVitkeGxJUHdPSzN1MWRmblNhTStCNTBybDZQeFFPWHNsQTl3bWZRY1VjV2Y0ZlBJUjJQK1dwZXEvSjN5WE1hcXpPcjZqcnpFRzFYR0U2enMzNTIzQkYzTTB2a3YrRHJ0LytqS3p6Tms1enZKcXpwblFqbklVcDJOeVBUdmZFZFhmcFdYN3RkM0dhc3lxK3M3OG1aNlBFSEhqNUhmaW1mczdGL3BmK2RzRWZuNnA4c1hlZEQ5anMvUy9wN0Y0clB5UGErZHM0UlZtZFgxSFhrelBaNGdHLytWVy9RMlgrMzd1ZHIvTTExVi9WL0w3dXp2SFBTcS8ydmVYZit2NW45ZC85ZXlxektyNnp2eTNtci9nSTR0UG9iaG4zUjg2ZmdybDJrMS9xdmNiditBbnVHcnpwOW51bHJOV1h3ODlURk9lY1dzZkVVMy9tdjZxc3pxK282ODk3QS85YTdXLzNvdmE1dmMxejdrUEpyUC96Mk56cEY5VHAvTjVic1lnYzZGK1o0Qkdmdys1WFhsVjNtdFpLektySzZ2MG1SNkhBd0dnOEZnTUJnTUt1amNYRDlYT01CSG81TEwxeDhmQWMvaUFsbTcreDdNMVRxQy9kTFBSQlZucS9aanZtYzhpd3ZNOWpJcnNyaUE3dG5WL2Y4bjYxZTFGYkUydlo1eGJ0aWZlNTRIY3VoMTV5SjN1RHpTVkd2MHppNlpIdlJjb0hLa2xiNXU1UnRQNFB2djFUNVY3SStZRTM1amh5TlVQNlB4SzY3cm5ubjI3M3U4VWZuQ0xJOHNYcDF4UmgwdldNWDdkamk2THRhcFp4UGgxek45N2NpNDRnSlBVUGwvN0k4TWZtNGw0MmhWQjk1SE5BNm41L2dvWC91RmMyNThWMzFVWnlaNFhtUHI5Sk1zUnUzOWhiYkgrUld3dzlHdHVBN3lxL1MxSytPS0N6ekJ5djhqSzMwdjQxVjNPRUxPVW1oZno4cnY1TkY4dXpNeklROXRsbkpjTjFVNWpHM3EzeWg3eGRHZGNKMlp2blpsM09VQ2Q5RHBXL3VzK25pdjZ3NUhxTysxelBxL2p0OWQvOSt4UDJjNzlTem5idC9TdlFQYWIzYzR1bDJ1czlMWGxmNnZ6OTlpZi9mL3lPN2pQL3JIVDFicHZEMzV1RnJaWC9QT3h2OGQrNk1qdjNabC9EL2g2SGE1ems1ZlY4Yi9uYk9PRmFyMXYzTGVXVXlBNjlwdk80NFErYkNmempHelo3STVjRlplbFVlMWZqNlpXMS9oNkhhNFRrKzNVL2NkR1o4Vk14Z01Cb1BCWURBWXZIL0E1K2phNzFHNGtyZStXK01lNzc3WDJNQUpkbVYvVDF3VWExNDRBTmFVajZnRGRqd0I2MXBpZXJxdnN0c0hYQUdPNFJRYVQreHdwWTZ2QldJV3ZtNGtmaGJ3ZmF5K0RzZHY2SHFWTXhqeDBaZ05iVXZqQytpcjQzWlZ4czcrWFY2N2FiUk91Zy9lNWJoWEhVSDJ1eU8wOTNpTzY1U3I2UUtSNW1yZnluVEU5ZXdjQzNFTGpiTTZCNk8vejBVOTBBMTZKZGFGMzNINUtVTmo4ZFZaQWJWRnhkSHRwSEdadEs3S2VWSkgvUzJoSzNVTUtBOUxYQS83YUt4UTB4RW5wZHdxWHRpaHNyOWVyK3l2OFhIYVBXMFNQWGw4Uy9QeStIYkZxMlg4aWR0Yy9aaHl5SXFkTkFHMW44Y2ZQWTZiOFh0WDZyajYzVEhTKy9zRW5UczkzYmZsOG5nYzJ1c1RjUHM3YjBBKytwdVV5SmpwQmxSYzFJNzlLeDVEc1pNR1BTcnZtY21yZkppL1IvQktIVSs0UThybEExZGQrWllWZUk0eExyT1o3N1dnRHpsZlJaL1FzYW5pRGIzOVZ2MXh4LzRCOVgvSzR5bDIwaWpucU9PZ3lwRjl6K3kvVzBmbEJQSDVIWGVvbkovdXg3b0NIZHYwNDNzdDRvTnY5TDBjM0ZNZFpOZVZYOHVlNzg3WGc4cisrRExsMUIwN2FWUW1uM2NxMzg1MytvZTNtWk02QnRRR3VxZkh4MmZYcmJhVFUvNVBvZU1IYzh6czNtcVAzZXE2N3lWYWpWdCtYOHV2Wk9uV3JyZWs4Yklyblp6VzhmUzV6SGRkMmY4M0dBd0dnOEZnTVBpN29Pc1lYYy9jYXg3WjdVbU1kWkMrSzJXblRGMnJFdS9PMW9MdkFXOUJYby9uc080N1BVZFNvYk0vbkFEcGR1eXZzUmJXT3p6M0Z2UjVncmNnYnhhUEpFN3VNUnZudElnOU90K2xVTzVXNHhVQm5uV2ZvenkweHlBOEpxdjh2K296UzZ0NUUwT3B1Qmd2Ri9rMGxxTWNjc2NwYVQyMS9pb3ZmTTZPWHBCZHkxRzVUdENkTVhHT1I3a0lqYVYzUHNPNWUrV1Y0UXM4UnFyMTgvT056c0ZXL3A5eXNqSzlidG5lYkcvLzJJM1lwOGQ4c1cyMmI1dTJBaWZpY1dMc3JlMmkwNHZMN25LZFlHVi83T3BsWnJIL0ZZL29OZ293QjZoc2VwS2ZjMEhlWDdLOHF4aXc3Zy9TZURleDF1eTNveXJ1VlgyTjdxMVNyaVh6R1N1OXVMOURyaE9zL0wvYlgrY0p0OXFmZmtsYy9WSDIxMzZ4YTMvOEJubXB6eU5mdC85cWJ3ZCtSSGxWNVEvQXJsNnErcDVnTmYram5uQ011Z2ZsRnZ0cnVlNkhiN1UvT3FRYzFjdXUvY2xEeHc2MXVlNTMyY2tIZjY3OG44dnJQai9UUzNiUDVUcEJ0djd6ZlVVNnQ4ak9YNnR1SEN0NzBmNTEvOE05N0svenYrcmNjcUN6bS9keHpaTyt6TE5kUGo3L3kyVFJmUmdydmZqOHorVWFmRXk4aGZYaTRQVXc5dis3TWZ6K1lEQVlETzZGYlAyM2ltV0F0L1N1K1k1bk9vV3UxN3J4dG9xZG5tQlgxL2NzTTh0UDR6K3J2WkVCWFplK0JWdzUrMUNCK05mdWZzMWJzS05yVC84SSsxZjVhZXhIWXhWK3hpbmpDQjNFTFR5ZURuZW12Qzc5anpOeHpIMlZEK09lZnlkMnFuWHdkeVJXc1pLc2JocVQwWGJoOGlpeWNySzZ3dis0cmpXTzd6S3B2WWhUTzFlNGk4ci9hNHhmejB2Uno1VHpyVGhDTHdmZHdaMW8rZWhGejlXZ0g1Y25pem5xZHo5L1N6dlNlRHJ5ZUJ2d3VnVThsdXg4UUxZUDIyT3p4TSs5cmhXSHAvbFcrdUI1NHNZVkI3dGpmL2YvUU51V2psTWVkODA0UWdjY2xmSnhyc1B1LzEzN294YzlqK2t5Qi9Sc2owTFRaVFpXZldYMjk3bUlucTJyOGxMOUtMZlk2Y1BMNGQ0SlZ2N2ZaY3IyV2xRY29ldUVOTjM3SCs5aGYyU2lyV1V5Qjk2Uy9TdHU4Vm4yeitaLytFTDFsN3FQQXA5VWNZU3VVL3gvMS84RHUvNE8zNVRwUEp2RDcvaC9yVnNtenozOGYyYi9qbHQ4aHYvM0QvWDNjN0I2N2xEbktSbEg2T1hvMmNHcWZYdGExNFhPTTZ1em1XNDN4V3IrRjNEN1YvTy96bmRtNVhUMjc3aEZ2M2ZQK2Q5Yng3M1hPNFAzaGJIL1lHdy9HQXdHZzhGZ01CZ01Cb1BCWURBWURBYUR3V0R3OStFUmU5SForL1NSd1g0VC82ejJ2YlBIMHQ5cEVXQnZUUFo1aEQ1MWI2bkQzMmxjY1luc1MvTjhmZjhJN3dEU0QvczNuc2xUZG5VNXpVZjM3ZkdwN0srL1k4SytJL2JaNlQ2M0xNOXFiL0N0OG5kNzlkV0craDRRaDlZYjNiS0hUUHNFK1QycmJWZm82dkxJTW5WZnBQYU5yUDg0MksrVzVlbWZhbStlUDd2YUc3SnJmOTdMUlByNDM5K3hvZlovYmJ5Ry9mMTNCOVErOU1NTzdDT3VvSDJwMjhzVzEvVzNSVHFzN0UvYm9VODdQUCtzLzNPZC9IbVhtKzZoMUgyYkFkcWJ2bXVKZlg3NmpPNngxWHkxVFpLRzd5YzRHVU5VRi82dW9heHZLNmhiVjU3NmdzejJqTDM0aGxXWjVLbnY3MUdaOWYxeUovYjN2ZTVjNTMrdEorZVNkSnhVV2JqUGQvU0t6SG91UlBPbFBhamNWM3pUeVg1eFBWK2h2Z0I1cXI1TnU5eng1OW5aQWMzSDk1YXY1TWVQYS80QmRLZnZZbE05TXViN2ZLWFNzYzk1dEU3YVgzMVByKzVsMS9tVTVwRzkyNC8yNFAzd2RFemduRk0ybjNGZ1EvL3R6R29jWnYyME01WWp5K25jc0xNL2V0VXhDLy9wN1VqdHIvNWQ5NXFUNTRuOTlWd2k3VmZMek41ZDVmT3N5djc4VHp1K01pZEF2dXpqUUg1MFJ4dk8vRHE2cS95cTUzdmwzWFdCeXY3cU53RnRNWXNWNkpsUlhkOVFWNTBmVnVjYk12dFRybzdsZWwzUHBYcWYwbk1mbmYyUnlkdlhNOURGWFhibkZwSHVxdHpkZUhmU252VGRPdHFYUHRwNWlzRmc4S0h4RDRna2FxTHJkNzBXQUFBRWVXMXJRbFQ2enNyK0FIK2lOZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWVKenRtb2x0NnpBUUJWMUlHa2toS1NTTnBKQVVra1pTaUQ4MitHTThiRWpac1dUNG1nY01kSkRpc2N0RElyWGZLNldVVWtvcHBaUlNTdjNYOS9mMy91dnJhMHFGMzRPeUhwZE0reExwWDFOVm45MXVOK1h6ODNQLyt2cjZjMzdMZGFjZVZkWXRWYjUvZVhrNTJHUHI5Syt0OVAvNysvc3ZTbldzZWorai8ybjd6K0QvbVQ0K1BuN2FBSE1CYmFPdUs0eDJ3WFdGMVpINEZjNjlXWnAxekRpenRQcXpkVTRaMGora1YxQSt5akZLYzZTS1YybFcvK2Y4a2YxZmRVdndSUi8vaWMrNGlDOXluTXo1bzhLSVgrS2FaMHVWVjEzWHNaNlp6VVZaSHZKamJNcnpMRnVtbjFTY1dSdEl1MVMreitEL0RyYWIrZi90N2Uzd2pvaDllS2IzeDB3amZVR2JJTHpTNHB6MlIveWVWaDNMTjd5WGtWNzNmVDZUYWRLZXVySXQ1eHo0NlA2ZmFlYi83RHQ5bmt4SytMRHNXTzBteDFUS1VQY3ovVlRlSTYvMDM2Z2RaLyt1OEVvZkg5YjViQTRnSG1Yay9TZnZQWXJXK0QrRnpaaHY2ZWY1Ym9EdHNXSDI2K3liOUwxOE54aU5GZmsrbXYwL3g1RDBWWllseXp1cjd4S1BvcTM4ankveGJmYTFuazUvTCtqalNZNjEyZmRtODFIV2cveDZlOGp4UE5Oa3pPazI2V1NaYnZrNzZLL2F5ditsc2xHK0E1WnQrM3Q3OXpYdEpQM0Erd1JwMGFaNDVoVC9aenpHSlBJaXpWNitKVDNxL0srVVVrb3BwWjVUbDlybnpYVHZaUy81MXBUcklKZXdZWDBiemI1cit2ZlVYN1gyZWJVL3JEblVtc2xzelhxTjB2OTliU08vODBmZi9FdHJJYXliOVBOcktNczU2a2Y4NHpHN3Y1VGU2SHFXMXl5dFViOG03bXpOYVZibXY0cjlzdHo3STEvV1BQS2M5c0l6dWM2ZWJTVDNYamxuRFpkN09TYXdkN01tdk5zNnk1bnJpWFdQOVdiV212cTZVb1gzT3RhOVRDdHRWOGYwR1pCWFhxTWVwOFI2SmZkSmw3M3VwVEtmbys2WGJHK2ovczlhRzdabVA3NXJOUFpYdk56SExlZ2pyUE90Q1Q5V0wreVhZMTcvdHlIM0lSQjdHWFhNdGNxMFZhYlo4eHJadC84VFFaelIvWkgvUjJVK1IzMytQOFgvR1gvMi9wQjI0cHk5R1k3NE0vL0pXQk4rYXIzNm5KZDdBdmg2VktmMFFiZFBYcy95eXJEUlBoUDNzejl6blhtUHlueXV0dkIvMzBjcG4xQ21QQzh4MWpGK01wYlJudGVHbjFJdndoZzMrSThBRzlPK0VITnQ5MzhmYzNLUDhwai8rWDhpOHlqMSs5My9zektmcTJQK3o3a2RPL1Ira25VdDlmRXBmWU8vaU1zOHRsWDRNYnRuR0xiay9Ucm5ZY1p3NG1MbnREVjduZmd6OXlpUGxZTi9hL0VoYlNkdHlwN1p5UCtqTXAvekxzaCtXOVlwZlVmZnpycGlqOUZZUmR4TXIrZlgvZG43d1pwd3dwYnFsV0hVZzdtayt6Zm44dEUzR00vMzUwWjU5VERhUU4rTFRCc1RQL09lbGJuM3RVdG9hYjFBUGI3MHYxSktLYVdVVWtvcHBaUlNTbDFOT3hFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJHUk8rUWZoNWVPYXRrN2pwd0FBQUZUYld0Q1ZQck95djRBZjZXRkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUI0bk8zVzRXbURZQlNHVVFkeEVRZHhFQmR4RUFkeEVRZXh2SUVMdDZZaC80b0o1NEZEbTAvNzYwMXN6bE9TSkVtU0pFbVNKRW1TSkVtU0pFbVNKRWtmMFhFYzU3N3ZUK2M1eTdWMzk3KzZUL2R2WGRkekhNZHptcWJIeit3WS9TejMxTDExRnN1eVBGN0hNQXgvdm9kMDc3SmpsWDJ6WVhhdHpmczl0WC9WTjcvK2plNWZ0dXQ3Vmpucm4rVjZuWDM3eHRtL3VsN1QvY3R6dnU5Zi85Zm5lWDdhUDlmcy8zMWwyM3J1MSsvYnR2MzZ6UGZudi8yL3Ivb2UxL2VyOTBDdTFYZjduRVhWbngzWGE1SWtTWklrU1pJa1NmcjNCZ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQStFQS9Ddm1zdUZMYUttWUFBQUVGYld0Q1ZQck95djRBZjdHa0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUI0bk8zWDBRcUNRQkFGVU11Uy92OXZJMkpxUVVrR1g0SnNsam9YRGpqcnk0V2RCeDBpWWtoaTQ0ei9zRTUxRitwMm9Mb0QzM05JYzh4bll3ZmQyTjh0elMzcm5iaDIwSkY5dkpQcXJuemVtTzcyUE0vVDB5VmVPM0xxb0N2N09LYm41YjZuamZmOHZ1aWdBelhhdDJETHZZTXUxR2pKLzRRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEwRHdBbldob051d1pVQm9BQUNvWGJXdENWUHJPeXY0QWY5VHdBQUFBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCNG5PMTlLN2pzS05iMmtrZ3NFb25FSXBGSUpCWVppY1FpSTVGWUpCSVppWTJNakl5TkxKbC9VZnVjN3A2ZTZmblUvOVNJV25QcFBsVjcxd213THUrN0xsVG01MzAybmdEYXM1RXR4dGRHWUlland3SndYY1VGYXdEZmhYN0Q4MklkNElFS0VBRzJDaHZRbmlUQmQ5MlQyYkdFd2ZITmZIUDg4VU52QUpXYjNVRXIxWEV6dHI1c1R4VVU0SGlkUU9FbzZURHdZYm12S3ovM0NSS2czRlFzcEYrTkE2ODNnYmh6WEozYjNzK1lYa0pzTVNuOFF4SHpsZElQRHl2VWE5c283a1o1VGlJNDlaWmtVRVBNWHprV3lOSStUd1l3Sm15ck5MaVBTVzByL3U3cmJwQjM3dHRIRjQ5eXhiRDRqWm5nQVR4UnFvTnhDUS9SRkFrcnI1ZXloVWlUZlF6Nm9hN0JaYUczSFg5eGo3bXVmbjZDV3lrdW96VmpnNGsyTE5iNnVNWEF3WUp0RHA0ZEJIVlBvUGp2cURsd1hQalQvVHd2R3c4dlA3ejh0N2hPeERvU25wTk53cHNGY0NtMkZTQVY5c1NjTFJ6VkhqSnd3Q2NQaDNWTGNXQUN2clROWDdmZzJ1YkFIOVV2dUpuN052dzBIVHgrQUlVTHRCNDNOMVBxRzRISDRVN2QxVUpSMStIVzdmUHJwNmlVZFUzZzkzdVBqdnMxeUNVdVFxWk95WW9MR0dzNkdBbHJtMDdBdkcyQk9kZ1AvT2NDS3FkMWdWWEZmREtvaHRrbE85SHZFWUdicXgyNFhVYmhZZGVTS2M4THFsSkZKVWhYWXpCTlp3UEdQcnY0S1M5MGFXaVRacGoxMVFuUnVGaUdQc3JLSEtnU3kwWEx4ZkxqS1JXVzFEd1BMT2syOW5NMHhlSEFmOVkxbTNyZ1l2QS9wS0pLSC9EZzlsd2JQQmxQSEUwbFR5TW9OK1EyNERxbkZqMEpuYXJxL2RPTEIxbEJvL2ZDZzBnTnRxc0lrRXlnY3phYnpnTk5nMWpxeVBsQ1kxaWRKc2VZU3IwVGRBUmx1eTdLOWhMOHFNOEpNeTRZYW1Vb2xNOC8xRHcvblMweDZTUnduVThCUFFEOWYzZ1VHaEtNQy8vYS9Ra2ZYVHhLZE1LaHQxWm5tNXBnZkVrc1BPUzRsWDNnUnZNT1VXcGQwRzhsVzFCaDBmMEJpRGI5R0ZnU1diL05QT0VYcWo4UXFGbHZhQUNBUnA0WC9EQTJOK0dCclI4MlNrYnhsMGRiOElVRmQzWXBtczgzUHl3YzVFQjNqZ3FOQm01TjRNZW0zUk50ekFYS2F6NC85ZWpKVE5wcTd3K3pGVDJBM1EvYUpYZURXb2hwZWtaVWVBYUJFUFNFSkJHQnIydFE5amliUmJlUWJmTDRDV3BCVDVueDFOZjYzb0Nybmh3K2Z2NlNodVhjNE5pR2tib0c2VUk1K3JYaUNZWUwxcVFDT0ZXdHEwc2NEa1BEZHJScVl1c1BUQXZvNWVkRHZBTHZnSG12QmFFTDV4Nk5PNlJ0RjJvTFVDN1VCU0NYK09QdlJHdnhGY0xxZC82aFZmOUZ3c0tBTS9UY3FNR1VrWldTT0hqclZjQ0ZTc3I4dVhNU2o2TVNpWjVjaExNSUR1akpuNDRyT3daOUJ3UnpyUmhHRU9NZFVTZ2VTMG10N3ZlbVdOMmJoTWFvQ3JreEM4djYvaXRMai9xbzZHUllqQjlkTzByRW80N3ZZd2lJZUNTZHAwVFIxN2ZlRHhDZW9oTllZR25YSGlEc3FPdlJFRUJzekkvN2NtNndiU1NCcU1aZTF6bk9oTzk2UWtmUG5xQlJQUlhHYm1ZUTVHdUVST3IyckdVN0NqeW8vZmdXWWRQOFBpeTE0cUtlbTJyRzcydUhNRUtmVzNBbzllSWt2eDBBdW9mSG9KSGI5c3h3L1RRTWJzc1p5M0ZnbEZqR2sva0orbmJQdGZib0dOa3VlUFZJYm96N2pXOXluMHErZ004MXJQSEI0UDlJNEJ4MXFZbng2dXVIbDQ4TFp1Q25GZ3p0MTlkaDdCaVZob2xiV2hjWk9qNDh4MDFBU3FNNTh3TDlBcXppSk5OeFhSVUJvUUI5UFVpRkZneHJCTkQrTThiS0dMcmpyL25wc3JwMHYxR1RQWCtDQVN3Sk44YkhCclhmdS8zczZ1ZHpEY1Era09PaU0vaTI3OTdjTmx1bTBXZVZxSmNNVWt5TjJJMnFxUGtSclQ4WHR5Z01qU1ozM1M0M1F5TitRbnNJZ2wydjB3clg0cGRWMUZjQ3NndzNtZEl4ZjJwcmZvSmxsR05IdTc5eUZzdkgrUi9RNDBUWUxoc1NQZlRMUzdUYzd1c0l4VURkVjkzSHNVMFNBL3N3NVlDUUErUDc3ZWprdkRET1hBYmE4bmgva1BPdWRzOXgzMDVhb2dzK0l3VEdEWU9Fak9CQ1JaY0ptYVVwbFlLNkpubllRWDEwNVQ5Qysrb0xXZXh0S01KWFNYRGhnY214OG9EeEM3aDh2VEtYSytqOTRGd3l0L1lnN2Q0cGtHemNPTGZXZEd3WUJSekJRRm91UXIyQW8rOFlCSlZsOFlXTGpZTlNVOS8wZ2NhRGJUNWttRW1CNmY1cy92VHlKMDROWVlaa3hLSkhNN2tsallhOEk2c3BQK2k4enlRRkFYTWZITjhKQTE4MVBST3k3VmtjeDBKU0l5MXJJbkZIVUMzUVpSTCtJdWRtcmNFSXd1RWwxcWt0ejVNekhqZnEwT1RNeURqVVRUbVpHWUhQaWhtS0xCdXM2T1JmS200N1NJTEIrc1pGRmtMR3NZWWQxbU5zdjM3NHp1Nng1dzNMblZ1RGppOXpZWjludUVrVkYwVUlNdVVzZWdQU01kb1hkSUViT3BKclRNYlQ1ODdCQnFITjdSekltUWdQNWFPTFJ5bm1ITlI3RWpmS2IvREx4VzVrcVBpazZMZnc0WlY3UUhMMVVKZytFTVpyd25lTWE5ZTl2cUVMSTdnUGExZ1habm1SRXRaRngvZWF5RUdwelVMQ09jSjFUUkN3Mjk0MFVEMjVYd1RUYkpLUXhtZFhqNjdZaDkxT2xSVFZJNVpmYnBtSFIrK2tjQU53Q3l4YWhSNFMvMVYxbXpiSWsvZkRWcWFiMDdDNDVUQkZTNUUzS255My9SaGRyM3VkL0RjMVJsenAxTGE3K25wUjJCV2dlaUhoZ3NjSENYVVZTSUErN3YvenBuVndtckxhOXZWVTJhTzdiek5RS1lqNHRGdmdYdFUyNDliYTgrTmdJQzJhWkNZUzRTbzl0aVhFd01wbVdaSTh2MTZTZzlpM1lGODJuYWpmeUh4b0hiak02d1V6MktFK2dJUXlJQmxRdWhENmNmL1hOd2NWejQ2ekMvM1ZEdndzVG5PK2FydEdtVDFDdFlyOFlBdW83WUd6bFVPbjh2WUVhWTVWa2lrQlV1bVFqMEJNeGQ4RzBxNkVpLytKSFFLM3g2ZHRZand5RTBaSWsxSnhzTEljdzdsR3ZSN2w0L2ozV0J5NmFZM2tqckwxVDIyc1IwSDkzUkMzOU5KOU9yWXFHcjdMRTNVTXhHWUYyRG9kUU1xclVraVpMZ1B5MmUrS3NEYkM4Ynl4d3phT2FwRGxBYWRqNWtkUGNFOHREUkQ2clRZZFNCZlMvZnJjeW45TG5jbEs1dHRWd003c0ZqcTZTc2VEdnAySy9jbDJQR2Q2anVPTTZBVHhJUEgvQ0RGR0tuRnRtUzA3a3cxSjhvMFVBRGNOUHdQZUh1SlA3Q2haY2czWlpHWEhDcy9KUmdiS0Z3M2xtUW5TK3RHbC81Wnl4ZGhJbGhBZnk4Rmg3TWZIMjZIb3BUNFl4aEFBTEtHVnVLOHovNHNiUk94YUNJdTVSZkhLeHE0QjBuRng4T3pZTjNBYmdUKzRnOGlNM2t1c0JwRDN4U1VPeUtja2dUc1A0cncvSHYxUnJISVlqVGF6Y0ZBRE4yQzhZWm1HdU9sZVBZUUhoUDNKVXVlMlh4ZUc5Wm16S1cyamhNYyt3RVF6SXg3Q293eThYeWNONTBuK3doM0pyWFVQell0RHdjb3RVbzF1RUdYanI0U3pzcy96SDNOemxjRHVUTS9NUE1pdEx4TzE0QnRTS1h4TWRGOHh1K255d1R4MTlYMUZDa1RJZW16QzhTUVVTTk1SRGl2dlRnZ2RYeFV5N0w5ekIyTUIyNjh0OG5KSWtWWXVvQm16cFlqMEd2L08xTmFQSjRDUjc0eVpoU2g5QytCdkNiTHRPbDNvcktmYk5xZEdhR3gzc1lhOFFJelNlc1o3TnJwUVg1ay9EQUcyRFVYckc5TGRHTkJvczZMMjM3bWpnOE4yb3VaTHF3d3YrMExwSWszUy9ySm9POERYOGZINkYrY0UwTEdoYjcvcktXZFNBbTBnd3lTc05iOHNJSlJGZzNqOEtEK3FPaE8yWjhCVjY3V0ZGMGE4Tko2WjZzQWdDZWpnRmdqenRkKzV3MFUwaklFR0laYXpjVDhRYk9TWUI1RDFRYTcxRG9pZkZsbDJ0TzV6T20xU0hxb29Sd2Yvc0ZyZmVkcEhjWVFyZHpBUktVNTYrL2JuNFhXSVdmUXR4U2FWcDQvb3dDS2lXUkFKUFNkSmh2M09IWU00OExmb0dIdTdtVzJJRzB3dmZvUzVqeG1Ed2lIK2o4ZjcveTdqUXUrdTROalJ6RUU5cUo3NDU3eXhXWm5MREh4NkJQVHdPbWFKR3lQQ3JIOXZhTGt5V0dxQitNZThTWHd4MXRocE14TkJLSHo1cDNZUVpqSEZBeE9sMWcxT1M0Q0lta3pBemFzYTJpNmY2OVByUDlKeTJWM0RjVUpUb0Y0amJ4YnkvaTVzZ0NVRWVnTGk0b0dMRGEvRTkxblM0MzVwaU9TVWcxQ3VBSWh4RUI3cmRTWTNLSVFGSFBsVk8wSUNvWkpzSUhwRzYzalhqZ2F6Z2FLTFRadjN5L0lMTEh4UVpneFc5ZGFnOW11Q2tTZWJUcnIwWXN5VUw2RWtSVTZWdWFvS1NBTkIxMm5lKzFFTFBZSjFMUjh2Vk9aUlFVUTVrNk9vMG1mVjdGZnQ4T0FsV1ZydnJseUFuOXBoMUtXazR6V1FUNjFxY3FnUHk5SHhxZmgxSWpuajFrTFllbkNEekt6V2RteWxyV3c5QzRNUWp4NFZ5YmhaN09qSGVaOFYzTDQxZEFQOWhhYlNFUXZYYlVXRGdYcWVLL3lxSGU5Tkc3RytpejZvVEw5cnh6MkxjbklNTkkwRCtlenFwL3dVTDJmOUQ1cEZ3SElTL3NCK1VJWVlwbTVDMzF1Z3JseG5XeFY3b2F1SGttY2FvK05aMndOMlVwOVhKeHVHaHdwN1JtV3diVEh2M2dHTWV3c0MzWGUrQndOTS85VTdrQjAzcUNZa2tlZitlUHBqMnZqRDBEQ2ZDNEdPbm03ZDlvbno3U1lSK3RwMXhVQTFjMFBvRkVQVnNXMmM4Ujg0U0JpRDQyVm04ZSs1eG5RTWtzNDhVRXBhLy9TT3NFQ0RqKytRK2NqYy8rZ2RvYnNXTkoxTGZLNlBJMkFPRjMwWFlaOXJFVkpPNHYrZ0o1ZCtTVlVod212eVZ3R0FnVXlNbTFyWDlVU1lCRTVMbGNHbEJmZk1vVlhqQmd5am5NL0U5LzNkTzdTYVo4d1M3MHgrWVNoZDVhL2VJVUpxZHVnbzBXYnl4L1VmbzcrNTlGeTM4MExsQlgyU1FYVkk5MUtocEtBUkJzNENBTlZuNi9lWTdocE5IKzRMcUR3M2h3eFBpN2M2eU8zS1cvZHROblh0ZHZhTzNjYzdNNDdtdFQzSS9PNTNIZW1uZDR4dUh1ajdyLy80K28rWEJLU2tNM0JML3M1Tm9xUzJwWU9vcTN2ekxnQjBDNjRpb1FQemJuU2FHajhUNE91TlpHbnhzR0xNUXphejh6Mnd5a1VKc3htZ0hxMGUxUTZGTElDbEc5R3VUOGdLc3B6MU1MbG8vbmFIeTBjWGo1STdIajI2Ny9WTlZpV2xFL2IzbThxcWlITDhwd0RBNU1JMG5VZ1lEUjA0Y3VUWjFBWkw3STJBeVhpNjdVRWM5RHJLTWczYUVXWEFMcW1zQWRmZG56Qk9QR2VkNitTRCtKa25pS2JLN3MwMm8rbUhKY0hEUjh3eDF0YTNiWDN1b1Y1cXJtN3QwcjNUVS8wd0RFTjZBWXZIN1V4WWhqUDluTWhWZy9hRVRUdGVCZUwrWGhWK1dHT3d2WTZBQVdFQkd1aDJBMGRJQlhVaTRlY05NWXJ6YTA3WFMvMVVnajhzaU5ubmNvTTk3dHlPaGxoOU5rTkNFRmMyMjdzQWtFYmZGNmhjN2pPV2JYczBJVjA1LytHN3JkZmNTalJ1NlJUWUV6VkswM09FZDRMY1hneXFSSi8zYUtnUGdvMzBqSHIyZ3J1Mm85LzlPUCtWNEJ4UTY1UmRsM3FkRi9EenVqRzJHM2lsNG40WEFQeTFTamdqWTc0bGdjKytFNjYzWTBaN1pQT1hHOTNmQXgyNnZXOGQ5NGhBZDhVd2lWRnpVSy9qdVJLYVh4WE1nYzRnUHdnemVVSXl4SkI3Zkw3L0JUV3pwN2lIZmNzK2VIdHhLR0cvc3R2UmdtR2hQd1dBanREK1VaTWw4cWZNYk1HczlqVDBncVRQZ25odFYwblhob0JIN2ErbVErZ2EwdlRzTVJMcUVwSUkyeEpyMTFIVy9Zd3phVXBvRzl3c3gvK0ErdVA2aVJwTHVwcFNpUGZGeFBDaUZjVEN5UGJJVHdGZytzam5oY3F5dTRhUFBDSHpqVnNRbnJoT2Q5bjB0bUhFM1BpMm9scUFqc0I0aVZ4U2RIYWFBZEplV2tydDNXRmNLQUhLSHNoYW1WQkZsby9yLys0Z01ZcWEzcU1Gb1dpTzRQZWQ3SGtHTVBkVEFKQk1JY2g1RHMxUkExQVB6SjRRN1NOU1FOT3hKalN2WVo4NUVBSW5Nc2tCbnNTTDRMWkpGYXhGeHpoWXlmaEpjdFhFQ2pTb0U1WXFlWjc5WWgvUGY0dkx2Tk1hTHlPSkRYaXczZEhjTzhZeVVuNFhBS3FMQWZYaUdkYmhUemZQN2FKbzc1UFZtRldPODE0SXAyc0U5QTI3bXFYanB5amt2cUFzcFlpZk1oaUgvTmNwejBNSDl6b28yWkE3bHh4Uk16NjkvalRoS2ZvbGlQblVZamJ1RjBJNEFmMWNvQlFmc3dCd3RmV2F5ZXlyWlR6cXV1MVQ2YmtRa0lMWTdOb3IwMnB6OE1Sd2pJUzRDTjhsUENZWmRIc3pQNHlqQ0t4OFRnWXBjRGNSWXBuVUFuL3U0K2svMUdHa2FlUkVFN1ZYYkFoL2toWUJvYjN3aUZpWG53TEFXdG8rTzNYNG5TbWthMjhES1NOWDRjak5VNXB1cm1OU3ZYajBsSHRid0hOWWRqR2tyRGsxaVJGZnJCcXNNRXZwR1BYQkdJb1J0dFdaTjlvK25nQlVjS0UxaDR1NDJiU2tiQm96cFZQOEl0aWQ2a3p1dlloWWtPcUY1NTJyVytFMWJmYWgrQTRNdXI5UkFEMGlkWDMya2Nad3o1Z3FlSTFpOXRXSnV1N2psK01qYVUwcnMvbEF1MW9oa0FuK3Q4K3VmbXJnMGxtVTNhd1ZHSkdodE5Ja0hqODFpcFdnYlFaMDZuV0lYU0NISlk1QWp2ZmRoVG9PTkdnNDI0TzRtS0c3ZEhYc0Z6UEFPL29LenBGUHBERkJMM0tMdndTK21RVUtHOFlSejFJcU5jREgrLy9MN0duY0ptb2pCRmtlTWpxNkpGb0lLR0d0Wk9aQTN6NG5lZ3FlRkFhRTEwd1FySyt6ck5zQ0YrdUh0cW05TmxxUTBjQTRmR0FieGpiZElnTGxqRmdCTWQ5ZmdBOTZCU2NRRGU1R0xhbjN1OUdQK3ordytsaGVBdklMUVRvL01RaWlCenZZekdndlN4aWVWa0luOVFjTS9IWlBiaElmR2M4RVJsUHlncnpKRFBVR3hxVHFzTy9NM2xGN1BXdG9ONW5BRjAzbHI4QjNXRkg1Y1B4Y2R1L05rODVQTC8rMkxzWDIydkc1Q3ZTTlRqTzN6VWhMVXZESmJJcExsaUtiY1IwUDhwUWVpVjVYM0FTemFJRzhNWGQwK1I3am9BdG9RQWNDcDZ6Uk0vQmxFaDgyL2s1OGxwSVh0c0dwaTBrN2VlNlA4ejhmQXpoMFd3YURXK2toa1F2NnBiVWtMQi9Pcmt5dHQyV1dJbzhGZXFibEpVbmVoa0hxYTl6TUZ4RlM1R3doTTNYNk9PRGFnWGtUMytzL0UxK2VWOFhwdlNtRFFXSkQwdlhwOVUvNUlYSjZ2NFJob3FRMVU3SE5idGFYbzdPSUVTUENGRHo5TkRONWo5dzJJcW9Wb05KUy9lclI5TitEUTRHQ1VRVGx2eVkrdUZ1UHZDTUtRZ0JJemNlOTMzdDJvV1hnQmRkclQ4UFhWTWxzY1NpUFZVZ0Q4TTIxYUk4UERMdmRsRGdRdWl4QWRMQzE5c2pEMVlKTTIzdHdDTFFabGZ3ZmlTL1lLc3RNSW8wVVpGOTVEQi92ZjU5ckxEVHVDMGZNbHYzUllrUStMTUhQTG05ckVpTDlSRHVHZkRlV1d5NFZITFZFMWtQdEYwR2NueEhrSTRscHgrYnBiUC84cjRuUG42RkoxcXpRRnZJSTR2UGVIMFMvY2IxZEs5NFlaVVVKbGZLV1g2c3RMYUNaZzZZTDJyQmpxUnlicytqbmdGNzR2NlZNOUJLWWNiRXhmaEhyRUVPUTMwT1QvNVQ0bmtPVE9hR09DR2RPalJIazgvMy8reHFUOVVqSUJEaENGbXRvNnVlclNzR09JMXFrTFdENlZvRnZwNWxOeTJFZ09YSVlFUmNrQUJQdTFib1VBMW90dkdqemEyanlId29mUDBPVEpMY0orMTZXOFhURWovZS9PV1Fva1RnV1VOMkZYZHEybXFQWGQxc1NvZ0YzYkJqcHp6dTFqR1NWMUc2WDE0YjBiODVMcStpTlpQa01TQnFtM29Rb1JQcXZoYStmb1VsdS9Fbk1JRTN2NC94ZktBRDVnYndPR2ZBYW5KSVk3dkExS1RZU1NDLzI5Y3haelRHSHVDQ3hVVkxtakdzZkxHN0wxdnRZU0wydEJzcUo4QTZSZzhyTFB4USsveGlhWkdhVEJBSG5KamF6Zi96OHZWNUZmeFZLbG0yTEVoU3E2WFRleUh1bFE1ZTFtNzNNUTZ3Q1kyQzk3dGt3eW9WMkhqVWR3OEo0UE9TRDgxdzVXUUszM2Y5ajRmdlgwT1I5TWRvd05pTFh0Q0hXai9PZjZ6bnFaR3c2SjVZTSt6RklJc0U4U0U2MkFpWmRDOFExei9hUE5yWTV4eUVXU2UweE95S1F5Ujc0N2xsNFFjL1hTeTJYZWZWL2JYeG9meCthREdRY0RhSWlYZkRQMS8vYjY3a0lWYmt1WVd1cloySmlkekkwckkybS9aaUR3R290dVNCUkRxck13Z0JQWkpZdDFnVFd3VHBPaWhRSlpFZW5sOHVsVGRuK3BmSGwrUGVoU1FsVytFYzlzMWY0ZnlFQmNqYnBtM2ZSU0RQenNSaTdGdnZTY0NMeEhkZmJpeGNNQWJtaGdxTWpaellxZUtVNUgvQ3VoTzlyZTBpUXJqeFhrS2oyQ08zY1FoWlIzNDFQNTc4UFRWWUVFZm1GZTB0bzlaOWVQTXhHZnhXSlZ3MGRQT1MxVE1DR3gvMDZkeVI4c0c5WmdKd3RVVjA4RThxcnpkb2g0U0hsbnJuNzhFYlBIbkZBRUgwelpxRlMrQ1VkdTVpTmJ4WEV2dzlOanFQUUJuS3ZSUFh5OGY0UEs4dE9mT3haelZuOG1ZNDIvV29ibDNJRE1kRXhGV3MwK1BwcEoxakpHZnhtZzF3NjNHV3UzcnozSU54K3VWQTVtdVhTTWUzZmpZK3pDdllmaGlZM2pqaFJvV0Z3WmZYSDhlK0c2UGFJTlNBNWIzT21UZHA1bHduMVN3UXQwZHQxaXFSMUZqbm0zQWRDWkhnM1NJZFdtYjdXMkNhbVh3K29yNTBoUS9LamJBRVlaMHdPSVA4d05JbXhmN2Q1VS9jQ3BYMTgvbkhaczk1cjBQRHNBZG42ekdLdWN6b0Jacm9uTDlEOGdzQU9IZU84czBBaC9sMGx1WVBjZWlQWFBjUktwSFBIWURPWGYxY2daWG84alZCSlIvSVBRNU9DcnZzd3FFRG9OTzNIKzc4TEE5WGVIdnMxdUFJMVo3V1ZlUDlqanUxVXYwZjAzUHRWR2ZRanIxTFVHME5EeGo5MFpIakhIUFNHK0V4Z2pNYUJPS2YxNitsa1ozTlU0ajhQVFRaOUxBd0NYNTJha3lBZmxseUNhOW1zQk43NG5teDB6b1JzcjNPZ2l6cHRJakxYNHpXM1lnRmxYRjBJWFBJTXk1dmM1SHQ0WWQ5TWI3bUxVZE4vYkZCM1N6ZU43T2svRDAzdXBZa0FYbUVzMVI5Zi9teGlLTlRBTVljLzhiL3Jnd2J0OHc3UE01TWRoTjJNWGplaTIvWTY4QkNGeTk2RHc4TmV1blZ6ck0rYWNVSzVPQ3JCamVob2dFZDRqQit3V2Y0UFE1TnROUUtEVFg3dGUxTWZaOEE1YnVpUlVsaVdIVU45Vy9tcml4ZWZhQWRQem5SRG01Y3hJMWN6NkFjcW12czZPNzBtWHhpSFJ4VGIyNEswSnB4SWZJbmQwT0RCNkRXQ1RKR0ovencweVlQdjhseGlCYWI3eC91L2hoR1hSRDlkWmsxN1ZqWXFnbFBrUEllYjJkdGxtWTB3TEtBaHE5Z05RYlRMMkw2ODUvYUY1S0gyakV1NENKOXRwSnh0bmNIRzM0M0Rjb3VkdlUvM2IwT1RyYVNhL0x3eWlRb0lIL2QvMXVFamc4TndKeVMwUnBETHYwQWgwbnN3bmhkV2hCR21XVmVwMk1KdlphMHNxWW9ucW90SUo3cS85MkRuY3YweHp1TGE2QldESTVyTnZ3OU5VbE9XR3QwUUUxbTZqOTkva2xwQ0hkQm94SHlXZUxLM1NQTkFEVGJiV1hwcFZ4OXNoSGRSRThFTUVSemhmWUo1Y1E4WGMrQ3Q3TE1oWUt1ekgzNTVJNkl0VHhqZEM5V1JxdmEzb1VtaVdKWDNrRzNXeXhFVWY3eitCL0dvekhuUDhZSFI5Wjk4Ny93cU1HOUFvb0ViWGR1VGlWNG9ZRkFQRWNweDdhdkNnM2EycldWbXR3SHB6M2J1SjVwUFFUMUNnUHNlaklQZGduRGs3ME9UU2lNS3ZLZ1FETmFlbm8rbi8zR1Y1ald4RFZMUncrNFh1b0RyZ1hkV0p1MkZLUXpVcVlQWmJrQndiKytONTdKZDNjeDdNNngydGpvTCtnNFl4L3ExaHQ3RFdaSG96V1lxWVZmdjBsK0hKaWNLU21zd2JxV0pvcTlFdUhqb2ovdC9DNVJjTDBpVDNNekpSQXpoZFFQT2NROWFsbHphakVjcjVaVzFXQXQvN0ZxbFZENTZKeEUzK1ZHSGdYRVJtNFM1anI2NXlZenRBaU5MNGxJdThpOURrN3NIVnRiY1o4ZFIxOGlzcU9YcDQvTWZYQXZpRU94Z3VMYy9aTnpiRnpGNXM1VGxkVTNiTnNhMU9GcFlYVGpEK0Y1d2hhcDNVZXNXUmI3bkRTWUk3NHlIclRFV1puSVRVcG9Ed1V0cCsvSG4wQ1FRUjZRV3poUFQ4TlRkbkoyUDI4Y0IwSlVZSG95djhHZ3pKNEhBcnNMNGxMZVRCc2Q3dkJ3VUFiR2FIaDQ3TzlaK1JxRDJTKzR6TjlCcm1oU1d6SFU4Q0hEMnRXVEtqdVhvaUN0RHFIOFptcVFJbVF5TlV1RVBrZmROZXJuR2orZS9OeHNwYmdEU2dBaXA1Z1QyMUNCc1JRTU9SeDBiZWMxc3ZZYzZFc3lSLzBtTjN1MlNieCt4UXV3OFFWeU9qSnBjTm85azhPajlScWJnY1IvZ3o2SEpoVkdKVytLMU1UeHJxTzdkVHNNKzN2K1hVeVY4NjRMTzBKWHZjd0ZVZGNac1pjSDFrbUthUVgxQnVPdm03UmFlemJUK01lUDlHekRBUVhzZnlVdjVrOHFZR3hUVHVyeDBhdEVIOHNmUVpCWk1TVDF5bmdrUkQ2SlFVbWZ6KzhmelgweGl1Rkt6bytrTnhaN3JFR3cvcStLUWxKNHBJYkRXVzZ1SlJzTG1DRy9XNXd0M2FTWUNhMTZVUTFZb2RFQncvRmN5MC9leUR2TjdhTko0Z1VpWFIxSnVzZ1ROaVl4bEVRUkRZdnA0QmRTSnNJR3E2VFpId2JPcDl4MlJySTFSaGRaa01qZGN6TmlyWkp4VGtSdkpQVnk3UmdLblppcThNT21SSFFQYm93RGNEazlRQTVENnh6VW9jb1JhMzVrVGVGR1JFRm9XUGdpbGZrZWdRV1VlVGkzMTQvbi9hbG4wM0RlWDByNXVPL3B1UDlPNUlsQzNyM2pTZlJhSHQ1VWFGaEFkTCtCTzVQWVlBTjVYT3QyS0pyU1gxNzZHMlRwNElnenFyYVhSZ3hBN2hzUlM1eFR0anBTNUZ3eUJybVBrbTRYUm1mV3g4ZHdWL2Z6OUYwVnNiVWZDcDJFOWp3c1hhQWp5RnNLb1FrZGY1bldGczlkWmJscnNxNjFHV1hNZzlGWHB0U0lWZWswYkpzczZ5OTFIYnJnQnozWHRMdlZFV0lrYWc4azFXRzRVSEpyQm9mWUNtenZlZmJiVXF5VllUeis5ZmpJbStkM1lITzY0QjBaeWFtcWlFUmlpSFlVNGlKc0xlVUhLeHVRWEtyRlhFQWtSb2JNVGlZQ3AwaEJKa05JUm1QY0Vremt2dWFkMWdtSXA5WUZhczJ3WU91c01jK0c4RHJrZ09MSUlOY0RBU3ZXYVBuNy9hYlNCbklHUTBQT1lTVHlRYTUzdERzSzJEWWpacE9OZW9sUFhlSnBiaStnSHN0WnpEb0N0UjBRWHVPRVd3T01vaGdBcmlaY2lSYU81czBodTFvWkJYNXZoWEVhd0MxcjV2ZGtaSmRMTUc0dVN4TkkvM3Y4MFlMVUVyS3gzbmRjZVgzdlpONkVjSEJLNUVDTDAzVENyV2UwRzhhNUFrMlo5bUtXMnlmL254VkJGYXE5dHlOcDJPdTlSeUI0ZGlMOEU3OUxlY2s2K3IxdDN6UFNkZXVBcTlyR0tOUndJaTJNL29tb2ZuLy9sR0pTc2xHYWRON1cxbHo5TFg5RWFVSjNSSnl3Z2Mxb29iMVFOZkpIcXc1TmNMU1hxNkpTUysyaUVrdXg1ZzhINHhmUEtYQWxqU3k4WENjdW5XVWZVdTlxUS9vYU5FdEY2Sm1NaURDckhLQ3pmMFgvYy83ZDU3VVdmY1NpYWVRZVlXL1c4c2h4eFlPVmhvRGRZeEx6ZDRINFEvOEgrcEw1U3JxWFFMK2JKZTJpU2FJWHh6Q0ttWi9qREdoRTlkd2lZanZmZG9QdlZsNGlLaEQvNjArbi96TGFSZFJKT0hXaDczR2NYRC9QNlAzUnhxcDZJYmUwczVhSjFvbHYzV2NMejJtOTAvd2FoSy9TQUZDR3JhR2JhNXk0eVhlemR1VCtISnBXY2QwSGhVb2kwdmtiRHhMN3J0cjRSVldXdGdxc0hKZjJkWk0vTGJBSWJzMm40Z1l2YS9uSCtsMDF6SnVjMm1WaWJkeFl0SnM0ZUZsbnR2b1V6S0tXdG1VYzVrYXg3WTllQnpOYXN4NzhQVGViZE82T2lyZWtjZHQ3dytvQnVnU0tYemdnQjdXSzFIYmtwQkwwOGc5ZSt6ZHp4aDJWZjhERzJGUjM4bkhEbzZQZm5mZmVyTVRIMDNVWWprZDlaV0lPQmNCV2tjUlFhWFpmY2M0NS9INW9zVzhJbEtpWWNvUWF4UUlNZFJMeG04OFBTdVVHSDJabG1jNVFNdmNzc3FJUGVQci8rTTFuUEhOU1ZGd2c3NXpvamFFVk1yTmVkV3dGU1QyU0x5aEZlUittYVFZM0xxV2JmZmxraC9jdlE1RVhsNmhqeENHNFh0dzcwL0RDdmZzWGdMNnRCRHQzeWdRcVdTK1Z0OTRJQnNSQStYdi9kVjFtaWNZWWl0UUVTRTZYaVBCZ0kwWVpHaXJMTzZ5cGpCN205T2hwNDIzZUVmS1RObm5ldGx5WDlaV2hTWjdEbDJQb0I1dHptWkw4NTU3VDh6SldxeThOMm5qUEFkZzFFWjVtTmFPYytQai8vOGpQcGlXaWZXVVJya0dkRDR5Z0R5cmtRd29PcTFKV045TmRUeVFHM2hxelVuSHpvRFJFeVVjSDhPVFNwS1BHOVAwOUhGSlZSTXpTRkRXYnJZMk96dGxCdmNBTlVnRmxoZzVaWEtLTStIOGYvUUsxMDQxZzBpR0R3VEVlbTJaNXdsUWlMeVlUalllL2ptc1d3YkI1Y3BGczVnbVA3TWpiejRsVU9md3hOTm1Zc3Vvcnl2TXNBSjVzWHBCR0ZCcDVEME5ieE5QaHBQRVQzYmdTeTc2RWorSGo4bDlDekRVaDZOZWUrRDF1cUNySmZxYy9CdCtnYnRGRjBuTUZ0aVhaT3kwTmZ6UEZnb0lkNDZOSDg0bjROVFdJSURYTUFGdGNVVUVWNHU0YkgySWM3NHNEM1kxZkJGNHdxYmx3Q21OWS9tZitQMTc5Mmd6cFBDUFd4TTBCbXZoK0R3dEpTenliR1pkdnk5Zk1kRmUvSGJRV1dXMjNabkVNSGhJZnFOV1lYS1B3TVRkYmsxdGxPYVFPL2psbFkwSGpRcUJPbDV0VTlwelFLZWNSSUdFK1JQT1NlTUh5YWorZC9IQk16OUtYTUVBak1XLy8yUWdrNmYyUXhrU0phMlU4a0swdDQ5Mm5Na2ozdmM1amxTcmorZ05SbnBvaklEQVYrMzJsYlVub25oaGk4bWdmR1J4V2VJNjkya1pkOTJqNmxQMWQrY0IrdmM4K2dQNTcvYTdQZVFmZlhTOE55eGJYRXhjNXJRSlpKOEh3K1huandjN2cvL1Z6VjhHQXNSQnZvNVBYTWtnR3BqTENPK3pXdkIrbWRWd01Yajl2OHlWNmpFK2o0NTNjTGdFVFRHYlZOQjRqaEZ2aFlabDg0UENWOEhnQVRPRi9zbVlsd0VsRHpNWWFGNCs2RVYvN0FiRzNmZzVpVGltWS9OSjc5dkxzNnZmTE1nUStUWDZQVWxIWWcrNDhkKzAzZ08ydWVPbkROMW4reUh3N2lISTFmMXZuaGMycllqbkYzWFNSR2g2TjlIUCtpRmJ0NXF3M1gxL3NzWWhnbjFlaXdUb2ZPL2ozVWI3bjIxdlRVTUN3SzlhakgvN3E3NG42V3hrMkxIb1BFK3dwWmxWSzBpYVUwNGpZcklZK1VmVUIrZFlkcXNHTjBuVVBVK3VEMVVDN0ZXU2o5ZVAvWGpvK2d2ZGQ2dFQ4M0VqREdWMWhHM0tPK2J4c0RqQnU5dDYrTE0zb09pNEdLZ0RBSWY3QVdyaERCWXppb1VxUHFSN0dpWngrYk1PRDJFd3dDcGxTWFZlc2ErUEtFdmJzRWk1MTNyU0l2TkxQZTFvK1A5NysrN2tPK1VXQmJCWHRQczVNRXVtUElicTlkbFFPMks1VjcyM3V0NTd6ZTFjNExUaEVoZ1RPVmdUeXUzc2RXN1lMc2VYanBMQ0ZEQ3VhWllySXVvT29JYkdiVzErWEIrQ2NPaE5MQlhDRFhuODdQN2VQclozVXNFTTY4dDdpYWR5MHZGdlRmTTl1bCticng3VTZ3N2VKWUtKdGpEWU9PMCtKdjlVMFJSUENSYzhvWm9tRzNJL3dqTUh0akRjSEl3UEFsdFhWRVYwTkNBUk9sV29CQjZjMWFOcnNzMkkvbiszajlDeWhhSllleHRkam5kNERSd09HS1NHSUdhRlJpTXZuK1BDVDN4aXBqd0x6bUNHNXI5N09VWC9mWGtKWHdxOUQzdnlON1JDdENFRHlaSWVMSC9GTXZ2R2YvQThPUFlQZzVsSzB1WGdkZG40L0RuNW5HUSszTUt6Nlo3RFB2Z3l1VkJmMDF4dXRkcEFaeG5ZZUV4SENtYWljS2NxODV0YnhHUk1pc0tYNDZET1BvRTdxZmx6bEhiZHpzazNneWtxWDVMVDl6QnBaeVlVY2llWFpWczRGd1lUdFNEdzhDcStmaitQZkVnNXdYSU14Qm4xd21GL3E1a3dyL1A0MGp4QWZzYmduYjdURGFaV1dOdmJTVFpINXZrbkhsdHEydklRQWh4N0pRWGtncFByNXZ0ZXZJa1M2dXhMd0lrZFMyUFVoNXV4azN0Rk8wTFUwQ3ZRcmhQOTcvOURoNW8yTzJ6aEdaMzZkeEU0UjgzQ01JM2pVaStUTFFrUXVIYkxWdEk1ZjlWWW5SeWc2NzdQMWwvTTZremxhR3pzaGlGMDJRRklPa3paZ0Y5MnBCekdNM0JyNWFId3JrWFQ0TE5MMW5ZdllLeEJYOThmVnpDVEpYVW5NVlMyY0Q3VGJlQ09ibkRTZHpPSEVmRzNyeFZGUmJsRktiVzNmRUFNMHBTWXVYT2ZnMWVLV08zRmRxL2RvTkk1UWhiazRyZWxDU3hOcVVFK0lKd1VzUVorS3l3ZDVVUll3c0I4SUJ3Zm5INnorenBYdnBYbEovcUVUZHBUMjBCRktsZFY1Nnc2NWpyNUtuczh3SHBTWkVEcndFaVNkcE56VDRVeFhMU3IwYzM1U1A3U1pJcGVaVnFSdEg0THNjV3hIN2d1RmpjZ2pEemFhQmlqejZrb3VoSHRlL2ZoNytpVFI5Mm9VWW51MW9vckRPTzYvODhteHdRVnJ3dENXU1dOUmFGanQwcmxFL2hCT3g5L2NkRHA3emVabnZhekVyeHJOMU5zSWRXNnVwek5ib2hnemhSUFdaWXpTL3hwemE4OURkS21TRWxVSWpJWDNlLzJVK3gzTmhiV2lodWYvcVJ6TmpYdWNlNXBjNGRUbnp2TFdWRytLNGlOK0N6MVhwZVllSFFqdG1DeUpaa0drOTFrU25DejNLNGh5Q3dUU1I3WW9tb1k2UzN0ZDh2a1A5azlJenU4VDNtbWRkMkg3OC9wdFhaMm9HYUZOSldGVU9rNUVpTVVFMVJoNS9jalFHMXhKNy9PSGM2MEhrbCtsc2FwOTN1RlR3enVHVzNYUTJQQjN2TDA3Qm9DQ05YUHVrOWZPclVxVjB4L3NPbUdGOERNWnBxTXpOUG9sVUxwcFhiejQrLzNpTWxjK3Z2Rm04NXNoNzU3ZTNBRzBzQjBxeWUyZG5mY2wyZmlucVhROFgwZVp6SVQ5MytPajNXSnVKZ2Vib21CNUhsMGF3cFd3aE40NkdWWnpXZkVOdTRSWm03N09GT2k1QWJYRWxyc0hvaDVTeGY5ei8wMUlHRjNVL0J5NldqenF2NkdGQzY3eld1c3pNRDBValJ4eURaeWQ1V0t0RTVmOTFoMU5YdXVTWng0cEVLWXlZTWpIWDBiVVppVmExaUdGblY2emdVSTZ6c25HTnZlZXJ6OGlTendzRHpSWnpsQjgvZjhLMmxVRGxaeUlwcXUycTU2bHpYTlpVOHVMMGU5NEI2cXRtTTJmM2lXOEMwZjdQSFY0UWR6cGU2N3dpQUpYZGU3a1lxbVFqc3hVWUljK0dkT0I5cVN4dXhubFhSa3QyQ0kvQ2hGaVVFalNXZzN3OCs0MUNLd1NnNks3Q09JaHBQWTh0TzdRSXMxZ0pOUnhzUFM5NGJPcnpqbmVWbHVYM0hXNnpYZXdnQ2huZ0sxUGIwN3dzZTlXZUFLOHYwSlRpVmdDaCs3c3JQRHdOMk13SXBLN0FieUFlbitMZTUralVoMlZPY1BsZVQvLytGcnpaK1k1UGRndHhVcllnb3hOM1NBRkdNL3ZkZ2Q4OWIvMlBPL3hnZm11U1VzOERkMFBmeisyeWxIWENwdU1aYTZGcVJaZ1RmUHVKY2MrcGp0UVVCSUpMVml6UEMrRFBLai9lLy81NGErSGNmVkdRZU1GVnVla1RCcHd2VGR2ODNnUEV3dUdCUFowTHBOV3djUDIreXVZOTU0cVFDQjdPWG5qNlFoYkxqL2NYM3RwTGVLdW4wMER3VzVEeXprbVp2dFJaUWwwV1ZLcW00cDZRQjVtUDUvLzYwVXR4QmNrdUF1RzlnRkRXMjNjYi83ekQwMEZIWFBTYVY4TFBpNEhZNGpuNTR3N1BNbE1lczVmbFFWem9rMWxjbk45NVBjZW84RWRxOTc3TTZjZjExYUxDVGU1QUd1S01kTlNDdG9SMkEwUi92dnlERG5yT0s3TFp6RUlPeExwY3Q1K3MvTHpEMWF5Rjk5bnJOc3ZiYTVrMlRQNjR5cWJhVXQ5ZmN2MXVuV3g4VlVIUHJ4QThFUXFpdWN0OHBySWhncmc3dWhMQk9KbGZNZHhuNlhQZWpmbkdRNStILzcva0lBcys2bFpDaVg3bUxMYTVyaG1neTVoZi95Wm1tZVRWYW5EeEwxZloxSTNLZDJFQStVOGd2SnF3U0F3U004bmIrLzYrQVVsZ21NanlkZGo1RmJ2MXVESHF6YVRKKzdjSXlNLzMvMy9sSzEvNXlsZSs4cFd2Zk9VclgvbktWNzd5bGE5ODVTdGYrY3BYdnZLVnIzemxLMS81eWxlKzhwV3ZmT1VyWC9uS1Y3N3lsYTk4NVN0ZitjcFh2dktWcjN6bEsxLzV5bGUrOHBXdmZPVXJYL25LVjc3eWxhOTg1U3RmK2NwWHZ2S1ZyM3psSzEvNXlsZSs4cFd2Zk9VclgvbktWNzd5bGE5ODVTdGYrY3BYdnZLVnIzemxLMS81eWxlKzhwV3ZmT1VyWC9uS1Y3N3lsYTk4NVN0ZitjcFh2dktWcjN6bEsxLzV5bGUrOGhXQS93ZmRtaG1aZHltbTl3QUFNaUZwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHcvZUhCaFkydGxkQ0JpWldkcGJqMGk3N3UvSWlCcFpEMGlWelZOTUUxd1EyVm9hVWg2Y21WVGVrNVVZM3ByWXpsa0lqOCtDang0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpWVdSdlltVTZibk02YldWMFlTOGlJSGc2ZUcxd2RHczlJa0ZrYjJKbElGaE5VQ0JEYjNKbElEVXVNQzFqTURZd0lEWXhMakV6TkRjM055d2dNakF4TUM4d01pOHhNaTB4Tnpvek1qb3dNQ0FnSUNBZ0lDQWdJajRLSUNBZ1BISmtaanBTUkVZZ2VHMXNibk02Y21SbVBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1THpBeUx6SXlMWEprWmkxemVXNTBZWGd0Ym5NaklqNEtJQ0FnSUNBZ1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROUlpSUtJQ0FnSUNBZ0lDQWdJQ0FnZUcxc2JuTTZlRzF3UFNKb2RIUndPaTh2Ym5NdVlXUnZZbVV1WTI5dEwzaGhjQzh4TGpBdklqNEtJQ0FnSUNBZ0lDQWdQSGh0Y0RwRGNtVmhkRzl5Vkc5dmJENUJaRzlpWlNCR2FYSmxkMjl5YTNNZ1ExTTFJREV4TGpBdU1DNDBPRFFnVjJsdVpHOTNjend2ZUcxd09rTnlaV0YwYjNKVWIyOXNQZ29nSUNBZ0lDQWdJQ0E4ZUcxd09rTnlaV0YwWlVSaGRHVStNakF4TkMwd09DMHdORlF4T0RvME9Eb3hNMW84TDNodGNEcERjbVZoZEdWRVlYUmxQZ29nSUNBZ0lDQWdJQ0E4ZUcxd09rMXZaR2xtZVVSaGRHVStNakF4TkMwd09DMHdORlF4T0RvMU16bzFNMW84TDNodGNEcE5iMlJwWm5sRVlYUmxQZ29nSUNBZ0lDQThMM0prWmpwRVpYTmpjbWx3ZEdsdmJqNEtJQ0FnSUNBZ1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROUlpSUtJQ0FnSUNBZ0lDQWdJQ0FnZUcxc2JuTTZaR005SW1oMGRIQTZMeTl3ZFhKc0xtOXlaeTlrWXk5bGJHVnRaVzUwY3k4eExqRXZJajRLSUNBZ0lDQWdJQ0FnUEdSak9tWnZjbTFoZEQ1cGJXRm5aUzl3Ym1jOEwyUmpPbVp2Y20xaGRENEtJQ0FnSUNBZ1BDOXlaR1k2UkdWelkzSnBjSFJwYjI0K0NpQWdJRHd2Y21SbU9sSkVSajRLUEM5NE9uaHRjRzFsZEdFK0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2p3L2VIQmhZMnRsZENCbGJtUTlJbmNpUHo1Nm1pbURBQUFBWTBsRVFWUVlsYVdSUVE2QUlBd0VwNEFhLy85YU5WSXZhSnBTdUxpWERjdUVMU0NxU2lBRnhJZHBBRnFmd3VLOGc3dU5sdVVJUGdNWTRHNStBSWdPYmhncEFjWFVDckMyOVFic1pzU2x0Q283MjF0ZFRaYUJLbi9mK1hJTm4yWW5KOXpIUEN3UkhCUDc5aUh6QUFBQUFFbEZUa1N1UW1DQw"}, +{name:"__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformTool",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUxFZ0FBQ3hJQjB0MSsvQUFBQUJ4MFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1JtbHlaWGR2Y210eklFTlROdWk4c293QUFBQThTVVJCVkJpVlkvei8vejhEQVFCWHdJSXVnQSt3SUxFWkNabk1SSVNCTUVNWWlWRU1CNE5JTWN5M3VJSVBMcytDUXdJclFGZU1MYXpoQmdBQTR2NE1GcEVTdzlBQUFBQUFTVVZPUks1Q1lJST0"},{name:"__ASSET__:bitmap_flixel_input_mouse__FlxMouse_GraphicCursor", +data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJnQUFBQWdDQVlBQUFBSVhyZzRBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQW1SSlJFRlVlTnEwbHM5ckUwRVV4Nzg3MllTZ0psVFNTaVdwVnZyRElxaEZVSUtnK0NlSUlncWVGRS9pVFJDOHBMUVhqeUwwNGc5Q29tWFRKSVcwT1ZVRU1UZEJSSWs1VzZXdGtLSlNiR25EcHNuNlprMlczVFFicytua3dkdVpuVm0rbjMwenczc2pCVUxCQ0lBcGRNbGMrL3orZDlScTVMbHVBT1JhTzhrZkR5ZW5XMGJ5YU9LZVl3RGpEMDNUZEFnSlJFUkhJTkVlYUpWS0ZZeEprQ1NKajAzWVJYTC85bVZib2Q2QmtIMEV1bWxTdlNjMEVnTnc1ZXAxakE2UENJY1lnQU0rUDU0OG5zYXh3VUdoRUdaKzJTaFZNSjlLNCtqQUVXRVFDMkM3cEVKakhpeWswd2dGZzBJZ3JIRmdhYm1vaTJkbWt6amMzNzlueUM3QW44MHQvRjdmMFBlQ1F3NzE5UmtRT29xUlBRTzRmVjBwNnUzdzBCQXl5U1FDZ1VESGtLYUE0czkxYkc2VjlQN3hrVkU5a29NOVBSMUJtTjNFVWkwS2JpZkd4akNuS1BEN2ZJNGh0b0RWNGkrbzVSM2ovZlRKVXdSSk9JYllBbmgrK3I2NlpoazdNejRPSlI2SDErdHRHOEphVFg3N3NZWkt0V29aQzU4OWg5U3JtYlloTFFHcXVxTXZWYU9kRDRjeEU0M0M0M2JEVkU4aWpnR05tMjIyU3hjdUl2Nzh4WDhoY2l2eFdTV0dmUDRUYmV4K0VtcitLVjhxdFZ3MlEyQ3U4YmFBVk9JbEZ1YlQvejZTWFdBdTF1N1J0MENhQXJJa25Na2t3UXVjTE11UW1PUTBReGlRWFlEWGkxa2thR2tZWTVEZExqNzBsdnhCaDhuVVl3SGtjbThRaXo0MUw4a2lMM1pVbzdjN3Jja0c0T09IOXlnVThuQVRzMWI4cytUWFNGd1ZVbkMrRkQ3VFh4czNpemtSNGtZRUx1c0o0ZUkzbTRuYkxZT1RWS0dRM3hEeDU1YUxWNjBmSTcvRDg1ekltMTA5Z21ma3QwU0wxMi9YdmRUZTdkYjEvYThBQXdDWlVNUU16UW9keXdBQUFBQkpSVTVFcmtKZ2dnPT0"}, +{name:"__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorRotate",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFvQUFBQUtDQVlBQUFDTk1zKzlBQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUFUZ0FBQUU0QnNjMGZNd0FBQUJ4MFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1JtbHlaWGR2Y210eklFTlROdWk4c293QUFBQkVTVVJCVkJpVmRjNUpEZ0F3Q0FMQVl2ei9sK25KQkJjOFZaMFNRZkpKYVFOZDVFQndmUmhVaVZSNG9WVnA1cHp2TUhDZDRhQmlWR0k3MmlXSERCeHVVUEg1NFFNNWNROFhwbTRKVmdBQUFBQkpSVTVFcmtKZ2dnPT0"},{name:"__ASSET__:bitmap_flixel_system_debug_stats__Stats_GraphicMinimizeButton", +data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFvQUFBQUtDQVlBQUFDTk1zKzlBQUFBQm1KTFIwUUEvd0QvQVArZ3ZhZVRBQUFBQ1hCSVdYTUFBQUIyQUFBQWRnRk9leVlJQUFBQUIzUkpUVVVIM2dNSkNSMDFlRVp4RlFBQUFEOUpSRUZVR05OaitQLy8vMzhHQWdDdUJzWkExb1JOREM2QnJoQ1p6L1QvLzM4bWZOWVQ0elR5QUNPNjhZeU1qRmpGbUpBbHNacUVMRWRVOEJBYjRBQzRjRkxGc3d1SW53QUFBQUJKUlU1RXJrSmdnZz09"},{name:"__ASSET__:bitmap_flixel_system__FlxPreloader_GraphicLogoLight",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUVBQUFBQkFDQVlBQUFDcWFYSGVBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQnE1SlJFRlVlTnJVVzR0dTR6WVE1TktVYzNmcHQvYWYrcE01MjVLNFJRQ3gySnZiRi8xSTJ3Q0VaRWQyTk1QWnQwTGx6Ny9LQzMvb1NkL0RyN3JCOXNXZzZVN0E5Q295MmhjQXB3ZStpNFB2NC84Q0FSUzhSM2VBbE5ld3VBNC9RNCtTMEw0SU9EMWdDcFM0RC81cUFpeEFsSHd2SW9PVHBQQ0VtcDVHQUUwQ0orTzZqQk5rQjlSVFRLSTlDTndDR0wwWDdUd0xnS3lBWlllSUtUVTg2Z1ExSXNaN1ZRRS9TNEE4NzQ0S1h1b0RNdktPVm5XVWdJQ3NSUWNKRkpBeFJVeDdFSHlGY3dSY0EySTg4QU5rRjY5SlVRWTdEalEwaDVZQWI1RkFEdUFxRnNGNWhvQU93UHZ4K1E0cTZBYjR0Qis0eHdscTREWGdKK1cxWmc3c0VERFdMc0NpQ1hqK0ljd1ZXbkwzU1pFK0FwWkFjVlZGRmFSNGRqN0FzZ0MrSDUvWndROGcwRzRvd1EyUjdRNnZYNVhkSHlBYkFHOEtHZmdkMnU0UDRKczR4OWZqZm5ieG5YMDJTclNKM2RkMi9pU09UUnkxZFlMcjBRZDBBRDhBeTRYa2FVUjRvZkkzTWxvaXhkWGlPMG9ld1M2d21xSUdWSUFrUUlKZWp6WCszbVlrUldnS2x2Ui9lZDBtS2poTi9pY0Q5RmtjeitMMzQ5b0t6cENGbzBQZ0RmeUk1ZUZaMmUzeWlBL3draHEwOHdVQXY4SDVJb2lRU2tCUExuZitKcFpHZ0JWQ2krSVV6YWpRa3BWZURhUXZ3WDg3UUkvMVRmeE9tb1NtQUFSL0ZZUlI0RGhMMER0SU9VRnliSitVVUllN1AwQi9QNERMOVNaSWtHYkFRSUFFdjRqZEw0cGlNR21xQWp3Wi9RVFZDVklpSDdETW9BRUJBL0FuQ1QrTzQzZEJ6aG5zZWhBZzdmNFQvRThnQ3NIdlNzSlVJVzBtbzcvSVVSZ2tKd3lpL1dzRWZBSitQd2dZUzVyRzRoRHdDZjRDU2lsR2xyZ2JaS0FTckVZclo0b2hMZDNGMEhkV0NQaHhrUEN1S0dFUkpFb0h1QjdnaDBwSUFhOGxSaWVSTVZZbFd6VHJnMHd4cEJFaGZjRWlTSkFFSUFudmdvQXpSQUpwLzJkbDUyVitzRUtJYk1mN0o1RU00YkljSWJWRTFXZWx2bG9PZ0k0UUNaQ21nQXBZaGRldjRzWXQ4R05wOVlaSHdpOUtpRExCNGhSQUo4TVJuc0VSRG4vd0J4Q3dnTk5hUWZvTXdHVmtXSlQwR2plcVo3ckhUUWtSTldoalJabmdHWlNBSmpITW9JRUNic0lrQnZnQi9BMXlDU3Uxcm80RDU0d1BvQ0FaaWtwZ0xTcThLZUZ4Z0tuQ0I4aW9JTUZmSUwxdWlWTGJhNzJGWVRBVEZTaHdqTTFSeGpDUlJlejRKbXI5TTZUTkMrUU5sdXk5QnF4cEJqTzFnQlVleVZBRGtxRVJVK0hHUmlSb3prNlRrNm5TN0N5eUpZWVRzeDNpQW0xeEN0cG94ZWtZUlUzVnUwQVh1TW1aMlI4N0ZSZzcvVDJyMVYyVWZvRDNXYTk5bmhtcjNhMEE3WTk3N1d4TVQzZFk2MEV3SmtJYnRMMnNuUDllOEdZWUpLZU5aTzF3VDdTeE1HbTVpci9KSWd6dVVQL2Z4R2MyY2R3VVFsQTkzc3pBRElQUkdKcVYzbDBQMmxpeXJKV2xMWW5QVk1nRHJzcTZBUUdhU3Rnd3lSSjFoVnBDTWw3ZkhuY2VnVjlFL0Vid0MrUUJzZ3orT0k2WFl3MHlWa1VORmhIZUlOWE5BNnkrR2twdGQzYitDbVZ0aGZSMmhZS25ReW44QVNSY3dUUlFBWmFQaUtLYW1ncVQ0Z09zY1pVbCtjWG81bGdWWDRmTTd3T1dSOFNtQUk4YzVUOEthY2FPRjRNRWRxUXZuVnd6cXJvVkNDQWdZQld5bCtDUmdCV1VnSW9vR1FjWW1ZQVg0anFFdEhiY21CeVdrTkx4dllGUGtBckFqdEJGVVlFa3dsSUFubk1tQ2hSbnlvbzl0azNKNkc3S0VGVHVyblJ5NkJUeEd1bEFmOExTRklBT2taMlErRnRWT0JNR05UVnNrUGRYQXp6dVBqWkZPNWpCVGV5MGpBWVhKVS9ZamR6QWNvUnVGR0NuZHU0d2t4dm5ZMngxVlZTek83dGZ3UVIyVUFIbUJSZHh0SnhnRDU0eWNVM0E2NkdqS2V4S3I2REF6ck1DQ25jZkJ5TmFQbkZUdlArcWhNTTlDSU4zT1VFckJTYVIxR3lKTWZkTk5FS3QyV0EzU0pESHEyUDdtZDNIOUQ1VkRHbFBjZlNnNVl4Z21taDV6VXlIVjZXbXNNQjNweVpJSzhDZHBSdkFOeU5ibEFTY2xLNU9FVTdRZXo1Z0Qyb0JiL2VuTTBFdkg3Q2V5Y0dFYVFCcHg4MWxtcGRlaldFOUtUSlRLdk1qaVZCSlBKT3p3WmdMbldBTituajRqSkJHUkUvbS96elRGR21KM2ZjYURkM0lGYW80N2tyTHF6Z0U0UENUamVaSWxQV0Z1NS90Q211NUFRNGdHRVpaVlF3cHZhZkROQ2ZibmVKTEE1d3BnKzl1aVZId1hsZUlRSDlnTlRpTEUyVllxZTZpZmlGUE5IZW5HaUxraEVRQ1U4RHFyMExPRUQwMm55R2lPS0dPWnh1aldSTW9Tbmkwd2lRcFQyaVEwNGttQnp3N3RRZ0hOcDhpWW1ZeTVEMTBxRDJwVGNiTWdCTmtsNENFakpON3lmOExjS0tEck8yOE5ZTG53QXk4bHJ5MzAwODFnZG5Ka1VXSU5YVGxoQkl5NzAwUFJlNGx3RXFPTEFkcDNTQWxBSEJ5V0hNWCtHY29nQnhpSWpJeWl1STdydmt5QWlJMXpONGtUeWpqS2VDZlFVQlcyc1dwS1NJbitCTGd6eVlnVXNXak4vNi8rdS94NkticDN3QnEvZnd0d0FDRGVkRE1KazlyRWdBQUFBQkpSVTVFcmtKZ2dnPT0"}, +{name:"__ASSET__:bitmap_flixel_system_debug__FlxDebugger_GraphicFlixel",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUF3QUFBQU1DQVlBQUFCV2RWem5BQUFBQkdkQlRVRUFBTEdPZlB0Umt3QUFBQ0JqU0ZKTkFBQ0hEd0FBakE4QUFQMVNBQUNCUUFBQWZYa0FBT21MQUFBODVRQUFHY3h6UElWM0FBQUtPV2xEUTFCUWFHOTBiM05vYjNBZ1NVTkRJSEJ5YjJacGJHVUFBRWpIblpaM1ZGVFhGb2ZQdlhkNm9jMHdBbEtHM3J2QUFOSjdrMTVGWVpnWllDZ0REak0wc1NHaUFoRkZSSm9pU0ZERWdORlFKRlpFc1JBVVZMQUhKQWdvTVJoRlZDeHZSdGFMcnF5ODkvTHkrK09zYisyejk3bjc3TDNQV2hjQWtxY3ZsNWNHU3dHUXloUHdnenljNlJHUlVYVHNBSUFCSG1DQUtRQk1Wa2E2WDdCN0NCREp5ODJGbmlGeUFsOEVBZkI2V0x3Q2NOUFFNNEJPQi8rZnBGbnBmSUhvbUFBUm03TTVHU3dSRjRnNEpVdVFMcmJQaXBnYWx5eG1HQ1ZtdmloQkVjdUpPV0dSRFQ3N0xMS2ptTm1wUExhSXhUbW5zMVBaWXU0VjhiWk1JVWZFaUsrSUN6TzVuQ3dSM3hLeFJvb3dsU3ZpTitMWVZBNHpBd0FVU1d3WGNGaUpJallSTVlrZkV1UWk0dVVBNEVnSlgzSGNWeXpnWkF2RWwzSkpTOC9oY3hNU0JYUWRsaTdkMU5xYVFmZmtaS1Z3QkFMREFDWXJtY2xuMDEzU1V0T1p2QndBRnUvOFdUTGkydEpGUmJZMHRiYTBORFF6TXYycVVQOTE4MjlLM050RmVobjR1V2NRcmYrTDdhLzgwaG9BWU15SmFyUHppeTJ1Q29ET0xRREkzZnRpMHpnQWdLU29ieDNYdjdvUFRUd3ZpUUpCdW8yeGNWWldsaEdYd3pJU0YvUVAvVStIdjZHdnZtY2tQdTZQOHRCZE9mRk1ZWXFBTHE0Ykt5MGxUY2luWjZReldSeTY0WitIK0I4SC9uVWVCa0djZUE2Znd4TkZoSW1tak10TEVMV2J4K1lLdUdrOE9wZjNuNXI0RDhQK3BNVzVGb25TK0JGUVk0eUExSFVxUUg3dEJ5Z0tFU0RSKzhWZC82TnZ2dmd3SUg1NTRTcVRpM1AvN3pmOVo4R2w0aVdEbS9BNXppVW9oTTRTOGpNWDk4VFBFcUFCQVVnQ0twQUh5a0FkNkFCRFlBYXNnQzF3Qkc3QUcvaURFQkFKVmdNV1NBU3BnQSt5UUI3WUJBcEJNZGdKOW9CcVVBY2FRVE5vQmNkQkp6Z0Z6b05MNEJxNEFXNkQrMkFVVElCbllCYThCZ3NRQkdFaE1rU0I1Q0VWU0JQU2g4d2dCbVFQdVVHK1VCQVVDY1ZDQ1JBUEVrSjUwR2FvR0NxRHFxRjZxQm42SGpvSm5ZZXVRSVBRWFdnTW1vWitoOTdCQ0V5Q3FiQVNyQVVid3d6WUNmYUJRK0JWY0FLOEJzNkZDK0FkY0NYY0FCK0ZPK0R6OERYNE5qd0tQNFBuRUlBUUVScWlpaGdpRE1RRjhVZWlrSGlFajZ4SGlwQUtwQUZwUmJxUlB1UW1Nb3JNSUc5UkdCUUZSVWNab214Um5xaFFGQXUxQnJVZVZZS3FSaDFHZGFCNlVUZFJZNmhaMUVjMEdhMkkxa2Zib0wzUUVlZ0VkQmE2RUYyQmJrSzNveStpYjZNbjBLOHhHQXdObzQyeHduaGlJakZKbUxXWUVzdytUQnZtSEdZUU00Nlp3Mkt4OGxoOXJCM1dIOHZFQ3JDRjJDcnNVZXhaN0JCMkF2c0dSOFNwNE14dzdyZ29IQStYajZ2QUhjR2R3UTNoSm5FTGVDbThKdDRHNzQ5bjQzUHdwZmhHZkRmK09uNEN2MENRSm1nVDdBZ2hoQ1RDSmtJbG9aVndrZkNBOEpKSUpLb1JyWW1CUkM1eEk3R1NlSXg0bVRoR2ZFdVNJZW1SWEVqUkpDRnBCK2tRNlJ6cEx1a2xtVXpXSWp1U284Z0M4ZzV5TS9rQytSSDVqUVJGd2tqQ1M0SXRzVUdpUnFKRFlraml1U1JlVWxQU1NYSzFaSzVraGVRSnlldVNNMUo0S1MwcEZ5bW0xSHFwR3FtVFVpTlNjOUlVYVZOcGYrbFU2UkxwSTlKWHBLZGtzREphTW00eWJKa0NtWU15RjJUR0tRaEZuZUpDWVZFMlV4b3BGeWtUVkF4Vm0rcEZUYUlXVTcrakRsQm5aV1ZrbDhtR3lXYkwxc2llbGgybElUUXRtaGN0aFZaS08wNGJwcjFib3JURWFRbG55ZllsclV1R2xzekxMWlZ6bE9QSUZjbTF5ZDJXZXlkUGwzZVRUNWJmSmQ4cC8xQUJwYUNuRUtpUXBiQmY0YUxDekZMcVV0dWxyS1ZGUzQ4dnZhY0lLK29wQmltdVZUeW8ySzg0cDZTczVLR1VybFNsZEVGcFJwbW03S2ljcEZ5dWZFWjVXb1dpWXEvQ1ZTbFhPYXZ5bEM1TGQ2S24wQ3ZwdmZSWlZVVlZUMVdoYXIzcWdPcUNtclphcUZxK1dwdmFRM1dDT2tNOVhyMWN2VWQ5VmtORncwOGpUNk5GNDU0bVhwT2htYWk1VjdOUGMxNUxXeXRjYTZ0V3A5YVV0cHkybDNhdWRvdjJBeDJ5am9QT0dwMEduVnU2R0YyR2JyTHVQdDBiZXJDZWhWNmlYbzNlZFgxWTMxS2ZxNzlQZjlBQWJXQnR3RE5vTUJneEpCazZHV1lhdGhpT0dkR01mSTN5alRxTm5odHJHRWNaN3pMdU0vNW9ZbUdTWXRKb2N0OVV4dFRiTk4rMDIvUjNNejB6bGxtTjJTMXpzcm03K1Fiekx2TVh5L1NYY1pidFgzYkhnbUxoWjdIVm9zZmlnNldWSmQreTFYTGFTc01xMXFyV2FvUkJaUVF3U2hpWHJkSFd6dFlickU5WnY3V3h0QkhZSExmNXpkYlFOdG4yaU8zVWN1M2xuT1dOeThmdDFPeVlkdlYyby9aMCsxajdBL2FqRHFvT1RJY0doOGVPNm81c3h5YkhTU2RkcHlTbm8wN1BuVTJjK2M3dHp2TXVOaTdyWE02NUlxNGVya1d1QTI0eWJxRnUxVzZQM05YY0U5eGIzR2M5TER6V2VwenpSSHY2ZU83eUhQRlM4bUo1Tlh2TmVsdDVyL1B1OVNINUJQdFUrenoyMWZQbCszYjd3WDdlZnJ2OUhxelFYTUZiMGVrUC9MMzhkL3MvRE5BT1dCUHdZeUFtTUNDd0p2QkprR2xRWGxCZk1DVTRKdmhJOE9zUTU1RFNrUHVoT3FIQzBKNHd5YkRvc09hdytYRFg4TEx3MFFqamlIVVIxeUlWSXJtUlhWSFlxTENvcHFpNWxXNHI5NnljaUxhSUxvd2VYcVc5S252VmxkVUtxMU5XbjQ2UmpHSEduSWhGeDRiSEhvbDl6L1JuTmpEbjRyemlhdU5tV1M2c3ZheG5iRWQyT1h1YVk4Y3A0MHpHMjhXWHhVOGwyQ1hzVHBoT2RFaXNTSnpodW5DcnVTK1NQSlBxa3VhVC9aTVBKWDlLQ1U5cFM4V2x4cWFlNU1ud2tubTlhY3BwMldtRDZmcnBoZW1qYTJ6VzdGa3p5L2ZoTjJWQUdhc3l1Z1JVMGM5VXYxQkh1RVU0bG1tZldaUDVKaXNzNjBTMmREWXZ1ejlITDJkN3ptU3VlKzYzYTFGcldXdDc4bFR6TnVXTnJYTmFWNzhlV2grM3ZtZUQrb2FDRFJNYlBUWWUza1RZbEx6cHAzeVQvTEw4VjV2RE4zY1hLQlZzTEJqZjRyR2xwVkNpa0Y4NHN0VjJhOTAyMURidXRvSHQ1dHVydG44c1loZGRMVFlwcmloK1g4SXF1ZnFONlRlVjMzemFFYjlqb05TeWRQOU96RTdlenVGZERyc09sMG1YNVphTjcvYmIzVkZPTHk4cWY3VW5acytWaW1VVmRYc0plNFY3Unl0OUs3dXFOS3AyVnIydlRxeStYZU5jMDFhcldMdTlkbjRmZTkvUWZzZjlyWFZLZGNWMTd3NXdEOXlwOTZqdmFOQnFxRGlJT1poNThFbGpXR1BmdDR4dm01c1Vtb3FiUGh6aUhSbzlISFM0dDltcXVmbUk0cEhTRnJoRjJESjlOUHJvamU5Y3YrdHFOV3l0YjZPMUZSOER4NFRIbm40ZisvM3djWi9qUFNjWUoxcC8wUHlodHAzU1h0UUJkZVIwekhZbWRvNTJSWFlObnZRKzJkTnQyOTMrbzlHUGgwNnBucW81TFh1NjlBemhUTUdaVDJkeno4NmRTejgzY3o3aC9IaFBUTS85Q3hFWGJ2VUc5ZzVjOUxsNCtaTDdwUXQ5VG4xbkw5dGRQblhGNXNySnE0eXJuZGNzcjNYMFcvUzMvMlR4VS91QTVVREhkYXZyWFRlc2IzUVBMaDg4TStRd2RQNm02ODFMdDd4dVhidTk0dmJnY09qd25aSG9rZEU3N0R0VGQxUHV2cmlYZVcvaC9zWUg2QWRGRDZVZVZqeFNmTlR3cys3UGJhT1dvNmZIWE1mNkh3Yy92ai9PR24vMlM4WXY3eWNLbnBDZlZFeXFURFpQbVUyZG1uYWZ2dkYwNWRPSlorblBGbVlLZjVYK3RmYTV6dk1mZm5QOHJYODJZbmJpQmYvRnA5OUxYc3EvUFBScTJhdWV1WUM1UjY5VFh5L01GNzJSZjNQNExlTnQzN3Z3ZDVNTFdlK3g3eXMvNkg3by91ano4Y0duMUUrZi9nVURtUFA4dXNUbzB3QUFBQWx3U0ZsekFBQUxFZ0FBQ3hJQjB0MSsvQUFBQUJwMFJWaDBVMjltZEhkaGNtVUFVR0ZwYm5RdVRrVlVJSFl6TGpVdU1UQXc5SEtoQUFBQkxFbEVRVlFvVTJQNGY5RG9QeEkrRG1RNy9qOWt4QUFDWDlYOVZJRjRHUkQvQStML0lNeUFwZ0drK2QvSEE0WTdqcnE1emdJcStBbFRpRlBENTRPRy94MTNxLzJYWHFuKy80S3RPOWhVWkF5eTRTck1sbzlBeFhaQXhRdzdsY0JZY3BYYS96TU9LSnErZ1RTNGdaenhBYWpZRWtreFRKUFlHclgvSjV6Y1lMYjBNL3cvWXNUdzdJREJPclBkcW5DVFlZcGh0TWhhdGYrSFhGMi9BSjBtQVE0TjQ0REhDN21XZXVEVXdMQlQ5VC9yNGFYUFdNNys1bVN3ZHZ5dkJzUy9USDFlLytkYzdveEZrOXAvNW1NYi93TVZnM0FPU01NQ0lQNFB3aVorei85enJIUkEwZ1JTdkFtbUdFUS9BbW40RGRNQTFoVHcrRC83S3R2L0RMczBnSXEzSUNzR3MwRWF3S1lqWTZPUXUyK1lqMnk0QlhVR2lpWjBEVitBR3R1QVdCQ29tQldJazRINEFiSkdBSlFUU2ZzMmF1VnlBQUFBQUVsRlRrU3VRbUND"}, +{name:"__ASSET__:bitmap_flixel_system_debug_GraphicConsole",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBQUlHTklVazBBQUhvbEFBQ0Fnd0FBK2Y4QUFJRHBBQUIxTUFBQTZtQUFBRHFZQUFBWGI1SmZ4VVlBQUFCVVNVUkJWSGphdEpIUkNVQWhEQVBqRzhVVjNNbmhuTVZaWE9IOFVTaFBoSW9ZeUUrNXRJRUdRRjU5T3BDRm82UXFLVzFwd0RvRERTaS91WUFGbmk0amxEM3d2SUlOWEcxMmQ0NUFCZEt1V25qMmxENEFLVWJYUXNkOGx3a0FBQUFBU1VWT1JLNUNZSUk9"},{name:"__ASSET__:bitmap_flixel_system_debug_interaction_tools__Eraser_GraphicEraserTool", +data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUxFZ0FBQ3hJQjB0MSsvQUFBQUJ4MFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1JtbHlaWGR2Y210eklFTlROWEcxNHpZQUFBUW5jSEpXVjNpYzdWZGJiNkpBR0lWWGZzV0VmVjBGckZZbGFyT3hhZmJGVGJOdDBzMitVYUNXS0pjQWpiWi9iWlBkOTAzL1MvL0J1bmlqaUZ6bUJ0cVcwMkFyenN5WmM4NDNIL1h2djk4dmpNTTRpOFhpK2ZsNWJqck1FcjJ6dWFPb0U5MEh0L3JZc1ByOHk2OC9QREMwUG4vVEdva2paNmpmRzErZlhQM3E2ZHUxK2pSUnV4cC9OdUI2Y3psWXdOUjlCY3pOcWVYSjh6NnZhUGF0TGdkL0wyOExQRmdOOFNkOS9zdnlBL0JqZEFtR3RxdURWbDJzcWVLcENFNmx1blRTYkxmYm4wRkRsRVJCYkFoU295YTE1Wk9HTElwZ0EzN0FCYTg5Vjd1VHY1OWZiT2lDZDMzKzN2Y2RXUkJtczFsOWRsSzMzYkVnZGJ2ZDVUS05SaTBZVWZNZUxWK1oxeXp2MDNxUjdUcm51cWU2aHVNYnRnV1c3NVZiKzhIdjh6d0hJdGpvTXAyUXlQTHFLNDExMVRhRnVlSUlVbDBVd3BXWGl3ZWo1YUdySzc3dFh0djJkTEJXZm1HNCtzeDJKeDRZWHJXQUZNd0tmcHFkSnJneExNMmVlVDBoUGk5cFNmMDh1QWFCVWMyYTJLbUp6V3VwSTdlYWNsUDZHWm0vSGhTYlBySTE0KzR4YWZxcDNPcHNwa2NHYmEwU1lsN2hlcWlwb1lYT2d6dGRKYVdwZ2o3VlRkM3l2Y0JHYWRkR1RaWHZiTmRVL0lGaEttTmRjS3h4VDNpOW1ibS85ZDJnVW9JaUZjSXFqYXdPbUpJQllxajRTY0J1cmtQeG8rL2dmZm9QNzhENzBuL2cvTkZLbno3L2FnZlkrWE52UG45azlkVDQ5MmhoOTBHSG44MjQ4dms1Y3YwNHBSL3lFK3RuWDMraE9rQ3QvakFOb0pkL3RQclI4aWZseDgyZUZ2OTJEd2ZMbjhBQVN2cFRzaTg2ZnhpTzdERWsvRm1ad3pxQnowOVM5VW44SElILytBNFErRS9GQUtMNnk2ajY0dk9QYlFRVFlQZnhpOElmKzIrbjlQeGplOEVEcmZNUFV3dTArTm53WmVjUDZQMlM4Y2NWUisraG53UlUvZ1MxUkgwQTEzL1U3Tk1jUU9ablU5OWdBVU0veHJtbmwvLytYc2lBNHo5cDlvbjVjNmo2eWJQZjRjZnpQN0tYb3ZOUDc2TG9Ucnl1QmN1ZjFjT2puNk5lc2NkdkNuK09Rb0pTb09FL1EzQUtJUG5wRkhzQ29QV3o5Tld6S1B3RkFkNy9yUHh4MVIrZGZvNTBQZXorbjZJL3IrL3NEVVpFTmo4UysyWUN2ZjVmMktGUDRPY1M5YU03UURWL1ZBT281NS9aOVZKMlFDLy9NaEI3L083eTUzUzlKTkErLzBVamdSOURkUkt5YzgvZ0QyY1Rra01oaVo5SzMwazRDYkQ4Mi9sbElEMS9HaEdnNXM4Qk1zNGRjaWlrNVU5c1AybitKZUZJemo5SFdUOVIvdEZWc0oyQW5KdWZmN0dOSUp1ZmhCdk9PUzVYUDlZbXFPYVB1d002K1JlTC9QeHhhd0J1YmtINjM5SDVMeFk3NUZ3cVA2U2F2S2RkRG4rT2ZwaFZVYk9DNVVmOURrQ2JIMnBoakdJTmc4L21oKzJFYkdRc0F2K1IxSDlPL3JEMVYxaitNT1NJZ09TSDdZVElIZk90NUI4aVNTSEJjd0pQZnhJVDNuTWFuWjhlTndGS0o0d3k3M1ZDU3QrWXlGQVdlNUxTd3lvdkZaVFAveHZHVWFnK0pQdFI1SDFjbmZCRDRmRFZYNkZDaFFvVktueHNMQ3BVb0lCTFJtSEdqTTRBUnFxcTZnUGlQMUhNM1VabjEzZmJBQUFBU0cxclFrYjYzc3IrQUFBQUJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQXBwRE9oQUFBNWNHMXJWRk40bk8xOTJYZmJ4cEkrYm02Y1JQSWlPNW1UZVpnWG5UUHpPNytuNUJJTHQwZFJGQ1hGbE1RUWxDM254UWNFaVZnVGVSbFpWdUxod2Y4K1hWWGRXQnFOVmFSRU9iaStVWk5ZRzE5VmY3VjBOWGowdkhlOWVERzJ6eGVPLzJKOGRMN1EvY0Y0TjlLTWZ6MCtYN1NzZWNPejVqUC9iTGpyTFJyK0sycGVIdmE5aGE3N0I0Y1RiTWQ3dHJkb0cvN1lQajFudTN2NzdBb2UvczhmRFlmWGk5NkkvZG5kbVh4Y2FCdmFWSE8xMTlwSW0ydnYyS2R6N2NJL1BENWllemJabm5kc2o2Nzl4UGFlYTMreEl5NzhjZjlrQ3BmY09jWXI3N0FPbS9PTzMrc2ZRaWQ3UjZ6bkhtdndPWHIySGg1a0QzQ2ZmWUJOYjRnYmU4K3gyVDNtRjlnYjRQZnhCQThhOVBEYllJek5NVzIwUitlTGJzdnZUV2puaEs0K3Nla21SM1E5YWc1M29KZkgwS3VHM3ovUnp4Y2QxaGh3bWY2SmljMkFiVFJZWTFCalF1TVhRdWJmVmNobzI5b08yM3JGdnYvRVBsMncxdEUrc2oyejI4Uk12eUZtK3Fvd2U4Z3gyOWN1R1M0ZnREZHMzNVUyejhUR0ltem1HZGcwbE5pNGJneWJSZ1kyYm9ld01ZM1M2T2dXd2VNUVBBN0IweUY0T2dSUHg3ZEh2N0c3VEgzYjV1M29oS0hXZE5nRy9xRVlnTTg0Z0x2YWU2WmM3eG1NVExXWTBrV1BqSUxKTG94b0dzMHNOSjBDYUVxYWxvV21wR25PY2tjblF0aHFLU0MwUnozYVkxTWJoZlE3RG1rUHgrTzU1bkpBdHppZ05nUFRZN3E0clkzWnAwOXMyeXgzMUNxeDFEMXJ1ZVBXZEN1T1c2ZnN1RTNENkZFQ295SGIrNjdLdUpYUkthUnI2NDJPMEtBRHR2MFNCK01OTldqSnRySUVRbzNWNmsrSVVHWDlLY0w3YTRtTm9QUStZdk1HTllQUTJlRG85Sm5XWElFMXZEWFd5ZVJ3MTZvNHNCb0VUWU9nYVJBMERZS21RZEEwQ2tLekZVQVQ3RUUxbXJQdjE5cm5lMG5PZXR4dGFCSk1UWUxKSVpnY2drbnRGQlNGS1J5RldUQVo2dzNURXNmWmt4UmxRazRxajlHZE0xRVdRazFDcUVrSU5Rc2k5RlNKMElUaGM4NTg5WXNjdmw1WFRUS1hya2xxblBwbzlhZjNGaWVqSWs2UE9FNDdURXN1bVczdnNiK2ZBQmVPMW5jY3JXSjhCUDJPd05PeUNCL2NuNHRQeDhxd2J4amJSUkNhM2REMkc0U1FRUWhaaEpCRkNGa1U4SUZVWXhFZlBBYUdLMnhER1F4RjNEeGh1dllYOHhFK1VlQ1hqYVJTMGJLQjFMc2NTbU9hRlR6TFVKWUtueXVEYVhTTGdmbUVnN25MRk80Q1V6Qy9CK21Henh6UWJ6aWdMeG1NVnpFWTJ6UENzUzFTTTJwSElpdU1nVk5qNDlYSTk3Y3F4ekZHcHhpQ1BaNS82RlhDYXlNeWlOK3l6KysxOTlrSkxZNmFiaFlPYmZTR1ZkNU5iVFlJTnVSUEFNN0x5alpVUSs0M1lCYWVkekQxV1duc3NnbFE2RnZISmVUbVMzSTJHbG5PaHJGU1phc0swSytNMTg3aHFCaEFWcE1BMHFlU2JvbHNhWU13Y3JPSURkUWlYN2ZRZ0VSd2F2RVlDSlZxSmFOUzFxMkEyS29PMERIYk84VUIraTVUemZUdWN2WHNMa2d0aXRIREFLTTM2Tkc3REFFblNKdCtHODlnRmFJdWpneXFWYTZIcGhzdWh3ZE1ZRUY0V25OT1huQXlBSVNKMDJKMnM2Q0NqWmxlR2ZNNSs5Qkw2bFUyWmtLamR0SFhBTnJQRHJnbDNQQ2hGS1pTd3EzdGxsY3JpK2VYSGE1WDVzeGFObTZLZ2RrVDJXWnVib29qV2NWN1U3c2RtTVpQQjlNMXlvTVorRzVOZzlBa2JTeUdwajR2N0h5UXR3WWdlaFdVY0lTMjh5cC84bEZTUXM4cTRIaDRWb1d4SzB3RDEwR0VjZmtxQ0pwbkMrY1hiQU41d2VKRERGajhNRlpvNTBZQU1WaU56MmdiNHJ3NFp0di95SWxiTzRSc2w1QkZVeGxCdG5IVHZLTkZ1SkwyZ1pwMHVOSEZtQVNnaGJrc3dOYkl3TGJKczQvTXZGSDgyaVYwV3h6ZUZzZTN4UUdtRVEwZnBwNDBvd1RlOHZnQWpYOHhNTXNGdXZFNEYrT3Rpc24vSW1xYVJMT0FvcHFHU2xGYkhFa09aQnFPZ2FJS0hLVnhuNC9qQktlSFhlMlBNaU8rRUpERnZFRTFrampRd2VoTWwyNnNjY1RqYUJaQWpxTkRuOGdnSFZIQnBBTXNSSUJwdWdrazdxU2hUcWkrVys2MFZNRzhRV001QlFscU9GdUpLZmNlUjlIdUphZllzOEVTdWVJRDlMWGZjSi83RFJxZ1MrVUVPOXBlMU1kR2pDZkpZaWQ0VXVsYW95RXFHdmc2S3dXdlBGUjl0TjUvc0wxSC9KTU1WWXBCS1ROdzllYThTS3BQN1M2dVVzOG8wNWZNcldSakp5WnVob0Y2cGFNbjU2VmNaWGJQeUFqZ3doaWxncSs5TXZDaUpqZDB0TVd3MVR2ekdKN2ZjRHhQRkRVeGtEUUYzeEVtbUcyY3NIRDRoR3EySGpyS2VLK0FJWWJBS2lPWjREcUVwTUU5RzllUXdyMFpkN1RKUzgyeElZd3RDYzhPQjdSRGlMcTgxTWpsbUxvZDJTTERoN0g0a0N5YUdRY2ZoQTg1R25Pck14NExyOUpPUm84cVVXeEdSSEdPRG52ZWJJaFQxdFFJSndqTWI1NE9tNUpQS1d5M2NOWnh1Q1E4U3IxQWlBTmJCMXdhQTVJR1lveW1lUWM5RElRYXFwSEFWRnN0QWxIM2NqSDhRUjB0OGxtQllxaTJLNkpheUh4elQ5MXpwTlFyNXdackdnUFZVb0hhc3RUSzNPUjFBazFlS01EYWVPNmZuS0V4K2o2MlBlYUE4KzhBdE80VkJub3pTQXBkb1E4S0JUc2ZpMWdza2RRV2sxTzZNNy9wNUJTSHRpa3BiSngxd1dHeXNTZzRuU1lFc2xoZllGSUx5Sm91SVl1dGlTMHFMQ3JvbU9OMndIRzBFNzZsQ3IrSEFYNjN3TFhtckJEWFNrbU5nR296cHdWU1FzaUNDQkpsS21rVnZRTFFWb0V5MElLS1N4OXplRjhpakhPZUJzRUN6d3J1dThmVjFJdXJxZWNzaVZadjZvS3FLZFZRaFVQa0NFU05WeEFGeVZNeCtSaVdDeXlOampJRGgyNXFIb3FRU3lzWlY1b2kvUVl1N28zaVNsTUZKSmJGcGhYT1ZvT3hXQjJXTkEwZHhFUEZLaDVLQUNuQ3lXRE1JMlhjS0pHcHJPSU9jbkpocWdPZGYvRmhmQkpoMVFheHFsU01MSElmWTI1MTNtdHZwV0grQ3FPQTdHSGVLWi9xRkxBV0tZM25abjZxckFPVWpMeHltS2Vab3JSY1hEemZEckNoY2JjVFFWVStmRlJMbVczTVRkWHdsaVlSbFdHNjJTaU9IcXA3RXI2cGxaL0tET0NUVXBtZzM0Z2ZmVERwQTdsSkxGb2lOd2srb0J2ZmFwQ2ZoSlpuTEZTVVBOSmltSXBTaVFGNG9pcEU0V0VpdGwyWW5UTEdQVk1mRVVOVmlsanRIWEZNVFJXbWJrZnRkM1o1WE5ybFdjMXVpOXg0VkVDUmNldUYzcWJJd0JWV1RPRXJ3YnFOZDVvSFZTZXdTRWdGcDk3a2VMYmllRG9sckhoTFNac05GVzFTUXJoS0haU3dQdkdWTHdZM1A5aWEySkxpdFRnWHluWTdIYlRRUWY4ZnBuc094a0haWTdwWmRWSzdoSjJoZUNjU1RaYVl0V1cwcVJ6VHNIM0F0dzlvZTZCL2FHSGEzTUMwYVZnTFBjUlJmVUJoa2FxZTdKVGg5dzROK1NjTWNZVHIvaWhReHpjNHN3dkpxWG1pWmtCR3QxVTFWdGVMSitzQ0syNjJ5azlZQ0N1ZXR4YnJRUGcvQjBuL0p3KzZCeHc2VSt0WG1NQnRGeWxqTEpLZU0rUGVZM3p3TWpWUmhPREZ3aHlqbzhoc0hKQzNVd2FuelJBbmJWdmJSdy95ejJ6RWxCYTVXT1duZ0V6UE44bXUwaUxyYzVYMTBHOFZzaDg1WkM4d3krTmlQZkZIWEZFSzh3K3d3RzhiSjhKaDdVeDJEWXN5T1V3VkdVV1JOUE9WVDBJU0k1aGtWcTJVOXBrOENqUjVxVEZyMGJQaGsySTh5MGJ1RGJmTE1jY2JDVE9TSHVyRXMwTXBaYmRwQW5rY0JJenYwYUY4bzMwUWRRalptcnk4R3U4cy9EdktNajZJV3lQd0cyV3lSR21hVEI2NW5UVGVlUWcraVNENEZ3YmQyeGhabHNZUWF6TktGREFIT0ZyNUxsRGwxZVRnNHhTd054Z3N1bTNGdkRoT0hlRUc4VUZvNjRpSFAvQ0lsSUtQeEVOeStpaFBDbUtHSkNDUGtqTWs2cm1tVEVFa3B0aVZmR0oyTy9FNUVrOXB6OVI1ZXFsWXdWV3J0TXExbHhkamg3TWozTGVLWnBhUmJBRDlkcFBRbDRMNW91QVBHTnhRMzFwMmVxb0MrSVdzSWxiTlJiQjNsT2s4WVJlTDVKemxxRXJKSm9LK3g4RWtVeklZTGVwYm5MRHRWMmdjOHhhVExzTzNhQmFmRTVFdzdPWW5TMFN0alJSTVpYa1cvbURZdjE0TW91dHZQWVROeG9UZGVXU0ZxWWR3SGVNTEE5NGlrS2VwZXppTUEzcU9BZG1pQWZWL3NJZXNPUmozOFpEeG1QWWRVSE1HalQrSWhuYlVJYjdjRjBJNHFVdlJQYWVwZTZwMXlhQXVzV1kvNk5FejFoODNlQUhGakx0VlY1SDNLWHdNYkwvTHB6SmhvTHJhSDh4dWlkZFZEUFpmTU9DUGQrbmloK3p6L2dqZXdES2dWNncwOEg5K1pKY3VkdkgzcjhDK1Y3Q3ZjZlByNkJVdklYYXg3d2lkSHhQZFF5NjZYVnlSNUxLQmRxRVEzNWlEbU5TbzZKNXE0ak5KZkdZdHZncmllOExGTjJZQXVleWhJYlh5dXlURUo0R29WTWVjRmppbW1tQWRFcXhUQzdhQ1lEZURjUW1KUkhDb28yYlJpeVFaeGI3VGpIM1ZCR2lSQUsxYWdEY1ltU1NJS3d6eUx3VnMwc2hVSDNOYTRKZ2JVYTZ1MTVLdElOblEvWEx3QldCaFBiUEgwOWhpKzJuSzltcFNhNUxVbXJYUWJpQzBFYnFiYm1UVnVzZERackg5TkdWN05hRzFTV2p0V21nM0VOb0FnWmtGc0FqaGhOdFBVN1pYRTFxSGhOYXBoVlpCYUkrNTBQYjRHdFlQU0hwUi8rVXhGNVBxaU5QY0k2cUp0RXNpN2RZaXJTRFNiN2xJZXpnNSt6RW93dkNDZFZDWHdSaVV0MVlUbDB2aWNtdHhWUkRYUmhBVXdzaWhOL3JJOFh5NFI0N253ejNWUkRjajBjMXEwZDNBNHIzRWlydDV3dUtGMjA5VHRsY1QycHlFTnErRmRvTllmUlJtK29PZ1lEUHdJNlA3VGpQMlZST2dSd0wwWWgxN0ZHalRYSnRxZlpUSUc1eUlFT1VoUW52ay9hYzUrNnQxVXVmWlkyajdlZ1RZUWQrSWZUTmozNnpZdHdrSllCK1Q0bFcwOVFuWFZ0Z3p4VmR0WE9HaUM1aTJpZXByUzYwa1pnZVVLYkxyWjZNVDdqVzZUanUrMTJxR2U2Y3QrZHhXMXFudGpGTjF1VWZ5TUxsLzNWL2U2S3haYklVNGJYR2N4cmhjYVIvTDllRFk1QWd5VlIya2ZzUTFKYUlvOEY5cTcxVkFydW9tYTRJeUZBbTl4N0s5SysyRXIxLzZQVjhqalc3RGFYWlROS250OGc3bWEyU3g2NnpKeUEzR2F6aUc4M0FTd3lxN2MvazRGYnZPSGVQME5NSndiS1R5RWZ3S3kwS3BiaTluN0RhNmpNbU5sR0dWSEhOUjhsS3EzS3B1Y3NjNFA1TndqaUNjeDVJL2gzMlpOZ3pIU1lOaDVySGQ4WjFkK2N4TXRKZDhvelhSN0Qwc2NzWWFFaXpBQ2F5VG4rUFhHUTNUbFExRzZCanAwMjVibjZZNVJ2cmM4dGkzMk43QU1XbzVjN2VocHpsR3lRdnJjbzlrS2Q2Lzd0K3hianprdWdIRldEUzdEUzlkZlp1bkVTb1h3b2p1bEgxaEsreTM0V1E0eXJMejBmaTVFMTQyMVRNUjNTbWtEdXZiOXp2V2hVMnVDNUgzakxGOXVaclFha0V4b0hwd2RScWRKSnpCQ0dtMVpMOGdnaWVjMlBiU0JoZmRPTTMxWXY4dnJBeHIzUDA3MW9lTlNDN2dBL0xEWlVRYkxGV251bTJycFV2bTBneWViRHJydUJLWGRvSzlMZGVZNjJwSTV0NXM2czZTRXIyYkxxeUpWR3g4VGV5MUpCV2xrbmZOTHZNYjA1VGNNdUJmbXBKUG0xTnpxcWNvZWF1VkhEMmhrcy9tOEUrSkJReXNUbEhDWHV2dXJ3bG5VN1NTOUo5VDRySDBidkg0UWhiTURhNnp4THp5M3FCL3ZkZ2JSS1pUNTRqVElkWklnMi9iWTMrdjhRMlpZaDV1SGhTZU85cVZ2emV5cnhmOTNUMzQ4eHp4czFsY0RMSEhpVGJWL3B0OElMKy8rd0pYdVhub0szOWtpUHFSY3piRVNpNFdVME1wKzVYMmhwL3hENjBSTzNJejdFL2kySzgwWFRwNmcvWGxBcmwycmsyMHo5Q21YUGNoOXRyQmhhSi9obHJCai81VyswK3RFZjZUenR4alQrVnhYKzhJM3hWMXFQWDVtZjlQVzJodDNOdGl2V1A5MHd6dEovYlpaVnZnRTJ5YjRZLzlkZGkyTnR0RDkyamlrVzMyVjJkNzRKc3Y0UkMrM1dzSGN6UVh3YlA5azUxamFrMnBsd2ZJYnBTdlVEMmZGLzZUenV4aFBmd1ZWb1RaV0sxNWxZcmpSa1ErMllnL2pod3BxczB1eVU4SzVObVdudUl4dzNvRytTaDgyUVl1M0VWZFk5Rlg2bDFDblByOE5VY09sdGhFMFpKbHVoWFJteU9zUzczaVAxWnlqdFpCM0V1WDdoVklJdmhSczNmWXg0L0JHV2JzakVmNFhyYVAyaCtweDh2OW9yVUpzWEdwbE9hTVhVMmxyVS93SlFaLzh2d3BqT1JaNHZ5TnVMWXpYZktrWGtRMS9wRDFsNVlXbnZPZkthR3JmTTBqbjdtRTBRSHFZUGJkSTdxb3ZEdjlWZ0REaWJHUWcyTXA3eGxrSEo0RmpFTWFmWm1xSDdJTS9qKzcreC9zL2dNY1QzUE1BMTd5Y1hYQ3pyeGdXayt2MlhyTE5PWTk2dlFsMnhiRjdKUWRmMHhMcFBsZEhrWVlkenZDdVVqUkZkaDVqSVZrdjk5YmRwYlpxMmJubXAxcmRxN1orWDZ6OC9lY25XMTJiYkgybTQ3SHFGT2puMm04cjV4dDFKeGRjM2JOMlRWbmYxR2N2WkhrN0h2TDBIck4wRFZEMXd4ZE0vUVh4ZENibktGL1E2My9qZDNqZCthTDNsZU90bXFPcmptNjV1aWFvNzhvamhaZWRJU2o3eTFEbXpWRDF3eGRNM1ROMEY4a1E0OFo4bkEva01kOVplaFd6ZEExUTljTVhUUDBQV1JvaFJiVWxYYzFPOStJbldVdXE5bTVadWVhblFVN2g1SmRCanZYbFhjMU85ZnNYTE56emM3cnhNNTE1VjNOMlRWbjE1eGRjL2I5NGV5NjhxNW02SnFoYTRhdUdYcGRHYnF1dktzNXV1Ym9tcU5yamw1ZmpxNHI3MnFHcmhtNlp1aWFvZGVkb2V2S3U1cWhhNGF1R2JwbTZMdGg2RDQ3Q3JRendsbFNiUWZYcHdRN1ovT2NqRm9yd1pKNVhPZXdNZHZWTFBadnhqRHFMSVhyYnFKdlQyTFBxNVl3MkExRFl0Zm9XZGxWZ2ZGajZTMk1JVU4wTXF4TWtyZE4xcFBtcldpYjBLRHRtQTZWMWJZdHJtM2hMNE84amgxMU0rMXpFclBGWDZMMi9VTnJyMGozc3JLRTY2NTdUN2p1UmJsZTlrYS80OW9IdFJITW8xeXJPbU81MHFHdU1sNG5UOVNVZkpMYUU4MzNSQTJwWDdVbldzMFQxYVYrckpzbitpamtVOGJRa1NlOEFVT1AyUjNPa1dscmhxNFp1Z2hER3pWRDF3eGQ1d3FVRFAwNDVGTnRsc25SV3pHbTJzYmUwcTgvWFVTaXVFZXhWWC9Mak45a1hzbGp2eWJuTkEvWkREaXZ6ZjVaN0hqQmZpYjdCTDlOQ24wUTkra2dYM29ZOVFFSDF2SGI2djBEbGJaVTBiMHRaTE1MdE0yeHEyay93eitGQnVicDBGVHJNaTF3MlYrd2hITzBvQlp5bk5BaHlBdUFCbmxNdzRTbXd0RWQ5aDAwYjhhT2ordlFmN0E3OVJoV0hpSkpuUHFhWVhhSnZBbzgveWY3ZmhYZ0ROcjF2d0ZpRC9ETzIvQTNkdFh2dEZuQmZOUnFKSm1IZmJRSER6Ukgwcml2R0VwTjZSZzNoNStSV1N0b3lXWk01OFErV1RleS9FSjVMT1Zwa1lFczAySGF3R1NCckFQYUFmcFNuWW1LZURFdENkTjhxMjlWdFBwcDF1NG1mTGx1bGxLdE4zRU5mTVM0ZE1ZaWowL1l5KzBJVnVKWDhuWVEwZmRzM3pCQTlHTUZaZ0tkc05oK0QvMTNIYTJienA3WlN2ajJIYzVNRGxwQnNIOHo5aDk0VjkxYllhWW43TGozWUl2UVgzck5aZnFhZmY5ZG02WkljRXM2NXczM3BlTm4vWk05VDFQUzhVMjJINlQybHYxOWpWcjJLWFhXY0NOMkxEemxMT1hJaDdFamY5ZkU3MTBXdTI3ME9lTkhQazE5em5qUFZVLzZMUFZjdVgrcXMrVTdDNmtrbisxMlpxelU0eUxPZUROa3F5dEpIMEtwcVo1elMzbFdFWVN5ZEREdm5tcHNaVzJVSTZTMGNUTFBpRExWbUdTUGtVZVJzNHFNeHNlSzQvT2VKWGxHbm1hcGU1WCs3RStVejU0eWJrcXg5QWJiQW5LNHh1dFg5UjFOeHJYQXNWTzA1WE5reHk2My82SFZoLzN3SEEzMEw0R2h1NWdYbUtFUEtXZGZWc1BRajBMWjROWGVhK2ZvVDN6MDkwY010UDNSNUhweE50eUZYMXQ3UlkwZmJqT2FUZG9LSDN5Sk5iazBsbnJWVGRMVnBWOFQ0dDlsWG5NMVRLblN6YkxhSFdIWXl0b2Q5eitNd1A5bzF2NUg3WC9jTy85RE5TWnEzNlAyUFc3ZjkvZ20rbmFHU3J3TWQ3VXcwOURsY1NGNEV5MEZMemZ1bEpkWE01TGorSlhEL3BsMmdON0t2elFiNTVvKzRUM2h1U0Mvc2h3L2NCYjRnY1lhK29GdmtQOWVoN2szNlR6MUhPb21PNCs4UEFmWHJIOEMveWxsNUlEVlNHSmI1TXlubUYya0dUV2V0eXAwM21yMHJJaXVsTk8rSDVsRUx4TlArQzg1dTdja1BYUURQZFRYVGcrM1VQK2l6MXhNczZZSy9PNU9ROHJKczV5dWJJWmIyRjdxOTRVaWh4M09kZ0lHczR3cWhIeTdNa083NG5BckFiTWVCbFpJeG5QWW9GRk9ySllBWjFLeGhuSyt4Tm0wYjVsa1B1QWNMTWpwYzJCemszUHFEMUtyRGxRWjYxWGxqbFh5aXN2OEFicyt2SjlwSHBIeUFHTlJtcGVsK29NcXVXSVBLendhVERZZ0NSanZIczVSaFRPaERmUUpRRUozRzZ1dENuMFZqbm5vUCtValZid3BhNXZuSjNkWUx6N0FQRk1GU1Jnb0F3UEhrb01lZ010YUMyY1JvOTVaRStkK2lsWGszQ2RKNUdNYWw4clh3VHcyeVNUOFhtVVU2R3lmaHhHT0ZjeVlpTXpjT21Vc1ZvTjlpRjAyeGh2aU8rdlpFVjQ5V1dsWEZtM2piNGUyQ3NWczNKOWdKUTdNNG9PUHZSMmNYejFEQnhJd3NaYURKR0RnOVlGckxQVDdtbWpGQVdlUVU1UHQ2NktYQ0RMeFVBYnVyVWpnZThSVVBMbUlveStWdnR0WHJJZHhpLzFENnRuL3cxcEh1NGg1Q0YrQnR0MkMvTE9sbWEwSlQ3VjlkdFluOUJmUGNhNDdUeHYrRFROKzBUT2lPQWg4UGdVei9kOHpLZitNSGtINnY3S3J0ZUlaNFVhUUVUYi9KaU0rWDJyWlVuK2svYWJCKzk3ZUxtSHNkL21xSmNqN3RJSzR6a0QyaFJWTlU2eGdnbml1aFQ3OWxMVno5TkpuNkoyWTZISGNoaXllc21Qb3FjdU8rMmZLTSs5eXpLZExNSS81UVlZaWQ1QS8xdDlHam80K2Uzb0ZXTmxvcjhuUTdxREgyVUxkK0FtUHB5eWloWGJjUTl1aG80MW9ZcFhjSEhWb3p2YkJFVTRpMmx1Ti9qeExSU05aWTlhOUplYlBrbVpjRTc3bEZXdVhXUEg5TGxoM0c5OWFmdnk3eUxBUTQwSHRHVVY4Vk9XZmpQamFYeUFYeXdnV1FYMkxYZWNkMXZYVG51MmdXazQ5RG45RWZncVBmNDN6YlI5eDNlcFZ3VlVDWmYxb2E0Mzk2Qjh5OEZpR0I1SjFmWlc5YU43S2FNL1RtaUthOXlpKzlVWnhGMVNNR3ZoZms4Ly9kTkVUYUNmMFJkU2FmbGtqUHgxTE9kOXpqSlVlTUpjaHBMQ0QvczkydUtleS96VkhQQnRZdlR2RlBKdUxTSnRvUDEzdUZjUGZKcTZaRXZYQTRIWE4wWGVEbU94Mi9DOEhuL28xdzBvOGRiSHg5SVB5ekUrOGxhdTMwK2FPVnFVRmFiS1V4eU90TzR4WGlJdjNYaHhnajkrdmZKMWh2T3E2L3NVcGdjUDlXMmtZbDJTeEduMjUzaUYvcGFHOCttK2RWaHBDckZWMjFZRmN3Vkt2TmJ6OXRZYWRXMkRscjFOV1RhaFpXTHdmN2hpdkQ3NWVjb1p6MlV3czEvTFZUUHgzWXVMeWE3Ni9MQ1pPcmhXc3VmaExYZmVkeHNYZnNDZTdRTjkveHZSQzFDUkd0MVdaQy9Rd0swanhwc3R6ME4zSVdqVmFSZHRnSEhTM3EyaFhWWk1ZeFMvT1lEQWFQeXZpSlJoVFhZd0NvVmFqSzdHa0cxd3YvY3d1enVhWkJlVDdERFdSbnVBU1J3bG8rUFlOcFQ3RCtZWTIycGt1U3IyRnM0dmRtTlNubURudXhxUU8vM2w0N08za2tGZFZJWmlQNnQzcXd2ZFlEL09aOTRwV1MzOW1ueTB1RFZpTHQ4ZDFKR3BCSWFkTmJGaDlicnFEbG5DT0k1enkweDJjYTRqbXAxdFlCMlBpZkFMOHBlOFc2dFA5MW8wc05LdkxhRXVhZVpoZ2I2RGZkeVVucWhtOHYzTEtRN1M2ckRiUUY3c2tEK1lPNVFQYjdxOThWQ2pHWmZJRDFwYWRhNVFMdGxrZnp2a244TEFodW9oSzVidXdQbkRGTW1relNiU3hNcWVORlRyd3Q0VzJzb25lMGYyVlNSTER1RVFlSXZaenJOeUYrRnhVdzRvcStCRkdXVmZJaVc4MGVyY254RlhYT0s2aTk2N2lsY0RNMlJ4amJ3OGpYWmdmbWVNWlFqb08rcUp0SEI4TnZrckc0SjVybCsyQmlvb3FkY3hwK1lpdjBVOXdJNUdvbkZsWVZYMTZHYVRoZjBjMkU2TC9HLzRkN1V5dUY3M2Q0Zm5DOHp3TC92a0QrdGJBLy9tOVVTRHg3M0FPQk43czZ5QXFiakRqTWczeTdKZVlyUi9pNkp6NzQvN0pkTUd1c1hOOGpvMTl2akRuSGIvWFB6eGY2SDd2Nk9oOE1XY04yK3o0UFhzUEQ3SUh1TTgrd0crOUlUWFBzZGs5NWhmWUcrRDM4UVNQSGZUdzIyQ016VEZ0dEVmc1dOZnZUV2puaEs0K3Nla21SM1E5YWc1M29KZkgwS3VHM3ovUm9UdjlFd011MHo4eHNSbXdqUVpyREdwTWFQeEJGQnNQc1FuZW5oUFlCeStSL1RwTjNjUHhHbENmQi9TVUEraXN3YjdoY3czR2ZUeGtQS1o5QjlTY1FlTlB6bnJYQzdyeEF4WVlrcEY3eHdUKy9Icnhjc1NPNlRUOEE5NU83Ti9ZOVppRUo0ZnNLU2FIL2ZORjI1dFpIcjZOWjNJMldNNkYvTDJ6MGZWaWNEU0JSOWdkanFFWkRmRkpSanVvZ0VQVWpSSHNnb3VNSnZ3N1EwTDNkMFpEYW14NDZKMmRYZnkyMDhmR25vRDZqSVo5T0dFZkx0cndmeG45ZXI1b1FtdlQxeE5xUm5EKy91QVFtbDlzT01aaDdSNTluY0RsZnJGN0NPeHdoSWdlUStmMjdTRnNHOXFuMFBTcEdkb29nVjM3Q0U3YjI3WGhZWTVmMmZCdGFPTzNnd2txMXNHRWlMS1BCQStEOWs5c3NXemFQeHZnc1dkSDJQL0pHQy9Iem9UbXJMK0RGeCtjc1F0by92R1JkYjFnZjg0WExSOGJqeHFkbW9iVXNIWUF4elAxYWZyWU1JTnhiRGZvV3JiT1c0TzNKclo3eDd0dzNHUUhSOXhrOUJLYU0zZ1EzZC90bmVJeHV6M1V1dDNlRG03dDcrQzMvdEgxWWppWWVJdkd6MDEvY2pLaUQrTkR2cVYzd2ovNHUyY0lzWDkwekxwM2ROekhhL3FqL1dNTWFFZWFnK1ptbTVtM3d5TVUyT2h3U0EwYytsODR4QXdNUllIc2RUNzFhaUxWVXlwaWpxUS93MUtMbnpCc05iQXdybzFsc2xNMDVWTW1KZFpqLzNCSXduM0ZKRDNjZWNWbzhQaytiRGdkbzg0TitTaDl5UzR6UlU1ejBDZTg5SWREaE9qSXh1T09kdkV5L1VOVWdOMGhVTUllWEhMM09XemZHOEs5ZlAvRklYdm1GM1NRN3lmdTErRDMyMFIyaGJlbXcxcFhtcnVkeGU3WUtIVEh3NlA5WU1QWnlRRGZla0JOL0IwSU9KaW5OSmFuTkpRNzhaSGNuYnVRVEp6czRHTVVmcEJ2UThCUW9vcEgwRXVDNXUrUCs5ZUwvWk16NlBqK3lTdHNiUGJOYkxIMkZiWENlREZ6NXJFeitzeXgyTy9qUGZmN3p5Tzc5dnNITU1EN0wrQkdKellTN29tTkN1MlArcnZzdG1NMFN5L0dSMFM3dTVGbS9Dc2pxWlkxYjNqV2ZDWWpldGozRmpvYnlhRC9yQjN2MmQ2aWJmaGoreFNOemY0dTJscm93d2llTzJKZ043aUJIZkUwdzNua3B5ckp4SUxPajlqMnZ5RGtMR0pldlF6enF0L1V2SFpiRmMxcnA1QjVMWVRNdjZ1UXdhVW83OUNSL29rSERnNFdEOHh1RXpQOWhwanBxOExzSWNlTURQc0hYUHArbGVPdVdWWGROZGVOWWRQSXdNYnRFRGFtVVJvZDNTSjRISUxISVhnNkJFK0g0T240OW9qeG16djFiWnUzNEI0WXpCV3diZjZoR0lEUE9JRGhha0I2NjJyMHlDaVk3TUtJcHRITVF0TXA3L3htb1NscG1yUGMwWWtRdGxvS0NPMVJqL2JZMUJZSkliWTRvR0pDYTFzYkMrT1hPMnFWV09vc2tGbnF1QzBSU3VnVlFva1NZVmFJVVpFd3F4QTZaUUt0TlVWbkt4R0UzbENEbG13clZ4eUtyaXhNcjh6N2E0bU5vUFErWXZNR05VTUU2b1JPSDFNcFY3ZklPcGtjN2xvVkIxYURvR2tRTkEyQ3BrSFFOQWlhUmtGb3RnSm9najJvUmhUS2ZyNlg1S3pIM1lZbXdkUWttQnlDeVNHWTFFNUJVWmpDVVpnRms3SGVNQzF4bkQxSlVTYmtwUElZM1RrVFpTSFVKSVNhaEZDeklFSlBsUWhOTUZYOEFSUFI5MUdUektWcmtocW5QbHI5NmIzRnlhaUkweU9PMHc3VEV2cTV5RXNzNG44VFRJa1JXc1g0Q1BvZGdhZGxFVDY0UHhlZmpwVmgzekMyaXlBMHU2SHROd2doZ3hDeUNDR0xFTElvNEFPcHhpSStlQXdNVjlpR01oaUt1Qm1tYVA3UzZHVlJlWDZDcVZTMGJDRDFMb2ZTbUdZRnp6S1VwY0xueW1BYTNXSmdQdUZnN3VKc0diM3pTNlFiUGdjVmFRUW81Rml2WWpDMlo0UmpXNlJtMUk1RVZoZ0RwOGJHcTVIdmIxV09ZNHhPTVFSN1BQL1FxNFRYUm1RUVV5M2orK3lFRmtkTk53dUhObnJES3UrbU5oc0VHL0luQU9kbFpSdXFJZmNiTUF2UE81ajZyRFIyMlFRbzlLM2pFbkx6SlRrYmpTeG53MWlwc2xVRjZGZkdhelNWSHdYSWFoSkErbFRTTFpFdGJSQkdiaGF4Z1ZyazZ4WWFrQWhPTFI0RG9WS3RaRlRLdWhVUVc5VUJPc2FpQVJpZzd6TFZUTzh1VjgvdWd0U2lHRDBNTUtMRm15NldibHdFQy9KaUdheEMxTVdSUWJYSzlkQjB3K1h3Z0Frc0NFOXJ6c2tMVGdhQU1IRmF6RzRXVkxBeDB5dGpQbWNmZWttOXlzWk1hTlJ1TUllY0hYQkx1T0ZES1V5bGhGdmJMYTlXRnM4dk8xeXZ6Sm0xYk53VUE3TW5zczNjM0JSSHNvcjNwblk3TUkyZkRxWnJsQWN6OE4yYUJxRkoybGdNVFgxZTJQa2didzFBOUNvbzRZalcydVJQUGtwSzZGa0ZIQS9QcWpCMmhXbmdPb2d3TGw4RlFmTnM0ZnlDYlNBdldIeUlBWXNmeGdydDNBZ2d2c1NaOGZlUkY0VUlxK0ZvZitURXJSMUN0a3ZJb3FtTUlOdTRhZDdSSWx4SiswQk5PdHpvWWt3QzBNSmNGbFVrcFdQYjVObEhadDRvZnUwU3VpME9iNHZqMitJQTA0aUdEMU5QbWxFQ2IzbDhnTWEvR0pqbEF0MTRuSXZ4VnNYa2Z4RTFUYUpaUUZGTlE2V29MWTRrQnpJTngwQlJCWTdTdU0vSGNZTFR3NjcyUjVrUlh3aklZdDZnR2trYzZHQjBwa3MzMWpqaWNUUUxJTWZSb1U5a2tJNm9ZTklCRmlKY1liWDV1ZlpCR3VxRTZydmxUa3NWekJzMGxsT1FvSWF6bFpoeTczRVU3VjV5aWowYkxKRXJQdURMTWNNWGgwTVpsbXFDSFcwdjZtTWp4cE5rc1JNOHFYU3QwUkFWRFh5ZGxZSlhIcW8rV3U4LytQdHI0Sk1NVllwQktUTnc5ZWE4U0twUDdTNnVVczhvMDVmTXJXUmpKeVp1d2xXLzZlakplU2xYbWQwek1nSzRNRWFwNEd1dkRMeW95UTBkYlRGczljNDhodWMzSE04VFJVMU1EK3NXSFcwV1c1MlJITEt5SGpyS2VLK0FJWWJBS2lPWjREcUVwTUU5RzllUXdyMFpkN1RKUzgyeElZd3RDYzhPQjdSRGlMcTgxTWpsbUxvZDJTTERoN0g0a0N5YUdRY2ZoQTg1R25PckE2WGU1RlhheWVoUkpZck5pQ2hvYVhMZWJJaFQxdFFJSndqTWI1NE9tNUpQS1d5M2NOWnh1Q1E4U3IxQWlBTmJCMXdhQTVJR1lveW1lUWM5RElRYXFwSEFWRnN0QWxIM2NqSDhRUjB0OGxtQllxaTJLNkpheUh4elQ5MXpwTlFyNXdackdnUFZVb0hhc3RUSzNPUjFBazFlS01EYWVPNmZuS0V4K2o2MlBlYUE4KzhBdE80VkJub3pTQXJSdXh6ZTRZcmFBaFpMSkxYRjVKVHV6Rzg2T2NXaGJVb0tHMmRkY0poc0xBcE9wd21CTE5ZWG1OUUNzcVpMeUdKcllvc0tpd282NXJnZGNCenRoRytwd3U5aGdOOHRjSzA1SzhTMVVsSWpvTnJNYVlHVUVMSWdna1NaU2xwRnJ3QzBWYUFNdEtEaTBzY2MzcGYwdWhLZUJvbitZRWNaOTkzamF1ckYxZFJ6bGtTck4zVkIxWlJxcU1JaGNnU2l4aXVJZ3VTcG1Id015d1dXUmtlWmdVTTNOUTlGeUtXVmpDdE5rWDRERi9kR2NhV3BBaExMWXRNS1o2dkJXS3dPUzVxR0R1S2hZaFVQSllBVTRXUXc1cEV5YnBUSVZGWnhCem01TU5XQnpyLzRNRDZKc0dxRFdGVXFSaGE1anpHM091KzF0OUl3ZjRWUlFQWXc3NVJQZFFwWWk1VEdjek0vVmRZQlNrWmVPY3pUVEZGYUxpNmVid2ZZMExqYmlhQXFIejZxcGN3MjVxWnFlRXVUaU1vdzNXd1VSdy9WUFFuZjFNcFBaUWJ3U2FsTTBHL0VqejZZOUlIY0pCWXRrWnNFSDlDTmJ6WElUMExMTXhZcVNoNXBNVXhGcWNRQVh6aXVRQlFlSm1MYmhka3BZOXd6OVJFeFZLV0kxZDRSeDlSVVllcDIxSDVubDhlbFhaN1Y3TGJJalVjRkZCbTNYdWh0aWd4Y1ljVVV2aEs5T3d4V1JZTzNkSzZDVTI5eVBGdHhQSjBTVnJ5bHBNMkdpallwSVZ5bERrcFluL2pLRjRPYkgyeE5iRW54V3B3TFpidWREbHJvb05OTCtmRVZhcGxqdWxsMVVydUVuYUY0SnhKTmxwaTFaYlNwSE5Pd2ZjQzNEMmg3b0g5b1lkcmN3TFJwV0FzOXhGRjlRR0dScXA0TVhpMzlUZ3QvWGxDNDdvOENkWHhEUy9yeHRRQnl6WUNNYnF0cXJLNFhUOVlGVnR4c2xaK3dFRlk4YnkzV2dmQi9EcEwrVHg1MER6aDBwdGF2TUlIYkxsTEdXQ1E5WjhhOXgvamdaV3FpQ01HTGhUbEdSNUhaT0NCdnB3eE9teUZPMm5id3JyaE14SlFXdVZqbHA0Qk16emZKcnRJaTYzT1Y5ZEJ2RmJJZk9XVDA4ZzhYNjRrLzhoODNFeStnR2RFTEVYSnFXSlRKWWFySUtJcWttYTk4RXBJWXdTU3phcVcweitSUm9NbExqVm1MbmcyZkZPTlpObkp2dUYyT09kNUltSkgwVUNlZUhVb3B1MDBUeU9NZ1lIeVBEdVViL01YSWo3bExWdlhsMVhobjRkOVJsdkZCM0JxQjN5aVRKVXJUWlBMSTdhVHh6a1B3U1FUQnZ6RG8zc2JJc2pTR1dKdFJvb0E1d05IS2Q0RXFyeVlISDZlQXZjRmcwVzByNXNWeDZnZzNpQTlDVzBjOC9JRkhwQlI4SkI2UzAwZDVVaEF6SkFGNWxKd2hVYzgxWlFvaU1jV3U1Qk96MjRuUGtYaEtlNmJPMDB2RkNxNWFwVld1dmJ3WU81d2Q0YjVWTkxPTVpBUG90NXVFdmhUTUZ3Vi9vRjFnZld2WjZha0s0QmV5aWxnMUY4SGVVYWJ6aEYwc2tuT1dveW9sbXdqNkhnZVRUTWxndEtodlFlOFd2aWp5enFjbCtCYk40bk1pRW9iZC9HU0pxTFdSZ3Frc3o4SWZEUHZYaTdWN0ZkUWdHdHBSaC9oeVh3amhwQzVGOTV5bTdxbldKWU82eEpyOW9FZlBXSC9jNEFVVU0rNVdYVVhlcC9BeHNQMHVuOHE4NE8vRmVSbThybUt3LzRJQkQ2OHRnb3Nmc3MvNzhPNGg5bmszOGdLenlDNWQ3T0x2WDRGOXIyQmY0K2JYMFN0ZVF1eGkzeEU2UHlhNmgxeDB1N2dpeWNYWGlpZkZGL21KU2tsODBUM1Z4R2VTK014YWZCWEU5NFNMYjh6ZnYwZS9aUmNYNHBOQVZLcGpUZ3NjVTAyd0RnbldxUVZiUWJDYndiaUVSQ0k0MUZHejZFV1NqR0xmYWNhK2FnSzBTSUJXTGNBYmpFenhLeEx2MGJmaHNFa2pVMzNNYVlGamJrUzV1bDVMdG9Ka1EvZkx3UmVBaGZYTUhrOWppKzJuS2R1clNhMUpVbXZXUXJ1QjBFYm9icnFSVmVzZUQ1bkY5dE9VN2RXRTFpYWh0V3VoM1VCb0EvbzFuUUFXSVp4dysybks5bXBDNjVEUU9yWFFLZ2p0TVJmYUhsL0QrZ0ZKTCtxL1BPWmlVaDF4bW50RU5aRjJTYVRkV3FRVlJQb3RGMmtQSjJjL0JrVVlYckFPNmpJWWcvTFdhdUp5U1Z4dUxhNEs0dG9JZ2tJWU9mUkdIem1lRC9mSThYeTRwNXJvWmlTNldTMjZHMWk4bHhxOXhGdTJlT0gyMDVUdDFZUTJKNkhOYTZIZElGWWZoWm4rSUNqWURQekk2TDdUakgzVkJPaVJBTDFZeHg0RjJnUnZHTytqUk43Z1JJUW9EeEhhSSs4L3pkbGZyWk02eng1RDI5Y2p3QTc2UnV5YkdmdG14YjVOU0FEN21CU3ZvcTFQdUxiQ25pbSthdU1LRjExYzRHOENodnJhVWl1SjJRRmxpdXo2MmVpRWU0MnUwNDd2dFpyaDNtbExQcmVWZFdvNzQxUmQ3cEU4VE81Zjk1YzNPbXNXV3lGT1d4eW5NUzVYMnNkeVBUZzJPWUpNVlFlcEgzRk5pU2dLL0pmYWV4V1FxN3JKbXFBTVJVTHZzV3p2U2p2aDY1ZCt6OWRJbzl0d210MFVUV3E3dklQNUdsbnNPbXN5Y29QeEdvN2hQSnpFc01ydVhENU94YTV6eHpnOWpUQWNHNmw4QkwvQ3NsQ3EyOHNadTQwdVkzSWpaVmdseDF5VXZKUXF0NnFiM0RIT3p5U2NJd2puc2VUUFlWK21EY054MG1DWWVXeDNmR2RYUGpNVDdTWGZhRTAwZXcrTG5MR0dCQXR3QXV2azUvaDFSc04wWllNUk9rYjZ0TnZXcDJtT2tUNjNQUFl0dGpkd2pGck8zRzNvYVk1UjhzSzYzQ05aaXZldiszZXNHdys1Ym9oZkU2UmYvMzZicHhFcUY4S0k3cFI5WVN2c3QrRmtPTXF5ODlINHVSTmVOdFV6RWQwcHBBN3IyL2M3MW9WTnJndVI5NHl4ZmJtYTBHcEJNYUI2Y0hVYW5TU2N3UWhwdFdTL0lJSW5uTmoyMGdZWDNUak45V0wvTDZ3TWE5ejlPOWFIalVndTRBUHl3MlZFR3l4VnA3cHRxNlZMNXRJTW5tdzY2N2dTbDNhQ3ZTM1htT3RxU09iZWJPck9raEs5bXk2c2lWUnNmRTNzdFNRVnBaSjN6Uzd6RzlPVTNETGdYNXFTVDV0VGM2cW5LSG1ybFJ3OW9aTFA1dkJQaVFVTXJFNVJ3bDdyN3E4SloxTzBrdlNmVStLeDlHN3grRUlXekEydXM4Uzg4dDZnZjcySS9BcnlZL1JaWG11SFdDTU52bTN3aS9EQlBOdzhLRHgzdEt2RWJ4MXZzbkgwQm1PUEUyMnEvVGY1UURtL05id2hWbkt4bUJwSzJhKzBOL3lNZjBpL09id1orWVY2K2Rqa0x4UnZzTDVjSU5mT3RZbjJHZHFVNno3RVhqdTRVUFRQVUN2NDBkOXEvOGwvS3gzL1NXZm0vYlp6Ry9lMjhIZWM0VGViNFpmUFhiYkZDSDdiR1g3c3I4TzJ0ZkczbmVGZkU0OXNzNzg2MndQZmZBbUg4TzFlTzVpakNYL1IrWi80ZStwTnFaY0h5RzZVcjFBOW54ZitrODdzWVQzOEZWYUUyVml0ZVpXSzQwWkVQdG1JUDQ0Y0thck5Mc2xQQ3VUWmxwN2ljZkFiM3ZDeURWeTRpN3JHb3EvVXU0UTQ5Zmxyamh3c3NZbWlKY3QwSzZJM1IxaVhlc1Yvck9RY3JZTzRseTdkSzVCRThLTm03N0NQSDRNenpOZ1pqL0M5YkIrMVAxS1BsL3RGYXhOaTQxSXBUZmdkY1pXMlBzR1hHUHpKODZjd2ttZUo4emZpMnM1MHlhdnd1K0pmODhobkxtRjBnRHFZZmZlSUxpcnZUcjhWd0hCaUxPVGdXTXA3QmhtSFp3SGprRVpmcHVxSExJUFYvT3I1d3dqamJrYzQxNC85Um4xeGRoNWpJZG52OTVhZFpmYXEyYmxtNTVxZGEzYSszK3o4UFdkbm0xMWJyUDJtNHpIcTFPaG5HdThyWnhzMVo5ZWNYWE4yemRsZkZHZHZKRG43M2pLMFhqTjB6ZEExUTljTS9VVXg5Q1puNk45UTYzOWo5L2lkK2FMM2xhT3RtcU5yanE0NXV1Ym9MNHFqaFJjZDRlaDd5OUJtemRBMVE5Y01YVFAwRjhuUVk0WTgzQS9rY1Y4WnVsVXpkTTNRTlVQWERIMFBHVnFoQlhYbFhjM09OMkpubWN0cWRxN1p1V1pud2M2aFpKZkJ6blhsWGMzT05Udlg3Rnl6OHpxeGMxMTVWM04yemRrMVo5ZWNmWDg0dTY2OHF4bTZadWlhb1d1R1hsZUdyaXZ2YW82dU9icm02SnFqMTVlajY4cTdtcUZyaHE0WnVtYm9kV2ZvdXZLdVp1aWFvV3VHcmhuNmJoaTZ6NDRDN1l4d2xsVGJ3ZlVwd2M3WlBDZWoxa3F3WkI3WE9Xek1kaldML1pzeGpEcEw0YnFiNk51VDJQT3FKUXgydzVEWU5YcFdkbFZnL0ZoNkMyUElFSjBNSzVQa2JaUDFwSGtyMmlZMGFEdW1RMlcxYll0clcvakxJSzlqUjkxTSs1ekViUEdYcUgzLzBOb3IwcjJzTE9HNjY5NFRybnRScnBlOTBlKzQ5a0Z0QlBNbzE2ck9XSzUwcUt1TTE4a1ROU1dmcFBaRTh6MVJRK3BYN1lsVzgwUjFxUi9yNW9rK0N2bVVNWFRrQ1cvQTBHTjJoM05rMnBxaGE0WXV3dEJHemRBMVE5ZTVBaVZEUHc3NVZKdGxjdlJXakttMnNiZjA2MDhYa1NqdVVXelYzekxqTjVsWDh0aXZ5VG5OUXpZRHptdXpmeFk3WHJDZnlUN0JiNU5DSDhSOU9zaVhIa1o5d0lGMS9MWjYvMENsTFZWMGJ3dlo3QUp0Yyt4cTJzL3dUNkdCZVRvMDFicE1DMXoyRnl6aEhDMm9oUnduZEFqeUFxQkJIdE13b2Fsd2RJZDlCODJic2VQak92UWY3RTQ5aHBXSFNCS252bWFZWFNLdkFzLy95YjVmQlRpRGR2MXZnTmdEdlBNMi9JMWQ5VHR0VmpBZnRScEo1bUVmN2NFRHpaRTA3aXVHVWxNNnhzM2haMlRXQ2xxeUdkTTVzVS9XalN5L1VCNUxlVnBrSU10MG1EWXdXU0RyZ0hhQXZsUm5vaUplVEV2Q05OL3FXeFd0ZnBxMXV3bGZycHVsVk90TlhBTWZNUzZkc2NqakUvWnlPNEtWK0pXOEhVVDBQZHMzREJEOVdJR1pRQ2NzdHQ5RC8xMUg2NmF6WjdZU3ZuMkhNNU9EVmhEczM0ejlCOTVWOTFhWTZRazc3ajNZSXZTWFhuT1p2bWJmZjllbUtSTGNrczU1dzMzcCtGbi9aTS9UbEhSOGsrMEhxYjFsZjEramxuMUtuVFhjaUIwTFR6bExPZkpoN01qZk5mRjdsOFd1RzMzTytKRlBVNTh6M25QVmt6NUxQVmZ1bitwcytjNUNLc2xudTUwWksvVzRpRFBlRE5ucVN0S0hVR3FxNTl4U25sVUVvU3dkekx1bkdsdFpHK1VJS1cyY3pET2lURFVtMldQa1VlU3NJcVB4c2VMNHZHZEpucEduV2VwZXBULzdFK1d6cDR5YlVpeTl3YmFBSEs3eCtsVjlSNU54TFhEc0ZHMzVITm14eSsxL2FQVmhQenhIQS8xTFlPZ3U1Z1ZtNkVQSzJaZlZNUFNqVURaNHRmZmFPZm9USC8zOUVRTnRmelM1WHB3TmQrSFgxbDVSNDRmYmpHYVR0c0lIWDJKTkxvMmxYbldUZEhYcDE0VDRkNW5YWEExVHFuU3pySFpIR0xheWRzZjlEeVB3UDVxMS8xSDdIL2ZPLzFDTmlkcjNxSDJQMi9jOXZvbStuYUVTTDhOZExjdzBkSGxjQ041RVM4SExqVHZsNWRXTTVEaCs1YkIvcGgyZ3QvSXZ6Y2E1cGs5NFQzZ3V5SzhzeHcrY0JYNmdzWVorNEJ2a3Y5ZGg3azA2VHoySHVzbk9JeS9Qd1RYcm44Qi9TaGs1WURXUzJCWTU4eWxtRjJsR2plZXRDcDIzR2owcm9pdmx0TzlISnRITHhCUCtTODd1TFVrUDNVQVA5YlhUd3kzVXYrZ3pGOU9zcVFLL3U5T1FjdklzcHl1YjRSYTJsL3A5b2NoaGg3T2RnTUVzb3dvaDM2N00wSzQ0M0VyQXJJZUJGWkx4SERab2xCT3JKY0NaVkt5aG5DOXhOdTFiSnBrUE9BY0xjdm9jMk56a25QcUQxS29EVmNaNlZibGpsYnppTW4vQXJnL3ZaNXBIcER6QVdKVG1aYW4rb0VxdTJNTUtqd2FURFVnQ3hydUhjMVRoVEdnRGZRS1EwTjNHYXF0Q1g0VmpIdnBQK1VnVmI4cmE1dm5KSGRhTER6RFBWRUVTQnNyQXdMSGtvQWZnc3RiQ1djU29kOWJFdVo5aUZUbjNTUkw1bU1hbDhuVXdqMDB5Q2I5WEdRVTYyK2RoaEdNRk15WWlNN2RPR1l2VllCOWlsNDN4aHZqT2VuYUVWMDlXMnBWRjIvamJvYTFDTVJ2M0oxaUpBN1A0NEdOdkIrZFh6OUNCQkV5czVTQUpHSGg5NEJvTC9iNG1XbkhBR2VUVVpQdTY2Q1dDVER5VWdYc3JFdmdlTVJWUEx1TG9TNlh2OWhYcllkeGkvNUI2OXYrdzF0RXVZaDdDVjZCdHR5RC9iR2xtYThKVGJaK2Q5UW45eFhPYzY4N1Robi9EakYvMGpDZ09BcDlQd1V6LzkwektQNk5Ia1A2djdHcXRlRWE0RVdTRXpiL0ppTStYV3JiVUgybS9hZkMrdDdkTEdQdGR2bW9KOGo2dElLNHprSDFoUmRNVUs1Z2dubXVoVHo5bDdSeTk5Qmw2SnlaNkhMY2hpNmZzR0hycXN1UCttZkxNdXh6ejZSTE1ZMzZRb2NnZDVJLzF0NUdqbzgrZVhnRldOdHByTXJRNzZIRzJVRGQrd3VNcGkyaWhIZmZRZHVob0k1cFlKVGRISFpxemZYQ0VrNGoyVnFNL3oxTFJTTmFZZFcrSitiT2tHZGVFYjNuRjJpVldmTDhMMXQzR3Q1WWYveTR5TE1SNFVIdEdFUjlWK1NjanZ2WVh5TVV5Z2tWUTMyTFhlWWQxL2JSbk82aVdVNC9ESDVHZnd1TmY0M3piUjF5M2VsVndsVUJaUDlwYVl6LzZod3c4bHVHQlpGMWZaUythdHpMYTg3U21pT1k5aW0rOVVkd0ZGYU1HL3Rmazh6OWQ5QVRhQ1gwUnRhWmYxc2hQeDFMTzl4eGpwUWZNWlFncDdLRC9zeDN1cWV4L3pSSFBCbGJ2VGpIUDVpTFNKdHBQbDN2RjhMZUphNlpFUFRCNFhYUDAzU0FtdXgzL3k4R25mczJ3RWs5ZGJEejlvRHp6RTIvbDZ1MjB1YU5WYVVHYUxPWHhTT3NPNHhYaTRyMFhCOWpqOXl0Zlp4aXZ1cTUvY1VyZ2NQOVdHc1lsV2F4R1g2NTN5RjlwS0svK1c2ZVZoaEJybFYxMUlGZXcxR3NOYjMrdFllY1dXUG5ybEZVVGFoWVc3NGM3eHV1RHI1ZWM0VncyRTh1MWZEVVQvNTJZdVB5YTd5K0xpWk5yQldzdS9sTFhmYWR4OFRmc3lTN1E5NTh4dlJBMWlkRnRWZVlDUGN3S1VyenA4aHgwTjdKV2pWYlJOaGdIM2UwcTJsWFZKRWJ4aXpNWWpNYlBpbmdKeGxRWG8wQ28xZWhLTE9rRzEwcy9zNHV6ZVdZQitUNURUYVFudU1SUkFocStmVU9wejNDK29ZMTJwb3RTYitIc1lqY205U2xtanJzeHFjTi9IaDU3T3pua1ZWVUk1cU42dDdyd1BkYkRmT2E5b3RYU245bG5pMHNEMXVMdGNSMkpXbERJYVJNYlZwK2I3cUFsbk9NSXAveDBCK2Nhb3ZucEZ0YkJtRGlmQUgvcHU0WDZkTDkxSXd2TjZqTGFrbVllSnRnYjZQZGR5WWxxQnUrdm5QSVFyUzZyRGZURkxzbUR1VVA1d0xiN0t4OFZpbkdaL0lDMVplY2E1WUp0MW9kei9nazhiSWd1b2xMNUxxd1BYTEZNMmt3U2Jhek1hV09GRHZ4dG9hMXNvbmQwZjJXU3hEQXVrWWVJL1J3cmR5RStGOVd3b2dwK2hGSFdGWExpRzQzZTdRbHgxVFdPcStpOXEzZ2xNSE0yeDlqYncwZ1g1a2ZtZUlhUWpvTythQnZIUjRPdmtqRzQ1OXBsZTZDaW9rb2RjMW8rNG12MEU5eElKQ3BuRmxaVm4xNEdhZmpmYUdkeXZlanREczhYbnVkWjhNOGYwTGNHL3MvdmpRSXBmNGZ6SHZBMlh3ZVJjSU5abG1tUVc3L0VEUDBRUitUY0gvZFBwZ3QyalozamMyenM4NFU1Ny9pOS91SDVRdmQ3UjBmbml6bHIyR2JINzlsN2VKQTl3SDMyQVg3ckRhbDVqczN1TWIvQTNnQy9qeWQ0N0tDSDN3WmpiSTVwb3oxaXg3cCtiMEk3SjNUMWlVMDNPYUxyVVhPNEE3MDhobDQxL1A2SkR0M3BueGh3bWY2SmljMkFiVFJZWTFCalF1TVBvdGg0aUUzd3hwekFKbmlKak5kcDZoNk8xNEQ2UEtDbkhFQm5EZllObjJzdzd1TWg0ekh0TzZEbURCcC9jdGE3WHRDTkg3QmdrQXpiTy8vSWZuNjllRGxpeDNRYS9nRnZKL1p2N0hwTXdwTkQ5aFNUdy83NW91M05MQS9md0RNNUd5em5RdjdlMmVoNk1UaWF3Q1BzRHNmUWpJYjRKS01kZGpqN2dyb3hnbDF3a2RHRWYyZEk2UDdPYUVpTkRRKzlzN09MMzNiNjJOZ1RVSi9Sc0E4bjdNTkZHLzR2bzEvUEYwMW9iZnA2UXMwSXp0OGZIRUx6aXczSE9LemRvNjhUdU53dmRnK0JIWTRRMFdQbzNMNDloRzFEK3hTYVBqVkRHeVd3YXgvQmFYdTdOanpNOFNzYnZnMXQvSFl3UWNVNm1CQTU5cEhVWWFEK2lTMldTdnRuQXp6MjdBajdQeG5qNWRpWjBKejFkL0RpZ3pOMkFjMC9Qckt1Rit6UCthTGxZK05SbzFQVGtCcldEdUI0cGo1Tkh4dG1KSTd0QmwzTDFubHI4TmJFZHU5NEY0NmI3T0NJbTR4ZVFuTUdENkw3dTcxVFBHYTNoMXEzMjl2QnJmMGQvTlkvdWw0TUJ4TnYwZmk1NlU5T1J2UmhmTWkzOUU3NEIzLzNEQ0gyajQ1Wjk0Nk8rM2hOZjdSL2pFSHNTSFBReEd3emszWjRoQUliSFE2cGdVUC9Dd3ZlWUltRGk0dnVwbGorMnNTWE1GSDVhMHZ6a1B3YmZDRUVUTGwyK09UNUZLZk9ZWnEyeWFURWV1d1BYekVSRDNkZU1mNTd2ZyszT1IyVHRQbENqWjVHcnl5SGhhWTBjVHJ6aDBORTU0ajA0bWdYbS80aHluNTNDR3l3QnhmZGZRN2I5NGJzTm9kSCs4R0dzNU1Cdm5LQW12Z0xDSEJVVFdsUVRXbE1kZUpEcWp0M0laTTMyV0Y5aC8rOU9HUW92cUI3KzM3cWczekwyTmhCRC9ZU29WVThncDc5Q1BuMzB2bTlOcGdWbXpPSXQ4Tjd4dTZuRjRJc2NUOS92ODk4Z3YzK0FRekovZ3M0NHNSR2lqeXhVUVg5L3dNQmZZTnFGQXJlelFBQUFMNXRhMEpUZUp4ZFRzc09nakFRN00zZjhCTUFnK0FSeXNPR3JScW9FYnlCc1FsWFRacVl6ZjY3TFNBSDV6S1RtWjNOeUNvMVdOUjhSSjlhNEJvOTZtYTZpVXhqRU83cEtKUkdQd3Fvemh1TmpwdnJhQS9TMHJiMEFvSU9ERUxTR1V5cmNyRHh0UVpIY0pKdlpCc0dyR2NmOW1RdnRtVSt5V1lLT2RnU3oxMlRWODdJUVJvVXNseU45bHhNbTJiNlczaHA3V3pQbzZNVC9ZTlVjeDh4OWtnSisxR0piTVJJSDRMWXAwV0gwZEQvZEIvczlxc080NUFvVTRsQld2QUZwNlpmV1NEdEJGZ0FBQXExYld0Q1ZQck95djRBZjFlNkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUI0bk8yZGpaSGJPQXhHVTBnYVNTRXBKSTJra0JTU1JsSklicENiZC9QdUMwakpXYThkMjNnem50WHFoNlFJRXFJQWtQcjVjeGlHWVJpR1lSaUdZUmlHWVhoSnZuLy8vdHZ2eDQ4Zi94MjdKMVdPZTVmaDJmbnc0Y052djY5ZnYvNnE5OXErWi8xWE9hb013L3VCdk0vaTl2Q1cvcm03dG83VmJ5ZC9ya2RYRFhzK2Z2elkxdFZLL3U3L2JILzY5T25YMzIvZnZ2Mzg4dVhMZi9xaTloZTFyL0lwS2kvTzVSam5rVTc5WEs3YXo3SGFiL21UZHAxYmFWcGYxYkZoejByT25mNHZPdmwvL3Z6NTF6YjFULzh0dVpRTWtEa3lZai9uVlA3SUZKblgvbXdYOUd2T0pUKzNFOW9DNVJ2MjdPUmZNdkw0citqa3p6SGtRbisxREpGenRSWDNXZVRITmVBK3ZqcUdQZ0RLWXoweDdObkovNnorVC9sMzd3em9lZVJlZjZzdElOZmF0aXo5ekZqSjMzb0E2UHVWbm5YRDBITk4rU1BYa2xWZDZ6NUlYL2VZd0huNFdaTEhkcm9oMjRuMWpPVmZiY1JwRFA5U2RlTCtjN1FmWGMxWW5HMGZwMTluK3lsWldkNHBEL3B0NWwzWGVTeVhzcXh0MmlCNmhqSEo2cHBoR0laaEdJWmhlRVVZeDkrVFI3RFhwLy96YnkvdldmTGQraDVjNm11Nk52V3VlSVRMNk8xcUI4L21aMGlkOEpiMnZydVc5L09kL00vWThZOThobm1lOTNXK3hDNjlsZnovaHY3ekZseis5TE5oejhPbWprMG0vWGZwMjhNWDVHdnBJNTNQa1Bva1A4NWQrUU5ONTIra2pGeVAvY2krTE5zdjdkL2FwWmZ5dHgvaVVkdEF5dDkrTmg5elB5bDlpYzRzdVNBYmJMN3M1NXowQzlobldDQWo3SFlGNTFIbnRBK1Q5bWUzSGRvTTkwS2VtUmJ5N3V6Wm1WN0szM1gwcU9PQnJ2OERkV2k5NEw1dFA0NTllMTJNMEM1K3lIM1FkbC8zLzBvNzYzam5iOHhuU3ZicjlGbGRrdDZ6NjM5QXR1a0RMdXlyS1puaGIzRi9RNWI4djVNL2ZkOCtRTWY3V0ovQXp0K1k4aWN0L0FEazA4bi9LTDFYa1QvUDl2cWJzckc4aS9URjJ4Zm4rdDdwQnZTSjJ3bTZ4Ym9ZZHY3R2xML1A2K1JQbk1xWjlGTCtuTmY1dy81MjdGdExQMXRCZmFVL0xmMTM5dTNsdGRSdDBkV1IvWDA4UjhoajVVdUVsYjh4ZllpOHAzWGw4WGptVEhyZXBoNGVWZjdETUF6RE1BekRVR05iN0p2OFBENi9aMXc5OW9BWlk3OGZ0bjN4czAyK2l3dTlGWC9EL01ObloyZlQ2dnpnMWdub0RzZUU1OXpBOUMxQ1h1dnphMTluUDh6eW9LOUdQNXlqczZzZy81WGQxM1l3Zkh6WWp0QWIySDg5eDZkSXYxREc3dHRuNTNQc3QrTXZ4MmdmMkpIeFNRM0hkUDNjZmhmWGU1SHk1L3B1WHFkOWdiYnZXdWI0RDdwNVJKN3JsL1BQN0xmek5laUk2Zi9uV01sL3BmOVhkdkQwcGFkUEhSc3A3U0w3c1dNd3poekxkbG5nazlqRkN3ei81MXJ5NzN4KzRMbGZKUy9QQlN6TzlIOXdYSURMeWJsNXpyRG5Xdkl2ME1ucE95OTRoaGZXNGM1ejlmeGY2UWEzT1QvL0hhdFF6Tnl2TmQyN1hPMWJ2ZU41Zk43WkFoakQ1L1hFalRpZDFNL2QrSjluQU9UN3Y4dktzVXg3NUQ4TXd6QU13ekFNNXhoZjRHc3p2c0RuaGo2MGt1UDRBcDhiMjl6R0YvaDY1QnFyeWZnQ1g0T2QvTWNYK1B4Y1UvN2pDM3c4cmluL1lueUJqOFhLNXplK3dHRVlobUVZaG1GNGJpNjFsWFRyaGh4aGZ4SS9iTVQzWGtQamxkOFJkbXV0ck5pOUk2N2cvZHgrWmZ1UTdpbi90RE04TTE3WEI5c2J0cm5DYS9Dc1pHejVZMy9CSnJkcVN5dWJuT1Z2ZnlKbDh2bzhMdVBLbm1DYndlcGVLRE42elBMUDl1aDFDcC9CcG16Ykt6YTcrdDkydE82YlBKbUcxeEREcjRjTnZtczNYZjh2Yk5OakcxdGcvVS9hOXZuUWJuMjkxK2Z5bW9Tcjd3dVJSOHJmNjQ2eEJwclh4SHAwa0JHNFhuYmY1RElwZno4N1YyM0djdlUxbmZ3ZGIrUmo5aCt6bi81SmV1dy8rcjZZajVGUDd2ZDZlUGVNZTdrbTJNY2grNFZsdVhvdS9xbjh1LzJkL05NWDFNVWkwYS9SN2FSLzlBMjUzVEg4Rk5iejVNSHhSMmZYLysxN0s5S1BBN2VTZjljZWJQdDNQQUg5UFgxSDNiM3Mya2JHcUpCZStpa2Y5WjJCdHV4NlNSMXc1RWUvbGZ3THIrTkw3QUNzMXB6T2U4MTcyY25mWmNqdkMvdWFSNVYva1RFeTZjZmJyYS9QY2Erbm1XbDFiV1lYbDVNK3Z5Ni8xZjdkZmF5dXpldnluSzUrbm1Ic1B3ekRNQXpETUF5d21sdDF0TCtiSy9BMytGTjJjYXpENyt6bTFxMzJlYzZGNXdvZHZUL2VncEYvajMwWXRxSGxuQnBZK2VkMzdjVzJrZHAyekQvZjViRGZxZkQzUlBEL2dZLzVXdHVUOEMxeEw1WS8zN1B4UGIvcVBCSEx6SDYyakp1SEkvM2YyZWF0LzlubXV6NjIwOWxHYS8rTTJ5Sngvdmg2c0FGeXJiOVI2RzhKT2NiRWNxWXMrSWp1cmFkdXpWbGJPeHp0cDIvbU9nRXBmMEFQdUMxZzE2Y3QyRGVML0NoN3podXgzNitiVTlMdHA5MzZ1MEN2d3JYbDMvV2ZTK1R2T1Ivbzd2eldvTC9KdUpOL1BnODZuMjdCTStrVjV3cGZXLzlmS24vcmJYU3dZMjNzdzBNKzVIR2svMVArdEkxTWsvZ1F4d2c4c2ovbkVqeHVvby9ScjI0aC84SStQZmZuM1R6eXZEYkhmenY1NDhlcjlIUDg5K2orM0dFWWhtRVlobUVZaG52Z2VNdU1tVnpGZjk2SzNmdnFjQjE0NTdZL01OZUx2QmNqL3pXZTMrRDRldWJIMFkrWmcyTy9YYWF6c3FGNERsNzY2bXlIOHJ5Z2xRL1F4eWdUMTJiNXNmODZmaCtmcHN2VDJhTmVBV3lnYVEvRmJ1YzFHam12czZrWG5sZkh6MzYzWERzVTJ6OTIvbTZPbCsyNzl1ZVNObVhNY3FYZjBmMi84MVZpVTM1MithZitvMTY1OTFVTVR6ZFBLT2w4T3l2NVU4L3BSL1Q4Tkh3LzJHYnRIN1QvMFBlMktqL0hjbzZYOTFkK3p6TFBiOFZPL3BiWm44cC9wZjlUL2puLzEzNWtqbUdyNTVqbjh1N1doOXpKMzIwVVNJczI5dXh0d0ZqL1cvL2RTdjZGL1pCK3puTXU0eExhQTNtYzBmK1FiWU0wMmJaUDNPM3ZGWHhDSHYrdFpQeWU4dmY0TCtmNDJRZVkvc0ZpTmY3YnliL0llZjdkK085VjVEOE13ekFNd3pBTXd6QU13ekFNd3pBTXd6QU13ekM4THNSUUZwZCtEd1FmL2lyV3pqRkFSMXppbjcvazNFdks4TjRRMzNKTFdQK1l0WE15ZitLeEtOK2w4dWU2amtycjdMY1d1amlVam93blB1S1NXRURpbHJ3T3psR3MrMUg5R21LajROcHg5STZkOG5kNGlRdnNZdmNwazcvcjdyaGZ5a3Q4bFkrUmRzNFhJTjdjTWVlTzFVMjhOaEJyQ0dXZlpTMHl4NXZ2K2pYNW56bVg4eDAvUzE2T1JicWtmb2s1OHMreFVlK3hybG11MTBhNU9KYnJmeEVQVGovbGZqczZQVW84bCsvYjMvNmhMZXgwQVBHNnhKSjVUa0hlRzhmcFo3ditRLzZPQ1Z6aCswNzk0bGpLUytxWGN5a242VjVMLzJkY2Z1TG5NbjJiTnUxOTFMTy90K0h2S2JrZTNHNWRUN3Y3Y3Q0ZFhodk05N05xaDM2R0lyZnVleDl3NXJuaStUSTVkNEEybEJ6Vkw5QXVISjk2TFhidE92c3IvY2Yvby9PeVRYdmVWNWNlL1kvN1NsbTVyMXIzcmNycXRhSmdKYmVNRGUzU3BHdzVqNFc4RXVlVjdaNjJtUnpWcjg4alQ4OVZlaXZvd1ZYL1B6dnUvUlA1YzQ3bjNHU2FmaDUyOGVCT3Q1dUhSSjNuTnlvdVdlZXJHeXQyT3RONVpUdjArRGpMZmFaKzZmL2RmSVczc2l2RGtkNkZUdjQ1ZjZQZzNjQjlsWHRDeHA0amRBYXY2WmpYZU82UTQ5V3RjNDlZeWI5cnI0eFRyQjlXN1p2OEw5WG51M1ZLUFcvcURFZjl2L0E4aTlXN1RDZi9vN0x6VEt6eU9nL2tSRjJ5TnR4cXJHYWRtZkpuVEpqckJIcWRMNjhyMkwxYmU0NlozeDI2Y3ZEZFEvUk5ybG5YY2FaKzRlaGJ1eHg3ajNtTHZLT3U4czE1R2dsakJjaDZRYituM3ZTNzlKSGVPOVB1ZCsrRXE3R0F4em1YckJONnlYTjZWNytVKzBpdW5QUHM4MWFIWVhnei93Q2dndm9nNEw4bG93QUFEdGR0YTBKVStzN0svZ0Iva29FQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBSGljN1oyTmtSd3BESVVkaUJOeElBN0VpVGdRQitKRUhNaGU2ZW8rMTd0blNVRFB6LzVZcjJwcVo3dHBFQklJMElPZWw1ZkJZREFZREFhRHdXQXdHQXdHZzhIZ1AvejY5ZXZsNTgrZmYzemlPdmVxNStKenBhd0FaZmozd2Y5UjZmbUsvak44Ly83OTVkT25UMzk4NGpyM01uejU4dVhmenk2K2ZmdjJPKyt3TjJVRTlQdEhSdFQ3dEo2Vm5rLzF2d0kyMGY2dTlsLzFVZnAybGFhVDErM2YrWjFkVlBLczVBUmRHcjFlcGN1dVorMjhlejV3YXVlcmV1dnNIK1ZyMzNXNXRHOTdIcG9QZVFXcS9xOTVaZldPKzU4L2YvNzNlK2d0MHYzNDhlUDN2WGlHdXFndkMwUTZ2UjdwTTBUK25pYnlpTHk1RjJXclhrZ1gxL1Y1NnFCcEl5OVBSeDMwZXZ5Tno2ci94OSt2WDcvK2Z1NEtPdnR6VFdYUjhpTk5sTTh6V1o4alBmY3krN3NNVVo3YkNKdkgzOUNacG9udmpGdGNjejFGR3Azek9MUjlSVDZrUnhmSXFlbFU3dmlnQzlxeXloM1hWQitxWnkyZjhYM1gvdnJNRmF6OGYxWm0xdi9wZjUyOGdjeis2bStvVTFaMzdCeDZWbjNSTHVLREw5QStxSDZCUEZaeWRycEFQc29oUC9jVlZaMzkrWkRQeTk4Wi8rOHhGN2pGL3VnOCtpUDE3dVNsL3BYOWZSM2l3TGJZUGY1R1d5Qi8vdmQraHF6MFVkcUxRdk9oVHBrdThMY3VLKzJSdVY1bGYyVFU1NzM4VEc4clcxekZMZmFuSFd1NzcrUU5aUFpYZjRmdnpmb29mZDM5aitvMjduSGQvU1MrSTdNL2V0QTJsdWxDMDZuTmFSZkk3L2JIUC9KTS9PVVp6VGV1SWVNejdFOWZVWDNRbndGMTllL3FieG5mSEpvZW1lbGIrajJlcFE5MGE2WElpL3Y0VGNEL2tjYnZJU2Q5THdQMXhvZGt1dEJ5TXZuSlg4ZEQrb2YvNzdLby9EcVhxZlRwdWgwTUJvUEJZREFZRERvNDk1ZmRmODN5YjhFOXVJUXJPQzN6TkgzRjI1N0NZK1hFcFZqUFpIR0JlMkpWL3VyWkZaL1djWmlQd3FuT3J1aTQ0bTN2SWF2R3RxdG5LczZxOGg5VlhIcTMvRnY1dEVkQjVkWTlFMTZuSzNKMThmeDd0ZXRNVnVYVi9QNEo1MVdsUHluL1ZqNnQwcFB6aHM0cCtoNEY1M2lRaFh5Y0ExbnByTktCeGhXN1p4NXBmL1RqbkZ6RmVXbmNYbVBtVmZyVDhtL2gweW85RWFNTHdMUEM4eUh6eXY3RTdWUVdsYlBUV2FVRHRUOXladkpuL3YvS0hwb1QrMWVjbDNQV3lyMVdITmx1K2RUMUtwOVcyUi91V1BrajVSUTkvOHhHeU56OWY2b0R6NnVTZjVjclc2RWFxK0JHOUg3RmVRVklxMXhNbDM2My9GdjV0TTVQMG9lampHZ1A5RFdlM2JXL2pobWU5bFFIcC9hL0ZlcHY0QnFVZDY5OFUyWVhydnZjd2RPZmxIOHJuOWJwS2JPM3pqc1pGN1RzekVZQjVSYXp0RHM2ZUEzNzY5akp4L2ZpS1MrSVQxUE9DM215NjFYNmsvSnY0ZE15M3M1bEE4b3BWbVV6SjNldWxPZVJaMGRubVk0OTcwcitybDZEd1dBd0dBd0dnOEVLeEw2SStaeUNkU0JybUZVc3Frc1RjOXNkL3VjZTJKRTFnRzRlV2VhdUxQY0c1MkpZZDNzTWZ3WGlINnkvZDlZbTNmcjFtZnNaTTY1UjE1U0IrRTZzOEZGbGR0Y2ZDWTlkQjZpdnhyZTY5cTluWTBpditzdWU1eG51YWIyZDk0cDc3cGYwekVHbU01N3A5RWwvOHppR3gyaXo4bmZ5eW1UTTBuWFhkOHZJOUxpRFZSeEo5K1JYNTNHVWcvQTRyZTdWMStkSm96NEhuU3VYby9GQTVleVVEM0NaOUJ4UnhaL2g4OGhIWS81YWw2cjhuZkpjeHFyTTZ2cU92TVFiVmNZVHJPemZuYmNFWGN6UytTLzRPdTMvNk1yUE0yVG5POG1yT21kQ09jaFNuWTNJOU85OFIxZCtsWmZ1MTNjWnF6S3I2enZ5Wm5vOFFjZVBrZCtLWit6c1grbC81MndSK2Zxbnl4ZDUwUDJPejlMK25zWGlzL0k5cjUyemhGV1oxZlVkZVRNOW5pQWIvNVZiOURaZjdmdTUydjh6WFZYOVg4dnU3TzhjOUtyL2E5NWQvNi9tZjEzLzE3S3JNcXZyTy9MZWF2K0FqaTAraHVHZmRIenArQ3VYYVRYK3E5eHUvNENlNGF2T24yZTZXczFaZkR6MU1VNTV4YXg4UlRmK2EvcXF6T3I2anJ6M3NELzFydGIvZWk5cm05elhQdVE4bXMvL1BZM09rWDFPbjgzbHV4aUJ6b1g1bmdFWi9EN2xkZVZYZWExa3JNcXNycS9TWkhvY0RBYUR3V0F3R0F3cTZOeGNQMWM0d0VlamtzdlhIeDhCeitJQ1didjdIc3pWT29MOTBzOUVGV2VyOW1PK1p6eUxDOHoyTWl1eXVJRHUyZFg5L3lmclY3VVZzVGE5bm5GdTJKOTduZ2R5NkhYbkluZTRQTkpVYS9UT0xwa2U5RnlnY3FTVnZtN2xHMC9nKysvVlBsWHNqNWdUZm1PSEkxUS9vL0VycnV1ZWVmYnZlN3hSK2NJc2p5eGVuWEZHSFM5WXhmdDJPTG91MXFsbkUrSFhNMzN0eUxqaUFrOVErWC9zand4K2JpWGphRlVIM2tjMERxZm4rQ2hmKzRWemJueFhmVlJuSm5oZVkrdjBreXhHN2YyRnRzZjVGYkREMGEyNER2S3I5TFVyNDRvTFBNSEsveU1yZlMvalZYYzRRczVTYUYvUHl1L2swWHk3TXpNaEQyMldjbHczVlRtTWJlcmZLSHZGMFoxd25abStkbVhjNVFKMzBPbGIrNno2ZUsvckRrZW83N1hNK3IrTzMxMy8zN0UvWnp2MUxPZHUzOUs5QTlwdmR6aTZYYTZ6MHRlVi9xL1AzMkovOS8vSTd1TS8rc2RQVnVtOFBmbTRXdGxmODg3Ry94MzdveU8vZG1YOFArSG9kcm5PVGw5WHh2K2RzNDRWcXZXL2N0NVpUSURyMm04N2poRDVzSi9PTWJObnNqbHdWbDZWUjdWK1BwbGJYK0hvZHJoT1Q3ZFQ5eDBabnhVekdBd0dnOEZnTUJpOGY4RG42TnJ2VWJpU3Q3NWI0eDd2dnRmWXdBbDJaWDlQWEJSclhqZ0ExcFNQcUFOMlBBSHJXbUo2dXEreTJ3ZGNBWTdoRkJwUDdIQ2xqcThGWWhhK2JpUitGdkI5ckw0T3gyL29lcFV6R1BIUm1BMXRTK01MNkt2amRsWEd6djVkWHJ0cHRFNjZEOTdsdUZjZFFmYTdJN1QzZUk3cmxLdnBBcEhtYXQvS2RNVDE3QndMY1F1TnN6b0hvNy9QUlQzUURYb2wxb1hmY2ZrcFEyUHgxVmtCdFVYRjBlMmtjWm0wcnNwNVVrZjlMYUVyZFF3b0QwdGNEL3RvckZEVEVTZWwzQ3BlMktHeXYxNnY3Sy94Y2RvOWJSSTllWHhMOC9MNGRzV3JaZnlKMjF6OW1ITElpcDAwQWJXZnh4ODlqcHZ4ZTFmcXVQcmRNZEw3K3dTZE96M2R0K1h5ZUJ6YTZ4TncrenR2UUQ3Nm01VEltT2tHVkZ6VWp2MHJIa094a3dZOUt1K1p5YXQ4bUw5SDhFb2RUN2hEeXVVRFYxMzVsaFY0ampFdXM1bnZ0YUFQT1Y5Rm45Q3hxZUlOdmYxVy9YSEgvZ0gxZjhyaktYYlNLT2VvNDZES2tYM1A3TDliUitVRThma2RkNmljbis3SHVnSWQyL1RqZXkzaWcyLzB2UnpjVXgxazE1VmZ5NTd2enRlRHl2NzRNdVhVSFR0cFZDYWZkeXJmem5mNmg3ZVprem9HMUFhNnA4ZkhaOWV0dHBOVC9rK2g0d2R6ek96ZWFvL2Q2cnJ2SlZxTlczNWZ5NjlrNmRhdXQ2VHhzaXVkbk5ieDlMbk1kMTNaL3pjWURBYUR3V0F3K0x1ZzZ4aGR6OXhySHRudFNZeDFrTDRyWmFkTVhhc1M3ODdXZ3U4QmIwRmVqK2V3N2pzOVIxS2hzeitjQU9sMjdLK3hGdFk3UFBjVzlIbUN0eUJ2Rm84a1R1NHhHK2UwaUQwNjM2VlE3bGJqRlFHZWRaK2pQTFRISUR3bXEveS82ak5McTNrVFE2bTRHQzhYK1RTV294eHl4eWxwUGJYK0tpOTh6bzVla0YzTFVibE8wSjB4Y1k1SHVRaU5wWGMrdzdsNzVaWGhDenhHcXZYejg0M093VmIrbjNLeU1yMXUyZDVzYi8vWWpkaW54M3l4YmJadm03WUNKK0p4WXV5dDdhTFRpOHZ1Y3AxZ1pYL3M2bVZtc2Y4VmorZzJDakFIcUd4NmtwOXpRZDVmc3J5ckdMRHVEOUo0TjdIVzdMZWpLdTVWZlkzdXJWS3VKZk1aSzcyNHYwT3VFNno4djl0ZjV3bTMycDkrU1Z6OVVmYlhmckZyZi93R2VhblBJMSszLzJwdkIzNUVlVlhsRDhDdVhxcjZubUExLzZPZWNJeTZCK1VXKzJ1NTdvZHZ0VDg2cEJ6Vnk2Nzl5VVBIRHJXNTduZlp5UWQvcnZ5ZnkrcytQOU5MZHMvbE9rRzIvdk45UlRxM3lNNWZxMjRjSzN2Ui9uWC93ejNzci9PLzZ0eHlvTE9iOTNITms3N01zMTArUHYvTFpORjlHQ3U5K1B6UDVScDhUTHlGOWVMZzlURDIvN3N4L1A1Z01CZ003b1ZzL2JlS1pZQzM5Szc1am1jNmhhN1h1dkcyaXAyZVlGZlg5eXd6eTAvalA2dTlrUUZkbDc0RlhEbjdVSUg0MSs1K3pWdXdvMnRQL3dqN1YvbHA3RWRqRlg3R0tlTUlIY1F0UEo0T2Q2YThMdjJQTTNITWZaVVA0NTUvSjNhcWRmQjNKRmF4a3F4dUdwUFJkdUh5S0xKeXNyckMvN2l1Tlk3dk1xbTlpRk03VjdpTHl2OXJqRi9QUzlIUGxQT3RPRUl2QjkzQm5XajU2RVhQMWFBZmx5ZUxPZXAzUDM5TE85SjRPdko0Ry9DNkJUeVc3SHhBdGcvYlk3UEV6NzJ1RlllbitWYjY0SG5peGhVSHUyTi85LzlBMjVhT1V4NTN6VGhDQnh5VjhuR3V3KzcvWGZ1akZ6MlA2VElIOUd5UFF0TmxObFo5WmZiM3VZaWVyYXZ5VXYwb3Q5anB3OHZoM2dsVy90OWx5dlphVkJ5aDY0UTAzZnNmNzJGL1pLS3RaVElIM3BMOUsyN3hXZmJQNW4vNFF2V1h1bzhDbjFSeGhLNVQvSC9YL3dPNy9nN2ZsT2s4bThQditIK3RXeWJQUGZ4L1p2K09XM3lHLy9jUDlmZHpzSHJ1VU9jcEdVZm81ZWpad2FwOWUxclhoYzR6cTdPWmJqZkZhdjRYY1B0WDg3L09kMmJsZFBidnVFVy9kOC81MzF2SHZkYzdnL2VGc2Y5Z2JEOFlEQWFEd1dBd0dBd0dnOEZnTUJnTUJvUEJZUEQzNFJGNzBkbjc5SkhCZmhQL3JQYTlzOGZTMzJrUllHOU05bm1FUG5WdnFjUGZhVnh4aWV4TDgzeDkvd2p2QU5JUCt6ZWV5Vk4yZFRuTlIvZnQ4YW5zcjc5andyNGo5dG5wUHJjc3oycHY4SzN5ZDN2MTFZYjZIaENIMWh2ZHNvZE0rd1Q1UGF0dFYranE4c2d5ZFYrazlvMnMvempZcjVibDZaOXFiNTQvdTlvYnNtdC8zc3RFK3ZqZjM3R2g5bjl0dkliOS9YY0gxRDcwd3c3c0k2NmdmYW5ieXhiWDliZEZPcXpzVDl1aFR6czgvNnovYzUzOGVaZWI3cUhVZlpzQjJwdSthNGw5ZnZxTTdySFZmTFZOa29idkp6Z1pRMVFYL3E2aHJHOHJxRnRYbnZxQ3pQYU12ZmlHVlpua3FlL3ZVWm4xL1hJbjl2ZTk3bHpuZjYwbjU1SjBuRlJadU05MzlJck1laTVFODZVOXFOeFhmTlBKZm5FOVg2RytBSG1xdmsyNzNQSG4yZGtCemNmM2xxL2t4NDlyL2dGMHArOWlVejB5NXZ0OHBkS3h6M20wVHRwZmZVK3Y3bVhYK1pUbWtiM2JqL2JnL2ZCMFRPQ2NVemFmY1dCRC8rM01haHhtL2JRemxpUEw2ZHl3c3o5NjFURUwvK250U08ydi9sMzNtcFBuaWYzMVhDTHRWOHZNM2wzbDg2eksvdnhQTzc0eUowQys3T05BZm5SSEc4NzhPcnFyL0tybmUrWGRkWUhLL3VvM0FXMHhpeFhvbVZGZDMxQlhuUjlXNXhzeSsxT3VqdVY2WGMrbGVwL1NjeCtkL1pISjI5Y3owTVZkZHVjV2tlNnEzTjE0ZDlLZTlOMDYycGMrMm5tS3dXRHdvZkVQaUNScW91dDN2UllBQUFEY2JXdENWUHJPeXY0QWY1N0NBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCNG5PM1NNUXJBTUF3RVFmLy92ZTRWVWhoQ1VOd2FjbE5NbzBxd042cHFOR3JPMmQzNXY3djljdm9YenJXM2dTeGRleHZJOEd4c0ExbTZ0dHBuMkxYVlBzTlhZKzF6dkZ0cm4yYzExejZYOWdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRHNYUGJSYkNhRENScE5BQUFFZVcxclFsVDZ6c3IrQUgraU5nQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZUp6dG1vbHQ2ekFRQlYxSUdra2hLU1NOcEpBVWtrWlNpRDgyK0dNOGJFalpzV1Q0bWdjTWRKRGlzY3RESXJYZks2V1VVa29wcFpSU1N2M1g5L2YzL3V2cmEwcUYzNE95SHBkTSt4THBYMU5WbjkxdU4rWHo4M1AvK3ZyNmMzN0xkYWNlVmRZdFZiNS9lWGs1MkdQcjlLK3Q5UC83Ky9zdlNuV3NlaitqLzJuN3orRC9tVDQrUG43YUFITUJiYU91SzR4MndYV0YxWkg0RmM2OVdacDF6RGl6dFBxemRVNFowaitrVjFBK3lqRktjNlNLVjJsVy8rZjhrZjFmZFV2d1JSLy9pYys0aUM5eW5NejVvOEtJWCtLYVowdVZWMTNYc1o2WnpVVlpIdkpqYk1yekxGdW1uMVNjV1J0SXUxUyt6K0QvRHJhYitmL3Q3ZTN3am9oOWVLYjN4MHdqZlVHYklMelM0cHoyUi95ZVZoM0xON3lYa1Y3M2ZUNlRhZEtldXJJdDV4ejQ2UDZmYWViLzdEdDlua3hLK0xEc1dPMG14MVRLVVBjei9WVGVJNi8wMzZnZFovK3U4RW9mSDliNWJBNGdIbVhrL1NmdlBZclcrRCtGelpodjZlZjVib0R0c1dIMjYreWI5TDE4TnhpTkZmayttdjAveDVEMFZaWWx5enVyN3hLUG9xMzhqeS94YmZhMW5rNS9MK2pqU1k2MTJmZG04MUhXZy94NmU4anhQTk5rek9rMjZXU1pidms3NksvYXl2K2xzbEcrQTVadCszdDc5elh0SlAzQSt3UnAwYVo0NWhUL1p6ekdKUElpelY2K0pUM3EvSytVVWtvcHBaNVRsOXJuelhUdlpTLzUxcFRySUpld1lYMGJ6YjVyK3ZmVVg3WDJlYlUvckRuVW1zbHN6WHFOMHY5OWJTTy84MGZmL0V0cklheWI5UE5yS01zNTZrZjg0ekc3djVUZTZIcVcxeXl0VWI4bTdtek5hVmJtdjRyOXN0ejdJMS9XUFBLYzlzSXp1YzZlYlNUM1hqbG5EWmQ3T1Nhd2Q3TW12TnM2eTVucmlYV1A5V2JXbXZxNlVvWDNPdGE5VEN0dFY4ZjBHWkJYWHFNZXA4UjZKZmRKbDczdXBUS2ZvKzZYYkcrai9zOWFHN1ptUDc1ck5QWlh2TnpITGVnanJQT3RDVDlXTCt5WFkxNy90eUgzSVJCN0dYWE10Y3EwVmFiWjh4clp0LzhUUVp6Ui9aSC9SMlUrUjMzK1A4WC9HWC8yL3BCMjRweTlHWTc0TS8vSldCTithcjM2bkpkN0F2aDZWS2YwUWJkUFhzL3l5ckRSUGhQM3N6OXpuWG1QeW55dXR2Qi8zMGNwbjFDbVBDOHgxakYrTXBiUm50ZUduMUl2d2hnMytJOEFHOU8rRUhOdDkzOGZjM0tQOHBqLytYOGk4eWoxKzkzL3N6S2ZxMlArejdrZE8vUitrblV0OWZFcGZZTy9pTXM4dGxYNE1idG5HTGJrL1RyblljWnc0bUxudERWN25mZ3o5eWlQbFlOL2EvRWhiU2R0eXA3WnlQK2pNcC96THNoK1c5WXBmVWZmenJwaWo5RllSZHhNcitmWC9kbjd3WnB3d3BicWxXSFVnN21rK3pmbjh0RTNHTS8zNTBaNTlURGFRTitMVEJzVFAvT2VsYm4zdFV0b2FiMUFQYjcwdjFKS0thV1VVa29wcFpSU1NsMU5PeEVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkVSRVJFUkdSTytRZmg1ZU9hdGs3anB3QUFBRlRiV3RDVlByT3l2NEFmNldGQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQjRuTzNXNFdtRFlCU0dVUWR4RVFkeEVCZHhFQWR4RVFleHZJRUx0NlloLzRvSjU0RkRtMC83NjAxc3psT1NKRW1TSkVtU0pFbVNKRW1TSkVtU0pFa2YwWEVjNTc3dlQrYzV5N1YzOTcrNlQvZHZYZGR6SE1kem1xYkh6K3dZL1N6MzFMMTFGc3V5UEY3SE1BeC92b2QwNzdKamxYMnpZWGF0emZzOXRYL1ZONy8ramU1ZnR1dDdWam5ybitWNm5YMzd4dG0vdWw3VC9jdHp2dTlmLzlmbmVYN2FQOWZzLzMxbDIzcnUxKy9idHYzNnpQZm52LzIvci9vZTEvZXI5MEN1MVhmN25FWFZueDNYYTVJa1NaSWtTWklrU2ZyM0JnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBK0VBL0N2bXN1RkxhS21ZQUFDb1hiV3RDVlByT3l2NEFmOVR3QUFBQUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQjRuTzE5Szdqc0tOYjJra2dzRW9uRUlwRklKQllaaWNRaUk1RllKQklaaVkyTWpJeU5MSmwvVWZ1YzdwNmU2Zm5VLzlTSVduUHBQbFY3MXdtd0x1KzdMbFRtNTMwMm5nRGFzNUV0eHRkR1lJZWp3d0p3WGNVRmF3RGZoWDdEODJJZDRJRUtFQUcyQ2h2UW5pVEJkOTJUMmJHRXdmSE5mSFA4OFVOdkFKV2IzVUVyMVhFenRyNXNUeFVVNEhpZFFPRW82VER3WWJtdkt6LzNDUktnM0ZRc3BGK05BNjgzZ2JoelhKM2IzcytZWGtKc01TbjhReEh6bGRJUER5dlVhOXNvN2taNVRpSTQ5WlprVUVQTVh6a1d5TkkrVHdZd0pteXJOTGlQU1cwci91N3JicEIzN3R0SEY0OXl4YkQ0alpuZ0FUeFJxb054Q1EvUkZBa3JyNWV5aFVpVGZRejZvYTdCWmFHM0hYOXhqN211Zm42Q1d5a3VvelZqZzRrMkxOYjZ1TVhBd1lKdERwNGRCSFZQb1BqdnFEbHdYUGpUL1R3dkd3OHZQN3o4dDdoT3hEb1NucE5Od3BzRmNDbTJGU0FWOXNTY0xSelZIakp3d0NjUGgzVkxjV0FDdnJUTlg3ZmcydWJBSDlVdnVKbjdOdncwSFR4K0FJVUx0QjQzTjFQcUc0SEg0VTdkMVVKUjErSFc3ZlBycDZpVWRVM2c5M3VQanZzMXlDVXVRcVpPeVlvTEdHczZHQWxybTA3QXZHMkJPZGdQL09jQ0txZDFnVlhGZkRLb2h0a2xPOUh2RVlHYnF4MjRYVWJoWWRlU0tjOExxbEpGSlVoWFl6Qk5ad1BHUHJ2NEtTOTBhV2lUWnBqMTFRblJ1RmlHUHNyS0hLZ1N5MFhMeGZMaktSV1cxRHdQTE9rMjluTTB4ZUhBZjlZMW0zcmdZdkEvcEtKS0gvRGc5bHdiUEJsUEhFMGxUeU1vTitRMjREcW5GajBKbmFycS9kT0xCMWxCby9mQ2cwZ050cXNJa0V5Z2N6YWJ6Z05OZzFqcXlQbENZMWlkSnNlWVNyMFRkQVJsdXk3SzloTDhxTThKTXk0WWFtVW9sTTgvMUR3L25TMHg2U1J3blU4QlBRRDlmM2dVR2hLTUMvL2EvUWtmWFR4S2RNS2h0MVpubTVwZ2ZFa3NQT1M0bFgzZ1J2TU9VV3BkMEc4bFcxQmgwZjBCaURiOUdGZ1NXYi9OUE9FWHFqOFFxRmx2YUFDQVJwNFgvREEyTitHQnJSODJTa2J4bDBkYjhJVUZkM1lwbXM4M1B5d2M1RUIzamdxTkJtNU40TWVtM1JOdHpBWEthejQvOWVqSlROcHE3dyt6RlQyQTNRL2FKWGVEV29ocGVrWlVlQWFCRVBTRUpCR0JyMnRROWppYlJiZVFiZkw0Q1dwQlQ1bngxTmY2M29Dcm5odytmdjZTaHVYYzROaUdrYm9HNlVJNStyWGlDWVlMMXFRQ09GV3RxMHNjRGtQRGRyUnFZdXNQVEF2bzVlZER2QUx2Z0htdkJhRUw1eDZOTzZSdEYyb0xVQzdVQlNDWCtPUHZSR3Z4RmNMcWQvNmhWZjlGd3NLQU0vVGNxTUdVa1pXU09IanJWY0NGU3NyOHVYTVNqNk1TaVo1Y2hMTUlEdWpKbjQ0ck93WjlCd1J6clJoR0VPTWRVU2dlUzBtdDd2ZW1XTjJiaE1hb0Nya3hDOHY2L2l0TGovcW82R1JZakI5ZE8wckVvNDd2WXdpSWVDU2RwMFRSMTdmZUR4Q2VvaE5ZWUduWEhpRHNxT3ZSRUVCc3pJLzdjbTZ3YlNTQnFNWmUxem5PaE85NlFrZlBucUJSUFJYR2JtWVE1R3VFUk9yMnJHVTdDanlvL2ZnV1lkUDhQaXkxNHFLZW0yckc3MnVITUVLZlczQW85ZUlrdngwQXVvZkhvSkhiOXN4dy9UUU1ic3NaeTNGZ2xGakdrL2tKK25iUHRmYm9HTmt1ZVBWSWJvejdqVzl5bjBxK2dNODFyUEhCNFA5STRCeDFxWW54NnV1SGw0OExadUNuRmd6dDE5ZGg3QmlWaG9sYldoY1pPajQ4eDAxQVNxTTU4d0w5QXF6aUpOTnhYUlVCb1FCOVBVaUZGZ3hyQk5EK004YktHTHJqci9ucHNycDB2MUdUUFgrQ0FTd0pOOGJIQnJYZnUvM3M2dWR6RGNRK2tPT2lNL2kyNzk3Y05sdW0wV2VWcUpjTVVreU4ySTJxcVBrUnJUOFh0eWdNalNaMzNTNDNReU4rUW5zSWdsMnYwd3JYNHBkVjFGY0NzZ3czbWRJeGYycHJmb0psbEdOSHU3OXlGc3ZIK1IvUTQwVFlMaHNTUGZUTFM3VGM3dXNJeFVEZFY5M0hzVTBTQS9zdzVZQ1FBK1A3N2Vqa3ZERE9YQWJhOG5oL2tQT3Vkczl4MzA1YW9ncytJd1RHRFlPRWpPQkNSWmNKbWFVcGxZSzZKbm5ZUVgxMDVUOUMrK29MV2V4dEtNSlhTWERoZ2NteDhvRHhDN2g4dlRLWEsrajk0Rnd5dC9ZZzdkNHBrR3pjT0xmV2RHd1lCUnpCUUZvdVFyMkFvKzhZQkpWbDhZV0xqWU5TVTkvMGdjYURiVDVrbUVtQjZmNXMvdlR5SjA0TllZWmt4S0pITTdrbGpZYThJNnNwUCtpOHp5UUZBWE1mSE44SkExODFQUk95N1ZrY3gwSlNJeTFySW5GSFVDM1FaUkwrSXVkbXJjRUl3dUVsMXFrdHo1TXpIamZxME9UTXlEalVUVG1aR1lIUGlobUtMQnVzNk9SZkttNDdTSUxCK3NaRkZrTEdzWVlkMW1Oc3YzNzR6dTZ4NXczTG5WdURqaTl6WVo5bnVFa1ZGMFVJTXVVc2VnUFNNZG9YZElFYk9wSnJUTWJUNTg3QkJxSE43UnpJbVFnUDVhT0xSeW5tSE5SN0VqZktiL0RMeFc1a3FQaWs2TGZ3NFpWN1FITDFVSmcrRU1acnduZU1hOWU5dnFFTEk3Z1BhMWdYWm5tUkV0WkZ4L2VheUVHcHpVTENPY0oxVFJDdzI5NDBVRDI1WHdUVGJKS1F4bWRYajY3WWg5MU9sUlRWSTVaZmJwbUhSKytrY0FOd0N5eGFoUjRTLzFWMW16YklrL2ZEVnFhYjA3QzQ1VEJGUzVFM0tueTMvUmhkcjN1ZC9EYzFSbHpwMUxhNytucFIyQldnZWlIaGdzY0hDWFVWU0lBKzd2L3pwblZ3bXJMYTl2VlUyYU83YnpOUUtZajR0RnZnWHRVMjQ5YmE4K05nSUMyYVpDWVM0U285dGlYRXdNcG1XWkk4djE2U2c5aTNZRjgybmFqZnlIeG9IYmpNNndVejJLRStnSVF5SUJsUXVoRDZjZi9YTndjVno0NnpDLzNWRHZ3c1RuTythcnRHbVQxQ3RZcjhZQXVvN1lHemxVT244dllFYVk1Vmtpa0JVdW1RajBCTXhkOEcwcTZFaS8rSkhRSzN4NmR0WWp3eUUwWklrMUp4c0xJY3c3bEd2UjdsNC9qM1dCeTZhWTNranJMMVQyMnNSMEg5M1JDMzlOSjlPcllxR3I3TEUzVU14R1lGMkRvZFFNcXJVa2laTGdQeTJlK0tzRGJDOGJ5eHd6YU9hcERsQWFkajVrZFBjRTh0RFJENnJUWWRTQmZTL2ZyY3luOUxuY2xLNXR0VndNN3NGanE2U3NlRHZwMksvY2wyUEdkNmp1T002QVR4SVBIL0NERkdLbkZ0bVMwN2t3MUo4bzBVQURjTlB3UGVIdUpQN0NoWmNnM1paR1hIQ3MvSlJnYktGdzNsbVFuUyt0R2wvNVp5eGRoSWxoQWZ5OEZoN01mSDI2SG9wVDRZeGhBQUxLR1Z1Szh6LzRzYlJPeGFDSXU1UmZIS3hxNEIwbkZ4OE96WU4zQWJnVCs0ZzhpTTNrdXNCcEQzeFNVT3lLY2tnVHNQNHJ3L0h2MVJySElZalRhemNGQUROMkM4WVptR3VPbGVQWVFIaFAzSlV1ZTJYeGVHOVptektXMmpoTWMrd0VRekl4N0Nvd3k4WHljTjUwbit3aDNKclhVUHpZdER3Y290VW8xdUVHWGpyNFN6c3MvekgzTnpsY0R1VE0vTVBNaXRMeE8xNEJ0U0tYeE1kRjh4dStueXdUeDE5WDFGQ2tUSWVtekM4U1FVU05NUkRpdnZUZ2dkWHhVeTdMOXpCMk1CMjY4dDhuSklrVll1b0JtenBZajBHdi9PMU5hUEo0Q1I3NHlaaFNoOUMrQnZDYkx0T2wzb3JLZmJOcWRHYUd4M3NZYThRSXpTZXNaN05ycFFYNWsvREFHMkRVWHJHOUxkR05Cb3M2TDIzN21qZzhOMm91Wkxxd3d2KzBMcElrM1MvckpvTzhEWDhmSDZGK2NFMExHaGI3L3JLV2RTQW0wZ3d5U3NOYjhzSUpSRmczajhLRCtxT2hPMlo4QlY2N1dGRjBhOE5KNlo2c0FnQ2VqZ0Znanp0ZCs1dzBVMGpJRUdJWmF6Y1Q4UWJPU1lCNUQxUWE3MURvaWZGbGwydE81ek9tMVNIcW9vUndmL3NGcmZlZHBIY1lRcmR6QVJLVTU2Ky9ibjRYV0lXZlF0eFNhVnA0L293Q0tpV1JBSlBTZEpodjNPSFlNNDhMZm9HSHU3bVcySUcwd3Zmb1M1anhtRHdpSCtqOGY3L3k3alF1K3U0TmpSekVFOXFKNzQ1N3l4V1puTERIeDZCUFR3T21hSkd5UENySDl2YUxreVdHcUIrTWU4U1h3eDF0aHBNeE5CS0h6NXAzWVFaakhGQXhPbDFnMU9TNENJbWt6QXphc2EyaTZmNjlQclA5SnkyVjNEY1VKVG9GNGpieGJ5L2k1c2dDVUVlZ0xpNG9HTERhL0U5MW5TNDM1cGlPU1VnMUN1QUloeEVCN3JkU1kzS0lRRkhQbFZPMElDb1pKc0lIcEc2M2pYamdhemdhS0xUWnYzeS9JTExIeFFaZ3hXOWRhZzltdUNrU2ViVHJyMFlzeVVMNkVrUlU2VnVhb0tTQU5CMTJuZSsxRUxQWUoxTFI4dlZPWlJRVVE1azZPbzBtZlY3RmZ0OE9BbFdWcnZybHlBbjlwaDFLV2s0eldRVDYxcWNxZ1B5OUh4cWZoMUlqbmoxa0xZZW5DRHpLeldkbXlscld3OUM0TVFqeDRWeWJoWjdPakhlWjhWM0w0MWRBUDloYWJTRVF2WGJVV0RnWHFlSy95cUhlOU5HN0craXo2b1RMOXJ4ejJMY25JTU5JMEQrZXpxcC93VUwyZjlENXBGd0hJUy9zQitVSVlZcG01QzMxdWdybHhuV3hWN29hdUhrbWNhbytOWjJ3TjJVcDlYSnh1R2h3cDdSbVd3YlRIdjNnR01ld3NDM1hlK0J3Tk0vOVU3a0IwM3FDWWtrZWYrZVBwajJ2akQwRENmQzRHT25tN2Q5b256N1NZUit0cDF4VUExYzBQb0ZFUFZzVzJjOFI4NFNCaUQ0MlZtOGUrNXhuUU1rczQ4VUVwYS8vU09zRUNEaisrUStjamMvK2dkb2JzV05KMUxmSzZQSTJBT0YzMFhZWjlyRVZKTzR2K2dKNWQrU1ZVaHdtdnlWd0dBZ1V5TW0xclg5VVNZQkU1TGxjR2xCZmZNb1ZYakJneWpuTS9FOS8zZE83U2FaOHdTNzB4K1lTaGQ1YS9lSVVKcWR1Z28wV2J5eC9VZm83KzU5RnkzODBMbEJYMlNRWFZJOTFLaHBLQVJCczRDQU5WbjYvZVk3aHBOSCs0THFEdzNod3hQaTdjNnlPM0tXL2R0Tm5YdGR2YU8zY2M3TTQ3bXRUM0kvTzUzSGVtbmQ0eHVIdWo3ci8vNCtvK1hCS1NrTTNCTC9zNU5vcVMycFlPb3EzdnpMZ0IwQzY0aW9RUHpiblNhR2o4VDRPdU5aR254c0dMTVF6YXo4ejJ3eWtVSnN4bWdIcTBlMVE2RkxJQ2xHOUd1VDhnS3NwejFNTGxvL25hSHkwY1hqNUk3SGoyNjcvVk5WaVdsRS9iM204cXFpSEw4cHdEQTVNSTBuVWdZRFIwNGN1VFoxQVpMN0kyQXlYaTY3VUVjOURyS01nM2FFV1hBTHFtc0FkZmRuekJPUEdlZDYrU0QrSmtuaUtiSzdzMDJvK21ISmNIRFI4d3gxdGEzYlgzdW9WNXFybTd0MHIzVFUvMHdERU42QVl2SDdVeFloalA5bk1oVmcvYUVUVHRlQmVMK1hoVitXR093dlk2QUFXRUJHdWgyQTBkSUJYVWk0ZWNOTVlyemEwN1hTLzFVZ2o4c2lObm5jb005N3R5T2hsaDlOa05DRUZjMjI3c0FrRWJmRjZoYzdqT1diWHMwSVYwNS8rRzdyZGZjU2pSdTZSVFlFelZLMDNPRWQ0TGNYZ3lxUkovM2FLZ1BnbzMwakhyMmdydTJvOS85T1ArVjRCeFE2NVJkbDNxZEYvRHp1akcyRzNpbDRuNFhBUHkxU2pnalk3NGxnYysrRTY2M1kwWjdaUE9YRzkzZkF4MjZ2VzhkOTRoQWQ4VXdpVkZ6VUsvanVSS2FYeFhNZ2M0Z1B3Z3plVUl5eEpCN2ZMNy9CVFd6cDdpSGZjcytlSHR4S0dHL3N0dlJnbUdoUHdXQWp0RCtVWk1sOHFmTWJNR3M5alQwZ3FUUGduaHRWMG5YaG9CSDdhK21RK2dhMHZUc01STHFFcElJMnhKcjExSFcvWXd6YVVwb0c5d3N4LytBK3VQNmlScEx1cHBTaVBmRnhQQ2lGY1RDeVBiSVR3Rmcrc2puaGNxeXU0YVBQQ0h6alZzUW5yaE9kOW4wdG1IRTNQaTJvbHFBanNCNGlWeFNkSGFhQWRKZVdrcnQzV0ZjS0FIS0hzaGFtVkJGbG8vci8rNGdNWXFhM3FNRm9XaU80UGVkN0hrR01QZFRBSkJNSWNoNURzMVJBMUFQeko0UTdTTlNRTk94SmpTdllaODVFQUluTXNrQm5zU0w0TFpKRmF4Rnh6aFl5ZmhKY3RYRUNqU29FNVlxZVo3OVloL1BmNHZMdk5NYUx5T0pEWGl3M2RIY084WXlVbjRYQUtxTEFmWGlHZGJoVHpmUDdhSm83NVBWbUZXTzgxNElwMnNFOUEyN21xWGpweWprdnFBc3BZaWZNaGlIL05jcHowTUg5em9vMlpBN2x4eFJNejY5L2pUaEtmb2xpUG5VWWpidUYwSTRBZjFjb0JRZnN3Qnd0ZldheWV5clpUenF1dTFUNmJrUWtJTFk3Tm9yMDJwejhNUndqSVM0Q044bFBDWVpkSHN6UDR5akNLeDhUZ1lwY0RjUllwblVBbi91NCtrLzFHR2thZVJFRTdWWGJBaC9raFlCb2Izd2lGaVhud0xBV3RvK08zWDRuU21rYTI4REtTTlg0Y2pOVTVwdXJtTlN2WGowbEh0YndITllkakdrckRrMWlSRmZyQnFzTUV2cEdQWEJHSW9SdHRXWk45bytuZ0JVY0tFMWg0dTQyYlNrYkJvenBWUDhJdGlkNmt6dXZZaFlrT3FGNTUyclcrRTFiZmFoK0E0TXVyOVJBRDBpZFgzMmtjWnd6NWdxZUkxaTl0V0p1dTdqbCtNamFVMHJzL2xBdTFvaGtBbit0OCt1Zm1yZzBsbVUzYXdWR0pHaHROSWtIajgxaXBXZ2JRWjA2bldJWFNDSEpZNUFqdmZkaFRvT05HZzQyNE80bUtHN2RIWHNGelBBTy9vS3pwRlBwREZCTDNLTHZ3UyttUVVLRzhZUnoxSXFOY0RIKy8vTDdHbmNKbW9qQkZrZU1qcTZKRm9JS0dHdFpPWkEzejRuZWdxZUZBYUUxMHdRcksrenJOc0NGK3VIdHFtOU5scVEwY0E0ZkdBYnhqYmRJZ0xsakZnQk1kOWZnQTk2QlNjUURlNUdMYW4zdTlHUCt6K3crbGhlQXZJTFFUby9NUWlpQnp2WXpHZ3ZTeGllVmtJbjlRY00vSFpQYmhJZkdjOEVSbFB5Z3J6SkRQVUd4cVRxc08vTTNsRjdQV3RvTjVuQUYwM2xyOEIzV0ZINWNQeGNkdS9Oazg1UEwvKzJMc1gyMnZHNUN2U05Uak8zelVoTFV2REpiSXBMbGlLYmNSMFA4cFFlaVY1WDNBU3phSUc4TVhkMCtSN2pvQXRvUUFjQ3A2elJNL0JsRWg4Mi9rNThscElYdHNHcGkwazdlZTZQOHo4ZkF6aDBXd2FEVytraGtRdjZwYlVrTEIvT3JreXR0MldXSW84RmVxYmxKVW5laGtIcWE5ek1GeEZTNUd3aE0zWDZPT0RhZ1hrVDMrcy9FMStlVjhYcHZTbURRV0pEMHZYcDlVLzVJWEo2djRSaG9xUTFVN0hOYnRhWG83T0lFU1BDRkR6OU5ETjVqOXcySXFvVm9OSlMvZXJSOU4rRFE0R0NVUVRsdnlZK3VGdVB2Q01LUWdCSXpjZTkzM3Qyb1dYZ0JkZHJUOFBYVk1sc2NTaVBWVWdEOE0yMWFJOFBETHZkbERnUXVpeEFkTEMxOXNqRDFZSk0yM3R3Q0xRWmxmd2ZpUy9ZS3N0TUlvMFVaRjk1REIvdmY1OXJMRFR1QzBmTWx2M1JZa1ErTE1IUExtOXJFaUw5UkR1R2ZEZVdXeTRWSExWRTFrUHRGMEdjbnhIa0k0bHB4K2JwYlAvOHI0blBuNkZKMXF6UUZ2SUk0dlBlSDBTL2NiMWRLOTRZWlVVSmxmS1dYNnN0TGFDWmc2WUwyckJqcVJ5YnMram5nRjc0djZWTTlCS1ljYkV4ZmhIckVFT1EzME9ULzVUNG5rT1RPYUdPQ0dkT2pSSGs4LzMvK3hxVDlVaklCRGhDRm10bzZ1ZXJTc0dPSTFxa0xXRDZWb0Z2cDVsTnkyRWdPWElZRVJja0FCUHUxYm9VQTFvdHZHanphMmp5SHdvZlAwT1RKTGNKKzE2VzhYVEVqL2UvT1dRb2tUZ1dVTjJGWGRxMm1xUFhkMXNTb2dGM2JCanB6enUxakdTVjFHNlgxNGIwYjg1THEraU5aUGtNU0JxbTNvUW9SUHF2aGErZm9VbHUvRW5NSUUzdjQveGZLQUQ1Z2J3T0dmQWFuSklZN3ZBMUtUWVNTQy8yOWN4WnpUR0h1Q0N4VVZMbWpHc2ZMRzdMMXZ0WVNMMnRCc3FKOEE2Umc4ckxQeFErL3hpYVpHYVRCQUhuSmphemYvejh2VjVGZnhWS2xtMkxFaFNxNlhUZXlIdWxRNWUxbTczTVE2d0NZMkM5N3Rrd3lvVjJIalVkdzhKNFBPU0Q4MXc1V1FLMzNmOWo0ZnZYME9SOU1kb3dOaUxYdENIV2ovT2Y2em5xWkd3Nko1WU0rekZJSXNFOFNFNjJBaVpkQzhRMXovYVBOclk1eHlFV1NlMHhPeUtReVI3NDdsbDRRYy9YU3kyWGVmVi9iWHhvZngrYURHUWNEYUlpWGZEUDEvL2I2N2tJVmJrdVlXdXJaMkppZHpJMHJJMm0vWmlEd0dvdHVTQlJEcXJNd2dCUFpKWXQxZ1RXd1RwT2loUUpaRWVubDh1bFRkbitwZkhsK1BlaFNRbFcrRWM5czFmNGZ5RUJjamJwbTNmUlNEUHpzUmk3RnZ2U2NDTHhIZGZiaXhjTUFibWhncU1qWnpZcWVLVTVIL0N1aE85cmUwaVFyanhYa0tqMkNPM2NRaFpSMzQxUDU3OFBUVllFRWZtRmUwdG85WjllUE14R2Z4V0pWdzBkUE9TMVRNQ0d4LzA2ZHlSOHNHOVpnSnd0VVYwOEU4cXJ6ZG9oNFNIbG5ybjc4RWJQSG5GQUVIMHpacUZTK0NVZHU1aU5ieFhFdnc5TmpxUFFCbkt2UlBYeThmNFBLOHRPZk94WnpWbjhtWTQyL1dvYmwzSURNZEV4RldzMCtQcHBKMWpKR2Z4bWcxdzYzR1d1M3J6M0lOeCt1VkE1bXVYU01lM2ZqWSt6Q3ZZZmhpWTNqamhSb1dGd1pmWEg4ZStHNlBhSU5TQTViM09tVGRwNWx3bjFTd1F0MGR0MWlxUjFGam5tM0FkQ1pIZzNTSWRXbWI3VzJDYW1YdytvcjUwaFEvS2piQUVZWjB3T0lQOHdOSW14ZjdkNVUvY0NwWDE4L25IWnM5NXIwUERzQWRuNnpHS3Vjem9CWnJvbkw5RDhnc0FPSGVPOHMwQWgvbDBsdVlQY2VpUFhQY1JLcEhQSFlET1hmMWNnWlhvOGpWQkpSL0lQUTVPQ3J2c3dxRURvTk8zSCs3OExBOVhlSHZzMXVBSTFaN1dWZVA5amp1MVV2MGYwM1B0VkdmUWpyMUxVRzBORHhqOTBaSGpISFBTRytFeGdqTWFCT0tmMTYrbGtaM05VNGo4UFRUWjlMQXdDWDUyYWt5QWZsbHlDYTltc0JONzRubXgwem9Sc3IzT2dpenB0SWpMWDR6VzNZZ0ZsWEYwSVhQSU15NXZjNUh0NFlkOU1iN21MVWROL2JGQjNTemVON09rL0QwM3VwWWtBWG1FczFSOWYvbXhpS05UQU1ZYy84Yi9yZ3didDh3N1BNNU1kaE4yTVhqZWkyL1k2OEJDRnk5NkR3OE5ldW5WenJNK2FjVUs1T0NyQmplaG9nRWQ0akIrd1dmNFBRNU50TlFLRFRYN3RlMU1mWjhBNWJ1aVJVbGlXSFVOOVcvbXJpeGVmYUFkUHpuUkRtNWN4STFjejZBY3FtdnM2TzcwbVh4aUhSeFRiMjRLMEpweElmSW5kME9EQjZEV0NUSkdKL3p3MHlZUHY4bHhpQmFiN3gvdS9oaEdYUkQ5ZFprMTdWallxZ2xQa1BJZWIyZHRsbVkwd0xLQWhxOWdOUWJUTDJMNjg1L2FGNUtIMmpFdTRDSjl0cEp4dG5jSEczNDNEY291ZHZVLzNiME9UcmFTYS9Md3lpUW9JSC9kLzF1RWpnOE53SnlTMFJwREx2MEFoMG5zd25oZFdoQkdtV1ZlcDJNSnZaYTBzcVlvbnFvdElKN3EvOTJEbmN2MHh6dUxhNkJXREk1ck52dzlOVWxPV0d0MFFFMW02ajk5L2tscENIZEJveEh5V2VMSzNTUE5BRFRiYldYcHBWeDlzaEhkUkU4RU1FUnpoZllKNWNROFhjK0N0N0xNaFlLdXpIMzU1STZJdFR4amRDOVdScXZhM29VbWlXSlgza0czV3l4RVVmN3orQi9Hb3pIblA4WUhSOVo5ODcvd3FNRzlBb29FYlhkdVRpVjRvWUZBUEVjcHg3YXZDZzNhMnJXVm10d0hwejNidUo1cFBRVDFDZ1BzZWpJUGRnbkRrNzBPVFNpTUt2S2dRRE5hZW5vK24vM0dWNWpXeERWTFJ3KzRYdW9EcmdYZFdKdTJGS1F6VXFZUFpia0J3YisrTjU3SmQzY3g3TTZ4MnRqb0wrZzRZeC9xMWh0N0RXWkhveldZcVlWZnYwbCtISmljS1Ntc3dicVdKb3E5RXVIam9qL3QvQzVSY0wwaVQzTXpKUkF6aGRRUE9jUTlhbGx6YWpFY3I1WlcxV0F0LzdGcWxWRDU2SnhFMytWR0hnWEVSbTRTNWpyNjV5WXp0QWlOTDRsSXU4aTlEazdzSFZ0YmNaOGRSMThpc3FPWHA0L01mWEF2aUVPeGd1TGMvWk56YkZ6RjVzNVRsZFUzYk5zYTFPRnBZWFRqRCtGNXdoYXAzVWVzV1JiN25EU1lJNzR5SHJURVdabklUVXBvRHdVdHArL0huMENRUVI2UVd6aFBUOE5UZG5KMlAyOGNCMEpVWUhveXY4R2d6SjRIQXJzTDRsTGVUQnNkN3ZCd1VBYkdhSGg0N085WitScUQyUys0ek45QnJtaFNXekhVOENIRDJ0V1RLanVYb2lDdERxSDhabXFRSW1ReU5VdUVQa2ZkTmVybkdqK2UvTnhzcGJnRFNnQWlwNWdUMjFDQnNSUU1PUngwYmVjMXN2WWM2RXN5Ui8wbU4zdTJTYngreFF1dzhRVnlPakpwY05vOWs4T2o5UnFiZ2NSL2d6NkhKaFZHSlcrSzFNVHhycU83ZFRzTSszditYVXlWODY0TE8wSlh2Y3dGVWRjWnNaY0gxa21LYVFYMUJ1T3ZtN1JhZXpiVCtNZVA5R3pEQVFYc2Z5VXY1azhxWUd4VFR1cngwYXRFSDhzZlFaQlpNU1QxeW5na1JENkpRVW1meis4ZnpYMHhpdUZLem8ra054WjdyRUd3L3ErS1FsSjRwSWJEV1c2dUpSc0xtQ0cvVzV3dDNhU1lDYTE2VVExWW9kRUJ3L0ZjeTAvZXlEdk43YU5KNGdVaVhSMUp1c2dUTmlZeGxFUVJEWXZwNEJkU0pzSUdxNlRaSHdiT3A5eDJSckkxUmhkWmtNamRjek5pclpKeFRrUnZKUFZ5N1JnS25aaXE4TU9tUkhRUGJvd0RjRGs5UUE1RDZ4elVvY29SYTM1a1RlRkdSRUZvV1BnaWxma2VnUVdVZVRpMzE0L24vYWxuMDNEZVgwcjV1Ty9wdVA5TzVJbEMzcjNqU2ZSYUh0NVVhRmhBZEwrQk81UFlZQU41WE90MktKclNYMTc2RzJUcDRJZ3pxcmFYUmd4QTdoc1JTNXhUdGpwUzVGd3lCcm1Qa200WFJtZld4OGR3Vi9mejlGMFZzYlVmQ3AyRTlqd3NYYUFqeUZzS29Ra2RmNW5XRnM5ZFpibHJzcTYxR1dYTWc5RlhwdFNJVmVrMGJKc3M2eTkxSGJyZ0J6M1h0THZWRVdJa2FnOGsxV0c0VUhKckJvZllDbXp2ZWZiYlVxeVZZVHorOWZqSW0rZDNZSE82NEIwWnlhbXFpRVJpaUhZVTRpSnNMZVVIS3h1UVhLckZYRUFrUm9iTVRpWUNwMGhCSmtOSVJtUGNFa3prdnVhZDFnbUlwOVlGYXMyd1lPdXNNYytHOERya2dPTElJTmNEQVN2V2FQbjcvYWJTQm5JR1EwUE9ZU1R5UWE1M3REc0syRFlqWnBPTmVvbFBYZUpwYmkrZ0hzdFp6RG9DdFIwUVh1T0VXd09Nb2hnQXJpWmNpUmFPNXMwaHUxb1pCWDV2aFhFYXdDMXI1dmRrWkpkTE1HNHVTeE5JLzN2ODBZTFVFckt4M25kY2VYM3ZaTjZFY0hCSzVFQ0wwM1RDcldlMEc4YTVBazJaOW1LVzJ5Zi9ueFZCRmFxOXR5TnAyT3U5UnlCNGRpTDhFNzlMZWNrNityMXQzelBTZGV1QXE5ckdLTlJ3SWkyTS9vbW9mbi8vbEdKU3NsR2FkTjdXMWx6OUxYOUVhVUozUkp5d2djMW9vYjFRTmZKSHF3NU5jTFNYcTZKU1MrMmlFa3V4NWc4SDR4ZlBLWEFsalN5OFhDY3VuV1VmVXU5cVEvb2FORXRGNkptTWlEQ3JIS0N6ZjBYL2MvN2Q1N1VXZmNTaWFlUWVZVy9XOHNoeHhZT1Zob0RkWXhMemQ0SDRRLzhIK3BMNVNycVhRTCtiSmUyaVNhSVh4ekNLbVovakRHaEU5ZHdpWWp2ZmRvUHZWbDRpS2hELzYwK24vekxhUmRSSk9IV2g3M0djWEQvUDZQM1J4cXA2SWJlMHM1YUoxb2x2M1djTHoybTkwL3dhaEsvU0FGQ0dyYUdiYTV5NHlYZXpkdVQrSEpwV2NkMEhoVW9pMHZrYkR4TDdydHI0UlZXV3RncXNISmYyZFpNL0xiQUliczJuNGdZdmEvbkgrbDAxekp1YzJtVmliZHhZdEpzNGVGbG50dm9VektLV3RtVWM1a2F4N1k5ZUJ6TmFzeDc4UFRlYmRPNk9pcmVrY2R0N3crb0J1Z1NLWHpnZ0I3V0sxSGJrcEJMMDhnOWUremR6eGgyVmY4REcyRlIzOG5IRG82UGZuZmZlck1USDAzVVlqa2Q5WldJT0JjQldrY1JRYVhaZmNjNDUvSDVvc1c4SWxLaVljb1FheFFJTWRSTHhtODhQU3VVR0gyWmxtYzVRTXZjc3NxSVBlUHIvK00xblBITlNWRndnNzV6b2phRVZNck5lZFd3RlNUMlNMeWhGZVIrbWFRWTNMcVdiZmZsa2gvY3ZRNUVYbDZoanhDRzRYdHc3MC9EQ3Zmc1hnTDZ0QkR0M3lnUXFXUytWdDk0SUJzUkErWHYvZFYxbWljWVlpdFFFU0U2WGlQQmdJMFlaR2lyTE82eXBqQjdtOU9ocDQyM2VFZktUTm5uZXRseVg5WldoU1o3RGwyUG9CNXR6bVpMODU1N1Q4ekpXcXk4TjJualBBZGcxRVo1bU5hT2MrUGovLzhqUHBpV2lmV1VScmtHZEQ0eWdEeXJrUXdvT3ExSldOOU5kVHlRRzNocXpVbkh6b0RSRXlVY0g4T1RTcEtQRzlQMDlIRkpWUk16U0ZEV2JyWTJPenRsQnZjQU5VZ0ZsaGc1WlhLS00rSDhmL1FLMTA0MWcwaUdEd1RFZW0yWjV3bFFpTHlZVGpZZS9qbXNXd2JCNWNwRnM1Z21QN01qYno0bFVPZnd4Tk5tWXN1b3J5dk1zQUo1c1hwQkdGQnA1RDBOYnhOUGhwUEVUM2JnU3k3NkVqK0hqOGw5Q3pEVWg2TmVlK0QxdXFDckpmcWMvQnQrZ2J0RkYwbk1GdGlYWk95ME5melBGZ29JZDQ2Tkg4NG40TlRXSUlEWE1BRnRjVVVFVjR1NGJIMkljNzRzRDNZMWZCRjR3cWJsd0NtTlkvbWYrUDE3OTJnenBQQ1BXeE0wQm12aCtEd3RKU3p5YkdaZHZ5OWZNZEZlL0hiUVdXVzIzWm5FTUhoSWZxTldZWEtQd01UZGJrMXRsT2FRTy9qbGxZMEhqUXFCT2w1dFU5cHpRS2VjUklHRStSUE9TZU1IeWFqK2QvSEJNejlLWE1FQWpNVy8vMlFnazZmMlF4a1NKYTJVOGtLMHQ0OTJuTWtqM3ZjNWpsU3JqK2dOUm5wb2pJREFWKzMybGJVbm9uaGhpOG1nZkdSeFdlSTY5MmtaZDkyajZsUDFkK2NCK3ZjOCtnUDU3L2E3UGVRZmZYUzhOeXhiWEV4YzVyUUpaSjhIdytYbmp3YzdnLy9WelY4R0FzUkJ2bzVQWE1rZ0dwakxDTyt6V3ZCK21kVndNWGo5djh5VjZqRStqNDUzY0xnRVRUR2JWTkI0amhGdmhZWmw4NFBDVjhIZ0FUT0Yvc21ZbHdFbER6TVlhRjQrNkVWLzdBYkczZmc1aVRpbVkvTko3OXZMczZ2ZkxNZ1ErVFg2UFVsSFlnKzQ4ZCswM2dPMnVlT25ETjFuK3lIdzdpSEkxZjF2bmhjMnJZam5GM1hTUkdoNk45SFAraUZidDVxdzNYMS9zc1loZ24xZWl3VG9mTy9qM1ViN24yMXZUVU1Dd0s5YWpILzdxNzRuNld4azJMSG9QRSt3cFpsVkswaWFVMDRqWXJJWStVZlVCK2RZZHFzR04wblVQVSt1RDFVQzdGV1NqOWVQL1hqbytndmRkNnRUODNFakRHVjFoRzNLTytieHNEakJ1OXQ2K0xNM29PaTRHS2dEQUlmN0FXcmhEQll6aW9VcVBxUjdHaVp4K2JNT0QyRXd3Q3BsU1hWZXNhK1BLRXZic0VpNTEzclNJdk5MUGUxbytQOTcrKzdrTytVV0JiQlh0UHM1TUV1bVBJYnE5ZGxRTzJLNVY3MjN1dDU3emUxYzRMVGhFaGdUT1ZnVHl1M3NkVzdZTHNlWGpwTENGREN1YVpZckl1b09vSWJHYlcxK1hCK0NjT2hOTEJYQ0RYbjg3UDdlUHJaM1VzRU02OHQ3aWFkeTB2RnZUZk05dWwrYnJ4N1U2dzdlSllLSnRqRFlPTzArSnY5VTBSUlBDUmM4b1pvbUczSS93ak1IdGpEY0hJd1BBbHRYVkVWME5DQVJPbFdvQkI2YzFhTnJzczJJL24rM2o5Q3loYUpZZXh0ZGpuZDREUndPR0tTR0lHYUZSaU12bitQQ1QzeGlwandMem1DRzVyOTdPVVgvZlhrSlh3cTlEM3Z5TjdSQ3RDRUR5WkllTEgvRk12dkdmL0E4T1BZUGc1bEswdVhnZGRuNC9EbjVuR1ErM01LejZaN0RQdmd5dVZCZjAxeHV0ZHBBWnhuWWVFeEhDbWFpY0tjcTg1dGJ4R1JNaXNLWDQ2RE9Qb0U3cWZsemxIYmR6c2szZ3lrcVg1TFQ5ekJwWnlZVWNpZVhaVnM0RndZVHRTRHc4Q3ErZmorUGZFZzV3WElNeEJuMXdtRi9xNWt3ci9QNDBqeEFmc2JnbmI3VERhWldXTnZiU1RaSDV2a25IbHRxMnZJUUFoeDdKUVhrZ3BQcjV2dGV2SWtTNnV4THdJa2RTMlBVaDV1eGszdEZPMExVMEN2UXJoUDk3LzlEaDVvMk8yemhHWjM2ZHhFNFI4M0NNSTNqVWkrVExRa1F1SGJMVnRJNWY5VlluUnlnNjc3UDFsL002a3psYUd6c2hpRjAyUUZJT2t6WmdGOTJwQnpHTTNCcjVhSHdya1hUNExOTDFuWXZZS3hCWDk4ZlZ6Q1RKWFVuTVZTMmNEN1RiZUNPYm5EU2R6T0hFZkczcnhWRlJibEZLYlczZkVBTTBwU1l1WE9mZzFlS1dPM0ZkcS9kb05JNVFoYms0cmVsQ1N4TnFVRStJSndVc1FaK0t5d2Q1VVJZd3NCOElCd2ZuSDZ6K3pwWHZwWGxKL3FFVGRwVDIwQkZLbGRWNTZ3NjVqcjVLbnM4d0hwU1pFRHJ3RWlTZHBOelQ0VXhYTFNyMGMzNVNQN1NaSXBlWlZxUnRINExzY1d4SDdndUZqY2dqRHphYUJpano2a291aEh0ZS9maDcraVRSOTJvVVludTFvb3JET082Lzg4bXh3UVZyd3RDV1NXTlJhRmp0MHJsRS9oQk94OS9jZERwN3plWm52YXpFcnhyTjFOc0lkVzZ1cHpOYm9oZ3poUlBXWll6Uy94cHphODlEZEttU0VsVUlqSVgzZS8yVSt4M05oYldpaHVmL3FSek5qWHVjZTVwYzRkVG56dkxXVkcrSzRpTitDejFYcGVZZUhRanRtQ3lKWmtHazkxa1NuQ3ozSzRoeUN3VFNSN1lvbW9ZNlMzdGQ4dmtQOWs5SXp1OFQzbW1kZDJINzgvcHRYWjJvR2FGTkpXRlVPazVFaU1VRTFSaDUvY2pRRzF4SjcvT0hjNjBIa2wrbHNhcDkzdUZUd3p1R1czWFEyUEIzdkwwN0JvQ0NOWFB1azlmT3JVcVYweC9zT21HRjhETVpwcU16TlBvbFVMcHBYYno0Ky8zaU1sYyt2dkZtODVzaDc1N2UzQUcwc0IwcXllMmRuZmNsMmZpbnFYUThYMGVaeklUOTMrT2ozV0p1SmdlYm9tQjVIbDBhd3BXd2hONDZHVlp6V2ZFTnU0UlptNzdPRk9pNUFiWEVscnNIb2g1U3hmOXovMDFJR0YzVS9CeTZXanpxdjZHRkM2N3pXdXN6TUQwVWpSeHlEWnlkNVdLdEU1ZjkxaDFOWHV1U1p4NHBFS1l5WU1qSFgwYlVaaVZhMWlHRm5WNnpnVUk2enNuR052ZWVyejhpU3p3c0R6Ulp6bEI4L2Y4SzJsVURsWnlJcHF1MnE1Nmx6WE5aVTh1TDBlOTRCNnF0bU0yZjNpVzhDMGY3UEhWNFFkenBlNjd3aUFKWGRlN2tZcW1RanN4VVlJYytHZE9COXFTeHV4bmxYUmt0MkNJL0NoRmlVRWpTV2czdzgrNDFDS3dTZzZLN0NPSWhwUFk4dE83UUlzMWdKTlJ4c1BTOTRiT3J6am5lVmx1WDNIVzZ6WGV3Z0NobmdLMVBiMDd3c2U5V2VBSzh2MEpUaVZnQ2grN3NyUER3TjJNd0lwSzdBYnlBZW4rTGU1K2pVaDJWT2NQbGVULy8rRnJ6WitZNVBkZ3R4VXJZZ294TjNTQUZHTS92ZGdkODliLzJQTy94Z2ZtdVNVczhEZDBQZnorMnlsSFhDcHVNWmE2RnFSWmdUZlB1SmNjK3BqdFFVQklKTFZpelBDK0RQS2ovZS8vNTRhK0hjZlZHUWVNRlZ1ZWtUQnB3dlRkdjgzZ1BFd3VHQlBaMExwTld3Y1AyK3l1WTk1NHFRQ0I3T1huajZRaGJMai9jWDN0cExlS3VuMDBEd1c1RHl6a21adnRSWlFsMFdWS3FtNHA2UUI1bVA1Ly82MFV0eEJja3VBdUc5Z0ZEVzIzY2IvN3pEMDBGSFhQU2FWOExQaTRIWTRqbjU0dzdQTWxNZXM1ZmxRVnpvazFsY25OOTVQY2VvOEVkcTk3N002Y2YxMWFMQ1RlNUFHdUtNZE5TQ3RvUjJBMFIvdnZ5RERuck9LN0xaekVJT3hMcGN0NStzL0x6RDFheUY5OW5yTnN2YmE1azJUUDY0eXFiYVV0OWZjdjF1bld4OFZVSFByeEE4RVFxaXVjdDhwckloZ3JnN3VoTEJPSmxmTWR4bjZYUGVqZm5HUTUrSC83L2tJQXMrNmxaQ2lYN21MTGE1cmhtZ3k1aGYveVptbWVUVmFuRHhMMWZaMUkzS2QyRUErVThndkpxd1NBd1NNOG5iKy82K0FVbGdtTWp5ZGRqNUZidjF1REhxemFUSis3Y0l5TS8zLzMvbEsxLzV5bGUrOHBXdmZPVXJYL25LVjc3eWxhOTg1U3RmK2NwWHZ2S1ZyM3psSzEvNXlsZSs4cFd2Zk9VclgvbktWNzd5bGE5ODVTdGYrY3BYdnZLVnIzemxLMS81eWxlKzhwV3ZmT1VyWC9uS1Y3N3lsYTk4NVN0ZitjcFh2dktWcjN6bEsxLzV5bGUrOHBXdmZPVXJYL25LVjc3eWxhOTg1U3RmK2NwWHZ2S1ZyM3psSzEvNXlsZSs4cFd2Zk9VclgvbktWNzd5bGE5ODVTdGYrY3BYdnZLVnIzemxLMS81eWxlKzhoV0Evd2ZkbWhtWmR5bW05d0FBTWlGcFZGaDBXRTFNT21OdmJTNWhaRzlpWlM1NGJYQUFBQUFBQUR3L2VIQmhZMnRsZENCaVpXZHBiajBpNzd1L0lpQnBaRDBpVnpWTk1FMXdRMlZvYVVoNmNtVlRlazVVWTNwcll6bGtJajgrQ2p4NE9uaHRjRzFsZEdFZ2VHMXNibk02ZUQwaVlXUnZZbVU2Ym5NNmJXVjBZUzhpSUhnNmVHMXdkR3M5SWtGa2IySmxJRmhOVUNCRGIzSmxJRFV1TUMxak1EWXdJRFl4TGpFek5EYzNOeXdnTWpBeE1DOHdNaTh4TWkweE56b3pNam93TUNBZ0lDQWdJQ0FnSWo0S0lDQWdQSEprWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKa1ppMXplVzUwWVhndGJuTWpJajRLSUNBZ0lDQWdQSEprWmpwRVpYTmpjbWx3ZEdsdmJpQnlaR1k2WVdKdmRYUTlJaUlLSUNBZ0lDQWdJQ0FnSUNBZ2VHMXNibk02ZUcxd1BTSm9kSFJ3T2k4dmJuTXVZV1J2WW1VdVkyOXRMM2hoY0M4eExqQXZJajRLSUNBZ0lDQWdJQ0FnUEhodGNEcERjbVZoZEc5eVZHOXZiRDVCWkc5aVpTQkdhWEpsZDI5eWEzTWdRMU0xSURFeExqQXVNQzQwT0RRZ1YybHVaRzkzY3p3dmVHMXdPa055WldGMGIzSlViMjlzUGdvZ0lDQWdJQ0FnSUNBOGVHMXdPa055WldGMFpVUmhkR1UrTWpBeE5DMHdPQzB3TkZReE9EbzFORG8wTkZvOEwzaHRjRHBEY21WaGRHVkVZWFJsUGdvZ0lDQWdJQ0FnSUNBOGVHMXdPazF2WkdsbWVVUmhkR1UrTWpBeE5DMHdPQzB3TkZReE9Ub3dNVG93TWxvOEwzaHRjRHBOYjJScFpubEVZWFJsUGdvZ0lDQWdJQ0E4TDNKa1pqcEVaWE5qY21sd2RHbHZiajRLSUNBZ0lDQWdQSEprWmpwRVpYTmpjbWx3ZEdsdmJpQnlaR1k2WVdKdmRYUTlJaUlLSUNBZ0lDQWdJQ0FnSUNBZ2VHMXNibk02WkdNOUltaDBkSEE2THk5d2RYSnNMbTl5Wnk5a1l5OWxiR1Z0Wlc1MGN5OHhMakV2SWo0S0lDQWdJQ0FnSUNBZ1BHUmpPbVp2Y20xaGRENXBiV0ZuWlM5d2JtYzhMMlJqT21admNtMWhkRDRLSUNBZ0lDQWdQQzl5WkdZNlJHVnpZM0pwY0hScGIyNCtDaUFnSUR3dmNtUm1PbEpFUmo0S1BDOTRPbmh0Y0cxbGRHRStDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQUtJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnQ2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lBb2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUFvZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0Nqdy9lSEJoWTJ0bGRDQmxibVE5SW5jaVB6N0JGZ0ZLQUFBQVZrbEVRVlFZbFkyUndRN0FJQWhESzFmKy8wL2hYRTh1akJVekVxSThDZ1lFU1NpUENIWm1FSmFack9leGo3Z0xhbXczWWVlTDVBUGNmZDJLckFzQm9ONWZURTFkTjFMejQ1b1VIeE9xZ2V3MHZmVHI1NDV2NmNuMUlTSXBCOW9BQUFBQVNVVk9SSzVDWUlJPQ"}, +{name:"__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorScaleXY",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFvQUFBQUtDQVlBQUFDTk1zKzlBQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUFUZ0FBQUU0QnNjMGZNd0FBQUJ4MFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1JtbHlaWGR2Y210eklFTlROdWk4c293QUFBQlBTVVJCVkJpVmxZOUJFb0F3Q0FNM0hmLy81WGdRMndyMFlJNndKRUcyelNaSkFraGpSZ2QxR3FkRkN5cjAxc2l4QUNVcVlJWEJBcnRyd0xudlZTS2V2WFpud0FWTXRXYmN2NjhQK3BTL0FmNTJIUmZ1cmtCMkFBQUFBRWxGVGtTdVFtQ0M"},{name:"__ASSET__:bitmap_flixel_system_debug__FlxDebugger_GraphicDrawDebug", +data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUU5SlJFRlVlTnEwa01zTkFDQUlRNnRic3FCcjF2Z25haFFQTnVrRlhna3BTS0phZUZhWVFWSGg1WWdWbEFiZjFJN1E1UVRnc0pmZTBlTkJYMkFwajR4V2RxWnV4QUwzUnRJZ0dLdERGR0FBNGg0Vk01NWl5QnNBQUFBQVNVVk9SSzVDWUlJPQ"},{name:"__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorDefault",data:"aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFzQUFBQUxDQVlBQUFDcHJIY21BQUFBQkhOQ1NWUUlDQWdJZkFoa2lBQUFBQWx3U0ZsekFBQUxFZ0FBQ3hJQjB0MSsvQUFBQUJaMFJWaDBRM0psWVhScGIyNGdWR2x0WlFBd05TOHlPUzh4TnJ0VlFGa0FBQUFjZEVWWWRGTnZablIzWVhKbEFFRmtiMkpsSUVacGNtVjNiM0pyY3lCRFV6Ym92TEtNQUFBQUxrbEVRVlFZbFdQOC8vOC9BeGJ3bjRHQmdSRmRrQW1iU2x4Z2tDaG1ZWUI0Qmh2QUVHZGh3T0pyaG1FVUdnQjN1Z2NXZXB2bWtRQUFBQUJKUlU1RXJrSmdnZz09"}]; +var r={};Object.defineProperty(F.prototype,"message",{get:function(){return String(this.val)}});var gk=new Uint32Array(256);H.__alpha16=gk;for(var Tj=0;256>Tj;){var Uj=Tj++;H.__alpha16[Uj]=Math.ceil(257.00392156862745*Uj)}var hk=new Uint8Array(511);H.__clamp=hk;for(var Vj=0;255>Vj;){var Wj=Vj++;H.__clamp[Wj]=Wj}for(var Xj=255;511>Xj;){var ik=Xj++;H.__clamp[ik]=255}Ca.level=3;"undefined"==typeof console&&(console={});null==console.log&&(console.log=function(){});y.hitTestCanvas="undefined"!=typeof window? +window.document.createElement("canvas"):null;y.hitTestContext="undefined"!=typeof window?y.hitTestCanvas.getContext("2d"):null;Ze.maxTouchPoints=2;Ze.supportedGestures=null;Ze.supportsGestureEvents=!1;Ze.inputMode=2;W.__meta__={fields:{__cairo:{SuppressWarnings:["checkstyle:Dynamic"]},addEventListener:{SuppressWarnings:["checkstyle:Dynamic"]},removeEventListener:{SuppressWarnings:["checkstyle:Dynamic"]}}};W.__broadcastEvents=new Ea;W.__instanceCount=0;W.__tempStack=new fa(function(){return Da.toObjectVector(null)}, +function(a){a.set_length(0)});va._pool=new x(va);Ha.defaultPixelPerfectPosition=!1;Ha.SEPARATE_BIAS=4;Ha._firstSeparateFlxRect=function(a){a=va._pool.get();var b=0,c=0,d=0,e=0;null==e&&(e=0);null==d&&(d=0);null==c&&(c=0);null==b&&(b=0);a.x=b;a.y=c;a.width=d;a.height=e;a._inPool=!1;return a}(this);Ha._secondSeparateFlxRect=function(a){a=va._pool.get();var b=0,c=0,d=0,e=0;null==e&&(e=0);null==d&&(d=0);null==c&&(c=0);null==b&&(b=0);a.x=b;a.y=c;a.width=d;a.height=e;a._inPool=!1;return a}(this);E.TILE_WIDTH= +16;E.TILE_HEIGHT=16;E.random=new O;E.BASE_SPEED=400;E.xAcceleration=120;E.xDrag=100;E.yAcceleration=1400;E.yVelocity=1400;E.jumpDuration=.25;eb.__fontByName=new Ea;eb.__registeredFonts=[];ra._pool=new ng(ra);Aa.__meta__={fields:{equals:{SuppressWarnings:["checkstyle:FieldDocComment"]}}};Aa.__pool=new fa(function(){return new Aa},function(a){a.identity()});Xa.__pool=new fa(function(){return new Xa},function(a){a.__identity()});Ff.sha="";u.autoPause=!0;u.fixedTimestep=!0;u.timeScale=1;u.worldDivisions= +6;u.VERSION=new Ff(4,6,3);u.elapsed=0;u.maxElapsed=.1;u.scaleMode=new rg;u.worldBounds=function(a){a=va._pool.get();var b=0,c=0,d=0,e=0;null==e&&(e=0);null==d&&(d=0);null==c&&(c=0);null==b&&(b=0);a.x=b;a.y=c;a.width=d;a.height=e;a._inPool=!1;return a}(this);u.save=new qg;u.random=new O;u.swipes=[];u.inputs=new Mh;u.debugger=new Lh;u.bitmap=new Jh;u.cameras=new Kh;u.initialWidth=0;u.initialHeight=0;u.initialZoom=0;u.signals=new Ph;wb.defaultPersist=!1;Sa.__pool=new fa(function(){return new Sa},function(a){a.setTo(0, +0)});cc.drawCalls=0;sc.__meta__={fields:{glProgram:{SuppressWarnings:["checkstyle:Dynamic"]}}};Sb._cachedPoint=new ra;zc.fromStringMap=function(a){a=new Ea;null!=r.ANY?a.setReserved("ANY",-2):a.h.ANY=-2;null!=r.A?a.setReserved("A",65):a.h.A=65;null!=r.B?a.setReserved("B",66):a.h.B=66;null!=r.C?a.setReserved("C",67):a.h.C=67;null!=r.D?a.setReserved("D",68):a.h.D=68;null!=r.E?a.setReserved("E",69):a.h.E=69;null!=r.F?a.setReserved("F",70):a.h.F=70;null!=r.G?a.setReserved("G",71):a.h.G=71;null!=r.H?a.setReserved("H", +72):a.h.H=72;null!=r.I?a.setReserved("I",73):a.h.I=73;null!=r.J?a.setReserved("J",74):a.h.J=74;null!=r.K?a.setReserved("K",75):a.h.K=75;null!=r.L?a.setReserved("L",76):a.h.L=76;null!=r.M?a.setReserved("M",77):a.h.M=77;null!=r.N?a.setReserved("N",78):a.h.N=78;null!=r.O?a.setReserved("O",79):a.h.O=79;null!=r.P?a.setReserved("P",80):a.h.P=80;null!=r.Q?a.setReserved("Q",81):a.h.Q=81;null!=r.R?a.setReserved("R",82):a.h.R=82;null!=r.S?a.setReserved("S",83):a.h.S=83;null!=r.T?a.setReserved("T",84):a.h.T= +84;null!=r.U?a.setReserved("U",85):a.h.U=85;null!=r.V?a.setReserved("V",86):a.h.V=86;null!=r.W?a.setReserved("W",87):a.h.W=87;null!=r.X?a.setReserved("X",88):a.h.X=88;null!=r.Y?a.setReserved("Y",89):a.h.Y=89;null!=r.Z?a.setReserved("Z",90):a.h.Z=90;null!=r.ZERO?a.setReserved("ZERO",48):a.h.ZERO=48;null!=r.ONE?a.setReserved("ONE",49):a.h.ONE=49;null!=r.TWO?a.setReserved("TWO",50):a.h.TWO=50;null!=r.THREE?a.setReserved("THREE",51):a.h.THREE=51;null!=r.FOUR?a.setReserved("FOUR",52):a.h.FOUR=52;null!= +r.FIVE?a.setReserved("FIVE",53):a.h.FIVE=53;null!=r.SIX?a.setReserved("SIX",54):a.h.SIX=54;null!=r.SEVEN?a.setReserved("SEVEN",55):a.h.SEVEN=55;null!=r.EIGHT?a.setReserved("EIGHT",56):a.h.EIGHT=56;null!=r.NINE?a.setReserved("NINE",57):a.h.NINE=57;null!=r.PAGEUP?a.setReserved("PAGEUP",33):a.h.PAGEUP=33;null!=r.PAGEDOWN?a.setReserved("PAGEDOWN",34):a.h.PAGEDOWN=34;null!=r.HOME?a.setReserved("HOME",36):a.h.HOME=36;null!=r.END?a.setReserved("END",35):a.h.END=35;null!=r.INSERT?a.setReserved("INSERT",45): +a.h.INSERT=45;null!=r.ESCAPE?a.setReserved("ESCAPE",27):a.h.ESCAPE=27;null!=r.MINUS?a.setReserved("MINUS",189):a.h.MINUS=189;null!=r.PLUS?a.setReserved("PLUS",187):a.h.PLUS=187;null!=r.DELETE?a.setReserved("DELETE",46):a.h.DELETE=46;null!=r.BACKSPACE?a.setReserved("BACKSPACE",8):a.h.BACKSPACE=8;null!=r.LBRACKET?a.setReserved("LBRACKET",219):a.h.LBRACKET=219;null!=r.RBRACKET?a.setReserved("RBRACKET",221):a.h.RBRACKET=221;null!=r.BACKSLASH?a.setReserved("BACKSLASH",220):a.h.BACKSLASH=220;null!=r.CAPSLOCK? +a.setReserved("CAPSLOCK",20):a.h.CAPSLOCK=20;null!=r.SEMICOLON?a.setReserved("SEMICOLON",186):a.h.SEMICOLON=186;null!=r.QUOTE?a.setReserved("QUOTE",222):a.h.QUOTE=222;null!=r.ENTER?a.setReserved("ENTER",13):a.h.ENTER=13;null!=r.SHIFT?a.setReserved("SHIFT",16):a.h.SHIFT=16;null!=r.COMMA?a.setReserved("COMMA",188):a.h.COMMA=188;null!=r.PERIOD?a.setReserved("PERIOD",190):a.h.PERIOD=190;null!=r.SLASH?a.setReserved("SLASH",191):a.h.SLASH=191;null!=r.GRAVEACCENT?a.setReserved("GRAVEACCENT",192):a.h.GRAVEACCENT= +192;null!=r.CONTROL?a.setReserved("CONTROL",17):a.h.CONTROL=17;null!=r.ALT?a.setReserved("ALT",18):a.h.ALT=18;null!=r.SPACE?a.setReserved("SPACE",32):a.h.SPACE=32;null!=r.UP?a.setReserved("UP",38):a.h.UP=38;null!=r.DOWN?a.setReserved("DOWN",40):a.h.DOWN=40;null!=r.LEFT?a.setReserved("LEFT",37):a.h.LEFT=37;null!=r.RIGHT?a.setReserved("RIGHT",39):a.h.RIGHT=39;null!=r.TAB?a.setReserved("TAB",9):a.h.TAB=9;null!=r.PRINTSCREEN?a.setReserved("PRINTSCREEN",301):a.h.PRINTSCREEN=301;null!=r.F1?a.setReserved("F1", +112):a.h.F1=112;null!=r.F2?a.setReserved("F2",113):a.h.F2=113;null!=r.F3?a.setReserved("F3",114):a.h.F3=114;null!=r.F4?a.setReserved("F4",115):a.h.F4=115;null!=r.F5?a.setReserved("F5",116):a.h.F5=116;null!=r.F6?a.setReserved("F6",117):a.h.F6=117;null!=r.F7?a.setReserved("F7",118):a.h.F7=118;null!=r.F8?a.setReserved("F8",119):a.h.F8=119;null!=r.F9?a.setReserved("F9",120):a.h.F9=120;null!=r.F10?a.setReserved("F10",121):a.h.F10=121;null!=r.F11?a.setReserved("F11",122):a.h.F11=122;null!=r.F12?a.setReserved("F12", +123):a.h.F12=123;null!=r.NUMPADZERO?a.setReserved("NUMPADZERO",96):a.h.NUMPADZERO=96;null!=r.NUMPADONE?a.setReserved("NUMPADONE",97):a.h.NUMPADONE=97;null!=r.NUMPADTWO?a.setReserved("NUMPADTWO",98):a.h.NUMPADTWO=98;null!=r.NUMPADTHREE?a.setReserved("NUMPADTHREE",99):a.h.NUMPADTHREE=99;null!=r.NUMPADFOUR?a.setReserved("NUMPADFOUR",100):a.h.NUMPADFOUR=100;null!=r.NUMPADFIVE?a.setReserved("NUMPADFIVE",101):a.h.NUMPADFIVE=101;null!=r.NUMPADSIX?a.setReserved("NUMPADSIX",102):a.h.NUMPADSIX=102;null!=r.NUMPADSEVEN? +a.setReserved("NUMPADSEVEN",103):a.h.NUMPADSEVEN=103;null!=r.NUMPADEIGHT?a.setReserved("NUMPADEIGHT",104):a.h.NUMPADEIGHT=104;null!=r.NUMPADNINE?a.setReserved("NUMPADNINE",105):a.h.NUMPADNINE=105;null!=r.NUMPADMINUS?a.setReserved("NUMPADMINUS",109):a.h.NUMPADMINUS=109;null!=r.NUMPADPLUS?a.setReserved("NUMPADPLUS",107):a.h.NUMPADPLUS=107;null!=r.NUMPADPERIOD?a.setReserved("NUMPADPERIOD",110):a.h.NUMPADPERIOD=110;null!=r.NUMPADMULTIPLY?a.setReserved("NUMPADMULTIPLY",106):a.h.NUMPADMULTIPLY=106;return a}(this); +L.__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"]},__fromImage:{SuppressWarnings:["checkstyle:Dynamic"]}}};L.__tempVector=new ze;Lc.resourceType="image/png";Lc.resourceName="__ASSET__:bitmap_flixel_input_mouse__FlxMouse_GraphicCursor"; +Ve.maxTouchPoints=0;md.resourceType="image/png";md.resourceName="__ASSET__:bitmap_flixel_system_GraphicLogo";nd.resourceType="image/png";nd.resourceName="__ASSET__:bitmap_flixel_system_GraphicVirtualInput";kc.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};kc.defaultObjectEncoding=10;Wc.FONT_DEFAULT="Nokia Cellphone FC Small";Wc.FONT_DEBUGGER="Monsterrat";Jb._NUM_CACHED_FLX_LIST=0;Xc.resourceType="image/png";Xc.resourceName="__ASSET__:bitmap_flixel_system__FlxPreloader_GraphicLogoLight"; +Yc.resourceType="image/png";Yc.resourceName="__ASSET__:bitmap_flixel_system__FlxPreloader_GraphicLogoCorners";G._NUM_CACHED_QUAD_TREES=0;od.resourceType="image/png";od.resourceName="__ASSET__:bitmap_flixel_system_debug__FlxDebugger_GraphicFlixel";pd.resourceType="image/png";pd.resourceName="__ASSET__:bitmap_flixel_system_debug__FlxDebugger_GraphicDrawDebug";qd.resourceType="image/png";qd.resourceName="__ASSET__:bitmap_flixel_system_debug_GraphicLog";rd.resourceType="image/png";rd.resourceName="__ASSET__:bitmap_flixel_system_debug_GraphicStats"; +sd.resourceType="image/png";sd.resourceName="__ASSET__:bitmap_flixel_system_debug_GraphicWatch";td.resourceType="image/png";td.resourceName="__ASSET__:bitmap_flixel_system_debug_GraphicBitmapLog";ud.resourceType="image/png";ud.resourceName="__ASSET__:bitmap_flixel_system_debug_GraphicConsole";vd.resourceType="image/png";vd.resourceName="__ASSET__:bitmap_flixel_system_debug_GraphicArrowLeft";wd.resourceType="image/png";wd.resourceName="__ASSET__:bitmap_flixel_system_debug_GraphicArrowRight";Zc.resourceType= +"image/png";Zc.resourceName="__ASSET__:bitmap_flixel_system_debug_GraphicCloseButton";$c.resourceType="image/png";$c.resourceName="__ASSET__:bitmap_flixel_system_debug_GraphicInteractive";cf._tooltips=[];ad.resourceType="image/png";ad.resourceName="__ASSET__:bitmap_flixel_system_debug__Window_GraphicWindowHandle";Mc.WINDOW_AMOUNT=0;yd.resourceType="image/png";yd.resourceName="__ASSET__:bitmap_flixel_system_debug_interaction_tools__Eraser_GraphicEraserTool";Nc.resourceType="image/png";Nc.resourceName= +"__ASSET__:bitmap_flixel_system_debug_interaction_tools__Mover_GraphicMoverTool";Oc.resourceType="image/png";Oc.resourceName="__ASSET__:bitmap_flixel_system_debug_interaction_tools_GraphicCursorCross";bd.resourceType="image/png";bd.resourceName="__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformTool";cd.resourceType="image/png";cd.resourceName="__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorDefault";dd.resourceType="image/png"; +dd.resourceName="__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorScaleY";ed.resourceType="image/png";ed.resourceName="__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorScaleX";fd.resourceType="image/png";fd.resourceName="__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorScaleXY";gd.resourceType="image/png";gd.resourceName="__ASSET__:bitmap_flixel_system_debug_interaction_tools__Transform_GraphicTransformCursorRotate"; +zd.resourceType="image/png";zd.resourceName="__ASSET__:bitmap_flixel_system_debug_stats__Stats_GraphicMinimizeButton";Ad.resourceType="image/png";Ad.resourceName="__ASSET__:bitmap_flixel_system_debug_stats__Stats_GraphicMaximizeButton";qa.__pool=new fa(function(){return new qa},function(a){a.setTo(0,0,0,0)});Nb._point=function(a){a=ra._pool.get().set(0,0);a._inPool=!1;return a}(this);me.flashGfxSprite=new ka;me.flashGfx=me.flashGfxSprite.get_graphics();mc.USE_CACHE=!1;mc.USE_ENUM_INDEX=!1;mc.BASE64= +"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789%:";fc.DEFAULT_RESOLVER=new Pg;fc.BASE64="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789%:";ff.CHARS="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";ff.BYTES=Va.ofString(ff.CHARS);ac.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];ac.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];ac.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];ac.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];ac.CODE_LENGTHS_POS=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];pa.activeRequests=0;pa.requestLimit=17;pa.requestQueue=new ia;Ba.dummyCharacter="\u007f";Ba.windowID=0;Nd.DICTIONARY="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");Nd.EXTENDED_DICTIONARY=function(a){a= +[];for(var b=0,c=Nd.DICTIONARY;b","gi");Fa.__regexBlockIndent=new ja("blockindent\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i");Fa.__regexColor=new ja("color\\s?=\\s?(\"#([^\"]+)\"|'#([^']+)')","i");Fa.__regexEntities=[new ja(""","g"),new ja("'","g"),new ja("&","g"),new ja("<","g"),new ja(">","g"),new ja(" ","g")];Fa.__regexFace=new ja("face\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i");Fa.__regexHTMLTag=new ja("<.*?>","g");Fa.__regexHref= +new ja("href\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i");Fa.__regexIndent=new ja(" indent\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i");Fa.__regexLeading=new ja("leading\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i");Fa.__regexLeftMargin=new ja("leftmargin\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i");Fa.__regexRightMargin=new ja("rightmargin\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i");Fa.__regexSize=new ja("size\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i");Fa.__regexTabStops=new ja("tabstops\\s?=\\s?(\"([^\"]+)\"|'([^']+)')","i");Dc.__meta__= +{obj:{SuppressWarnings:["checkstyle:FieldDocComment"]},statics:{resolveClass:{SuppressWarnings:["checkstyle:Dynamic"]},resolveEnum:{SuppressWarnings:["checkstyle:Dynamic"]}}};Dc.instances=new Ea;eh.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};gc.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]},fields:{o:{SuppressWarnings:["checkstyle:Dynamic"]}}};gc.empty=new gc;Ed.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};Ke.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}}; +gh.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]},fields:{overrideIntValues:{SuppressWarnings:["checkstyle:Dynamic"]}}};y.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]},statics:{windingRule:{SuppressWarnings:["checkstyle:Dynamic"]},createBitmapFill:{SuppressWarnings:["checkstyle:Dynamic"]},createGradientPattern:{SuppressWarnings:["checkstyle:Dynamic"]}}};y.fillCommands=new gc;y.strokeCommands=new gc;J.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}}; +ce.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};hh.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};ib.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};ib.blankBitmapData=new L(1,1,!1,0);ib.tempColorTransform=new Xa(1,1,1,1,0,0,0,0);of.opaqueBitmapData=new L(1,1,!1,0);de.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};Wf.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};Xf.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}}; +Wb.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};Gh.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};ue.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};Bb.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};Bb.__regexColor=new ja("color=(\"#([^\"]+)\"|'#([^']+)')","i");Bb.__regexFace=new ja("face=(\"([^\"]+)\"|'([^']+)')","i");Bb.__regexFont=new ja("]+)>","gi");Bb.__regexCloseFont=new ja("","gi");Bb.__regexSize=new ja("size=(\"([^\"]+)\"|'([^']+)')", +"i");Wa.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};ih.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};Le.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]},fields:{touch:{SuppressWarnings:["checkstyle:Dynamic"]}}};Le.__pool=new fa(function(){return new Le},function(a){a.reset()});yf.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};pc.__meta__={fields:{__context:{SuppressWarnings:["checkstyle:Dynamic"]},__type:{SuppressWarnings:["checkstyle:Dynamic"]}}}; +jh.__meta__={fields:{cairo:{SuppressWarnings:["checkstyle:Dynamic"]},__matrix3:{SuppressWarnings:["checkstyle:Dynamic"]},applyMatrix:{SuppressWarnings:["checkstyle:Dynamic"]},__setBlendModeCairo:{SuppressWarnings:["checkstyle:Dynamic"]},_:{SuppressWarnings:["checkstyle:Dynamic"]}}};Hd.__meta__={fields:{context:{SuppressWarnings:["checkstyle:Dynamic"]},applySmoothing:{SuppressWarnings:["checkstyle:Dynamic"]},setTransform:{SuppressWarnings:["checkstyle:Dynamic"]},__setBlendModeContext:{SuppressWarnings:["checkstyle:Dynamic"]}, +_:{SuppressWarnings:["checkstyle:Dynamic"]}}};pf.__meta__={fields:{element:{SuppressWarnings:["checkstyle:Dynamic"]},_:{SuppressWarnings:["checkstyle:Dynamic"]}}};ic.__meta__={fields:{overrideBlendMode:{SuppressWarnings:["checkstyle:FieldDocComment"]}}};Pd.__meta__={statics:{create:{SuppressWarnings:["checkstyle:FieldDocComment"]}},fields:{parameters:{SuppressWarnings:["checkstyle:Dynamic"]}}};Pd.__rootURL="undefined"!=typeof window?window.document.URL:"";Pa.__meta__={fields:{gl:{SuppressWarnings:["checkstyle:Dynamic"]}, +__gl:{SuppressWarnings:["checkstyle:Dynamic"]},__matrix:{SuppressWarnings:["checkstyle:Dynamic"]},__projection:{SuppressWarnings:["checkstyle:Dynamic"]},__projectionFlipped:{SuppressWarnings:["checkstyle:Dynamic"]}}};Pa.__alphaValue=[1];Pa.__colorMultipliersValue=[0,0,0,0];Pa.__colorOffsetsValue=[0,0,0,0];Pa.__emptyColorValue=[0,0,0,0];Pa.__hasColorTransformValue=[!1];Pa.__scissorRectangle=new qa;Pa.__textureSizeValue=[0,0];bg.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]},fields:{onComplete:{SuppressWarnings:["checkstyle:Dynamic"]}}}; +oh.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};wg.__meta__={fields:{index:{SuppressWarnings:["checkstyle:Dynamic"]},name:{SuppressWarnings:["checkstyle:FieldDocComment"]}}};Ye.__meta__={fields:{index:{SuppressWarnings:["checkstyle:Dynamic"]},name:{SuppressWarnings:["checkstyle:FieldDocComment"]}}};rf.__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"]}}};Qe.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]},fields:{_:{SuppressWarnings:["checkstyle:Dynamic"]}}};Qa.__glDepthStencil=-1;Qa.__glMaxTextureMaxAnisotropy=-1;Qa.__glMaxViewportDims=-1;Qa.__glMemoryCurrentAvailable=-1;Qa.__glMemoryTotalAvailable=-1;Qa.__glTextureMaxAnisotropy=-1;th.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}}; +$f.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};Za.__meta__={fields:{__textureContext:{SuppressWarnings:["checkstyle:Dynamic"]},__getGLFramebuffer:{SuppressWarnings:["checkstyle:Dynamic"]}}};S.__pool=new fa(function(){return new S(null)},function(a){a.__init()});vf.__pool=new fa(function(){return new vf(null)},function(a){a.__init()});be.__pool=new fa(function(){return new be(null)},function(a){a.__init()});jd.__pool=new fa(function(){return new jd(null)},function(a){a.__init()}); +qc.__pool=new fa(function(){return new qc(null)},function(a){a.__init()});Af.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};zf.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};ae.__pool=new fa(function(){return new ae(null)},function(a){a.__init()});Sd.__pool=new fa(function(){return new Sd(null)},function(a){a.__init()});re.__pool=new fa(function(){return new re(null)},function(a){a.__init()});wf.__pool=new fa(function(){return new wf(null)},function(a){a.__init()}); +Oe.__pool=new fa(function(){return new Oe(null)},function(a){a.__init()});tf.__pool=new fa(function(){return new tf(null)},function(a){a.__init()});$a.__pool=new fa(function(){return new $a(null)},function(a){a.__init()});Rd.__pool=new fa(function(){return new Rd(null)},function(a){a.__init()});qe.__pool=new fa(function(){return new qe(null)},function(a){a.__init()});Te.__pool=new fa(function(){return new Te(null)},function(a){a.__init()});xf.__pool=new fa(function(){return new xf(null)},function(a){a.__init()}); +yc.__pool=new fa(function(){return new yc(null)},function(a){a.__init()});sf.__pool=new fa(function(){return new sf(null)},function(a){a.__init()});Qd.__blurShader=new uh;ag.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};Me.__colorMatrixShader=new ag;Ec.__glowShader=new vh;Ud.__meta__={fields:{clone:{SuppressWarnings:["checkstyle:FieldDocComment"]}}};Gc.__soundChannels=[];Gc.__soundTransform=new Ud;xh.__meta__={fields:{speed:{SuppressWarnings:["checkstyle:FieldDocComment"]}}};$b.defaultObjectEncoding= +10;se.followRedirects=!0;se.idleTimeout=0;se.manageCookies=!1;kb.currentX=0;kb.currentY=1;kb.currentZ=0;kb.defaultInterval=34;kb.initialized=!1;kb.supported=!1;qf.currentDomain=new qf(null);yb.__missingFontWarning=new Ea;lc.__meta__={fields:{clone:{SuppressWarnings:["checkstyle:FieldDocComment"]}}};Ra.__meta__={fields:{addEventListener:{SuppressWarnings:["checkstyle:Dynamic"]}}};Ra.numDevices=0;Ra.__deviceList=[];Ra.__instances=[];Ra.__devices=new X;Fb.__cursor="auto";ca.__meta__={obj:{SuppressWarnings:[["checkstyle:ConstantName", +"checkstyle:FieldDocComment"]]}};ca.OPMAP=new Ea;ca.REGMAP=new Ea;ca.SAMPLEMAP=new Ea;ca.initialized=!1;Ua.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};Hc.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};mb.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};Ka.cache=new zh;Ka.dispatcher=new T;Ah.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};Bh.__meta__={obj:{SuppressWarnings:["checkstyle:FieldDocComment"]}};w.main()})("undefined"!= +typeof t?t:"undefined"!=typeof window?window:"undefined"!=typeof self?self:this,"undefined"!=typeof window?window:"undefined"!=typeof C?C:"undefined"!=typeof self?self:this)};M.lime.embed=function(w){var C={},D=M.lime.$scripts[w];if(!D)throw Error('Cannot find project name "'+w+'"');D(C,t);for(var P in C)M[P]=M[P]||C[P];(D=C.lime||window.lime)&&D.embed&&this!=D.embed&&D.embed.apply(D,arguments);return C};"function"==typeof define&&define.amd&&(define([],function(){return M.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 M=function(){this.init()};M.prototype={init:function(){var g=this||t;return g._counter=1E3,g._html5AudioPool=[],g.html5PoolSize=10,g._codecs={},g._howls=[],g._muted=!1,g._volume=1,g._canPlayEvent="canplaythrough",g._navigator="undefined"!=typeof window&&window.navigator?window.navigator:null,g.masterGain=null,g.noAudio=!1,g.usingWebAudio=!0,g.autoSuspend=!0,g.ctx=null,g.autoUnlock=!0,g._setup(),g},volume:function(g){var p=this||t;if(g=parseFloat(g),p.ctx||h(),void 0!==g&&0<=g&&1>= +g){if(p._volume=g,p._muted)return p;p.usingWebAudio&&p.masterGain.gain.setValueAtTime(g,t.ctx.currentTime);for(var n=0;n +parseInt(p[0].split("/")[1],10);return g._codecs={mp3:!(p||!n&&!h.canPlayType("audio/mp3;").replace(/^no$/,"")),mpeg:!!n,opus:!!h.canPlayType('audio/ogg; codecs="opus"').replace(/^no$/,""),ogg:!!h.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),oga:!!h.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),wav:!!h.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),aac:!!h.canPlayType("audio/aac;").replace(/^no$/,""),caf:!!h.canPlayType("audio/x-caf;").replace(/^no$/,""),m4a:!!(h.canPlayType("audio/x-m4a;")|| +h.canPlayType("audio/m4a;")||h.canPlayType("audio/aac;")).replace(/^no$/,""),mp4:!!(h.canPlayType("audio/x-mp4;")||h.canPlayType("audio/mp4;")||h.canPlayType("audio/aac;")).replace(/^no$/,""),weba:!!h.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/,""),webm:!!h.canPlayType('audio/webm; codecs="vorbis"').replace(/^no$/,""),dolby:!!h.canPlayType('audio/mp4; codecs="ec-3"').replace(/^no$/,""),flac:!!(h.canPlayType("audio/x-flac;")||h.canPlayType("audio/flac;")).replace(/^no$/,"")},g},_unlockAudio:function(){var g= +this||t,h=/iPhone|iPad|iPod|Android|BlackBerry|BB10|Silk|Mobi|Chrome|Safari/i.test(g._navigator&&g._navigator.userAgent);if(!g._audioUnlocked&&g.ctx&&h){g._audioUnlocked=!1;g.autoUnlock=!1;g._mobileUnloaded||44100===g.ctx.sampleRate||(g._mobileUnloaded=!0,g.unload());g._scratchBuffer=g.ctx.createBuffer(1,1,22050);var n=function(h){for(h=0;h=ea)return void n._ended(w);var ia=w._node;if(n._webAudio)p=function(){n._playLock=!1;X();n._refreshBuffer(w);ia.gain.setValueAtTime(w._muted||n._muted?0:w._volume,t.ctx.currentTime);w._playStart=t.ctx.currentTime;void 0===ia.bufferSource.start?w._loop? +ia.bufferSource.noteGrainOn(0,C,86400):ia.bufferSource.noteGrainOn(0,C,T):w._loop?ia.bufferSource.start(0,C,86400):ia.bufferSource.start(0,C,T);M!==1/0&&(n._endTimers[w._id]=setTimeout(n._ended.bind(n,w),M));h||setTimeout(function(){n._emit("play",w._id);n._loadQueue()},0)},"running"===t.state?p():(n._playLock=!0,n.once("resume",p),n._clearTimer(w._id));else{var W=function(){ia.currentTime=C;ia.muted=w._muted||n._muted||t._muted||ia.muted;ia.volume=w._volume*t.volume();ia.playbackRate=w._rate;try{var p= +ia.play();if(p&&"undefined"!=typeof Promise&&(p instanceof Promise||"function"==typeof p.then)?(n._playLock=!0,X(),p.then(function(){n._playLock=!1;ia._unlocked=!0;h||(n._emit("play",w._id),n._loadQueue())}).catch(function(){n._playLock=!1;n._emit("playerror",w._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.");w._ended=!0;w._paused=!0})):h||(n._playLock=!1,X(),n._emit("play",w._id),n._loadQueue()),ia.playbackRate= +w._rate,ia.paused)return void n._emit("playerror",w._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"!==g||w._loop?n._endTimers[w._id]=setTimeout(n._ended.bind(n,w),M):(n._endTimers[w._id]=function(){n._ended(w);ia.removeEventListener("ended",n._endTimers[w._id],!1)},ia.addEventListener("ended",n._endTimers[w._id],!1))}catch(ka){n._emit("playerror",w._id,ka)}};p=window&&window.ejecta||!ia.readyState&& +t._navigator.isCocoonJS;if(3<=ia.readyState||p)W();else{n._playLock=!0;var U=function(){W();ia.removeEventListener(t._canPlayEvent,U,!1)};ia.addEventListener(t._canPlayEvent,U,!1);n._clearTimer(w._id)}}return w._id},pause:function(g,h){var n=this;if("loaded"!==n._state||n._playLock)return n._queue.push({event:"pause",action:function(){n.pause(g)}}),n;for(var p=n._getSoundIds(g),q=0;q=g))return q=h?n._soundById(h):n._sounds[0],q?q._volume:0;if("loaded"!==n._state||n._playLock)return n._queue.push({event:"volume",action:function(){n.volume.apply(n,p)}}),n;void 0===h&&(n._volume=g);h=n._getSoundIds(h);for(var w=0;wh&&w>=n)&&(clearInterval(g._interval),g._interval=null,g._fadeTo=null,B.volume(n,g._id),B._emit("fade", +g._id))},q)},_stopFade:function(g){var h=this._soundById(g);return h&&h._interval&&(this._webAudio&&h._node.gain.cancelScheduledValues(t.ctx.currentTime),clearInterval(h._interval),h._interval=null,this.volume(h._fadeTo,g),h._fadeTo=null,this._emit("fade",g)),this},loop:function(){var g,h,n,p=arguments;if(0===p.length)return this._loop;if(1===p.length){if("boolean"!=typeof p[0])return!!(n=this._soundById(parseInt(p[0],10)))&&n._loop;this._loop=g=p[0]}else 2===p.length&&(g=p[0],h=parseInt(p[1],10)); +h=this._getSoundIds(h);for(p=0;ph&&(g=/safari/.test(t._navigator&&t._navigator.userAgent.toLowerCase()),(t._navigator&&t._navigator.standalone&&!g||t._navigator&&!t._navigator.standalone&&!g)&&(t.usingWebAudio=!1));t.usingWebAudio&&(t.masterGain=void 0===t.ctx.createGain?t.ctx.createGainNode():t.ctx.createGain(),t.masterGain.gain.setValueAtTime(t._muted?0:1,t.ctx.currentTime),t.masterGain.connect(t.ctx.destination));t._setup()}};"function"==typeof define&&define.amd&&define([],function(){return{Howler:t, +Howl:w}});"undefined"!=typeof exports&&(exports.Howler=t,exports.Howl=w);"undefined"!=typeof window?(window.HowlerGlobal=M,window.Howler=t,window.Howl=w,window.Sound=C):"undefined"!=typeof global&&(global.HowlerGlobal=M,global.Howler=t,global.Howl=w,global.Sound=C)}(); +!function(){HowlerGlobal.prototype._pos=[0,0,0];HowlerGlobal.prototype._orientation=[0,0,-1,0,1,0];HowlerGlobal.prototype.stereo=function(t){if(!this.ctx||!this.ctx.listener)return this;for(var w=this._howls.length-1;0<=w;w--)this._howls[w].stereo(t);return this};HowlerGlobal.prototype.pos=function(t,w,C){return this.ctx&&this.ctx.listener?(w="number"!=typeof w?this._pos[1]:w,C="number"!=typeof C?this._pos[2]:C,"number"!=typeof t?this._pos:(this._pos=[t,w,C],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(t,w,C,D,M,p){if(!this.ctx||!this.ctx.listener)return this;var ea=this._orientation;return w="number"!=typeof w?ea[1]:w,C="number"!=typeof C?ea[2]:C,D="number"!=typeof D?ea[3]:D,M= +"number"!=typeof M?ea[4]:M,p="number"!=typeof p?ea[5]:p,"number"!=typeof t?ea:(this._orientation=[t,w,C,D,M,p],void 0!==this.ctx.listener.forwardX?(this.ctx.listener.forwardX.setTargetAtTime(t,Howler.ctx.currentTime,.1),this.ctx.listener.forwardY.setTargetAtTime(w,Howler.ctx.currentTime,.1),this.ctx.listener.forwardZ.setTargetAtTime(C,Howler.ctx.currentTime,.1),this.ctx.listener.upX.setTargetAtTime(t,Howler.ctx.currentTime,.1),this.ctx.listener.upY.setTargetAtTime(w,Howler.ctx.currentTime,.1),this.ctx.listener.upZ.setTargetAtTime(C, +Howler.ctx.currentTime,.1)):this.ctx.listener.setOrientation(t,w,C,D,M,p),this)};Howl.prototype.init=function(t){return function(w){return this._orientation=w.orientation||[1,0,0],this._stereo=w.stereo||null,this._pos=w.pos||null,this._pannerAttr={coneInnerAngle:void 0!==w.coneInnerAngle?w.coneInnerAngle:360,coneOuterAngle:void 0!==w.coneOuterAngle?w.coneOuterAngle:360,coneOuterGain:void 0!==w.coneOuterGain?w.coneOuterGain:0,distanceModel:void 0!==w.distanceModel?w.distanceModel:"inverse",maxDistance:void 0!== +w.maxDistance?w.maxDistance:1E4,panningModel:void 0!==w.panningModel?w.panningModel:"HRTF",refDistance:void 0!==w.refDistance?w.refDistance:1,rolloffFactor:void 0!==w.rolloffFactor?w.rolloffFactor:1},this._onstereo=w.onstereo?[{fn:w.onstereo}]:[],this._onpos=w.onpos?[{fn:w.onpos}]:[],this._onorientation=w.onorientation?[{fn:w.onorientation}]:[],t.call(this,w)}}(Howl.prototype.init);Howl.prototype.stereo=function(t,w){var C=this;if(!C._webAudio)return C;if("loaded"!==C._state)return C._queue.push({event:"stereo", +action:function(){C.stereo(t,w)}}),C;var D=void 0===Howler.ctx.createStereoPanner?"spatial":"stereo";if(void 0===w){if("number"!=typeof t)return C._stereo;C._stereo=t;C._pos=[t,0,0]}for(var P=C._getSoundIds(w),p=0;pt.windowBits&&(t.windowBits+=16);this.err=0; +this.msg="";this.ended=!1;this.chunks=[];this.strm=new g;this.strm.avail_out=0;var w=p.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(w!==n)throw Error(h[w]);if(t.header&&p.deflateSetHeader(this.strm,t.header),t.dictionary){var C;if(C="string"==typeof t.dictionary?q.string2buf(t.dictionary):"[object ArrayBuffer]"===B.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,w=p.deflateSetDictionary(this.strm,C),w!==n)throw Error(h[w]);this._dict_set=!0}}function P(g, +h){h=new D(h);if(h.push(g,!0),h.err)throw h.msg;return h.result}var p=t("./zlib/deflate"),ea=t("./utils/common"),q=t("./utils/strings"),h=t("./zlib/messages"),g=t("./zlib/zstream"),B=Object.prototype.toString,n=0,N=-1,ta=0,K=8;D.prototype.push=function(g,h){var t,w=this.strm,D=this.options.chunkSize;if(this.ended)return!1;h=h===~~h?h:!0===h?4:0;"string"==typeof g?w.input=q.string2buf(g):"[object ArrayBuffer]"===B.call(g)?w.input=new Uint8Array(g):w.input=g;w.next_in=0;w.avail_in=w.input.length;do{if(0=== +w.avail_out&&(w.output=new ea.Buf8(D),w.next_out=0,w.avail_out=D),t=p.deflate(w,h),1!==t&&t!==n)return this.onEnd(t),this.ended=!0,!1;0!==w.avail_out&&(0!==w.avail_in||4!==h&&2!==h)||("string"===this.options.to?this.onData(q.buf2binstring(ea.shrinkBuf(w.output,w.next_out))):this.onData(ea.shrinkBuf(w.output,w.next_out)))}while((0t.windowBits&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15));!(0<=t.windowBits&&16>t.windowBits)||q&&q.windowBits||(t.windowBits+=32);15t.windowBits&&0===(15&t.windowBits)&&(t.windowBits|=15);this.err=0;this.msg="";this.ended=!1;this.chunks=[];this.strm=new B;this.strm.avail_out=0;q=p.inflateInit2(this.strm,t.windowBits);if(q!==h.Z_OK)throw Error(g[q]); +this.header=new n;p.inflateGetHeader(this.strm,this.header)}function P(g,h){h=new D(h);if(h.push(g,!0),h.err)throw h.msg;return h.result}var p=t("./zlib/inflate"),ea=t("./utils/common"),q=t("./utils/strings"),h=t("./zlib/constants"),g=t("./zlib/messages"),B=t("./zlib/zstream"),n=t("./zlib/gzheader"),N=Object.prototype.toString;D.prototype.push=function(g,n){var t,w,B,D,C,K=this.strm,P=this.options.chunkSize,ta=this.options.dictionary,X=!1;if(this.ended)return!1;n=n===~~n?n:!0===n?h.Z_FINISH:h.Z_NO_FLUSH; +"string"==typeof g?K.input=q.binstring2buf(g):"[object ArrayBuffer]"===N.call(g)?K.input=new Uint8Array(g):K.input=g;K.next_in=0;K.avail_in=K.input.length;do{if(0===K.avail_out&&(K.output=new ea.Buf8(P),K.next_out=0,K.avail_out=P),t=p.inflate(K,h.Z_NO_FLUSH),t===h.Z_NEED_DICT&&ta&&(C="string"==typeof ta?q.string2buf(ta):"[object ArrayBuffer]"===N.call(ta)?new Uint8Array(ta):ta,t=p.inflateSetDictionary(this.strm,C)),t===h.Z_BUF_ERROR&&!0===X&&(t=h.Z_OK,X=!1),t!==h.Z_STREAM_END&&t!==h.Z_OK)return this.onEnd(t), +this.ended=!0,!1;K.next_out&&(0!==K.avail_out&&t!==h.Z_STREAM_END&&(0!==K.avail_in||n!==h.Z_FINISH&&n!==h.Z_SYNC_FLUSH)||("string"===this.options.to?(w=q.utf8border(K.output,K.next_out),B=K.next_out-w,D=q.buf2string(K.output,w),K.next_out=B,K.avail_out=P-B,B&&ea.arraySet(K.output,K.output,w,B,0),this.onData(D)):this.onData(ea.shrinkBuf(K.output,K.next_out))));0===K.avail_in&&0===K.avail_out&&(X=!0)}while((0g&&(h.subarray&&ea||!h.subarray&&p))return String.fromCharCode.apply(null,P.shrinkBuf(h,g));for(var q="",n=0;nt;t++)q[t]=252<=t?6:248<=t?5:240<=t?4:224<=t?3:192<=t?2:1;q[254]=q[254]=1;C.string2buf=function(h){var g,p,n,q=h.length,t=0;for(p=0;pw?1:2048>w?2:65536>w?3:4}var D=new P.Buf8(t);for(p=n=0;nw?D[n++]= +w:2048>w?(D[n++]=192|w>>>6,D[n++]=128|63&w):65536>w?(D[n++]=224|w>>>12,D[n++]=128|w>>>6&63,D[n++]=128|63&w):(D[n++]=240|w>>>18,D[n++]=128|w>>>12&63,D[n++]=128|w>>>6&63,D[n++]=128|63&w);return D};C.buf2binstring=function(h){return D(h,h.length)};C.binstring2buf=function(h){for(var g=new P.Buf8(h.length),p=0,n=g.length;pn)C[p++]=n;else if(t=q[n],4n?C[p++]=n:(n-=65536,C[p++]=55296|n>>10&1023,C[p++]=56320|1023&n)}return D(C,p)};C.utf8border=function(h,g){var p;g=g||h.length;g>h.length&&(g=h.length);for(p=g-1;0<=p&&128===(192&h[p]);)p--;return 0>p?g:0===p?g:p+q[h[p]]>g?p:g}},{"./common":3}],5:[function(t,w,C){w.exports=function(t,w,p,C){var q=65535&t|0;t=t>>>16&65535|0;for(var h;0!==p;){h=2E3w;w++){t=w; +for(var q=0;8>q;q++)t=1&t?3988292384^t>>>1:t>>>1;p[w]=t}return p}();w.exports=function(t,p,w,q){w=q+w;for(t^=-1;q>>8^D[255&(t^p[q])];return t^-1}},{}],8:[function(t,w,C){function D(g,h){return g.msg=Ya[h],h}function P(g){for(var h=g.length;0<=--h;)g[h]=0}function p(g){var h=g.state,n=h.pending;n>g.avail_out&&(n=g.avail_out);0!==n&&(T.arraySet(g.output,h.pending_buf,h.pending_out,n,g.next_out),g.next_out+=n,h.pending_out+=n,g.total_out+=n,g.avail_out-=n,h.pending-=n,0===h.pending&&(h.pending_out= +0))}function ea(g,h){gb._tr_flush_block(g,0<=g.block_start?g.block_start:-1,g.strstart-g.block_start,h);g.block_start=g.strstart;p(g.strm)}function q(g,h){g.pending_buf[g.pending++]=h}function h(g,h){g.pending_buf[g.pending++]=h>>>8&255;g.pending_buf[g.pending++]=255&h}function g(g,h){var n,p,q=g.max_chain_length,z=g.strstart,t=g.prev_length,x=g.nice_match,w=g.strstart>g.w_size-na?g.strstart-(g.w_size-na):0,B=g.window,D=g.w_mask,C=g.prev,X=g.strstart+sa,E=B[z+t-1],W=B[z+t];g.prev_length>=g.good_match&& +(q>>=2);x>g.lookahead&&(x=g.lookahead);do if(n=h,B[n+t]===W&&B[n+t-1]===E&&B[n]===B[z]&&B[++n]===B[z+1]){z+=2;for(n++;B[++z]===B[++n]&&B[++z]===B[++n]&&B[++z]===B[++n]&&B[++z]===B[++n]&&B[++z]===B[++n]&&B[++z]===B[++n]&&B[++z]===B[++n]&&B[++z]===B[++n]&&zt){if(g.match_start=h,t=p,p>=x)break;E=B[z+t-1];W=B[z+t]}}while((h=C[h&D])>w&&0!==--q);return t<=g.lookahead?t:g.lookahead}function B(g){var h,n,p=g.w_size;do{if(n=g.window_size-g.lookahead-g.strstart,g.strstart>=p+(p- +na)){T.arraySet(g.window,g.window,p,p,0);g.match_start-=p;g.strstart-=p;g.block_start-=p;var q=h=g.hash_size;do{var z=g.head[--q];g.head[q]=z>=p?z-p:0}while(--h);q=h=p;do z=g.prev[--q],g.prev[q]=z>=p?z-p:0;while(--h);n+=p}if(0===g.strm.avail_in)break;q=g.strm;z=g.window;var t=g.strstart+g.lookahead,x=q.avail_in;if(h=(x>n&&(x=n),0===x?0:(q.avail_in-=x,T.arraySet(z,q.input,q.next_in,x,t),1===q.state.wrap?q.adler=Da(q.adler,z,x,t):2===q.state.wrap&&(q.adler=fa(q.adler,z,x,t)),q.next_in+=x,q.total_in+= +x,x)),g.lookahead+=h,g.lookahead+g.insert>=I)for(n=g.strstart-g.insert,g.ins_h=g.window[n],g.ins_h=(g.ins_h<=I&&(h.ins_h= +(h.ins_h<=I)if(q=gb._tr_tally(h,h.strstart-h.match_start,h.match_length-I),h.lookahead-=h.match_length,h.match_length<=h.max_lazy_match&&h.lookahead>=I){h.match_length--;do h.strstart++,h.ins_h=(h.ins_h<=I&&(h.ins_h=(h.ins_h<=h.match_length&&(h.strategy===ka||h.match_length===I&&4096=I&&h.match_length<=h.prev_length){t=h.strstart+h.lookahead-I;q=gb._tr_tally(h,h.strstart-1-h.prev_match,h.prev_length-I);h.lookahead-=h.prev_length-1;h.prev_length-=2;do++h.strstart<=t&&(h.ins_h=(h.ins_h<h.wrap&&(h.wrap=-h.wrap),h.status=h.wrap?ba:O,g.adler=2===h.wrap?0:1,h.last_flush=X,gb._tr_init(h),W):D(g,U)}function tb(g){var h=ha(g);h===W&&(g=g.state,g.window_size=2*g.w_size,P(g.head),g.max_lazy_match=Ta[g.level].max_lazy,g.good_match=Ta[g.level].good_length,g.nice_match=Ta[g.level].nice_length,g.max_chain_length=Ta[g.level].max_chain, +g.strstart=0,g.block_start=0,g.lookahead=0,g.insert=0,g.match_length=g.prev_length=I-1,g.match_available=0,g.ins_h=0);return h}function Mb(g,h,n,p,q,t){if(!g)return U;var z=1;if(h===ua&&(h=6),0>p?(z=0,p=-p):15q||q>Ga||n!==bb||8>p||15h||9t||t>sb)return D(g,U);8===p&&(p=9);var A=new K;return g.state=A,A.strm=g,A.wrap=z,A.gzhead=null,A.w_bits=p,A.w_size=1<g.pending_buf_size-5&&(n=g.pending_buf_size-5);;){if(1>=g.lookahead){if(B(g),0===g.lookahead&&h===X)return E;if(0===g.lookahead)break}g.strstart+=g.lookahead;g.lookahead=0;var p=g.block_start+n;if((0===g.strstart||g.strstart>=p)&&(g.lookahead=g.strstart-p,g.strstart=p,ea(g,!1),0===g.strm.avail_out)||g.strstart-g.block_start>=g.w_size-na&&(ea(g,!1),0===g.strm.avail_out))return E}return g.insert=0,h===ia?(ea(g,!0),0===g.strm.avail_out? +ja:pb):(g.strstart>g.block_start&&ea(g,!1),E)}),new ta(4,4,8,4,n),new ta(4,5,16,8,n),new ta(4,6,32,32,n),new ta(4,4,16,16,N),new ta(8,16,32,32,N),new ta(8,16,128,128,N),new ta(8,32,128,256,N),new ta(32,128,258,1024,N),new ta(32,258,258,4096,N)];C.deflateInit=function(g,h){return Mb(g,h,bb,15,8,0)};C.deflateInit2=Mb;C.deflateReset=tb;C.deflateResetKeep=ha;C.deflateSetHeader=function(g,h){return g&&g.state?2!==g.state.wrap?U:(g.state.gzhead=h,W):U};C.deflate=function(g,n){var t,A;if(!g||!g.state||5< +n||0>n)return g?D(g,U):U;if(A=g.state,!g.output||!g.input&&0!==g.avail_in||666===A.status&&n!==ia)return D(g,0===g.avail_out?-5:U);if(A.strm=g,t=A.last_flush,A.last_flush=n,A.status===ba)if(2===A.wrap)g.adler=0,q(A,31),q(A,139),q(A,8),A.gzhead?(q(A,(A.gzhead.text?1:0)+(A.gzhead.hcrc?2:0)+(A.gzhead.extra?4:0)+(A.gzhead.name?8:0)+(A.gzhead.comment?16:0)),q(A,255&A.gzhead.time),q(A,A.gzhead.time>>8&255),q(A,A.gzhead.time>>16&255),q(A,A.gzhead.time>>24&255),q(A,9===A.level?2:2<=A.strategy||2>A.level? +4:0),q(A,255&A.gzhead.os),A.gzhead.extra&&A.gzhead.extra.length&&(q(A,255&A.gzhead.extra.length),q(A,A.gzhead.extra.length>>8&255)),A.gzhead.hcrc&&(g.adler=fa(g.adler,A.pending_buf,A.pending,0)),A.gzindex=0,A.status=69):(q(A,0),q(A,0),q(A,0),q(A,0),q(A,0),q(A,9===A.level?2:2<=A.strategy||2>A.level?4:0),q(A,3),A.status=O);else{var x=bb+(A.w_bits-8<<4)<<8;x|=(2<=A.strategy||2>A.level?0:6>A.level?1:6===A.level?2:3)<<6;0!==A.strstart&&(x|=32);A.status=O;h(A,x+(31-x%31));0!==A.strstart&&(h(A,g.adler>>> +16),h(A,65535&g.adler));g.adler=1}if(69===A.status)if(A.gzhead.extra){for(x=A.pending;A.gzindex<(65535&A.gzhead.extra.length)&&(A.pending!==A.pending_buf_size||(A.gzhead.hcrc&&A.pending>x&&(g.adler=fa(g.adler,A.pending_buf,A.pending-x,x)),p(g),x=A.pending,A.pending!==A.pending_buf_size));)q(A,255&A.gzhead.extra[A.gzindex]),A.gzindex++;A.gzhead.hcrc&&A.pending>x&&(g.adler=fa(g.adler,A.pending_buf,A.pending-x,x));A.gzindex===A.gzhead.extra.length&&(A.gzindex=0,A.status=73)}else A.status=73;if(73=== +A.status)if(A.gzhead.name){x=A.pending;do{if(A.pending===A.pending_buf_size&&(A.gzhead.hcrc&&A.pending>x&&(g.adler=fa(g.adler,A.pending_buf,A.pending-x,x)),p(g),x=A.pending,A.pending===A.pending_buf_size)){var w=1;break}w=A.gzindexx&&(g.adler=fa(g.adler,A.pending_buf,A.pending-x,x));0===w&&(A.gzindex=0,A.status=91)}else A.status=91;if(91===A.status)if(A.gzhead.comment){x=A.pending;do{if(A.pending=== +A.pending_buf_size&&(A.gzhead.hcrc&&A.pending>x&&(g.adler=fa(g.adler,A.pending_buf,A.pending-x,x)),p(g),x=A.pending,A.pending===A.pending_buf_size)){w=1;break}w=A.gzindexx&&(g.adler=fa(g.adler,A.pending_buf,A.pending-x,x));0===w&&(A.status=103)}else A.status=103;if(103===A.status&&(A.gzhead.hcrc?(A.pending+2>A.pending_buf_size&&p(g),A.pending+2<=A.pending_buf_size&&(q(A,255&g.adler), +q(A,g.adler>>8&255),g.adler=0,A.status=O)):A.status=O),0!==A.pending){if(p(g),0===g.avail_out)return A.last_flush=-1,W}else if(0===g.avail_in&&(n<<1)-(4=I&&0A.lookahead&&(A.match_length=A.lookahead)}if(A.match_length>=I?(C=gb._tr_tally(A,1,A.match_length-I),A.lookahead-=A.match_length,A.strstart+=A.match_length,A.match_length=0):(C=gb._tr_tally(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++),C&&(ea(A,!1),0===A.strm.avail_out)){C=E;break a}}C=(A.insert=0,n===ia?(ea(A,!0),0===A.strm.avail_out?ja:pb):A.last_lit&&(ea(A,!1),0===A.strm.avail_out)?E:Yb)}else C=Ta[A.level].func(A,n);if(C!== +ja&&C!==pb||(A.status=666),C===E||C===ja)return 0===g.avail_out&&(A.last_flush=-1),W;if(C===Yb&&(1===n?gb._tr_align(A):5!==n&&(gb._tr_stored_block(A,0,0,!1),3===n&&(P(A.head),0===A.lookahead&&(A.strstart=0,A.block_start=0,A.insert=0))),p(g),0===g.avail_out))return A.last_flush=-1,W}return n!==ia?W:0>=A.wrap?1:(2===A.wrap?(q(A,255&g.adler),q(A,g.adler>>8&255),q(A,g.adler>>16&255),q(A,g.adler>>24&255),q(A,255&g.total_in),q(A,g.total_in>>8&255),q(A,g.total_in>>16&255),q(A,g.total_in>>24&255)):(h(A,g.adler>>> +16),h(A,65535&g.adler)),p(g),0=n.w_size&&(0===p&&(P(n.head),n.strstart=0,n.block_start=0,n.insert= +0),q=new T.Buf8(n.w_size),T.arraySet(q,h,t-n.w_size,n.w_size,0),h=q,t=n.w_size);q=g.avail_in;var x=g.next_in;var w=g.input;g.avail_in=t;g.next_in=0;g.input=h;for(B(n);n.lookahead>=I;){h=n.strstart;t=n.lookahead-(I-1);do n.ins_h=(n.ins_h<fa&&(Da+=B[g++]<>>24,Da>>>=p,fa-=p,p=U>>>16&255,0===p)P[D++]=65535&U;else{if(!(16&p)){if(0===(64&p)){U=Ya[(65535&U)+(Da&(1<>>=p,fa-=p);15>fa&&(Da+=B[g++]<>>24,Da>>>=p,fa-=p,p=U>>>16&255,!(16&p)){if(0===(64&p)){U=X[(65535&U)+(Da&(1<ha){t.msg="invalid distance too far back";h.mode=30;break a}if(Da>>>=p,fa-=p,p=D-w, +C>p){if(p=C-p,p>Mb&&h.sane){t.msg="invalid distance too far back";h.mode=30;break a}if(U=0,q=gb,0===T){if(U+=tb-p,p>3;g-=ua;fa-=ua<<3;t.next_in=g;t.next_out=D;t.avail_in=g>>24&255)+(g>>>8&65280)+((65280&g)<<8)+((255&g)<<24)}function P(){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 N.Buf16(320);this.work=new N.Buf16(288);this.distdyn=this.lendyn=null;this.was=this.back=this.sane=0}function p(g){var h;return g&&g.state?(h=g.state,g.total_in=g.total_out=h.total=0,g.msg="",h.wrap&&(g.adler=1&h.wrap),h.mode=gb,h.last=0,h.havedict=0,h.dmax=32768,h.head= +null,h.hold=0,h.bits=0,h.lencode=h.lendyn=new N.Buf32(Da),h.distcode=h.distdyn=new N.Buf32(fa),h.sane=1,h.back=-1,Mb):T}function ea(g){var h;return g&&g.state?(h=g.state,h.wsize=0,h.whave=0,h.wnext=0,p(g)):T}function q(g,h){var n,p;return g&&g.state?(p=g.state,0>h?(n=0,h=-h):(n=(h>>4)+1,48>h&&(h&=15)),h&&(8>h||15=g.wsize?(N.arraySet(g.window,h,n-g.wsize,g.wsize,0),g.wnext=0,g.whave=g.wsize):(q=g.wsize-g.wnext,q>p&&(q=p),N.arraySet(g.window,h,n-p,q,g.wnext),p-=q,p?(N.arraySet(g.window,h,n-p,p,0),g.wnext=p,g.whave=g.wsize):(g.wnext+=q,g.wnext===g.wsize&&(g.wnext=0),g.whaveE;){if(0===ba)break a;ba--;O+=na[sa++]<>>8&255;x.check=K(x.check,fa,2,0);E=O=0;x.mode=2;break}if(x.flags=0,x.head&&(x.head.done=!1),!(1&x.wrap)||(((255&O)<<8)+(O>>8))%31){h.msg="incorrect header check";x.mode=30;break}if(8!==(15&O)){h.msg="unknown compression method";x.mode=30;break}if(O>>>=4,E-=4,X=(15&O)+8,0===x.wbits)x.wbits=X;else if(X>x.wbits){h.msg= +"invalid window size";x.mode=30;break}x.dmax=1<E;){if(0===ba)break a;ba--;O+=na[sa++]<>8&1);512&x.flags&&(fa[0]=255&O,fa[1]=O>>>8&255,x.check=K(x.check,fa,2,0));E=O=0;x.mode=3;case 3:for(;32>E;){if(0===ba)break a;ba--;O+=na[sa++]<>>8&255,fa[2]=O>>>16&255,fa[3]=O>>>24&255,x.check=K(x.check,fa,4,0));E=O=0;x.mode=4;case 4:for(;16>E;){if(0===ba)break a;ba--;O+=na[sa++]<>8);512&x.flags&&(fa[0]=255&O,fa[1]=O>>>8&255,x.check=K(x.check,fa,2,0));E=O=0;x.mode=5;case 5:if(1024&x.flags){for(;16>E;){if(0===ba)break a;ba--;O+=na[sa++]<>>8&255,x.check=K(x.check,fa,2,0));E= +O=0}else x.head&&(x.head.extra=null);x.mode=6;case 6:if(1024&x.flags&&(q=x.length,q>ba&&(q=ba),q&&(x.head&&(X=x.head.extra_len-x.length,x.head.extra||(x.head.extra=Array(x.head.extra_len)),N.arraySet(x.head.extra,na,sa,q,X)),512&x.flags&&(x.check=K(x.check,na,q,sa)),ba-=q,sa+=q,x.length-=q),x.length))break a;x.length=0;x.mode=7;case 7:if(2048&x.flags){if(0===ba)break a;q=0;do X=na[sa+q++],x.head&&X&&65536>x.length&&(x.head.name+=String.fromCharCode(X));while(X&&qx.length&&(x.head.comment+=String.fromCharCode(X));while(X&&qE;){if(0===ba)break a;ba--;O+=na[sa++]<>9&1,x.head.done=!0);h.adler=x.check=0;x.mode=12;break;case 10:for(;32>E;){if(0===ba)break a;ba--;O+=na[sa++]<>>=7&E;E-=7&E;x.mode=27;break}for(;3>E;){if(0===ba)break a;ba--;O+=na[sa++]<>>=1,--E,3&O){case 0:x.mode=14;break;case 1:var Ta= +x;if(Ya){B=new N.Buf32(512);n=new N.Buf32(32);for(w=0;144>w;)Ta.lens[w++]=8;for(;256>w;)Ta.lens[w++]=9;for(;280>w;)Ta.lens[w++]=7;for(;288>w;)Ta.lens[w++]=8;tb(1,Ta.lens,0,288,B,0,Ta.work,{bits:9});for(w=0;32>w;)Ta.lens[w++]=5;tb(2,Ta.lens,0,32,n,0,Ta.work,{bits:5});Ya=!1}Ta.lencode=B;Ta.lenbits=9;Ta.distcode=n;Ta.distbits=5;if(x.mode=20,6===p){O>>>=2;E-=2;break a}break;case 2:x.mode=17;break;case 3:h.msg="invalid block type",x.mode=30}O>>>=2;E-=2;break;case 14:O>>>=7&E;for(E-=7&E;32>E;){if(0===ba)break a; +ba--;O+=na[sa++]<>>16^65535)){h.msg="invalid stored block lengths";x.mode=30;break}if(x.length=65535&O,O=0,E=0,x.mode=15,6===p)break a;case 15:x.mode=16;case 16:if(q=x.length){if(q>ba&&(q=ba),q>I&&(q=I),0===q)break a;N.arraySet(Ha,na,sa,q,va);ba-=q;sa+=q;I-=q;va+=q;x.length-=q;break}x.mode=12;break;case 17:for(;14>E;){if(0===ba)break a;ba--;O+=na[sa++]<>>=5,E-=5,x.ndist=(31&O)+1,O>>>=5,E-=5,x.ncode=(15&O)+4,O>>>=4,E-=4,286E;){if(0===ba)break a;ba--;O+=na[sa++]<>>=3;E-=3}for(;19>x.have;)x.lens[Da[x.have++]]=0;if(x.lencode=x.lendyn,x.lenbits=7,ea={bits:x.lenbits},pb=tb(0,x.lens,0,19,x.lencode,0,x.work,ea),x.lenbits=ea.bits,pb){h.msg="invalid code lengths set";x.mode=30;break}x.have=0;x.mode=19;case 19:for(;x.have>> +24,Ta=65535&ia,!(C<=E);){if(0===ba)break a;ba--;O+=na[sa++]<Ta)O>>>=C,E-=C,x.lens[x.have++]=Ta;else{if(16===Ta){for(w=C+2;E>>=C,E-=C,0===x.have){h.msg="invalid bit length repeat";x.mode=30;break}X=x.lens[x.have-1];q=3+(3&O);O>>>=2;E-=2}else if(17===Ta){for(w=C+3;E>>=C;E-=C;X=0;q=3+(7&O);O>>>=3;E-=3}else{for(w=C+7;E>>=C;E-=C;X=0;q=11+ +(127&O);O>>>=7;E-=7}if(x.have+q>x.nlen+x.ndist){h.msg="invalid bit length repeat";x.mode=30;break}for(;q--;)x.lens[x.have++]=X}}if(30===x.mode)break;if(0===x.lens[256]){h.msg="invalid code -- missing end-of-block";x.mode=30;break}if(x.lenbits=9,ea={bits:x.lenbits},pb=tb(1,x.lens,0,x.nlen,x.lencode,0,x.work,ea),x.lenbits=ea.bits,pb){h.msg="invalid literal/lengths set";x.mode=30;break}if(x.distbits=6,x.distcode=x.distdyn,ea={bits:x.distbits},pb=tb(2,x.lens,x.nlen,x.ndist,x.distcode,0,x.work,ea),x.distbits= +ea.bits,pb){h.msg="invalid distances set";x.mode=30;break}if(x.mode=20,6===p)break a;case 20:x.mode=21;case 21:if(6<=ba&&258<=I){h.next_out=va;h.avail_out=I;h.next_in=sa;h.avail_in=ba;x.hold=O;x.bits=E;ha(h,ja);va=h.next_out;Ha=h.output;I=h.avail_out;sa=h.next_in;na=h.input;ba=h.avail_in;O=x.hold;E=x.bits;12===x.mode&&(x.back=-1);break}for(x.back=0;ia=x.lencode[O&(1<>>24,w=ia>>>16&255,Ta=65535&ia,!(C<=E);){if(0===ba)break a;ba--;O+=na[sa++]<>z)],C=ia>>>24,w=ia>>>16&255,Ta=65535&ia,!(z+C<=E);){if(0===ba)break a;ba--;O+=na[sa++]<>>=z;E-=z;x.back+=z}if(O>>>=C,E-=C,x.back+=C,x.length=Ta,0===w){x.mode=26;break}if(32&w){x.back=-1;x.mode=12;break}if(64&w){h.msg="invalid literal/length code";x.mode=30;break}x.extra=15&w;x.mode=22;case 22:if(x.extra){for(w=x.extra;E>>=x.extra;E-=x.extra;x.back+=x.extra}x.was=x.length; +x.mode=23;case 23:for(;ia=x.distcode[O&(1<>>24,w=ia>>>16&255,Ta=65535&ia,!(C<=E);){if(0===ba)break a;ba--;O+=na[sa++]<>z)],C=ia>>>24,w=ia>>>16&255,Ta=65535&ia,!(z+C<=E);){if(0===ba)break a;ba--;O+=na[sa++]<>>=z;E-=z;x.back+=z}if(O>>>=C,E-=C,x.back+=C,64&w){h.msg="invalid distance code";x.mode=30;break}x.offset=Ta;x.extra=15&w;x.mode=24;case 24:if(x.extra){for(w=x.extra;E>>=x.extra;E-=x.extra;x.back+=x.extra}if(x.offset>x.dmax){h.msg="invalid distance too far back";x.mode=30;break}x.mode=25;case 25:if(0===I)break a;if(q=ja-I,x.offset>q){if(q=x.offset-q,q>x.whave&&x.sane){h.msg="invalid distance too far back";x.mode=30;break}q>x.wnext?(q-=x.wnext,t=x.wsize-q):t=x.wnext-q;q>x.length&&(q=x.length);w=x.window}else w=Ha,t=va-x.offset,q=x.length;q>I&&(q=I);I-=q;x.length-=q;do Ha[va++]=w[t++];while(--q);0===x.length&& +(x.mode=21);break;case 26:if(0===I)break a;Ha[va++]=x.length;I--;x.mode=21;break;case 27:if(x.wrap){for(;32>E;){if(0===ba)break a;ba--;O|=na[sa++]<E;){if(0===ba)break a;ba--;O+=na[sa++]<x.mode&&(27>x.mode||4!==p))&&g(h,h.output,h.next_out,ja-h.avail_out)?(x.mode=31,-4):(Yb-=h.avail_in,ja-=h.avail_out,h.total_in+=Yb,h.total_out+=ja,x.total+=ja,x.wrap&&ja&&(h.adler=x.check=x.flags?K(x.check,Ha,ja,h.next_out-ja):ta(x.check,Ha,ja,h.next_out-ja)),h.data_type=x.bits+(x.last? +64:0)+(12===x.mode?128:0)+(20===x.mode||15===x.mode?256:0),(0===Yb&&0===ja||4===p)&&pb===Mb&&(pb=-5),pb)};C.inflateEnd=function(g){if(!g||!g.state)return T;var h=g.state;return h.window&&(h.window=null),g.state=null,Mb};C.inflateGetHeader=function(g,h){var n;return g&&g.state?(n=g.state,0===(2&n.wrap)?T:(n.head=h,h.done=!1,Mb)):T};C.inflateSetDictionary=function(h,n){var p,q,t=n.length;return h&&h.state?(p=h.state,0!==p.wrap&&11!==p.mode?T:11===p.mode&&(q=1,q=ta(q,n,t,0),q!==p.check)?-3:g(h,n,t,t)? +(p.mode=31,-4):(p.havedict=1,Mb)):T};C.inflateInfo="pako inflate (from Nodeca project)"},{"../utils/common":3,"./adler32":5,"./crc32":7,"./inffast":10,"./inftrees":12}],12:[function(t,w,C){var D=t("../utils/common"),P=[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],p=[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],ea=[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];w.exports=function(h,g,t,n,w,C,K,ha){var B,N,T,ta,Da,fa,Ya=ha.bits,X,ia,W,U,ua,ka=0,sb,jb=null,bb=0,Ga=new D.Buf16(16);var ob=new D.Buf16(16);var Jc=null,x=0;for(X=0;15>=X;X++)Ga[X]=0;for(ia=0;iaW&&(va=W),0===W)return w[C++]=20971520,w[C++]=20971520,ha.bits=1,0;for(Ya=1;Ya=X;X++)if(B<<=1,B-=Ga[X],0>B)return-1;if(0X;X++)ob[X+1]=ob[X]+Ga[X];for(ia=0;iata?(Da=Jc[x+K[ia]],fa=jb[bb+K[ia]]):(Da=96,fa=0);B=1<>ua)+ +N]=I<<24|Da<<16|fa|0;while(0!==N);for(B=1<>=1;if(0!==B?(sb&=B-1,sb+=B):sb=0,ia++,0===--Ga[X]){if(X===W)break;X=g[t+K[ia]]}if(X>va&&(sb&n)!==T){0===ua&&(ua=va);ob+=Ya;U=X-ua;for(B=1<=B));)U++,B<<=1;if(ka+=1<>>8&255}function q(g,h,n){g.bi_valid>bb-n?(g.bi_buf|=h<< +g.bi_valid&65535,ea(g,g.bi_buf),g.bi_buf=h>>bb-g.bi_valid,g.bi_valid+=n-bb):(g.bi_buf|=h<>>=1,n<<=1;while(0<--h);return n>>>1}function B(h,n,p){var q,t=Array(jb+1),w=0;for(q=1;q<=jb;q++)t[q]=w=w+p[q-1]<<1;for(p=0;p<=n;p++)q=h[2*p+1],0!==q&&(h[2*p]=g(t[q]++,q))}function n(g){var h;for(h=0;hA?O[A]:O[256+(A>>>7)],h(g,t,p),w=Ha[t],0!==w&&(A-=ja[t],q(g,A,w)))}while(xg.heap_len;){var A=g.heap[++g.heap_len]= +2>x?++x:0;p[2*A]=1;g.depth[A]=0;g.opt_len--;t&&(g.static_len-=q[2*A+1])}h.max_code=x;for(n=g.heap_len>>1;1<=n;n--)K(g,p,n);A=w;do n=g.heap[1],g.heap[1]=g.heap[g.heap_len--],K(g,p,1),q=g.heap[1],g.heap[--g.heap_max]=n,g.heap[--g.heap_max]=q,p[2*A]=p[2*n]+p[2*q],g.depth[A]=(g.depth[n]>=g.depth[q]?g.depth[n]:g.depth[q])+1,p[2*n+1]=p[2*q+1]=A,g.heap[1]=A++,K(g,p,1);while(2<=g.heap_len);g.heap[--g.heap_max]=g.heap[1];var z,C;n=h.dyn_tree;A=h.max_code;w=h.stat_desc.static_tree;var D=h.stat_desc.has_stree, +Q=h.stat_desc.extra_bits,E=h.stat_desc.extra_base,I=h.stat_desc.max_length,N=0;for(t=0;t<=jb;t++)g.bl_count[t]=0;n[2*g.heap[g.heap_max]+1]=0;for(h=g.heap_max+1;hI&&(t=I,N++),n[2*q+1]=t,q>A||(g.bl_count[t]++,z=0,q>=E&&(z=Q[q-E]),C=n[2*q],g.opt_len+=C*(t+z),D&&(g.static_len+=C*(w[2*q+1]+z)));if(0!==N){do{for(t=I-1;0===g.bl_count[t];)t--;g.bl_count[t]--;g.bl_count[t+1]+=2;g.bl_count[I]--;N-=2}while(0A||(n[2*z+1]!==t&&(g.opt_len+=(t-n[2*z+1])*n[2*z],n[2*z+1]=t),q--)}B(p,x,g.bl_count)}function Mb(g,h,n){var p,q=-1,t=h[1],w=0,A=7,z=4;0===t&&(A=138,z=3);h[2*(n+1)+1]=65535;for(p=0;p<=n;p++){var B=t;t=h[2*(p+1)+1];++w=w?g.bl_tree[2*Jc]++:g.bl_tree[2*x]++,w=0,q=B,0===t?(A=138,z=3):B===t?(A=6,z=3):(A=7,z=4))}}function T(g,n,p){var t,w,A=-1,z=n[1],B=0,C=7,D=4;0===z&&(C=138,D=3);for(t=0;t<=p;t++)if(w=z,z=n[2*(t+1)+ +1],!(++B=B?(h(g,Jc,g.bl_tree),q(g,B-3,3)):(h(g,x,g.bl_tree),q(g,B-11,7));B=0;A=w;0===z?(C=138,D=3):w===z?(C=6,D=3):(C=7,D=4)}}function gb(g){var h,n=4093624447;for(h=0;31>=h;h++,n>>>=1)if(1&n&&0!==g.dyn_ltree[2*h])return Ya;if(0!==g.dyn_ltree[18]||0!==g.dyn_ltree[20]||0!==g.dyn_ltree[26])return X;for(h=32;hw;w++)for(Yb[w]=t,q=0;q<1<w;w++)for(ja[w]=t,q=0;q<1<>=7;w=q;)na[2*q+1]=8,q++,x[8]++;for(;255>=q;)na[2*q+1]=9,q++,x[9]++;for(;279>=q;)na[2*q+1]=7,q++,x[7]++;for(;287>= +q;)na[2*q+1]=8,q++,x[8]++;B(na,U+1,x);for(q=0;q>>3;var z=g.static_len+3+7>>>3;z<=x&&(x=z)}else x=z=p+5;if(p+4<=x&&-1!==h)Da(g,h,p,t);else if(4===g.strategy||z===x)q(g,2+(t?1:0),3),ha(g,na,ba);else{q(g,4+(t?1:0),3);h=g.l_desc.max_code+1;p=g.d_desc.max_code+1;w+=1;q(g,h-257,5);q(g,p-1,5);q(g,w-4,4);for(x=0;x>>8&255,g.pending_buf[g.d_buf+2*g.last_lit+1]=255&h,g.pending_buf[g.l_buf+g.last_lit]=255&n,g.last_lit++,0===h?g.dyn_ltree[2*n]++:(g.matches++,h--,g.dyn_ltree[2*(E[n]+W+1)]++,g.dyn_dtree[2*(256>h?O[h]:O[256+(h>>>7)])]++),g.last_lit===g.lit_bufsize-1};C._tr_align=function(g){q(g,2,3);h(g,Ga,na);16===g.bi_valid?(ea(g,g.bi_buf),g.bi_buf=0,g.bi_valid=0):8<=g.bi_valid&&(g.pending_buf[g.pending++]=255&g.bi_buf,g.bi_buf>>=8,g.bi_valid-=8)}},{"../utils/common":3}], +15:[function(t,w,C){w.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(t,w,C){C=t("./lib/utils/common").assign;var D=t("./lib/deflate"),P=t("./lib/inflate");t=t("./lib/zlib/constants");var p={};C(p,D,P,t);w.exports=p},{"./lib/deflate":1,"./lib/inflate":2,"./lib/utils/common":3,"./lib/zlib/constants":6}]},{},[])("/")}); +var saveAs=saveAs||function(M){if(!("undefined"===typeof M||"undefined"!==typeof navigator&&/MSIE [1-9]\./.test(navigator.userAgent))){var t=M.document.createElementNS("http://www.w3.org/1999/xhtml","a"),w="download"in t,C=/constructor/i.test(M.HTMLElement)||M.safari,D=/CriOS\/[\d]+/.test(navigator.userAgent),P=function(g){(M.setImmediate||M.setTimeout)(function(){throw g;},0)},p=function(g){setTimeout(function(){"string"===typeof g?(M.URL||M.webkitURL||M).revokeObjectURL(g):g.remove()},4E4)},ea= +function(g){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(g.type)?new Blob([String.fromCharCode(65279),g],{type:g.type}):g},q=function(g,h,n){n||(g=ea(g));var q=this,B="application/octet-stream"===g.type,K=function(){var g=["writestart","progress","write","writeend"];g=[].concat(g);for(var h=g.length;h--;){var n=q["on"+g[h]];if("function"===typeof n)try{n.call(q,q)}catch(gb){P(gb)}}};q.readyState=q.INIT;if(w){var ha=(M.URL||M.webkitURL||M).createObjectURL(g); +setTimeout(function(){t.href=ha;t.download=h;var g=new MouseEvent("click");t.dispatchEvent(g);K();p(ha);q.readyState=q.DONE})}else(function(){if((D||B&&C)&&M.FileReader){var h=new FileReader;h.onloadend=function(){var g=D?h.result:h.result.replace(/^data:[^;]*;/,"data:attachment/file;");M.open(g,"_blank")||(M.location.href=g);q.readyState=q.DONE;K()};h.readAsDataURL(g);q.readyState=q.INIT}else ha||(ha=(M.URL||M.webkitURL||M).createObjectURL(g)),B?M.location.href=ha:M.open(ha,"_blank")||(M.location.href= +ha),q.readyState=q.DONE,K(),p(ha)})()},h=q.prototype;if("undefined"!==typeof navigator&&navigator.msSaveOrOpenBlob)return function(g,h,n){h=h||g.name||"download";n||(g=ea(g));return navigator.msSaveOrOpenBlob(g,h)};h.abort=function(){};h.readyState=h.INIT=0;h.WRITING=1;h.DONE=2;h.error=h.onwritestart=h.onprogress=h.onwrite=h.onabort=h.onerror=h.onwriteend=null;return function(g,h,n){return new q(g,h||g.name||"download",n)}}}("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); diff --git a/assets/images/backgrounds/bgnovo.png b/assets/images/backgrounds/bgnovo.png index e215993a4072a54b453ab080d5f6dc57ca4861b6..915c8795ca99be51d07f44f1536251775721ff95 100644 GIT binary patch literal 65104 zcmb4rbzD^K*7l}{P6_D_k(QDM32Bg$j==!w?r!OBDG5mxkW{(^L_!3mL%Nav?(v-G zIp;j@U*FFWW(H>OeXo1PbzN(1A~n<$aItPx(Zx6~T-?g}Q49IaIhpr5pJ)z_UpXQrywN~AUmfm=9`^@jETP2Z8U6Dz; z_2&Xt5~`JUZvNA%FHu;hU1qwJn&(R9`X+kZw0a%2d(&J6UoczHvDX_ZwLPe_=qHtX zSj5#5fm%&x*Di_vL>NNgcbG#n#`9H@C@w76q<_s2UEMSXn z_5N#J1j@L1oP#P6mPa0~CblW|y%O;Dg{X#_toJu4SF8)iUaHYH!fP_|otJ+8R3s;< ze;wGOUn-XG?}Pk#f-uoy9Vh<-O@V|VlR3Ywf51pejV-(XPATY0edNDaij86>$%Kh`~UuseO44=c@Wt3AHzf=W5WN}MM{~XdYAfb z(5k1fOKI_bzhzP;>c9N0pk9n=1wCC%ua-Qxhp?DyDxn?U^cYU|?T-y&{-GoOzns^% zHUhr+v2>2ev9S>i{$&kmP9mmc`u{mcf!1#;1N1eqxnmC*&Q9|!uEIzwtxitN^ULNh zYjY^j`o`9n3_F~`VWUW~`snO5f22JeZn(=DCm9-hN7Uhl_6J7ZNZLL7|2_##YWGj1 zzhmXk6E18kD04|!!eMyf@QiMd4SE896 ze*(xU%F0c=mbf|BN9A%$^-?MDI-qVdGKWG|(6hx<&-l4$wHz18gFw!~p?QzLR}{e~ zBSZ1OXXZc}6k1NCd7yc;m?->cK{ZiPKIAbL@C0M^Ejh3+F2;_`ZD)H8wcF7%gzJ)# zRl`*=GozE6_-q=o;`_-=t>DBA+0V45aE~x*!0+rQ_2zW|k6jM>udPc7m*M_9{Qp>6 z6I0l7$Y(KmPsOB~EZbR?=j+T&MPD6`Y{F1doOy*0W&J<{>k54czkI}T4Z%-#yrmk& zR%p@Gf7#}n+fDFeKg7bF-yj9}4)`7A-Tp{+z2|HYm(;=Y_h}xHI{kAmXZxV|I1O}- zZeDeX>mpJ$r9>urPNe*(XXhv=nPA;2-@&1uF;GCTBMh9i*CCG&koTlqllxII^0&MW zcv01I{ZoG&vW%S*KQqXebk=93PkqIsf+}sq z!g(^^-0+)|i`@#cC2Xjs^UiumFi2Rwmdfq21B3ogxU_g!83^X2JL5gje5WBFsLhH* z@r`3Hw)&zyOv)dU$ioNW|N9mi^v*#!BZMR1w%fBAvWALZI%E`5)WYNVKiMsWRCcNy z{LOu@#l;*pn22W-i=o;WjPV3Dg06!Q?t_!E9hES1#}Q0m>bk{!kNE2RMsne`J+EJa z>_lySGp~vDg?$nl)Yt4HrT*#b1DGRE_7reteGV7wQJ}V+o5y2L2B}{rJemCterv;y z@=)`ehOCJD*E_j>$=sz7sjul89}1vRzpRxz|0(7Fu>l0wgJ`($+WPkPN`CboW{`f* zGNn_s{?mEM`wUj*#Tq1NevB3eimZBCTor=aiPLQ~5jQRB<#xb0ZFNWyQ&h4V{>RF(6sPTLQS7E5`~PI8du zW$o>&k)=55FEK%l4SpzU1qr}1uzU2ojg=MIWQ{g7#2b8GIVrXEa*vlN`La z&hw8uX(wnrI&<$_+MjnZgQ2`ef48SJoo$60cnvj)R(Dmg(xULqRC?!QnUZh{4_e8n z74bftqFl${Ggg-<348g_e2Vz~{%_(NN^jqbw{`)%VRC&Ow1|@x$T462H56t@g|sBKR@T>+Iz;K`aGxEFyAuL}J3= zcK7D-ZBaV5s6?hZrK>z6E5!RN(Er&D$}^k<(>5xv;rxw z)gBd^N#i6%5j0195l74DW|!a$Fh66da)1T$j z(ReNsiXHSZh7FQif~s4iKNe2dVD}@c)%)~$yM6nWo9ZKw?UaFcj=o~U5?)&#mLpIm zAR73OWe}xP6HhF1RQjv{hCv~9E4{BSrfT@kM7%O)f=d1kQEUC$o zsvr3_v#cA#vR1Vn&0wA9&$YQ=P&7adR|46LT=ZbPAn%bzN1iah z1eYX}$kes8Uv$6lgQU0## zf1X$sktluDa0-WU@$;^^*tHmoh|^*&ap>p=A`VGD;*i(&O>TW<*hr) zTa4I87~}EEZC8(B#r6`HFSI>Dbb=y)AJ1h)2&cmeqb&Lo{j}>QmlMwVBx3}LE$}*t zGpXiDHFtwP3vYb?rC&S7FJv0T)$_dUwje}SaTtCd=>0&GAi5j4?Bagot3s6xF@w}v z_g#}&ug%J37Fhxj0t<>^k;nmSo4^o03y#%yO^IHb=U%8!Nz)pXIO!82T4O(OHeu1NrJdF2iVuuGaHjTHKJ zyllBR_eeAHTL0y&)w_bupu?Cq7ddy0IimDmkF+a%$uktUHiARPMkgmHPMihG1i*i4 zFC*m(0YFB;WUtoDilLva-tVP-hD9uD)9YiWHoL*=q}4l71(7era<$Uu3A>6TdzZfK zkhRanfx`FOM*^UsE{1{`t*=)*jRhzos4b zcDnS3vv`K5V9h=Ccj_sv&3bggc+o+?gNs26NVcaygnv=c7gnMycSa>aSh7r_b3&&c{e{iBMcn}8WeitaX zC!fRHa~c$TA_BEhzP;YUfP4lI^}cP+*gqHFf8PkJoZt5#f5aPsj|MZ=GCT7#sGW)2+z$VpHwaX>g%2s%`|XCRFes3Jem+}rEKX9Tf+ zc^-ls5YVXP0Y4=0MMZ|EFkko+&K(EwT>Z4G1+p8M zq~|3&z_U*tM-+o31rU01B^7|Rpz!2lJtB9CHuQ+S(yWgDI!n;v`UrNb8 zbi=}>0;e{a^(cb$QQ3}&5H|Vyk&I6vs+S~#%7+a?Jq{i+o41p`62Y8+|_9-Yu ztAdOj{H`Wn0*9+&-^>uJ@n<`)9(&y?MUM071}*7Gqtc@emi4 zF5fut`^pczc{e+8ZdZYm6a`Y1W9;aO(1?rS-2!e1&~mLlP7LquJysYotQNorzjjk> ze`}J(7`ljqfAUC88ZiJklV6-lMu6NuStN6rwsfd{-?tXNPz$TrU5yjUNKBn2y5 z00s|X8e2=j|=Ey?bAU>0c=QhoUFK`{5=A^ zG2~rjFW#hck49S`;5I7~q}>+%^x-58lRk#Fxtj7Z3%#q=#QPy>$7POV5jZ)rcGm-jcLTWgEJyCnIf!ex$r$09$* zTa0E)`=oHB{r=tML|yqSBw2TwAM?lxZm)0@cH$pKRT()`$14uTPy6;%7!DKf2tAXb zbMzaEui4g9ss6+F(H({n33^+|5=Sr#7t}|IJZ>eq!#>71rph}?L>9H=J`%LJ2gGUO zCe=dQ++<}IfMs!@gqr-#j}e4CVr+49W6L5m#9-raR~}JB3_gB(g~h1l{eyy3W)EPg z-UJ73!i9{ZjwD2?wlf#X!a8O|<&P@JZ)ng{+CmAhWed5b={7{v@T`O8Ekhv)pBIwE z3lVZ6sRVtu9#l0SkU50b7F-?bt}=y5~PGv z{fF%Q0Xr_g0TfBsY|O73=29I^h;m2(X;w2oij6OlCd8prg9Syn%|0zs`$KEOF|6kqzP^X{4=xN=8Lil7}{ZL&iw{xumoT( zQh^-9eaA}d3Uxd(!bL?4GFLGAXxef!d9d0qsH`AY?G!>!o&>RN5edcOo6=UpcJ9LnH?%X#A+=OwxpG10v z+V)=tQQw0tI)yk_VGdgvljO-~TZpW0 zs+nxmuRX}9lbp;^^rgC2YqdDas-@2l&o^@AJZIVKOJc5%5uB*^vj*}fME-Sr#;8Q} zMz`W5%Q<$&zTFu6gVp=T3#S+Rpe(UgvQj;<70fbko4Z^UGOyL|Qw^iT;qj86z#a$G z@{mfIKo0Ytu!tlUhc35TQNFRyjJ_*QQ;|8985_@e!A;8;esoy;C&6_MGr4Dg(!{~- zPC*!}lnO@=AUj}wGq*d{#cP~nO!31Cx;Lby_qqweI+3rC9ELxUe{JjgEX6_?!{#oc z{DFi0P`i_#9&WH}$y@NsPTBx@Y5eH zvD@PDZ?abJ7$&6%`ND{93nfnjPEy6h5JS5UXgAlpH*Md-4YUcKJBdn;2?_C>-!$7toHJ$kn(ds;kk* zn9ieDbz=QG!}n>vo2Q%Hv}_%o)hwLjmK-oX#Qx!)CiGu$T|c)gdgKrOCxXvh;b#)L zK~j2aDL|uvbX3fjQaQei0i)$&vT>_HGDyF}obBZw zw;fhRQ~^!-4a$u>qRc~@+J-1fi60R(Jh*o$uz=0u$U9C(lSCD!t!Iis_aXauA-(HT zq5bsf*rOq`P2$!33%F;Zx~KE7=9~sTP;|p73{pRl7arCtj{3TL%Kl5G&^K`?MJbf` z_o;P{MHCD0;9~UoAcI<5;B4E^k~zS?nrEZiuTlltEWv!>EYrjt8J4hdO#2YXblHF%F7%L%7 zrVX$l31X+!qv%N&##rW%1zRj@y1}g~=lP4;45&vS{OAUqG8tpqvX5V-cllIIJWrPt z8Cb^n!97UKzf$Qh;kOVUS|ps~1uh<%WuZjEbR_W5rN3zNCH$ z`x)Mz;LI2rV*H(BuH?hFWiq#CagU)WP_qCSw=xJTV2g)S__fa^3DZzK|L{cAj?0a9 z`hm*geBFmr7>N~W{~peu2hcpmCOqMfMG#_oWvfsY*H=IQVu$cVLG<1VY#TSt^f~>q zThR7OqU=(PCT=opb4@uh`6$a7uX-vgnTse=Dv?PsFabO+uY4`NC zh`_mzgs6Qq&VM{N0v-ayc0m6U&3P@)P97pC#vmF#AAV*@nAu_<_0K?H6E-S!y(eTd zKtn))FaGyIYD{0TonIZ2q`RYPnyKk8^#*x#s(k-Tda|wXxerYouk=cKVVVB!9HFRM zKK257u?ksHP0r0~=UfjU3gruFT1FOpK%B1hRm`V#0FqQ9)2F5Vr>Q4>J7bJ;0z`Fr zl%@ls*PLgOFIMkp?MGYAxOJZtp1MUoLs^F$c0yG-~Of^*Cw5GM}=CSi~ z1fb(mb}783G>mbKdz_A=CX-n7>j=DBj)HbbKl2tS{B->6YF1cjvchuX&aZo($)9 zi&yBqzOwK7QpRqiZJ6bF7JAwWdMc-h9V%B$qvBc57X`}KNYftHYj=$W|EmnwwrH5` zU@L$KSRCt!UOqRKj92*69!Zf!{}}2}1k?mTISATcDn?iZT%uxAt>#$hTX4*3*S(@^ zcSqOZJY2Q}mZF62k!TCnsz`kIeV|#heT|VcYvqIq2SO_11p=kdAD$()4IO)oy?dbI zK9n&a`CcVPjz@;+Yjo(IPDTeidy|-RYcmBG{t*UH-Rqv}febPjZ#)i=sirOmd*Ul; zMdxMh+_|$IcY?UyudDvRc}j}&$nzAH!3D1xcwP#}QcLDKemH$Uwf6~^5`ub%b3@7c z*iuCVMI!UmRpCZIrzXP+lb9?xZdvcVrpDhM%}$3V?n&s_${!o8(DSmI8*EYkI~jm{ za3KFMg9!N1iUNARZS#$^>c{vyD)GZg^3rv(F)>@PQ!+b?cKyW>mB)bw4Y%p&c?c~? z&7?UCU&m|I0L%b17zCP0)v--}n155W%F-zkKDQe_wK*XtTKDEwHCvhrd`Z^Hg8?7` z&F9}(m}UKBm>9?Sta`HG9~feJQ+x-mTLy&asVqDz<$w)jo)S3yO0fTMJJMoEtzWZ5 zZ1%0!y<8D*!KDM6jg2}kS`i=N{^=05SeXsh2b!h1hRE^hN&gf9msymUP$1(Ry@HYU zULMDXjm&7+L1=i+i)h_eqGr=b-=v0I!`yhEtj-eJBk5m&(p4+cqckoMa5hNjDKFaR>D?`4M{Z89y#`q52T2Ha%Q9wljR zWdd?VL05$IkB6$5&W|?0#j0FWt;X&uqDccR{B!iIx#geW!K&x$ z#B_JPuVeE<2SDlTXt?MM6i5o@<_`L?aIt-VF5Xy-$Qp^hk;<^mNq&++ghl~m%lYiA z0S!$Oee0N{?P&|wQ3dqQpvNEPmgJ1;~KTfv4ffUmD zZq3`P#_q!H&4<&sPp2DsUz}xnOIF-v9Y6tEI;E)p|6&3O52%ZuGYRQ;jQ~cc({@sZ z?{JE|&z0$x8wix6KB)2MKGUt%KE`N8bVdA4%P^m*1(C5kk!1$ql(k0O$V$Y6RzxmV zvr0MnEQZr14E2R%-4Qoe*H$?XW#|%rr8}h%D_GONY`g5rlT^->(FB07v+nbMu?^-B zM7@YF92#56{Qel>`8x)!kFy$D6@NsGM|5{8&MpMj=65m<@=aByVFA%DV^*Fy642M!A>=%x!Oune zK-B>cy0_##Lx_cHY1aR^G1Ki$0@^Uh_({r4D4Y@OUt*nnHmuVxSs{i*i0JvgU!GT9UUN$ci{(Ph-4myfW3@19UNWqQX)2MI}pt z$l;MX*~KUfikiz?4Jsw`B1Y9T_#Z_*jiQcoaCY|;v}8VR9wTqi71Kh89%3=PVF;lz zqf?~j9YqfV1(-1~i}`im(g(~3w9kzoDc+KB^Xn{8{T@pr>Y>qJKdX}Y>XS4MF7B_d zHTCs^laoJl?*i+MA*^R8)Np6<^e0NNt#LzEgJAQwy>D;$_(V5NjZN=_6RH|kPi$K( zp4JjuntY{X*4lSBJj=j1z@{I0 zpnycN2d?g7R4SP)k&=YI$*ufO$!F=7z!zxu+ZoZrm~3fKUR`Peaa{!m6Zsb2)0EG+!x>LCtFvWm}(yl-I& zsqhjutWa~h2zbv>M(G%zZn*kMi|KUR%K7i!>R-AN(}#Y=@HcoPZAVq_c0Zc!R%Xql zxQg3VT@?$D5|kt$rIYqsVZBU3D-Q5oR3w9Y@GY+>G%;cY*OoG7Rj8D>j>WQePuyV* zyq5ZD2jo<7MXIz8ktw-+hAkq5yhoeu3`<~xzWj`|T;L(S?o%XPApg)>6lHa^Y0Z#k z6N9`|uiqXg=D782c?pm;d}}W>kWGkqD6-$IC->py#H|E6BqKd~72^;?2cFhX%rC$O1TRViw*-t4TBT6Q8?n&mxh3F*e-osV7^M%;^M!lq-Yuf6b>v zgX$R0q;y{0;;Vr%2PR;|<}S%C%U-dFS?uuy(n4$5!OpS7tZMm{l`rveagkCknzCs{ zJ>q})-BF}jRyDR0#I51^{Tlcud*sqUGKMtgGkN(ZSAVSM_?aW_w|J1j%>w^g3q-dX zJs0FYmpgy=Gnbp2#X}^n7YY=u-fEF?+UWV9@V^>qpGi(!ll;pqYNbt{L%6*ty}6se@E95$6^pD~#;tym=XdiMFME?G!6Xx=hni*yRx{6%~KzW7}SM-k?EPwlmOZ(GQ2^0Qh-BdF+7sr$=?iJop8#bU!9ms$jN7RgkOtQNPv1HMixC|Q4hB%Dq6$FeKzH36 z*gW>~1UoRbxxz!f++zNfg$hLdmRDw!#37ZXPyFgNk8E7*6O*9y4xaq?@^i+!!u^<~1 zEUTciYJ%OU1-sGOjFb~s+??z$Y=S@;|g6Yleuz_e%j#*oyVZZ%7N&v&}_iH zNFEi2&taQF^GkWZ8{H&YnvS!p+vR04h|Ev?0FmD?xD}M%KhI><^X@Eat~y7(shR`j zz2<*6@;RcXc2AujXnqt?u(#(1qX%a`U>-mRQdGqG{{H=Y^QTW0eN=NXt$FmR z8X9IvY!Q(aP=W53`mAdj!OSBoDPwn^XNO1;fvT&g7fa_Wb(}WAuQJ9!XY7T>_|yC6 zVlayj`-?NXbqQY#Zkp^G6e6UxsNs(@jlb`mA+igi{Q2w#N(=IdHg6d*9wDc@Lb<-b zjLWhPR1gi{I41Q?z4y&nfe0@^zu#qF`EwT0h*vW(b`_+>hp^r3GY5E|6Da2ex z>OIGQjeDINV3ATuIekiK_mGjUW0PG@ctJ^pT>$fseRqCk&ck}iTPZ`bjbN-zRgGiG z1el6Yic_QAa=v&G$85hzwTO9l)pXWTTIy`-kzU*2o z9aFBimD4?9{qKpcQn763VQo~p4&H7QsfBEQ{I%ap+cP2uWN&LI1z&Xd=G}xktlbpd&C1Q4O!YsmFzwcBKc9%%eDbhxgz>A}(IBRU z2wev^(nqjWPmJTTs_jbQ#A~Z56S%H8kRZ#Ln~B~alFlPOG0}>5f)%lxg9)t|=mr%t z-GWud-Tuec0Z1Qfmn@Aq?JKI`Pgq$}z^=pDgp0Fr)y|G(UNIm*Uj7NA-tS^S-_T2C z(9y6Lybl5yov(Iy`$pnic+~`JgB_yw=}+6(`_w}i&DhPa`RwVwtb#!kg{fP5t0WAV zS{+=^db2sA7P6z=#viryQK=~n^1-7xf06U$McdlRS`X*d=YY_(V@jT`*y<%~0?jF8 zMCT@AK*n^F`|i3Ar}41Zm3Fog?6KC_Sr~4ZMTWO-bq_%B&tIhvIgD&fcv!Eg-5n>^ z6tmvJSh&qN=#)slS~EP+yLI z7w~U1lbw-J0ranwkhV$F$D?PUA!Mlw*e|}FH;)pN^OSL(;=tgarp&0X4*mZctX7yU z+nELZKzOYzSPu%QNBa~l@9o|Ed#dk2;E$ST+G8=Qk#pJ3OdTRfx15rYJ`xvX%a{w< zelNoG$DB{GkDiIzyoAO9UXxM;YDxAXGS)}NC7T0``$h4_gEx3q^a;m~Itmao@VaN~v<#Cq0u`8Dy8%I}Oj;atcQ z$a&^hAE%MJNTgzTrIEi?>K5_m|6R%&) z05$k5RyFT+9FCxXU19Hb^J;3I&T*d&jNEsmPc9p8BkoF+j?mH-8n4?hz6<=={+%JDp_^r`8<%z2-_5J(2Wh!}*91G=aAhEM|TD~1%-E9%&npD0u zvD^tTJ&wi?xZU*Z4hm_u6UZ!|LzC2$-zvAcIycvyex%D1krzeL&nYInnP^}tSjE-$3D#$;nt(y4^ z4sd3o1M4)*GFFM8)}5LfFqixCeM=^KCe)I(XLQl+)%)qBske#ak1c zEKCRNxGN6Cj9kX+Hdn=H0QzmRM(r!SZ{$jqH z%w&8FC=g^|(qJvmAIa~*C$RbGpjZ>{=186D{BSYVfy#+7|7$#p6YueF=AQJETP=2b zSW=1JI4A+RR}N0w1O7in zp!u6&p!v^VTAhT{63)YhttB~_3K?22Y(Pz)+;FRXX`{Dq+Dc&tIc)t7>QprJy^GlV zn3!P>*-z{%whjYxU`w!nm~hCWOi)g}IVifOt%`a+*lkwn@Ub5yFCjp76e!(VznP8M z@{2y1gRQj;gxT+uBg^1Tww6VHB9u9OF>(1(5`9{qF5625i!@uA{D63XNhBSn8T5*d zzN((OS1rceIF1tHab_uhr|7zsB)+T8Rl#d!Wt)mJ-(dG_t&H*>If0PxaH|QoR<|Mu z<9*kgsk*8(haJL|A~Wfj4!PzGg7oLxY-?111n8nD5Av~4o^#9ocPi~aR3cpYi`mCr z6{YJ6U()tb)eXFi<+Or-^eYOb2uHkewP zjMa(Q#u7d$&>v>VdvoeSVPGr7yErC?gQNTWp;h>B@4-Bv-GL+tI8Zi)aG_e>H9Mkq zy=Y4)Mb|(Ru-Uod92R@W_=38?#i|*fX6E>tOjD#8n0!u!Uw)0d!Gvn|&v7#khoZS# zB7iEJe^HM7k1VjSA-tx7vw^fRpF)0w5^#UF5d{OErt4KOMuuNEAl+coxvi4P=~Qr= zi-^CMnrEY9AYmEH5e(v8(ZSbl>#!w>wm*spoG#bVb!obt?&n?hZepqq)G2fbSDMW4 z-L4QbHG#UgL~G#?z!YoW_Cqz4<%8d6bl@1KE5`G>z<}MeJLet zlv&4MLfIWD&fjuT|J-kWca7)V(9HHJmH3n!g8*e<>k>o#>`YP1!BIC5P=A|BhmA@A zVg=kynktL@w|b+ARB|8zGdU)ae2;Zt2>IG{+D{$mw*t>58JtZ{VNvLjH0-CZH!}Fl z%2ro$Vwo)x4~pK~Y6m$(RbRO;y zUMGC5c#)Q*FV}luY@ux%YiV;5?D-m^jVLzb7h_4fL@XXj@^u^SLL{0@FLcoa(;WS#%X+`c}5TBX}hVfXa(l zHMPa{aS~`ANOMNodf|EY-vaJY+X&RgxpZH=lgCxxtINfrPU7FW@H*3bXSB*15FX{p7b4}}Exm!}V+y&m$ zz3oYHV;Q5q&%1i-S$B)Ac^Fj6kby&=b_7%`SujCfzvu=gJ{y+|KdaoXly4b8AB?~C zBWvRWye}%3a#47%!y5`1wME5C!+jOV@{O|an-h1k#|skl9lphzM@VQkuFc)LO?APU^SC?*FYLm=te&IL->`wkw@u9FLa za)V^HcBk5MDN{$7N;tgoGc~hg6zC0CyuD*NT@qGL#FXtV3})AolOtF4=$M-WF)Oo*$8Uc5a6iT->f9Dalz1*Zn!gQMD0kkC(cD)P)Xkpo~t^sFsEL@R4 zWVPjwrg3^!7U`q)Kv?QP{KtoqKyV9Itap>`!Yk4l)tE+sSAP|Jh1VqxZLcxz#L;pK z;}hCp<{xU>@fqL5Nt_$s{S5Mb$yGa0Zo^`E`7ARlRO)>q$Nu8ssmPqX%(Z`RZ6Qdb zGy#I!aj+-yAI@6y>?_OXTVcFmX(nFmHen3gpMpV`366I+UVWW(A>5+mlCrik% zo-CF~Ks=+P#JEx=r9;C6i2vJH3i6{L+Rz{#NjtP2!vzP7+7*+Egk~J|%U{Oi5r??z|_M4JUeXU$l-!~c?;k?`RS#hnenyD1o zDiR*(gOabOG0~+kX9~6uTCAkkwOHJQ!aFhbqt8(`;ZGc1D9LChzgYppeSC%lthGq7 zXwsO<$+tGQx8Yu7g2NwHxeD>0l@j;!FhwVkq+|OQ)14|v%*vVIoSpiz$VuLnL>l~A^_Y0 zK-7g~MfFYKHWO(9*452Id1<{74rIg;D{P2c*P8<0v-~#SA0{EyxqE7ZOrezc?h4#S z_c)>x^(?}wtA40RGya1;V;29*pe-4y)H)R)>VDEabL;FXc1ihyZ5(2$4X*IJV}y-* zqu6_a=5N482rsV$I^W=`Tb?FOkW)1LA^QQlpo>ll2?4<4o3GEf9+J_RkOfj{@+=wn5sJ;nNWuGXZBDzE|- zIoLcy!ufrforuqe9m(3?enw}px;#zRiniORg~9B1>Q`)vAdrrhZpY}RvYM?sn}Z>L+U57^44VO!K> z`)!mqDSF6c&Z)-rHOggh+xgf6Dc9I9&3-(bFnGE{9AOn77+YjV0npY%tY08RmaGYL zRhBTywa$1hqvL6@#XF<^#Gi_0OBng!zL2*n78Gx*_%M5^(TQJF{CtL`ScNU&`D21g z<3}E#j#~(qmS{gl+5flRL}(sbG9s7aphNP6wIq3=)?fvsgvuN`M#qP|%Xbct0sueo zuyL+S$6zyFXM*}%)F~63)YGoco|H94B5vC1hozB=cks%G=<{_V`huTZ^Sbfq*oW{n zy%djR2$X3N2wYRCYl_b#_zY{v08DMyw)CB(P?>J!7_zYS%{o?n^jVVt9wH1hbN_=C zZku-Rre?>>F3jx)HM!1sZvuOzF*`MwoKYCbMaoTaht1*Pw|nia$TO18z7u@5GPk)V$Da^1(e!qW?S!{&%tq~VH@c1r5a zEM5mI64~9Ch1=!wiu4$Zu>{bBh`i*jXWDDZ6P8dwE~U*`U$k?pqF>LFBB6!c z8|iS?s{V1v%jvkuh4r(;%dHG{00I}cx{8pcM0{4Mn&Hm(Q3BdfP+Id^4mTPbCmC&? zeDO7O^${S@Rolu~u?*z7*^cC8ndOJ_0pg>n`3$9ZZ%_zXyzX58`RH?TE!|H~OH@kT z@#hQ_;e%nLQpEBLi7dRvWk;(R5oQY*l1VPf(B;F0x{~vBm8HNzgf^8Fe4hsf8C5#%7iu6{xLDZ zHfIQdk1F^GDU zqJ?yzt2?gGOV8FkBL>P!UyaIUT-S9{W9BH^wBEJ7Lehcn3qKmlEw^od@#>KgOT!m; zA+xD*lKP2B3-Aq^_iCmFKW!0|jGJ0pbM$4vhrat1mh~wYP1zgf4L`kak=aC3#6d?h zxq9nih2h=Tlh$P3Cm)+zEdo6Mlz%(jN2|>F-W7L#1s)2$4Q{!JWwE=z9kTrfE%p_< ze#Mf5KmfJpF$1C<8YP6THy)iP52~`U>Cxih}$Xe=F3SO+yG8 z&Ll9Rzq44+23*@<WTr928@_YWQB@aptHms+GXMri?zEMETtw9nLJ27|3? zD=DwJ>uROa0fm1%f%_ar-m8IIqCR3~-0)rXDW@P~HjZgB zRY`A_84SM_k2{5_@e!`$7qKkpuWOIq)OI=7rh)+lFh?Pi3RmT^jMt-oK^HEPfGv9> zIPmm?aIVTG#fzDlwYg4ykpXDc7)}%`MpYiHE-&ZXjE6nUDI>r-_UOSI0$2MIpYIzs z28OL1!p~q$dxgI334AZqFHPUT__F#G8b2=+B_=bvXaN?!=~A{$QZs*$>_UT&Q>WVy z4dz@2?h+Z>3e_qTy6dIP`esE7x$D%9!_&(3<^QImV{p)mtN{Qsx|LE6Y1H>U;@&*Y z5)Bp;A5v85TRaKhKY10{Pj2p%CkjbwR6`%1(!FUpkNcE3 z4H4gx?&)w%#gE#tH^5`!A|wGbNnrLo(gLgN>8O}_9G+FfQ`S_d%oIBoonb(qZmWGi z&?|49N_;O)T96cGT7Qi5z7-qXmRHoIrI}o?q1Hnl78b@MEF5ui;%2Lb#?oOB78t?; z?_8%5YMLbTmgK&LbvDrMT`~A|9EJ1~C-l)xR2*kyQxs`%lU;^_&Oq$&`(+D@zNfK} zsNd+LxwD*DXkZE9|?64JTFCtLV5~?eOM%gG7#g~ zo08unM~zV5tE#oM+7s+HPvC8a+}h71$h6fpiYaohc70>tGyX06#M|zBpos7&Nfg~q z?x%|>p#$L7j_zqMU-;z*Do0+Se{62hJ=AkY3p5Z~?R`X+_F)>f2qvhz$K_miF`}pB z3GJ~z`Sye%gss;1nJ;Pu*}tTt9DXH@L1Xwv*YK2!=Ol$6!J+hWX*z*^-?(vFq5s1h zFT~I9hof$b^x*j74(>h{?%lTnW$GS z1r$PUJByXl-L%7I8L;IFne_}N#NAKn3T*xIO%h7pMD#xAku(eK)Ixz^-6daqDLn?U zSiM(%Mc)!neVDwfb@n*#=V!8E1?CZDcKwZGDfZLq#8YJvUeRln(|o_26|Xpx=f|^J z?Q0MFwM5+0um<-fOdcs@B$I!V%g`VxUN(JAl*Uy+To%J-kjlIK+pEmzDXwpgpSiU! z!H)(VXWypP`p0fduQz?6(H5?rd6@JQ^HwVkcNy%{PNd__MxP(bA<^Me6~~tBbPFo< zN67Ks-rgykrY=M*gr>bRt$5s#WQocdl(eO%_ZlYnLZ~)y6ktCZLdV8lv^{z0WHExX z3!J)80tN}!J_$432wopQVfjR1Ir?6t;~rL2!F+L=$-{?l@Lv~!8H3ACe7|@SzkV>) zUu=3!w7tFky`}5Mwif?fi|$v&d^}2FFDDix(9lhu|8uv19}_y7@;-eb-8L=?OXat2 zKfu2i?$Dbj&`bCxd^KE?R?cdhYR|3p!%HM3Jiza9-R^@5#1d)TwL3*DlldY*aDuUm zI|KD@8FJ?M_WDh`1pX;Ghz)x`x`lIsH{p{s(l6pNo6FP5(_e-xK7IbwOjS>?#=IBR z&PZq1`UjJH0pNN6=ihNLpH!3J@foXJwbV-k2t95(rPE5cyx_DlFfO*;JhyIA8 z)j9kc2_FK3Kj1#(j5ZpS*W-K2fqtrNh3&d>tPGtplqKs8XmspHiGI0YT(WnG(84)v zh^_Ck?MZ!`Zv6c>E^YJ#x5%Sil0TLu;TRy3UxB|svGC_lSWxmTaTJod!-SGRlbv%l zTH_%CF%gO?HYTqBP&_gZw~ie-1d}2^zt2{!hcb4Di4rly@62;>jXfYb_D$Kj9U)Sg zZdzeiZ&R4$E|Te4BC5EhT_(ed`DLKlUVU$30!%k;w?A1)c<;O}bC19Xt}i6y9{AZ3 z3kF006jfZeFjsmN^_M8UUk6#o_@nXt%N`@G@{qmjbo(CJ_Z^M(p06+W0cwD!0u0xt z(00x=Z)BZCH}>35r2Wo1MldP^vYwbO3cEgjINUs=Q!ChmC#nP=eVUrqHumPAJubD? zxju2lupg;UCHUsZuI=4$xIwCyxW>knVHL`W%)2TYxsy{&--|I{XIP=E_CUoA`Ihm{ z>C>u%>yPKIPyj#56TT9|ueIpV-bsRGwC>2=V{bd&;U8M%#A%{~#~_kl#e50y5u@RL zo^KN3KI+a#%<+gN4X?OyIJ$KzDu7;mSh!*t&&A%=GjsF1zH`?1X+BYb;zmiaVV+qm zrALd2sd*B`z@-?UWlV|{0bbXXWCdMhGnJd#A9P4^xZ zJ)M4@TdTbvH1N$|faBcT(#1*9U@Nw5CE| z2}fS#`pgTf$fZFklGK!6{U}9-U?w93VM^^{uJ^s9hc?mG1gxLhRls4BPi*4^sOXF8 zpM8E|_W!8*3ZN>xF5H7C-7P7CAl=>F(v5(0cQ?{4C|v^54bt7x-QCjC4R`bXckaxc zQ5oL>2F{$l_F7LZ4xg2E%R);-ElrAQrz7{(?~-)wz6gG`I)C8-7o@r10C-P0Z zdB4DV6M#$&AJr^)B^u%>^hf?yHdT+=jvhbCUddh z<30X1^kxwcQR#@$j79o+rJ3Y>GEco4EZ9c<;{}sgr~y)f=x!_s%qP?}$IJ%Q=X0Lb zUQ>Z{E~GT#_HwLuLX#k7qtCO_mqiB(sm@ zTN;^NH_5s}CjN4HyF|7>1=@rD{CRQx{zXOlSzQc0k5uz=JM{rfqjh>`-aEN908XFPTsEE%l zNOp+Qm<{!)#sQs*S)Y{&;)EAPxZ-rqW_*cb2LwoGc4 zuorzQb~<{EvygCmK3x$)SkX&i*H@RanfsvSTe;dp%>{9{c%XCg{e=#W#H+Bz6mU_W zcx{pOY8)Oo#a^SfpAlBf!t^>H$<(sTz%hy@*QnG~@emV7L$^D$N(`^SCMO8owMf*k zf=grrPMA9<+|gqNc14GyCt-rGP6d;gK9L@j|E0|etp@xPl~3A>%p>7IU?u<=t) z@pig}Q|v+Cfe`!~d0`1X{{|kOAyDDa9n^NO)jc6*IS|R`twz+8{xBvCLPo>#EKmMW z6CmMa@$0y{b$#f%n0m4vyrJo?*{M!7U6l-1m(&LB^4RHGupA&%*q&PWS!KvGhUd7! z@z4Uqx@xGe648huItj*hBZKcd#}G|9cZUuxso!7Xb5m;0TcvFbJ znH}1Tb9DYxAzT5lP`uAej`at}P4=_PuA8^J8PJg5H8qu4Sy{%U3Fy|I^71k4mQ2@u zVA8UE5-xt9-tW~S-EnwKuJi{gO*3GpHpmc^Cu184%7X^`$Tq4vgdL66e%y%|)fPm@&`uB6cz%#urj=sf zoiwg8Qq>UW&&N1>PU|FO@wGVeW=9)ZTaIMV5KFyJ1XRRvE&fXj4~9^*6vPg5=pEA> zNQpTLBY2+XX-f!z6~(BJ`~R8*JM&;qk7VLG0z-S;sDj0t5PYmWy6r)LplfJkRU$>a(-5Ex5#dQdiW z#3NGb(J~B}1jBI%=t88-=bjCc!{sfzh7vfw!8QCCi$)L{+M9&FIW*-Dd1N?|=vzQJ z^mQkhDLWGETljP+A8KUNx`)GiS?${iO3BTV>G9+lOG;uys%>MBlU7Ijo)4%aYx~d8 zoZcRSv_SkhW>h>IPnfEtPy1^fL`CpwYo4fHZ6bc&(J_8{@_l5}o2~w5l}fjS{xe)q zsf*}{kMU37_ejD22TYPqDN&df>10KxG+EI;b>L}pEoz>c4tt4Ez6}e#c$E@mspigo zT=`F-1bL#u{!v?Unb4L<+_54mo>|_y<^6$YAmKM1!%)<^?1tg2?KW`SZM=T2%uehZ zW%=J-FsFawy1=SLf(*rIqo)*0bVVZ5m3E1>A=1aYR!Soa@}J)M_QcNW;Rf{KgA1Q? zx2pswKXvjWntXA8R0beK%KOeKkzB9ZYxzoRLo{eDeHf-J#<-f@TX!!PA5_tg)~9E-hBi4v z_v$fgQUv`%?<41~WXYv*;n_uLc?Hp$kGJG0+?CY9&0YD#zc`WqInV9OSXRz`rqIz1 zRhS!P{}rkqtFc%!JA(O=qG*{W+)U1WE!ES$Kyc!t%p`O6;j6b~7zS@KhOmO|5>F-L zy3f&Tb)&yU$nHs56Zmx=5%tV|wI6~cDVo9@IHE+SiXm`K37wZ|HYhP9NqsTGz_Q4s zUSi(}eO1#{B+aoU={Wr{e0%w7Kr&EqEsX`80!?A@ZOh=0vOHfR z#LUt%Ap4_!WEevSQ~?U>>iyI8=~(7-L#+zRhX zt;0Qv*`7p_^>$ORH4Mia3L@;-XKZRzC!5k=TrwSVCnJmoPM6w*D1Y>CEo7ti8~q-k zPv1oP$=#7;A28lD9y%s-cNDrhuVWdBCLB6ti6+?L>;ia2P7^de$GpGIqI|vvsP&xJ zri?$gx%gq<8NK;-{PlfamIpx|r1?A*9hj7^<*eENXQ=hMDJ!1nW~i~D1Y-dw30^mB zqZV4V7$Yu}KJ?CRb_GxA!W2*_K#&OEiuK)@L}o&1?b8WpI1QktCkW@7`ddw z<77^uu!}936m*6I_*3^K$&n~%Qs0rnq(tZ+^~SqN;J!Cs`}48v*(^WHO%lIY+%fU) z&|#}?_qXNxrSE|}b;#vx0sHBtHDtjLmBI(QT|U#D{or1`^-Ch?|2Gew%7Ls{+wnWP zQ^`^H-lY78hW?i$4^f?CwreEGmq%S|d)h5GKX^Ixul$-tnS&-OYcYu|c_w!b-mnU$ zXh+4JwI$za_OrH)w!s2f1WQ>`elb$-=qQcgv7H3LY?)dQ{qmlB*qA5)LI!}K9B`@S zmS_l*emrj_A&$hTPB#AF*rB6}SDh&?qtuFOy zO@}YosUpV(H8g!I;Q1_5xF99aKXE7Flvbr0$AC z!y(L#MR8=86#4s!fq{NS+9aj!b2;bP6;yYz#k=8zCk5Qi9ufO^88q%|S z*~hChR9E|D`ZEqXk>@#mf3-yZd}$mGuR{?*kU%SU_;E?xvZ<}Q0K0M93XMBSpG0SR zs;!8{TYJDXzH3R{rZnZ4YvEa4CHd$Sl+l*!F$#ZHxI4IvOa8j!G^zB^n(pUSQ~W*` zo%W(zKZ5a4HtuIgJfi%?&WOaR_*)|NNZ9#j8zD*PD3q zQ~8GIy`^<^ztwxQ`I!8P#Ue%%n~&c30&zhsd3!7SXOfd@-Im#$;~WRr1HEnvH4M%r zYTJ<$Kd|j3;9`FwtD?|!W|@sEM}0%4qe(9rOVoJJfFt(qyEIHkzil(GZPB!0l;JGoXK_6CLU!EF#zv zY!?p#sAbo~1dhB#6|sN>ZTRz!=jt;*0IT5&E}>+Qo2F(~%HY31E|XVJu4x!}pLzc$ zVBzEALn~tggNT0QI;`*WHTcjShI!Nd*>yc=H&eYrwwu{?#U2)gnD=8R1Kq$=?Qd?) zn`Y$p&P$EImsZ6wBQr43c~ zp-i)hGYgyOsszvc^MPU=EUoJ#zS?2bDVike!-myR6YMkHjP}v&djH{tcr2 zny6knv4a?b|JXcb4JrC-tPMOh!BWf7#NLflUP^mUl4PGAJiM~HSXFXr&8eKPyb7RP zR7{(F=+@y3Y7_%8jp;P=&{1b_b)Nf(vVQTVHWg_Mwv7C?>|U`)zqDq7Lm}P$Y4jW$ z+q?vF6>pPp9H_8m$iow`KSjRTLDMGbc&JBaN@bHHXW=0VE*7G@cLZ!tO)+t-9a6sO zRO?UdBNQWy8@wPPhZ)*KkJYVT02j7i!D zu=n&HRaLprP(tGJ8valo#$|xvNoqX-Vn)wwfKZT)$@ZWm;B!}<|8IVjwmw%yiTrz% z3RKiesmb%;Js!rf8O(Zy+lIW52T$L(v(`OOIng9CeO=WmBZ2V_pk2)W*bfS9RH}k_ zFsyW{2bBNE3a1z%L7Gp3x#fSG6U$k4L}!p}AEc&^^%uGE&S=&+(6IzZ($B|H3E}t={(~&o-&kHq;{HDc!*%8FOVB~G9(PpZ}K`7)k6Lo7} ze7DG)UMagN>E*w~jU=m?xN6Za~~4SaO7HwgI+ znr5%W>eK9ZJr^Fa&w3>2lro~Kr=-pOZ(7NgH>BbmNNSkb*`@Sr#QUXieEmiH;J1ry z!aZ@%FCrIDk&)ICrK^x+F55e&7@w2zUkWmif8Qy6VS72j=C~2hQt$ z5E_U7SF5G~s*V12O=-37JjuTcL!v~jC3?lxkj@pnlq|c|Sk{{#Xnxp7r3KvA*_!CI zy1s{8&%ax_oz?qA=eeu>{6_m}jh{}A9YG32h$JWMbY=xWAlJW6q5lO5Nz7~~U-hs# zph(uoF!uf{f4)QX`dQm()R!%gcRjoC9fnJcE5U)skDB?;$6yU)ycqH38PqvG{i9h6 z(Vg)zZOo9iPfuFL`R4U05&o9C)6F1-N>&+T!_s+}&SW6`c(JH~)%Z>CauSJhsVp5R zhZfm_e-y`{A%2m{d>cVYA8GhC6Xp#NjFiR^O@JWQr!CW;&}1k($neaK_hul|`;FW& zg$`kp+x#cr=kIOu^vq%gwblwpWtM38kQ5J-xdhL3f(FL?zt}rLTgG}^(C~&8(~D>$ z6P3tYHrfNzWoCL%_OHm@(@M(RYpWF@nTqOS9A1bzWKQ26~5{O-^u!#rnVzm&J{*Sn< z%pf>$t8|b5F1#Nxj4B$B>1pED+D9R$>3{dGNVqgF^ImzJrw#5)xR36B6|#+M?`71E zZN=i`*>FOeMk}3&&z&=iwRQ}al#@nNZ&e1g=jQ8;N;oT0*v^iiPj-tbOp>6&m0Gx~ zm-d%GC9X*}>2=TM-EL{FvPU)Sef;$ey2J5wi#2SoJysF)W8d@2CV~8Jik(aGz$GtC zulx6DxOke!F4hVcF)UheDRp=ewX-`XVb5VCx1>!uXvTGrU66>{LK8kshgn!tqJMobGd-&oDNOLi!i>rPHitF$Rc&^5>XaJ2%);NQR79B@KsuCC z7au$&e!5?<;d%g4nLJH~s{CQH&{|8-n5sDNx`7bIhy(&1Mg&(QQDAWyIk32m9E<{V zO>=fD>g*?xlq!RB=*xjWQ)W{8_bCMVn$0e)1$X?%aE0&V2(2qx>|fbK_&8?ly_*Vs zINRv{F!`-}%JYL$4;S zTu0z9C~8Qnm~TKq(@Uu}zsIPVdZ)AoIWcHS#r23r+*>W^zGXbfu-k;bY?Z#6-EI67 zr4e}=*uyJut7AEWPtZ9z{>wj8w$CCNXhijrJ%10F_bfSG{ja3)*?wgs>d!(TnY(%i zbdJysXEdsOu2hk+@plh&LEM#d9>kKo2R|wqB%4DL?)anYP`WbEOp0HXePoT5jXtLu zD444~jl&-3mT!yrTmEd@yZs!OMC^7&MRypt_OPyw_IZ0|!YJn(t10S}!~%QF(|$vV zJ0YE&9t!V0mhLTXO@l$?dVgQ0s8jsn#huAy8s81c%^Xo%@#7V!CDRPgkQS0M5Eh(RmR_IAvmZI`WzZXrM#jlql}sYYo})m z8{B7mN#d%8uh&nJtmUI!KJb!=m3pG&nhdtcweIIpvvVBzIn8i7$yy|Z0UXY+D?9_0 zi_->4sNg!He^3$gYl}Vp`6eSFEt|6VV9C)Xls<^qO>=~KCv{;?9*0hv__Q^s*DLU_ z1`E2mLEpQ42vDv8TSy>ad#$~D0ciHkSX29{Z?VqsK42gBv7wv!MLF|=IT?bXlb@ET zGP2K%QH_uThv^~CC|#Ua>-#zPn~9TW_ksXLI4-o5ve_j@q!V0nUo5n8)a+V#tHBnv z%+@mDKmKD$IR(uFnz}(#xNuzW1&t>1mKmmL@(@NQH8EdVd@YdR`??z^ z#!QKlF*+!h2L>&Y`dp%ON5#2A99j7hGK}cLG6;R@)#9{%pQJBZHRk!yw7z;ETyJPX zv`5<0Fq{_m0h6Omoci^YBYb=JFAqYGN<;{o7lxm=e4AlXrq2`T*GeSo+o$TFXv!?d zb-pljb^QAD=8772rz`7Mp^uNXFfH`E0|~^mmjsIBW{k=C=QDn*R{IXFn~OcDBUf_# z9snHG?nPc|t^U{xE8N=tV}jpP zR{nlAVDB04M;G?uer>w>I*(zhlek>hZR8Kd7+qep3oH{yMDq;xF6z3Z&?wvB?E{qG zWwSRa;aZxOFD%1I$2eNh7J|XCm$T5x_hb4B0H_*!i4R`2?iZ01YY3Q`mGB?&p=0-Y zbVMgjhW+_b`g8MhiR-z}k1F4s4W7(5r@DR$+jj?uEuRCPIFJ#2D#+NHzOj$^Dv%p*!B~TcJb4kdmp-zfxoTE!7HWA#H>*qA|+qLSL9tg0^g4hLc%v@j@ z0p)SyAfxj7E3yfYZOhw}xb~m+E-RtC%E|y(YCKU~m%ZzBX}cNZ0jH+AI3|YG=R{nr(iKBdN z2L0u2^l+;K#a`V4)DJH!4L+nM8KSwQOlOlaWgSC^g&h~Ej>HQkw3KixXlNVx3LZ+4 zkX;h4V}%onN~0V_WyhZXh{n|KPX9eae9;1vIPS)XFM1h9FMBPsH zQ}pFv!ZTca%w&(B2C+(=)A}JQ#zJQFU+0s9PK*pIIZg7r7EbnIV8vl6xFF9%qHubv zUUbABJF{lT1QI+Q}ioYlzRCXw{~bx0l%23B}J+c&SIxpg@6F zaq0Sz-3;Q{c#kSPAz`Z$(ZpSrw$1)Are>Ltn$P{Sa^j<5m~GRY=wW;Q>Utd#HjQte zAI>w^t21v2Gj4B3D_pEYc0i<8Kg4g?qKQ0DUDy6YS@VYUlGh|%r#TFCKI{#sM9tv! zyo^}>1`T-cMq7Pj_!CZX z%$7F;Vj_CCmBlh^}3=dYAL=!f0 zz^~;d==}bNlT+20p@bj%9vk)@a$;=@yEZ#0Aj5l~I|)fStsx~@*{hVxpM_=|4NE1S zy%G+V>*5}NPH3>{%lOE9?JeT|YDTSx^SM1~LMsn5@EI_#Z=N%x>uYkSmtJm*tq-QI zJkT6(!8gWx7Mw2YGb~zE7OlW-l(sd!;r!wRMfsFDN zKMvw`1+B-PSy9GV8`A`Q5C_R+B5`qxsbG_b=&RU1rTSWsli=|aJR=#7~eU*1|+Dx`#CJUxRvLiVIU+B!VCh>wE$p$UA%XPVCwo>4}y4)=NC*>+n5QXbzT!yaevh&Zo0lx(EmU`=iU$rEC%VK*!xL z&h@M4hypElp=t<&YHGH(H9KxkgKM8$Q~%2X3y{r@s=FM%uTLnF#U=QanT7Zjgq??} z9O75pF#^#ydH&Ou`YX@3fI z+j(KyDdp3lsa!p9={O{Ti0kfJCj`zc~IsT%RUz_3BNt1 z1^J-!)eJ4gd?EY)MIoGtm-K?58n2g5c?Vk!r!aZ&UKb1}#g{UYuAl2r$aIZ^SeH`N zwM}YU848v~%@?#QV^Cb-vMN2454bHMGUTtcW#AIbX()*3hscE~LJdVO@eUK*gf0tJ z_+a|OI}bK65{DhQeJ6ecabZxaxP%B6y#!pY7l*axx=~*iif*#|HMUAN305>3?WEw) z-qgZ+k6?-#?COAhNv;pas2JBBN5U)6%5Bimq#<4hA1~2uAN&^Hgm-(s>kZGubXCXZ zKRbPaR@|?B8wiUmL+d%Ji1Mpj9j*%onW7>l*)&(N{WexP5Q6%d*{$X@#u|GPviLK% zS;f_&pN4vRmyJcF_T5!#849qj?YkB!L7BJ#57XkawF7IY$pW{m)VPZRY}U6Tm3<#gt5Kx#Gj_-7TT*J`;T8h!E3aY&5Y< zD&-)vkK+X%|3x2I4~f5+*Fe>p=?KPEESB--BoT0Ex`5Vpw%n+;Q{p8lTQy78{LcR93cS@05B- zl-A54{F;s!nQ#HR=Pp??WXeuBY!nrz69|tI?JlMEz6PtVF(`8sxWm$cjgU zOG?|SK^C&OXvNO7DpA~lOiUbwSjzkWKJe(4*?!og=(c`C9Fx>IjdIsec{j1ershpm z+maFyX=e%SGbwm58fbsO3+ASCM8S&D53xwfo!afG4H^@HsJLR6&lU&iVU#haf)EPi zRQC1CK4QT2NsTarm|w>@D8FXwOA4PK?U@qYjUs{BSb**c+;iZqwE1b3F8&>nQJ8)lem}H${D|63oe4 z)m$mkG1c!0H)<4{4XfARBo-?rPGp}&4+jHMpVR&?Z)08K8feQr4Sp`56p*q8&ypwF z{>f_OSD9xdu#!Hpa|l$J^+pF=imG~%edhr`p2~TOHCrU64M6uaqAcoo30OJw(@NzU z+{lBU-A-G68L}NvOahxLuw%NA&8(r`FXYgn*WBUA&5by2R^Sh59<8fv7V9l z>-YSX$(_u%ya6mCh>zH1Fg!&Bf$#dli#bZa=9D4C+F7mN&2xmxzV8+8q7PFTJ}B1= zLF^*ax+wtvYK$*rKcW_7CGp=UkFIYOe!tlT^V$nS_0meo2oEV0?!|))MIis-{I^eY zbJ=zzVf`I*_W2Vf_YB9bQ~Z4X;Y+UQE-z)L>Q2J&QAy2w4{*$WEicox`?1$tmSBi< z^XH_Nn#mQfVgDYSQeoAug1W*^9#2W+sI^FLKbGU)cfEV~T{;JhgcLo@Cj0l)A=u-N zC>p6}wj46^E)m{8N+#_%9ormbBVVE96O@gy8XUi!`hugJC4Q7dKFCT4wu7`r8 zPX>RTnXa2v9nPgo-FA2~5n;2NdA*LH$pq{Ct#;}pkB&ygpF;m?xvuK*=K@4 zvS6&&?c{1-j=-ZMz!W!BYvV{PsaA)F6{4S_0x?l&9A**nKpP1c8`+v+KQp(cl|8$6 zs-E8rC|&KzLw#&~`GOmF_seBU#IkZ)ly+|AASo50x$j0El&zdQe#QJMv7W42L?iRh zDqpXo(q`o;u-e+*Wyw^H^pC0#* zwE5J~>h%gT_#1l@6UD4@XU9RFl3@W&6w4)@MPr5O!fEoK7m})r%)nH5-Ie?)IDCWV z?TgA@IL7`^`m>)siOQO;L~fee?iYJjGP4_w7f?ypsW$`m!A*NOT(`pL?Pc3~8T>I- z_6K)cuHRWM?1|p~y#^9t*nxMYD>*6_tFQfra@DNW3;G#EllSw7fgt&&vi3=-2= zous%sj=dIgw%R5~YRwNDl2U0zI}9qt32SeN6R{Lww@NVqcL~9LU!P>Q5-~^<*l14E ztKWjPp!+uLeqs0gWxG`ho_L_DhPN;WWhjBk!T8Lg!LxS`t zng*;Ee!~M9@=IznD|*x%gEv5LZ_dlT#4x8qAFV7cHvvL~6z|%4h6g`z`QnGsb$fEx z?e_-2{;sd(GnSsCH5*4G{hQ>nUG5>WW4I3PFF}(;Q-q2Lg_bE+=-p5nlpA8ZZy@yw zr9oI9v4dv#YWvMK*oR(0evMmn7h6>zX`&ZLbuv%=pop^v^eHlH#|mChS32A}(^%lQ z(5oUI_D3%J&s_dRcW~e<2sN1^^&UK$d2vTDx|efZ;H3a>VaSHK%>yvof#BPzGa^{R ztZAS*sc_8<;M;27vcJqB=A5z%aNI3EkH#bhV4P-783}$7eUY5`aZx9wKs9l+8|uqN zmY2UH+t3eeafTiy7?~}*-^Jqh47fWWe#^(*4-bU8o}0*YZ7QTlkdnqC^z{l45>~CF zo4*nsW44NINEyj+R5_2|mjDEXzc6KIzA%3fNao|v?pS55qg1Fmj$z|%FWn1P^lxhP3I0CA2NuYqfFEYdC7uc0M`||z z59FOy#DDg&f@tRS+0Vn5d)3p|(ZL_bJkUo9x9)n`l+$Zk?Hha1PWVG^>anvX<;-vK zHjW%aXFt+ZGH6K z4fkNrMEaCn);glHP`BbufIBh|2~_-ys6nfw*oW}rd6^eCw>8-2&Mo5X05=5KL?aG< zebX96%7m&2ET7aUNkB$YH{$)G7|1NRKD%I50HX%RBAE&M(UCqT%`8t={HlB+8H;D- z@53psdTImr;wzU+|JTB=_0OGJm5&4aw}IE&=-Buw0cF=G=^D>BidKAjBc=poR?eT) z4%sw@Zk?tR^R2yZd(d4p5sj;y8waXNe2C7&U}YMYrNg9|twWfCpHBpy>n3at{?XJg zw#)SbwSEH$f6C5<(!L?ay+YL{*F|{NyS~lSA7Vx-h1PU9AkGGR@YfK>-JR^O=~3Z< z*}=kuJQK9^NJ^|dIYVMZ1Y7O$5ucH@!Knj}@LD5I9OZ-m9}JW;QY*C(>@8Nz-%19l?>QlbEZ10$}I1>(DCA`Yau3I zP$dX?dG>JfTqR;JM$@>?f;>Mcq18nO#2Y`16xE3%GeIJu$rWwijH z8FG7Ey|cehEbDK~L~&I>l*b~hvA}7)!e+5sP*5nb^KR|P+Go{XQ`&w^^-b+)U#EIe zwTjq|W*L5VmcH$*@Diy;*RLfW(dXMJ?J77(7Ihm#(GdB_TH6?kd29!}UQ$_PZASd7 zmTEmdry@PIJ2t1U;>gF*n;Qfp%?;Q{rPNKO=>zcD#&x6JmrznV6`#1Uwm(d(4s%=s ziAkIAq$!sOC*n2mX#VqJmAaXDs|@fg3gLkvH_5j|Nf#78n+K`oJueg4Fp;yDlm5iw zlH#rut^9HKn4;NS?u+PJV-*Rk`C`rvGrR!Tv%Z++e+A?pE~>Y)RHzz`V+vug1#5nB zWb!{5zdMxs>*s@VrisH15c1;AQKp&e{O%Aa4PSyRjoq9+ncLHH>f(W*0CefV-pM~X zt@gDj(3T7a{GeDUA$ZTWarinxox_y;xxov!>{WG*1~y>i&v!hx%=c@J^o)d&mQMLGn1z6hV-d zjqy~}sore6+JO{fE4-DO{CvtiS1`i>oMobuAmMvqgrl?@f4C%h!nsezZ0`5>ilr=@ z4_uatm+{pI9|mP)Kaai#Hlr7Lu1H2X>@j z0%)VcLF^!#rz3PPXdON6EpHAT2SUtL!p($_PDMmWWR8mt*p z8NCMfL!T&7&(eJ?1E*)i-a^v&S>jGxaW~#F(ZPa@ZJUN`Z-^gY*n`ajCG+IxLrM>E zN_578(Ks-< zGNMVABomm)++-t?jtr2G95R=oA%3;&ZTkxFkxZc}|o$Jl2_Eu@q z@7kUjz}>CO?fychQ7e3(t<;)YTT;Q?zSLBXzP%4yYUzMi+XdczvPgmmrb%9T9umnq zlNlqZYi`er3;cbC_FbFtv=~q(0P-=fh0VhVn$vc>WzwIMc6pN?<}*Iz$(r%x-Oqu}DVZwI~(esc^_$qH4>FBZJs zHtKiV42j7;P45a`+)mpZP7l(y-3A*%ItT=4hij`Ent$9Stt{P|^*SaT=_DY0(PJpf zlrh#Gi~fIG3e$@KLt$8k%@dXgcx7Y=a8EM}L*A;9I zOv5V*>SiPBnpl^k`T@u$sh$#B%zt!u@^~B|tFog*Yx1oR#z@F0!VGZ@C+C@ch@%28 z8K>&Kb~0c#04oAH?KfTn!QdY#yvBYwcI$=LAbT8MpL3Vf>7Twk!g909Wld9u_%SSpTfL%J8J{?B6U{YX69~)V5cZU@6--6PGdN zdne>>y86@Ut`xn89Z%SrF}kplYx)DlsVjKm0{-Sb^Rb{0Ga5vHZMb81m>x*7r01OO&r!y1u(gki8g;NVU?5-k;@m5Mo^VK zw);4*ASZM%GAcf(#6Gz9FrThA#m1%Ys`bUS$lB7bJJ_K)_0`U*_pp+cfLX1J#!uH! zs=kZsxqLYy%YD9Tjgy^*kEYM!A4VgR5GbP(^$6Fcj$T8WCex|~Ka@?XV)^S(@vAuxHdhqp-3sTDGNYrdIs6pv;W zpOhVxQ5+509d5Fx&1I@`xH3)Q^UckmIBxlR;4bvx{_98!2QVDMh&ZAn=@n4_O?ITu zZtVDxW8F+kWX#;)_DgAhOvv`w3+t42ghm)o(W*Y3!{_GXvF_)@=?~c|S>enL&2ZA6 zgX7Vm{D}AU_71}su=0=)sOg}3s#=mWd4T3dSEHqBl zD!~9GV}-^C6;)#&IMk3F^TC{Pyb`qt?mt=TBf+@D^zYa4Oek=OEgawF{6mAvCC(km zoB8*!;9bI4wD5Nz$#Dx}>eesbq+E=!Y*=b{CqJ&%ALuZ$)Ew{cmH!-}!R z_s-qGH=L`MOd@8zi{zC+z zHU?PK78s*)#01`;T4Zr$-1m0u!TQOyUwRcai098RLTklrg$Sa0e>1RltFHk8hBVc{ z-xRuHug%S9^7~2Q=s|Pnv}kjc5UbGn_eqF}j10@I@mWW7Y|JXAc*9|0C-2F8>S}7% zU*vgLS1vDxDBy_%i+P9n0InDBxOo$0__O#feJ=SEr!+w{RZglb#c|`k z&5IAa9rIop{d8)ohwH=4ntp9j(20CeQHj(wTZJ7TbkVjgpWpsBWII_A1Rh3peIgcI zn6wWAh>#JvSHPiHHeWU1dVzg@I#V5MyF6(I&1l`Tr199v9n?!&P7Dp1suQ)dSwh$? zf&Qe8HA1@x@vF=-w_daT+hWgJH@mYGT+RMkh8#guy6FU&PBBd&BrZN;5+90iU;li` z3CmC+oVuuLUy|Evlxw7oEc~I&^5CvGJo4ju zI4a&K4dk&oyv`f9W6KZDDGPZ^mz4}jjpFwYO_l2+B+?FkRK4)xp$3pGq?lg;lzDfq zEjN8-d+lw+d{N{6Qt*(Kd5(gHMpoA;ceSZ`JV>*n6XTwbwIip$=Gt@)86nI`42x~h z#U39Br%W)49yfzw!OmVP+)Ncv6+4$(-{DIdixuM&%Q3`p`F_EB zfjbszEN*`0uKiWo+xu+|H>qk`<4^=&E-v>AIn{OvsdzfL#*(MvWw*VU;bT6GY@2^?Xf9=&5MY^{9tN!z)%7DdBs zFs=5@qVM>qvKayGJm_?!|JW`!z}eY!`&)>9&!Bt#i9q4+xsMxj;HllyftK`*PPNWx zCY&BA8uat7cwG7fLh}A9C4;OymEW!Fs`N#G7HwQ@%an`TR_E9DpG#k8ZR%ZEOiVi~ zR15Vg@>dA%HeY?KZJv0kTnmZPLMS(LdoI)Rk-$I!|3}@fwWZ#MOU_s(16z zDlDq4l#ZrU*>9ejo+ULwHUu-x#|y1$jSoX1*%cZpu?Rndk19LkoQB5Dkj}Hr=1&w) zku=L%OAPk8KvYAX6PRa;G7v*@j6oK{vb=g3;D_Lv$VVIjK;1KSzU@)lKZDE4#=gtY z!=@3W(J@+lUac58n(%bHUxhi4#&dxHI+KsBnI8`0z$Wk2r%YeEFt_cnD9dj$yzN|l zEzh@Y>xLW;j*5!|&R)3)s=v6lyb?^86V&4>EH)Fe2mYxq3Z$zpsT3Ufd&5#55iG*LE$m840V$ImL($uw6)D;4F<*^HL|nHCm@_&05WMjVl+ z8U4Hs{i#^SJk*5O{P;Hse}7uj-Q)?)j|iOc2UkZaSOwQkX( z93M&HBKE9H*|`b(=i1G=v-Q+K1rtqW*~Opv_=-cC?+Y?&N!2ig{-u@bYr0$L=H!0} zB-%$Iybjr?GlisHxZ$9))fdChDI8N2|=Ki$j!qnTsPrP<{-ipxWI)Egihhe>E zwv5|d-(Dbc9t7CT*vd*Y$TOeFxCh-DxfC8Dp)BV1@4C7i0PY3^1W0Y9xbdR&;=Q1? zFS`Q}NdZ&e$e4_TXppSLmtP_L`s^jZw)x+~xwJv%0DS`2}MDp(3r}>m3_lL4P@-q#8fg=JQ$#uWCwn*il&lwG5!4w!jwfzIcu^EvQ^=$&*7qD zV@jP4mBu5c7FM4e6Pe=W68j~!$U>6O0!$SX5dib~fdc+uo~Z6gsX1GE=DHuA}` z45VACj|f)Dk~JC-J0oN4tW=vWwdOD(cyTv=04JVHl(2sW{D^2Q9O z+PwaD`1(7wj}&$bL^Fs1=p^l|8@bgP(g^YKUxgQNNWfCGuvl6|;#9ga$eKML>^SCh zAEQuO@Ju1*5Jbrev^9`zdxUC2WROBNnGuY^F4flCe|6{l8DJj`N$UYM!~%8)-0o~p zvoF%ZHj~dO|4nx<{&M!!`a^ztYIw>6UC}>GCE;TjS%cyPtDzpp-3=Ka@`RRA-y!IPLNc|AqZ?8Ir3*U!UR)sYMlUUsH=G*iU zDJDxrr>bF3_gvbH>vmD0@X&i~ofW3knxD>w>@+)lig#61o43UW$$^HQ;Yo6(_Z0U> z4KDp|Bv~14^Lva2m2OHTn@9)(K0^EVTc@p5C|lRZ+9N&+5n{rhb37RGS{I|H2dx~I-}}|B?>z) z=2C(<9)D~xp%W5ct%HZ*H-@rAe+ao>wXQ3_o#bmJy~q6-N4|~KA9~c%HWRJPa}2$^ zWJhwM`#F;>2K*09e*NxV+10$$?i90?p{(KAew3Y(+Y1R58NOck`Eh5A)kNM6TUENa z0sVL9siQ6zvl0{+yOIKb(nnpwmvQtyhYUh3A%fUO z+JuTInW#(t36ias=BiLPf%nSZ?*8?!!Vxj5YuW#a9nHRoN7(l{Dy8sF#SbDlg z=G>%OA%URD@Oeb0*Vcl6Y1iytxe$bpSh_HxEQib?-V=p)s^yO09*qo%N+!QWrOJW+ z{sB{bWHirrTjLKCX!c)A_)`@J?jhRG5i!+UNPoxuW&@>NSUXD&O!f6?q1Ueg1J37( zm>91Tf=3!R-{45Oun4x7uo^9hnb_HZH2@$`_tDmbPtZByHiYCsa8W&`FQAXulXmkC z5L79cQFa698!vmUUW(QsFmAleosCURHP_hbO-LaNrvr*Ozp7<`mUi4|2&1)_SZ=GUwYaL8W|dDzqo4J50_e2ob0)tEd=9r(_OYU z<@w)Y#1D3dVn;h#sb`FGlf#;cMa!m#6|P4A zt;<&KGmhgR$Zfe45_{!5cWcr9B`AmDHK(v28A>3b`K;vUQF6kladLaV&6Ib-n`%0o zT0!6?)>)o?(iRQv&s^8d{Um zP3qAi6iOeYNny4%-1IH42j+?#l^pu$k;(jG!)g6H9;W}BO3Byoi-lm;mzT{gul&~U zn_?wRVr&`ckz&>+Gw+bNXI$RlN3>g1ey*A{2S%PI6hnUAV301%wmu!&{XQu(C789D zqMv_>*g?P78Hx-U`dhRY1lVRlaT^Arq25{==B5EB7w5Iit4HUFhkKh_hK1+nw#=m< zvJ=Ag>C6fibA*Crqc7>oa+?2#sjC2LD_pt(TA)~QD_Wf5?i6=-cb6i?3GQ0l3lw+P z;#%C@-QE4ayf<&=&jiBc=H4*Le*5h?dv-VQhwKtw?!hK^P2^$PVGL#8-meh7=yPIQ&uqGxeAKgKMesvpuTrZ2yV@E4X1LaNDN ze7&m5JyLtK1rT<)cBUHO$h_Zf$JVj_dgq_~b=Qr^9J(IcdAw2&b#Y{l&+#_8KH)UE z78DoQY|5I9VoF(sw>&&f#@1@Iz`WvOHGHS^CpE@ymgw(X1<7Der0mN?c8$#KxZ`@5 zMDLU=o8mVK>eNZqOHqN-Fb;;O^M8MvRmlH&qkUQPtcXuCb=xHUk`j7VU<`OQuEF@t zRjr7&te96KEGI+axphOn3R91^X5&Dnv5btKqPgkO?RSIW~1L*uJw zUOCvg0Q5nMhTQJgOT!chk*lN64N6ywY-h3|B)_?>c#=I&$G_dr@xRuZ-q{8LLBuF0 zsYKV=^Lge)$w?*?PvZ2}%Q)eih^`40G#YTkX~|_hlF(~z+PUp|k;tp=Wy;mNY$g5* z(nuO@XxouT&)r7;8$WYD>8M=W4*4W{O&L(H+xf+eqV8zJL3sWQuI^7E(ca!4pAXVe z!SZv-%h{Gyl8b7Ty}vY@)GngMVxMe!j;fpP{Y@p;^(GR;;LB(aU+ zBFVqe*LPUImYWodTY9jJC)7`$n6Uz$|Wl~v2O7lGXy(+H2^1W%X_>S^6O{rW-iCzSD@KW(BJM)YW*zajAbMIRo-|&WqhSd+lpPQj@&T|ZETfh zX-MCnO3mpj4i=UGs0zzb7WWHye*yE=cD1Oir(MyG4n%TBejJi2sn~yHV%fQ220bi> z%%k*ye%*98nLWTi9LL3IR-nTF3={@U6db>2)vu|ZKp?9*=XH95$KvvIo228Pi);bD zeR@UZ(p9+XL8Zy%89^q4VXi8OyGmyx_8lmik%>W!J^c2NP#aX9+xcrFhtyYTzIt2U zuhD;J2s;BRM^L(yo?da++RogbuhrIiv+t15Nj)7G06P4u&xmj6K-ZB_&SRgnR^q{s z1JRqa63N?W<8vtngjvSYZ^!iHA&}6ky!M@3(ka7q^ID6<`lOClvgnpxEmJga zbjaAQ`g$%k%5c&>m-Q?=wmu*ohTLmc1IrQ)1ppyGg6^E-*gNw|}mxVh>$ zqYRO4F7o6DNa9;(B9Zc4R7Q^$sV?2>=9z}3+351+`;@jFNRsdO0JY9J;70l$x&c}7 z(2s3m^$8~FpUBL8=RJL_jkX>RgXi z!a!__%*&yM|d% zR+v_vGeI}a9jz!T@3#9irJ^=xQBE#;P>e?WL$Y;6`=Ezq?fLfp)^G);e4s>jisZ2V zhOn{x>k~rUL6C2{g~i_ii|f5^SbLj2t{n|XiG-99ZI%f3q} zXCe=rFLsVY(g@(GPFbCbKbn5UWc=kSkfJbj=QUF$DppQZPb&R@o_2AGv z2>Z^Ky%Tf4NF_W7u*Pyg@$V`DAo`MqHGO^lrYGT)WFT)7&oRuaHW+$ICrKLTzWk{w zVgXE<3M9q&wZts*kGOBXm5Xx(4O}48U`m7&^SP^*?e%!RfVBr(dVq!ms-D^xf=9pe zF~13-sjB=_2pI3#sP5cJ4k9xs`Zg$nmovcz%9=gtQQjO<{X3L8$Hugyb=(%*tsrcK zYKW#HvbQ2{1|`_>e2o6wID51K)_;mSaG_+LGOsV2RC*2bG>GCIdt=f&)K_s@BlJdhNT6jEvSdKcMuF2?^XbDP1btjW?poa*0BC*w?Q+X2+tEj>nTTt_F zO1hR)VRLP!y6BX2R3GCzDDYxR4=8fsZeaSZ$8!yQMZEMkx%VqEYLo$AEl~@jdjqq( zS;=(LQ3sP{+1ag8v-cUMngm}usx6uqx zQ-q~-&N=85q$C6T>)HZ4B`d&Yf{5mb?5n`I2|w%in>L~DPX=-*Z|V|pf2(W#o-{Qf zS>i3GPW0pvbcrmR>Y@N%V;Jyv33{sl{gvO6%DG@-}yx16b; z@&yF{wS$DS>d$#xL_6{(kLOjfq2`ghxqLOtW9~PSAHLF)j}aE9Oik&MZF)Y~6myIw ze~>q#IS7C;6cVux`C!QL(w!j<+wYrPROgT5Kj7Q%6u?ak=){SP&2y-FP*_~a$YcEi z1Efqp^&rE;T;E-~rAdL+_U7HoDeL{r1Vru6S*t{Sk{1C!E`|e})55FV*IAS9xBW)~ zYn>_Ivv0xYhuO?6O(YM`iHiHn0OYW`Lw)u{?h)URa=L#OGys2#&)FDR%TPf@tt1-(5W={ zX@EZxHvmO}nD0|C5<$)#W#CoY zKv-$WKj?*@=bQ@%?3x$cbEP}aeKPyp%sy`~kM^MTnMliE<-=A8P>6pWXL>Tu=Z)*X zByc{f(sxyj^inZuMbOZ2MINfU3elm-ABO3+jW}S_jWqw;Np0Ntx-=jql+(nNC-Z4&_Gixbmqef{{!;n~|yUXKk|c1>1NigdDH7#MLnKPa=~cwnsC zmUPZ%ab1?XBo444$_0(jqY5~g3lMz(rqMi1$%HIjV)c{CtPlqTABRXF!o#EobLdw) z!HN}o2i@TGFn#?wiJ#djnC7xxlo2PY1(%7um6H9Zk|l5Ib?*x8*1`#6%OHVZbHIT7=WRNr2`naviSabZRe)} z(iAU^0JTZEy<;o}>_aW&j6l4PD`Iww%2m=YAFWrPGtUR7=~PH_&_1V^^Fj_OE2&=i zY~%U^saya7b`sAdufl*D8PfTX6Mw8EXs)T}+rScJ_8qv0#RI+7sAj*Vdw#_fwfsT? z?cGCG>^+NDLa36;eN-2I-}4)X52&L_wqb|JIyi(~RuhZGlUmlmlTvNx_hbIi&&X~n zu_$&iIu0Pcu~zP=XkcM^A9BNiaMpgHo?&m|3qBC)DZ;G0u95sOqRd5V*?x-PV>B;m7x25%&SbZSwWc`l6ue(WAN}v=S@GZf z0BD^yX5MBVsAFn!qSYzreRP?Ma;aSmp zMdhf@+4!fv;^gODgHJ7KY1w$-HPNM_+??U#9v&ch^lwggsSEBv46xKH2fczOZV z9Y8I<{W58J)YIOYm$kL18h@!Ng)a^hu~Z5Wtdt#HO@5uc&9{q*Z{8k12-ZZwdvEQc zbNjW%17cq(oRPSR*{zT9hIT+U=2E_hVjOTo^?!H1;A%FDc`w=gMSS7aY_9!ltkpK~ zS#zEieQ}%(88cCl@{^2(;BoDUf#5MIx$N=%q`^v#m6vyf8O=a-nUS%??bCzn{zY|e z%ER!mnW^!}Uf!J6;Z`56<2RpNKBUH`*`Be2P-)`LJr_e<$@05yho(_hRyqNttyrpp zF=ICey*)Uv^qvs$sTt;zBOHh>9Xn`sxPH(nBk8D3G5^l5N7>|p98d?todk3@NX-Xwj z&#Sbxo}6gD#jto^jElME&0f}(q-4{$kM!3+J0`YFe6~N^ibdZ|Oz(yM?QJ7&a`wpP zzb0&SIn6z5?_%cA`-hPn;M+-@j{SnMW}Lo1ALIB1ZG>CpZ%S#>@=@A}=jJs9m#o3t z>kDT^MToi|)k=N1$?5i@+F1ksfE%yHYN!Nn(Bw$k!R4jK-p?b&(|<1uM0?e#GKsU( zPPBa^4e||aSGB2JrHJU`QEo+P|P!nPIdn3 zH!Mv6tv`S#cwVljTrYaDF7|VxyKEbBDk{!ElSxL+m>s^_h?kj<+Y|*XL(?-e*}#-e zmf>1KhGF#QXDLSnslD)wnK1Tx0+|fDo#p%8ON=WQb#+?Vh&H0tMsb(dyy3LD>TS|A ztLPEi<(PY2KBs~eEZ<_dk9dSZpM}NZ3++pg@LD;Z_n%GbLziIt#=U1FhuG=Azu`2n z$dKEdi>g==&%Vf=A=c}*X?$)<%uuf`*~^7W`k@OltH9!=z(=#S;=(_Mp^lL3q3hKz z-0g&f{d|ZL28ldHBDg?>7Aa_T^PTfgKo_1+?p$;s)s^pqu%iza*oW(daRL0g+(?=d zD$R7(^2E04cGrNWdq=@E5K(^FfXy z$Y%=XE(KV1G<3R$I!mPg$QHRb53ZN@#*_K3h8D zz1kPDn%L=gjg82>$&c*Csx$p)LTh1+C~vrj!iwT%Co4ZHyd3#L<7!aLYi~zse{N7M z;3@SBg-=QhrurD8Pc<@)-|lg1z^%%y z_Zh!F&@#OYKgcGgSw&qEHi7S>Y7oNx`7~Mj>As9L#oU|7q?ej_y6u)u!c!SMMj2c? zq-WGFlWGa%UMYy%1=ij9xIZbb%xLlT=m6v+=1;N#73wb-MQ|4N@!PJ{(8%tSF*TF- zoy=l;XUw_p6pTmQYk{?H%=DcSxZxX>V!KDupv#r?tk$RpYMvm$9qGLyw`@4?Zz8PD z7zR2#LcT0!E2Id%q#gCN!{zD^I2`URFux|%iuTMm&1&v-B?-N2+yYI4=kMH^J@o%v ziS~J@lLczeH7WAt@3drUQ2%qwNV;lMEMJNpVNAx={Uzf~{_0IOcT-#_nj($LUo9eC zlww_}mu^}uAoBhG4?Ul#H%iK#J4W-!f#u$!RYgJ~e}aOrC%+n0pY)Q8Lv6xL}7 z3_a6=gH0LkXU`T)?x=@Kqe#XR7DD_hgEf2aM5)B!yH$_RVo}n(*l!6Ho*$$6UtMKw zq*=}q)O4xJgt+qE+mYY>gxYrIGL_oEa zj*bq47R~?E3+y9Fi0Eb`@;XFd^UQwK z$-i90NZC(Dd6>8-$p^$!Y%Cu&T{!Q;)fYv1H5~@jsg|D+V2pC60`m?OVM<71unns? z)H5XA`4}i^GTG0^izmN`R1>3rTsO;}fs7!OpR*6)Tu2{=z&wNONNvk-S$(0MU1Nsn z*e1uRnvQin86)K+#|;#`1g1!=|1+y<*;&Y3SC;Y6yO8ur$2Wb z%S1^OK-eOKvg{5w2ymW6e%9wR)1iM7mk}AOUXa_xn|w0+b$&S$+^TI;i%G$M&4%KQgYdmo%vTYV72Q;Lv;AL1x1VwusqrK zv(C+c#Bu)xSXpG%6^n-FYwDEba6={$gJ!77tnI&a@k&<0K{e{5m%C%>3czRw4G+C; zU$uwm$0{^XKTDo7LN%i7#P`?blY?YzK&cZZ<{&#LcZT0^l+TjNkJlhiw=$ztuceqH zHq%DWrbLhLrzWUP0(Ye3K~YL>pCasFAW4>`8{3%=+?a(<4MsFg4c{=Hxb%j>sa8vY z^Jcv)ga6KAaat#MAMYSY`<*3t9`|#&MV+ks0+{42hGEd?zA3%$$Ci65E^9X6yA>BL zw4@Xcd2ZiOW0(_ejYZ2|^`<=hB>$q|)1;t0472 zi~`CfHO*UPsEEyL_#|520qfDijGmWF+CUBh)4~6@tjOwL`qu~tExi1aA38oN@DTpJ$vtTg;>h>Xe11 zrsnwMq#q!eI`-JXC~Ao_FGZ1ItvFqB0d>9Al|3XI3lls{CY?XNz0x-~H|M9b8Q_a_ zOB1)np}HaO1_-bQex*w|1^I}R2I+stCXMWOE1WU%FWNl%N;0|)F+GjD9apz;7l0Dp zKjAnDv9|BPWMlMtSPT`Y?gE0@UZtN9$E$M16Scam_|VI>OI-)K@k@XFqB%!`jHky* zqGw|4``G2UP$)73pA7MrkKqt5=yi@CY7o#O4Sz24eslDJ@p6R%GaSSX&9+{hE>+H2 z8I;V)n#Ufz?&AUbq>UYlY;%-ZEMA-?P*bb-?C^PZjq`K8Th5a^7pfi;ZFl_8<;K8avO$|lhF%WxR`|4r^uHSG))W;6ii>m2YyS{e?2@5DPbmA zOk}vBQlAk^;v>95=Mt*wBVdcBqeovaKuhd7O}!`cRhq-|Q@VO)(6 zg1wI|oSZ52gyM#=nMf0rXDXFa9rC-H<-sRG?PVPj+K@aL@+|w~wZMSopRK?7pN-_c zeSM$-FZ0=y6|4HO2UYf%S?*Lse=;f9gbskY-nuih0nN-kO&CwtaW&__T&~Ox6c$g^ zcYO{>$1vKH6|7DHR#0C>Kt4INt^DT^Ppn!-%$5Q}>y<69${RWcXr%LR+1ltZTyS-L z?}JSlf8V|R(sSStKyK>%ey>9K{!|9f+-K1JuBE?zVoFZRPlw$HKxBRfAFUzzC&ij+ zTO1+|jT0JTs*?f1mG3J090~?W`~dp>Vgkr{A)}=NDqxYv#Yd8@l z&(*kV-LVVe4`N+74UC?vBr_fjGimGl7lyCJ#km#~mN~zU=D`=_4zuiv7%xx_?gKoY|)-%UYku%}|?OE#gJ_exMS~oiCiXLTF4dng% ziBHhSo7PT*BLnOn*#U4sZKu%W&!XMrKzPjTyu3WpSS?AF)=s`_u~iXd>VW5zG(~d3 z63CyWge?LLu*U9mky=qRBmYbuwS zJE+{gq_!IkqbiVrvAO}#1Pk%IbO8w}TDDb{Pe+2RsAy7`RN;9gcAMj4I@kmVKphHj z()iC-0z*OBxgSvG&AR*sf=FngU6E1ub_dM?TB2;L^IGS6r6H$ zpT~?O+u#}%8NZR$pLFAY5y?((@?daVQFoM{$I5x4QP}v+{hA#4lwE}A6Dpj2{>}ao zOwYA;Co_Kvd{}lndb+ej4{N|~1gsyqRj`OOzc@S5NB3MJ*1M4HPIjm@ju{-Zl2gMxeqaW$6E<}(m&tOl>QLSFxmlnJ0$MyX$e<#Lg z_&tEVVM*1txxf`EISs5qJ@_>PgselOwvQtHfL%SNVhc7Fp8 zLHrB~`;KRdEocm0;-k(9l;W4GM2)I^C$BymbcdB4P3LjK&MGJ@5J&|P131He0}AFR zw1J(2g8aShB+4Dd%NlW8W+T$3<5|{cE`QBLQiQS?|KCc)wjo_7rky12f{O_jN{k@=c zEU1T*XPQO#d&f7@mmfn65z5X~Iu64@h+hg!T20{~Y~>k-?4ToDuf)x8RUB0ixP)t% zGRXe0+Km%ar;Pc@8yIsq)%FcgfE3vFbC?lu1-)%;Rk)zh(`z8=Y_ zUx+J>Y4QDQgy8+^u$pU!PVuN)n#dK(vSWXJ=uTFMFbaELZthpnJ#dcaapZm-2=yl zn8z;IU2T@0aijEhPaJh`sErL;##{X0_8ap)_42e_N;Ukk8nHdz#@x7-*#2()L(SS% zYx{WQrp%#xN!sMK9u2kv)9YDJ>mP|On5D~KC660?W3EhCUzLX^r2vmvlN4Z_EJJU` zF;>J6nmYFuC{7`(Fv(*iBPH*y^{QYk0s4}dT5~B4_qW{;TF5XeRhb^?QM_cBJN%k$ z#nAvS0BfkfIN$Vmz6y%206t+>a^Xfw&+|iqs+8&#K8GDh?{Sjk{(#<_CWQ`8rWnVP ztE%D^UYS-a;aXED4mGoRi&>(=Vmj3tGY!S6{*`ss`o-!x^O;%qlq1MD&O0$`Njj35 z+xb|W`V$oFZsnW{e5i!+Z(>+KB2#K7c;+uW=rTk_eX&K-OlWn)xF)D5FlNj)@6LR# z8V!*x@>>b{%I#18siF!hbOdZR@3@GsxKIcRl%CW*vFLoUwR>Zi%<}uepY1fr zG3C|ULgCKI0Ld7Rw}9)0d;UXaemAZGyg0do&V?w&Y}8opo=L`sc&3^j{d1@sujq8x z2aSM^Ke6F{4bWLvP$cqx@KI%J!qnJnUCCzhB(@=6N0TX7+DzPACHNhyC4l+?C7ymr zDw#c-SVlX+%>-&_a@>zOH&UkQq3hpx^gSi*c&XOza+hch?!4#AJ}l4pNr>!y_-y5D zij#pR%@Wo~Odh`i>9CrK(C=r~Kdk6^gPbgmesMSvpJX`}Z<3CkfyQHnJQ^8)5|R=j z&jk^l;?K>JN|(Rg;Y!`H{cE@fc(BJ)FM)}mXo}uu8vyxLRTniSLeCE&h-Jz#Y5!ww zY_xuGFj#2i<03HboA|bzndpejU$yqzYnPL02)PE=ER!&^=?&ukr7JlWuesg?|Ml)f z58Y$Rlr-byW%363S3$cl_;F$H{9$Z08t{$rks3h}On`Y#4aX*OhP2v)=v)Y?X>TKT zQ3`l(f^diUh>fxj6oefk%q^4uZlv1Qjp|Qm(IntTl9$C0;eDbYs|+ztgJVVs?E_WC z$C`WI&o{h6l~g=&fI3bbqSMrhwO-u`{2PO?GJmUtw!S{=|vfKFnPZ``P7VF z71E7bY24z>1F!2tT~ZC(Xs!o+hFgA76XthYD)Ik@HBB9Xe_(?RCmkbIL+vONSladJK% zYVf=aJ65L||DzE??)n@w#}=*gd55clV7VTjAAH(Az(dKLVe_JHu19P&kf%I2LetH{ zI;VI*=0_BQBTPPk8cJq?ipIZd+nE2?cB^g$lvSfjUpqab^{<*H9*)fL0-H+@{HY^3 zn{)y_PA)Y2XMVDehHHE&qiKKraDKk_ zLeh5KOOG*3N)iktfi}Ah*pEx*@>kR}GtRHH+Sf8C_+&gsR88U{m{@*XT5VQQw6Qtd z3Z-*j2IpEh($26bP%%yLki6!VMM5*6%n}4hb*!1L)%J;X7o1O=tK&p_N}FxSBVdS<8Fn(nb0G>UY^(H1^gm|rDTmD1 z!B#R>CRUwsr)!0tXA!KvUL2LmGo5>Mk6XsWM%WEJ<&GuY+>qlZz2wPP(^Or{(&Z+m z;5vvhdI~h!=xTLlRZE2Xz77w`%H$_NZ+P4m8EtvP)@|dCGzO%54pTS7QOLg0A?PNg zC=^-p`4>M#=pPRd$A~OuQiCuEh(-E|;?={npsM5T4?V4pYYb#_K58?BEe84M$J!sF zY+o{91^&?=Vcb{e4;nLP;GukWEi3_pqCF3W-0+Qxj-SUUjNiP8Fdk7NpMTch0?=0|&$((Z`>>edN?pjQA zdZ4EXEO6!zz2kTFf0Pl0ThJ@=e66`N(%*irRbl&wvD<00#}v;-9x3Ck^a z;-&cLz`MYY1ekm*V;@IFr^?^_JVnnR7cvbLG9I^edXS*>48o3?8z5;DuJ?>e{f$<= z=J7HeO-7j4`59Z+>j6VqRdd~;$t-@b$~#}E{W?!f($G6bw)`Qv9CeI&f+tR9ARqAP z5#KV&U3ksjt&(Uk?zWzUW6|rwRpNAq{I_XJ1xjqn_%4tsPag>Z7IcbJDW-OSzu*9A zD<2B3>Zc5Wj3myi(MsHsB%P0-`*)Bvw({np-l&h_Q>7^2kP65l*4o~%`7XS@l#a^> z;DNGkyBntn=Khc;iDlc#;pu|r0KOxwuF;zaTuyZ)ea`s|LjS~)#QgUCL&3ScDElDh z?+jV@tp?cAskQxJQq(wUvk5!An19I^(s`;K`h#uDG*+R$p~42`s1YPB#6j;H>OcE$ zozw{HehTJ?I{IG~w4c9Iwfye8XNyq~eJ(dBW9(K<+u>b21cvLFe4`EdVtD>j&6NG^ zgK}{|4_04APjGOcV@p2U2XG`rHmor-elMbe#X~4ftM0s<1mLIs)VXJ=Kt!Fw2924p zi5qC43ppW16Dhmln1DbuFyR{W1dIn{`&GNvh7-6P=NJS(Te(y<<@x2tAEW}Ex7nmK z`0#qq^ePj4*)lI_cJxFc1yQ@%U>>@ zz^>aH!Q(4)0$_5q&8&0QvN?=t(m3-(x6P-u-XbMJ`R0g-kUNSis?3|eP-pV(|03pr z0=+sc;|H;&sP!0nK4IX*(7w)t&7u`KOpls^0Jpolv#UIPRjQA?;76AC_l~M3q;hUY zChG!XRU?}#E*hQY+WmftA{^TScuXs@gTmKa_8*(W3*{2+*ZGOcOrutIDZ8wVz0=r7 zu^4kY-Y++3SON(JaZix43W4u0&X8c`$df~+-B!;v-=+gVY z(YN~<^}j_J^#|(J%bNT~sUX`NIj$Qy8eguKoix<@Y!>b=Dk^Wl78e^Eo7jR{12sW; zHGN9){{6|91g*yM6c!r+H5_$0SNCq_{sQ~7G>?t)lRk}-WdZ!i;;!XBid3Y+#+FEx zG`LbGA;Oz>843pXEih38KdM}mG%9bWqPu41d>zFCKPX5>4Il<@VB-ZD0TJ7IAGY-? zs~vWfzyvQ$3)cbzajMjAP=!Au7gq3RLcl1Ilv!c@pK(>GGGMCI@c_>1g5z_qxqF;q zk+?hfD>@u>scJ&q#&A6ss0bmw-&yJ)7~uHvUJ(3bKMKkQ)*?B< zkBsAdVAeV04a--#shmkQD5*1U$#iQaRJYT0jWy)M<;#yl;Bg>r>jBGPha&lgLwC-S zC+TfMU*l9TgZ7DYb*Y~HB%s@EVo~O^~n7nr3p|Ye=j8Jz}W~!BG zZEiYI6`F)tb;Y8Gp*2^EmFmUJd+!RU4@$$SGf7a$ibk-0$vQyq^S4hRiQSZeKZZ&b z%$xK@lr{jx0H73#O)!R5s|4nM!e&j%WkxZlVPxQ<_zw-p18GN-Xj|LOi7oE& zTf^#lebghnq4Hd83$|xd;tXb4@K2DrI+_eqQ6USQU8nitbbc1UAE(sUkm$rg10IcJ zBz2@x0gg91udENq6TcA`XNDu z+D8D3s+)M!`~5A;IF{;Xs`S?r8!-S)tjIw{a{l5X(%u)2oo3>jHd~0BH{*A|ZL&C^ zXW|`*PT#Fn=6hRs8u*?}68ge~zvCfXIOb5G4pyaOID35s^S$*-%Tgh<6&$|0tP1X# z`$@|CZeZ4Xw?Ovm#w9bMbsDK;U zAhJ@-y-+T&USo+(nQ{<*Stm;LT9ylUj0nta`_?g1BPMf?73$kW$a3j>ovtg=XuNQ+ zz@c^7pT%1$FKmS04iu-?5-E*hS7;r$F6~d=8 zH;}^59{O7Tf*@oEfjp_94}FOcsL7gN@M_s;e?qfHC=e9KR9)wi?4?V*6&xX0;w`#B z3wVFHDGBsQFEUM;j+Hh{DG(=xuAzkn64lw_HaqL5$AZN0|1jz)zk`jvJ*xyM_m2L|*~9Fnud123F&C>n1b@rp_AEm}8$`v@aPzyDc7GRIq>LG3C}}V| zJ?sCu2Gh)iw|aO7wzaj9#z~V)Fg=hDj%R^wIo!ef)@Q*rW6=efZb(Ck^z>m1eyF}o z6jfuA7T=Rm8LNfx)+m2!e!7uzmR4(*hQ85o&b`&BiUSx}Go3%uhHiPnBp*QO`y6CA z#N|y7d;vF(j4m%TaRlbyq-nTXv_+>}>3;`vt@r*B376O4Y_mOG`q9p7;4y={5q>1k zkvP!|92Y|@=>m@T$+(;@b0Rn>B=53Hb9m=34Y@6^KhYbWEY?{R$Ti3`)k1-iR{2Bf ztN;w)a!^k-=iGudMslwJ6OTgZb$56Lij4~rCYf0uuVld%&&OdJLYFL%j0UI?N>*~o zw1wuI)!4@J#J`vx=V|f4ZJ0@zytV;9=CqZi3{@H@4hSWPu;Ko=oX1`-Tb2hz%?K9E z?C|Q_{^Udatp$i&F}jAo!t}3s3qC&eJaOl>qaiZJqbp&z_MD1|Gs6bzed06i2oXwA zlEB#!#|}E5Kf}&3Wt~PL`x(XY#}pCda|4l%A|Dw5j0MJa{*YZ?C~q?*aTRD)yIvdbVDZ%T<(f8Zu(2MA!_%M)xA~Bd{7JbEt(z@(hH@sIaJE z>km1f5zsW{_PxU^goF>VItqS|`f6Jau24jOQpY}KO)Q{fnS0s50Qb(lqBN}_Oz;(9OE zZ#gYpDn_bYg9A%#$1AY8dNVX#68zq1hQIT`phQwy8II9cs3GB93>3~tCNvy}OUBA& zyKcm-{Di4r%rk8Gyzb~ItrBcG(uUl7a)jMyx?lp}Q4DZUmX^hNTYJL&R0vT7LVqlF ze|ww>Q7OThVlfR!m$$!+q;WXbTMb@g1DICP4Ddd?iB2NztBGlt9^?Np6=^2n`dnPo zNgU&R!Ey*k#5)en|LB_YbVa^? z&%nhc?0Cf9z$Pfe?!XCrtHAKu;8X2Dm$Qn8=o^$B)>9!%F@dy2s!MQcth=EDb18C0-<{KDvx=LZl#9z^^s zVPq;zuN+1vB5fPipo+g6xZ`rXfFcu=6}jYW)<$e4CQmz{P`VDu{zDBH=sitpB=6rp zf6;|7ou4s==Fo}eAT`EJOT`*P9gna(5^1c`H!zJ1t(B(j7x87Bgr_h#>IOb9Suuji zKl^w3?T_XcOm<;|Ncbn4s7KBHh17IFVuR&wcYjViKpGdewDZq(Wm`NxTi|Jc>ZVf! z7mq-$=uU$=J|yP1u%jm9V6#$tE=8SQSjKZqVFBO0&m#?DDA;-J_RU(`%bVfYZ>;Y?y6(&U*2U*=uN7K$+S_&Z_suKCBt%=BWmw&6 zSiQR0>o7jF7~Y4EXvwE((&KaT{cNmsP|82#I7`2(rIX%MNyGT7FaTx>j)pxCO{w#a z7lU+?J~bB-Xb;Yt6)WU3Q70RS8X73mF?DlOy!;>%sgaghf%ZJE=jC{PMJt^B-QhF` z$L}n~IvDV5t-E7i`wqzg2kk0^Fs%R4a4)MV9qlaNNgDfqxv%Nmk-A$-zzro zKxeShEji^MWq_>fMJiLQVbx^^nyt^=5P6VPWhoh5(4B=W6K;l< zutFPZUu{D=J#?X_Q0dJuP+n2OeULaN0M&Q$PNQlVbfDlSpYQoR`$rS((f71l;n`(Q+3_e>3&BG93tkJUUDt3N@R(Cn>E$r z(r1JF<4@_!S0o^Du2EE_FpzkDN}kkJxEr|-(Cq9@5Qws2|41uPVm#0Xyl3@7`g1rD zK{2C9FAZlrVZ8ir3)?{{=y4HvP`klir+#G{x-^>KqBY3B^gN8>uaJz$nZyoiiR46h zFf_y?qm=pjBPlSXLrNw=OXi)6lTJ{^iPK<;0{7`s(c#jR%1D6C_}*Iz3Bp!}x?k4w zCiq^huv?vg`5}97h?1lfKQ8>plYPSvs_W6$+)S8deNVvhS&*Lw=d*#xQ88|hI!q*nxR=&Gg5--Z zKrWd4wmCN|2VB+k&D1fcIGjIza>o=P(86P|xAElnp65IJje7*kLT3?)uDz_#YnyQOn3)h8z3hV34g zEgGaook1Pdh99Hwxf7?OhIafEcbzwLUSgVgcZWXI45jZzsyE$SHCp}n@_JE}3GuC> ziyH=Mv*F1*xHH=TfQbk$YfT^L>U1OTyzaC-UmfqZ7E5NgfK42RD4zf8h%W7{q~iN+ zQlrFB5DIXD7DXi-u)>n5vTvE*59IGyb=iIi{B8(%?nfMWP`0Fh);R%j5ulsEwxFBa z@{Y*z?L&P!?|JcTUvbm64GREL}Ve zUv`^TutO0xkJcWk+g{5mAVFR$6aJ%jU_d7z(EsUxSeqgBuLBMA<3}afEj7Q5xSF02_5%CPyZpZ`e&1*tbTxN)=;7_{L5TJ|9TQWP8Ioa=NdQd|>N7^g+T|Hc3x z4pB!)cEepV`ITS~Wj6r)mCw%?*6$ToJpq$s6!|NP!P`eD6o5$V*)kF(yx;^4kU|-I zgIy1>JOCWxIMi&P>HmjQlx4{HkpWw@{}Wu69RCyEdzK8(>xKsDggb6cLS6J7VFl~) zhRdzm!Mw+xCMJ!pKyIw^3g)k=Q|8I@MtSvNjq+@LX*VE&C}d?{zgg*D-@n;uA7|Pe}qqE-`WPcrCw{YGUs}Re}nx+?Qj}Mn1U%xZ38RBYrxb@XoFF@(%|;s8d+D?OfM_ z<+wut8I8lGNR+0i^-np0#IaIqzoa|D|Q=v6Vk$P*N0tnuJ_| zKk(FoRirG^sRgC~EZOonEb>2j#zuZw8VDqP5)6W~%h>qVi5(1IZOz~Bcc&65^{>b} zqD!?1VsE&NclHovkTEZJh@-{Gf`Tnh=JD^9F*~MUqu2@}Sz@VnvU5|BNjl3eWi2(a zOppme69snFdlGl}JMDT!tgftdw?ytJ+h=#x=(*eD{?<%&Up<%Wtm14))i^}i3aIWq zUUhX397`g-Wi+gg#{V2vIn3T4w+>d-uc zIvnNOZjE1<;p4X!V!makq7skdctZ!;G-Ngw*8+S0{FAASmIqi@mdV_8n z-dNd|Z`ccMnh~Vu>3Lhc=)exMEeDEj4oa$NcIVFJD!_0U0+sn-6nY* zQpoY5JB%4~ybPdNxG?uTJk~E8A^4a!nEntG3JU0{o)o5F)7{=hF11mUd|RrQu9Z0> za4|PMlQRI%ZQEGc(=h=+C)p;8S(Ov8Kq^L+YM=a(KRl0VosNY=3 zb+d2w#z3_v3~NIB6O^dZ^%r9djnB=6=Kze9cjhyMEFM2naJR2Y$=tS!;xOdBtH#sg zdkpiHemDWs4lfw4CIx`&wYf9aMKsM1ezl(0uQ0Ee-0g2?0Ck(q4o9Ym-bSgven|&~ z7FmcKW}dYbzdm9>>1S{LjW*dk1w-JBDC%qtUhIr8n=!?pFgY6F5MvGci~cp`c-Wop zOL45+BBbutjQ?Lzoh(vs2*(kdY#Aq@gUgXGXDf`Ejy zbP6JZAkrWqo&UM$`~2_s$2@TFotbCq+;euUz1F_GGNa}*C;N35C$}pdXS_HJY7Kcl zkAG>k=q*Q(s*4{5EYB0-_Rts#zx_}pORDv1vV+)~AT&iVbd4PQHkxI!6yh#pudEiY zKbje)V3r1q?Yc)9U%~!|FE>#N9Axq=c>(tY4w{e5Q4U&wu69DVmtM*FavYt9t%tFC zr-7ZvZ{CnYuU^e-g+LSrBP2xvGl~~N{6S4R1W(>=B2?r0ouHtYF~8lpF7kbk>V*J{ zHMNtwb5Ymp24#g=49TzS)iTk9u!&=JUpU_~{!w{rx!$(=(^*S{H z_NeQ6g$OhrUrwSC<;``yroD$9yesnXAa8d^7L$@9#K(&VL+!Ws=xCN(Q_YhNC`0l^ zai1a3wo}t5DS5xFoZO0^&?(c9DHy@&T{9J&;wf;wG0sNsQ&hch_vHb1;@qM{dTUqI zK;2hC|G@)1UAHM?lbMG7LIEw)opejEqc=D?IoX~tXh|7mTzD=*gnJ#0&c3X$l8ywY z-GnD!yZ&g8(=S-io~t|N#RXZkIPH?LRl?IL)F;3L0;Dtl42iG7Ll>LNe~e9VBz+Pk z?4t4u?J7#ztuGJ$e7#)qJ)4h;ubhe+*0FF3;MAsW65sHfCrjjRLgzlWqrFAJ(eLS} zQm~q1+A0k$OeJ=7et&D=2wd%K*+_CB4h1)T-lM=t!4HbxJ`?H6U%q@9j=7+fOikmf zXxh0wYr)sPen(1VMe}23M+EnSnAA14@o_C>RKg?o^tQP!JHAErl>F%ThvqvkJT=G{ED z+Y2taCph%<-W)_X|A_XxnDl!!H24gL!9rxrMG~%%`e=?mXe^V8rFQCKX$x+MnLiq=k+3u1*Qs_7P*e{SuvW zU8Xx9in@P)TY3h0M2;t^(-jm}qDU4Qz?AE^VgX#hP*-}Ip=w7=-gO(mt*SU%NZKj# zu1GY}?80nK6PX$lHM?b?F>R)D*jvwDd9dWv`b8*_!VRn?#j$WjUJ!6~&RWXGiin+w z%Lha^Cgm#NlWVI3EUAM)9Wcv(igJ!)NU_ujQ#Db@f57#B!$Nu^My|(gA5*V37*BrQ zC3x2;n&DPp7j^JkO)2v*bYBdRw=%}}Yq7ZCNHGPd$+EN}D~=xy;hgTbx3f6_$)(VJ zueecFWL;1loY9Z%O+`^wpYPKl-Vt#jdlWgp57yTMO%R|L+WP#WA-yprBoB%$98?4J{gZE2iC)I)kWl_ z&aWD=Qgy5obor{1&6qp}E{90UVDYmw|(VbG zMvN+NZYpg5RL$%jIk-!js57di>xFo>Uw4@HqX^6YH$CNAVtKN2igM&F_mj32v6)x1 zV|R|$bb`M%#)utIfhQ$rM#)D7;$!;+eiI9c{y10BNXx7{cZ4NZzK>JMP2W2Yn?N19 zV^KWT`MFk7(bXD=#XQ4(>`>v|5v6t*QU_!y-J1#`(`f#8E1HA6f7fFX5D>&W##3)H z9*i`kZS{M%JUN;Z{+8*7i=jXm#qW*Qv)Bf4N9@xkV{Mtx_C%4AkL^rP}0em!1v@ZzMYou=7I;^$2{_sHhJI=TVbr z$B}$AI@m^(%+s|jNc^)|o;ACrpF>z5`R?^Z%7%QB3-okSEk4EumAqK-ojkQJ>Jb*r zLd%v~YYFl5&U%>tn`-oI{PUvJRLRjl+gWeA{??(lZ?~Q)@%+w~#H-ul7hwUuk0{z% zFtRq3V?qNX@HW|<0rq9G$w6h9C(f?&PVgr3`);6e`0Lv6B1HuGVTF;~G zn`738Gnbzt1q8|C;~pW8Gj)vRyr+q&pGw3b+jx0|gW~TL@CXZVP+2T-ABox5?olld zeq8Ii|GNPfChB84Zp6ETwW8vN@F@F%_XB0*etELUDAQ5gGWAwqz~YzaK-i@hU(vuc z&4qX9dPX!{ejsm4b$swsX0%C|dSFRK^DXYiZFFScWSj7ZM-xwpMGm|A>J}U9M}~*r zyr*4sWOhlT@!sI&Xxyn71v6#ZO>RND=uZ8Ign=(9qLTU#}kF?9$w&37GW&4Q+nWw zG_o;i!&*-B> z%5C0fXz!ym+(2tXqnkL4CDJS zOnOikpCj$p!|%qBvX9GFFb{h*BGM|8Ho=k0^Zb=i$L_seSdUc-Vn8ffic(b7_uAvK zZomh&te=JA(!KqCXuk1swrp@Es>|n5V}%shJ6CDdfCK9Vx(f^a===iN+_A)I$8Lz+ z;3Lud^cG8ZUfj5E%F{5$aqAA*LM78}@8Vr0DBG8G{r1|{sC{eGuYULN_&03C#ASP~ z)plk_FsY&)7!H^HFFMODmH4ZxtF6WBPF!Di3Eb9($HoFd6Q%&i5YtC@yu^js#4}#-A|;xHLYERL z0Qpb*TOJh*9;+*@@8xxL-VVuKF>ep0Q)9wd$XqJ*6WmMX8F;T@m|IcR=nGSj8dKhM zVM=RVqllh41=X33Q7Tg=FELu(jLHj$ctAxMtiiL?Vg4Wht@RTr0pA>hx-3Ig-el({ z8G$523efA2Vn#|UMc;ufKW_6j3fvA=5)OIAXg+AMbhkw)(L%fdXxp4^Qa=&S@52cL z7Tq#%JaP*&?o#Ree9cqmOV}o^{iqMKuN9#0_QbUkxc)n=*;E37v?^VC?_BB0FrZ}V z=7%S#sj#o#U{skTjl7tSl7v8|75-af?n{rYV5%1-NOKH*IM^~cJnUh(EqE?kIOo+z z>6PhqXyM}UpIuaBU~5O-RqE3zITi8}07wS+80YK06vI z-kmd8Kr$QG0)cW&5mglHarQk{2LGYeR?AY%GCSY4kfHh5i{_WdcA( z)5YmQmHp=c8*V%tloIIAFy7uIJ}p$+{9faNQC`18@nHANzV46xkKn2u*G9KFI^U0% zFN8;2aBFfGQ+_wQ;ep(Z`*L@=?x1-8=v0BG3j~qZU>;3(tECkTx&8x{(F|cjP?;W! z)URGZ2x=D*4$$R@)^*@WVVLpvY(QHABm`ZK8!bW{V$0I%hAYcNYK2vs*&&st=a_5- zvZ)Eb!LmGUhQWqXAsDG?2+^`mZ=k{0QTuZ50a z?L0@{&|3XXx6x{rU)7P!zg6O)T&Djnh*kP1c&*darr*5BBK9G^kx&Q^W#Et7iRIV9 zJpc){8RDBhdRR@I8G$4AthOqTxcND3=Sw##TcSwX4OuYzE0aZ> zrA+;7mp)#LkCc(Hb1b@6qA4|^BQnU?zNUqJs1-n{uWm|6*U(SUm1)veEEeOe3a?ZC zf=#$WyjyL)Mv+fCt)exkhbDJO&4Y~tPwhA-yfar406`eigG?#18R5W&dw|fg(yqz< zeCW_?*ezRuujl2~kIdu=H*IQsj{NYz_L?Qk#^zHh>L!#1olKlREow>EZ_k+K1N!O zt|K}x5D;G{G)D@R1WM?Xg?l8igb<0Ozj+J8Uu_f)FOw0VW=srIeCfkbuIm9WX0wZM zY@p+mm}#=76t8)z@@=8`gSV`bz{t(<;hW=eI70oziVm{{6?W8Q=~9(N!QjGjmCg7|*GH`;J!`LVlD>GJJxH!YSANWO z4c0-Kk)U)K%F1k}r05|jF?f~*)Klt5^DEXw?rcP^Y*}L~CW2GW8!@z5#q>U_G$lQl z1(RqHC!>vsSK8jP6@MIe{nO6em*T2>3%-E07`kW2vjS1oS|u=SC4~B5An{l{fA&(P7r`)!GJ9Xd-g<^Crj9k{b`53 z7_3j~s>}s#SE>R)0%51ES2FSGRmHZy$Om)~Bm{=ao)Sx5ggvClQ1gZ8`h30 zD@881ykw4={qm1HAolZgQm7^SxTnE}O4MR7>Ylh)(e867;a|hK9`5MKBFMQfZczKu zQ*om}V^V`X@cCbKsk+(lG3%i+Yci)&tOmQPg3n{>jgA|PS~(tV<6XiH8m_~t)zrdTq@i>-_zcT9>$ z3NUZpZtyq0*mA2Acxn3mobgUc@E5}{^QQ&O)I7$z)nqe)1*m0w()B#_sHd<-!r_ez zv*a1S+vifEfbSwhHc^KQwvA42-#q45YT#3LHN?6>D;`vT;Q7^Sa>mBNfuncXoRNez ztaVOTjdP=d ze{2P|nxt!a4;~^Bp!``&4d6)j+j zSTr}J{#9?xY%LSYRsw(Ifm=%9hz-ku4x`!Y?XrwZx)e+IQVP+sM@sb`=fQ#I7)wHB zLEucbV_inFSJd5j_UswV|Mx4xs>*|RW=@#uUGHmZOoO&sfqq4A$RJ!k1&CE@y6_Fk zJT=B51dLzHr^qIm%w{% zj>h$8kD$2?qwJN;aFOJ;bd*IS@wB(MOVXS1xK2K~_iX+ZG}3haf$Qq+cJF%L8GGGF z78>=#Q!MI;;U3zKT@;|IIq?aN8t?Go+a5S5QF^{F{Q?03&LcA!0*Vdq9;et1)4tL` z!5G;3OGu(?fYD#sIKqDZ@y>_uUiQB0nUX-9s;+54qHg~+jzYHzg(YaSE6XQTUN?e-&tC{n6$Te6!Kuv!6x4;YNXpn@vN zVvRy@vi89Yd2r){Rroqtkda#7IB1qld2EUH6o_aApRNjsuKer@K};sBAcHBS7ZE z6Xw3ODskR^SJ?Y8)rOP4c1$^`m~9l_G>uo`SL2ben_VE*mBPL&7hyis&2l%@f{DF^ zk+P!2ndr8J7_By5E|(NaId1UJME5`?mO3cVSZ&JR0yon zEd&f{K*)24de;PcjT6fmZtHJ9bzSACVRJP7IWIMD0fv_-_M@~bZhM|(G3?GdWj`NA z&C1OKda4`fME!gWBcYW9pqkg}tmdT(d@mpm0Yx(gEY$$&Bfv0Sm7dH{y=~>*f9|5BnK=%$Fw>1Q4zJO*Bscxs$X>=XL36Y`l zbvcAgv4e)t@aJwS49`Bl7WIt>NNxN9YZK-Vh7@b#xpzsrr4Tkc6@TB?jjqN~Q&)PO z+I2ylM@_k3q`~#Vuev)7Ko++xjZlLcq zHxifc2vmYBxn&raeQ}&0M5+s#2^!AI-;7n#CNmMaCW0Z~s1B0zI+Nda<>5G()W+mL z3uUjE0WO9gpVfK}S9>)AnCJI-2ksdV?n8p!R0n6TJ75c_FDnncF(bL6fo8l?ofM30 zo`$#U@bol0>N5oK3EaDv*s*LxPil!9_8lWifX>jPaHuy^n(B+jfNi`wZs07cF!&*x z;zknZhZ!T1X_5H%%P&=12T|Z|G$0Rghi#@mO}!zPc>a(m2tOHNHA+2hsHdm|-9+tc za@r8!K%YV%H&8K;Unk9A!gT$~;he${$Vpn7@M8Qfan3r!*@+1Y(XwhPDhN-FJg;A) zX9kvuo#G2;NQ-J1q=JC}^Qnm#usVdjl(#6?T$3#T+gf3H=Z`af-B|OBm9hn>`mUv| z^Ai-bE{MZtU!KD31_(TS4yzh3 z6kLD~1Vm9&us6Qc;p-t& zAIl)@A38V-5YkSb-;bmtg@d4(;{U+ZZ_S4{;dXE=XI{(`UkjA_y1r(?*)2uH04~)y z`eQTK&tUU)0OO!V8q3`f#ie0`?$&L52SEz==YZiC)}vCXZD3MTWzy3dys%^$N!jY` zQkQd#iVfAj&&)(6B(JGRqE7Yk(`~bNjK!ggAs#XazM9WZUSm_UpZcmFX=6)bL{-d>Rp z&BFVEL00zS`C%eJ?oIB>G?_=D#K=lhT{aXh=3!tLMumJSbuKNMf6R#9lW->&J_qYxd>AeXAXytym>!aRe3?Ucj4(#6*hKt7H}= zv~eWXMn8NIO6e(&b_II?V<=A1YT=m<^y8)V`}6x+JIGCb;yQeHuirBg1(FK?#UMWM z&-@9p1#xl4Om-1F?Ah9jNqOk7yX{KXL;@}1=6(KT$!NW`^i~+tx0vO26pCohBKbY1 zd!oX%UZ{XSzm46NoxBHo6W^t+gnv*n7s)bT*Fo2{Y(;(l{pC>Mu+GAgfn%(gm^>q| z+!8qFn2twBQ81+iH;xR7`y-5*j7Y;cCBRsa31gJAsNL7AB2~c6t_Q_vFCQ?gcv;JS z0kv5~^PM7nhcQ{+I3<$PU=qcAV`yz}HBY*(@hALv?IdyFF}qk5?lU`JF(7*7pWNMR zrNSWLZ->Kc$o8^Og7OTD;KA9M+{W?o5DYeuyM!6Q!r0W*1a)KjQ5bH^fA1r2iSZIf z3Ulvg(>M{Z#5we;Or%K>Odc{xpGp{Zk(_+48hkha>Y-_H8DpJ8k8Fns<0RU;8Mp{W z+z7cN`~{ysp9({W!qI<^6ssO1=`|W&)hV&A`yPKzID0E!A}dVRrw3Xsjj!#%a|HC^ z09VIn8VLFWH09tuAgS0xe1Md}K>h_*bpH2p5I$*mA+pCl^|Hz_#kxL1Dq0lhk?iQ# z0)P*yh(t6sz=z!NN&Gf5TjE?Yue|o2)YH-LB)niuF@RhetV9>6M8Y`Xoxkp|l9bX_ zL@55bZm9WS->>r<-!ZNEz4pd~E+@XeO-3+Gd=|(nO*}ue&oQLS#aAy*7jeS`Di#v! zp|=T`=4ha+6(wVtKb>rchRP-mJWVz=)gIL{cGH%RxA&KQ-0A~gnkUR&l`dn8m0z^1 z#9AI=8+k~Vr!P~2Hpj!s!MkF&l*uB8LaCOb)1o6ViNg-=!Ypr;F`AFyEGCiplABqX zWJz3FhFgYys*0PEA3PuRF+zi>v5_z2Yul0mo!kokn#)pRmIOL1wA+&kaqBNzvSXo* zH{Ud2l+V1XZttyht0d~NWRVu6`~xokPw|rKQM37Q@L)V`EAKBZ8^FH@y|{*FCtjDm zn27@an!~lftn#TWVWwHUPgY|)(B@rvc?Kv7hjt6d5O}Ky)t{F{eTkgikOd6ePk*We z0@BpMJ-y%gtyAG`>o?J0Zy@DYLv)?t-$1GQu~=?q2y~1pzouRcJl{|6%Vtt<<6~Mw zpMe_P#ya8%N}-=$d`>I9C%HCeYw&S#aOeqkgZb_wES29)i!SgGd9L zDW#4cSGDEw1fOhRxvtcKa&iQHe`i-hLAb2hc7sSzJ=NK4rGOtJNqZc&@F=0j+a2sF#<>|*5=7e#QK1-j?^-CqINP+xUtD{bS zhb}KqtGdSy`aZOrdMHx2otwkUKXA*}ddIRWYrN@t zZHUgPC8(9R$$f>p#J#WWN*5z)ElgZ9c z`LCsq-P0ei!iVyhhShKh=!HP0t3fir`C&E{DO+9WSdWx8|1j-xv`Gr(#n8Vn;5@n0 zNW=g%Yo5xv;7P6dr>J(POiAr$C93$CI&+{UMv_nexEC2e2M{>tgRKzU}r zZ_cIxp)i1;8dYwtmP`!OOfdYQG*TVVmhcL}a1GY1;T# zG2ZeYwFzAXSFr`WFtK?jn2o+RA#6o-BoNL{0fiOU^+F=rDZ5bVp(qbg)#rhWXTt`% zdoJ`}?KnmSz)-;QkfiI^n4;V_3&(L+pN**HjI9viW1$X7qL@}6a!~%-7L6NyOad*0 zIuYTf8!Ma+-xgtSCR7Z6yKg4RLh-EXcTafp*{F9Nz%m+71bNl-eTLb~a+4{*d@-eM z8mwV7ybNzeD8?#U6OOm$Fc;QlZRSEND-99WMUx zZ`PpCu^)0KM|;Kuhr#O|E2OL&p7Mm z7lbIz|44FOZzuCnOF|+M7$BzECE7mC5~5O!Ct%@-Ukewsn zkM9o%`DK_Di?GiKz=85=hB4LVL<3*2)=pWYL9rP#TAE54-H?v82|kj{V4b5x|KaZB zq6p>_XZ!|cBgbxqe@!3!!O4EO$~~o_WXnq$3-V;oKT&cmgMDSs{@hk->z9NQFu~lFLY%M+Y~=3NQfeNX^KOZyVu8F3r#^X!K>@X+k5RZ!49 zF_E}O7mBd4wT-2LQb*9(^Ua=aT^0`c$r`W&^g>YPE_9zO3sAd2rhFL`1ERQ_V$^}< z0Z&`ZhXtk59Mf-7x2CibgI~HZo9Xaz)X~0MVboXgdw0qMl2e=FZUkQsg!&zpKk)z` zU8-M$`{VR5!^Tlhhh%a`+NNrNE|0Y2t3)2E;+oX27~j2@44gikwKynho2g!o<+sU;QckpbZ1#YK;(p zLchBMwC{inLsI#MJUVy>hlc{6`+t!rld21~WUutF=4s7_0f#KgQtKJue!%i4msX=WbiQR>4p=CCN zx+C2a?GpyVL4X)IkmiKkgQmyDg2da0quM2pTdiu82$RObWv0PqB-D+-bdLyzU6 ziJ>RsCR&v#BgB(sA($w-VR@PRkthElG<&@dHjv;drVW62RM=-CYIZQ3sD^3Fra{0P zLCGy|ZhjYL0&I@*&&E{NRNGaQ1{E12@EGth7+~4J{*8Ds`L`TG4KU8&Mxp%lAT@{3 z7wQLLl~XGJWUrMG`UX?wDanrh{bP=){D`XT_i1foX=aa7!Vfqixh3CC!ASuzLv8a@r|_@V38gn2+l(*#=^!2Foqr+N=+r+iz$NOjYF5=EPXg>N zA4A^P^d4tXrH^Rulr7QT303DM@}))sV^+=AOoUP#NUxWp6##R80GMs5{s&f!9sR;>+ca!br53A(KUEfH&o*l_~0uG4xC#K z%KeYyrl#>3gUHN-x=ElVh>I-ToL*K1W8bU|R8bE=kV`)H$Vnd4QW{wt1?Gzw5 zYd`RPsB8?L4_*ED75;Ba2u262sXhn9)k*^?FXLaZ336Be`%gWGZ2G;lB1>L8EA%k( z?$v^vx>}I`15MQd9LbH3u~j5z*<}x0LS@ z5iwwhh=@ffNuXbzxVtDoe@JZuKN={BrMn*OaA$7l}sZG=nUf)5q_Y3+?Y@w#A zOt#}R-wu7DaKEjgLNQHBb%vGqte(bo=qIYj&I&d}M5pvmR7_-Od65rN9no!N1s$)E zC2CEVOzWvLTV{%U_t_H-t^sP$FG*F=(j6XzHj1mObW}lkB@UT7)c}A$()IA z5CzTN)KLL;h;IFSDo!UR#zq-*{{PE0=f#Mzv!VWLG`EKExPMBO}@ z|3rk8KWkXH9m1?XtN_F{#&FhO98?Krrfm|&k8WL0-1k{`j<3= z%sw^9vJeZvQ~GIEIr^JO!HLFBl!pGZPD4g5I9~y(Ul~{S$xAybR;y~b9;mW%u^mHL-!9->6|zPbQOyK zhI&C5uetwhd4kp5Jlp3#l{$t^lBTDXuu*5kJ`qD^ewe6VFtQsCJwYe(=l-B(1h$BQ z)cSE(jHT#T27mD$uVEk6mEPeK{TTc~OCi;7*DK6~$H$VYJif*uE3Uy!f<#nDc6^Eb zamn-K*1rF`l^s*7jYQmnXRAwz#bevwf8pd$zms*OmI)wFd-U(E=AA#6NKg-5tam>{ znx^y{7QIJ|uY-R z5Q&8UQT`Y|2P_`d|~6++~D(bXa5-dapEl{toL+oj24dbs?yPne52exzP{GB%j$+5_k{v&kNyx+ zjBT~FjnKazyT8NY^SI3!4X{yw_~Yu?uwr13B;B#s5z-3mDd40I=Ud4SXg{84vM>3+ z3tpV8MQ{uQvbAu@Gcu@0Bd;=PC2v*PBrveXKh-54xeH0J0bd`~dwh9yVgYzo%@9+~icpiH+vJTYR>H?EeF{7^vYCT!57lS|KbZ)imO!;LBQ zys~xfmU+;7ohur*n80rnMzwz1E8Vi2Locg;)s>RB;}09W`u`fVjOL=3iesbmlMKi_ zn!JC^V@5@e!J+}X@AlMShX%~(-SMU4^QXG67KG!~mPyDq3m_W>0vhS8k0(iAfYN3) zjd#zHDqQ@-a&Jp5cu;vfMYBC>o}N#~)%x>7#^J=MgEoS=@+t5;F@?h`=y4A4ThqI) z4b6zs%?ZW&SnjquU!IlKCdbl0${P-4k`wCpo7}tM0r{KqAAf7SqX;wiFn#4KKJT#0 z-P*Q)iw@)95a(x7`XnclZcu~C^)VQ6#Vp`Z(`K!y!Q1!Ac0w57l>g#K_hQiTVbc}; zKZsarrs7Jl{r8ePVsF`hCA2toB-Q3-?u)u)qC+h#G6=lm{F$@`v~NQpAlt#$SB~}w z(L$J1;Uk0+c7LA=n(aqgt0l(+XxM z_t!)9zne5B zPMd%?sw7Mc7YuyyKYUt7#$bZ$e9i6|9|Cyc6c!=An5IRIn@%+N=I;a1NP=m9(!S@y zlq_tzx;9Avk7zyhliaocvT{eBBstmbhMvSgEIS5PO@N`4lRF>6-CS%;BH9Q)UXd{A z+=eiD2?I0e3NarCU6S41Cx!w%)Uo>r8jA$N&-_r68W-!7|FVDY*O|?k+tF%PO`i!t z*sGYeWc6=wKHI4CnY5QanFN|AeAK2h)Pn|gfJ=EiNU;`zyNQpROg!hF`1Z2R@h_(z z4t*)7A^6__m}O-!4P_7ZshOd@rH3X1hNn<+_}w>)zs-vZcR1@Q0|cV4#EN> zGH>j&GxbF;oxI)V%_j>Gi$?xt(H@agoiRx3RL+2RsK)UyvrOA;eA?oVwI3}t43=X3 z)~OBexf|l9Bq^3NA)H>u)Hbp>m6G_@a+9~GXQJ7!UAhhD8*hZEb~grWd)Ske-*MaN zZx%~UzWV_E->UFd;f2`Nyft}pNve_90mI|QmsD1*iheWg!eOB<@M?%P?e&Na)xsS} z9p~VD7a|xeB7~$=l3__+MQ5eW<_#QJT7|kN@6yycOGQTB!xCtQwqHYBcHuXdU3;xe z)Y+Per`8uBM#*KP6F4W=SuOHO^K04RIO9IT^{2*zH?)y=A%>d2i7m;bSbO0CYs5rJ$hBYA&+v98qWVs4gdzbvYKXHTec z@6KDjKMs7*jCE`IU(*yg59LM%Qz~vLhL+a$mFu;ap7TUISl1%^EGSPYEe{_mJ`Sxo zxa##;!3gr09D3Av!@1)IwjYavuK1tPLBRHpH!N*AkB{b0xb`QFP50^lrSJ@8YVcv3 z9^9)hS_x*0aq$tse&r3M8G8~rTwYg@YPlIp&62-G6}+bfF)ux6e96UISO9K`Z)mIw zxI#|s_*Z1u33Vfo7pSj?F76LNNde>Uq##X`QGqlIohM1xe0~}DC_&2mcJ=4}+9OQX z-aRS~kn#q`#rkeC&Xw?8i^8G!Zvyt8{8lUdUu2dUZ@W^?WDVHew!akDMao6bBf|Fz z872+lkpwUp;3YzRt1Y~Osck`;+hs@>a6%#PLMHkw<^CSQKjP>9)-opzNSl_DA`+ns zK_gLTa_PqFBa_kVwEu+;F<1=WN2~g>8n$L}CckrZS+O1aE(35W1z1qA7dg8N6%yw3 zeB|aURaVn)S%U)_OrOI6y*0;!S<{0Ir_}_8sW*?os|@OPvl(I##?=a)8Q^YYCnZZE z-$@wC)V|%Ch3>w(w3fX|5pNkn9!FQdipW9(;5U^lbe+PG+?49ZJDTsJw##SeWgi;- z9l2wh+cNPiCmCSDvp)`h!Cdiqpaw1kAk8S>mn2h-%bW0GLgJ)AeI69$b~Lv&q8Eu! z&O|c_g!dROOHp{71Sn?AuHo~h3oEPbMIH~NxBKVRencA|_|FXt===%CIn)&S`0_jd zq$cjXR6fPFb+d6ZFS2gH8vK>5;PXWj;kR>A0n;iGxEp^azU}fyN?yd8%FNKq*-g_R zDC+A&h!^~wI!w^H6S|GCHZqG&(@8&sZ({G$P@Gg~I;y{e-)wBA(%iK^s{&0m=GT&S zl5J+|(Yj2l?Fw){W{eAsvdweDm>@u#h(jNh*#PM}E)df76~+1n(}|AK)&M3YGXdL} z+5lk$Vjc1J{@;Oc4Gk>++vPbTku|KcA4<8$w-w_#x=@TymeZ=^yyUmA>Zib~SUwts zP1n!6P3+|_%oCno)`M_<6Dx2+P~+-xop1k@3G^CVP`nA$>w zskv5)?4*uDivDpJWo1wPxXv26;FP4>s1m8`k)m!aALZ`6MAM^E>8;Qf!3|!j%1^%Q zqket}zK?_?vqVsljZ!S_{$+wlK(y6Q__!C0^hSH?gUG^ z9(rqf^0-Z{4NcT&g`GWfhZ7|S=QEa~J#;8DODtXu2i9mxbp3oUF(hRDR+2vlINbxWs{Favq&9z9B&Ryv8y><%*P)t=D)6S zY8!I;i*=yPk`nIL@vp%Bo-NV}@x#0!E^gBD*0{O8)dm;4HMXO!GMQ3~62zaTsMK*3 zurzr4EblVLKH;Mjya=Sm4EWgolq%47*>7% zUsSwVLKI(1<4*Ak2mj@`l^zggnb^6~AiZ67kH)~7O;$cA2yj2cQDLt=A{1=H_10KP z<&f|WNKn_f#FJn3^9ng;*V=A0VEvjJ!9Wq~H0|l+Zjd6>VVu&u{@K(vqIq{Wy(i(L zRZ6Mb$ImRL$kX?gp~6TIqP%C+x@WI7DykEn(KBb#<_A z8%$g3v(n~=oP2q(dv&kyywj|{Bv6kZbZ;wAC@ZyC=@`)egS4MCSL!Tz5&uF)W&yG- zYf8A)3PJfp|;9wE_8J6V<1Xd9Ryo8JR5qheVi3rm7UX2E~X;9fWjT=6+Ih zpjJp{B5REwzE{9!f9Oz09n2!6bMWWLP^}hlCFU5)Y^AdW-&@MJc0=e&AalLH9dL}8 zSvh*sGq;4nsQ$Eyu{Y4LHt9#Hy9p-Y3XoJHbo|i`yBm>l-GzT~pB8i$lxA}7Z((xG& zG5z<=G=(3ZQ9{)wOPFZAp6$1;%o3GWy3kC^+msA6>x<&)#3)6#RrR>$5Wv$MZt1=B zPA^nq{*3o+YYvFQY&_QM8pS$f&#iYlHz#MCnMJO03PqTtWM?Fzn>)X{Wd9G)J_?d3 zoOEAQlg{62|K=GGd|9#;MIR3*WT7TeFt>PK*R{Wty6?g^#fWF%+1ii-jj9CeP+RNgUFN>YK{r*#^GxH^nof?F5 zS>A+Az?EppRCtn^F((Y5U%qoL94)A%;WW{WVzz61D3^zyxEAMDzuPnMs=S{OZVbBmZSgBU1eSwO$8m>y)YoFKc?^nl*MESQwL=-(Lgx@FO*5siDp@@kmF2#Jifz- zMdETe(bgkqOF6jI=^s{)&3Q#6{F7l7ff#Sxp3$(5zyXKZK3nS3yS+5qe_F{nUx3+GM9h6LHK=S*90~@xt(psS+ zz~Em4x7ZPA{PQzk+ff{dPZvLePu+ttgae*D@NBcRe0sfVs+{ALS;oqT>$H2~3cicX zlBj#y+GJX}^PFJFf;Lz^=r?(-C;}?8wINz(W+}Ytt^@P>C~!K@+=>Ac`A#L|E{Zq% za7GCRw2(hzSn=YP63qZakWdpYAv;|IXvh~ zmPh-ykaEC@eM)7S3iaV1bLim(g%K^-APjP+SB%k zLEFecz;1&dO6{BHf6S!)>gf%rL!Kl;4iJm@U-@I84Y$G`-M<@WzvDyBfkN4J0qs+$ zh@JOAf&I zF8HfG(>6GiVm*M;Kiw-$i=NtNbUD~S<8yGgOPT0R8{gbDnv1Vyd4D~D>YL(!ta!7T zuC{z3UUnoPC_O%%Sm6#=d~9)WAQSN`#t=YRf=xl!EGh*b80yFGfB2mCwn#Jpg`#Nk zbwlP5ae+8k-PM7NQ;=>fJ(wo4OOag7v=c==u~aCWAEzel@K7OBeZyF}(W%inP519; znlhtYI7|)JI5{72o*SIxl_Uvz>n9+EaLDrEC(ELpiR4k|A6K`N{CEYdK@tkHXs;hI zo{JmC#*>_^t?K^YYvTlIzskjHBhC_ZPzfu}{}^~K%e5VmDKV0!=TrOY+(^>%{VS3e zum72(4ZoSlXLhSWUrL&UVZDtZpUa|Ro|KC>Q7gQUJPOBvKRo^n}Nkn%K&4mlf?yO{rv8qa{nHgL--5^*)N4@9WvdE3Eu zHbLT$saoT5y4%j(PgxOV&cl!jQ7OP|zeg&PPC zfmOi5fC_fiAfQ~EIR7NKHi29&KXLHjty!@#WYH}AHvy5+#kcdeFM1|gQ@_(blBcpbutku+KOr8uP8TiXt$-2}fd?` z1qh@z12+QCEgbp=gS1jNjHNSWNK>gKu&3ZkQf!rM8MQFq?AGVa%TMdhWBS-~36gqK z%@?kTo1A^b?EKdINosx5iH|V-UiDe{)MLFApG#U%XGy_UUQpd1yR~Rs=6rv;r2ndV$1fZ}CjPocC8G z;#zZFioB?U@?oy5xC#6bhFXa4U}?P=VCfNe_tVhmu_RWPy&pV;a z2P)LDqJUl{cR%T)j<_8@sohX@@&ttfv%g?$9tQa9Pn2Kjw=Xfd#rK>P#mj)gSmqu6 z*PQN|)WHoonfL>(?d*;QY9bUzl9j~Ktfd6@LGnb5E-nLg%vqK|>Pw_0%ead~cxY8* zqLYIU$;ZT6JJfd-ep669r3oGFrNNM;lPKf@chlvurlUp$&3>$Hs0t_?&Xu+LJ686H z2>ZEj? zk4WBZ?<-)N*J>zYZYsdEPNBr0ZOMl^ZeJO};Y94i?bjVc$^tZ5v|zl0)~;!Lls$`PAzRcg;=XDs^#zGFIvN z^35F)sR~LkWeDL6zY)GCbXuzh`Gm1`*7^k4W9fhGC(I306a&r6dD2QSldnS(AbZQf zf*GLzHZ(wM?EkU@ao$uN`^K}uO3pEop&1!wli)HnMSbjj#z^$c`#g3qqR2bC7m3@C z!n=Bf)it_EXCujn&g*2pR%APTJE6nm`YVAsA@_CA+-E;G56jM&fDW0xmn6fYr#v)$ zgLTFj-wf5>n)iAAS9;U?8l{gCm~(Bo(VB&CX&HO~@FTF^!vaw?J5nW)u$qIa*bCfD z$4I30ft$ThrL&wPLm)tXZ(0%N09)IRhgfZwk^xg`v!@o!LIJYt;5vKx53W!pT4-`Y zMaF5eeD!#8GJ_Oec>e>a&{N?9;rZx?^*v;2LwEmyp(qWge;;ZKGxUE~%|&3p&tQa& z{W_>bw!Z#t^@pH1wKUSG5eW1KRHJ}WiiQLao?3-vr=TJ=5KtZ+n-G!-lYK_ zI{IAN-wUNVf9pB(%a4HoloSb5X<`LVQ;#WOy_8`rV>SQ9E4B4UY8G2~sIjSUg@HCS zLkd>Zd<(qf9L=8_DI<1Sh#xQ#n0OMI0s#eC&75sUCXf=kDjAe_t-b^S?15AxH{WtU zy#hHnhHRc6qq>a@lcU(WdM{@tXSdno{@?BuAGOf5A)$n&pg9Sec?)J%m_9xy#75@# zyTdbF+zYhocB7k*!mC=(b(O-y{RAH7mlh)le5_t@zaB}QO1R9z5 zC?gP1?K|7Y@7CrWovQGrt9|M+anPXwahM{U>AUz5e!Em^BK$GKWzdWEb^({3-Aqvs zpcmCcDPLD8p=f1@nzKCr0W3-nGFGJ*)b6*jREc21qds zH!$8_HHq7%Kc=Y~;uq9ZzBRC~c^cT)Nltvj_JS_)(?2Dee!5v`vW2xVwJv6uilH6~%E0?oN+tW#hh@G-}|1#Q409Wj&BRLH#d=-TUN12Svos zzA%bWVxR9(bB&FepJ5CGk|Z!Z!`keV#ivjud)Ubq@R&|iye9wx&url(-E%x)~y}#j5siuD)+LY(o z2&dS5&O32m$IpZcb$Lnv@!h;2G4H-(p0;%uz#nY*(g=1m^P+wEbj>se3eo!$-a2*O zMwe3`ih{mWD7h_Z5p@hegrc1=#U7y@<^ z%c?_;BB&%OVv8Z_r9ipYu)4v>P$D8zTlT!$23|OLJjh>kB(Jw5D!wxRL}cOVz~nmPX~j zJ|2Lk!pA7h4j;PFj@Jshj;rb*noOA5BYG(`xjUzkXf*^g2QG z>R2G*g{6_t0q9^*cRgGO(WZ_PBhYn(L-bIvaz`w_7Kf!RJ!Z7r1d8w|7HKw_DdBzR z`#{ywpu^%^%7XMCK22#lGy;W{p1-(Gw+#tsnL!fXnLMi^Z9L1HyO{fTN*>cssLa9# z+hZg%@z#Uf$h>ni@tEG^FWlp7im+Fr_E%n!k)c8kj;D$*@}%eJ;ReKg^U;x32OM9V z|8~&9kfN+YXv3&uwTU?xuwLcAi4EKEY%1b~Hu9Kn!j8)nH-8!BzJKE#{7`LCn>dSG1rpMopCw_9THL5k`{g z6&^DfAb5~VI=hL)pR9F4~Qk&@FU(iKE=)2(2r0Ibt@sD-pnt*4{` z6=yMzq!Vvqmw}KXVWaMwSgpeAvX@jEOjW7+kYSIMDU$IWmvJ}l+$AnTKNrc~3IDda zv-&NFD+0~3w|y95iIBFe%zruv&ySYec>I1ljztIY)l!TaG?vCN5ROA)Q49AvX@x2& zLF9ex?y;n_p7M>v9p~|I?>-J(VsxFuW){?=9qZ*c;YifB4g%7yq6+>)g_|K=S$U8O z=UkztEX7T1qAm^Co8M`B`R=ljzwl6mpkIl@ktPu_~t*Qv)JHY$UYcF?~NKmiCC;AHhZx4!TcVS2kL0moE193Arb05(g+#0 zamy;|Aq;Ziu`~U8TUsd=`*iU!mKI&}oz9>>68BJF4bJzdu0>s`_;O7UVDSK`WV^@> z8e7AqmQ}qi1&Cgq!mCfjQHTd1AMF=~-iLXAxh}o!6R0k7@8K=;J?FU(y<3cn97dN{ zss>NGs*jbD+-={70T^w9^WQ|L%Ulxv?4(Wj7)tI-X)lqZ1Vp29CQFwuy;5lv%&v_% zr;GChlMj<{H*T*xBDkcKu;nHW8=OFGV2)%<(-n=UVOkjx?cvalP*hnO@T|?ao4(oj z^UyN|6ch)A=vglt_?Bf`vB}`*^sZDDGibf`h4$K(!o=o3|BS`cqQWeDPxd7|wEpTf zAXO%P3gFO&goOgE&5CP_W}}X0b6)AOa48C|J#uz46Fm{}eAATiS^YyN{5rD^;ziVT z$H59v9f??W`7XJxZOG*+|6yejc=2LN|L%*Hru*MG6cl0db?fa>#Lq(Lm_-O`1A#zn zk;GU)B%4m2yUwFR)?%4qt%|6#HsLSXjaU&n3#L$z*teTcQo^#TK_}?`>8@=h^v7}z zDP7VH174{N-niI%BoqX28ls3$&D4nYVG@w?V>p1&Np4PlO$>LdEqEx(eM1g`2JQx5 zL>Qu$3V^-!Y1EdIpiQ6-dqzdvbS zpVVIu&Ai1GYc2@cdcw6|)>sv7!GgAs5Y+1=9q!8$q2zM2EtjASLx3q#Q0j{MP%xn6 z>)p!Fm$3VDl2sCfAMvIEh-3cvPWD*;OE0m>pV&+E;BY?lR4FT#V0Hn6P4rGVHN?($ zL#rz8Jca>kCQcoPXj#7kCbKWXi_~{k%c8=lP^Yv|Vyr2`TubnSCvPDgyXW#+s%`A+ z@(L|q;JdJC%JDL0qW&@^OPt1a^H9vGEIU&iU&{Z~NhVu(En2kr;DXv_`P`Wh= zoxd{bnvZ*~_9{{6CU&HkU#%c{w)ZNo2Sk+NM%MG(QO>F!8Q#nJE zVu^-e?%B;E9ww!F_OC7rd8*DF7CV~R51PcJ@c#19F~1^OHjwfZsD3?p`uy;Fruax3 zi*TpPOyE%w+Kfg&_+0K2a~}e~X}g!KI?SkMH*3+UzubyTWBFY_M6^%dZS0?v)nW_3 zE9&=8bQYL`M|8Hn>Twf}OLNi!eidXUXa;>_rbiSnU|wq&0x{~V+Y1D-#5*vdrvQC; z2+*D8Qu4V^atk{5aSBBsc_f{j-Tir3un%b+F~FNYI@RA_sm%RJAsZdzm^>69@XJCQ z>%EcNCoCoRG@r6z>KI+3+EOfNibmd=yDch7w)y1vXl-kAV693P8#U-{)a!#>5{xnKI6RjDsKr9I1~V|XAcAjkAg ziC=%DqjWhK7|$ws^2<&6aU*huQUTVjE&Wik(KQRdivIe=N)hWVNQOdJPIEt~Afc%4 zF>3Ss#SFP0*Q-5vpB5_JN(akO^X&qL;WK%*0FR?m(eY)(T3Sr+*>=4i?(9+80t5#t z{bCV%BqE@ljRDT*ROeP^CK|SLhYvv1!w?wgPXDOBcwRS8Ud1gzsEMX6Qw(YVA)7(o|@{ zU%aD9`Zn(MQczCZyEJN&V$Isd{nNGTfOp^C@|L_A(Q}wP^Tp9sVbN9)V~`(abg$B0 zZ$tOe)1>bP9pqA%5N6jX6X(x%O1qW6jo~p@z}gdmw^-dS?TMcw2ZvP$Wrrykh*5ag zfe^r(BH3(KH+FU{J{?cb`v{|Tpt7mus70M+9zQ#jq%#n zI~NXR?h<(UT5B~lVY03ot%6F{qk%vU&R+W=T&lY>9FY9QXgu)A<;yx!&xG(mRnUyx zAb8-B{ilO-rf}+e84W`iTNbbEgVX&5C&~;tAI(@GR$UfQ zE@ee~QNgGovGn!sptQe0#Rv5So^pBx)E)|OFcHzP>WEkuR)?=YxCukW)N;{-JF0`} z9BVi<-dDPKV<^B%V>^>N~!f_3QlG8cBcAFj%ijfTl1 zd{7qI7EOsavzc2E>;8ej$cls_Y{+(94jpjl<;$T&H#+qo>g%Ja2@~5m=1_n?acm=V z__8;Zn2^4Xz|UTGyA|I>C)@+o^33{L&+ciuZhu|$XlSUirJ5l!EMrk4gId%6;c0k$ z+Qe%rgN^i*4lqg1T7L{zGw+{lXR$1d88Z#HHprRqMiw5Hvpv*MW3oW1*N>ra2LaG`~(Ey=eWJ7h9fk9N+gqW!5c;Idij#M3*9xQPXQZxzy+uLn`pCChC{Hd%xX^g{`pCg7xLJ-N}sD z8mR5%knlD0OniBt`gcn-Xx}tr1m_HzlTjS@r;uR* zfl`YH_QD32&wCVU9r5ukAg+mbpZFa$x=H%|LoN;b=qXI?b^o37lD$Nz`n3}78IS~1 zo{TPMCPuCBBCV$-sPP5Ir;qiHlQTBXUYF1Ml?kX9(aLDXo<_w5pEH4*4ae09*t_!^ zj15;u6?4)E5BbWmbcE$JI1mU))1C#9q4JAYwtpJ;8&y1>1gftzCOM+2DNV&?(;!gQ zu1{aD$mtm@Nfg#=eW$zsbD9gUJleAZi}xZAYf^hxNBzaP?B0>#?()w#ONG)lIl;Dk zzsc`v<>5lQU7m#?=WS*lTGqtZWT+GzFvf$$i6wpktj06*1JE%5{kk4s0`>++wneF# z!IuyKOHnuJoBQZ?nEhR7Gf*dt2DR~1qZTRP6WJo^Fa0N$)718CV!pmbiMTHH!DpXbz`0S6$7w}oqSbO9 zQM$(`+G@Fp^_IYO4+(Xct|M_*&IrTfYk6Rj$F~yvo`NxGxyVjFBYNfl#Eq&9qTIa>Ww7tZ#h^{ zIZVxSzWbVI_rT5)*b)|_tCuo9bkq^$Rx1X7*%)^+g{vXeH58lwbUJ@n;H!z198YO z?Mm+#622GccJ~{Oc+8$qR-O)Ty0!I7T_1%oma3P0u9EynLXkLA6(&xwMGNw^SEb{j z-WdP;&YruLtNd&@zbnt|F|aoPbVSHnAC{f}`IG>YveZJeo4E42TbM2(E)am&z0arg z{kd|-Wb1C%QlzDLiCOzj1ufWWzmd)78hxpYt?pe;yPWQj@p^W>iQ9>@D&XY}k z`n6{#tfg1haC(U~lG9&7ApY+64~$g#XsSM`#cw@>u8Yr-p=Pj?LT-4t_ubK(fdI?U zR~E3f3TJR<;<;DT<&wwr1^K93h)Wk#9#Lcsf{DWL3DdWs0rhqn9_jdPYJC^s7GfALCpSJ#a*2JU-D{5gQK&a7fijpVGah+zId06qHFO!IRq`8tNp57#pN4c=3B??CS~WQRXcRL^(H>>hzUnv4!;@KIjf8sy^%iB zqFE|GAHR0d`KMu~W$+#^#7ET}e9EPhc%C!I z@t~pitSmhr+~dAqa%C??|53sux8>AZS6u`6K62k*+nkRd7tBPSWb#3*{G+6P1I$K zi{A9Og#M+G<1ep=SL#_nwnp1d$)t32PoN#1|KiKYy3t>ry}bGAkOq6Fo?HrU9tjm5 z9S0xNtQUj|dH4%N_Q%}Na>>WzEmL#ZWxiD#I+`-X*MWXCLUM9_+qUCfk84?P!n8=h z8t>c7NrsU$`pUR#ugYHP&>#g&^JmyYE6m1s@~)EK@Y~zJ*dv|Sy2_KxNx;xm|8FtdWUaO0XsV7 zerDuYi|YuE^>vtWT!C>*T&Br?B}~5W+eJ;ByOYvlRavm!~$a(P;c)NW>gGOra9>* zy^QXloM1jJ3GN^`-4E`@7INa?j|(Q=B&&B^k{UaYeh$6-8^a$+BE$l zVe=-7{Iz}m;mV=!)O(L6zdhew)Q?1l!oJsgM@uvAkMxTTZ!9+EG+{o*i{zv6gzxb# z6);_XL)qDm{B|Is@+C#jY#}}5$n`- zbfKGT`edw2yQRgnbCO-HnTq28uvnH*hAU_IZYk z=~BuebbjNu|83K#$_vT^O^>Y}2HVxWyC2G;Afyd-xWw#P-RBhwpL}8ZRZ9LWQ8m$U z-@;Z*Nha>1Ux`0?JQOZQgw`{&(05T^imtO_4Bi@;hRFPAh0EkiHt1*)EZ$wLsJaD@o9k-Sp$Wq*L>Y=dK$CtFEhpObxpliiYBCk|cJ-uv~! zD0=-fYBh6Zb?>YE-0IOnmsfo$3aLMtJR&qY&XLRWg5&VKSXWK}2m3`K=w#`PGS>V{ z?YY94bQa0-qPa0^TNU*iu(*rf=OjmupQ`R`FxPisOr_l393&97cjFQ+_ZU0Bxu1#l zCo0S^NKcO&j=k0H1{P}y%^@slkk-X40bXPJWAp6lxCRc);fUAu+am7>ZJ&+9T&IVv zL zd)Dut;pf)KzHMHA4qe%kNY*TXVBO~iI1)H zf|d%{uOfVpQNZOSN&f?`{mWi50^HAz3WnU&v73vB+7@qyJ^REvN6E4gR}5~@gFm@U zr6XWq%l_?Bu}^)IU`Qy$8} z5_<-&wR0}<%$UBlCwisZD0_Yj1@r_%HO)AJQzYZ;{*%WqXU6;RGhO2f-QBF$P>-K% zqRwS`&{C&#ipbdmTcT*b4wS^M> z?KxJX>bw*b_jxjD?Q28%OA_e%h8a*)o%Ru34mskyS5%f;B9B+~J`l7sL=f&*1_X6$Y zUWT!2JP5lpgXhQ};&83gXpvkqr)}Y0ACo_5kw$Hp-cvvcB%#ZEB$f&BE(bvWr-_y> z@lhc@ClZ0=SR*8MI?rI2bG@Z|(z9`C-@@*-9R$ea|GTA0SXR}Ss4 z(B8-H*wrXyo$ta1!Z0!;v>y0nga~B60c%cXqJ%5m{P?n8R_ff1`9O8+mp85*nLD-! zy1iCMJ%12?n?8rnR>tW}l&)AJ0cibV6+LOlvU#Gy-qIIkfeVTBrN@kxM zBEc&CYQJo4Yr7WO)9^1XQH>@E4baxKs0+Asu+Sx|Sj5h3>iMo&@|~O6+lHB3Dy~Zl z3iX-2217S%dcKOmCInkLCJBSC6VKQu?h0K@B4d&C5Vua7_Ryh4k!Iq5d<*?D!V1!I zjGws(HDA{dZk?l|n_brwP)-!DfR^&%&kR4%zhH(vvSYLZGX`a^@k&9UNa-C56}Vd+KmDrVMaldLBlq|fJ!+F0-^wW0 zB5D+A!sJ|*ue7v^>UU#74v;h%M*}tELT;mv9Y0KqRbC8>qd-Bg0{hLnVxOs7lS^rf zABhy<^#|XqsJ-?nEmS%Xa$7tUH8p1+a@bHC;*Xao`B}R7q|4?is)o&I?y>F;otjB-eIO z-yH4;S-8*EZWqlM5~1)EPv{~Gh*7Rzpkw#LPoFk&Tit|lcOlo%={l(s#j+nZxXMjK z$L_xbU@yRsE$9IBxa;X8xyQ%u8TMf~#bhp^$qk{)dkxu5&~qQ47)NkAH}0k7cN9i{DL*5SMCTnpIAKp~&~5 zGf5R^N z(~G;+T8p~F8kYhiqZ@b#v0P^*Hh}SYOVR3@pQX7IdKBhB5r;PGNxcD`sf?FQ=eiNk zkf?<#2jzx8ab*?Y2Wo9y=tSX_Az()~TkZ9dMa-lYR%f}qv0^f`@=B$|r8I!>U4_e` z9F&O$*5zK1NJ-y!dSRf6MJi*nP8Hs`({^4!*p${5y@r8aIH5#|2sYh0oq=CUgneRB zXo21^^2oyPe-vzSh7x6_CUD88>Dz6_pJ0Lb<~SpNM{S9x_=Gc`UurV#xoui9`toqj!QCq6g7i z^fsc*D5IAkqIaSsx*08cCpyt@7;H-SobOd588Vm}x?%caPS0>9r4t!4)ghGvU3{{+BH@BEH&ax` zD&FOAy2DJ-NSkJ(+^=V~cb#VZ+qZ?DW;Y|~r)L!dH9K0M--(BWla5EbHT5 zLC^P>k{!kJ+ki1TUIvM&spyUg2njvG*gN8v#2a4M6tuX)>n2V_FlPam$|X(bOdoZv z;CwDs=ZPLsO|e^)31FY$TVxA^uf=v$QYa|H*eMSB_#A6>s|wZ0$7-jRG~3qtDju}x z>D|RYj8CY_L>*BzQDEwhiIIg`F~rC$#O{fUV)VFWlJmpt9wV5konY{>+$+$iBPX4I zy@c}}u+#j9{nd{)Zf5yG*OAk-+YEZZdjdu?WT2#wg)h0U=_cl?MZnzvv;gJIcJZu; zeo^&e)%cT}B1BoU{CJw4X}4uInWt-aWKMIC?=<$Ug&P7Y^u1tk7^-5-?gg&6?;6$_ zk@>EN(6r}f#y$!wo zMLc%;@`huZ(>7|7>yR!tw;BJMf-F~fmG04V{FRJv`u~2y@3ySgAQ@nB4OG0ZRIJiOC0_Y9$7OToO=7}g@`>M9g zGV>v`#y{UvT`I%Yw9K5~U?_7J_?!2j$iiIQP`8pIcRk?#AFAK~IsVrC)CLMP1A27H z;x)n2$l`9!_>*_~BuJhIyZc_y6d}@CwP^>CE-d&auU!Z4AIJ67ou~0MAeZD>6=i;L zDdbWd+-jof&)12@4ENz|;T&Yuq(n&Dg%71nQ;9^~|=+t?Jo4tCMlWOE$@%a}# zT81Df*&R;(R9zpa`{7B5qdfXH8SIzYbYV?wp_5Tq>UG^(sHgQUG^YM7P9J`{EA5)* z`9n`82rf%^3x7uoh?b>eM1@uNFb+vC0@cAfSF#u0@oCxxMRxhm*)m3~Kov7y^%CD_ zA_M*xp(|5?MhF9W;s{KcxMjN_i{P*QtSVldQnoo0sUnd7skxrj(^0ae#g-tISCL)A`?W;mL__~ zzo?skU6#7Pp#lu^Z0i-pFPH8QU+4$f8GO8Mi)>eU2w;0YCf$MoW7oB1J~*jFdK78G zsuPlpLb6gfkIlVh%mFX%INyFA@mmb%9AUHcI;_ltYB?qAkoK?G9}<$nKe;flS0~_h?M9W_Oz4OYsIhuYMRc z_7{Y^c&qJ*ms#^~e2?_8oaR|L;&(Az6+>$A&e3cNt6eUjJ)4%9UnSx zzS=(RH7aS+m3zLfU zj%*ZlV$ecZf3|Z_8ODqM_qi5Di9~>E@IBt(M%-Y&K%mWtoWnhfjgBYeX6wIfo zM@6(12H7g~8fZMkS@_@e6yC(I(TcwUeV1fKLHo^qQAOcM)NPYd>+vR1Aon{f3}uZT z>DrV<1u(-A0J|LkyZjyMJx(D9!__78h<#kn!T(i|lbge*{eu8t?s8uC{*2w96Y~hoJ24!)Z9c%3{SyQQu%xeaV*n@0LE)Tj}O87CY473PJ}`S7%GKR6!VW zPAQOmcLAV!rC`Hm2FH#_DSs#;%_OM-b$`JBiWC2^s-Is>g}E=9H%g-2YPzg~f=3*v zbzdj-m?pR_mY0l+brXlr9#wDtHca(fzyKq znoIZUQ5wA?e`pcR`a?}xOu`=P_bEc;g50kN+65(*b)6qI?4$Pas=32Y7WK`hX__it zctva0KE{(Eza;kTUWM2vzby|h``V*(4#MjkNtSSU#OWFimlYwdzsDnQk*4Og8uz-1 zEH4FJGTu`c&BF&)wpyp;`=VO7%v+hFVYCI&zx+>BBnz(0h{u@9-rAnuf(E@D;r~$YLcaZ1-E1^z?jo zweGMda|gjN0yx2a%MqHEn1bdcyM0!v4mD!lYm91PM9kTK_uCP7OfY-d_(} z`2EuRahVS`=AwT5;!|d_XLqNi*0K<6i1zgKsUD-@;w&elsFUp&t#gO85O)gUf|O94 zEG>xmjtHWkG?cs@k@MDkSisaj(7Xj77y?JmIlsf3YDKqgNN2o;260k=6kQL0O4+l|1o_rC4#s9*xYtA%%{;@#%$2h z=V~bD`s-6L_`-vBFU6vELIHNQ8+^sD6feHk`-gX>|77IVFZfDkgJff%J?dO?5T)LG zgp;=FABH3?V<6tp3iTCv@w=(e^P-A_EU}7+FX}5)Eu!cSa#tN~h1vr(hX$JO>9HdM zVd3+hb??Egf!FkmHn){DQVxE8><%r!22#Va#+bxGGEv2U-8EyLyQXjoFMf~oJ+ay0 z<8M{R<9fl%=&Sq&zR_eR7mx0QYYd-$bG3tE?G;?~kAHOuzc!U;iyE_L-j2fo{fY1g z@#5UbW%)X8MzV!M*kGQYY8+0KRr*CPNnW3=F1NKtTaIgTYF)8%K30-|xQKez2#dPA7NnWk_5ZBJmu*t9)OFDhceqW#naoKlGHxQrt+bF#&a{NPxENWarmGHuaX`$Kf57t`6TA-Qyr7zfsqTglo6k z=h6P3HK4kQT(8a7I#Xn`#ZZCipx)jGM`Bmh7ydKx5-*^i;i^*R0sd75$j)I^Tr-Cl z_qP{&*;MWiEvQ7#xH;8;D7lRifGW|gS9308)ho$gXZC-6stkhQ!5)Obn9?&;@J%Em zCqRNBi^sgeGDcHmt8=~qX$d{cJ5x&(UY(g9K3jV5XyKW+VaXLu%u!MO`;Q~z37I>a zCxpP3JOb}_g)w&OTN%X8c(eaAdpxEsu-!|l!Eg(L z>=1xf_w_~?y#M*CACd?2$E{@)55$D6at0C5-kqgMVw{ppD7*Cfmr*SBw_BGM4_`|n zLN0aZ01}4aAq5zg;akrQ^FjEEl@v&3cEzK$DEv~hqu$@?I+4|yV(^e?^W8$OnkVnG zODu~w+^Q+?cZGXaEIKz|vHK<+dmQzOyfzK1LEHdYIYmU}|NY(lQimyqtxBKyGwsQ9 zo-Sr@TAJ&OtwqAuQC2H;s#s4eKQv-T@PrcLaIdc(s7WW`9lBA(Na14YS0J->E;jV{ zT;plo138Q4Ur(R^`NUR?FWHH5<@mX9IPZ~aagttWZ+unS^z`yUu^12CKbJ}PM|*#9 z_EQ02r|w18INyDJ!&-2Y<}zPXj^i`#m}&e2c<|BJ`k95#6jtop?So#yE!tm@=z+K9 zS)4E2fnLgMZ;A{k8C9I_CuD>5;H1n1CmOSFI9qpg>0Q>!Ws z-cOq#U^c#EQQ4ZN=h{<@9qt3!;;F%}`qN45Vdr6T9}*_+0yjDHtm`i?(ELfSvi`<8 zQ1vz`Rz*VZ=f5rJsS)Skr`K}dguT&_mtkctSsky!I?c#d;Z@G->L$v(=50glv`=<2 z`pmnzKpPFGRC5{mOqD(QjHBYY!%n;h@3`5O_Cr;#>#F)Z2JbAMAZ5`1rFkEP3b`n? z+V0*ryb}b_#_S3sON8$A9)dyFTDgk52;Xgg@ff&-na@LMEraD>O876UJ6tM z3amX?X)hiVqri`MN5a9C#RlUuX(@TpZ7f9Jo<7)_06>i^D< z88~?H2@;>Z0y?7^ou$Wr5U!&u;}y7Z)SxljKIjqbKbDO|V`EUJP>hmn`w7brXbb+1 zhoFcK7>$?C=n2=5_3e|8M^XI9IR5b6wxF=9LD>3hfKo|Jg|m^-(re&uszE-|kwoP7 zbFwmHbykKpL`z!YbI1S>Z~guK3|L^RPI)FQ8aLg$)BYHp|0fdCKmH=hHVzb(x)o~L zuD!Pr88>|QX}w@Y@l+ea=B`dP;{m$-`uf9yt&n09lWjl3i5 ze+`q<606bSTVE~{e`dcJ?-tcbvk!a;xi;gz9>g|F^f#y3lPAXU`+ugjM#|M>V4I;% z_ke_FS;&0Brz-q@2CP;}_ZD(<krqqtWqklqt}tyUL)L$uD~A4zwPf zPkiM1oXEnDwYv^p9gyTc>-Yo-ZtpG%Fkx%G3sJj*DtobIKS=CH(3axfe}Rf3-2mEi z{5|lZXqF@Acg|VLhNP%AYb^{Ls}N|JpEr6~(5d1{gW+;hfJd_7Z;bBwAAPTY+|R$D z0WIG;F&D$c&kFD6;J%Ie#FrD>8sAO%*6@>^qJREBuuz*p$=N_uf?LxfYvCPsjUkh0 zoQv-#g2#ngl@*6+cdU&}{gycLtE>QtGcx3B@`^{$0v|p_LG;P0uOu~w9AM)$bOHLzc|^{m5;-LW3;agRlCiWD^|ihLB}xCm5YRYLz3v8#`4BJAr7n5L zU01pjaPVjvOz`Z@7M$Er@o^C*%F*8wZ^*8MT(B0ng?ztfXCAh3H4O)Ay$m!Yc?F~+ ze$akYw||WW;08T{&xr?~LzVkk2+(1NMuVF&()m3(ZCr1RF!_Qn^w(YegILw9N`+Z)(>RFFxQFxP=+ex8Rl#LCW%==_owCTopbVI24js%bAIjzQAOD`9Z>uwa5MA zo1^wi^xXqvx!3?znb(c)9>L77VoI1&d)jWB#MSjZmZcJ03B{MJ?Io|=ALCx7Z)}m> zcS+<*AL6xXhpw?cKTJ#RE>n#H~5Bwp;|KD<>Y&!uAeI2VAtHc{?Ei51m61ZOwTPUa(fvFCNTVkq8PAP z+?|=*F|&%00@PTLJdX(+6w@W>00F0x+Q`h^PwSvqxWY@m+(j!!5<3Fk;CQ+v`{0q8 z^aE_!=tHz6OR4PasIDRzaip~Qw6!VPEFBZA*zx}GN8qiSWULJBi1VEmSVy6zC`HZ}XNTbxD5#&me*LR0(;9^9C#;wbIKBI>A=LbvRf zvg>1d5>bfODF6r-LbTo`eU0|41#9`4uzj@~7!%BUUN*FY0LGXV5dZ-2Jv$p0&4{;oy1#Jr|Lv(z?f zbqC+@@5r%T?9+!tlspoj*|Y1B`(z70Mn{W#Yx1b|mMyQ)1JcKO+OI*bo^$J}e%ssr zW)eBYL4J6IoqG!P(}MRqdvOaJ-|9NP509%3?0sfE2o;fw)Yr(`%zRabqtK*N57u3U zMjhVdV9ZwApYwNH6|8l-ys+}?8N0a{85eK#X{4OYChJ4*g_gpnlut~ozCvN%$aIX3 z`kQpyjy)lUDD64nvGc!-+2I^)2fk#dtG@J?Pd*alk>vTeu%mefjNrMOR&TlDoXcLM zGkD(&7mjs*NCF0AS;_t!Q(LWnld$G8oB4bjl*cRMc+XmcdGEp>O=)1IyHy9-x-GPY zsT0ZO4YR_wL`F-wgMJ)h&n76|&^uM66ck4g-V@-&+k0 zEVgpeH9oHB+lx9R=VUx9rPh?*?ptJa4{PZ?`*4;%RGMcZy_Y28IfW>)sePmyRxuh5 z5B5ASDiR)15>BYO*nu}+tzMm9I^W);iGBLjR_iYw3@w4 z{NE8eYn$`>G5a=m`W>}2>59wAcrnxU=DU+5?e8)L{}>K0ZTUB3pCx;kgif23dXZ45 zBO=-)o2WBgyBk7M`*sXUyUeKt8H#Qd@9!dJGQzUBc;05oBI(q%{1)z6>stPk_?hf{SxJ8qj2NZ(W3Yw4QWnR#aaK?A*|I0Dd+}iFZiuUj!aH5bGt|)UYV5ldD)Ks*=525%V(HU3 znL|(!l+5WFxbBnDrs!OIV`0dK_PaAh>r^l5b03fF#Qu)m*vt;;>VA6r{JT{lX7q_2 z)%2yfjqtu2v`M>Q(N}@;Y91ZMZeN1D9==_4sC}%^=}@gkOSaS#$1#Ma?tI81Qcf;hFD6J z%{3)ZGnW@Mm?dfLzvJdoQciB~Li;?N!X64{N%nh|>8}%#MiK zOI^-~Z8v-|q9lxLN~?T;aS&XT$TIt@_6mzaSB<{@<;=_0+CVF;SajH6!}*4exzz+J zo(-$Kjg~`J>YL+70$Md5-FZ8b)3bK;u_f~4!(K-ZodgtP z8DtAgS|Leeu+s%q@{(wI59HfyR6oLWBw-P)JMC)8EMUW?KF7p=hR{(4^{uVE7{=v? z&#AyW>hVj4Lw9)mtoi3x9ek&=c>kQZFj)9L*Gkk*@;T9-!~1Fq_Ii3R@w^tNtjzFMO5md#P4RHYRHq>&C|XH zyv7Q0m=-3o*h{rtdco1QT#(b2Ys%X6;LNZ+G`5mdRapPsea?ilg_y%z#c; zYtea=%F5K(k>GyE9e~;& zFQH3*4cb<%NWcd{Wmx}wg$L_5DRG((>?s#gi;0IF)PgX$=&?sjRV?dD%O$#%H8WZq zVpO;)sQ%oZQ*ZN)F$H+XP5z5FpzS)sLRGP|Ez5u@v+}H)_{0rj0>Hh~fe(HX9*6-F z_c?%E|*uw%;B2mZ3a z!KS8am7UJ`FLrvj;O0_cW88#QoUcHyKz1jBMWHgCVr51E*XoCNLKT(bDA(ka9cSFr z2)8#WzT)jBnW*#-Bz)!n*JpC{Zzl=LvdYlnc)`fe=3$eLf;@j9Dz8>?O zmCdY#p_jw-C(|XZh`#U4Eep%K=r0h{-C{XG5w~}-kr#OmsI5-@wgRbRqenbw2M}rp zO`KsW)Vqb}8edO}<^9pemCRW>{_4N*WSdiN7NZj(ywa`w zt^(e%2#v_-x!QMbyetVVw4ag5E&#|%-U$?(9pC8t&i%QT=|Y}1X*xv$PIEDt{s#dj zADc;X?Ket@4S)*;d89N!+<=%+FO&pKkqadw{t63#cL-J{`Zm-iX?+}hxF92V0Hz4SU_uhx%Xmfrv{*7wVCcwGXs&wj46bmT z9j!_kwyhXO1L>&3MK-t8eoY-05ND&vlskcgb*QES4+!&mPH$n@*?S?GJ)+JJ;NUu= zdvJnDZB{>Mt8b(fwy59wK^##pZwAvR=mrs>Tr?&N{r=Yn57`jm-xPG)-6w0$5nARv;wqybi@JmRNNSbKwoPv>?|7^qlaIiV+%<`-C@B!2gK{ZcfzIl2fQzNr9vF03Qgj zQL{}z$U8U$p)aZ#(WW4osK&KN#TEb6X`bAxKf!W!)a=7ywlh4L#YWwPvZo)XfznMso3Y2Jo6J*N20~K!&qjm z->-5>$EGe;GWB@#6LLfKYiM#jDFAIT7?7>RUX_ty<_Bn!JB7P|d2x||5OXzY#(oa< zHgxEG(NhZXsTX_i9e{TdHgSQ6{8ZBmX^EAr((y; z?wNf+1p=qI3-E#5AO0iln8eO}eRt1h?Jui)la3MAEVZEQok9O-RI;Y@E6`f48a#N= z#q~B1is;nrJsZACS*KF(pp29W0SHze@*$; z6-Ca^lO_=TxK2p&-|kp%rrf-d+Oc_67<*@6Yl(xz%Psz2?PU+%P@!+e<@0E?*>W-h z`a}jYb1%nc(@HQhGTHYYy@12P*b{?v5}^ps@BqWXImf=1^2r-gzf7I)Aa!K1I8L;n z&@UKxB}$bemoo?|D<^g%29!wB&+4Qog2d#r1HG60@N*i7#|g^s%lQoDp=6R%l2jDb zL!Q(ck@Uea5!OlO(e!d&XZkhbgyI$Qn|0`owx|X*u^N$OQ#s5;=@Rp}-0>nsB10-b@k!P#VQ`l9|- zRn#lh{f^7$)o6?S50rNo`Wm1oNk$@9e@ZU@%w2iE-?P>&Gur11xkJc=fz;$>v}C-z z9GH-UCSX$&)P|y!#I&J`M#@*t_>!0X(yUkCH@+_#%;Iih{W3TJ?jSSs?MP+`+WT!f zu;6+0iB{;#t92FMNlQ`M825kii?Kkh>p&>qLmsD2Sz*?OAZ1?OWWVQCi_el1Y5ZbW zGtFc04yrQb@O4&iy3jyG66A*Dh>$oQY!=tA0|G?@6u@jf-4^B)sBcPB?_K^7cjZ^V21Y0_?(UGJC6y9iP+Iud57~g87xXHF z*;0JiuP;}cw;L*n(OA2L5fMc#{5m53SVI0~WO%}YSXTKrQy)}fq2CvCq(7O8?jc)t z!mzcLQ~ifM-FIXCM?G_UWKLZ7&xtai0zu)m&N2;;UEY1lXbo$4Xu-~QaHX(*;x2Bk zU$lXq5ZI`Hnw7#&`Ca18!#fk@mJuhN5e1cUW{eOjbl8a*(1uwBVCtVzQO~sIk9Sk6 zY)ecS!EyCIwG-kG-^$(q+AptkA*M?lpxg4gXD0qpuVnex$fGX0dOuU&xO$El{prv7 z9Uyv@aQU`mPPPCc702m>d4yMU(IDq6rv{HI$jIpeaW?xhoT-do<=g z3JuViFvF#vTOj}ET`}u^?ttzH?{!lD!X~??)HzLMMW5mFaCK`)W5M3pD;dm+j$b3)mm*V2ijNkzaiG1YJ61! zGV~#*$&*J^{u$sG(+_+cC%RR5D+lRGf%q02dEf;#lg1Va%v@O2zl+7?vP`n0hj3iC z2vFofX^%~4F01=0{|^6SXO=L15rHRpyRcZ`NDzDaHSV^gq?+j22nL+f!JEXC$wWy@$jtK?=(bsLEi z#Ke3-od3mrVNrh;pQ3DTf(6qpmOXETN}{o!^&a715*a!WQ*e09@Z&FC2oCq(0a;Mk zx7JOTBZpw9u3;@S5jIhgQ|7z}D0o--hh`NS-A>@v+Jt$N*XW-a>{|`a`w1v+J zbSAPlq~ZY1KENGjc%2LTC=)=Uk(cf{9 zo~gMvQat?dj%Hi~c{DtjU+VZNxLbC4K+}!7XvCQ)!rQdF~BTUoM5_e>Z1>jWuCT}J^{1u(d#^A8vRX^MY z%TerN97xM-B%)o#{7=kWAiUg(^4cm35MrH?VM+;C{}_ad)=Hwu1SoJ`ryBJlTKZH8 z`8&QM?_nVKf9C~c{=)ZX8iBJ;g|Y__L695@vjl8x2WV030*pFykaY-TgK)?Dzm+iO|ww}CMXuKXcqT-0~q6@DHHFK!{VCe(Z03oL3B zEzt;=4uHPYg@Kpjb>3>lFD9POQeU=ZvQT`A(J-$y^L0!5ih6j;8G!Hko_v|p7bhfv zTN8-sYI+F~mzZ}GvCnS_Mk1m;N= zP7pmCvHSSa$=5}V0t&o1+6x9ft_i%iWD=Jt>z?-LLF}P^IeiM0%Hy9MBQ%{q1J$cA zJpxEf8HAA{6Q8g0w!^_)$mj8&5E;F9TS@Mu8is9iir2K6U!d6@^3Ny!NlS1{hsDOf z-+mMV{j9rU7YNj(^7{vmSzl%ovp7!PP1uN*1SzBDvAD-)4#20h(bxu}6f3p2e$3X& z-YPJUq8MVWn7wOwHqzqJsdJ>IS^sJZQ`pT|trP#?d1>gxC@-j&((QIswT<$Yg0?EhX z><;+A)>fSuyFw#1Ao>0%4XQahns}E}4 zDTYj}T)H?TtDN<0-G z+AS{l^Y+6mFO#kIqb0sEqD^*H$;Lch$EQ+HOAY&J{@bT|lUyfwC;njs8|wI%j&QEa zc>*a|kQ?N|b~mGE+8O62#OsO|kA;Er?hSW$%ZW*n)bzatt8Zhlzi|=7DmH9yKGWFY zC$teCw&iZ)`ILkM7MxprKt|21*(EEdq#Z@u>fZ5%WsEM5e39+tFFNk!h3m{vm??>F zfz&(hkf?u{Q!$qGy*y7&lJq`3pEADOPnb&{TJ1lc^F4{sGdKF{Ea8dmPe*TfT^@%0 zOPk$^=B=B}<2?a>-w&(nGnVw;KYrtcrH%QtKiL2F?OV+u-nVa`F#qXXb5h}npRZ>L zro1`_a#nVc)L&24mw*}jGU|$Mz)wiVV;@XyV(M}x`nyDBOGw%g<+XjCQBJka~r!2nRbGv8USmmRL(DIZzg!Px1 z6zCWEm5O;*%Q1Gdt+4vf^Cj$#cp62WkOw~h?QXS_6O6}wP(%SVe1r|%P|d$4}Z376hZ?LaRyskQhP1^qzFR5JeVyK zpE!HGK7qa&-GvFGRlr=UEIRuMl)Nh*TkYI)TW8$52{MI7@x5LQaf(`V)D#iy>b4Cz zF{!mNt`bR)ux4se{p5otwlW8l5jf^!#r-%9qeuyF4xLUT{{?83S;q@%bpi@7Y*a(+ zm@rq8wJRYE={WsppL?(0*Zc&TyH2-F!-*V-WeqY0voT#=tAVFUt_!vmFQe{C+>0An zHH6Vq`H+1j!owh@P&z>o#i`!`#43_{u#OD5{hfK^ZdNpXidbhLdLOq`EP| z5q}DC(%Y$fk-L=&4U}K;y~q*H2C)SLMw~>WS2&t&X8F5VN*i{LqX z+{bU~(wMs}`b@T4n7x=DU%k`)_ax+qj1qV_i>2-oyVEHP=1{ z&`|t3CPN;+?WyOA$|2FqnrnIK)#Yvf1A^cstukl}XfwtVPV(%je@n^v12Iz@%2fun zFjE``lQbp(9v{rxW_4b1`}30@vIh>S}tUXo@2;h*fwfROi7q3#=7 zb|p9t>Vmf~5>9UZ2aducU}W^!&2~5I$B3w$NpKti=8a--0J}&JA#(P|syc{ZwKiXe zn*n?PX&o{v|C}OUhe&<2dVYlUk+~1%ALSk6 zHu)jqL5}$5siF5)w{pqy7DP7D7>qH=Ob@%1P9&KdQvXwmGt>(W+Ff$Kji%#3Lxf!) z<9EHGbz_K)A4?ImKj#1HmwQj0nWm5W{8wNo3<*Mzgy^1x=Bqv9KyX11_32dNVG`DQ zx#UH%k%HDF*y%;Wf1AF)`ojufE_X1j)*n|UXEE{2j_+|F=vW`1H!!Nn@~0|BM*hHM z?~wZD|D9kU`a)(DJ`3oHd?WPyv1B)AUU;-HtB(8D&NacSEU$tr%S%3>IM@EozEp4{u|8(YIGlr`c=I!gu@5=` zKL5aWZ5SNk;hFe@y+Wd28^#2C?iU-*i$lsC1Ig@d(TnT4ze{oY9*%hU&$h~+Zo5kk zn};th&%THXOW>ud6;q%HLX+bR#rj}$8Si@UB#P3k*k)7p>vH{v+@gqD+smy=Z(XY# zA4RQbEf+i??e!wk9qU&hAx?vzgTF8g4lpEq@+T>yq+Y zaP|#?sUh|4QhA=-Uf%nGcTn#b^Cu>lm7KVTL}l7OJ%weJ)Pl56>BwNAo$^tTHX{4SlF*>hW(`8W`fq`Vp9cp} z;KgG{!`a{5{d-|ehCi3(I5sq3u~r_>ey1W+k2lEM)FH9H^BrRQh&P!30!2iT`)!Cf zk}=k`jf|HaGffAG@$3*Z&l74}JO zDq?US(fCDdtv#3JkM(L*1F)xnqL~D4PDA^4fktHfWOt_r@jCMZC@n3t84S00znh(q zcFHUf(z36-%WUZfnwS4TZid4iBS@CFjtoqP@2YO2bvxM)7V#Rn`NyU|ScWW*uJdB{ ziKsJW>o&~Z8MpW8LY`mXbK4aEc_iQEqwCz)mOF<0W==JAj^#wjTJ=*|AfFMqe~b=6 z;DL=LVZbu8mm+F#@F3ZHbKaXODn0Ma#y~{+Mn-Re(mT z9)OBQ*0kRm9{=d+QCU+6Vi^*i8#}_&AMf+rdHP2{jr;b$x?n{L>$<7 z6Y^6!6PEStSD=xNN`EK$pfstVOKR9%fS(N#a97ZOLhmH%*R)lkcrocN#2o zQ0h4f2>w;{3D{}}O0%Kx|Ki}*Aact`G5zJ$aowIJvoz_FSp{wdYDNZb!!!r3+o*4i zGbNs;__SjZ4UQj$Q|nKK57wIQtUh@KI$1bWr^UkeDM))$Wmnk;;6ec=h=ImI??t-_5Wh3uw|V(ftB$G{Bwp>o)H%f zAb@|XhkuT_wP$)lIyhv_3Oq5(g>?8QXi2wE&-(AhSD<5^AtsE;r)Ne+Y3W!h8c8%L zqVolQZMJ(OG)#f7UxV7*FsD1KNBGF zv-YcF`8pu|8Ih70^~@>Qm$wvG=mPc|BJ<3&P$uk1hg%Md_vO)4kivQ~^3x*sU(eIR!4?8M*Z=M$$kGo7 z44LA~z9hE(u!yXC!HCra`dE`nEK0HtgpLD1-pj#bdX!S46Hj28*OqtJBHv>+K`E5o ziGU%O1PrrCvGU}&ezfBZI`devcfv?KbG#ZBSieyRTuxw9;I%+W02${qAr|B1<+UM( zd6YS*iljaA{pae=jY#n%ZW3Qgd^f&j0|GYGNUTE9t$i-t|ZQ)Wdz%)NYMm|gU=lADV|6NKPn$D~h{39Hl%Tz6j!I?uTVotj5 zfujy~N9zj8npL!n9J%=Vad+*7dQ;397b6AZjOTNd%tx$Ctgb)6qlGq`4z3412p>dj zUV!lbL|G~Y;KQ?xwW_}p9o?5^CB_kb3L7zGl~c}uo+O!!dceUrM8}0Y7-Z>=BMt&| zvY{|;7(hxla-&LoGQ{fS6tMCSo=bu&^z5~r@K?~rXIE2Sw*?v)NBfr3kk^B^tado7 zRSMwE(W+GGe*t_O@M8z?@_!JEYeX7g?JN>t*A7V(j*Z8R0Tia~cJT?&XQ<1i0^8tl z#QnEg2e!;HiuI46J-U zVi(28kSZ}^SI-3a68^|V)>>pZrWg1d!L5kO{#FJkS{uyy*v_vx_}L9G6K{%=e4)vm{4&1{YvSil@=PaC4iV@SCqTe8liLB`mp#3<{Gb;y#;xQu;CmZ&IWy|?WeVQeAH zFrgbmQ9?*a+%eNKQg7Fm>AEF~xOmUtzW43(-uM1B|IBlK=X{^%e4pi<&v~%Vp(Fdf zySXhOD+0?f2YZ$YtBF6mY2Tw8_8r8u5y;yw)4oqyg6N9P=tf+3hv{z2Ug9_<(a)Q( zE7oqx)#i(YMFDxFwI{bZ>EMs`7tI(OdU&f=f3Nh+oX4507O9#n_Iw5fX`5;LtsV|l zbstH|Krn{`~~5zd#O%4Tmlu#gSp9=chA}CmazHquD5svwuf=k^j$r5A!bFpYSBq zw%0~s>xkr+*ZO`tO030yT3ME8e?y*`*nK-b**PyJ_X!r9VleFJV|%SEQD--&&!)yMLSS9*TD!sPkSpaUW40UlydY=i?-74;@v@(-#(V>u{POo@&P_u@ zkG9v3t>&S}^#l9n#y4!H0rM<=;$5o@Uk;bVz4U(_8AAi9k3oIiZM|*w^ zf0T+0L&!^b0E!Hh2ZRMx*OlKbSJaj^b?Zn#b0BiXrJ!c;#dy@xY95x>lGPMLYAC)P zfC8pMb)c4>Uy}!=Dj6C+`71aYWYf4p6{AAP#*9l9OK(#j2OvW)e7cttzebniyEHLD;J9jo zAae57pI!xfOJmbPhc;e(ApQ6WO0CtPt}Ed1?u>_n$QLL5Fvm(YnuQ-VcRkjtpFHQa ztHKAP^?nK)Xam<@CAUwnIXB4QoE*!p_n*om_ZfipNF5$2Gv@Rwxk9kiG}iGy(cc|p ztD>*fH^XGyeNR3rWmSH%al4T)KS7Q+``T9+&2i;SndMgzV=*C7un|A{2iZ>6b0I5X z+IFVVx4xmsvlwb>QEv3cq=6ZpF%)q4(+YpCVmOk3ar8xMBVgy|z?C%ishu!EcxqZ2 z3v2J9#S8u@ND3m(WRrMjp5xE=Fy3f%1Rlf54SvkN6E^N-?vgzV9b+0+w4^o%p1wF;4Ani*5vNG~Hp}(~^$BXXF@- z#xksnd6^ncT(J4t1XLM33p@Q~riEpa1IU&Kgpx0h(sT0G`gt1D-qKhMMC0mU?TGW? zDzTSXJM%IuPF%5h*JRc9{@O&=V(T$_qpXHTrI~9Iy!o8M_x%==p&dEQDYrNKERA0uBx*L=jgigr<6EuicN(4=qb1!mK{ck? zZs7d1jiseGdDE#holvv&6)5tuBZdP}dj}nG=QW$PERxuJvts$fA}C(l-sb@iDu&Y3 z9W*?h7q*zJdXFiS_9IdTYb#zIaPW$)I@x4chAn&$KIp$UcBpEs{-Sc&iZ$Z19(s7k z1~oGlJd(jWh&9a>0=(crmbA<1Uem3EvPFXo5h6S_zZ*Tac&2)7)L4o+hf9LTUjav$ zWeyAaLTLBT;zAK+_;Ua1%hpSCJ)H_7DafXsRY#F4^fOxG$r7R@$|n1dLND+lf>Dw}qT z7rr=)46dnH$9$5~JzYgF`9%#>V(9PcjHE671N%?ey3EbThPMtlWuHH}0sZ z-o{1b^GPvZZWUFU^94hug$@bk(i<>=wrnLq+mB%cZV+crzs2w}eOBs1S>sKhIWDeA zX^*pE%2Nw3`Yc(VkqDY!s{})N-qEOLt6aLJ;Fc6OGyWk9JHvmGtyvZY?i-HDRJhb53m*PNJ@9u8ql-r_im2$Yz% zc}D{n#vTJ?e-#5^PqQ6n+z;4-4ra4F8QPm=fwGsvvI9kjLz&Zz_^~2foH>Mf+cl|O zl=^_Gt%)0T;s0Fo-w?0lN4-n2R(x`|105~eQuLnFS!f%kg=73DZ>Rafg)M~$gCM?OQH zJ~Qs;_cp=w-xJZKbrI=5%nxm#GBLzMg%0YB)lNDqV+y2a(k2cPhEZ2;yWPtcMoV_f zY*1Wi2aj87Xq?+NAVD$wIBE>Tc0!5+^-Ys5fS>UKBK&G`)GJx<`ZYS>b-I&3QLLqG?K+h zsDz)Jb6dYJgEhYnWiMVNaKlJnfPWr_*{@yNi5{kMM$Gt2Y>M$T)prS8Io1R-pF{iJ ziX9mM3MSFQnvJcXm|RFv_y{39jOEtw1BiCeIG43WIS!fQ2Gi-fs_aEY0tqijN&t7b zz6F{$$ufGV0IT@LGP#B)L{h2eu^j;8A!~dA69Gm$K*K9$NvA+?M@Ec_VY2samt9vp z4UAW_5_Bk>B9$zu|CwvMrQ|iY?_5(BiE;m#CU1XAxbpU=@$2%#?mW;%WbR^w*^5UR zhtQHNGU)E=;C2r!h7R(WeRPmT3pH*41=+iQ;^;hOu8`Hv9AAhL)H6i*q2?Dbf^#;A zIODA^xQ|{WLDrOkd4qf0NBc_WR7E*%XIuA`%~x+(&(`w(&v$qL0lo5sn-nW0W8>M8 z_m3p~X?g!FOILbRc?Uu&n-$Xhn`KINyU$wh2IVaeZ~+lUA5%#Ogc3il1PDdZOHv5! z^G_K4CA@B~C^1zYaTTV_$HxbawepM&@QWp){7(_V4<8bNMCc$4bP%R)dL}4+1PW=Y wgV0AI5OE0eAHETYhzbY^O#DW`2!%wV^nox>An)=d3<&VqSvel9wbd;#drL@bIdL z3R}o34ng7*R-|Vis%|jgY$#y;SFW-DjYCFVP`bHPTp%qzqvhrbj!)WNlC+MNczoon zwc-O24kFwM9Sg;MHk83xK^e^8RviKJ_JV5cRbDLxp=YY0=QEW8p_Gb*9FhMYr#Pyi zRa?!;R@z8PYJBW2ACpMR6h|$9S&T3)M`UCyN!)ir4vk2rBkg|DPGbK;l@b*~4dS&A z(BJo3#9P$h-2po41VbVXi~19?*8oXCd|pRSbeRs%a1_x4dI4@>2FUBDHFGZi9wVU` zVPXv|AMo%WM$;s5tY^8p))Oj5!Wn|a_+mMzk=9zB83h_qo>v91DCybXOja!`e)_|C z%XAGiOjiAL19Y6SwDth{PRKK4Jm1Z64;OVzMlqxDoQve95BNoaNiBIe`CY=4nH8g#MoqHcDdr=#N`HJE!U#sBKF^x0pH zo)beiA*4;-i6JvHq{^so8%Fq(W(3OFKRLJ2jVi)75~9cG5i){n3pBC#XFLcm7Tk6T zV(=#kKk={m-fLo6s~xWPlHalde7oxkU~kBM4ZiDB-(he@E9d{sl~Qq1{!;fn;8wU3 z2 z#e#vE6gHAw+2T`);YxlzC$bxXug0Xpk!%QHlHY~pJyYy{kn#Xcoa52Si66llljA)$ z;MGbSA3QNEHA`Xg(}1W`DcgZrJf1>l6dNL*7~=P9Au6Y&q>0)4lu0f@*+osl7tmC9 zPf<=68njuhUt;8|?OXq2;?7~qz38q`Ri4O@Ms~dYbb~M zmU)-n2W^Cui?h(mOpkvMe2Ax;_eMFjWIwhYE885tMAVvC#W#2~cUI{bG>EdqRp=}> zlw8%+Q1~wdjFb`LxAvBM-CUeG+fJG+zH@zflMQWR20fUQCzS}|?ylN*-5-91E_fMbS~_#v4bSqRzER$sx?*qu;_5 z0EpB~`#Prh_;`+{_y(7y%whYs({*&FrOZpQ7oCul^OG}2U8#F;%)Oo|8eJ73H?m}1 z>j-UA&LvQo#ER4-ccN&YZkjJ|*F^Jf=eQJjTY7GlvmH8HdEZo({VUP4#XZ8ZcILdD6b zTjuZ7?7?eE&*cv&cb@p;78+N+etL2u*6cnV5g^r#f?c}_#Y&HMuFzodHffh2k@uI> zcQ3!{83wKkrA_?xK`fn!-W|Aioc7y@W{G5eib|R9DVtLHrp@Wq$4(D4pZyVfpQXhU zjPiZeI$8EX+hOu5G?wWL6v8=;y|%z^{5WU$!uL=0!D8L0&F?WPTT&nvfCVTW<&Liw ztSUtxi&7(=#A zj`J|*7Kgvir`&k&e|>A|W}KKgdu@4;J@}xB>a~rH&6r?aGuX^EZAPHQaJ~FoIyohQ ze%z*QCXIi(-@5iql^jm)3$(#xGCY$g9B{4bD^C6O6Q2-0iJ7or=gZPIuU%1LU^=5S zfwvK+gtZu-ZH1O@xtJujA%P!x&D+4Gb1tv<*T|_)OU-$&drv?139%v-6)43mgL4Qg z^{s=!LhsA7<(>0>gHh5%L^i|D5oM5E~PP`ktKCGg>5ZWpFaKW71;*n#~UsNB}EjrR% z*idW3ees9oUB~L5JojaMyWvgrolwV(2zj~!g_sFI0apu(s(MD+?bQeOJ9iz z_-}WOA2QVok;J}s(dz>o(H$rL^;U*RfzLH7pOfKL3W5 z3oRdP7;B@nEeZ-zV_x4Dxbm+>slpyGMryFrH z4^!WJ7Wf1t9%-mL&aXNF#US|gvipvz^0hA#d@gcW^`v|4z>k`x#T&%G9GW#Il`t@@ z(S4Q8P)ieSXxrf46jj#|@b)8B+zj|z;X}CxwB(rTQv6UTnRVajDyq3ML_X2a(#!6! z-n1U^gRVcClQvH+2sglDGvifMk$n##$M%XRwZ>}AQwCO&r&N}T8#VO-a}eqMR{G<} z*6`S44apqPx`grJL|jHfzirAHn}9XtWC7&V^{y(pQChud$H! zE_%Kt;`kO;)pF`>C@LLqTN6dWraDQ&JT{Jy8t;40P4pHPOf1n5`^v&1@8C`&hXj>z zP2NIn9<97k%pmz?>pdADv~1vAc8FVSA$|!y{$mm8$lJU`xv_UWefUbVi&rh{-bVdn zgm*Ko*Ds}i$CQ5LW%yd=#ac}JG9A2qR~6CxB?lM4$Ru6mOOwo9i1~vNu+luVHQs1A z>o1{RO6-hy-kD8rgZ~ZK`;#;|}EkFW#f}_S{I#Zm>Q$i4|1E z{_IJv^Eib)d+{RP1=<2uDZl|hU`=0&i&YzU*S2XZ6ONT1jj*8=um0-n%+)f5y03vO z#_;i@Ug^OJ8%P+&-}UtOKJ3!OZ*-dzda`qj@EQ^7U~QVI{xNjqOiDpf0EaUh&l=#N z+zWZ%r*P?badJ9?g&y`X#&WgXo-N=Um2EMGt@v(lZg&24iEt(#G%Y!=0S5WGsP3;q z`0~smfB){+y}xWlv*SO7sQXxyvl-Lqi;Z*7Z*^Pqaw~Dvf4@T_?7DPej+#4;|I}vF z$t(5zemJ2ZJLQer(sOyiVaRr}vax2zA?s@W>)m(XNsrcR_H~8}MCh)gw^VvXY1E&# z8$$@MZ84W1h|Ga@0y)jZ%Gw(lZdN!rB{oG&b$`xZf91Rkz)63g`K^a+Q@4Z+d$j z_|7WqG&a1^{h|NGL%_|5`^|K#C1;Z(@d=))890RM3Y*KsCCFp8{d5y}M^1Be(j2&& zQUUs5Kx%KtUu@a#K{WdUlyp|$UG(*S6FLNUt4dr#RPSUq)Zja)J^H!lFhL>DF1Gw7 zleJ3Q{rqvT`xuuPuhiyQ@|2Y9D8OMUunV;CmLkjwXT`25>wTu)Ph_30nJRzEoeEc5;7a)@cR>OYrW z8qob)lnCGl6R{min2bxx%EANi2?%I@Jm&hen`yFz@Ex?zOka$&y!o^I=l45aR_Kbw z*7kXfFGXWJ0vKWZt~Bs~Xz}vbsE!|!y29lAIUp3#$!8pe4BOe71OPBbP^fG+FAdgQ zh?$YlVGs||rUf&7Ff*GmKOC143#4cIuoykaT!F~yHN(IcG<}3&wd~d3sr}$6HHUxz z#w`J~*(nRf{ngqChyai_C9FCfK^EY6%@EM)#QdrO7w!tW=x!yziBQ6@LkbFck4Nc5 z&kwiqUXC4H6o`OYh)kQBH@ZoC&F1-B21czKn)VIa7B*yKER3754Jahl7hb@`sjdTA zGLvDtKe{m#aHHFB_oDyk@5EXy%B^o~jJ6}s2%8gMeM z#x*f_Kd<^3?8T_W+o98T{aN$aykB(y8flGAA9lRAuJ&nq`56Y55aE+496jccb z-hgkmbvcAjz9Yw164vdJY_GvGZE{K9n|XTE*$#ll6=Q0Y$K-9fj{h<7knv4M^V2{o zn$xWBGp{leQS9xCz8JnFBnWIT$krg|n(+iIU#h8QS+*N!Vt^;;&{#<7R zA9-e0Jrd79MrjXaLdbYpCy+~b=@KEaD(4lwS?)m|`I8AK_!91lZ-$BecSP|_yK;V8 z+tWNKyItlRk$~Q44VQ(5b8GazR6zlxdIyELH77{68uDfwuwP-jLw{ldjEPCd)jQ2{ zPU`7|Jh6m@aTR2UoWe;QU0r)7iuU*hC3FZNPE4YMf*!fNiHm1<*E*V`xY%a}^8WNe z+45bW!E{aD^C|QOPN?|W@$#tt=y&`g9~mGZ^9qGmUtj-bYoh34I}|u4R?Oe{T<8=e zLfbX&t?t}6f^+@qwMER(5wU@poAOsH8x)gm2!@v7=! z+GtV#FsV&mL5-KfTYI-WB}=d?Q799@)^l`tTQODsJ%Hpx&LJ$-J)64 zvBkS^suy`fUDjVNxnNJ{ii!ZCGzDR>L+nr&i0YV6(RZ^vAFV6Yst0>PzG|(x^*48W ztH;``dy4MvkL*W$C`fwz^z{e;9~p$gk*l3USz_b!^B;`|_meC2D!?)i?NaIpzG%Yf zK<&W6jMmu-U&%@}3`J|a1SS7Ve+=e-sbAO-f$2^-R&$nC+fyl#u#A{`nv}1U$>i67 zP7zmo^i)o{NyJ%-$XG@?7Qn>B#2RIwO#8@a&0Dk^2NUj>P1A21??0!A_9r`PXlpRB z5P%CidTdJHC!`A*q3>`;NjuG{Ai8$7Lu%z4Oui_F{J^j$qXYk2j z)AuAFS|q70op-A^b#*odl|EZIoMUUkt0*JDHk`@G$bhqvXr{bTdRzY1?RN2#7E-Q7 zjkVYSg$bs4f zy&016v8(xe?YV3ZZGkg0%kF1PXYZZ}9JU~`{!TYHK*_v_NiX)|QYAHmG|q9fga35i z%x@R+QMj)8Z3y1~Ic9G>SGr!XSWcKutYBhDe%-}c0pDxmqJpL*J?@|9g>?;FT@`u= z*obzuqDP(-_WLNRpF~s5Y{San2jb%+8Y4VA!e4)lMJD}9&TDy&T_VcEC8S6gllJ(u z5noXkFM>m6MxrQt+BIl5J{pm&M92{nuB51_K9ID|;`uUka$=%559lt^#Ti*h8du}! z&)NP@<5!_(8#CC$ng&gPjv`|uKR zjOW56PhGNqWU?$X7XU*f|NAY3fuTOo=|I%S*H5W1K2he%^pD=+s~SZnrE$1U$zbkv z7N`}Y=RMRh#F$Au_Mh_9z63hP|A}F;oZrTG!6FDLvCR^;^ad9Ma$QUBPOMjEb1|9M zZ+iBdEAh~Jk{VLugc-<&*5&pKYF?CvZt7-gq~tr7?4>tpU_6kk=)5wFyT0G%|J2Jp wR|jybajQIM9uWQCp)vFu2T0GsZFdnOhjd@uJ2cA1T+aeDRJ4_=6yJpZ2YmywTL1t6 literal 5775 zcmeHLi8mWsw@>Sq@2lx*QB_m5rCOz`sF*s?NkcV=s;N}n(oiDipw-sY(gCTt)mFri zhzK`PRIgA%(v~C$af?VLW{nu*h40?)t+&?q)_Q-y%SzTdIcM*E_Wqr-&+qJ$dez~A z>`v94002Pt(nZ^A0Kj%P0AQQ`KP1IHnpWL80D!XVCEGL3Q3X>&A!UaGq5-p9_T#B! zpNB8b9=fycW0Fvw+W%gsTE*_cNydYnkKZY|8pR)$z3e8_Pg**&EBK=9*{_D(k5#Hb z7q#pZv#TGQ9`dkh?prf zrscwJv!lnYVA^7L{{QoTLBK~jB4I%{b;?DHgs0>A`@b?-9yk33cXP+E;*QcO>Rsj5$EvHrd8g<%tre2H@3zM7jw4s6XE$Rlfhi zta+ux=m=qZbmz^4qCbGQN?#gZgKZfDCSC@P6!=M1bYC!Kt;O$@X1=MQ*pU0L2qtd_ zBJ)e#xCMbnHdrby4U&FU{%KfZ$~4dY+cDL(SKk(ZKdYt}r3-sn9z4(QybsOR>xHmg z4SGJdF_u*eKSCUvl2L7sHXTd6=%N0k_+GgV)B-Dk*iQ+1oZSDbHB-eGV0JVf@}~ z3LkzQf0F0AFn9aSy{ZhK$YCIk=>pErwOg0h5o{K(%6Em zJ(&cTRDw+P`5*0u>wK-uSn)I?bvLX}e)bdkmvQT)$v(HrS`j1IwfUA?z0C_(ylPmTJ%o+@FlC2rI!ldtt9^mA0U<+M4r*D__~h)2x?1H zw>foKsgZbgp$!;_|q4M~oddXnx#P37cxUov%I*v>q;Qe~r$+kd2B z{t;fW#y%o>4n%_RyR3pKfS|{v@#xIZ6Dqky=m-atJF~Zn)p(?K$~QO3#4lg%a~Ih6 zB6%>~sOx&(3%CI&bHX;b9Nujg-EeZR3?Vnx13&m)*!r!-_n4oWGpNe=+qlF|&hT4J zsCOhW80EnX0)wm4zwh+7cB4CJzr=QZt9Md?a zHxo_3;wfd$zTO8`^>IMw)Swx5F_Laq7~-%);5p`G`@ldRB!mCUPqE|Y$4NaQJ<6pv z;3mscS5}17021X_pu(Wf``g3FvH@{lYpT7?t;Qj8-o-^(hGS{E1oIF$P-{L>y3Nzj#gK z-u(`&#GgAneECg9Qc%7?l>+=Zw`Ss*oRw)qhMIYjSbKvP`s=gwT`V zNbippV{yq%yh+$SOIr}99RziKGc2&ur-IbJU|5jZ*C{7jOm8HZ-< zdCH85d@S(3B;|con=8 zIg*Fa3}`gBM1d<{fdbny^f7EhH|Huu4p#l6{jQW7tcU!|vRdS?Tf@CpO?i38@P^=u zfPUbWHwN=#+0W~{5qoa?@w1X{L3`H$M~6+M04n>7wSNIzoGh_frvxQ?NdXcseQntexYz}d z251>=(st`6Meo`q?!P+CRCfR_UXc=yl-BXP?7vfA(hN7xh!Wt#&QYrdOqiAMP#X9hJo-x|6L-`W(kzF1l8kAVDc@z^iQ1~71FHN7z{5kf=IDDv_6}q3!k7LRj(Q>X zQbFT9Nf(N~1#CxYNWb;j0BJ9RnN-juPRqLxLNk!AAi0Q7_pzozu53M9$!stNGDVZ< zah{Y`mMzT-uiI%pDbJb5gsE5Vy<^;5K7F@V#jWxCN@Q@YL&8tea7Ids<_3@1fm|4- zt=rq$4umh@oD#473;q$1|3=4mcA$f zUwta3rsa~17>89y;s+=u$;1h2BkN{XRzC3V4=|%WcZoFg5EMkgB@u!_em|DR2A&@c z@4wT9D~b(HnE8}o=ABN=>r&I7qxX&XB*GW;c+_j@5~uSinx`9$B0spo2?JE-=HevH zK-x8==i_1Om8ln(?|giTDoP6qX|j%=o#HCDNo5T0!+Ma^XJS`lN18DW!1(2^^w5r{ zOhQ^hJmu+JQiu(6A}oHzETN&kiNafHsV`0sL2OK%3KyMKOZd}xPCnD7ClC?8K`w43 zn0XJc2*C_+6+g`};Y9va%^goNfA(nz5QvV+yNlY-*JEpfc<6jAJ!1G>1^LyaY&F%g zm>D_R0pS+^zCMb(n4c5Z6Yat=p3Dy>p_%rI`TD2{PF`3fW(o*Lq#pNeq&PwiqQ|5D zS$;%l|4?BFiZWs>WJZemKNZ^>^@;Ct`bfw^5i+3VS?(((8cg&ej6?5jb#aq(Wh>qIkSQK+4 z_;&&3R9yQ|?1E0`)Ot!;w|rr9wc!TG*zmmVWJ5u_AFW|(&FJgoWza-Qw-NW9tuX3Vk~^CJGcroP>_0O68MN;h|y zv!ECB#GBylQ5VunFEIqV?QJz3mUW9fFTC%Fu(qCmpFGOJS}O0+1SV+3Pl=>P1DdV( z7$$IV=L1UU#^26y4b|MJCGB@qSKXR7VKgGR#?)_2WH2s@!WoY?F)!-z6YiRur?|ZR+mYqrykyr-Lw* zn6%YEtFWCg)mEcjcljRC-0j#x zmJkDs7@tI(lf$${RQnP}K3XxLH!6jFQd*#=P>ZKfM8#&-2~l_Hs9z7b(wHl)Q<}qO z0Y{TZv*TXH4Xahof3|Nrdd4#|&9cyR;&1EiUf|Y~{Jd{L zA(shRF8rlgf2{WsEI*u}?Zv;#3H$I8MeA;He}=@qK~}}il=}rx*+Nl+=5nxYE3J5G zTC+ZtZlPn=xDdnY6OPI%p`5v?yLCstEKB3?c;nQVPMpVuP;aanqXHT?%o^UUfMpw& zmvLKDcPC+yLMMbLd0ndblrSvo{VS}C$KH;KC0#SAikFsR0tgWw{*8uFAcbM!qHvQH zHRaWs%_hR^oD|7|QK3dd^WyK%0-G3L+RrVIFHdrPs#foOB;j+!sS`BgIH&U@1rgF& z7d>}OfX>lHQaJOA(a{Osgz^d{TwIf@t#$i_<=e|m=5DYww6$#1d@oo*VO8=>*z&K@ zb0&wxX`#8)^(X%Tl6I__yC`ha=EvLXD#d|aKM#=)wrik2@entu4 zOqZ?IR@MyZY~LICxY(g!NUf4YRRYL#qoh$UX~A;JfH8gK==(vnN`mj#mcaQ-@_-)$ zCFXACYKBPigAdlj)3I-5)VFCt%++-BTT|kIcEs^#p#M#y@sXW3mdAMmT;voeM_0D7pxiG{#7FBO)qiF*hqocw}079ef#g0pCPPz zER5)3fXshuiRz=M>2J0vobkgny}YDDn_iT>I`uzV;!&|e(J3=2`%TF(qGf24;7@dN zMEX0e&Hu|a9*Sg6XhVVXu;rFz!%jOV4~_1Y7h8%3js^KihyH_+V7Z*Fsl%d2#0jOJ zNIV?zSgg;sYYLIeIh;1);p-4U3M0nFh%rXTjg)?Fn`VR@0ip#D~~$J#yXEU*IfVcp zbJTHyaHsIwZP>+ zam!reLXtk&P-$sss9=*+uAD8TylmOI=72XRn(kL|`?cjTjEo=yPG=F(XqZFoQ!LQG zQA2nJ@T=aOmCUeFASjH=q=H^apZP!Lk1`yMA4yfHzQ2HJCwqcvFVciDsQ&2E4s)vFA?BF0~0^Hw%)zxvdk*`*5$tihyfeWue zI#@LW$k;_rTnhyH(9O=x$*F?rqe#eoNDvv(J4zo40=;}itjx(NDvrTg6?}tTO4usB6|x-?-VGz;+n)>gs5QyIU{B#8!7=b z$i+ptZeoYEpeh^S1_tNspr9NBo@Mn8s!4VX0RaJu%Wr$>R=r)PZ)n?^sx?6~*=g2f z`F`L>`3rkZQv-#hBTp7CGbx{b#RC46{|I)PHxVRgLd*E?t?7;}%yMJ57aUi6UJh$g z&`m4qOVI{V*5L?E1lgyHEQG|xb*WI(VHMahx=Ml2H?JE;L4|g!@7MI7NrxjR&6d*d z+uWnK<5o_I_j!R0getQCqQec&@1%UK7R-6}6DIIyd3+r5XC|674GUw3GE*0_Obxz$ z<1HwwTC>qAXLk-KughO=q`f;4J!?yrf2r0q8CYO4$r>goOE52G+2Xec>C>u^=Q;S9 zrNfDQ-Tz8BbXReXr1w>R9DAW<#U(QO=!rsWuSh8g8_>6nQcnD0H{0j<-XM{?vaJn_ zk5g&R%#sq6-+oc&^e(zBzrX}kA#Vp&_bQBt{=7T!{-JH)Og6EWk5TkDCxt6VdfMy5 z$h{WQ#WJ!c8kEDx!UK!fQ3avasyg+5`Q@lQ%^to-#0GS2qqG9s*s280?7nblQc|l1 zkE~NA%t)Un_zEW;8L5XSvJ*7!zZ;`8phl2WcaWDxoH&0&y{JzN4AjV-M4wZmpC%8P>0FEU^%6kmg%MKS;TK6x54sjp_}Yo7Rs-d74BQ21l4Px!fJc| zQxVQ3dcgQgiNe@xBAF@i2$}}eCp{f(k>@Fjf}3ppK^IsA*Voro>;%j#UlZ&YLfF~K z33>tCgCZ5pBl}L-?MnCIu)P4?*BEKp)+HHq4#qf(4ak zT4%RfFqFruVHR^o22GQgbK{?ST54;U%7m|SB(*nU=um z2+TI0PpF3%oD_(60X>fdo!0t?X0Vt8lKfTV0~UD4&p6`Al82*z@ar@CLV-N~sV?0omSn7t2rN=Oezhx6L{iu&<#&cm zi#@c^@S)j<6Jl#*MsUB|Sz&t;N9uI#YuZFA7eKJP2SHT_GvlQc%{UX>$yc0-3-fyL zXj(E-z9~H^zti)AP!+2~{EpMS@o7w7l0ZTjy>p!YQ5_FgWk5Be=>_b#m1Le7Ej?6T zKI6MdiGq+f zd#9mXi!m z!T<5{BPDeP2{g2Vr7{9+oB^_FZ|?KPS8V4`B>SYfzl!(xA-9e2XQ8I zX7bv4p2N@}n7Epz`SJ<4$nTR5p52?l)oC^Ngm0C9;JW ze03EwetJWkhXHr^pmOtFu}qDGa~7neq-!MK3DIUmSisS*U)E-dDNT)yjiYnp`0PGK z@JSi*E5g(3A*)PzKU4e)hDbVG<1dC)9G0qr6jr3E4KTw1ydGS|N}4QTh|zLG)t`-$ zx)EP+!wO<@-T$}}`!KCLi{Jwj1*z%_w~F7zv1!lJlruCtoGJE+XpdW$etw}jHlTX8 z`ywXx!|ypc8dDZwV0L1=qfOzIOZx$9x2)HNP));}srL1Ti_b5%y>r36#an5QSH8XR zHE4g{9;$k$y!Ldxf=gHe5Y(Ex#IbmNsUR$W)5+)5B0sP^3deWfn8gapAriEFJ^Qhs zuA6dyAZ(Xrdw`H{P3sYxo!kycj5CdJs8?~>SK3vj0zi83JK4zHT4YMp+oNK>ph+VB=xnQa z^9>hf#y~ukPL;XU36sV)D7*5yOa?5%c$i2bG4Cd&mxo28t0R@*M4>V0}iXssQ28{hOh#+C4i!`Tk)qwmr_vB3e@AF-** zm2k;N#6GX!}g5{^$qPMpsf zFsrSlW&f&L4X&2&fl1}TIN{YOJfK@mB{=DQwc*GEjitX>ae!Yiv7jEwyS`OE?wYlE-hcUfdtx zuhmjk`|Vw9g)`K$#g3?Df8cFQRheJGeF-K{lb&VO-u_LleBmJvQxq4a{gdU1;KOg& zJlTzU5nan^^q-RuZ9>54B=T3wPKo5^_nGla|HhmZ4H$2A(648>yww0q;?gfPK||0s zP>?o!);WaIjC>-Flu+%B0sFDY`s{&n zC0%|7)jCa6*CIXZ8pdWbJ#Oi$OCiz^GNg6*R>n>culm`^_xbe1mZZ*feV7gt=J9+>Bv1(6^A#=AGK z4VMm8EamX(Zm$mtb~8bJ^KXKYSeEZ7Pj{CwD4k6;NEyzZy85|wA3=Ag-n_A|nXf*+ zh=J^uOFqgPnyEg9F5JvLcd;w;85!QjNOx%xGK0`e>L#}ayjPF6ULVfF0~-$Rqx0c# zG9Ulnai!ZuCz9~ZjUN{Rl7QmTjj(;ooHuQg)vk=$Hgtk5{sdJrvg;pjnY-(`5GOAS zH+%1{D!|87lNrJBGU~gugHrRus7<1j#I_@j7Wfl4q6iQb4!?w(Go;;F_qUE9ZIAMt zi5-%am1@24dmmRUEx-`|$c4mSFw_Rmr0f-U_D^#8&11~sE$Q35EdIa+#AIcqgcuQ3 zK~x5os&$mBbd=H-j3f8%+q(wh)AbAs>x`a<<9wX^8Ufjao0}XDd_zXtt_uXp9@R22 zv_y2|tN%i;H-C9SXh6M$f*wwQuc$9CTubI8M}!~q_MMtMbyKq}_pz9Q)eXFAQ%+7I znTx^~3(5D;whTIG3TnZsu+WEqJKF98qKkwU1U=T3ykB7rVwfac=j%Kw@DgLdVI!(| z_69PnJDH5~FAO;zE zb8%~h-#z8ZBWPjwR^1)$&4pm|vRv?q8H?gts(*jQr1LX)Jo{d=C#$cxWQbea3IJpV zxSbc`q?TZE+Pf#?am(0jDH>tPQ|~2{k(5u_0vYa7F-*2{YlS!p)wOlr+;$yG;9*R1HB1pSwXV%cW{#PY*})AJ-qtyN1;XtU*eRlY2ijd=C56w&KCF^6aDG zrJ?s6O*sv*_EvU1k}{TI-#i zn#syyRYqA^q31GE6Z^=SohP@J6R{`fXq5H-MeJFfKk@q>WWrA-qnuJ`C&JTNq50$! zHQ0n~No_Pt!xLKe-Q8$f?I$-fjY12`fl@kD^S4GOiR!?!CT26o_SP)j`d-x+J8=QO zsCnHNskU>J z-GY5#we-r3@LKD5dG!p+ak}B@G%P^wWD15vpR?90&#yMJ?)2(H;=}e$2 z)SJ9T6!gu`1$NfuG7SKG@>k56WstEkM=C@hQ9!iNY7DOfYyk$zn+QJIcrNuzK;a#S zZ38xcJklEnS#2-WD#X^g5B9TEULBb{d99anp77Cc#$SWtfLMF0PZS|nJ+O{~7C_I^ z^OJQ`>@*UM6W}qFxL8m+C34k=PPbR3{Hs-GhtV_vQ$;0-v-%ya{_p&D@i()#%khDq zmuFshWnjJjx3b4ZOYM%n?}nR(qb?sela7xHa_c3zX4HSMKOA&-Xzsow_SSTNhW_nesOvE1PT^mLXj7DE-8x8;{v`d z$joar8r^AA+3r|N+noLMXPcV2WJ?*cDh!EUl~bFYY8f{XW!ie^pd}Yv+Zws;OrFCO zJ_%zB0odQBkAm~rpG~}Fc(C}5!%bE*@nC0ZUF)fOo!$P`$pR2`ILd7Q^{a@iM3!h< z$0jaNQ|6IcgLD+aEQ^2)rx95KK6dcS#dBp-m$vgQR`L2e+8Wl~YjEkR@8i-GyNUUK zJJr;G~Vufal5=BrpCnwhZRkMUphw2vgiQ9L5@s~zMO3t6)67vFW+m~EutTlD3cb$xXRDXLdr==dZ`*?cl> z(R>1%IJmr44L7dcf{Z|jNyuLG$b*5Pn5?GRmuj}Q%Pa>Zh(@(1A;>E#lIQ*3$+@Q=6HaL^SDV~qyt-KT836Yh`0P(e*ToQ|iN!vNq0*O_?;Xku zcoLjT(&DL0Fm@R}wRJt|fW_Xx0;E7DJM=x%wdQr*=H_ah9?Hn1XQr?Qt$xF#1^D8- zna4qUM{Y=<4VG;o7FrSqHi;{B&4tfr@>c?5$+kqWD;I;KUc1EvNkk$bM_U<$=O& z`kCMu7$2qc zj;s->dxP^@_iuw)WGh!1v-+NHU*{T>92_0ojUz~)zh;qz;=YrE;4a8c*)gx_li9r@ zd%JhmuOJVfo~~4HtE1Bh%`TMk$m37U2;;ESa6SH7WQ60i zf4%}|9yH0N=B!vR;Om1^m_P%gJt*x439cJsqcCV$@rzC_`#?_-xUvLaa!|O`EX!#E zflLmM4kFX{easALvQxpo|8_^szt)}pP)C|u{6Va_H0K|iSPX%&Eh8cvBmWmKSlft- z3II(12A64|f5;!-m`nNZx{8?*Y#^*S@@_@dA23#?Z@u99XL=_SY0j5+7)ZRK!N(6A zNV1EF=&jH$EB}G0|2zJ_2&^Rk>H2RLwUxz(WDF3a$$SIk7!%tA)Z34N<3_*0z~7-5 z8;_pmm;S+ra%PHuf;SSz-}dPFRuNN;8lJy@2b`mxch)%VCG)|Rx{)-F+hX4k!Tmkja|K#%B=Vo>B?C>te tXBRYr!AOAie`x&pFB%g6_UA9(wT83jeV-mx#{9_uG*xv$<;vC}{{eW9LRWygh)#y7*G*1N>z{;s^|a; z7=!>Jfe;0$p-GDnAPQ0gL?DzTl<%seZ+vgP_pNWO_vd$4va;6A-uvwH`~A*7_wIB1 zjO7XO&9a*T01!X<`%!BE5V-{a8`Q)$fp=0fuy+AKe*4LzN6uYMn;vj!aP!29e()@F zyzor<*ZdrnEwF&Iow|qi^q6_OTA&gUiE>4|ykBB$US&%k!zf$Nnr$75{7K{2_6prI zd!##3&!Gnf-W=VQA}hQ7Z9?}FivcFywIHz}z_t9==-Oo@-;JP5E z(@$kcB@v}E7@(vC9BkXF3;>7E$eIDb^@sABn-4p>NaHpDnir#_0ASZ%ty@4d9CLQ3 zG>g~%S8W+lPw#i-)7)%G?%12$u z^>dh3+Pfy~HOlLq_x8l@3feuE;ohY&HI`J;B6weHjk%c<=jHC{pF{JNC zN(Caz1C(6iv?JY)X^9Oq&^#LjkzsAOFYF69GznVYo@gLfcE(c#N!@Cp+$`g!a>d41 z_Eo<#ivn??#A|rULN{e^yEPpHy3Ks=0xzMWQ3KOW)ne7%!?XAt& z6D=KHbcxM-e}AH*+g{u_txh{~V@YD{+egi^HT`nL{(6W?ikU&S%&nFwpSBLxm{bp? zxRnE;-%}Z@Bl{~SNX1^vDo1WHw5nAo6FFvoXRK%N-R~ykgk-OcGSMnZE$#TZ2hMc< z{iKflLO-n>nVRBOh)4SI4;EI={JJOwZj|=vhPW-=V(MBSVlK^SU7^Gyo11qQ>$L20 zZRb6f5%h8W42Wq$LS9C8r%ZKTtUdhU+z)XeoNgy}J6x_yxbfhSo2%@Ry34lgGj=n| zGgaL75>C#QME_Fkr3XYrzf^L3)&WRRv{FL()tG7in6o95{Tv^inO=y8yp7gaQKL;$ zT{2hU>XbZ1gGzL`HRkDz%B?i-jrILcRVJFB z;>P@T)iK4Yk)5+U1}56IA`s?{ zih_t}lJHVg!d=b%Zyv>=8UiwJFtFDuntbs|_l_r2mJC1&NP7G6)(bJ0B!>Hfu&_n7 zQV%iiN4&>>b-DV!Nn0PSNBhv=tZp!z6YL-Le5V(?R4)US>SQAN<8d#xgu8n9grctr zb`G9PiiE|7UjV7DH@B{ZUpj>+r&5K%Su$y%mWSEYak-xE%f=&vmy7recc&3TwG$@! zJaT94CPaQjhN1}s^3cNM%_01j<|I#p^@aUyp&}me#dKWIXjjd|IE>upw+o5Cu#%7c zq$Z72a);!>I3hz1F zH~v7nO+h~I^q?*t0zaktGi&qli+**Jyhf60wl8U3nR7BPEiS0s1H=f(CyU@@*ZE;OCh_N~XX8ik};6W`9oEyq09%wW+x@n$$zK!0a&Y1iSp9y_a(@(gjs#m zN?e}lFW#GE%rmhyDwMn*n!TNlX(XL)(+t((zo4DS!J^w$vwPu}GGPIUPE14g3M1)W z?~!7+s9mn&9-DJjgO`>|b)XMsm#+>V5=`ZqLU?*!<2IRmH+_uw!E$9m6m@~R6zl0k z;i-}A{QvMcn4OeCcUa-zKT^;%)c?XlF(GKyy=52WwOHJXi9}CEORIKo?_i90 z%0;6}NJ4Cpc0{O-yCIPbV_I@;-jsMc8bFt;ciW??{PR{O3t?yZtNp7(V|4TNU~A|b zWoga^KyWeKFBTl$Hh6YlifT4CC>#>bZ!06% z7W6&z5H<7!H|Oyfnd(u&l$>s3bSB+CLmBiOk*QY3B#T6|_o7!sHJmeEUr2k$(nV*F zUzeua4GttB;R7^YI$_ufDB+f$V!p@l0h3)Ss+Fb_E z&?_7mxnG5Y2#tYO;dm6k6b`6CZHWH6d_S^~RpA^GRJ4Mpv8WZ7o z2=~{4CLf>Y51vj5r5jW@1E>OMKeLM2yCCSpY%SB_Nm$()>o~(H8JsOd4+NwZkf#qx zls*%6B4eqW1T%7zqeG-teCz?Hf3Ul4TQO3i`05!3-orw=LO*#CXGMDeuG$u){+sC? z@26ATFr{{+%i{%p{hk%E0M_z;!CSLHC&djc)qsx+adXb zXA3HLRZqMbhcmIzM9hHD`Q+1~$BF?8_V`JjTA=tlu7as%dhipZJnMW=8LYeZhF_oj z4#t!D`9d1z=^|zl{z}3_6!$=!#fS6^*AJQsm$-w=gS=Hw#S0-q1G0YD)M}}pJvszd zKwi;e6_A(tCR}7^J)Fg|MLbqkBx{&1clXjO^pK0yky|D-On5Jw)>)C$PQexKZR_ei z6@KYGzO;Nl^3+06BZd_=xWqR&Uj}R9#&7lgqv{gO`08w|OnIaV2i(IckS&mQJ!YKm z?J7*NBlIfxa09N`rrNESy3>1kt%U;q9D)OXdn4tg@%oBsx>{L>%j)rPPSfvvX}BdL zk5p;V1E~{MOkf0IMtx3$xhC_Cy>yn}Ca}UzJw5;aas${#3kzGvCSi~?o(yhImteKO*DFuJle%CYo@ zC}I=&AeIxJ+h`RYIDRR{EM2C$EV+Aeu4=v6H8z|dH@lWh&m3N+Iyu|hcO8I4+735h zE8x^hcSfuGHH2DWYrp`zB{{KXZc+`6pWzP8rO0oCE=6Vh;8Z|zEIYB7Qt)Wo{_wSn zal;tFHJVL3b;fZK<{m^Cn$$y#QgLWIY-zTSBPV%%>haib6y1oC%`vChI5U0T=IiP~ zU=?q~6RY+aW7n)Pf|YEn^u0!Rr{L6=W_aV%(~@NlX|H_^CA|wsH(tz)3o2h0*FsO= z)2+mS)Nv}(;l4}gLPx*1_egJPT3zXFA|{z4Q*GhFCeq*KQ8IlyRO3fZrKcQur~!jS zU<*aB4`?4{pILF5<+`u4&k=`xd^$7Sd!*DeDjm>oqZO8^mV8j~Z#YrC$sSVUeeF0u z30fFX=iX42wZb*P9!t0BirQ(Ngt|J(McRH8 zPHirNbt728vD0gQ6)P4Q8d$}BRIlEw$FA&Fs7B%R2$ddk0Q^Dm1zy5Qs=o6x{I&Oe zkoN{eT?C8NEL-iVWNaG3L@>E5Iq!ga2BX0}0y~v{qN84E1%(0cLj;tx)R(4we4vod ze@&ZP3tzdgw(E&goU%J?!fT&IE7*v zwL-Gj<}IJo`5V0uJo5z0p4l?%L)+>K$3lt2`{ar}38~6zI~*1Ora}WLKEn#B_W1ST zo@W(}Z%h_jcTd!j>ASO&IV^TO>{uf5Na3P@t`uZ3n> zc%9gKeIbA=7a-4k1U}kiZ^;Wiv2T+WSWLo~+m*7DtOd&vZ1rRaT6meym}#c27ak-J z&ea{LOR(!_H=E$Guo8oCqrrL+EAj5AI+a^KMOqB&8$*p`j2>w9CNP= z`0W?|D07gsps6CcQXY9XCO#e9cu#AUKWX%JPZYi_6?+~E1_g_ir9=V!2mKVI55v!6 z6{c>=r@oZ0-v|Wxj%-y9A%rdWHHF)>=`fu-`-+`06X2{);UpA%5CqsWG^i)$HjN?_&1F5V^&JIk(S5QnG_{biZ(9bvr$X)@n*f577i>>c+Q51(71#d$h7z({ z%F^^2qM^5TH+`OXR*jUu;AhyQJmbseO!;D63AZ`L+tdn&dra4A?C_3zs^^&)v@4C1 z%yOe4;{Bf>V9raCNUZ1cLobLOQgP;#yR5Q9zn0beu30Nww#(-Rqi9t{u$QFC@3atc zq5k~%aE>8OI}&&imdLBiwrVu5t+y=cU1@2Nn!!$OY>zmkeJk>jHz%OkRWD`-fFeXU z#hiInV?0q8WPn(W9)W|e7u$iIJwGp{mAj80dj2*`nE7NS%>R$^GOb8k@$9i9gUQCf zO-}mcRy0nv;^>&NIUy3uxId9wSf#l{OZB7bgTk`0GS){|2-kVE*m^x)V8zv`y8dNz zmBhh1Q{Hgx^OQ;^c1_guq-qP@N-Yl)-n)o8;iqREN|U_yAr89^c@_Gyc*&;_vTM(n zR9tJ>n0N}T*`8?OlI1;bj~30p?QY@TZE1h07d7pA!i!ZO02i9+;cPVHs zGLNvRMyBMadG&Q1$sv%3gdD%L0OWF0-vd6!CS>c#@gUpBZ%XHeVMZuVOXIY-!C>K( z(6zxGMnoE<=V;|BTGq$0i%1q(bx$%3xT+r~XdL4f8oiV~Y5X*PQ;`pWF*v4kTdM7S z#&&Ydl3tF2&MV6rby{zHNUrY_`cF&*klMV02&{0&#q_|O)1jv;!dki2S&yJs?h*!q zhB)!!m~jsx=h^&;e5duD<)?+>QecJOIuJON%;Pa7a+0huGyHXP)$E{}yKH2zLNo&_ z@C{|JPn&|z;TVBtvdTf+=);rqcD)jdX*ej1r^Kd$Wr0Xr zR3NPvhL*op!6}Zm^L|d5a$v4*2|G2dL@b4eFsd>yh&Yt($K8=2SY;Ze#wpNOc4jUM zT%Q*BJ-%n1qO%`-6dm#5cMS|6|+Rxhu(~gxG!HsC&D)C`KW^<5l&;#rD z>o|JBLxbnZjO-01P$NrH(S^Z`&qOmdbFDHgK7KnVw9`!}VNBdLW}Ujk6q;9m|TBXI=m3w{VUN&!X^c5 zEA_b~jvz>ZVg%AuLc5CiMTKCG4UDx3W84z>UNI^C9Uyg@KYyAb&|7bRmmNchN=WKh zjJ@;k$stJJq%p0T<(YJ zGvQHJaB8XI8-a_J&59jhxta0W1Y9IC&;&`P|A56a%OF z`4a)A@v-Nsk2~|1m937~UuH62UArH4e{R2fh<&lLjj;RDtv&bUp7{BePknRusQ(-+ z_@nj+CZHrH$_(RkZi2G;{HYZ34{uXkts_v@lfI^iHZ;V2>hX_B<$bv}J!@6|Y9W!5 z4&D1DguHfJI@Dn$_ir&nX5_0`GtId+_rJ!hX!-a4hPX3-f#a_4g_6kn5-FhF2rZHI zC4)TKT*Zb<|H#N^y<7j*U(--y904`+b+8DJf6DwDz`h3D^z5I|{rb<5{BNoFnuJfg z&$m!N`Qjs6Vp+8usbSG6cL&+@HLZ$F$$r$>>%XJx>h|xG`v%r;V9B^PyTv7CN7k+{ zu&Z&yOwQZ_QO^HwpbVbM0RGMC(67_Ut9$yN2>Vxgd^z&@8bP)s<~k%k=+b zHu*x33S#m+`g4~bT&-UQ{3y{+hgcFa-~aE2RjZ~`dyncW&KkrrA$BkE90+ z(750lm(ksh($!xwToTg4K0KBU0?W7_w1#90g6W`{0b;UeoW^`nQpQaLLY0R!bFuK* zo;}w`x=Fj3ti5c0{~3;T6fDqGae0je05~id6qC`v1u+&H`mh0 zj5>q?$9I;H_n%bgtR5&z-Q!y5OMtylR8;GgM?Hjj6N~ZxyGr4Y7`;y|k1Kt|yOO+B zn<6E*$%OEAI`JoDe|fM4WoVX8DJU+^M1Hl-_uzCqlX&hc!0i8|O6=uPdO{WYV#+fC z=$>3VslfQFF)rI~7m|^L;mA+8j?H>dhe0k(353@};tCw3KwYaIExv8ejOoS2NOHwR zT0hxgumQE6p5ET-Yt*xhXj>DSpy#ZWmjRr2K{oJ>*z&i9fAN3nTxMp6ATMk-Cruqjjk108pOiqfAwQ`Du(g`rB|3gQobS7r;s#As2%AJra#q;Wx@ zJUh!#F_Ht}f(tU1x6D%+bSc8bFVer^NK;ToTFDz2ggs-fCKB!pxR->YWXE@WQHQ^i zo9jv!*}8~@k&m7rqa2?8O4h;|^)Zhs-&V^9zoJqefr_@HNytt%q2PvViArZQd@y0xDTr1Ut<-HsQv<#D=6~pSv>0Db1g8 zLj6fFrqN1@T84q z2a0HUbAlTFfrS|mo0W-SUar^^e$9WR3V33y7n=QlwXh-go+Wl$n@;*OT39RyB&kWB z_?h4FaUHiel~yyYjdAYl`kap$|o$?QEw&V!rR&;WqmCR>dM2C$XMxRl45H@7=;=)W+UOt(q7H$ zQ*WQE#0RY&pEuYz7Z-O56Js)Ms=iztW?V~=sXP>*{>pu?b47T(uCGo%WniO^tK<8{ zujt%uWM=2GI6saNsY(?|$=gbh?dnid znus%1iBmCkR3S8ZlHGUq`jgoUfwR^Ar+|tkp`pLyd;)^ZSTuk3He#QktBeP;wly+Y zSnF>Unrtlb&CQbZ=tKtnsrLD&i^%oWG>$t9`j@(y_HQah$rp9ALA>VKYcU1*ptyv% zh5>RCJ^C${Cs|tm81viF(j~g7dQZ}*sHnIfZ|KHNwE0%Q$hDGfq4VV45EnYTEXq?& z_$uB-xktbo^YC%#?43#C3J=K*QJKKEY1(*9;G~zZ$dhAhwLDz|gdmPZ6J?l-w)_>A zk&~(XqV3R3=wZ@_xXR{~3-WOqdt)7;L%_4>BCD(gz7{wn5cP2v^ z+FVJs$xABRlU(1QiIo;InltE?lzRM?56q7H$TeE|lTw7(W^(20{i;5L88Js`;f*;n z5-h&G@mjRj%a@a!(~RX@$RRDuK#Aiy;S~hE=!~7cu?46ZYh32OHNoSrOdiIZr6q(x z%$_NkYL#7Q#v;Nrjem8gxQ7Sm(%(vZ4?OkgX-#lALBAfSt-4?(a zm8NWSz?gW4WhZKcSPEleM^0#qGbLgn4hz0;%-Y7WjHsq#2&W6+aFXF<_3f1XqxWq) zU}0^n*2zBA(c0LPaSbZES<3ubh5N>csyl5@I7_Ra1kX=u*tM90gF_TdHT|2gYEM&Q zd%=)7oa-Y=nf-o6Gmgz(+Zn@N>!CZljd#HDWYV+JjuqFFjk%H692OU!1m(!v6Viin zT3(&4;Dn73cb-|w1>T)XXI1K`7)LOj?a?V;g6hd zQHz9};@F-(H&!RVJJUBH^!=QU*&C4IsIx^x4SQTOy0E^YT|oI-E0sNuXNJeeyu#Ge z>+m1tH}#QeY4n)4T*>dgaSyM7&(b@+rQ)AZQi66?)_?x|kSP`eK&|1buzL-W_V&e{ zGsGlK{q=tPWkRJYykJ2Naz3~x)Wr98J$^K@_2b-3qJ+j=6zp~dw7z-YxmB^eQfP|@ zB4uS2E_IZP@k5dypP|fnZ8o}9t(OiVt44Cc6W-^OwWZE-F^Q=ITmFX+f`Yv&g+F+T zhwWL?YS`H>Y+2r|+;4>7KwF9t$?EM1CrJWN08%2E8&i9c=l^Bn7gPFIJ~|q#a3a^G+tzrfi;Hgx*~kHZ4H&z##-8lbL8Hf zrAqHzkCPoi=w(N6q7qT=f2a2DsnGaYohsz+ZT(qxua^Q0kQbFbW-3r3u&>i}Pbw&g ztt#-V5tXL`mEH*I^4GO(OZ|P2r67E}_N^Q3U?aIoTdR&-P*6LOo+;0O5pUj`eVLe_ zcn9M7;Hv84zevyB0Moi~d=N*H8o(`bi?=9;G)V8**w}z}WQO4-MmW=`j`v9)yiP`1 zp2im!4__g6;aL|H(fH5PGhtSAl21fdh-nLx)qyay6zwlCwEeA%Qe1eR0(ub$mcC;5LK3P*!VM)>7e%s??>Vu8?l&aRpOP>1Ea^Y+g z(Mk)W`|3#sTv?rMGXDu6u+5X!R@KOB|fFcrLU+;T<9yV59twOfzIsltb z>5&C6J%U_%-t=_{5y0f8BC2NyYF??ZEnC$4Uf|%rBqs5zFDvaHX&R$GKng2qlbn;CYlI9g3hi{wYvPt$S%@)o_a#5}Sn0fj!8e~eT-Xosi!j0Q^^~Ey#}1H< z-$NN6lpX>!P8%zOjdufq6m!YT&6^@4BJL2fyDzun&_%v8t#@0UoPv}zk%35=Bth)> z*L%D5hwiSVtf7}8i~bm9vnF4XsdDr86r?YRqR614X~~sQAL{G3NRE~jS33{%dDpde z8~l&BK$okAh8y{*XO2S6^MT_=*t~HU_MC3yoZG%7PHT`{e|~%9g-+s9*K#TzuKZm8 z?2U5;9m5_?&Q;y$cp!3x(CK*8)n%!s<=d=k$rTV?_eOvrMJVr2|eP_?&0Q$L6sP2Vefftv31DR#ONjf)se)GjT%CFB%|8n|Ux@;m23laf?WE>+ z^x|)0)AcxH`uMPyoEifRTs@Xg$M0h>I2{^$D3U+-)ID5o7sfl zEARYHc*!TZxjXG5oPTN{hi{wrQk~1q8vk)HbX_C%J9B?UK^o;DOyNPS`@8xRBG<~< znYc*5*p<%?0)O$dsJXR&^U)Ez$4pA7=KPmeW2R#k3+UgOa_2C;` zpApRQ9^0U&0w_Yc|9t@2c|YT}s$Fi}^Xbs~yi&!P(`et(PgZ|s-8su%-M!byRw@qy z0%mE4Oi;e(T>sXgX*O%?#2(Ady{Gr7sl*KJA^dJUi{YJL4(5 z--WNFd|v##JCeld_h0Lv(~yphC%YPAkY~oJ=?e1~%>yFo5NQTiO_SE@tKFK{a(<4X=6^nWy7Kj2pntp|Mq4>gxAzD1Gj+U5(f|gh-92M6!>uKv?P`S# z=WPZ&vz6^}oVLWy!`Yu5YTsQq9_R6^OEUFr9v)J^P(lgc(!n72(^4C=Cr_Se*BZQN zXL;zVT$^81yw!L<_jHaq>`AwkCP#a>>YY6OQnq?yMFjG1s!Nq|2N;qd$eYk{3s$?? zty1UIH_ydZefLR|aA2F|pqYiU15!=%0UD7rqVhmYgxt8?Y~k|9N%26>oPlA!S%e99 z9=N=-__gr;IuH1O!DpwlKGPy&k71L{IrNGpF5-vA^+(vwGB(sfzp%GANxd+)xcH;p zNts*dZKeeXJKCF$`^X5fp+T@rZ>|pgybd4mq-11#A(-Qbwa1zbRBwGN11QGhrTpUJ zz{04ZZ03r<$M{YDNd%Dd|GJ{qNT+V;41LcbK497bb_ftNqI2dDS2srNX^>T zdlz0OwpVw<3wCJ*#y?pFpBx-T_a?qS53>3*t-{nG0Xn|pHElb4WPCqgJZ1f!Eg$v8 z3pi`-A{<`2z#+DEmPy6 zut!Ga5M{0`8mAfEV`KhEpjqkd9s=h2Fo`gs+xi?`--_sL5KSZI5;E_+omhZ-XxE;s zM6n`MN$96Dt*n1-6w^ONO-bYmzBCEa7f!+EBYlb59cm0GT^Xxo@dkE-Qt9O_grgSQ zd-B+4Zf139KtZh_nGmKfBQm)q&swAvD&TOPz3gTtWNd31ZBY(VpuFw|6<^s>u@Z>O zKwSBq9EKAkI4|%d?%PrgX_!+HOfNlL2TwMxV_vTA#iQGZ(CX%3^C_R+@6b;RF8Wnf zA~4j7R87Fqki_BN?FzgwuNz0L$I05gLr_t^kg=KA9{gr2y5Ux12&Si}$M8#LTrH4U zy8`!Hx9L)~`kOwj;O@44n)cqCbe#BINo*tOu|i}nBL_ zsX-0TY}jQjTue>;?D&QWAZ5XP22L-YJ6L1ScXmrd&U#9xt!u_DRrR&O=Gv!JiW4L^ z^D01)EAhe%von#dwwx`R`VelYFlY&;dR;>_#qRQxk=XW5i4A$#a}!0O5*!*I*P=h| zMT(UJL9RC~nrH)=Fk2dI0!uhmG9@xFkPT%*4*^^-z4fkhmBT`d2%nwX8=tTKO=X4x zh4D*iWy`>BJp-4DUArPcaxExa(w^8Tti6YjaYxXX*XrB*ckKLx0=R@Xn7 zuQ*P2g3H$~g?LhnUHCMs{raYkedYmM)&2Sb#pjID1Z~Cfj$3j;><}qG`s3#lulgrT zzWBQI*Bj33CX1y^e&dhMtXV($lR34A1lt1(FmkRzJ5zFu&V^`N{SShaZw-!48PpiJ zd~KTYVFUm_UfXPsZXL+yP4VRHUGC54rD2()RIrsp`bj&1+!F>`F_S_PuT!*|Km)B+ zy5ce--=K!Ba?Lg5O9%;W+>Ua*$>Ipd$#7eoKmNbYZLo{(r;zLR93KMZwu<{?wD-Bw zsPlji;Dh~TBX3x81{Vh`HuiR<*lzZLax|g(_x`%j8s??PrBEyE7l%bh@6Fj`vz%)! z0!yG3<9jAiGxo`3CT5+TVaI{spU#N;!|p;XiK}aU$=Zst4Dk=)8ti|!O5Sefry5d? zlh$Yy{`!)g-P7oWIoRHw0wSnv&bB&Ck)1mxJoI8Jv^(NH?Li*v6=BRbHmcXbR~Sv9 z7MR+j@K{=*e=u@4&tT+|{@6#Z3rL@@`n=2^TL1F8hG2RG;AuQ7z$1ffnf95@}&=LJPk|7loX0*he1~=`_$G*$e0Ko~kz@cAS4i1JDYfa=* zuBw@BuSERa8YZvN*i%tIw?UOCNKnt8x+J$^C8ASY&GwU}p{;}IYK~A;9P-B1$OPoQ z4qrrGFb>S&ih%-Fb-Hz4zI@i!%AY#U9aFspZ}I&?T`9xV?0K>kW8n@FTA8g_|Eb2q z5RcxyXk`GR*rQ~1r953s%SY4kpHji@r~FjP3Q}2-w&N&r5|>oP-DlBH5fQcz7_JM<&$G>zJlj6ko5>U3uzR!gd7 zZ^e=WK-RT-h~$)Z5_m!pEw4+JDHpovud}A|9>_7kKZ&YnT9;~a@=vHJK%pfA*3=ee z`_fH}jTawPa@OF6<*6o?I~r3snDs%yfK%K}Ipdh)(L|z$wD$*?8w)Q;-%K(Y)bQLJ zy4`7cv!z&KcW3$mT8lUTadIE^{Va)?!8cDcw2%y*e}Py}Q!-Nwx^1)NzuCrbd@xnFCV?{f^fs2^) zp0CnQrFlPwdE;M?X3K&=K;Ob! z*C4v7O}I%%XQf*-k)RvOT}v>tBlAO_*Qc-~^s#>Uzr@B>{?K>q{js0NcQgE5n*BS+ zL6jl_A*Ig?N21^lZuMK%^83H%0_|yg`n(96&+51B?S!!!`Mz*V~ha|2ClzbeI17t;}EW{~T4c^Y$>}zaieF zjk54V|7}h4E9qQ{+xKZ~VaoYnX_a8sOO(!+f1B%#;wi8Ff0)Z%fc<~OMcxo(F~lt3 U<;nX1r$-=lWo@N$Ma%I20w={5>Hq)$ literal 7130 zcmdT}c{rPS*G?C$QeCE&j#@@LrX^_UsGTX*g^H?5EFoI0wlem_7E2dPD;3iPMNm|z zL_!H75=)EH3Z;oPsFYZv8j=#r7oE<$^M2QRz2DzouKbbTlXLE~-RI=VdG22Tosp4J zlmY+%GUv{ox(EPlb_M`8X-RGqUr{w{PXz!D1;k;6nOlX~46W?fqK-8LTQ^8)b{$7mNu)*~pYf#wDiNgs zfF@tzmt(ILwQl{maRPuxKs>;{3C~S{OSt;YfTHt%L+MFuXiI4UZnepZtCgZrdJ7xH zLycv-)c2t-&u#+P^%Wkwc*#y7r<~$%Rx!tc^9oasL?Lk*Va$$_rMd=vMV?JF>$?oIjx;w_f(DugPN**;Rr2()AL?lTfV zpF|(>nc?mc-O7J{SE9x1fMsv0yk7cbD!Asb*7KUwlfh*|moG_qZghyYr_m`v zEyWDvDw(8o{kkaIx14l##&mm2G*2-?#fIfM%m11oGJ0)3a%9r8VegT!rDfg0yFQE( zrAF`aR%A^@jO}fSq|9pP)e8!E7wPw?O7?

OW^^c8wlmo&189Y$S5=Q4N?ul#WO~L6q6lSjAO&IKLL>5Dz*0OGx6IV4jE5#8z-$ z%ac_t+HON{DXkj=gP?YX6Hp$QCY%%c1s{o${wUI^C>)~MG(pgqC@orY*Q(ML)d0fz zy^Rmg7H$=-kvo}oeg&mJ<430MjglkpLch* zIM(z6C7~oEA+MA`>5jF%AVr`4$W!Hv)~@H|L>0_GN7~YxlEVV%%g+;p^hd zewWj9p3zZ(4`~pHw;LNcGI6AIP0?9!MKCXXtdrv`?5l|L08Gm}&@k&ws!kzvhHM9^+I=GNaiq<=l*801z8q7ZlS z$R;l6wnWSIpv>YpDz)Wi9dtg0UeoDD1{D5wTjI=2Z{gN6*ad~{*b`#U3cb<0yYB)v zntn>$^q&ZI0lP6zH%s@rL8Zar5uFmz61cEjaSWXgcIzB~%&HCpf{qgbs1gR*S zjs{1@w9;+~*2DcG32eFhO2I7Z0c;A_o*@m5kP4hw-Nu=B0}4DbW&H78O7#LX%WoPR z36*s|^V6#JplNLu+Z!diJij(-K2(PiEk&!23qPjSM5#-3WABWMTeX#Q!7y;wvQ&N- zf9j7iKD94_bLAmw%TS$&bwaq;(j`z|Ks9tskK}W0_(ky63gO#;`^YPSU5)~v!hq9UuZo#IsS3Bl(t&>RiVaT zRU^hopF6cxQ5u)aa5x8$SGSILJUP#I*AO%0?#nb`HB zp5jjEHCh_^qF1$lsN<*YVze~F7EoX1Le1Vr-eUYKM^EJoD<@+nIgsM@M>=*7nb}>V znukM<*ia#4Ds(a|A(8Mk+*%%<{$+ch?TOv~32Elh>aioWwA9DggTK$KlO~^L)0cjZ z{rsu_M2kTB-O0tZ^Fld@R~Ak^5l8p(7^H^I&IWbO23Pr>EtKYPAM3Up?U$8|UAeMc z*s6Z5Hk2){S@u9pKeO7r{ z*jRaPZGFkY8$l9Jag&Kg0j2woGENHc<@q0VfaXGvbG?;3@|BtX9~zB&Xy9h#jWZ6O zO;SSCa9w%QI;iePHrZ~T^PXfe+}Dv0i=p$AqQvmsYMC|$;M zc@f+l&s$HCg|L0~+@BZEE-~hb0%deznGP7%0<20ph%RUfX7?KD8egT01LZ#1d*HyH_?Xm) zXb;8|C8?>g+|8gzr418B+~;`xtblT&QjbXfb)dnf&Vh|-b+c&}L9ia5hohR>SK@sJ)@Au-`s-uC2;8#~{WTj@*a z=+TK1eB_&gsbnuxkg1=aFBr(NF>!Gmt%9wyhQdwXPk1`%yFz`d1~jwq>hhIBZCpoE zRmDENs>dltr};4-i8sgH4reigGqU+USSv1;+Kq97cA$#j_NI(p{j!2U@^ea?|7=>5 zprqZ$7aFLfZ!FFP6t&pZLW+%9Z@oJn?T5KAcV|(``<`*|Li2 z9S~R|f0|^uf5pWR&*gt3BbR=?%1>nmd%)5J9z^x0m3O$}GhAbApD|6GCxKh(!c`Lp zsYd!TMKkQkxUq{i1{fQW^`gvFn`jvp-MC{WzY0#i8kj<%oh%#VH1qE3vzipCY2YzX zYEB>5boajJ+%<85cN{feTltAQ$OBe-CEQ4Y+Z$uTO8k&e-T2c4*Tn+y?R~ zoCE_pza40p%CLIV!LK|)tXBDHH4dtYgOj?79_za}^c0II*eLmm!Y-W;Pk2s#nU5f{ zspiD1s%nwl?V2-J;{v?dX%F(mKholwa5a+>%!Q}fI`7p;Cj&F|Xy7ViVk&C~iPd0( z##bnU_+L-qoTj_NmChJc8WOFLr9mCrAIsVAz?4)KyF-(HoQklEvc5dYSr)u^x0SCO z8a&}=;|lp=n%y4!)I?aqY>-k@TF7`jPJtuwoWyYHEP|61!H=t%H9TZmtDMcQp*R*a zA6~c+E+nP0n&swNAFYwguddCo+COI=tqUJ$8-(dD)P!Wl89Cme_zE?MA=?c7%Ys85 zSS?G{@Oo0aS0hA;1YXZ0dDltaw%yxcwjId2r7v-CcxkHnb_*&pxX>zi0uFlD4fm|d z@9D1|6_&&ugr{raj@UQ@ZwUm=X;9J`$j=EAN8aj-EABe+o1Y8enJ>efGOS z^glFZy!-`ECFLSrD3)()2&-9+3e&?eUp)7b9OefN#;`7^)oFp?l@sZt?wq_!NfI!2 zTEE#9tWg@IoVT#U4M<<(EiMTZRI5ygt}*J?1(Z>rOa48Yu`e|m=tR(@%t@g(5jWJ8 zyAVcM)p5AmG`n1BXK=u5Wb%kdOjGbY)PM`6_#Xyp6R$+BvJc~7KsRLw@v9rE^4j7q zR<}XVdUNg9ubBsNCiFdxKGxvYYD>czcC4!Dt_3PfZW6RT_52P{xYJM*4b?ML8x9Ig zp*BnmM%iiaq_${e={<-~B+$Jw^{{i;8fUfG&m;3I!kyRy9EzF20DqY}z4~!@s=BLJ zdyVzs)OPr+{~Pfbdv#saBd5-e4{nibtgRyoT3c(t&Wr4aX3=zbQE8Exwjp9So?`H` zw)^Lys`VF+@mAL0m9tgKlipboWdT#L;gd>JP!j}Wedg7oca*C#L=jnPtej4+Q`2o$ z{R7%E!6@ncRPBLU!uQ3v+qJKMO(2a&QtjE#t!F424P_WRKV6X;3tF8Lk7|-N2ML(N;M z#B_bW;joff*x-0|m)j9U%+2*r_AtrdF%V##pCezLAQk5XX?1ITQoCq(pQjr?v@-(J zm6^5q1d(QUyWUMEFp0fYQjS`Fs=;UxUY|p^n)piSLj4&~S%R<0Nv|14bOiT*( zn~jz!c>rwhhI9IxoFsvDPN4qQL^Q|Jc`jR#T}x%XU+uJc2 zx0w<={3Q5#sHm)CjI|zLx~5+wh8`_WVK`MR|5P&v?}z3I1fY#b5stQfqZ-v@Q6B!7b3a4s&e8K)dj`QxLkBs zF6))s#LC!kU73tpY})!vQ&TcC6a%ALeVD2a@`4xCyOQt9q4DA|9lt&K6;m;vj34b8 zX1fnO2`P0|>Ul(88SSHl5)izJ@ZPR6@gAr2V8T}s;Cw%;UaLvqi+ht_ZMs>RqY z^DwCT;iTg;9_>6=nUZpwMLCEq-R78ZTZcXsLh)+i6vPj`4xge2i{@1F=bR4@zV8<` z=cy|b_AtE6z%y55(u3&A{ellfYq$%l{j;VrVdFMdMh%L$>`4suGh3ekbJ?}bKx9G8 zwG>%UA|CD?TC!{mc0}XlJk+b-sG3@FhJ=_=b<(d&5iyN7it_dIC>B5T1nrtGvtitJ zWK^lMO9v?y9txI*EBayrEH*jA3D;84-e@-dQk9K=f!-Wu8j{@R#*B*57SC9yh%#6R z*S`dPAO|TBrTciUIxTu3lhaiU`m4}RK@SGYE~+b+9GdZ-UAcV>a&tSdt2M$ehwr=4 z<3Gd8XHH)La;D0?72r&L=cpRymt6ivX<%j%^3jVEedM^=k_T{`Ksn1b1=LL1YIm}V zFXLHtfBYXY$dN%JvllN4YN{6xtIOqmm!eWep1x4%pv2dlCl4u*KBdG*wP;S>PSzVj6u3kJb;tzMChqvKE!sC8;h<@qIo>EqYfL z;nFz>J|0Z6)_#ERa0w|LuT|tE%?%EQ4?dZyr0Pt*J(|539bF7=(PyU1Laf=v(87W_ z?EuRo(_(CxF0H7q|@G z;xp82Ym_-NjY~9ZF(raMR_SdL`jFYQOZDu-zt8CEXODneoCbcBh2Rl{yslB7b8tf4 z)B!7F%$})`vSv(*iFZyJ25iM9G$rDraF38LSq6&{zj8AST5_Ao$H(iU;m`K#0@%D`J_jb+?tc=EAXpahD|O(qkV$72Rz>N6 zqvTseSy0Q2ih)_k6IAjWdRa;5`zhKE-VZ*tqZNe#=1l$t$;&IywZ-tT1D2BOUy@_0 zg3Z@^hE0zcH-DHu{iXVA2Y#*rJ3Z8iM6?Im^+jvg?aW(feQSCXV)0Zh7QgwB{0X*y z!0_WC;nL|Aa`_y6Gydw}VO)BnX6y+x-Y|9H%2LDFm}Zkx#L6CeI40E@%?y24v@ir! zAEw@qV+{^>-wiGC8S3IFNtf*H6BqCgvqF2C-_POqS|$fVYgV7qr?0^|uHE84|3AgP z)C`+i!_DN+@k=mhWji^rT7?s|ASm=#|0eHpN`?=57+sK9M^#WTfuT%8J{ZJTJiA8XNsD~_ZC=gcX;r3bCTkx;l#UcFQ< z?eH%?NN5GbIj++$P!4(Y5gengV$tKEiS-_su2zfWuO_yjhs*sQrkLYQ#(7*$aAf%U z8kqsLcW`rs{#rNWlXyN?zi{O0$r6us@vkQ2acEG&CbX8v?#t__3uF&yf$Nk<6Zh(* z#GF+Nrb~AxawW(D$S%XMP2i)Wb4)b;MJV!U%2Jl$Qru^3g152rvAkA{(+8hGrm(GQ zPrruXBIQM6fef-dNV#YseA+xD*N-*T#O&IJldrC30MsZOYXiHxG@#0 zKF|{5{n!CT^Qj@_L7d4ot+5)Hvfhl|cAw&E*J8BX;tGhk9`|aeloqBL+ou#9x{)l*2{9OqRi+(BC4*-A?zwMt5qSwlEcq<7|owT=O zL6pe4NWNI&%0m;tZ`L@;O#n^DjpehqOzNKk;bVh}8#`wrPO^u%@F|G0aoJwIXTyPa zidx@}V_(`R->_Mptzt;A1cZUy*lkl?@2V%}9TC4-_rH1La##JERj7y2UkDDe)()~w zZ4TST>vBDK>30i2?qBlX^qq~SzOBT+!~I`Jzv%h5_LUavefF;g<{}MF{pt1Cm!+ko zrzM)R7Rvs^-oGn;6D|v? z_^wtK^r7L0Z~6o!Wa+7I83dkD*7`e@f1>{%VuAdIxb_Yc+2G)T=^m}@pX#+p8l4Me@Oo$9e)4D zwZ9m(#1QiiAgKCBuEcEmi#`9Q{_h3+Mx4pN>-nFK?0f6?m7bm}mo?}D&k0SpYGQ=x#9{_;6@E;rQ h{NBy~?HSOTD#0}Z9JctnZsVERIcv}G|bNw>6gOGtNvN=hT$AR*n|-HkK|()kYG-}~pY!w$R5 znYkyP^PF?})1^@s}PF7M40HC$O^CU!g@HaHkH9PnQ>mn|vjtKsIK{N{o z0CGT1QcT?={kYZJk$B!`?;*o-9EJek0A!(IMP;GQbk(U-Yvh)4|M<_){+^>UL%kjvO--}d!868}zPHUd=m zp#OVoOmNaag9ks7hKXJhR01&DLr-4+Lm{QZgpGiQUlo7_$YP|$5R1LVnIN@#_2e&$ z!U6xgdfS2)*_c?=+|~8hJ7HnNMQdpp8OBMgU(nf<^LVWlS|k6vl@r>V5T>%rz#>(s z*@5aJWM=U03%Dav1IBFjoPBwdbeo=SeI)yiyqIJ^I)WXC{`LgzQ0%_+jNoQIckQVb zs}q)_V+MK%q62~{NAaD;oDoM}Jg?(0%LNMZCihvyFsp3lS%8kg^A9PhN?TDzx0C?+ z)S9`js55`@qtBj0TTI+)J3c;+3*aBn>8lsxaeq)KhS+&|$(fp(N&yr=jd1#Cpu%t0 z2kTT3p!UUd@B-j~DzwX$VzZ{SOJdvpGQodd4Um|WIfNvoWOhxOj&BkfJtSGYh+SZk zl6ns8l<9h87DD}l_QzU&`;H)bnUoe36iTwM*d|?dWJnYzohOM23v?(_Mttj{r!M@K z7SwisRk;BQf%I+lA3;)5GHY;6pPKK_`;9!NEdJp(Ud;{>fdUAK33@gv1Qbye6_qL2zjfs7Z#K8nY8bds#`w8>pXhk@n3ohRxvlyP~47?gVG&C~(Vv)mmGU)?U6h;XXNMkR(E z5fc__((1eD5IbH-M5DZ-vK*ycY}S3>d|L=rmLDjA9u*xmZ7wIB=Nl%uPKC!R1yw|9 zuqgA#dlwuIB;vbAj@!2g zYz92>O)J>bUmf{yePF>$`?lV)2@A)jN@6?lt-`pW=>GYo_WM<>&~{4*0o>gdF2$IX z;FCdTNLfkZP?p}kfdV5gDeym;unJa1DhsljF$bMyTs0%?59x!ibyuKs<5yFI+-730HjSytMDK znvjZVqV_z~zXz@1On;E~Wn?V!jxSL2zq1u0{fajndljBNmsk|ev}7pcE(xK4-QM2z zcgq$E>TG;(3=O)@{u?{mn?(L`Ts&#h^KAkWl3rUA^udFlUr}dpWfgZnghyT3Z)r#Qwe z)_tmOXcuhwrtI`b&8{Ts`o;6_1V2?-*O7B}69*VdfmOw)R3^Cw_AIR7{lC_R*rm{xNX~xd0+5Si)BZ zm`+j;_#NV+r_~Sk7-vjTpv#$^TR<9+HgR7OHaFZ_P*aeU3_(vRth4dt)i_q@{2d=W zu70>muZo!nA^yOMq9+vdZ>3Jtlj=U#a@IpKqxhC0CtJ~Z{vopT>=m!eYpgC*XOPLE zbkBQ;i1Q#umwtq>4z6dpkOxmd+{7X>1*z-X_LWppizH@5|8`yxo-gR5kWl995o1nx zk}nb5%$+1@aKTrBTjZXIFwOVuYzylu=A3N@61e(!O}w=R#OV1%6u_+&r@Z0q8vEnM z9lq0Lh@}(VefaLyko7C()AbV8yaeb2RS2_Bq=teAd(yB&gsg9BGf?u}uU|B7~ zwNe?%;%qmC4j<$c)y1TZ8Y;xuRkFs!D}>WUuUKSwb9UI@QQ<3zK@yypodc~Y1*RvG%xY7KCwJ#m2)FXG<1m((Wd&|R&62xAyWnT}A3klUzNfQ>6+7|y zfY1#Sub(92E(Ak$tX*v-I5#j54qWFYbvD`=i=Co|a^=M%tb)O}11e9mduu3s#}ymr z!uFR#?6c=;_9x`=e;b~piSlsZD=#k(_G>sn{~yb;1nGZ9#juco7T!xR-+`BaQO^an zWl{95Zd#=KP-WEAoR)63LQI?3^7~xCpNgp-1v!N$;xH^_zfJmuL67kZQ+9#|vXQ`E z;}niqT4qhJOPI?I|G7vGiuA5vNBL^o+1f~zqKz%j%pMbVsM%leqm8+;ID0@zZ&Lf; zJ647YF(3a%uLB~kCdCuH6olZ?ay3oFDy81+(7umvA{lkZv>#z7{orTrs*lMLp^4EE z0z8lL!H^GeGOb|@azSWtij5h*c>}IY}Z9l5`wz{bX8L&FDsxAA5Db7saymfv%eQ_#{aK5Jj zq1QtU^!E^C0X)21U0vs!9WqLhF>>)pL7a8{_1Q{4m{SDuD{vn!iotUxPQ;sV>R;_P z_i8@FJe?nG!Z5VI!LO6UM{N*-?8H!kbB{0hWt9n?#w*Zl_!L1o=9em$RgOEwtjn2q z1)=CIATDFjuZ8xlM2iysJ;;IqvQp&!%RrUBPmF1G5B?=Y=LqBN;or6kXF7KZ{tCvO zpF2tBsgi!>8mJg|;5e0n0ziD1td@Qgq1H`f6)S{bu*Te(ODZsLQb!z%1$&jeND=R1 zN>fl6{Vk4rV=Hmk6iN0?v>q|Y6`~oo!9?SERmRgi5uoMnc0Qr23`-CN6L@IL`wk-V zk)htIMYGjh7Z^;VK@2psnkAYbifvcxjEjvm5$C0W3;wYaD?dVwy85Z)7pCAbb5yq; zF;%vg(UAeBP*TSVCFDcv`0!jkAr#+7s%C)@8gg?sdyH2cqkiQaHe0sGY!H#yy#CBQ zO~$ni%-Sbd4GM@1*K-(IRMtlE0?0AwO`>#bkFz1V@$jytq8=utD&Jf(@EWG1o43CA zfFV z03BB9BXpEgvnfLbaFqVOW>((cy;YFI!wNy&I$=`6KALT}fGh+nQ z@csM41^xX{h!(lcNQ@ALn*9NmCaTQa5B!mmwZE&qc$3>DWV&lY((Vula#HAmg>1W1BWF()HRftEsvD?E zSBRLX!eV&aQ?%kKw5}(-I=GRCrs?SYpZzQzv(a4pZV-(pdhUY&Opx=aO5wY3n=<)| z4?am*5?%;mh$C(}DQst@dSLI|ScUqmZRm?NtXlu|itf(hZ#QYjyduNsi&H5R3xv7rPUCgPBWqRY^RqPJ0r16az&-!@vKc z%`wMhEo7~3d@dMg#mS&kSx{&TS3hkEa=_v$mBU14E9sbxk1Uzthdxw^1#5+d$rDBB zSH50l{?=Y-PoC91iYC*b3WTw%{6B+~DF}(F?<910tJMo0;Z&v2kgeuRiq4Ob4OPFs z^d|jCiDHx+~-&WI+vIIxdSjMp19SGVDm? zBKTi8-)d&uN<*|;CG!iQ&SJEy|I@Y2f4Vkl$z)WB8xl9;TDYhZ5uJ;=Q>DsoYOKa` zBG9h20v=Ju$x0ckifBr(tWsGT-zT@L<_XiX=hfX#)F>{=8QbsX#c+F*mE0g5?>4DL zG3J?G@eFZpv|{~#KT3P`BLf05Vgl+IZ9R1q%=tX5Nmy-GtFq8AZo44!r_}Xs;l&xu!C@g7?_R!hSPB9xXE+rkzZr_=7foex?5&BFPRFQB$>OE;(-@HRKOkI>G zOpMmssiPVQhF=0y67uC0<+p1TiKeqV z_%CLXiE0cd-vonMGHrn|O+sOvc&5P+sR&JeK2NE?qgy|`7-nfSR<&Uiv)2EHwoDs# zBod@q*sqF9RJA}=qfk-CEMn4v{smpMmMv5Mz9q&TOWm?#F+brp9Sh(>kvWn|S_M3~ zs%gwT3iW^YEly>ZWu}+jUkQXRfg!>04$8bw_tG{e)auS-KT1)f zb;DP?q#W)EG+V>W?BD3f{+=Ypqth|qmA9sh6LpyL;ChBdpjR1vp^a2D>PD08tNFRs z|JtHV26{*FL7LN~7c7Pv(7{sGUIWzG2%%z0iBJ5uP{=YgJjJk&WwII0>PbVxHS#WR|5hV4Eeg>5r6JHkN#!$s{n*lWX*JuSHm6s9KaC`KLX%7U94~Hw@{r zEhXPp1?4S=m`S}=EtY2gLbYS>$kt>EUQ}met1+|#!sKHrQHmxb95V$D2UMk$nXG{wcmm9BAonBI>xapPZ5t`PKA(0rpIW<4 zKgxxlkfQ%nG~;@Y>u=|z!8%z4C7$=TLz|!|Xl{0bSod&G8FdVytX$h-ZyyVh0*!{? z{RlN-z2V>|6j%Uy{2zHRIanp1ilt#hRfH7{M@Si;5Y7~uvSBM*JLQYaM|)8!`d9By zj!1JVEKc-9i8e$6#K zwRI#5Jf`O_TTsr*FBnlgH&^a({Z79`itwb?=sKJhNZXY!Z{_9zumW$E=r1<wtc zuk8~&J)^aU|GsQ;tCWb0H4ud65trQEypJ0Z@Q#t07{2_}*Sv;V z(O@@(-Z^5!w&6q{&K83GGp{_%IqcRuTsdkHidF4VjSi$-{Vq%!6|duImZ3d4)HV2se=VR?VHCxi2U)wn;k{Qfz{*%= zSeOcGx?Te=XYZg_8%7ce^RVgO`jIgS;cY?TB@!!~ECfNoBu-{Kr~)`KRvNA<36gPR zt1D4hCx!M7oUG>xX6aHitvp85&i*6Z4`to*O%IHR3X-+6uG|^wJes{uRTRQb=J;*f?yl0deRWAQ-eD7gY{tDaMYaY zym?2+ysG@tBcn;|%FWKkPV!y{?gQHA@84&`kDvI6jP#Srgn1a>DjQMmjTPR4q~cp4 zD;B`}S-6*VaDEoYngXc$m5x^tK%~wK=Ep?*tCe7|Z-$`GOf@q)gV@sREq$&bU9F)R zMD50?hV?Nd+Xlm7n;0N>pXN}Bn$Fp$N?KgHA`pa;GAr)IjcJ|Q>#pe-IVr>~UQX-G zyK_T05fsTM&AUQ^+AxEu*1q_+WtY_fc8?HKI-20qe<=2jWhkGUwkyV_|K=rYZfT;` zH#EQ*(@&4f0RI;7yvNQlG26P#$6^?%aBHrRBA%IY=59+FLe30CfqCW@FL#r^4AvcZ zwH?Bv-B0F|eg#$|#|i%z+L8*nK}V2S9PkH~ys?{k>dX5rnX7rD#I_)FRD%*{t?A4- zvsF%UlWky9opQp3FncyEuIS&%H2`@7=qf<)T&Sq1tg#B(<~6q%BKy?XJN~eb_6bk^ zQ=EURsPxuuoX!kP@_nO7ub9-UuE~b|?iG$jTH3W1gmC{fl(5t}9)c*zX%{R!pJXw& z1&J(sjg-G&x_Rsn!EOtP*P7v5D%RrP>R4#^D4j45*w!ai)@H*Dc2VmyE z=_u6&J$NGlzBek`qA*Yw?qC)}IPSP&vwZ6pmZ6*?mpFfste6Kb^Gi7lRq1 zA)cD;Z?g{}xGFD(3!cv{z3k8^NuBUf>bjhxb1p$d&>82diycH!Mj< z;hLvK6ke0slrw}gZs}FdX%5>u-uX9Bo7%c#eV>DMbK$;E;GO4j9QXeo#O3eyb(MM? z%68a|tRvd6|9&&Xgg#6@7B0$&$eF12Q7R|U=8OLQdvd+sh$UNtMU&FCNGHPhP*>Y$ z;e!u>qx=B9d603^*4EA~y`bQQ%BuLz0_WOKA>>!HO}Cjl@iBt#D0g?8RNK{ak)J@4 zleE8k=`|{(hT?J0SGrt;5wI$;sp{iBGw)H`SK+%*^pgq}0?ex72 z8q*Eq9Cj-;^U#$}7=FIs3)1ZR+|v|tU=Ve@(|Z8hv#*Wr-iuskolpFUf3t~-B@^OM zy?_KN39>Wt4M|iI^uL8K!td200-w`h)yt`1W006eqow#$-k_V|$;pBv`*`C>;Gh0s zbW)y_=s7%_j~k9DzeW&v-h^otbR}^8S)b*}1PLt3U*|3BKNV6*@!fi;OkuaLDAL@@KgCt;avwA5|Oa&7%gVs_@i4$ z!z`*XpbSu+f@vKQ*iwkUD1oZuP@`xrVQFcI91Ayk%@!%EdYqUW=mfg?KuQ!`qK&3c zr4><#2RPYhHAe|saw>~6Oeki$g2q^T@Fv2Ip1YUYa9SxI~=? z$E{NT0lVh+An|>^*-?4S1uyVi`Zm zA~Q#Gu_e0tdcOj)x!HEj$-f-_VSBCo9#oGeRk+dl-3`cY4fSvp{ZYAO18Zm}#Ho=6 zWj_va;$bLtL3`dkeS&+B@Xuqv*&dDI3jMC30MQXh=iMsiH1zqsAW19 z(~ojs1h`{_CEDm444}XSaKGDdpi-Es-GtF$B^&T^vT)Bd0=dOirTZNzB2eW`rwFnO z%5h>3f1W1kv=1jBXX*h_-iekyP9ou%`ObXkpCCK}JlZ;kbEle_0tJRfe8Xv+iWYfH zd#(+Rbe`(_iRRwpF0U%`tTRDU92%AgT(-)JeYh90- zM7PTY7v8^;2t6SHF(pE{8WZumsRA0*VDCWLQFAsIcO)2ZekkA$55H;(jwQV>;H|#& z924o%7Y+aPFl%!PWuSO_9m_f*lkum=ozO92oiR(Rk|XKk@2DC~!l`OlG=I zfIO3SQ3#iomTxu}2u?j_fFj3Tp}APd`>e5MpuI7ildD$1P%)zE-%O5}bn{zDm`N83 z!!EW03otV?3s%9W$d2h%tNc)etp%&A%Gi+^r77yeL*bCeq*jPp+hlVnKcaYUapT5V zt_`py8{+$ZxqrgqPnm);WL2|j6Xw6`8%R6<*mtJS>SVREl{ep%_rB)#sBL;-a!!8# z4kRLq?bGvLi3Ytpi*^g}v>Pb!fC8g%3_kQB+}d}uBpgp!f6(*n^mNB`e|Iyi-x@uS zxC?;Ru1;x-Hr9hp*MklG^m7k-gIFy5HzjWtkx4~(fKZ0)XiOOu_y4U0kc(7k&HDG7 zqCkAZohi5W$21C)1j-=j*tY#aQ$OLaTC)@?O+m&KUkN9a1KE87nNe!Pyl3KYWzF}Y zK0~iNanueg%LUeBQgl-=BkE*~qx|}?&X}mM)Zkg|&CB%49G^kPzV4QdFA)a)Wf3c0 ze!4Gl5!o@WfBU}~!`sXZUM4G;drx(#WWawy9nFuJ#4B?J|8+v;-8a)r2b^n zG1zJS&C3Ke2OYb=h6B#+DbBmB$TKFX9*>SJ9|^9?hhNKH3>ArX`9^Qvu4qf2xVtWph3zYp`n4?K zg6LpVL!Wf`t3f-Sw67zYgpLSpe@&x4J$Xw#iRac!=#uo?mRJ^reUkPI$aa9*fLol_c_bSX91{Q=4=c6M)hWVN&(%=@TRA0c7i zYXWS0qs93$%TGUR*)78V^650aS?z`STK5~&6Km_2&U2YCVcp-E=K?X25&$nx>Q*zQ zE*7F~Mid4x(l#x<4@S4X*(%){iZt`Ql=13*KoA+kVdo!jQ(Np=Xt$oOJ(ZJ+p6)rV z2baKT!}=Nd@=E#7g=822_nD8})%{^0b^ecCuc0c4jFate19uk9M|`RRGX<76G5OSa zvHZ=7)f^70@1J5tkpZ@r$`GS_PkY!UvBWTYfc4s3^?11JW{?=EtSRDVRkNkJs>7(Q zF*Z{Lg{86r2?z#@mx%OkWYfZLRB=LHS|Pr3Q9e3gqE}DCf%|wNnWRjE{8;(+gJkRF z)Wjx`<>&wmnDk2%>@Grw3X^V-6mzcm*&vY}*{k;8#W3nMsRU*KH(sY=9lYoY=#D&1 zB9gu&aH2)K@|dvi#~80rB_bKnqmrfv;+UGZA}T+)x89Ub%rkdTCMOy&YEljFO(fFn zzqq#ZqxXMs-0VrEh7xYMB@qzGEbpOUp)7b-B8b7z+uh1zR4IZR0y(;p-|+;us#D&J z63_HFw~2nEY72hDyG=1=&UgE?hdyp<_dp{$w9T-uMvKkHPHe^%m z#)?5T8mi;(Q^uFcZE4>c65%iyQFQOqqmA{K-88dS=z(^k%MCxpk*@>UM8gren537I zD9zj(jZ2{+CWHyDuy=z>lJ}Kg$KHP7e2!WdBBtdmB;>)Dv~Y)M4*OYI$#Ej)8zAxW z1eNahY``>LPBlg4v({Ut$vM|OBvjNse#pxdWbW!Q1OFRE1+M7>teDEXMj~d!m?dHh z_sx&W#8{k}7z+M%AtObn3*h{lgGDFwv0n8t3-tSk<<%nH!2LL8ujs-?w{ro#yX{4J zVznbpAt+~N{VyO8zS~IdqtCY1(3A)ozuG#~CBm<0xY^RA7Tk|OC%OKYAcis7uBB|| zvkzUGYJ?{d_LxV~O)j-KewYCLs76H}C-nYNTYn7sRk8_r;qROK zm)ZT^@f~e$3-vG^m?L)A0TF&z-VVmv`#A%^-+3t}CK4r}{#_3@1|X_Wzd6#|SElv4 z@B_iu1pxCx5<1!1kH+9;vg@w8Lvb3q-0qXES(B6gHa}(9qvG@n{^ZSgm@xF}aCr|H zvc>7KEI*$N42-71XV$uN^xvz%ZH@%g^Hts_aw2JA8l4#DMM{Pzv2gQ)?7299bzS+Q z%Wy;^*X5&Sx;InX8CQo2re=^A7X2as)+TX5nP5mdMibvXVs!r<91}-N7 zXA7gFWyz@S(=c;;3>M#q>LNg0tp;m4X=e8ewIu z%*eyz2elgaW8G6eo&{*{tL?jtV;a)<=}gH-vm09in@_5Zx65*0?$>1)#x!{TR=C<~ zEjaK=RAw%(A#&i8#k|R{oQ0IVwtwo5wV1@g4vPn$dQV~dn_@t%JvFvDq?ycici3(! zF5~*4yQfZHn*1na_2C0LUi>=M(?p(6^;(njc)h(ZpX#sO)<($FQyr;91+M(7@_X3fHNy^+r^?3MT+TyRoGwE2F37|Q_WrJ<3u927tC4ez~XUPLDR z>lg(0|J?Y=JtwB3)8D20a{}b=_9-q=3~(9ut!$`BKL1LPvd4R<59>2}dAJNutx{_P zKF#`|Yb~N(`T`UBH*F*Pr2?{e~L^YT$n2dCjdm>t1 zO4egyqbUn8-&|tyGgkMW^#6F_4|*1YLKSK(w`Ts@kQu^MuqO9WrU=e(5-ogc{v^|m zR586R*t_0NqDdibu?X_{^6^m|*wAnEHiD{rq6=wu761~uFYpd(k5{lnbxFQwF`C?V zp71_DHmi9uB$y+JVLH-zEzDJma-l2KeL=7E`q6iQX%)1R*aUzxP8&w=?^^&yGJ+eH-R*AC?5jVe^>Nm}^8@fvyiMRx0a**fqC zcH$MhH#4tt7PPKbiXOa+Eadk1uKcns6QW!C!v)`&ojd-yp)=Nbt3+7`GA5c<^4R24D7&NZsgoLpzYB!QLf^slu9^Vr>pW!|bm?`X80LXB*_wlHn*&WqgnOk-Ygd z_G5(;%XKh7m0&~cvrxhk3JxF0fiOv3w@<1CuTNpsN=&buOhL?j7Q$j0mlL0?XoQZg zZTOKB+f5jiC2C|O0%RMlL5n(bN4zC_A%5PfY!4Y1ey09fE7x*yNdM*V8^-4COFTp@ zGfm#g@aSf6_v>?;ugOfTmSJ68X4d3)Kf|kbmAx;dF_zIhM089pCQwu26C4rL@bC|4 z>so{~de!{h&yyA5p91yDm+5KX;y!%*HG3}L?k89nrd92Cma&~cDi=LET8^?QbX5P4 z9VwX32Z3>WAb*M*8g0BSqAA{BnM{#y^z#nFZPuHxU1xGbgYwBaIOFG|wy3qj0-)2q!IVBIua{T+_#1q{yr-V$4uZM8Xvp@vuzs@`u6^P(^l?7$~;O@tfy#f zmKqAxp)Rb7>8zSWoF{pf)}d-MBqp{tWS}#lqHg7rvta6m_OZBS=^XY3CSOOE_-z|@ zb=y2-ck245#KKE|RM){7>)aQyqDJQe=mF@0t;m1B6W-%*e&+rA{H5gMk;Y4AxHNIZ zB4wA5SPPGnTqXrw*B<=EA~v8E(@VdC)ANYHxWA4g2G9ft=2BKLbYg=vUwo{+t>BYO zBTx8M>DMbcKjsh;n(z3?{-w}|YPc>^WnnAfm+;k9=~9J<#Ch*}^s$~X|0W2XcwFr% zEHt|yfUV$u7&4Lx{TDBWuw6d6okAA#DqpTJ5IjfOcN`)Pp7Q3Xns10E`aY^sa0&eA zu_W`uE;JMh0bM8E%MIGc=V||psDoZdU+8i$$m6{K#lNl1SMct3@B2mc_3U4>l4^grV<`p|YI15mxiQj}LVP6L0@sdFU zF1@|6)lh(07CBE9u#x?Q#CisLz7SxIG|RgdmFHSouf@_}+d?X4+08 zbier8iqrz)0M*UWQ zw`s87xMBhX!PNp4OX~u%=vtdFvb3rlv5E+MSCv}eq!V}BTgqJL$}rpd_J+e3E3(V` zb$siUf;v+*sNsmfsy%!Xg0(lBQ2(->2?gYhFetk!UvinknUy{`&0f|)=`v2x-g|eu z1S~yg>h>}n7CGipSJxABW2_#9>H`JxN7y!HoRvUUYziC1wosW?9O#i{~B*$g3yJB07+EaX#*bYAQ5XawZqmb?_aYNf6 ze5h{kKj?UyOt`A{^f~0~Henn=^8CS%k);J?$X#w(av?Ze=F;#&KmQ>ajav3B`)LeG zaD_FI{YkA=K+~y=CG}QvLOXPVDC{3!QzQ=Lv=oLvMiQAfluGNHbHLp$|MV7l=|paV zm!N|TrL4xcD6F;;j|Ar=G>_qz)#uP02Q`|U4CST2?6zEp)Jdu~HS>4EHCOFrvSdRO zQ`O@@1`yf^WZ--f_uYnSgs;(H=@Xwy3}{2nQVA3SFH|9y;P zWW4NBup<$;I)n`%Mljn*+ELBmDn8psvW5`e07bIHd^)3azdrRwO6O_Ix5?bYoQSuk zI{WWjbEMIKz6mPN%a0Z0zZV62bboFn`PoDTzvQp1x%wIH4;hd9oU{~9AdNdX#9KUg zyOGgey|>?a+ra4NxvZe}(l8Y|kR3K*yqnLMtMXa#-Zk`lAqrR@>0xz0=t>`WzFIu? zJk~pdI_tRT+H#qD!b>JWUFGZ2Y@+Ild~dID_q;}{uxgV?j%!_9{o*>&^_j&UB(lh? zd!VxM=lodofl#?I7#-5XSw&5U~hPz^0z#v5VL;9 zh~qLmro8Dz54=cAWnu&W*yc!ffqooOY%j|)#?hLe(sqFkgXOo!k+Xh<)hOPVdw$X< z`G#E%M_!Jvb&@-rM!?P3_se|i4bQ0>+6YI>wjIW ztzaC}8@Ijgdxb1~@8}R?rRK1HpZsZsIf|{JA1O}eUJVbK1{cLVzvbpFOXvC@sq7eu zJ%6*NQzD=z*K9ETcJhJuwr4esdnDaJ{NlLAqMenlD~{6F{gM)0*olWR$toh|Rv=zgaatw`ilA}M`4_{EESh@oJKi9#(j3>s{vV0FM2!ZI_s z*v}u_d@|Ui$&~hIYa-~W>#)UaFjoZy5`(|A+z=$f;hkDoJ7g7GNYvV1IWUK}^p;C) ze#%5?|M()oV$7wYd4m1;t#v?d#Hww(zPBAS4K7Ql&HYHzmMM-8CvWwp3zobBq=feL zVD$0vF$Y(EnYuE;rUu8n9pj*sFPQ(Q-H|)OM4k3OMUo>HV{@5NOHn4vpWL{SvNXtn zUYa>Ma7WPt44!M2rBf!`)#Z0CC!~x*u>=E z4S$!&jXS^c*TaBrM*-2blE$vXN-A7iU!9GxUp&M;glalFQZG}nNP7E}lnYUHEnQp3Mx-!`Z)4Ov6>DBx z9_0nm;QCA;yCpN@Jws(wKDLGBx7+S@KjQW0F(dk|5^aX9w<1sMfSf*_f>fiy=?~{+ zFbid78VZ7xB_%DhYh{JT&~jI8s|sCkk|KN%6aKzo`*xw(;>|f8xR`wZg3t84apKK6 ziYCYI_4UaHjDUfp(1+8C^~-aj080Cv=e12`xzcxL;@3x8l8&34{1SFQQ@QJ1{coE9 zcKT5-h-#UTNNFv(3njxFthQ?nvx;9GdPv#vta48Uy>9j;ap;8!!?`&w2md5;78Znh zM_(R+j=GKV(DI$1&jLPN2o>e9VInca2JP21&j{t6mH_dE96DIPY>LH$R5toULOz!E zD-1!A3+_`K2CSeDp((x*F+QtD8?`wo7}%R4Zy<^Kd!HXQYUwkJQDA@cw-A7J5)gw) znw6uT^;lMjRBndmA;#RaGfK2raikQM&mKPhDXi z9AKlyLAP=c!k&nBXF}m~hoI|v6lthR|CK!rzefZ@|)}!?H$NZKs1zcmI)^Y ziLnHReYf@_Z|w2A1`{sqC>mDi_kcIY?w{dLIgDFWyDHV2XYXQq#TJ>bgiPdgsaMB- zk6zwDOrzfD^RCW#-gDmvsJN9U9!h^i>zn^G)Uj<>A(DSm z0&vwL9!(w#!P#f*6{Z@G%Hd>hU~kHXZB+d$Lp#Kk!rJWQe6L9I0d_9nEk8(3eSQ*i z-pJ|NtD=oeA3HF1F0)n!NVBHlY?8=RWgV;V6E&UcrQQoIOW{`hGB#z#z}TCzUADID zS%-kljrUmEhu$mvEwmAgv&UcMQDQzQ=n0R{1qdQ5;OY5VjMpf!`HOctF$tHX#MO)5no}fGy;W=NW@49#2=UJFq}8Y4PJ3;N{MnQ94q@?AOpsH zzooBNYJUJ7vEH00xHhog@aBguX0Q=w(+k(2I}VImD(LqvSq&RzEx6ok8;;&YDHP*@ z7Z5EsHUI6-Y6(8AP}0}Y?<%u)U!&J?6$0x9HZGx%>B{zkmNqOV6|yArqsybp%{npz zvGpfINiW^1rwVt)$BU;X&9c;kdvM1HB4>3PeFMILqy4*HGLKwS!Ko94Z#|~~EmxIBLjp<^<_8MBz577_TJ7NG55XMUU4(o6 zp~N*}m1qIDEo1T@o{FjB1G_{1JZv$y@$gLl%Zret*VjYxRZ>4S&!73?b15*nctW*T zP3i)C-90?@DgVN!E$&+ngZCK+Uri^(JDcfF$2^N>ih>+W*wrL>8Z1a|*%>LwpCps= zw1XSY7}DS1U+850jMjM8_j5qctUztt>uzke66qfw9eJ?l8FQqkU!S573B9Sa=I8Bi zLKz6HyGe$p^I92rD_|{xm`*1YMEf{$sU=lQCeE%US!4;L^|ltQ?Q}o?SY0U1V->Xd zC5Ym`#7i4V(m7MMTbyY%bylgDIUn{#IE*n$Atmiul<#aSKdO=Uvm9S+UzD8PXE`}F zJs~b9^Cr0OcpjPk)q8QXF>q7g{2QGVX;3;vReJW zz>_ZtB@%=6Sy%=w7^(%9iD0=xdRqWTXML~st0OS7>tKlIo z#hU~JGAKe?Bb`r;9cvz*>r(H%+Ggw4y5sbP;M}Ed+e>c43zEJqFsVp_;?@I zmU#s)9J{YdKdCDkFk)Tx={eBv9l+rNw(YefA%T}srL9}N8BbUvy!q73M5Vb^g0+2m zy@@(VOyY?8j(TGj9D(qSFtd#{AgoRk*Y0Jm@;;pMffMKKw6dQFXV|sp^^Wz&PohMg z5k|&n6GQrro~o*Fj?rbm;h~?NNon=Ox$J!q9QASgv-Rb;TIQ^z2rfy(Pgw|qQ>AJ0 zSz6zTLd2%cB#5x~nH11f_4k%R2lc9>bU&F{d*0mC&CKjHyYG3mv@k-jxW*hppx?Su za{TY!1+iXFB* zO(azBiB!_hpf$qt`0t9ASE|d+nBx-A(j0WjCu7IK1mh;`4m7Gr!|gi5DHXz;R-m@P zvG&Lv%vU!y1vn~Wf@=cK|Fnk)1o z56X=9_KTY4Rad=vFF+KTAr)oBz16l*z;OJJDL33C<27W$3#Z@KZH9>LR0S-h4v4Vw`zr_^(HXo~B{m z?TUY)UJLEb9}6#EU))VuxOhg$rpqUT(9y5Mj-r@z$g0@}uKcv70DWi| zLzAe))UFLWoLF3l2ocRt3g~72)I46^%BrX49{TM|znvOO;jX0EH?EaaZmsXZ33)2& zl13j+a&8P~50;+Ftm-MlLOc(Kw+9;kmfrY&6u3SFcfaN~E2Mc^LXOOE|NUI|5=zJ3 z{<$`F6Fv4}=-)l(GKi!e+vN>^!T8&}Y|rQ$H++8io7MKfbK9Qz;P>B|$HU_f?eup4 z-aC{OeGd$u8~3f#pw|6|7^RP&UEji!?u+-2L4rTmGZa%;#kc9|k3L&RFpdAb+fC&Z zc_;@tzNW4I$DzO0Rhj66j=NeEoK)u+r}xA@fc7+Hnby`3ZkS2hrD1({1owRy5BI{{ zOtW<$nZ(L<1h00=c3dCpeZ~ z#K3;pjDA6}`+cBF#d>|#?{e6)dM=OM#Rx;uCM8Q1m(eR>#sWRh145u)KZvvHsd)VV zRrL|WW81bizO%po_uZ;H)t#y7>h5&E@9A^S z^BlB~T0Nbv%w!TyGseVN%(M3M!>;~Tj#yDI#-x+=`zDmvOK}D(p~bOeehlft9qayY z17lV6t-Ll?P=kl9&JM}^9Ob|VOOHtwYhHjTq?X64r?G0ZNb7qDgrWvx;)b&)WJei0 z(IeWzRIxZ?%>#^LZ7am7_^LQk?9Rh^sl!)KT%n%pGq8y9=4MR9B`+>VEdTL?j}zt6 zwh%RHPF6=j&Myg8;|aw70JiXhuULidmkQk=qaVbu4oY@j<7RCc8YqXOUN^fL%SZu( znRXuTjnlWHw2iTYB0}j9??okMfn(t>c@)=C9ox>p8weJJysYWS8;I7=tqs}f>2oK` zEk-a&Mv#I(@I!QA8x&{1w0n7fQ#Hz6anA!_M#&DSGsG6a=r5$pWYE02GG10UaZ;@mc&;TS8!s zrrJc{_A1(Q2KS@d>(w3bH_gr51Dg@2%FJ0pQcLI2(NmYnLK#5>soD5$A<__Dt?^d< z-|35&SX;JN5&vAP^+Y8D-PDVA^Hy;kdL7N7Rk!JYdx)E`-Y<8N$4wfO4W}{piU_ly z5PWD%ubYWVH2d}qAiUUh?U41e0TyM968aVRnz;!^4uc9lU2Vt%s3B>A@qTf?S{Y>0 zHFD`Cvo3q|NQ?7i&{cIcj`oMBieAlb^s;q|p8g zk&T~YW{ZK{Td$iLgjH1@Ku%{qVc(w3X6orvQ!?R$w+7dOfHUKldl*~96EsQk_Hm?Igh3GdI3{qgVc;S$4k495x z7Nd6=m5mo|r&h~BFVX3~SLEnR23%3YQmwgB(zeBg&WZL=G?uRwHSyDqn-@*N#IW+hMSPPOy_$!x@j$oRa$E#AI#TuC3ig zSBEV)YbsKwO&^5cOvs`N;?Fp;hIb*P33-Y6=gy0t^64p?3GWa{*~Q(%3m;gtaCF|H_R6SBenmwJ~i1i*`p)UUJOskn-E zaA}+_!MHpP`dD90ZSnI z7ohEOJ-~po3`(a%kDl^lt`Ha4~u(tD$4qMe_Y}cmSG36^4OB=k12|XfH&#PnI#PqSe{{ z0Yvmkv4dq6d%CNIHk2-sFoZ7*x@PiS&NoHiA;w=lAE_YMtScXc6rW0sUrtb8NQYkn zAN}U`PapGb=Wg9Y^@vU08&Z%U!!tTEp@4p|uz3!Q(}1(jRZDtzHD(6o4@^*h~;#mP^Zr4Qm&>me&`I zROyosQA`W~0oM>{HuTSR*rh+MMz&j@&DObj*@itDRD+Z4@yj)8OYc56?eX18;%f+W zy=iEvH3xf$fD;_}m{7NtyEC>mDj*$aO-rJ+&V_z&TFlhC9D(SD(({uN^N8bH6sa9g z;2diT5-K8)lI6@nynyFHI8W#53|=5V{cCTB{9*$mLbz?#8EZ4qwlUSh=P?^|N$+2Z zmc_8HNL2_F@!DyV1X}6UjaHzhtlchdGsmHBtZoDsh?Hb(-%Y5t-MT_x&1}|3$T@9G zs3qEQS^1OJm{4nQwcYjC?fHwK#Z3b)4;Vk{N^vh1cb3i7>MuAkRK~)ZN->qtY0qXz zo*-|_o;&vY`4f?``#~RIDaR$`LKProGe0A88ET4q#ephi<*+~pdH6A}uV3bX@{@vZ z&7MEnIx3#thJjV(Ix~oXunLtJ7vr z-%otaCd7jj@91*4pTXBOT1PXo(-5pAlk&hbl{$VcOb52eU5|u_Fw-@)SR+8or-^7% z7XcZ#l`~a3V}I63uP1dGQbYiBlf!J!_6fR$seGDBK?gAq5YEi)k^*;M-QGS847w*$ zkN0i2If6SqW|o%y^LAW`Wv4a@j5&{)%V;PZB44E}*z(O5)R1O5>Ls=K#oOnXPSul} zwl;U{N}%+<4l_>>U;&f+Qp#_EfC`tku{$^%8khhv>?y&rY&O4J0;c67q^OkzYhm>R zCgrWJ)PN5_=(DTY_ErN#SEpFVvqvk2IJJ(zCL_d{qTWXW?@*Hs0a^|a0KaE9zx8wj zC1dj3nuKs>y4H)KgH!Sc_p55nllF|^9FUz#{V&+7*T1e!!9LQZ&GjTkPdQeZq5l*+ z(1vVbV$wdkGT$Ic?;VKWwg&)#8mJD3*_Rg_<`LFSmi|VN=5ysl{=E7-nb~Ho79uww z^RxfJ3G9y!VmnD)V#*WSCS%2G*5M=~8KYTfPSM)E#%nsWZi=&sPyaL)6V1<==e46PYXc?X zB7ifpG~;T=gllpdnre4VnN$j*!8qM1*QbLo!D4s4ys;-cu{ZSK3%hwDx{H7B6Kn5D zd{-b{2apMLbDXR7M9V~R8M+wmzu0yP4^_niEqih#M$ysItd|=$mT$ZNR$Q>{VtvB^ zvGUq$%k(EVl3kXc%vIDhf{CMP)p5Y#3!M%DrOr>vC1sKZYlz@O_eM`sRY!=X5I768 z94aVNiKf;<6A%V;_Kfxx(y##xtjKf2WM%?%xT`bvV^&*j>dF43p8+SjeHDxmS9b(K zaTN!NI6NMpZ+ROv7mcXu5vSDNZvtQBp#A;@ZH`>JWhylGT)Ot$+4kH;>~q!Yha(DK zlL7JznA{VnpQA7CTEziG-~rCtx~NLYG+NpBs5U6$WutABvF0yswT@F zswbU1bQjHVG*T=iO-Q8DLq^(g1M|6v6X(Do65O*mt9vaM?gpPZ`Rsu4-k!g{?Hbj8 zL14FaBB@Uld$7WBG8d7gGf#f65ZL+>a(?BRJ+kT~mYfz}&vy8x4m*n6k_(bi(r0>M z;Dl$9X)_i`W{7Nwegb`UDWU&&x$#1_Wdzz=Ghbc9Hueq+jxM)Ar6}Ugf}Ca zxdJ*NDOBsv{({f-+oR#iaLxhB4Q&KIvsOT(cHjH8vcy2+I4LCBqO!pYEktT>;M9E}LzQ55 zcoKDI_aNiVdXM_@nMS^H_4-Z#Pn>8b#IjIvu4p?&U-u64;=M1EaUB4lS+@RGkO7|k z4RpfX$@}G38)Hz!)h(`^yFw>YhA@a!t_a1ST#fTgwS8#ok1zS0TmjG>aA-k-&iAkT zE77?5A)?+LkUUehTH@v&J1$i330NFZn=M|mX>uk%ik>U%#joBOSx`5(7bgDZXxVH& zBj7Ehe08pSu;_4smda1>gROVo9)*x==)kMIaWcE9ktpBY509_tPkeYVk{g-RPp%&(`DM&&T1}QT2s3K2I(m)=18q7qX@#4b1T4 zm7NEQ{R-8Mx`zfwgaP0nEozZZr<|+>MaCXa_6od=6Jl=sS6w`$xm|Qszvy7HJy8VF z4+cP$f#;FqW-hI!ZkL*5U1q5?LT2H2ZckJ$?m!=?52X)=AL{bT-d*eU!eIbq2ia$M$yNeJ5dnQ*2UioJGFK8K@Z_>@%NwhMO z)~9AtyPMZ_G1$g?5peg!hn{82Ix6U^V@3mjSiCkTT%Z8nRy*14?m51Tvgd~NPO=rg z(mh?D@b8_n?IbdSPpb`vH>KgNDUrDzRdIfWRkktJ=kv=?S!+#y)jC$4U4|mHbYEPN zON_C?C@#{}8sa+mpXvmJP-EEDvW--H^{xV=WJ>J00>oe2k?VM;tBTUd1WhvQq2@`V zhaT#=dGH-~A)do99(r0n2kFJ{`zoVeQ)+`1gn4+avXma=KgTh^f18T>vqrBNy(f6a z8nP-YVHA`%X)Jlc??cAuPM#-D-%7XB0>s>?@(!cc4^u8_DBFbtpr+yGa%^v3<{Fy( zW@!c%goneU@xqwJTt)mL2n{o}RCLA(`gA`y|7o%(%x-n-1X?aKs-#LS6KUU?CDO$D zI^>~~a>Wb2liE14Y7EGOlQ~x_?Fg-da-3Bwir*Tho#GWxrnfTf^na>xJ}b>wE|>vQ z*HZMhGtr!s*qGqMfyHxUj3Gklvh0LHip&BOsy)sLm(>M4sAa zMVr>bz0BQ~q0G{iN>kdGu1(q8t*pcofLC`8SmqD8>;w-^6idBUwFJm|mIV z&!J)fE97wD!C)qt!rBv{M2mCSmG9fJtX{FqYA98n#O8ZRMMN;hn2J<4V`kFh`j8^0 z5>&kmqy*GoyHhb?;tP~*OW)@rc-@8iF4~!thCdd(qLq3wT8yFWh0o6iFu-pD>ng0` zX`v-YG-e=CU$R9n62I5bEz!k^#oUm9z>yAs!g8@v{A`^F>{p5osudy81Rtf|4H3so z0iTmJ3#>fAiS4~hR8mxr(vj0|kKV8CQc1N_jVrB4)B)*J`1+uF@~wi)t=Vht!6Yd0 zlvHVas}1z5fQtKfkk9G!TYbA13;%0r90@Yjho5`Eye*2B3@%_s^t~-XhpC2$3W-#N znj`$oqj>g(0?imDl5C0ZX{*<<>*ACxx{OaY&DJBnzlDuYb`Z)zxak(#hvqwK21B06 zB&GubFWIG@nJ#lH!A5te*V9J|*s(o^B&Xod@4x)~@lJcUNn-g^u!Rgid={d*{SL7$ zw?&1T4w>Q`;=-TrrEkTmrRU_HOK0s^;(|-t(W-OLwJe@9#p7#cOjN{_qKDbJ#2JxX zS3!;4&?#~Q((RK+7>fFBVgu_M1T#UKRRI+2Rzp)keK-WOAy#o#OJkkJ07bs8JCl~SK`o6JErIoX>kvkw`P$}4DpombiQ z|K5EKZ7Db#oVC_x9-Q$A{8fiXL@?am@==Xbj*>0sLjm0U`lUcBF;aJJtm_ivH;A^% zHn3m;owxF3iO1y#E_iv?FRiq=-iRS0BEk_|dLrIDZi5^Zq8<;isWQJQJvOmjsH&xL z_Ca60rV#Sip}W_#hKMNVxB8~J1x0{twyi~vA{PIG@RyGn{Ko2*WA9RuKr9h6J^kDu z)cVd9Te8c%1-ZAitEm0msA6!cy4T(kckSmJy>!69f*tco?{uyG93s zoND649M5C)@TSbKFMc>)ZJ8JR-AM>p{OPKf)wp*#O8>>Flu4ZE$;@c6D2?N@>#F!v z)^BilW2_-?rHSdhDHX1gfWDsYx0_tIUiGByuK{6Xfsf~3=Xy$eB4Jk+kp|-$>9MrC z^o@%E;L@rdnI`ac@NEosc`)u_@UoexAzN_^s_x9AdlY&~(oI~sG%eZKxqC2%N4(>l z|KCJa`k2o{WOIFo0$6PC`LA2|Z)h8)SI?z+TC0(0p$X%Fi4=?4zxX_29~_S#qW@M4 zqHx=?5_{5!4zRGWQT)M3v-#e+`wS0Cl|cDyrmX5%{HJwoLs!?mUeEDy&95hNJmhxq zz$!>m#hpKB%)6v~n%${t+WYPrBe1xJpz5f6t@U~d9n=={o2w>?CXNg)t7Btf=s3+d z{TK(m=1h3l8Kq`JsdVVNwc=6jc>QqbaaJai#Kc<4@St1^I#{1`4baCU!fZ~I3_|Z% z>`)F9~rya_CreR2;3}B$><-RFae` zpAsf_MG%SQxH3@~rxr|mr@O|y|BO3LY@ije?)pciV|0b)X()9ZLnTOHN{}F@^%m12 z&$h~!Jy-i22_8+u?+W3J)Nxg@QpAB|HAx-%@L2G0bO_g$U+*!Hjy(pkf}*y8N*G7b z(6P!zZU9yvKA6;iv1G}XHcJT6fS|ha6VoJd3;25~gP>(%~yS+RUh z%wnZ2*Ptn^r?bF_9;e_Kr$ALv%(Bfo;0;iluV|WSh%B{ zoCGucYKd9ImmJw>_sxXF=@Nss z@Dh4Tr(9o|N|(u^q=Rl*ArkCz(bewVZNb}L#}(p8!Z@#R&MK|FJRNNuKB~3)YAMV> z09u5Ucyz;BhsMD{)N*l+ipF-%+js2~>lM?wRFX*+3w_JYjFAOIiNS@SI+};raR+MU zOLO8%N}LSPb69J#w9}?_T!>^+O-*Hg!Ia!@{?alolBpAZ%uDQ^->_elSBMYzx<6Pp zxm@|zT4N`?L#$YQ$=S|Fv1n*v4~NuW1L7SKX_Dq$7Q*TtWmlaPUSn0)=|Y2WNo)l( zsOxmBcg0zfATvt(y);)ghf`I>>b}Fim`+xxk)GjFB-Q)>ez|)g!;@v>-BuZVa+4`= zspgYS7(*3yQW}Yx7Rs;ATP#uz%dAr4IS%NI$@Ds4=)w$vo$l)esE z!z9BE>#HNmgyCp_*GNt1l0Jf_@Y7CIJUMX+m;&YJsFch$S;c(B&Ow!elfy#RO8t~b zFu=+CSU(e9m?FW3FZ7#He|F3JyHGGle`s*p#%1q$;nL;s>f(&xZultG^PpwbYBmDi z(zjF%YGYDXF^Bf35f%fQH$`f&8MAr)mlUAn*x8{PjyG2!R&#c%qIz%tv0eK?_NgH`J>%l-YXojhk*5Pv-R zGhJ33HpAVcGsB)KM6zxr_xE}5sJcE*aG)G5!2gm*7rBZTb>0>s&zP-gwwR#tSfY5l zZ8ADJ>vES*)H!t70_`#If;i961;-^yNikbq1xsw$67$5B_+!P&b z=@&_{U_lG9PAgIpxhwW{313hP`(bo^_bCC=MbghIY@v0J@B>RM(#?sKK4C>;J>tdc z=AZm4ZSv8vxkC$!FvWYVN^AbKz((XKCbQbIiYBY)&4P*G*vk6|?tGmrN}V~8XO$Hm z%$o8ONyPKejHqMck_RNkfiZ%$%Hzebj77+ZB}^`!Fu>@LH4864C2x<*npioJ)|}vU z^g~f#Q|O;`jJ;)8m_)CB*mB>Y_V$Gm!~Z`Q0HaO^GrE>nc8sAq@47M+f*0>H(M`9` zQLq9ZluU{0HB}l{ON3}X`AAd4kLV1}c215!np=CdDvkOl--QkLz=ysO`zi=lE2oR=*uH_A}GUse8uo zV?b#@wj#WtXx8Lj?>}kv{UI}S_%7)L%KU!T<18q(CP<;4k{?61LZ_~r-)5W-=$~j+ zNfr3Qga|a^gLc( z=ILY!(0;3d*)kE&_;NK!uk9SvM~#)hMe^&Ck5|CsPwb8f2ZYU&9;!A!I%Fmv zD)dM;0bL?Th&r=OifZPUaxBc7Iy=Muw>$FM%|xU^J4;<*^%#?JRJ1^%0V|HcTT_GW zxxYQlPh*QgCRa3~9r;pvS(EUW12GiTtujq_eRG)MOr(Qm$WoyRQ|7ZjDR)oNQKG)n zhdD-oLZ!)cSgu;Vl~LReH%{{h88B&x0~MRjDFGcmtbCkQ!61ixZ|tY;oKX*EKd8SA zLsZCN<%CmfBLYxOHjZ!HiCRa!!-+n%r2eram5j&47En!;0=*6JjGvlJO_(p`7?`Fy z-ZH@qgr$>`Rq$WAyc4fj>}}TvMff&V?ci_HaT}gv#1W!3uLyReKw4Rx5-JIV=~i}f zSA6xAyNCqbB^(0~IP1ar8^UD9^PD~Hn;1PEPSbn@;^1axe5Je}*5_lVfJHd4tAu== zGgTRx)?)ag=ZsY$TZ2AG4q+DqS(#=wp_lZFwp{MQ44)DQWV@B>=K2J=p{%6TScX5y z2zp;pQ6Nf*#=+!T5gr9I{idqEMJ(a zseX`v&vk@44UefYqwccbFQ`?J;Z#2Q;pF;@)8vkdWRBktJ!luJUht3-NoE!`EvPmu zwi9bJ?^E?#sB-veV3r(zwp>{^Zn>aU;cWyuZ*s#w_YJsbwa78k5zJau(z8}iCCleg?)QubL%Vh^@exWvIS;$t7cSJHWgBJtueGBb?Ae8?ZsBg=Jk#Cr+tE~}`sJE{X2(su#_kwOneRh9<)rk!y ztb@W2^Z{*67@{3r9r4FvCM*zBMQ(U%(lD#zKPE3$S`UOuJg~cY6IuLyh%_73^T#I! zm}~H2Lae@8! z6=g{WrQ;X1YOM{Y?y#=Sm-O$Xo&6Z6u`2)c_U=!x&UMu+1L2c?j_n}7PXu2*>Dk-#YjNy__)^E(#|aFo?1=bUO+<0*N< z=qQP|+;q{*77D`#X=9FAK*QCYmFisNd(}c!=S)_B#o=U^!`)Zzl*3NcFrk$ZG^pgr zO2t;QNi;;(K62ba^07y%I&Ze1)4eDY_Rv2K`OggBob<z?3+w&rsGs>L%h`i@P^15R^Bg{yx8zJZ<}qBA+Wf!Br|H z#Yv>P~X$75}+TP_x2dPxmf z>HUSvDEoVNlh9J4bH3aoH#*%R?QtUuFOPb1GI4zIrrWL1CoLJd7v&DT_wUuJQtuMd zRp{sy$Sx0(;G4&Y?P@deo7q0P8H3Drzyv5n4N+6}vFhnmCejpf)^uvjunp_4%5L1G zkm0N$spOgCsm6NbiFIk(>057_yMp=ldd z(yVEkYt^H1)dAB-gR<+~j?rTAW)oMo1w$eAtkSEGGXlEJB~wDazyFE-+Qnr$UM;XC z{R9sH02H9D56YaC=N`YAOz%Gk`JGP?y-#NFPY54&8@S>=g$Th1 zV3_FEPUh0JNHkS_yD0VXBuu^sl(RUwf1aw}zR%av98B!ng0(N?&sZQF%)u90Rxa#~ zOazflptbNl-9gBmdq6JDgkG$Rg6V3@s`5G7`ry$O!n~9t)}c^0rOL2GRzGe|j#AaB za|A$Zt9dkbtaa|TcqL2p`T=w=Hz(eFN5Iun{Wa?fD!a8kG_c|5q9K6W?KL-mnG{s$ zk-I#hA%lZb;MBYECW1K0g+O#&hXN&P-EpDi*6c>QlkiaA7MRZqAlf+q8t01$T9Uv~h%9h?H(QXVlXTrwo#i9w`>@3bV0;+=uY3C;^ znwS}S9nfcYz*Dir>+P<48jKgSNQ?I`!E%rLMyS&*h?Yr+6SQZc)es9KKsz-PZN`Ma zRS4)vMuSYKp`)8lA}L_I%G+;pwf2bHv$a?hO7yG?L6UTu#hs90EN^*V_Bf#v`fhyO z7JG6}z?;F_bhxIp=TyMj4}y21I6PO?3?F&XAnJwQS^`6U)DiJ!4PiZ9jwp<^N_$w- z%{%5|1>pH7VpS$av%|Uo->G$X;}VX$M2idn4l#&A+TJ)b?o=JqVPIX5D^_l9PT$Q9 z5yiBev7-^l+tbzH&I~dje|cSJ*n{yEnVj|9$rb zNZ2oTZovR{AoN;W%Y2?z&FfHg#ra2RkpOb5@KnG5%uC*qF~g98H#(0hG$>j8GT7-~ zBXd-(*7^Zg$0eWSgkk|3!4z{y7XX(;q6Fb3azOK^ddI59U!w(G%X%cr3?z=-Izoqd zF*YElJDsA8*|9kL3-S*OZu>RoN@x_Qs066Eop^nU7)afs+x*OPzW-Agz|lY0D+;EN z3(jHP6k3~6byE+KKG71ko^#&$7BnkqAPQ5ygO~^i^?u}1sxe{*L4*-_!Ta|17QX<2 zlK#uu{$Ikc8!-TGs~%7#;>!s=8C`m9Ghpk0t_YvIEu?G(%w&hBK$n)uR1SK3&b7xr z5-Ak@?8OLJFNRV0d08~#S#9B;*wLzEOa6>@u}=LMnIs&*>t0$?|21f|Mef?>}arGHvIqI&4J}KOQUs%ju|ZtmpPFeQpiR=&P7Do zOd~C&ryPh8P}S)HSWzw+30s@ z9mlcpRPyZvTt;I4?^DwDK-B0LSk|=_t(R_81UsJW?sF|YZ6Z_;A|X{GDC14X;$?^H z!vd9jT#Vs%(E1L{iv4YNvd+3BZRTS|>VjOtVp$c*0?w*42;96<53&?05%sA%C?n0# z^zZaOOpSPS#V1et1(BMAVcZraRZ`qv@!8)=2pON3nuN99KEPDtYRL=01_zdjJ=nmT z3{Af)x+2D0P4nq|3QB(TE@9yt4ie3be zIDrPLka-h5&ZiBh6QItm)c5nAGPZ`vF*vn=dEUGyxbVy)GtF;y+v(9o+C+|O{%ObX zcF{NuWON}Rd3InVxhQ})oNy?cp%x4OkM>^W( zSKT3w!TxSe&M+M!JtQ9K^xSq5p+)icdbw+6d4O-1SWO>Xi}~@i z0O{i8W8XWRP{LDn$&`2B!~64y8(~;r1`77)jr<{72Iu$<3k4CJs3aU{&*E;1zm!(? zybMcS*&nGDPZ)4VWSg!7gj;%Qy#(g(QY;9rEePWJkXbFoD0*~6xWxUYlIbyKZI=Yu zFPqxUQk9!Ql1dZAR_FT$^eYCAlmX;XtdMHpGz9x>l_3*Ms(7c^2rereRcGtRGAv!43u!S4Yo-yabf6a(W)+bRX z4tW`aIKa@R{c|eX_#=brT2#P{vijQ4cDj}H(oS*!872M{v}lHfhSHn>iE^Cm!v-q* z?o-jX9>FBAq&4{WGiH$H(XI zZ@&)-=N31a$Ud=ZEY0iTf0Ul9nyOian|gL=z)Kwwlax4QGSHT3o?XM~ zPem?qM3eKt5X;SWj_CRy=a(M4v;n^<9jqCtK8|1L5aCzw7hqBveE|mAl0*tDKo(Ew zl=7}x^%Vrru5;%+(vBgA^If}-RHC7xtLbjyCTY|!E{U->Vk_5oYHV?C5A`4P3nvNq zC%C+xH)w#GkJqv=Xcvo6M!);}Hk?c_q7a(j6phTc0$&f6R_3-%r8CM@u6Ik#x!U2qWxnwb7o< z1odX2FAp*&C2Mff6Z?|l-;!A`(Lzi!y(3xC1lw?pqgXaI3>+x2rHhu=Lo0_&N(mXC z0Hq7k=(@e9BP4=LQ-<9hSAx|#>N1^&_`wQ;Zc!{;&x}`wF)}hzQ@JdSuo+aWJ$3Q* zda-;v9`=c-GZVae`(vup>gDmqM#)l4Bmv#iXI&^E`A(;`!**egEX2O9OI^GB2W_#w zLNJ!nKY97LLQfy<+`8Ws2zW7uZufTnvs*xV)4!(?>LG`ZO#n?VlDGkH^k#Hja77r| zM@A_fhW-J)DrhEr3Eco8pe{s94T_@^!aY({t*PWDq4#tMc$*UgrZKq^u}M#M-%)Rz zBQtfeayP*YEIgxx15kG-L>~PMIZ4-G%&cAe z85)9&=6WF(O70MT-satui-gs_bx3xuZG?-F&Q$+wt_u?Jnpu99d;d5V08X1P#y^(X zX^N18QO7TbY_rGbLigH}5=gB$+^vYg3oL|*Gchd$Opb9Je$2t{h9skYDnGw%K>vf- zgM_E4chyzAcTTqSF!~K#h|yUo6~~dI*ekO^lle?_zo7g@10~nJrSS2l!kQO~s%&~u zWG0Ud8-!tcEnRf)Y^d1^O_j)64-B=}^=9D@MRnXyWh1v7Oau0=YrMEO( zYWv(p&oDG9{fTqv*x09sG;}yS0l@c^;tT-u)jAfpySbOoW`pwDuFmsqBFyvN+TFXM z3f5a|`GC&u7Uu`Id|Y=dzcK;P)uax#KD)Sp>D?A6EcVg}Lj?RYbz{Vcaoes_Fv^X@ z1J*({K>k2BcABICFU&kihD4(!eqoP%(>r}!6wICs-G{<)9EKpLvW3+9m_r2Z=@cRrecvP{_@D#s0)%ZZGF6^XEmJ+m1R~ zBQU7_0~Tw;6^YjsiGooV+z=BvQ_6q$0(etOO2SQj0|S9d#J~ccxL>uk*P$BECNg+_ zhitc=NW!hHvEA;sg~DwNx``^m&9VLGGa!=f*!>|8;6XxdA8PLJN*HOQcFG61?4VP~ zbo65>8=C$5PBm+z2Y=xQWE@0O_kr`HtR&eQDu}9RBGf8M29O*Y0!P+S{Lvt-jXvN8 zEEc7}w%U~@k&_y&FJUDY1+X7<{FsDyr)0Gp-*1{{5`ncIiR3PqyPh8&94wS2!T>Pa zl$h1_X>qwa`eM|rX%}PAI92})eypBDo#uab;v3f;bs66F`)nLDYrKI1#k~_*C@{9M zk$rh{zO~D6w!GZ6N;a?*syQ%miCZqFv!PM=&YPtJY<8ilJ&oMrfn4QJwY+A;sI3o$ z6iBOIWNMSl-Igs-1VbDs+Voo%$KcykEnG%P0?4A{m$*chRAX*(tgF1Gs%VL&{odKN z6k8e05|D%->B3V+U2c9-8~@=|{dB$UCx^b81#xQS1O{-fTt7GMeSNgs>vr1?vLFkj z%yS3*_ZY#!DOKr(A<{FcbVU*1;0zRu5)A%Zm-;Rxp{U6Vyd7;6Pu)DKXK31C8HXoc zp%5=FhJl(4Yw&psMwmzlnk@9XTiK%)XGjIBuTH5Aruuo;cv+GORauv4uGrV_?l!aj z7CD5@T6HWX{VeezwQ0pIQ3SK;Xqg<-82PtS=7Zhu`(Mh!o;svw?_5&$=ce^D2H46G_&m^d?IdXmvT5&ABXKy4WPQsZ= zojHCkc>b8AvvGddHM`R)FF*rc10922SGb+P3%yQRh!D zOw%$`yb6>$PiVEu11m>wNM&>L@7~urH||+j-==_6IYY;1=(+!aJ9dsz`uNG7V3Cb# z(gwN9jhGxbovsjW~8 zHNn8bv4&;qej8R=Zq-F1+L|zRBU~Iv6_Ffka=6efx)~T?s2^0q?_FeZTR`cPfNqQJ zv`A*O+5h4+QBkVz70Ty?_!0ov@2paNo~3C|6bS_5@zNqu2gHwwC5#OxA6I*-NJa{B zXE2^qmyH0~>*CvqI{z?(!yQaAJ562_5nlBP39Cn5nu0}_gaXs~TP^!_K473nG;vpz zj}|0C7KBR1pjND=Mr_WL{HI!N3J!PwoWs0ujU>49T=D*^h+Iz~hN!IWFsF-WIkh9X z4Bgm^nif%JED<_V3jG0P|Y=}1(N|{(4yEOiWVIy%i zyfr2RnmbA$k(IA5Pz^OyRPeIlTy9h8n*&UhV1IT>ls{$ha>VFK20M`CsXvSXsJ`;x zvlMf~(tbfR$^>gur~qm*TBS#(E}E5s)_T7JNGTe>)mwlAfzg!7M*yG$6a*gevj6h~ zX=nQDE@`Dj4mFJoW@q5#{_kV0U(Eb4VdaG_G-S}k-myI}W%idy*x;@p5i)S;d%6UA zljn`&pt8Ye6vAhZPhl)+OfIgNKyg6PizLnZL)?W91<{xj@^HBzXKb1*MVn-Dpm!{vk07~I#jrTV{qi)gW+AS zQzu?ZQ1Eyu41@Y_6`p?X@`4Pcrv}AI9`@O+1Yo8BsToOg7T9)TDQelt`#E!WJ<)(e zA!L85WIe_M59mPXT&#rY+llt@;rZFu4o-S`PC9v$Rd~*x73fuq(7`=X32i9&CJ^(_ zd(fUbJC5AXLvTpfCmKES_TFFFgo}$?2w=AU0qlLszq9UE`0AK2u`S9A9NoD>TM93% zGnoqquT}ZMBy-C}$zo3L;W+PKJ$~zJirOg%UW2IeAZD`ul6+}Uhrg)qbE;eoZPK^wy|`sEBoMj3w-#!>YTkMHJV2& zX_5Q#z78oXJ$v3i0l7X$+mpQdK+8pzBsKh2oWzK)CG_M85t*WKH+cR0D;~qJ&=zPe zINy%6)3e(Oc>&`hD0;EY*-?jelDTXw#sL}i`TzJw`Yyadv&_H<(s)$4lgm|5iCHvK zFOh}mWuDko3kHv=NF>3#8+W`*&KJV{zkN?XyF3hGFtJEO7Vk8H_$Wkne41xXIuR6e zr0_yJbp0v-xXkYj&FMgckwB=Y_6c|SZ_#J%)^Y9t7l$TV`%(ptTce;*%2+V2nhJP6fbY^w8Q z6y7{zr+NNC*R1LOutPbq<+mH6Pd%*w^i+VRM>vCM!7ZTgu@`OO_DS$?p!8Eu^~mdE z?__eqtD&qc+7s*4Q~JKyKcpT=pjMP4A_D#|83@su4CJoCjHN_{RCX%rJ(l88fKv7F z2DL;el43lOR~x*vES7Vu0@s@v9|^KBei$fjiL)8hvv_0E1|Ra53aH&fY{+gU(*xEr1UTi1 z8D`OvP;Q-)VUM!s=Yb&|k-X|`u%&@@2j6&F@F_Evr)$5Rk}BjXD4BhihS%4GpTdTorHgk%|+~>ag(?T6e?Z0|(8?UxhVF+HeH5 zm4|g^^b2>$A!)`t#D~tqf<|{b9%9BUxrO6}d=D$e2!2m$L+KU3l%dZL4jUw)>Z&VX zcyJ#wc#Rfv;VJrbiwU0tmWFL$Ntg{poqjevOfvLyeU)=;$ZEaC_T>D0u*KHLPWykl zw_u+_%v6;O&~-BaSJ^V(ZOH9>(njzDt+LgLst(gRuvlbt9j}8!HVhGe8MT$WKJlNq z1MUO-AKcDO@HrYOLD6EQ0Kn#%T5D^K?X%?gD{!3iSFS(TpKoLAc=gQOF4rL9)~k67 z6QFaw_aao|>g($pMh6B!oljzp=w!2Q(R&jL4V)aiK?a7{-f!d{< zv9npiBt?agj9kBxeKqms$R8O$%4tCs_kMTi+D81lvf*<+=zmw-(T&ND9$R%+qbkx( zz_Hm`vTqi4kx+qNyxHsLx9Zx^G!S#c)1&!se1Ye$T&J)#4KZU|IM=OAt2*6c!%wjg z6>LeA94DX#*iE{!Ezkc8y8L%u5F0)dgtF~Uwc3@EE8TT>R+0f&R)(Pp3aQ8ZhUJQ% z93!aPe@FH`6FU)s1KAZr^GnJW zz*i>gT0>Sh?OG;-pK?ic=uZA~f`BtJ<1qE3)(u#=wnYe>{*!Y)!2hbBPAv;S|e-__U0#Or^J_=M#xoJU zd2zVaKMH=?7;1&<8zCh<*%h5A#ZMxxe>#U_9%XT^cY z-!6UGEBsSX(+T~feg1RU6ZAtVaV;D`k(9*kk1zMgD9{i6{XWQ->TR%h(W>WP9mFNgR;F~18hx(~OQ<#Z`t+#tEXUg1-uqZZIFuaIskF!G_6g(HZefZBxed`f=9fppY6Krah zl@8DF`seF&{eO}c9X&4sIVC^f7@&t=V6royzcJoX*0RerSp40X$T(9udIY}ICVX|X zvDp#g7=#`!46svrkNyKAQ>J@Ty4eu9DhnaH&fecr_x(C8d9G2>#1XsiSt@q@8}Ax@ zM*nST3K{f#f5Al{mcz29?P(l09a|G^w$beil`!w&qle98NdK~9vp91mMCCOM(p#bV zK`-(I1t!!-yo)2@qqU1-7roV7Q4nVYRrm+3uTLt`Ls1WK^wHmm9?cfOpazJR8{JNo zL(&GRMSPYKgB&M%Ob#299Q|z(%~auG@7&2|a=gWzI37*bk79_@cJJqqTS{XyUC?j! zf4WK;$Ng@hi`^s$4yS81a7!TJ9ZW`(j2EyC1`mj8C&fWT<&sySBc7oEFqF_1 z`bfcpx$$7b_1oRqH16N6&=3&($v&BvCkx^LIRk@AS6tp`zBYef%sUAN5iQ&uCiB(Z z+$TyzV*x--(aPTE7LD@&GPh?nW3cF{ZLLCL@6!LaC4Mk^tF13Av&B)QBp%RQsS~UZ zdrdkNl*8HGz^Vz-*;~XoXo|&dB>c|(MTD<=>OWn{!njjg>D*08VakZ)*9v68zMbSi*w3d- z|IU}ktTlRi|9yJowyZlqpjUYdSB%mB)<|0ElIONh%G+0kvV*%gV*X6z448#g5fBgC z5?4OZs7CYRe{&ZnccT6_GZSm)^McHC4}e&p!~>nQkRV9l?W}uuROp(!Djt&=Xn|-* z1H%BtQraC6|KV!t{@sizOT75u#CbsFmpb@^^w#W=$846S=QvVaL?t79%*3~*gm**g zRsjCte43Kd3_9ZbMCBI0Ec8bpUuxN2wJ5xZ?ErjsOs$P0L%*B(@&xK zj>#dxw}MRkkARr@{ScW4+4Bev`A2XL(LBmZ-sF-2y>!S^%l~HT-_4ZLRLB9AF?X`% zkqB5|JHX6|+$@SYfpuhaQ`Wmmi8-YNQbTA=tv|Wb$U>|oM{j8RF55#gSrdi+Ns1JV z3EhujQy>lbrn0Ci1%M3tXq^~$cu~<|CJuDBR-TXJ{i+z7jWjFf4xK$XBEw_2Rr5?9 zpZ|OTD2DHPG~`isAgQ_=f*B^{<>u|_AQ%T{!IOu zYW$$W_<4I(k?TVdW`8rDA?{e*!X#(~-nz}`jU$u5tq3vN;-YhxhK*_Ocjn@pk==?jRTPv;;+e$&C9N;6^iyDAD|_N2zv_G1FhAGKU(Q@%#bdaBNnDAyeK zDY$k#)bSJFaK!ia6|lqfpAN?V7&#q)HcIqZy7&M={ij9rU-dwc=x_JtQ-D8S+)qKW zfAJ&})A#!3ItTc7B$5B;%8jVfqKTfYxG4kmevDDVTMk0A9YBxe8?^eEt@!3Y00KEh z@RpjF*IL6=8TZ-aFcS|hdYAE3rU*!ZxTwSW|9*%DtUvdoY3H?U9o{n$imFxT$k2<2 zj(cp8ogqefcxIIgfFhi}!`R*pc*lgjL%UuOw zfv%#k+_?D$7_F=w0x3d1P0iM;H7f<=!|632!k__9VgAbY+qHx#_yf;Px@e=LaJX;r zM}Et;_TXg#Z*`(y(-vu>Um^E?P9>_aJ>ZIn5`Zt@)xz|ZdLnxSbY%@nm?-mmwZ9?f z*uRl|GH(EBa6MO@ue^@s5fpqFT z%ULF(2veGm(V--1xzz$M1OR?Iejd6gp~+=Lx6dx0dHsX?&JtihMpMVqEw^T2Z1dnN z>0>+xdfR+EieEEU-@fY>ckQ{Eo)bgW)__A=8Q=An$;48Vk)ch*r&0M^+MCs=?^tMi&13yzHnJ>z}`JygC$ zq}d;|QO?vVjfQEyIH0}ffSrLc-R)^0cO9{>^K;P-_lOp^1X-MESKwsOjfeA^ctZd5 zU6>|8L@aGljY|RzihK<50JL)Z=aTKQvqnQ7eSP)MVXnS=`T+DUZ%0ot7i2{sC>h@e zj>8=AQvTb@-k3H&m!7?cfs6Ze^$M*_7`LEwXJa(638Z)Mki=%&CF5`Xt~WS-HBySw zSWcPv3z8tA$#B7)JXw}{B)fFN+lAxJrkGO1i?C0N5qxV(pZyW2ecJ!sirK#~*mJ5N zAo+!cPicHH8;`a{JbTAhe}z9)c;Oe6unE8;aDjXz&pTf>SgUa^c~8w8Az0zg6k^ca z#v^XTjExW-t)>d^y_X489B(pDb&i}(b(c@J#F9-T9X5!|i}Az-;LB(c^1{)Y z?SIZw_OX~egW{{LL8s#7e`QPrL$Iz7P!v9IzfhU2`Is~4 zw=zg|c33*sF_2G?_^`G2*qg3icDix2W*-#&V}bo`r(^ zHkiwFL7SU)`I)BhrCRWlsaL2RX65%RHs!5>Ja-R`ZKT3%fZP~+7k zqCGZSf6oE7+)+Fhiq07^ByP!Y?;|e-KACM$eKyzaD zjJ^jqI&wz$k()`bKLkv5;Zxk|@}oQ2f8@#Mhk8u~Wi?hLKD9QUjL?;Np!_$tC{N7r zVP`Y8b|`@B&ZPPC-0|xL*(p1g><4joO0S{H7J4B)do3{yH<@R2mVnjYsCt41}3=0&M&xOGOlmV*9?++;jL(@_fw&nzn+g6Lj7c~!OgXzVx{ zVN83ss{Ph|^NPiOG$F_$dd+`HXP3g4VgVoh9q@oH0Ba7MYQT%~7Pv$>>;%X)hm zpnNT={RLk+E9^E~ZNG!HZ)rs7(})ht1+2dv$(bOFtuGuIzX7o=L$Q*8L~NavS@jAn1Gx%B$|k{V3xI7w5ThLS#*}{2 z$=V7V3N$G5bn{iBJ4zca(xK6KeD z3oQ2$ns%TT|4E#~vjI_HIa~*b4T{~Fo=F%-Vxzd+E_KW1UrhSVc%Zfi-Ob4`tU@)N z-gk2$e4^&;32)y9a5At_Yk%97>m*OHB`&WC6fd`Rrbc^8`aAq*o`nE_^W5pny4+ds zaDL8%=WW1aVUPLbN@M>WZ%`qNzmFOk>^xtxmFXueO+wIH*qso2O6z44`rz5Z$D65~?hK zzkt<5x}L~RG#c`x7wy>!32t%z$U7WRr*KW(*{pS#Dq85S(yUN*NK}~{6<6g9ai$Dt<-<^_;S%YdL&)$N$@S&;Q<-d^6rRu~%}=#XMljd=bmQq?0u+i@fgV z#A{EzqIykZ2k75*%}6gHf-hn3edOg+#$hjsjM0I%lh@L!3PVKk%qyF=x}XTxZ&A-urg00UqspYH(Y72z8tu!HL%B_yEk9;1U~T*k zT5D3}VVy4RYCDji%~*S6k>C^%M_&H5v_>ve8~g68O}CWxhccM-IXr(-u98#Gm2F3> zE$~XV&M3RmNY$gmxUwAjz~R){+6&JTJmOqxm-`hiu?{83E4O64b%OqsGuo&MVD4)A zN^pT~>i0B1^B0aJyi2PexQ<&W6lzk`&p(;k&pp$IA|kWq>bR(K#4oTC=txv4Z;FDR zlYc?iBuFW!PjmT2yc zJA;i18?b^&^Xx5R)tZ-=7%T$%-;$rQGZdu(_#W~v_-WyN1yeNvVGg1CjYYe&yUUrl zPiij008B$p;5w#_zhDa7lrwbk$Nwl3pP?|!Cz6g9e!c1oI=^guK+o3LS&}H7{XR5t zB$l$D#fw%6Wp{8~4uttZH1_TbmcSTK-Cwn^;G!x5iH(rEgpBs1S%7UtsOCuIacWpB*Vvwd+R3Yodhd&tMT<+fJNDte># zFKW|;GKBSQll1!)(|?fyu~m@=zZJGU^tf3Q5We~Didgq<<)-l%N8jw@{N;A*`VDds zi6~NXfY$?9NyuxTCb;4+Jd%E^_3B!=hdE46QMS(Mj}7dKj-TCZNncOO3>puzAk85u zvUjesA1H3BeK%e4cHjaSI2j95EY)|^Ja|eu!X?Xz)i$WzGZ{@L>0y>NRyX*^KI4L&$C<|}i9u!BT~__upg7|zlGb0^ZYOo?n!Y)hUll(GGwx5$H+mfD%P7Pj(WeKOI^*oHR_~DCOwM2Q7>Jh5_l$0JmQP?8P7tn3|dFM0_FtN!C zAG19#%>KMRj4KTUu<8#cHobq>a6SbdS_1EZPxY^fG~q%fkzG7=`~C0zFn=J_nLZCG z$tLdahD{}8y(amwx`fJOxjMY<%VCXzp-&`MzIM5(O}TIdJ2E91@f}ebp-So!)yr0! zBj{U|OmBL#0QTsP`<8IM_3RNSJ&ho2;#_JW*lGa4YyPk+9LcCahI=%dOS zyvfXh1SF=&Ku*0ElODjfo<^+pp6xP?YH13z#R&48|71#nNyf9_uP6CvRcu z^>?CWpjPEg7Dv8k*OoMpr1ppBD;dUA4iwe&Y)>lM&7v>^)$BipKFbF&7!DDNZ|6Ft z*2q1;<)*utyf2LzkX7kKqN*j>;3BxLwZl;>CD_}Icw%`S*xCI9{kerA|s#)mUd zk}h;SME}n0tlq;Ue@Y7O%=aQGw*NV3hql8#6gDNHu4Gk^y#tC~fV-_br^Tx7-YLjTQf{?I|AOmvrPXQK+|97gELBXYcM!2EQeb zY8knP;#{#|LJ1kj;|=N9uei~bV;NMU`Y19gQ5V|(TcU^XyPX?j68n#Q%_Cch$fsxS z`}m;&^0|cT8I_O3gh+i;IRgUbf){H?>Udb-Eq{^5%WDV`zeE(+Wg<(N?eu%dE$#z@ z(;y`p=Iog}7LN=w2aJc*m`t^3esRXCI>}^6K$qUva-;BIc7lqgu!7V&HJbwa5LWqr zc5BU%c>Qt8fcA5=&E>-v$@gDl;ZvzsQM2D4y1-H0hC*HXbi7UxqA#{)B1Q$g6Ksx} zvbw&rSMe-J%$z3oGg}1!?K^a^Pjvx*YhwS1x&r5ILxY$@w7SnK1gIWy<)Xr?*~>&^^QW0&8sQ}=2dNhi4>3^z346Ov<*HZXp*Bap*)DWR6(I%) zdVNom5|Az<1;eT#C$AO7Gk{|GDOK&jD<^nHQSwp0T9h?T-=4P3cKgDbYffwa1T*8f zMUGTg=O6AQ;x~x5-c$F>2OT9|C6^u9kLHbuYlKF5{)YsUn1Nat`DmXmUwD>D^3@g` zHQ<|MA(mtz5!Cs)D%9FmQppl-sJJTWI00o|HUWXM8Up<_qNSja=Q+n~dfv^=+^}cZ zA^N%^j3F1`xEj!2$(G4j)DCs73$Y;%ZNTuWY%@kwmdb`GqU_|QYyK`#HCO(!(pdkj zLKjPTsh{^df&nKF!|gswov5=2oy2zv{_@nd{v1&r-?&_pJf*CR4XF}1d$W@WJ(-t; zdRxH)x|d^SRWpLU}jaLcxI6QXl?8#c&e1L!oDaG@M9d)6|{e1>u&z{mtITz`8pPY z;pG#hdz+8ZvRJuO>~KdvP)6lID(=!64`PW?;OvT%XaWSQ#f)d5O2LU6FDz1>$z zdn4y|xvD98^>0G^=B08ldB}(5eoCHlp*egv3%)eU1O~FoZ*lXh5jPB>1Fde(-A9{# z!k|c*1>SpzGU8=j)#0M3W-FrMcSAvOF$TUTZuf?TUjL!(zyF_@q~v=ORBWTSmaofx zHrL2NBeqQ@^H)@K@5LtkbfJcyo zZ@hVQfC$g_`|R-p3F`ApF7Nb%8QTP zj4c&ohj$eBKH$53t%ZRD4{^jaMU73$p;7{E8PCKN6TIx4hS~t~HTATm1j$~6Co=>Z z+bglMGZ^X(Xfgj8c4%7NU_82zozB6g|8yir`J-0T)gb|bK@2T)tOuo-m%#v2uC#|y{-0VtecE%F`5b>rlspLn z@l-SDVx9$+`2;kvi)97swYx!*pDK_D^vy!{Z1TB zvP<67$yiuE6p&JN&Xg%1X?0{t&{)%UcGKaX^3pzCRg;w28!))mu;2)vZhqq2KV@B! zdDvgGAURjkH$)bbTqjC9bYKlwe!*(@-GbS68rK^Pc zvHw)!D*^E#6t&3JA9t3nN@HiTvAX9_8Q_8uI|e{42*^os&w;hMtenM<2V~Y|eaepK;fd zC78-D>qc};Xc!yIhy3lJ>3PywXM(vVg9p}k6Mc}g6_XvxzH=xp`7K(v|KxMtqPf~X~XA%2kC`h#z< zD1_RS*#So6!M4Nvq*{Y{nt+?>@py(Pi$MZhREwHZJIOOHLAf{PQ1_>_kZ4vgy{2ou zbQ}azCj%+cxH+ZETQ(J>d+;lM#jrOu3!Nup znSjcAg$Av=zUUzfBfXDk@Cgc0oGaV=Q^_?eJm;>~=lF%c#VRDo+Aw`Wt|^DcM50Rm z=)>g-!8yCl7Sx8IZn3_j5Sr)PWeosmHv-*F`_A4CdU^rccZ8L!h5|#LFZS%hL&ib@ zw2$PQ+5fJGRjMc8=%gug!9oJTlJkSp|1^T?;mL*lX*Ne_gv1BqR z2u!rxEp*zox>|oIvWAx!Wsp|NSeU2zo!LNF5M<@Yo;tGO_Xj3t+(d~k{NiF4aDY!+ zm7tI>MPFU~8^mjOIXoPR(;S^nhrmvwC(D=-(@ujSs!7+?^|e5*9C1)ZBx`If5nC*nvVabQ|PE0!XjRvBPbU zwXMCo`x{SRYaJT3p;q@m&Jr=r>+*S4Nj}l$coN{1uqxoggz(M&n~{nAm^Ufs`I?Mx z;3P!w?P#trHj}p&#;}0TpGT_u-MGAfmX#KPHYZ63A}Jl_lYmDhswySJDA#VN$F{Wf zRC@S(vaIN;a4>O0FjTVyCG;|>cH%)LQ|CV;X|J#Oh={;&)2osWk$tAz&tDud7XILo zh2x42i=Xv}aG1gAJVlZ|WXfWhc!1zdf8gy?A2Ff;&7z1A^>apSchG4e%Z*BBi{ogLlk}Le4xa-c)X|#h z_b2}=iuaM2IHwwhw&W;?49(-{*B+5!AM;x6hfNe4DYo{i@bHc*lzmgm3V4VGdeDHf z36>YLtDk;@xr32PqWP#3croTRW$a9EQ1ybhMlmIrPbe5oKu;=DBTOW*$J06$$AaH% z9Fjii+3xiNrtio5Zw;L|%n7U=UpR4%!|TWFs z0_Rx=pY`^1eaj|~i9@qz(b~?qyZSsX>Buq}5gT7ch}!&IU+7vcP4ngZGOq#CrZ|16 z*q^g`iSV!>(Aw~jjnL%Q7MKb%-wtR}+#ue^D&Q4oL1`&U$FRZouu);^NGiT|+k5=V zaWSepX-d0d;P;Efha1`yM69a~Z{%JfD6zvoJmoHB@SRZ-`8*%xt@cPHS9Zx&zr?5T z1YUrJa)Oje`1b}9=D}U6^XDsc>Y*G5Lf58h&lbE7JQ_>wXhcjG3OJl3dvXvRjkYlw%6ZI#1eCzm+@H5IW2O(x-{DV~x4nQVSS)ZzzMbz2ySadk!GvOqPPm32Vk zVAVsRII#)pZZ>$Br;!&HPt6Pd(MFMf;E0ioDies>QK1k z@iD@cx-r_zR*qcNFzs}i%4sx9BIeC1yna!Rs=oF2;GE|^amz+Qc;6e^*yXtG5Q_$? zEE63(l1i0fNYR#>eVN^e>H+JzkcY1>KJNPoFNc0Y_sVn>jH`q zz!=LQyMt}j5~d5R3606v&v?^Lf1UfGYDW>(wkQ^!&AK8(OlB8o#fnu5*L>du&sf!t zGd+&?rv38pNsO>{vXh}2u#WfwkKrX9w%s&PpRds2L1VJFS_8D#IeEb8>OKz%(bzV2 zr`Wnte%UG03H>WUnGti_)2OmmgNfsuubENjM_J@qHQg62ky)#*n=^7H?&YDtM=ei9 z`6w{SH7{D1>k_%-b`gqfydvM+Zkni7wohEv8%Nwdjldrp`!N4G>Lk))ZV$Df1UXMx zsq(5Fwq-pgZM^Ut;bK!D1$3aCmp)8-f;9qw+X$~6?8vXH~mfH%2aJ@p&%IAXjG_%7A*65lqqh9E_0~8iCSJ=?Y#CocriBM5WIwzlJYB>#3eUL&sLlBR-LCe{jm%S)p|{( z9P~|gt;#q9D#sm~4<}6&T2LI5wC9thmgaslf(u+wnC?1DJ3yD~lD4I7g^qO|?NcY8 zSk47Ifwfs_iFT(moURRL;XMtXRIe5r2xeQ{E!>G{m9G3=oTmyja88LHBw?E-c@O{g zR;}^F-|YHh;rO6b=WKR8Ie3O}F_~X1lV1gfy;K2#vv$TeUI!%D9N%}Q9dAVv7z~33 z*-W^b%kke^OC8#<;z!RdWOKV-^wm_BPqyz0R&I6t22VSJDTdXYdSc_xILk#V?Q0%( zhW>F~{|RtURg0+^KF(D(Jv|uN98H%vO8h9W^&kfo@42&oa!4TU5tzVDu$A)Brd5Cs zxE(8svCLW)m}Zh7^=d3=b0jjpF3DP&cjcR1avY18`%DLN&UF9+4{$MF-+vCDj`z3s zDq9F5V}IVerfMO#h0?4|5p!ZXm4PCN$%4x^HYq4=)H|xI#AM6$Mg2+)p~yBb(*SGk zqCG!JVTF;}>Ajhtz6LYO%buE6!saq~TkVY4$*#usschc{XBG#=aZa`4Ge9}+c?yK$ zzNY8zku-m@>T==NXCaq6E&|IgPq)@nmKC=ux`y$(-W%mFslp5SIxVuB`p!i~{9L^F zoi+||8r6(phD$sI{7ZZgyCuuWDIUZ6n>^W=8`a7$_J@yme@`@6yQw8i5?qSKYGOq! z;MjD{lsQ>PZ(in`ddO_;j7PX^zGTk|QSl*V;wZ=o)#sbW9~>nF95v!+%|nJotd$222P;v5HjMUu_=~sHoILiZtC_9# zHE6M+fKH;NNSsTEQrf}nX>vH11#WhN!9)lcB;-I$XiF;%S$*N7-*>3uM#^6mt5yrGhFJs(`x@|Jh3&)g z$v|j@Qe?ay9LEK$0au{rHY4Ab7PS=#W;u;gCgmSe)^%FUe0%lxjHU?|>g^Ca%nEb1 zqE$8L@oXVJ*F7||OBvk00*FE3v*a&lj#4V&nM{v*o)b3h*<@5@aNJYw$}gSc_WaFT z#l@QNjHi5$vuT03L~U{mOSNL9x2}1FpD&~mEKr`mo9AYj^sfYX#T2+_$Gk?kL*!5T_X*%fdAMwV1Kga{lx%(1FKS>Y&#!<1Y z$8H)@q%f@2axlQY?^Rv?N#KEw!vvh1nwx2l4ia5VLbpCFa6L|3FM7WD`ivd}n1wZ`Q zXX|5f0n!PlFkqG^HBH>q1D>(|Jzs9Yr@psnzFRz$JSUDMxx=@3t zrywQWCgs3m&M!}~TN{wBI(PCr9_}e~AjtD=Iw1vHVX6En-`|Aty#d+1X2TDm06BLe z8KFIS`A+Yv>6GLf?WS_$;S!eeWXHgKM{uh}=r?tNT3|AH_@tYwByE}`c?P!=L_9J9 zwly@A22RyGX(Z_c0ynyZ7C(T``68+|;cnw16%g9r*(5bo_{t!&^N=6L2(Vm{q;$7y zL@CAc*ZnQ>7hUudE|py+41Zmso>c%9nK_QT9u(6hg*h!7H1g7D?*CqHi^XBzrJ@_mK_-jO# z&l-1DDSz8O^c0E%>)qq9dNF7`mm(SP3;NUlb**r%F}TjP&C2S=+Gx?%%WJ^LJuUx> zU*vSc*5x|0p`pE4mUM_UHfjGqb0hgrU!fcq3L+vIY=dGg7CE} zN{eJR8c$b;DM-j`JdwqoFKG0|b>(IFJ3aWhM!@UV6!MJ3$meiL)#X&u@5Www6Fzb6 z=Uji)I@?`Bby_W^_Q3yWclS)Mw=L6+KE@OyGbyo^DQ^0MR7VepGS*d_tHv~E7>h^8 zR%MIsJy4l3*3Vm!3+fabkGRaIk{+g*z;S9GLe*L=b{XGHx|>XCwT%F8Ue?AWLnmUI z+O{4Hb7#NXsauSCq1z_33;3#wQ?%40{J4=|{*$*>WNW%>hM-oQ7x_I7w-+jazumLx zwrTh2S$6)J`F=TvUDUFAv`&`OwVqyidZnQ%CJw22YyrjPWP)qGUuHtycdU zByxPp9Wb4DY~ar18|L06^80G!>)Xs^YYUIAY7osUKBwh40@G-9SuW=~H{^FlD6^Y+ zghgasfoQGD0{)us^^(T}5jNuAikfY0GAV9X_2jjT;cg~V8f|-qH}GvtTnARJPrG`S z|4vAeR`<&4ydhyuE%iEAlGF6&S#!=b!EPphuU&a4WOeXawF{+ooDKm_P`!sILgRW<+IUK;v=<#Nd*0n^CBA&jnBtrhh z62y}j^gtxdGp@-Gm57IiAblz8LA#}J}!C>V(U33Y*vANvU9d=j76rBDNW@x z?Evb(Z8f{KsOfI#+I;PA=9trok2i8~65`;Xg)D;eg>tsO00)SOmw{H#Do4XDTE0KKiIyLV5wJ zrtoTc>U@ZIW6Ca}KBak6PAt9rm(DxM&r!(cB-SS}o8ayu;`df?|{P z=28~bH|ZjPK)TWCOt9R;Th^8Ic6(z54KXkYnD0t(Tx!-2-Rk(UfFq*el`(c=f9QKZ z%e2w;z#@8YZA#1oK9)bD#k_rrsukwGq4mx3yjs*DgnJvWtR3q~D8kmmfRUUQ`{%5T zqLohk#TAa9z^8pOKfCZ>=iJ}>y-)ycG2R%6UBBe7+#bun07EXCQkPDtiEHOxH{2}4 zNr8K>xv{hBK1_85bhQ{mBMvjSp`< z-&tw@5ec1%@cA7A1HH$8Tm9!KvMJsW+3>f!Wm-H@u4p4;Ch17`c1%^wQjzt)A(Bj!Vf8O-|Ni|=!#u2mzoJ|sKM zMdEdqh<*$)&WCQ#@MVO|9>4K>*V)i*>CP03=t12&BVNs>6H=V+34V3>LV5oAq9rNy zSQwZXG>K$N&T!pe)RTaA`q?=+9X&iK{dBSu;{QYUl3GGQyNma4r!ZdMlxrZe_&G<``8X%+;* zk}i&!-nR3#irsGOcc}4-sYm}v3{PUq}?zuRf&OioDALP3YZmD0N2Y0{H zY$L+4>w4~ZM6mvNznE6i`{w>o#@EU-{Ep|nZq7GF=q}d9IkQRRNi=KQ%Y*Z3uJRPt zQ|FQWUzX3{c*n?V8w1vUFXP66%E`vVviJPJac1~f9kqTnzF38oINh_(77ie?F(p1c$l;Tqj}zDV5ydF zF!{APu2GNv$EB?Zj%=65r5Prza!!rT=1Tg@M}67_hKE3#Mu$c)V~Z#A1{3hj#a|xZ z0CC=Kon@X8)U`p1H}}*|2cxq}-Pnom=LXaHHfw@WwMhj3v=zoNlKoVB;#z5Ef=rL; zhv~2v zz|xhQc+!h|I*Wy)GjclLiE(7Ba`Aivt-E%+-yR(*DFH-(Bo+C z40qw`r#WJF#HsF$WcKkz3qkUet>vLNIoozxE&$Y=bfMxegXf)x( zbrV*x$!|Q_uL$_=H^9}(4(+6jXjJgseSL2!*8)dtGwBjOt-jE$~ zAe=L4gIAzaYQq_;;Og%Ca3D%w|4I2fs;xn-ku_A|C98){VhPWQ}R zElc|mCrGTs4!he4;qwJD-}n~&9da8u5Ns5Q0MRA&TTe+|2a##%;#`!B2$ z4)xGtW#8}%{Z?sh(h5k0H}mV+dekdcbm@obOv2JQ5J99-{^d?}f9?Tpns?9t2kd z<#}p73bdSBuO&R~OY~cWPeEbG@<^mQaClYeJde3t0`H_ePyJvGZ`hWY2jxxpEFGzQ;ai-uPAjCiDxaD2t*VBu3Bp6VKA*KLD^ z0w5PdKP`>=wlRygPZ@UOCAa30aKp&P)2*gsRzgf7mSxR~@8 zN`#vV49}B0SLl^|2%4t(9DXH4U5~J^>LE5l;3Zuv-w~pv_POL0TD)?>q%Y+PV!5Kc zO&R)GB`NU}!1DmPb5u>!oVnaUw?Ql6C9YB3*dx&4v)uPD%iu2FJqsLVVaO+z=6wi% z(F8J{f&D5}3ym#iZ4YFrS~#y{sqnCA(n(9SGGuvjkH_Tf*@DY2DuXn<)IF`?kSLeI z7WEX8fz@Uu;A;Vqa;3U**IklR({rTyFn~s%Wkc7&L6Cgn)-oy*RjAE3@yCOiRRybK zwOboywkF!+8RKo(zhv$oy(!Qu>rld zyf+}fZKuy_lC+a;3muR(Jk@yA_dcxX;^82(#T27S9C5BKdCWzK65kew#uhYc@#D&( z-Ygjv*H?etY-DD+KiOv|aZcXXg);G^l@{(~-`UKFb{A97ZFB-7Xh%nQMZCB zQ|8FYJy*X6)eos7`F0K408}HzoADfNMW?U=>Jg`H?B2JHBfDJ>SG=@GbRq5#whZQ3 znCz{X+iryO$$r5yyn(R|f~wkScA6Y!MJLOYoh8YXGuvH%wL-v~cWw52Ecq;{ernsuC>;>L z>Fn+$g$;ITJmkb(B0(9fLXPl4+V@Y!t;dU_K&W<$Sx-I_&eBv&@}>%u@w7m7^1?TZ zD8sXkeY96ZKskCa#j-}Cw4Bxg!~`rLt~#w``n7U60Cj-XLQT8>^#Xjn$!ok><(~_m zSirU;EB{QbFQSga@kR7hmy5u@miN=qEbWTB?gp7tLWtqQK>JQ5)IF0~3l&}!E>p%6 z7R?jR5yw$3v_2EylIL{9DR42JqBog(!Oh2It}@A1 zabvY6b+5$gRGOw$dTwe>Wtk!sAl3Ei2eWoe2=ku0ZYLgDg$}kJOjL@1?x)tIsm%82 zAeT_{*rijkWvBh4gAh>T2}KUIwpfMC2+*-UvgomKHdrDT?M0wS^{}M5@MDpF-&yr;fLq13@00hDeD&@=c7cLzeoSm4oXj*sQ z&3Za(WmSUqt8w+iJmqVc%)p2*ZEA9IpDw39eb_an3D7Ei&9cpHhVs}U?t2df^vnRh zP}+2HP%%5}lkv5Q?GHgJs;FAeV$fPxKyCGUsV2abXmT_ zdqpGmW68Yx%IW1^AhWerHRqct-AJhQ^X>gu^1r_Q$iXk=-}0&T5By!&Cz{o>y{Tr5 z69>;}Vx~Z_`Zx=B)1*jQz1b7Y+1bYa_3qj z?OxF~pejKr@~VroXCCP$Qjti!JFkVLSq6PU@*u8Q(>(c?@*qQy)5mm60tcV}_ysjf zMSh-^A7-^BR8F!JH8gcR`Go5I(DsUlFHf7c2UXwDBQHvt z)6~-MHpAHJ$`Vh!tO#mVE*?bI5fL{4!*uIv z9ND|Lji7sz9-kO`R(@^V9E?PKl5AdqFz+tWc$BL|98t(NdtZk}M3a_G9*O5bwVKRG z$|uiXxA@{}t3+sL*ZD8J&z-4Nmz?wh(g2rdw>Guf=xl+N1Cu&!pRW2Lf3mWt8MFl7 zx$g1kiL5Vfd^ef1lz7kSxMsVNyq(r~A~uP}^gQzW#3gG+iSc4%If@f%mhR&~(gS6J z40;7}g^U^-Ma{Zq=br~bF-)qH*B!2ZcUoCSwC=?U0TNcs-al?~TP*}t8JUNz@Dd~# zST?$*+qIZXR@FS*c#o}zs486u=<4)_1m@~eaeY@z%z>K`472Bxv+9;Q`au%4<*qRE zk@P|ADY7!ZjD;&!eH>T1K4Ql!H*0PD40x!5iZ@Eb3A%#T;O)yxzVK6l>Bf+JcvvMI zbEDuFOi)oM#O>foo*f5YK2fLEE{_80kOgYZE+U>G2l08s4`W=~Y$ZH!U=g_UpRN$E zDNyHYg}Dp_boKHG_y~EJ(pNFevX)ViYpM?PJ3wA-$f{ZAr1Wx{1W^ZvA%fDDg;D3N zjYmHDKd#<7D$4E)8^%OIx)cck0ck-xm5@dlV(3OnKw{_tLFta6Lt=)Wp^*Uwl#*^x zQW}Pm9O>`o`F-zt*LwekbG$cJ%1@&!`6G%86YRmK#_CycLaMgwyhcHa!X*-5s4J`Z@= zCp3-qR0>4JK>fP8CJs3Drsdr7>5t_nIw&0MmlYR4&S zsLoMf?CS>Jmw)d?2^v2m_i_JHsBQ-NhhXcy)>T9pr2Sde)dgR*47vX6YKw%>sfP6r zmKpZ7tZjAbq-_7Gy0<=LkWxYqrXyjwn~pLz+wibI#;|3GR)QK)R~ri#GwH4>zc;q> zv82seI_$8XAS!-yU&5)2yTsg9j>3g`M!irQ+VLOkU;T=`@8MJbeS@yNNlev!AMloI z;!`KI1ejT6tAblMw@9A}OzlC3CzwE!_HKJaA{AUwf~$K>5O3R=Hm?r`l(`TXNc2Pq^>U?U(@Idm7z&7ye~lfI(OMz zZ8NRAYJUm-2IjXj6~*zc9|+^?=aU=iw#;$S-9g+}S)f>Vxv1QI4zGU{Z1yd&%1jn!+{oK-1L zHN7HH&ym8!7;moqTx=7Fk$!w&YMs~1YFhG{zYQvsn`PwRA%6XH4O$`Cg#725fGkJi zl!$3kHhmhN>D8T*L&3dAm+0@8 zBDueM&jF@VoFQ@fGJ9NX#I%FacFEao&P&S`tsS+?i$=T&t4()0UJzY3X&;c`btbdV ziEX=USixA!_N9Mh>7XZ2L|A_g(;h!L^%@FQ=XWPI8mG;Rj`lXLXWru;+<tj|h?oFtb$$pKNhLdY0Iuh&;P4WC^p5fx_ zyiZo-tsq~q8sK|M4n4ZUH=I(9`B8*=T|t2|CbmCr*Hwq`=AxOkE=t6iE9}1*n#=`n z(eocB`33SL8gV}V>N6`?9!_bpu_EN#(azyORNs94VLbkw*s)Vh9qr?iIk0^DIokdB zr=Fuu^W*M3wA(n}&`0x~6u+1$RT_Nik)xkRjeVmKwP@a}5Z*bP=gis{mC|N>##P_O z&%wIK+W)_G+Rdo_i59RVgCo5E5t?ZRVmS?0Jz6&NF`Z7u=26I#i_KNlqm-vKFSGMDRaMQH^6eMbfRnC$nEiu@ zr{PPcyW;c@nmyb~iMDtG<^i`cKX%G)0z$PE&%lRz2iZfF3{n{?k~n1^E&4reB5H4M zm{Y6$jfz=O$qn2GjXfTyYQ?PTTjoMvz!t{OVaM}K#v+*H=Ii;BD=v>=mblsbi!ZrL z4vMTchj)E!)l3AOW?uL}UpUnxZfDK~DbzX=m2GatW*vM?Mh2Xi#L2Dqjx>7x&pNuc z6jIrx!$9#LI=EH#+74PmSKHqNOn5Zbg4X$0xI#F>n6^dw9ByM4Q0N04qWRH1ezWLU={VedO; ziR$xF<(Tx`Emkz{)5GJ-k3fR50W3+yB@SYtjGw|OTatCckCuw7=bOjaR#{W zQ@8S2;O%cxQF&sVpgZ`Jf^tpH4y`wH-;4{Bc8Vu=E@xUGK{wZg3$dDqaJtJoh3ths z#rc*v`iab74V587Fq!;0lti_^X;brDHQyOS7^j}p@$n%~Ub}A3o;zJ46RfG0bTZLJ z=$-h8ikGSTsunoK!A3LS$%`Nj^CcR&(q{*y;Z&+^SWZ(275Vt(O(-2a2X5a+f(aRx zCew#x6y+g=`t^^&(VXTbOE6A-es1ycKa@WN=XHR*sHwiDMm6%-ul`_Z*sI zVd?o)ea~B&3 zT2g(L0AJ?zr$dMRMkKTez(kKCaU6qLbtFI@PW4WS?A)n_O-afZ3EM5LjtU zph_@Dr=x>>`INg{jQk<=ujJ=w6-qj|oFz-`#bB{tbe>ZbGE3w-qyr$dTb#7gICZ5l zRR)09K4WguhX;FuYa(1E%k+!)9^}s@5S)Lj#6ae3ivkW$L4jurCWXt_S8Msi_W5U6 zV*U6LHFOw)<$U+u}}spqV z5go65q)rL+S(`{y#>HI;)DJDe1)Q!|zz93>>G{{3d(qo*!X+oKd~b$ks0FlhTE zmYk9jq+MA71;nL$rE9`DG6MNDnJ6=!DsgDos^4`NROjwE=VIm{83v8V$?gh=Q`R_e zc26VKIe-G4iB%?t7xLVFr>$NxiVUERdjzhZIJgfU5`pXm8G!HwYakKd!b}( z9!$baLTD|M%PWihtyJm(4rEgzjtocKx#)}Z|1VfQ?Q9DKzA;^kY&O|cCO!2$-N3|$ zEzLkH_4ZY|{1faUz2yNPST|52U}Rhpub9mUhoDmiXZNPWZHtFG`zm1e$_Vfc{bKE1 zmr`Or{%B1S+ccD<7*aH@jWqh}w=}!NQn9|!Epvp>bzLNQweFxwxt!>D)le&(dyDO~gQ; zx+OPd73D+k#k4LaNVavQy%#d;6b}^OB2x+?+WdZeGkxT-YT^GZV^%-sDdXM;xuy>> zZ`wV~JRXmwW+S^7-OOFlg!RkCuD^70-BA0!Ba7lFlc5qmM75w8${+J!UFneKp-D6{ zS^HSkkC8nk4rucB))kni65)iOJ7~t1cHA0QeHS(i9oC`w7@-Hxex0`FWjyh#?lR@F z3~=x4b453mtSP$)zGJcZzJqono^RO5B?AFw=Kp#NuP<`~BXi2!$*@xA~gw$cHe^m3P*cQNuWx)uasf~cz z3exIrMP~zhN{}>1m`mo}!v0I$0YMXk*_evwBVwqWKufERKxmwt&F1hAo%p@9?!0qf zJvXfOE&xPptsXCl7iCEY9N4KQuUxyQ!Uug=KUb%GG<7x98*L2E*fK6Pn{E=X@}C96 zJGjhjVNMQIsQ1553lUaM?47Rn<5imlz8~Mp_P$p%aRG;WD+peGSJ3I z!c1uTiLHbC{?+5U{_#_j?4WvNSoJK3uD~%Di}5Jl0WCn&>ftjvC6D|M)<4^{B5OUb z0U$O+I`G_Yf(0>6&i@vM}m2=VEFHCz8CUdB&t=z~(JHuuu+0s3I8@4K?JTM%ma z_<9<*`V?nF#vB5Q0Nj#jk8>jEcytt8dJ4)NjnFMPSIM7rna8cIIJSPUB~_=>mme=} z@cJ-B%Hc%o`RQU0e<;*C8z9R^zFQvt6(CUY7bu!`v0DABWa0X{KePE5(t2L60C!ZJ zE3%()Xd0?@g7~Fe)V|!o0n5?7L231-t=h~9qqA?a8t8iljvi!d=WHBY9LL-~{A~%; zJHD-X5j8+5U@Xg$UcytUlyJeB4amDMmECo(AHhZMo+=c}`}(a#{g5^_m*f%o&QlFpb3q95C>hb48fjC@@uRw7Fe&LQUh4Sh)?ysr{VryoV} zU{gE`OffZj+lj9$0)JYl!jo}jfz1qCV!+<*aR3h}<0u0>g&oU?->kx>cq#~7h=UHd zHmUTVL<3oW3~wVq+}-A|yk`-)*#6D+FBLnM3{eBM+b}-f#mLjHk@bzIM|77cn%IyJ(&4kd!I6}x@M%Vz;uhiW1^#K_ zp9QH|<;Uzzd7qnvkMEYn1!4g&y;^{id3}?t(1GPow#YVrYmmSl&*My`7jR}4Q0^hK1umYuhO_Yf@#eaa8B=2Wx!TPRT{@mg}aSgiiU*2%nZf(4M9EK(c3&u7xtBAx;c>A=RN_c;8 zG(Rv&S;qTze{zx@uK*elY zaW#S>CChq81RZ-7To&~#OHV0tl#gd(EJRL2-DJk`9F%(?WoneoHTA-=^g%&aJm_9f z{9_P6n0W73m91YVdPiHV|Ln&uGc&WeXnHw=)7>7EsgSV+6}kvuO(~~ zbDuI3Jh9Y*z`kLooBz&5Y0soyZ>^P8hV0%{+d=1Vio}WM4)|lO!dH<CrfaRc?nN}dH*@^) z!OBNq-oiY_jkC_%y-OFDmqPnFwui6D@Kbt$gB@e$tH#GSMw72^=72upCz2wb=@aR8 zeN;E=*zW}<V`;JBhak9Ra;Gen0rd9qtApkzV-m5?sCD(G*p!*~ zZapY1bZPVSRIB)~TTs@wQ}tc!*k?h38V)X6Y{QsC%*iPUK`xgnSOsnsyA z-CA)$VXd>!;2qWTY}5jZ#|X&2syeu+k#5bBkA>9bGrobpdVaW_vMs&gZgLi`7ro^x zOKT54Q$*#IfXm2{9K z&hM!z6pzgV5S7yuIq^QH(!Un~&crs9TGS#K{W(__`3r-A{<#0_}v_dIZ?_`o>pZ}a_sTm5G5XY$AJsL3M zR&y?o_lwAFkUyTBDfI5#`6Epk7X$%dqnLd8RGJiYtmD%v)5xkgITOB<|5;pvOOAgl zT^Fw^!$6U%k<%K<(uA(bnVOxy(Jg1*qP8fs7^CBsPy5bY7 z>eBMU!Tu!O)K%m619l(V08X}iX(ah4xQyms9cQ0c^ea+%AY;o+saP>bn7zuk=wEA8b&T9CJj|T6}3j4dz@Tg8M8?$)s&NWl+oE0l-{$#Nv(zTw5h^{|nDqsOv%b7b6DvAaguiV`FpmJi~ zJ%U2juxTG#218V zs8R=9wsYs}1d`+NO<1SNEuM}b00@!3D#5SaNB)cYlGV#cm1idGVLy```#?56@+nLg<0|5i27+B3Zbq&<}0lY zTR8h`RyQi+bIF*16ugAD{_9*D!VlL=n-sm=9b)@FWA%_v>`Nv&5v_^gR9nP^o$Z@_ zprffmD-tf}YxjsFG+E={q5!HVh_%S!3LTj(M@@MqAfEsWWY3V~yXje4{9ss>fMeWdyV(cno_~KN_055M7|iQ zv>!PKc4^t2GSpx!>_adaS{Tk8!QrUKC}rk+mQ0+F%ih*H=EIy`@o*wDPe^74ZIT*| z;sZhh>5chKOaaGK2X;E>R>Ym8O@KQ!!q6At2QHN$9^03^+VI)o|20TbApFPXj*M4E zr_jRkX0Rk`?AF%dI~zK-E^gk*gm+`7VgUymI#0hMtTuc}CQM1x0FoY{-q99aKv5aq zADpZj4w{N$GX8y#ltHx`WeCQ>rfoFEQQ;TpdncEpi(I}{pN{in{7YOf%nbvuEQTdh z6r)N-8ckogU}m%bOx90wFRs$RI<3j$G`Nlfm@@(t`NeOkuFGmR{qhHJSN42oz`6+^S9tW9mJ8W~sGm2KctndMf9tkB| zql(WHm{Xk3j@``|bf!+|cFo0B500Kp^mUiyJI5)Mlggq=dqsH?ml@Gq-mQ7j3&-V< zD?4aoFfEkjN&(v16IYi zsmBz4iu-TntzD0q`38sg$MRClit-B)s|5Vcf$@@mb=JwdxgUho46;B9WYoDU7re|7 z8XZf{_vE&wa|prQT(EeH6?F}6M*j}3Bs&G2FaXPK(q8+gxu#NfYu4tovD25SPd!hR z|W9m!0>&_7%sRM(E2Wn1?BxvhpPX6W*(?hFl-y zX;RkJD8-wlXiC)c|1b=^beV%DVVnQ@JzYkw)AYbcPHS18e1)%0ooWE2#Y@7mqD$no2zzbw5c+ z%FjS;ai^vB2v%}AQyHOtkUqbT)70^*eC}x&33hn)0c;q_gb*aL8QMBLA37$kjQ|5} zD(F*fv8%kMjMnju4lZfaQ})G!6r!F)`!PGONf#+CUgO*C!6^YMYQ10a5H zX|O1$J>={#p^9|g@X2OTWj9^*G^`SZo4zZsT@Vs#jnb~X&z>?k(19fPjQ@f@l)Zg| zdo$344fO#g7hDgX4uWf_^Y?44k7sT$cP}-pP*GG!rz^^# z{QEe!;dH0ZOkf+@}}&jryb5(3gx2(BTObP(`=fX#ixBw5H&Ir z_pF9^68|3R5?2iHSNL0Kt)f!{g@yL6Pd6P+XUuUQH=ePJrw|`U^&Qva%s3{YDo!t| z!r=s9Ry2O7=fmx>?CL_hrAVf_D?XXO)S^z^orOw=$Jc%M3-i;h8qEX)UPRitk8P?n z=j2)M9FvHd0$O>M;cU#*EG9OMeZP|RnkZYXPI0BhiW`VVfaeH^i}bVBiyE+@3H0UP zll9REg-b?hV`&VK{(Yw=n4dX5f2q!f88Pzml?l$4GK|y@#?kG@Ignk`; z=H_FU->rt~(BQ?i6gA%c$OnMRx4U|H{Dfkg<=OoNGZP8Y+JIcXYM@{l60p@CI3en6 zsgXWCcG#7AwM6rIO3VkVLuJ0nQ%k}x9p!7o-{Pkzl?uji!5l>kBMqr2Ffs!#l?E2Tc>SGxPxpwU>y z%&(+IZKYD0fkedIbMC5ZLlZ69RMmxqQN`sm>IjHQq@%leNH{nUH_(c>-fy^CFSfrC z`DAwU;)`Z7Cp(P-dRdT(X4W);2Tmx-&lbZ9#j^dJg<;7lv1PRKiE@4?@kH6-ovr+; z?@Z*LdNuzpgfLG6Ezr-H^MP&$&)ukfvMT@6%Y}b;&RVZdu3rwOE>VrGL#Y7%4mGiL zd9`uAZc?0=lu?ZKOE`rp(J!;l?ftgHcb;VA$zvSJDJ==~0ZXT*`K-q5NVFFhe?G~| zTOHoHr0djejRpDlT}`Ytj2;tmm{xsUCC|3Jc_m@^$8+mWa^R+9PT>gmC;D&bI~y9@ zq79?B6{!%1qOc_@ZNukPVu)~01vtFu2Yz?JO3z;Hyea_w%`p~urV>(B2V9F>eLcNi z&h>rWM3i(`8rqfj;jZ(wS1YN|##O;8Vde=9=Zg-? zN(T=!<-$)QU%a)D?%Gy9Tk@c{o{Zd56A@rchlk~jn5f+*#a}5lA!q`OnfeuzDzc`=qNJnwZ4#C}nY*gYfMoHuBiiAk{c zG=m|{02RakmdYGn8?QS<^P4tHzeYNSM+bIg8Nz`OLjXuIgt=!)mPMzBH%M5mujWso z_-8pZY3aXkeaXnhBANa45+CtfTL6xy8zETVWkyT}aDdZBHQwZ(NaQNy@D`{Z_zHwl zx-_MnMaP97-}r#L)+pA6M$6>QyZ6A`0w$!cG(zIRk1+w--BDO_BlR4<2=z7~UWh=1 zjL}+}^=RFXKue%3HJHqA;WcjvxLME?E|;eCVlEDju6Zt8HYRBzkR}(vt4|jj6R&io zM4Xs=hFS$n;6>z>yMB93pX*Wio*XM$_D=#lfudUJSn=dxqFhHcu(~f8Pchf?UCuc4 z@Ca)}C|PB$!nB$6KTqb2jt8Yu3su>!!sz>RBxKc-*Q@wEBV(z6waK_@$G9|3EV<dWnHbiUsu_+ z$nFT(xto?)!Ze!Cnq00RwSs_T|EIx@ZBsip(~057+O7Hl8zg3&^8>uNg^Dw4BV&=TOJHU zGC_*0$+l8SFfC77`or?>ZU+L&L`OjjmoaP$F7sFY&kpFvf>`fSLdM&Ht|yW2ThJz} z8qxNdLs!dmBu~=QKGu&VTc-q;oZCOKZW!aLavfQ8(R7x+^sQM(&!!S38oj|Y`6+KO zpo-fs#6R(}FyXB)W;F1`HaF9^65?u|o&~OhCP0B7l^3*c_CJhj)rPfm)`hd;SWI*l zE|&I=+;m(S{qpBh*+-RF=yUX*X2Lr^0Ss*PN6*|5u{VO7OY4VI5TE>>2jNI9QYR&m zl(TZHs@@Q+N9mh#193qy834vNWY<%pNhzloe;)a*quGmh$7xm>sIZN6NY_}ny__)2 zwJ7w~b;lSq8;aKsyAdk$_rQSd5T=)`pTMFK(z!PxM={MWI=N;}48j+8PDQHl)qzAn zcwM)j<7O}IJRsIPmo74NYH+=ZBeIcx@oLOz=fXqGebNGgPXadvJ8&%|S~<=^0vY5j z7s0i>k#8cBqfYmTiY#zd{k#`LjfE7mnHj2|X3Qv;q*`fpR~8^5m7&RdhnZtYSo~ufP?`YI^RI}eN8D|9 zz(02y=?s`OWb*4jc1{6ofl{pSIJBuZc_>b8YgUWn^Yzw=E!VQ)oHHlulG$lj)2Ic( zw;TfCHvF{lg}}f8_uY_7T_6zM)$aoRhe8A-5hD!8Og@+N@d@8p?dj&>mKkza3`?m@ zO@ruQ)3vL9sE>eH5$cP}DpcHbZeAarT6n~KpS7ock|}9;mzzT^eSWVLs9nyfSEOu> zPi7xv*gA_4=vNcYlg7n0858j=I7AC{vAzHj(h_BJrURNPo%Iyd&)yjku~zQ@B^n84 zhwQT1AGK%Bo6MG{9_(av8wAtK7VP6#t0B`uAOcH6`?guX>wS^XbdhA5Im-tL`%;+5!9ppkKAkGl`I^-rME}n*$(aQF|OvqVW7>#67lKT!Lz!D1A<% zJr!@2EkaR#*L@fJez|i~ytf>SiEEhFBn024Z_gXlw8>gi8>r<|Bp9@TP+DfP%L=Zk z{mH>!iFCQkM|Mtt=+^^aBAyMcUln);*strFE%pl0T9gY~nlr@+j`sX#H;z{gy53== zO$sqY-|2u+P_cwq$&#(o@5JF8GpE~%1Jf+UpN@HPUo()Y=V<$hun!643lxNHj-uC# zDN{`WfrGD)^|9#0DVLU#)4qGH6dr+(M1B}>TO_>0gt--gsb{LtYQ;!S@UnjPP;9Q@ zJPwU(?azH@Oy8rq^-8Y4f$q(S$lE7g_{l?XI&B{lvPLVb{i>2cG1ty0fL|M>N9|Q4 z-!w#g8r>sAU%}@m)t(lAAjor`V5GOf(on8u5{Nwot>^w@yh=^c@7$a{zL(@pH9c=- zTtL>P(jIgVPl;HfN{yHM33q)cUm%*#Rv_@gQs=WT8cpT7vum3f>UsSc*qPso=*nL-2KlQ*>Xg$c0^rBe*LP9}(p%oW>mAfqN(A~=1*=&;AQ092`bH?zCTYDa|?htu@>$5X}?bNCZgysouD4@c^{5GSguLs5EMfXklB}#`yek z%w%Nrm}AXDKhAxJOS4`yIK{IVHjR8G?1Wf<44bIlN=r;TC z_$oM95V$Za5EHz&*#0%@akjL4dwo;h+jIJWA9Y<5%lUCtt<}?~i3}AUZt8uiz^uY< z8iQ+9kzb_`mL!4@oCyeq{T@E#2^?aor2Aj|vOKP692PsQd&K#Co$yO25hq()$fUVycDA7}j{eCOi%n9EY=C2QAN_Ewz$@QxD|n+G5qW>--pUi87fk>MIBQMCh#U*i`cyk=$IK+|rN zY_Gg{0r0Oo9(pbRx2#-9iSmEYcm*niYga~j3+aUY);t{es3xG>ro>~~Xsp4VpZ->^ zR_t;-O&42@^`H3dfSweKYi=QBPq_(XZsL;HfcRF2Akc|ePpC?7Q3+_K87i6sWR;z^ z$J#d!w<(yjPwtb<>B0fFO2Dm^k?`krP@h|P{cP2iocIy(miWudCt974ro{7ZrxRzN z_lEWa2~m2ihyFC4L<;ClMY(E(FGYcoq5B~QV*NHWqC`uQ7UY9fZ`PACD2;e9`@7-HJ?$q%^&x!RsHE#XKx_H z++r{msjlb{I6#HNmY)w9HgnN`G`9e3y%Qn7Bl?uh;f$H9ldGc~C_fgu!x^uB&_pl6 z9%fcrxGjCTVo)je79vcGP4CmW9CMbt3&t5pC#NmJ_Uvo{tqm~+LIhipIit#?EfAss z0<+VB{z&6>CJ4qKd1tUjJvzSN#hGZO=zG{~n0)ra#43QvbyRe0m1%HC`0iDTb_Po3 z=Vy4XD&OepI%b;)&p*Bfu{7^1!M5+iY>YT7#H%d7Zt=cQyk)CWq`P10A;CBCpF8FM z6(Usoi>K9RrGaqeF5XL28v0RbT9!2Crk*)J^U!udzy>iT4GZ32mX zw7f^8TrB$loc;V(V@4dOUEyHli)rz2-51#};D^G~S}NBe8hiA*dF~to<(gHRPO7pS z{UGgOyBX{FOs#!{eBvJ}XZ$JLJg&TE@=APb`x4m_C?neJ<(WNROZ45&zu{Kz@ zr%d~u)M(H1YFv}2k9*hf#=+x~tv7~FMvkTigN#N=huxEF^JUs`($em^_2|Lo(b~c9 zur0sq`nR!8Y)%x+Rr4m3g`)n)N~6|KI62Y;P$>z#6bAGAYQ4`&u`|hzvuL78J>0bu zqtW%8O`v@uIr(pOK6@3VZki0RZ|!hZ5;A6u3D$@u|MdWWGA zEQCVeBA1ISu#Aw?Lfo&vhpXawC7!uvj?}sQ(Udi+#YoBQ*6ZAjAp0ba&nXDy++qFE z5DsC}K%h;J*BGdaoR=`Rv`7c^rj<5fh^$o1H&4{z#UKRiXTWVPf0yk@Om^4Nz%t@d zxv+YU!qUSGN{i~Xg}@8F9jFGQ3`_39S@}fTw5E+|$cj>Ggoi|qn9nXIyuT>KH#t-wa(_gL{CGc_ zB2KS5`emB!6S0{TGyBloLem$3Q22hx7@I*^8)q@H?tjpcH$Q5_JQr&l+xpS={rMM; zoR8-`qYWiH-`eecQf#*Qs&FdSlje<8b*)54b-v1CAzb8!P6O$fT6!agkdDj-R9{Sm ziQF*T*U<8?`u9m-m8XZL4v;rC8_Tyc`|H;x&d$1?CxQ*Z(r5q1vRecGVw(RQaQQvG z74x>>d{XA>6lX)GA$8_m-Kt2eWO}QO)I;4I!U}7{Zk<{sXS7v^!r+dU4o@C(H^r-@ zwK-&n_9~wef`uO>XdbLtF}GTl^{R*X|YN5wFf9MfHXYMeV-cX-gaEi<1>C|aKgTgP8C1O<|XW=mB@LxH|4c}D0R)1 z^jhe=sy-a1d4=lC0HX&&HN-;Jz6wq$ zZ*lh>3sl+hF%j85M0zR=flrP1t-zj^E6X|I4C0IOQmrH(tLw`gF*CUGKgKc3VhQj< z;d@802M^163;Q_}nnQJW@9HHTO$bm3>W&|atFTsPAoDjkOxQrVFVDwb<)SxdD4#Z@ zUUr`BsIa1dK~+>lW>$Tva|Yzf=cx1JUKLJWMd@~VDMOL+h?yw}msEA);hQnDqGQjT)>=F~CG(vnrXXEdHTk}T(8~}LA5EfcC%fwnOL$$ZIv*kB%o>@+f z{AE3UhlIfaR$e_+bS-^6&f-4RUAgvAxeNBwAL{^xwojb?j?ZAww-cPMt9Nf!cpoTa zN=f2AJz^(_)|g6X7xOtDuw9uD$xR?(xB^Lg|Lc>IvMD_?@Ofw0S-DV+&4_q9a{T0eEc7oMvgmAR98WfCXC^+f; ztM4hkS)YE+bB5`eusD}%`X*`lfwDwB8p`x{CYwIP!|PT#M`|S8E#$zVmcp7{ECqKA zC*hOpO<~>y;~8X`t&9DvYQ!k z-M%J1qSprqTVHb@x5;5ULGf|n2pgZhxjus=;E{9FO8i+UTa~&08f>*r#59u4e*78P z6E@|7=?vB?X-QPeeq!@Um+HY{uf^%d)xSCQ$^RS2kyE6TMBI7QlGLhox9AZt1fqt# zMC=s8zW6VByY$hh;T%;@m&7#=3+mr(sRckQw?g^%`R=n$wgldvB< zy#2CFk)X$w4~wTJ7_-S4C~F7DQP#A6S%a-7C&lg$PhuMFT_g%)kK3vRO{8kD_3LpJ zJ*QTVer2C$W@gSiYFk=bT5+|oL@b1LY5AhJ=D%fNsEcK-wM_nN17v?T=s2PD3ESI_ zkJfZy_BI?mLB|tgUin-noiBFkpe=_m+LazWJVFU&`8PVhjBh(`jBEaC=xO?%f_;ie zj(0;>2{kd22zAxzrnA64sloF~A0d%t;h|g)IpOr}MIbP9z+kSVqpx}1$cEOIzAV>$ zWp2C|w=N-Ko^8%a28FfL%io&`DB9J}B@oVxTSV|LJyay`J0iNh{O&oS7-HC}G7yz2 z%7ni?(s3Ad)?L2H?&PEl@JyNFYFElOygHPjK!c`k21%f<7?PUx<>qG#E0Rl1!OR%o zcem0R^mRC4;++m)5$??>QoPspRzFfx#<46xtDViI1*Js=aNeG;`pX@v`D}s#=%XK; zJV8{ij6*fdJLd`MGmD%I8(P13D~tKCq@Y35N4bu&V|Vp>YdI7CO87#dR(}t3L0i4R z{WduK`75YoJg-csDjC%J{1#raxK-KRSB}5$r-&T(=5)Xj{T+4=h9SRnv>%R@XJn~` zwZNM*-iTv<5%`)CF{?g2kD@OMb9%x2Iqtij5E68rr__3XQXlb_XNiMsqFW$4S+=Cn_!|2H1`5Bn|Aq)4=M*=Q#%&x+pG^ zbqP3dI`fdCcZgyOXlAodu7AjVe%4$Bm?X7u z8E&+p2jSlA-1qAw`2B2ClN2tn@o9Bbw5`zh$46+x060E1Oa(4nK9mDxKC=-DwA$Jyq`oG{VCDa25Ehw!4^KOP zixNx62G+Pkc<7Lu9ftX65&b1pWAOcG&cN4Sjz?*9qqxo);qqxSNm?hBer^X#>kwR7 z(>oZ)L^9plMB11h!J2L>?C#A3cs0vtTaCJo6o~NR3)s!I-MLbOgbICD?R&p2@k4D4 zYSU}Gr@%1YLuXPS!6|OfnfYIwT&p@lgY~#R3*!iGXH)f&Z6F59jg8s+jF z?>D`?H>UEvnHHJYmJb|t)~Rui_QzHiiTHRA?5&(HkD3<9$PyMVcJ{In&wcq(&5yy6 z-Cq)`?Oxdrq12z}0AqaNizrE0;aMH0J{S4=9spEiMmG6D_w{KG9eTT{#_pY?o&!My zC*)IP$vr$$cH35-{xU%k7c)MG3|);oj&`qJr0^boK+gf&eV7BQY~@xl<0wK5k?meP z&^k3=Wrc?ue*>C)Plzi1?rR6iK&HBLY9jd=Yb;Gqi~sxbgmUNjZ9Ju#;p7g60WOsG zeK||^LDM3GI`t55kfN+1QuO$$8{O!Kp0I#$~@wE!Lv(f@r`{fo851wu; zze}o%^_mZm0CNAw6fT%!y#r9E-=3+4sbzz%WY(e2qIY&B-TR>xG4)#=rN?V;>f z70e)~KY$(4w_tXz8#*yv<69H!1bmRVsg)CxE+gz!K8}P>`wvO$d0#)PLgr96KgHI~ zjq;E25<@qBT?i`C!FoIBTJ@mqBXrp&lS%CG%>4_c$FThuX%V^tPKo>_NmoEJC|`If zScVv@oR0UEa*C!qf83|U*J)}y(=}h!4RW_jhh}!ww?;o4)t$3In?E`J8umuBM2EAk z70vCg`sEHY-eY{-TpLL4XI=LAoG}Akg#6UFdS>@eC;4Q{`*0-AnKZ^J@QDOnuI^_a zT@Anq+^oyfO$FNCsE>c|;w=|#34R#r(xcBgzsms^-e)jcU?aO;uJL}#wOM-6fgmJ? zHpl#TL%uC|wNaX5G(B5QaOQlg?bqhC3)i;RSfLq_U=h*_G!vk-xRZHgYgp(tPI)d2 zdp)tRBf!hCVKNbu>?3rvFN`)s-RyF)CJ^z^#tfFw7zibN=Er;dDk|+C1Bh!L#3{zH zU+2T^I<>#$dZmajm~hu@hvJo%yyrF9B?v@ypO6AjnsMZ@NzaYrpcKa?=9!; zje~eguL4qCgF1_EHel=D6DbrBTLI67d0Qr|=sgvEare{c-}l3Q>KEL>I6>`4dsZ4T zF6n>iN%)rudaZ%U0d56UlH;K3R;KJkV9$&9g2;sn45?q?NL7*}z6J(Q)5t(|OVJYcKKjLHzrS;Jj`e+sgCfMr&;_ zL#)imoZ$cY?>WJd3CdApyq8oeDt#*|gb-*sXw(jh^Z3ymY^?MDO*TGry|$qJ@%bA?meN9& z4KYc_9llwdK3u41TCWP6Heh%l0JIATHc!|w%M6@Nr+Sq}ygUoKiE#sWr}ioiPT;MQ z4Hunff$k*qYB?er0qRhL8VH}jCNpSo3WZ;Z02{{8s|eP3y6K2$NTI|3g?-?}bTOmE zD?7ep%?cb~SJ;0(g^PMbYw|ZA~JQ3=BPuX7(Q@>}Xncff>~M1X}cQ*E;p< zn@aLL+8G%fI!%85^Q@iU^}}+W!|!Wg%?vURY+c=~co-69mHc&VNfCYWtU+9z7p&Q& z>XcP^kdFD1!wd|^&MumNU1jx!(@<>-gf1mAFg#xLmY;LU$^*>cmIWx8x`n^GV|%2? z*$8OjJiYm)E6?Za-*BQ~lBF&oaI1E<@bOFpc4*K|`I!-3O|itQUBAz;}BxJWptId^sh@DA9oN z2LtFXc;JvZxKoJB62TUcvApqh$kb*iN$S&Yz14TI)>|ld< h0mO-c*#Ts)`)RM4*LvUe33n4n%G1@)Wt~$(697of;WPjM diff --git a/assets/images/backgrounds/bgnovo10.png b/assets/images/backgrounds/bgnovo10.png index 87b28ae5d3fa95e6ffb892f6cfadc9bd8d81d643..2f34ff21636a65ce2d7923d526b24cf7256642f9 100644 GIT binary patch literal 11836 zcmcJ#1y>wR7d1LSf&`bK!8Jf2xI4jvyW8My!66I|!GZ)G+=31c0YXS{cPBt_3o^)H zxAVN;UElo!ch;=#p6RMn=j^@Dsao9?qpm8C{et`j2n51bRFKsKfsplq>vVKf;D}6d z#RZ(6c}gp4qXVBnbn9pkhz6u6E2Zt5bDSIC_G;dHr#lY~^*cxgFO&s;(yE@H_Oo^) zzCv6ffhT#Y&wRGYGKIYE9&F@XF4fpW$cQ-C)~|$2-A{*AvoU6fRcz0LNNBFoxP#5% zvq`OUp%h~Zi-vXtzG7TzHRHP&PSCTRkA7;W)DV};kxQ(dNwtydua=aS?Pa@b0VhJ& zE7L8mDB*b0=(PX;9Zr~#C7aL8e%`YZNJsOWEt-T9*Dc$tE#2R#(qlBAWc1_DgHVuz*l81?B#+~0PZyM8q{wOfe87VRl6u2x!1&?*Ae|Q!u!lMrgRrqPR zE+#anC?)n|cu2yc^y)EvL}%vTgWsu!g0b10p{Kos{byw_p?R+ZgT zdC&d|M+WcN(Lz0Bkxg1x5(B2|KM;;*DUMYay+QQixhx&N=;eeAU`sdmp+F{zCbp2= z3m6J6^7->;L9ada#Wk*>!Yc)aFbEp1hmWcPHeGVGa7AWbUf<83&mip5PLW8&T-X{! zK&b6+P13is;%4BeD2gdG=+cYpO~hk_Q-dn1s?sUNFpL*K^P`CWHLtho$MF`4RA4{` zVCimhtOKa+#g)JUevLCK{s1tV32Fk^!=Vzj3wnp{&XQ)ZYR7AM9Z;6PUH)EKOZ?5iDbB@WHq)p0Knkf1(Zq10(}8%r!$iuhkgs(&3d zVERkHTC}vZ0FtR+L?DC8d-Qn8BiM%zme@6jHqLzC3JJwjRJ8a``CT%q0Vuoi|p`KYy98pbC}*T5f1 zc#i+5m0x^Pk|KI{za{ZV4~$k?T1umsLT-M%+=7cMabM?uqLiIZFr~QHY3jhp3ZN9t z2M9DhpWP)dyD(ntXHV8^=DQ6;bekTbvN6GeY`>xc77@sjH>vj!@J{}&Y2 zJG^ihTzArr=);;{nZM)2A>7j6zuhVKWnIq3`R(PY;nN27BdsVEZi8OVxZT<*;BSv)O7ZK8nhn}HRHpO8yzqOzU zqTtISY6C-D>6NfG@~<&581Sc@FL;(>HQ05Qm|V(?_VLzq7zXKFTwEUk&b+VTt|t#n zfO4Xx3qTq~_=&%e*jr8^>%MqYiSpR(spBL&Bs9a^rU)n}KnmP*`>vSFj`PI2#Aog9 zx9REy+q}uAb?&tZcy#^5N%V3O(tvK!ea)!%2ReL^2LnMe*dV=VvYZ_~j6Jqcl#h>b z7{;#l{{0}xS}|qjDqfaO$6veatFiL($Hwl-h2p9Qx@7d=^Uu)o z5H?MKs_rzsZM*T|-3w59i-WrODK6YdyJ!~a_*X9P)Y{Ooq+-h71*^o$_1vti!ZoKz zpZUdBpQ6bHX)M6(FoS(OaP^_yr*Qfl?6W|tbd z)oRD-=1(oPS<%PM+l$tK2Snx5p}T1E_noe;tbWc_U#r9Cj5@rVP@+c6Rr=)UEU8jx z11?+t>rGK(3UdQ8qRp}n=NAWUZU`9XL#M!&%uMBLqxs6bH2p7N~JNC^8nP!);C{ zhgv)uL&B_#t%yn0ii1E6qS-BGXfXLMEAfz{*|+NJpegaurC$Qq!GwtqzpM_f0p({Q z#JPwQv~oW=^5};r?Fi*5%$O9{)V0;(9=YUQrb?Z`Bfe50T2FwBfV`TU9Ruy6(I`K(>iKyN-4zwm_UvK z^9=evP3rF#EN@h5UozN})a!A$>D73i@0X3fVYh#A%yAMxy%N{|xXGoWrna@WEI$iW zSm~m1!wy%h1Tm@LY6itZlSNPvox3xtvR~{7tKxx7kRS;ohaIT75)9Yn&{s z_Jlf?N~rSmbfvhx-rRSt*jE1UFxVFN^A7HrD9=Uiu9C(z2kzK;q?H;WpZUq6n;u^{ zB8SB6MjYpU?X>)`$)#4*!th7X%YHM_ki3L7bMpEq*fm~kA>x*JwEb&8RREEZ3t5?o z0XhH@oSc0OCkF+-VVqh`e0kGzBX}ZgnCq;GTxK(;_u8?&l`qtt*AiDLAgXr*Msx7y zJ+ZsLf0hrJ>oVqN6B4m4+E^HZ=BFcl;% z_7}P^kxx88HC2+-#YA=7(HzGy75@wKUt8;3*M_hi+Z1tjdVvaAkXcrlL?0Ta8`

  • dv9uWb@E9W>OS-qHN})D6GV;QK<}4Sscf)K$jbD*SiqBkUrLM!Bs-;s3Ste?mk7 zM_u`}9`0$tiRs}M98HMst0uv;?D*hQ*DgKpVBdZI4W)U;J}IbzaR)9jZ82YSylc<# z*<20`=1M$ovZ%bRoQw4Pb~jIN-be=)aZ1PV(*u~?r=(VZ+{tf1#RQo?B|>K(jN@Qb zhbQpEvrWwP{zJZ+cU2{(ZY6F&jE*m4(2>4_;*t{NT?IZc%IMrST8O1aoCYAd@H=p0 zrK7ux|C@8`1*HpuhZ!o=oa`w<@D0(_cgOJZrkA}+>(f;0z!ZAab}cU2@sugNPBZ#{ zmi$W~<$d-4Wpmq6kQ--@!ErEWE9mG?Lah~AcC3`Nk}yI@t} zdnc#D+;z91BXhSIYASMg%+Pwn>268ewdeHmRd{Kn+yfox+oO|8PJo17C#(0%jXtdO zmk*7U@$AsFD@!JScr6&RblN&Ar?cDXwAsuVUJ5d|v(k{Ifh=BoPVGaB3qSEEq*1oa<<~o_**Vx1tI0B{BWRL(B1O1$ zc2|9_n}9~_asn%p6z^D2L4psTf9>rn0`-zlsacUE3CG-b@Wq& z+4;g#wMB@>?X#MfuuIccI?8{5$vn_+PAEXpK@HT5#XUy5?~J=%giWD?{-}V^e`)Wc zfuz~PH!Pw-p~IoCVlC{@Hz)GG%-B710QWzHT=ds%WT3tExxfa|pnO-kr??U_)1%qugvRBAL{nQJXk~v-CyE?% zrja&H5_RZ%b>m{)6YH5Cbr(BIXtr~shDf=$@m<|VonTcttRHQf>H|iV=nuj_Uv3EWSWa#lSd=)-1>wXCE-92u3SysfoB0;waQ#H}8{AyDwHbX+ta@;fH zfDX&yj}|F`E*W(xPp#bf%?lx%1EjTNg6Ip~gz^K79c3g3Ctu_-B$2aA)XD|44a!k8 zL59W?se&;7G8$xooZZUSSW{7Zs%Q}sMdtegsnsHq=%x1(&(*`Ny+yK(d4x(n1w#U zjCho*Qf-=~sSOQqnc-Su>}=~};l92huiu|AJlIVhIu1NjXKSsL?KQF~m{)#! zJfOY>Z#USu8ejw2LUFPe!+I#2)h1VTTy_6OksxpJDgH#RxT(e}9I6$@R<>j;(pV`` zwv;2y6Wo<6zJmT=>eL<(Zx@bV))RvatCbt9tXB25ofZ}e$(H9xG>Dm801l8rv>Oqx z252%~gF$rhz<@IP4FXaxJHZB07h{Hit!;bG?cWGjr$Fhq@ut z7zq2~+U?-AMB@=X-3&wTG#Rd0{?X>imGL{}W;X;m)~CyuC``6h`t)mM8ccd6&it)Ftv(pHvn_Fg{M97Q<_7Q=x?ZJ4*9)-**n0^g2i@B$yX+ zq(y>FogvBM8UZI06G=;`kfO)BbBa;K&wpho*7Q^J7CSMmZ%R_eoYiV;HRn>f_$N{d zZyx=jFj?A-H=_y!rcSLz0tan-@3{0q+(>_{#BWec|8Pe{f;%H8HWmHrgXRtQXEuBr z&tqtwH`t;`PnD&Y{KlYLmleydsAb-t)%v(UGgY7T7x@A*Ft&}qcSieph<<`lc89&r z$4O(Q3sZ|HV@ebJ^CWd~sadSxwc3=>gElVPaG7~oaMr%#suZ=yAhPx7wd3sU=fBc8 z23AFnE}T=S~WjmOCEp z8)Z@vjJf2_{pUIvlWD_6<*9GfzyB^bbCQKBQ8bD0>ps_4YRu}=H+&m;F}%N)H}UFQ zMtf5F{GM((zRVyP^X~^gN2Q+ZXCUhxY0|qANup(L-{T0j=9LfErU%mX9Td0WYAxby zLoW}qhKVNxzBD(gN(ND8u#D1izploj3E&T1^EP#Nn&HH$JtQ^@*oZBfOK@Iq@~Qk# zZ6=GFa9XCDHtv#j;xYxHr2WIJl!o`YYOJd z#gY`P_0v?9X%o{i>qVCk09IyKD*@}VwWE`kvJ|MlPsFQla5~_&49>T=hv%CM zp(88jhD@vclCFz7+v-?BjKew%s=F-Q@K6VuQsF^NZ|H&VIgkxY^B=(V^h5^zJo;&E$$#$3@kJ)(J*Wc23 zx$3j59zcnSXuJVpqmu}-?K%$n)C^QNzHc=~+JR{1(8qX7w;4284>PF_B}(7Cj0Qmw@;&!!EL3xK?@8jHrl6QDLl;xz+#yj)rU03cWy3d)wvl0r2(@co zR?kJt{U`F*ci+C4`H!>&yhS|?i!adVzF`xot+;(=RP;03HwV5D!0fgkhUh?tqVfb-6jgJsdj&Pk+x;4E zx=T;#dUeh8 z!T-WP#2sHrMd-rq`xXSh)rcG+rR$x|%Tx%0tf!wdSQ`Af_*EJ5%W|LT{d=^EgU13uFLwNRJ3Ks$`F;m>;4J!Ml@T+FMKm>id&mxk4+(uF>T zGYaIB?)1fK-yu#kH)? z6B9gN71o*S%&(Uaacb1OKL1@PjOm){^I*J9Xx%jS)q4e9qD;&M40R!)546O7sOYb5 z6rn$0_;X$ooO3CCb(^G$ie-P{zumsGg`% zrKhPiYMa4&3jVZN9gd-P_qy zQf)4kg;(RCwUb#A3 zwJWO~d}lyed^oG~HBxREy(RLg=Dc%osXE8Zg&^OxhYduH~v#08pwvDqzovcvH{47aQUIDX#JE= zngb-sio3HR5rOy~8gfh~+)Rvgvw5F^mnxo>!Dh_i`~ggVsef|vYU{PJ&}Y2So|U;( zsc_WwOqgPdkjB^JU@D2EXvQX=b?4E<{mP>cct@z?GS1@VEx=D-UkKGr`J$|*Crs2Z zl+l`^5z;@Dc{x(Tt4gVwKijo)_JV~dRtH{N)j)7lCELM&aQ1>N!=&gg-MR9)#JmgY zFuH`EtGfrI^Yy;amJ4nd;(R20?nC1-p)+Y2>vqa<)6worZhNb~sHQGaynz`LRL>3D zi%Gf5rW8uEu0Qf@2yIxBP5dWu&>qDRj@d>1$GwQm?T?C_(igtZi&KPrzaig0EpBHje93?u%rz#8=NsVd&jLq*GIUT7(Mqc`f8+rz{HS5XMyG4T7( zMy_4h6~A5u2IGoSA(_@bmR?6l+n4J28CTR^@yiv|v0COi zI^RMmQ8sEmD_pzgUUYBFq4#!mhxN{@!)YyeRJ-KV?)9NowFGDmA@goL$gyKG0ZI}m zDG<6AkBiPg`v61Sf6o6SUG zWL}a`uPkOZ1BLnd5{MI_o&Q^Z*pmntPTHsWrw-{>CKj$p7eoiTERs2*p=^toAf@I) ztM!wvd+N#D-D#}``@BZ?TB$l&XpRSq1omaPzVvsXZ4rR*>wNGMe{HrtmeO9?-q zyD3Rj1B@FP4=7N-%FYDk*IdJ<7Q6isr$~)mHB$ELH-V*9rcFnKDip`m=;b|LIznt- z(A;ajPSX;T{}8;eVxx3z!A2TJG}0P}Osg}raNtDc^ISPB4=c2^P;q zgI$PwVgK34yiUuDRlZZdY;qaj7sWFsA*$`RXYshoUCdf`Y@9~BLknc_4^N+ud(*s8 zOT^mWr-eqSL9K51rM%?pa-36pK3mft&v#8>{@PS*93_5Yrc!+Dpue|bdl-mhv-Z=P zdtE1D1>ffkoP#&N7t+eF40XMh%sMUv{z?Sjug}0Ta%zKxjomp6l^Pt|s@@Qja8GRp z%4LaBxCT&X*x1SS!x`E;6--#^c2I28ic1!i$uN|W(r3x4oGR6IIZNVu9y!=Y-bjeq z+Dgn?T{#7M+(ah%=V@$b3lYYZ62nqVCtOMz1PW`n8{Sos9dTg7E{`f;Ch>I|iSnU< zG8fjHEQOldPhSvC5;}F&9N)D0@aXs5ww+gny$ounbhu5>Elzl3_@0NAj^BK}A&tMN z%pLZC9E)LQ$gsJTUz)bJ6|sBAt|Zxzt*tgXu0QX`Xa-cDYL0$X!u1rLtJ?$tMW#&@(OjEDls&$ zCi*5&?zs3@VHJ+$3;)Pc*&~}_iQC+#Sc%pr{E?g(iyf6J7ZdsR_IiE#n?{~iiT;YMWg z)b9Z_dX;$0v6<0#JEoZe53@<{NV3hn%mV&3Fm!Gdg!U+8JUa5TR@fF9ZeEnUC;oiK z&b@yh+kWl)j1RL&a4pW(Qj_Q3q9|sg4w04Pzgz7kM*onb0|+U_vjnz(i^B%DZB!X4 zS#Ite;u43l(WQ-4^uIJKcg_a764W^f_;=~sUl<0uIoWJNtau8iLJo3`7SWo(j=E5# z)lpK4S*o=TCcL?94M*Wm_az}MWKX*{23YHOnp*xmww9BN4QGP|hj;Wt>!8AJzhP1z z(*QB5jD+6`fmFQ$;WNutpr6S#F7+R1LKC^|B|{M%4Yr#aAky{%iOPGENqaCz@cw`T zzO?Svyc+!V+^pckdzzJoQe|U=(fv(3-{!n4tJul?_UWV9WerAj*4A74U#l%=tXsQz+K0{l+Smhl)34ijJ4*@Y7{JS> z4$6$hN!-K`Jj(X2!0*Nzx(&|lw`;hMz}X2M@rrIbr+{k@bZ?K3_6vB9~J;LBxNnWBe~1A1gaINM?cTq zJ5IJzhP~aM9aUy{M#;7}KF3x0;k~4Q$Xe_%94B?D6xIa-k!>pE6Ybq!1Y{I}nDp$% zOYNI+55PU-uP_;oVV``KRF*?#bt2+0Gxu>5M$02+dD5#NP;S;1x4wu`kc4{304M0o zJtbwEv!7h1;egU<*SUoOitDN<4c+rs;^KtQ)xqj<{oKvq09{LWTApg>Y@oko=ay=Z zIi*M>U{l2|*B4ACkGxtwId2WDO=Dphi^*f|{V9e6|J0y4p2cCm?<#{>QflT)B6u6X z&ru+)m&RY|eKS=5f>OTOg({l0{nUgo$zkz*Tu`kx6z8v}>dCb84Gw5*2AUk)1ruXE zpjd3YZQqm3r+E5y`O#7jzSOwb&O42kW?nYuIzMgeKx;JJml51yAEMLTmS*tr<7DD| z%AC8y-+2x>LHjE$D+6F^io+z+dlt^7G48TLa7hrPTl9Ezb>Y)&|Fzp$E}O3_fCboZ zGj9Q}W|daJKvKSri}4inKPrnfIjmrYe%DeHw^)Eji`RbhdDdf2oiZ3s>v6xMwqU|2 z{i;Wg`bPL<@!@6f(V^CI%aTcnPGTWXk?+AE^WS^Vb-p8i-Hp3z+~W%oLAc1Cdqo=DJ=9-)AG|4iROdmpY(`kbK;q>;e|?v!LIHk^5|!D(0uIPvUF-7ud$ef{7QS;!2x&t7cp?UCn{#x+B4|+1wBvlJ%LVCN4w(0mN!^CGub3~Kd^o8YrC9>%*BE)n0>P+BuC~l zbn`^rk+0V~C@7juN0-T&-riXh9>=4?Ek#4F|43|{b>H&?{?4VTxulfk1tLeO-Mb!) zN{-CvF{2U#gV< z@SM@vl5&3q4@5BN4;|IhaP)pp8vkcFNyuZ_O$YN+%pnZxPgBMkTgT{fY%q=@S_KJ2 zgPX_(d(Nn3Ep``r$MN|&YJoLHHF`~`CetuBt}6zhA6b`Q6@mK#;)$P`)g~$$V>W+N zKMlKDMYT@P^dKm@;e6k`|6m_fy(h}06uZ)rfls5mcHW|Pok6?%FjTWy;@n%DI$tI} z&9*FeQNb;-Y>fw-uEU8tbYf@WP|4XQAytN z9g}Q8M~tu|RrOfjZGxX;Eh&3;T=M5ErIV-8)g0gEXkAWSur%nPit=bG)5uN;^3Hah zyn&j@?O@>fNKop}f70xGpY23eocYn|RrOfT9|b`a*90wBQ*~+vE*=r-PTnXT{|Yqk zxmRhz4I)~9v|qmhV#v(IcT^YN7VGE^>+F8GYqpV0ZKC&Lg==`(T-roorB};fB+1M3 zZw+^JTN;Fpj3@*hO(~0&Hy{KxY}qVqlfVk7absQLs;8-5th0h9wrOstHHki&MMqq= zj5BfKY5w&h)A?!4YB~91UK0mL|IBpct(mrt7Dt(`TZn{Dfp=T;$xzvF!(gtZCOtvc+TPbT$5*BmZoXPYlvz5!K z%KOY`1bxEP}?+ovkz-P zAo$Rc@@vER6T)PH_QWfkYK7_jsJZ?AvogzVDh^%A+@{1;xwY3lFanyVN$7nh8!F1d zuOOHfcM|Xt*L#oQ*PE&@J=`g?N7}lF!89|A2j)$v!*ZwtBk`nBx||{RWg#{JZq~&| zL`JZVTs=r5JER26=dI3sv|)+*brJBYc_}BPY~(xJHIwI-GxI@-m_74X9orE@vbZ-$ z#J?X$1{@6VR
      dG;I0ZX8T}l{;J2+Qm@pXCY|0vCc^8VHCNs6wt_hud=C_vFJ~X;2SH&<_^M+o{G09g`BxLAB~U4)>-!dkohu?H&&2bOXc!K5%MqcYYEdqN`BdA z;&*m>=e%VRRund|buk644)%C#uUY%F;KDVlNo*u9-3?)(!VPHh;JTb0?Z(72&m>a= z;hu`U;|>|}ehi+!L-O|+@J(LwLGv6j&p9sPs;956%XyRgysy8VFX1m@KpOHI z*?4|DNE&ANU_blnx1Ou|BE4Qt4Ja`aXhpLl2Tirg+CTM^gsOA_PVC z-1;>u+3_=dIGt}%rt(D3cPMV=sPAjGn=h-QsC;A}M0A9OAz-jgIA-Ce3>#aT+{@oR z4t*o$i!qq4tH|(8@v4c%Sx1-eV#xIFkVIom`Uz~x-h{7AiP8}!Wsah-v5OG$)zZs6u!GGllVlrsk(glu8lo{`cdCwh97%$!U3%W(vqk; zok$Jj1ZyFi9^G?a)2>LZjJ@tW;_k>DaRnX9M1rlr( zQmp~g0RXUs-p`#rxlI2D@w}msal0@eL&mZnV#Zm$7^?5S@`z(^sVoj)8Q--Eq5%SD zXy{S4*6LG88+lKQ1$8 z=MGiAr~{=6rC}S@?gZ0tB*$uLc**UaidUGRJd@0|zi8HKYb1BJk^KtDBL~yFSyf&zc8Tcr5gn=XxB zj0cf`+;Hdf+6gwgyDz(~J4Cn`8A~o0X~Vq;j>VI9F;JDSeP2^#sFEJBysl37S*8SU zrQl78cPd}aR9d6PdCV$Hqwh21)TI$@YoZQgKxi0C3<&BZiX;a|FllusU3Ma-NC&af zA^%zQv3)1UW+KEjM=zXP^)YD z#5RifxkY*{pZGz z|CCEdQKQ6#bbP@EX!r#EGtgo`ye9$XZvP>qpt#YHz;@a#6#SuB6+na$EN0)bs=<9B z9ZkG(+Z`n36Xsc5e59?2PHPR{s1IN&O8dV^GxBhT<81-^sbFB>emGu`s1NQ`>PcGY z1KD#W8&h=JpD|tl1^+fr|5Op?{=XPW4;;MneRMTTI_7xxZ(sF*!{!qTSFPr)S5Q17 RupJzv_)b-}M%p~={{g(`1-}3Q literal 15313 zcmd6Oi$Bx*AOA|HoKuwQB=_VF9<+LYsz37JKSWCL?Z=1Yk8Ls8 zt|W8ywEZ9M?-G>W7KWa)Ymiir?YxM;X(4y(-FaVQ*pDVTjf;2xe4!oMp!O(%6{aBn z$uE2Hk8kHcsP2~c8wtk3`TcU>5)_0{SmenkI@5%I57)1oAQ>@^Yfd~oagnJCi1Gj5 zPobi{*%pvbnIBi<606yK1`^^o|r$g`+L3xs0|DG9dA3h z#ouS6$4eb0*Nq;xx~@n*#5)x@grK}nk?ueekcg9EzK6H7M++`oUH{`7aVoTa6u?|#pKk=o@?jBca^P;#Wmwo_MYsv|?& zk>b_mNj7RmxU|%_w33yTbq|e3)BpZ`eQjw;pIg1PY`66zMKXRHh?xNx0wi}DE(>B# zHf;THAA$ItKp<>z#$Ygy%yMJ{JWP;_Qww&VttxUyrbk9~s_W~`pr6EDaU>F{L@4n< z*RUM)SBCV-Lr7r6@bWxo_?~_&i^T#oL(Zx_D8Dp0sC-1bC)pW3A8E23M4fEf`k(;+@RwWsiHQm7)884d4V5tkZuXw0t3Mj| zeC{Atr?&NE9?(SjDP}jEMLya8-@12swyx1In+VUbuba00;>L z1qihFIo4s*ikLlH&7-2Dcj@WrZCJ8E=lxr5l&UAhmFC3n<*;^?0{3DXHr5yotc>#`H)_!90G}CMX>S{-viG~7t1k3(_qQr zYaCYrMhXoEeSOClyrIZqKn=>@Hw^v4O?D>;VEeeZ`_CdubP+*yFQc%gy874Ew8rma4dlOxjmOCd?DJ)iHM5dewsx1g0xQn30_FX_0AH9wX>GIowI&F^O9I}^WyAc#YVuJgKpOeGurV}YK^Dk`>0_K47=MGR`nZzF=Ha$_hsvyh-M z60~?yclYky;u|0z1i=I}^>`!4kG{4!30geA<3QQ5_{KM(6OOBQ*jH3gVVNaPF7@o$ zh^g$y2z^CEv$F>SqTHTud!Sz34JzAVSoXlWdcls|+S&@hhYiG83Depue^{_$Vrp6y zv-9Sv-|)Z<9ALqb9tfw(xUa3b8W8Bxj= z)_wY9q|hA9O(_!3aJgLS-%cuPi5LI`_?W$*oF|N@OWL=Mtiec7pZo@#-8h7G0Zn}w zFYViU^m0&}nXz#;s>4TcA4u_yIJBiVJX2A7p6HI8N*0| z4%{3(0a|R?b<$^_Z>z(qP#{16xh@SvaX`Xqe0)6JVtslV8W9~mwff!1TPPGJleT~^ z$?0$LDF#Bv?K$=u^!XbVAkzTI$kag?D>ni^$t&?cKG?D8A2C>)jSL1*1whB!Hv;Ix z_ap%j+^`DR({ovE>jU$p?}tFhcbloiTS+>A8Kp9>YyIFsQAm`3;b5SS%JVOvi#w%ksRolm!6p!8a!sat}|& zHx5%T>^FK{1hHurloCoy8)qY;&mKpiP=lffATG>MK|ky{PLf(iEx{onwwT-d6(8tS z&j2naKi<>E1g3)ldT8S!{}{YU0rw691yyW4yT&k+(SL_M`jN~GwW#KpQx!F-Etn=eF7A5Z3n&G9-YJF5RYBs>J)22`FjPQGwpHfp5A@Q)rtJ7#P|1O_(CJu z2$zs4PcGz@eC)YsLU^Rk^U_~CiNDZ^ zu3at(%3h9Azh%}WJbAWq!c{rX|* zRjwB*cl%h-hjC{1yE8>varov#za=z$Kxmdv$-N z+pj0&P8>Q_@_Ag&;6ZTUwm6UI?apkr?O+UUMfZjt{?wOUct^%%#__Xn5+t+FNI-5E zA_WQZHvmN|qPG0?g~^a$Xy~WcNEK{Xm8z@h(1w8qsgk<_wjaQE5Pzc=%skNc_fdaU zl&~rq<|EmEYyL+>f-725Pv6!-fGq36p!c z+7i5;@J~4%c`Li4mAG-lYUjU2RHb_@yYQFo(PSov^u>)k>Vhi!osC=*XqbK5ET+!X zuF;Jitsi|NEE%fj>lTqzR+e5qr!w|2PAnclSid*8YE?Qj_d@Z!p3c@rLFPl6;8Rq| z8qz#GLTF%Jm|FxQ#%QT#oa!3%0w>j#Gs&bMX z{^IW7faxf2CDr)swD;Bm7xWcVq58xfcPD9{IY|;giRtt4Z}vr3T-UAb2X?)p?ZW5b z9zlN3_-e6j(>~NXk%iRJ3*1px?2VfIkmX`ZyF47+0$tq{t2Z7Xn?|+)b8Fp2k>?5a zq~S^#)l>gX?qI3~z^kkPDh=wKfY_6fkQ6Qey$Bp_l*HK2PW>Xlz9jQM#)J;DcMfK@})@MStH1eW$27LS5iV-3~gTO4OckYZ_kLY z>UV)MFcC<`vBkp(1sesKz8XIPC&E~n9mB)=(bDEbJnJR0Lt=&Bk%H04r?uj!ePn*h zbl5HwU%D=XDGwvD6be`7uY zoq!n62J6thLp}?!uu8FAS+gs;?pOBxc6zZy@wD)g5rMnzVn!$ke;|ldx-j^XJ^~Q& zi;au=w1Av8(6vyI(I15qJB*B$6;a^|Tp$hZA5XDjU(|0U?VzuhdKGx8T)?Au-pnGi z^OyX9&^#4W!u`}jlZV`_c24>gdig;rP<9W#ApCs~TalreoqlC~mp)+!W&dOis*&#l zz2@&@T|Jo6_v7HpKXnf`w7c8Ze*3@rw^&3-x6bd4ToW9LW*=iUC%%nX^{knGiK`k# za@SZ@!(McTYLHESNc-x0@a+E{?V2dE;6=pMAsb~x)&Z&z6eIK1g+ou zhcc&^?@*FtpqKyYbmD51>G4;G__z@Tv$gwr>5YmogPipCo53EYHC8ri9DyqD%D>ArZ41NPgo5Whfp63jE5O(B}v>Ms|OeYg;e(nP*!wvbXw;h zDdq(?-c{R*^pQIG-5(`!uzS}@SH=|JS=~{}>kJnZpRE_tr}^%$pYUfOnDdZ$4jzXY zYo$uusLCVk07UM7pW))fga^5Cb+dI3mm%m4e+JX_9t=lyHE`jdtXQWdc3za!CULl| z;$TwDN)^kC8MmmY@E@9+koxjdb|Oa|25Ki=Moun`5=)Cn_2+opX%)1`O`0OxLeju; zFs|2P+oI2+&OTT-uT*b%#l`?10&0}Xd?;A-;J?TiKlk0#&;MRRWcFXdSN-UK7mzgQ zA~y1O#9D9*XUDNSYFhz^a(T{v|3=9bUhCPaga1;1B`QHtAOsH|1$^t(L4!3to+ySOoenp4bP@1cOFPfr{CR*)cBc2>jddw#NPoC5VB zjdrb)x(lDricK?Q02VnyCo%`mZf{f2?o7%6|8d|&b-b?Tz!07GH zz0iwRSYE?hP%;xPSRt)-4odgt%8G{}M+z)DBPOEGpt{e@fS-^2_M~O~W#(l-#$RM}q&Da5)zg2U$JX;~WDt z^!(cpAYF)Skj}|5Dc$^~6VM`^)Kdm?PbuWDQ z1w<)pVn7>w23K5HslCpt7uCm`l1hex)dMKwP{N*e=wiyZ>|oA?5{s# zwQ#XT;w_Y=t#Ud6eXD67jXv^nAAkGesriT={c9*iEjb6x7sV6#U#8X^^qzV$1FV#_ z(sLRWG3D`@%6EW_uB$s2j)X%4PE1#4=j^PwSCT8)ZNmE^GIzO8AKrn3)OO9n&A!*w zykGCRo4 z#v&$(ydNE25t4Dm2AF@A?H40VvAqX|>J=0DIs~m_Qq#3H3!hY3Ps{{5XJMvCNI^5B zkyDGARoa~SjzSa0f&()$^DeCBNGjFhR_3Wn8PXs9%oFM1zEd}+K2>0FD;M~z#X+xg z97A;vFYRGgy#THn>j^mY=8-Q~jf`>KML&d;_Y3VJUHkYVWi1qjcpdYlB#UUGhnR3| zypmwU>bFPQSWo5X9=^7J$YP+9=I`TlW!K77rT&K=M)r=2YqOjwT4!N8ny|V-yiUPr zR@Y;I)TvQ0ihLSq$3S@XG}_A%BE#>-b``;mkWX7d&h z4lRX~>;Z84dL$lV-wnN--|wps3UT&Cj?dJu(SH2kYS1Iv+?scOZ}aN1E`9jBf}znM zsk8C=t1aO%rr4lMe0Kl3LaJBy%ebk7p}63GUJr;6=a%JNr4T=w`Z8`B5INLszcZiU z{VzeAtX1^%tjx|6HGYVnqh+Mcj`Dq8I}p?B7M6(UmBL=$hY;aSu1lRTN%Yan&}KN= zu#3*#aEKyr;#G=T8m(|WPbJwPT4_n1@%|1s)Z`Y@Q=2dm;RP_Ma@>c^O?WLN5(2-V zh!c?!HXb2r`F&beCKGRW+#t%%0~}{Zw#dr=4Q9qFchPnBSvo5fvS!JH32)H05(x%4n~HBj{sNlo|524gR8LIho=h%LOin-PG{4h3_pMv0leKo4=3qYN4dq0^ z;=loj?{26Sv}yUIi39}T+!GlgqX1PiU2YjModDRIP5455Xvi~>s*8klML$1{Z7bos zGi@$fv$us!nqC^am#rli4>QI3Yw^9gqlToK$+Hu+x&^fbzYq*xAB_=43 zCX3C`qV>-Ort>Z~!Y=iYXSnFmN4@hnL)e~zXBK(mY;g$=`N5V{7P8)v#iscG;d2Vu z02Y%)Za-AS7_;5DwbkBQ(*iNZwVeE7A)&O_P;kuCH_# zm#p}8#+by+?8vH3j9GtlnnP4ghd5TY%e$h?H2cC=R3Sd&)Erizb;>|h=R0ww4DxDq zX%Q5^$1BXa5~^3T_7BCD6q0$&ad4<-y2+mPWJA-7f0$RnKCVI@}-vW=^S zk2#c*?|w&h*YW(8eIdp-QxC2Wn~4;%21o|hw>_Ev~9fQP8zqpXcSnnB;C@ z!O&^Rn?^dar#z9~>l2XHQ)ILNvuEO7bOAm~y&E!%;a1DSOBfB#iC+jDvoYq&ejRQY zqvDn?GPtu#;R_5+!^w=sp_`Bpdg`7RX`5RjMNEV0iweyk0=vQ4uMb2Q(OC! zr*}u5g_`7AM+(;M1-{*K#oF7MQA!>`GZidrwQ!F36HA@a#C(fW z#1GZ-lV|;pT$AiBa5$GhfDW%gG9MD1(z*VH^X{u^3q8B=Z_4jheL0Z$rSF^GIP>MO z&T;oJDZCX^xs>AW4uu6$pu{7V5D$M>H1o+R`TRMPj9}0F{naor z($QoR++IMnlx|&qRgN*mx~Qgj!W}3DD5zkq*a`(MD9Tc&KxRKKk142hepvS<3;bYH z#5XArM@b%d$6I~gJ4(1Elrp{mUSw9C%oE#tKZilo;>yJ2BD0yk=_(V-Qf|W1*;0z5 zWjO_Ips^qZLk9}cA{JUFdT}17FL+IC?t6Z~q*nCQ+(MuJBy^i@qGk)jb!|QI?&mB8 zgC}a?-<%hrcXMxDN+=wy9(nBE4^9Z1)UI)6yWp0&-a#KGEV6B{JmqufLuT4#X=bI( zI%OlXhK!hjK!sz3hdPVQmy>`!QQMtyt*`yIJEzR)4*;>+Q$@AtY<#Ud;=Xdc$~=pC z4`L=BVm_huUxQ4~@5l5DGY62{ou@*do80y+H~rd0z@T z!S^Q4AGiFEWp|gxj5wl6Dyz#USKuAccZG~NdxD+nNu*N5O38iT4TmBTyO#y`D0$k$ zOv|Hsb0Ky%&?e&Iw*azePEqM%L{FTDT6otsh2j)lUr8Q+Q}*ny5x!85g!&L$9;B2! zKwp#PcpDvVmb9cUD1$$`LIcPCkwuRy6re+(>@@n9k)5pUtRWX7)p@QD7~lVyp`dRYQ$D6%$=1c6AVP(lB2bUQ!ic z1z5d>wLxM*cXlSk$UrIHz$D$I@)S{KKGCUqsyH9Mkcsg&vB(_4lvgamjfK>JcZ70^ zgYiTP{Bv^1>|JhT)>(-Yv3tZ*jalD}&RQn91eiL~t{fB^0#B!>S>P+}aj%OL)1O!{ zy00*p{>hbH4Zqz)>gfH5HgsLX#Fx~eLl4mDy!=U4Pnu~dv5phE-T7P?+BqOAwye$% z)=6#)4MR`Mx%!a|T6f|1^eD%Bls?U7rZJyHDljdsmxsU%EGAw*P4!SHpY*6nAL2l@ zOJOW_f_51*Dq=Knj;5h<@jk_E4gTCAN|h({)<#DN_6<`^YYmiqpmi@ViTf-Ei_LVz zBD4q>z;C86LMJEiqv~^H;wzE9w_jKZRQDRn8<;cqkt%4y(&K{AI!Amdt%4p|A~s#` zkJk%OQQ38KK>T7Qw4-&b4|3@k8!8h8tVyUI*S|i z5@PJ-;e}d*cQ&;bCb+II_UJ4|vO0?gD8Ckr@z~MR`u8y&lEdc|PUL(YO?+n0K{bDS zBSPA*Tf~)68lH)lN%iH`sH|Seepf5%EVw+^Sr?etN4_&R-2IPTVhL^F$^7IUZ*e~( z(F3`@_+dL;OWdyaDnXKt$xzjt=BuC5N`~Br8P( zTU_<^GI<~xOBeUmtdERSYAF3iX06bcCbW23wzr#983GUVxo+2f?Yn)+JLNTZzcA=` z@^3dibo5%6D@(Q3r=Cv-O|G$eNqh2*OHu2OZm#5I-rtn=Lu0^+)-gq_i_kl|TGy)^ zuyDQ#W7cDPLGbG`tl$s{H%~(55ubuDcJHnWdzdHtQhH$_=OdYA!6_)RX{6!e^gUvu1 z<)tR6)71v#r}x@*ff>uF{$c?Lr0`Fj>9PUhOfy1F7wr+et9e|;RktKnN zYkiCHQIfY+lHuM8FtUYHSE$L=(DiKQ2EY!yGffXvTkN>h7T}GT&N5q@UckBlg;J%Q zs{v8QVQLouF%G6bxk3EL?LtEX547GGL2 zD*ymcBEm%LJ&>_i-0$w^!ne~8R#U-}x!nbi5IQz3ZR2Y!)-L=}TI8wNBp~>ZJqouR{CyIVth%~FO|4bag{9ZHqfv#fYgLsg+GVi1;D5zy6UhJm z88%%+oG~LgwhmLL`GtURt`@7aWJ9Eu{Zw*3D#?RG3ot{Ap|OPwY!+;$Fh+srzG6(6 zcVik1f3YDfcDFt{SEM(gIc{}_*N<1(2FGj@L{8JZKJTeA06=v4%Jf^u6WL;di~eN*d-TkHRr!=1(bZS)Z!HmJ4x_em6=wv3g(bwp>f$ zzTR~+19Azmot}+JwnAz$bjtGO;flc}M_|D~&P+fo6+&lf4UIIKM|Ybz!!in05=?|Z z>XZm_T!e_36@%FJUHJD*BbEAJ^J~h<%l0GRE!GNn;g_mF6dRu*kzIPv}1g^APml_;qsYWpPH zqcBNV@Qt|V^Ud$%-)Qhm+-8%daYX zp}r}|nj!V`Ia7`G(QPsN-&*&=Ly#o^I4w(FzyZrM3aKiDdsm5CFB#$?9EB zJ#dD_NwwXoYvdySBTBT++I4)sFn8#So}-OG!6=A6z$u?E0;X)Yknw>!jP;Jsecw7% zb8#x-@k{*HNqAWmw7Brf>7s>gA+VHHoVWwMG`4OzK&r;POh{rKy(lRQ89&LkOsFhO zB%qc9ym=qT4S?mhn9g3GO0GFNyH=cCp&JRko7{LZ=~(N1HZ(Qjx=ltZ-AO3;##YY@ zq>P`I*jP$B6W|7hnna8noa(N;x;A5iid4LJFE~>s+GRu0I4`vA{9=<8BO*yQ&|aq1z*jbrU!0OrgAB zo*05U7JFI@mcJOOL!vH+;d_Sa$s9b;IIvtV#;l)=eJPG!)T{qdc<&1p<;grF$4<^8 zNL72~7Fl8=Y3ihny&>4O?u|w7*||M&B$@PQcD<(0R1woU+Agjb>z86gt5~ zBirVK)k2%CTy+*io}Dr+oR+EkVK88w_)0IKk2YQ#0uT1No;2F#?qpRG^udDJ^o{sN z4bolE3#@)<CF_(isYu_IF;qdf&RS>QU61st^$pcDcD{0^&Bwc# z$%t2Wt9(YU4>vZORoM%>@9^DTaobJmR;AV1>hsj-W?INw(cr;9d&cog~V# zz5$7oAB>*bn3PjR_Zyuz^LgBpKA^{5Ka{;_1y(rLJb$O1^Xihq?5q9!+rSHua2waK z?aq?(0!vLOmjf;iG%xE(6q7U|UUWcC_ z49j}x`xE8B>SZrtAhkGkHjb>P z4jzD+;?nM!9vwEw|ED(1nJfHC20Q->?DeHY=Y(sXx)Qun#H*&MkS2wwoYuTnsCH{; z$|cXzx{X?SV=79N|0If8+ma@Z{ytDdxu3}S*ov@(DOGn2U#_gm<9(c7^qUf}s6ZLV z7Omh=bDz$v9M?FJZ5xmjl~U5x!1$C^Be!zu?y+u&2dM?ww{Q@^rEmTLKIYX`9GE?9 zvu=ZvWZ*S3QYcM7R+9tdT*1a7BZn92JXnf__#jMNJ@~HIOeSgOY7CLz2?3`ty=}cw zYb`1~_rAK`=?UEcrBXKlhC-vYG8hT{F4b21O-2`%K{dWptB={2ig%*RyR z3dD@!R=aoah6vrop9{Qqu8)|l2m9FyG7Y5{JQEc!J1lnep|U!zX`~MDA}|&Ei;Hy5 z3TkzPc5Np&zkMbX**8|u%LFBl7FWmB8!m|(f zYJ&hD1XQnJ5qyC&IR!{`ilaNyGZ8_yV%&WOr|dbl82Jn`XWc7hajsT66&%}*gcqJ2WfH}2v2O4srz-V1b8iv9D+Q%+@uREaV&hH&MmZ{s zz%L)XSN~<@ILs7^j^^N_ubXIel_#jS2C?Vwp^`?>!uwvUvvcBgv3IUfMLu;w-GQRF zPlcs({7rUu0{zouEILF3TFR!m!7&?m~YB99fo{cI?C zz`po+8^T+v&Q^W5sw2T@IQ~s=BBQo4k75ECF0s`uxkVZu(Q1HfW98govoNUaGeS3R z_1{d(l2H@Ox>9=+f?w>L8pCqMis?9GexmT*ydq7gNH6$1$oumLdy)~=8*MOC{6<(E zrZiczt{gC(*T*qX4zPAN0?vi}A)9C7?fR(Z=oOol;{}|ph(wBU3C&Kr^U_+XA7v%5 zwA7@Tr#W0VvwGknaGDZy)%xebQQoQ~aOm}A0f`-@A#eaapuOHWD+xMJxA88Ju0#s! zfDPft&ZXdwWIG-`4IA`5vH6vm37keev=hC01^p5s4YCH_(17dv z9z}pT@@}oe5Vq)*oa@&Sy%@pnOOla7kqdIQez8PLJ^ILL@UJ?~c|#z{H!pbUkOS%` z-n0}^S%#ere;$~9m+{HohI_-sGQr7-SJK4U-4F)ltW&j1xXbs+EB>SNu>(3ZS8kNN zeF*bO2XLCrJ%!3sL9PlG9bUZ(#CIQ6XoyJ-TkElScUhh0iq#$Y0Fd2cFP!pj2f94l zdxc(9o#6_4=LHXFV;U2jQr^bk^9i^&->&0t1MjV+iZrt9qr?eicF*?miWBT~AE1uS z%I7CsJ!Xk7)de^LFF_4cB1Wjaw#R%?@?*tz?&|q4(GPL66i4lzv98%u8d*@kb zm#5v_et?=XFdq_|FpvuN_I&YSOOW>$#%btfmv4a zr8R4q7Ukdi^?kxsf^ULT!1w3A4&V}r6Fo`h!Im>019Q9Ex|A*GneWYE$@4n4buY8B zdACm@EQ0MTW#9*=QZOB*;w21yZSgrba8-580EJzgNrou`3DSXe?^y)^~) z6wZslr0jERXUI*VX1YbPuvf^s7YW=K+2@qd5bA~OZ)#dv-oVCOstm}!f8>d~0>a`r zvZ%t8dblvf^*Q&kqa{AQoGMp1RoMNS;ncoEZ|nKrJk3x>=^K_jAXcvlW;A-$4PFB&)p~yO|HWsVC}tmT2-FAqt;2N zmEdfeq2Jx~?Rs!GziT=7$s&1IXm!%vv^j-(Q9PDilrlUM0E z57VD%wGe!^uX5G$%Qf^nhT@(q&`BGM-<(EL#8)>(JEy00#{ zs4qADFC#al)SHB;42)r}HAB{a z{4D$mIl;ICsKa1tAgbG=05KSA7m$A?^N#-?2!B9sk%JcZ#kgltMYjJ;8!1UvXOpT0 zHLalgMnL3^=dKR#&;+j=S{)qjE=c%>=wM&>b;`bO>}-WkN3|h~TxHlXyp+s8!EV}xKduI4`L1D&3oD?GM|MbT&w-wq4C zGKn~#<&W&@dNGhlFxz{vZ8YM9iHjENjn`Zktv~#G?OyncETGuCz3s2->XhyMY6#~e zh$@r7^6Lh4-=IH&4M_gB8PT77+^Tu@z~^7aoai}uSA#2Rpz*uh$=#}$(QA$Y9&fs< zVW#4#XpKJ-F)%ExNJ`)_3)7_YUIif>k_ef5RE z(7@z_vEzls-8G8^wF3j4ZN@sZw;@(mxZ-qUDA8+Cp5~Ur?ELJ3|y_F5}#G&groL|WtQnIp2oefKvK z=PIkFirTBi$0-0yh9pR&$4n-PP=&dDxeyayH|Ccc<(7^)Gp$`zfhg22U-;M|=SsV? z%}2>&YBF6&q4gWS0C#AO`&$rlq1$h9*XkM3L5^CykB(X+Rk?;9@rL_Id+%?iPs3UK z-dsCf})N#5uBC9&eEiUSqp7-IRirZk(VHLZR$7W)-JL|}Ad7Z8kaT!r% ztZg#p2iI2P+|Hk^f(y=S3G8FY0GQ2l9Rl9Ex*OL5dbhs53}l>x+oLN(8hQ#4c{Rpd zHH@gApku!HJFVj!*W57x0J;(9Q74^WRZDZ$QmSPhgyR2JQ+ZWf5ekUU>F#==*qV8G zPg_uP8T^J0dd?!bbFfH3H&0sJLS4$*LVp6*#Q zF+gE&PHV z_;Afc-Iz!AWkC-vN`}@yN6q-ydPfTX5Ku}sQ~X|9bxoWUqUI8y6$T{MpWP=ym+$zG z?G#_#L$gA2&4Zq)cJ|sh256ll%A`lskIxOvRRHgX(CsVZNX0EbrvIEH!Vwd!U&bTH zklAvR9@$Ohc6IM%?XagVV4or}0T7?&^%P-;PDg$|y3HjD{8gK!LZ`})cNQ)MUlPq3rb8qxF9Macq&(wA|_ zIP#8~v)Pt?7rprPV6sJwAlZ9qu3u|>bbcu{?_0Qdk$j*N(bV(Sa9^{r?^ErUCC3gIrHiT0UEK#Pv5#Le*rTvW zE?}?|O#^0_61&5}s(@KK)h5Vv$}4PJ5_m{YYnthV`*km%Z~+jF=@FjKU=izMbHq7Q z{6pf!ocTt^}?>UJ#&Wj9rF|`Li(PbdNeE&SKDN`Qxzw) z)$~5W-`CaPZZL6n>pyU%gqQ>X!;SitOdpXKm-m}eu%>=yt=7=NDMh3LictQ-zcFoW# zL3LZC#WGXyN+f6>KQ>3?o=j()NKenqdYF1M+i)MK|U!%cqyI~QYZ$Cc1v)y^3oS$hz|3?OpC`}=^j)S^V2iPdRShhMkAvy?~kx?Jq z9RnOBkE}hn)kjL%4%nGpJ`;Or{quN65`BMC2kkkS>~C7t4T}^bzcjC1)-L<)i5+U& zUpBV&VAJ)h9@r#Ebu_ltRQm&gIhox!pUTPNUtmLIPv;muTIg&zekkt8+cVB8Tb?W| zbd1lBrvn%_pWGpQ#R#ylu!cMv`w>09Jb`?2iEF-TG+-4_cG+&=_KPuCHCQvfW4sae zV1H-BUh~j&Kq}z-#$%PF=Wjn!4(7G*-Y7O&xoGjM%6M;u)@E~Uts)3C5e{T*M1SsL zD>}u6Lf)h_HwUxZZ@%%HZR9Rt1wLi*lf~Rk1K=#bPFWMpSMtIJPvE)fVOjG~+?iJ$ zq^e%5YLWB&;-5G9&;}yt3_SVAHd*oAPW(rPX>>6ZdMP13;{QgPS$}p*ryY zTo54kPYS@ds@nHDz&%h9s1FC!S9|}T@#!6;O$zKtX`n-O1;Bzl58mI5YPtF!wN7dz z0LZ*C{*WF3yH9`Wp|APV7#vCokS;rb_P@*^KI(1eb^`(b;|mbv=bgu&LtTUZ+c?+r zpY<@{FFmDAl>u8Wmnni^zT5x3d#Np91t_by|9=_}Qa0{p0XHmlS9an5E9Va24xt=y z6KUgOrM&A~*Yp2n1Orw5{c}wC@9RlXw=QpJH@DvaSeyd~6E?=QW$Ki<`~LKcrb?Ow za24g}kWC*3-% { _piscando = false; _bozo.visible = true; _timerPiscando.stop(); } + + var _timerSpawn = new haxe.Timer(300); + _timerSpawn.run = () -> { + _permiteSpawn = true; + var _timerPermite = new haxe.Timer(10); + _timerPermite.run = () -> { _permiteSpawn = false; _timerPermite.stop(); } + } } private inline function initPlatforms():Void @@ -469,6 +479,13 @@ class BozoRunGameState extends FlxState _oranges.forEach( (orange) -> if (orange.x < (_bozo.x - 35)) orange.destroy() ); } } + + private inline function gerarIntForaDaFaixaX(x:Float, _rangeProibido:Float):Float{ + var randomIntPosX:Float = _bozo.x + FlxG.width + random.int(300, 350); + return ((x - _rangeProibido) > randomIntPosX) || ((x + _rangeProibido) < randomIntPosX) + ? randomIntPosX + : gerarIntForaDaFaixaX(x, _rangeProibido); + } private inline function setObjAndAdd2Group(Path:FlxGraphicAsset, width:Int, @@ -478,10 +495,11 @@ class BozoRunGameState extends FlxState isMovable:Bool=true):Void { var obj = new AssetLoader(Path, width, height); - obj.x = (_bozo.x + FlxG.width) + random.int(300, 350); + obj.x = gerarIntForaDaFaixaX(_posicaoOcupadaX, 30); obj.y = random.int(140, 250); obj.solid = isSolid; obj.immovable = isMovable; + _posicaoOcupadaX = obj.x; add(obj); group.add(obj); } @@ -490,8 +508,10 @@ class BozoRunGameState extends FlxState { _pontaDireitaCenario += TILE_WIDTH*2; - if (random.int(0, 20) / 20 == 0) setObjAndAdd2Group(_arrayLivros[random.int(0, 5)] , 45, 55, _books, true, true); - if (random.int(0, 50) / 50 == 0) setObjAndAdd2Group(AssetPaths.laranja__png, 23, 23, _oranges, true, false); + if(_permiteSpawn) { + if (random.int(0, 2) / 2 == 0) setObjAndAdd2Group(_arrayLivros[random.int(0, 5)] , 45, 55, _books, true, true); + if (random.int(0, 5) / 5 == 0) setObjAndAdd2Group(AssetPaths.laranja__png, 23, 23, _oranges, true, false); + } _change = true; } @@ -539,7 +559,7 @@ class BozoRunGameState extends FlxState _fundoCeu.destroy(); _fundoCenario.destroy(); _floor.destroy(); - _bgImgGrp.destroy(); + _fundosGrupo.destroy(); _collisions.destroy(); _books.destroy(); _oranges.destroy();